作者bbuc (C&C++完美經典)
看板Electronics
標題[問題] 一些數位ic design遇到的問題
時間Fri Apr 10 01:53:28 2009
各位好,我是一個做數位design的研究生
關於design中設計的方式遇到一些問題
希望有識者能不吝給予指教
在與他人討論的過程中
我了解到一顆IC的input與output都必須要用register檔住
因此在作為control訊號的input port就有些問題
由於是一個multi-mode的電路
在我原本的寫法
input port作為電路內部的control訊號來切換mode時(非clk/rst)
可能會有數千個fanout
因為整個電路的動作都被這個訊號所控制(如控制mux)
如果我用register擋住這個訊號
synthesis時似乎因為fanout過大而使得這個儲存控制訊號的register變得很大
delay也較長
而不擋時似乎在syn這個階段比較不會有這個問題
我將我想問的問題條列如下:
1.是否真的一定要用register檔住input,不能直接由input進去控制
(此訊號在同一mode下為constant)
2.若一定要用register檔住,fan out又過大的話,可以在synthesis時用
set max fanout指令來解決嗎? 這個指令似乎是用加buffer的方式來解決
那麼這些buffer會不會造成timing的延遲呢
3.max fanout一般適當的值是多少? (操作頻率希望能高於150MHz)
4.有人建議我用手刻clock tree的方式去分這些訊號,請問這樣是正統的寫法嗎?
5.這是額外的問題....因為我們是新實驗室, 很多問題找不到人問
請問一般而言clock uncertainty應設為多少呢?
另外propagating delay和clk latency應該怎麼設呢?
雖然ic design lab有做過,但不知道實際量產的design有沒有一個較標準的值呢?
不知道有沒有違反問問題的倫理或是板規
若有請告知 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.136.211.33
※ 編輯: bbuc 來自: 220.136.211.33 (04/10 01:54)
※ 編輯: bbuc 來自: 220.136.211.33 (04/10 01:55)
※ bbuc:轉錄至看板 Tech_Job 04/10 01:55
※ bbuc:轉錄至看板 ICDESIGN 04/10 01:57
→ proach:用clock tree, 多級, 每級比例最佳解要自己求, good luck:) 04/10 02:00
→ bbuc:請問一下 自己求的判斷依據是什麼呢? 用post-sim模擬還是 04/10 02:06
→ bbuc:syn或是pre-sim或其他呢? 04/10 02:06
推 pow:第一個問題很簡單 fan out這麼大 不在內部buffer 就要在外部 04/10 02:10
→ pow:放buffer 而且有人在外部放buffer的嗎 要放哪裡 04/10 02:10
→ pow:clock tree的設計我記得Rabaey那一本有提到 每集放3-4倍 04/10 02:13
→ pow:要更快就要少倍數 要省電就要多 04/10 02:14
→ bbuc:謝謝樓上的回應 我會去找書來看的 04/10 02:16