資料介紹
本篇對SOC設(shè)計,FPGA設(shè)計也有相當(dāng)大的借鑒意義.本著幫助別人,提升自己的宗旨,記錄,總結(jié),回憶從接觸這個行業(yè)的所聽,所記,所感.其中一部分經(jīng)驗是自己實戰(zhàn)總結(jié)的,一部分經(jīng)驗是從書上看到的,一部分經(jīng)驗是從別人那學(xué)到的.難免會有錯誤,還請大家不吝指正.
IC設(shè)計其實是一個門檻特別高的行業(yè),要學(xué)的專業(yè)特別多,要會的工具特別多,要走的流程特別長,要花的時間也要足夠,所以你可以理解為他是一個要求特別多的行業(yè).你可以認(rèn)為他是高富帥行業(yè),也可以認(rèn)為他是屌絲行業(yè),但是這都不妨礙他對這個社會的巨大貢獻(xiàn).因而學(xué)會IC設(shè)計于己于人都是相當(dāng)有誘惑力的.
本篇介紹從5個方面來談IC設(shè)計實戰(zhàn)經(jīng)驗:
一:設(shè)計架構(gòu)的劃分,這一塊是相當(dāng)重要的,你可以在很多的書籍中看到,很多的書籍中也都會談?wù)撊绾芜M(jìn)行架構(gòu)的劃分.架構(gòu)的劃分好比蓋房子,設(shè)計好整個房子的結(jié)構(gòu),后面才能一磚一瓦的網(wǎng)上填,最后的摩天大樓才能建成.架構(gòu)的劃分又可以分為如下幾個方面:
1 ) 軟硬件劃分,什么歸軟件來做,什么歸硬件來做,如何達(dá)到效率的最高效;這個方面其實很困難的,一般都是相當(dāng)有經(jīng)驗的人才來做架構(gòu)的劃分,但是一般會遵循一些原則,即:軟件的靈活性比較大,所以一般做一些控制類的活兒,硬件的并行性比較大,所以一般用來做加速,遵循這些原則的話,劃分以來或許簡單一些.當(dāng)前比較流行的做法是軟硬件協(xié)同設(shè)計,具體可以參考相關(guān)的書籍.
2)算法設(shè)計,例如快速搜索,快速比對,軟件的一些思維未必適合硬件實現(xiàn),因為硬件需要考慮資源問題,需要考慮速度和面積,需要考慮組合邏輯的延時等等,不能一味的追求單方面而忽略了其他的方面.
3)性能因素的考慮,譬如帶寬為多少合適,太寬并不一定就會很快,要考慮如何提升吞吐率,可以從各個方面入手.
4)模塊設(shè)計的劃分,一個太大的模塊不適合實現(xiàn),也不適合維護(hù),當(dāng)別人接手時也很難快速的理解,所以模塊劃分要得當(dāng),可以基于接口,基于功能,基于靈活性,一個好的劃分會帶來很多的好處,例如易于維護(hù),易于理解,出錯概率低,相反,會看起來很臃腫,很奇怪,也難以維護(hù)升級.另外模塊代碼的行數(shù)不易過多,當(dāng)然也沒必要劃分出幾十個小的模塊,那樣維護(hù)起來也是相當(dāng)?shù)耐纯?
二:設(shè)計技巧,這一部分包括如下幾個方面:
1)利用腳本加速開發(fā),例如利用腳本進(jìn)行接口的自動連線,快速復(fù)制相似的代碼,如果恰當(dāng)合適的利用腳本,會使你的開發(fā)事半功倍.
2)狀態(tài)機(jī)的設(shè)計,組合邏輯和時序邏輯分開,狀態(tài)機(jī)不宜過大,否則會出現(xiàn)很大的比較器.
3)one hot編碼推薦使用,這個在后面的ECO時比較方便更改。
4)流水線技術(shù),這個技術(shù)可以提高吞吐率,有利于時序的優(yōu)化,利用流水線技術(shù)可以高效發(fā)訪問DDR,但是流水線也有弊端,例如某個階段的時間太長,或者某個階段依賴于前一個階段,流水線一定要設(shè)計得當(dāng),否則可能會弄巧成拙。
5)利用鏈表技術(shù)可以節(jié)省memory的使用,當(dāng)然這個很多時候要看具體的應(yīng)用場景。
6)在設(shè)計模塊的時候,可以簡單的設(shè)計一個可以綜合的Testbench,這樣你可以不依賴單獨(dú)設(shè)計Testbench的人,你可以繼續(xù)往后推進(jìn)你的模塊設(shè)計,你可以上FPGA開發(fā)板上簡單的驗證。
三:設(shè)計實現(xiàn)技巧,你的設(shè)計一定要是可實現(xiàn)的,否則你的設(shè)計沒有任何意義,就是一堆垃圾字母而已。該技巧包括如下幾個方面:
1)你的電路要具有可測試性DFT,這個可以在后端插入scan,你的電路中的memory要有mbist的電路,用于自動產(chǎn)生數(shù)據(jù)讀寫RAM,自動比對結(jié)果,一般這都是到后端后會接觸的東西。
2)你的電路要能夠做STA,你的電路中最好只用一個沿來采樣(DDR這種情況除外),因為很難保證兩個沿都能卡的很好。
3)注意跨時鐘域的處理,跨時鐘域如何進(jìn)行驗證。
4)功耗和面積之間的權(quán)衡,門控時鐘的使用,RAM的使用。
5)FPGA的選擇,到一定程度時,電路需要到FPGA上進(jìn)行驗證,快速的FPGA十分的昂貴,便宜的可能又達(dá)不到項目的需求,所以一定要權(quán)衡好兩者之間的關(guān)系。
6)關(guān)于RAM的實現(xiàn),可以用register實現(xiàn),也可以采用生成的ram實現(xiàn),一般比較小時采用register實現(xiàn)(一般小于512bits),而且RAM要盡量成正方形,因為太深或者太寬的ram不好布局布線,他占了一塊面積后,其他的只能擾很的距離來布局布線,不利于時序的優(yōu)化。
四:設(shè)計調(diào)試技巧,你的設(shè)計在后面將轉(zhuǎn)為大量的調(diào)試,無論是波形仿真的調(diào)試,還是上FPGA的調(diào)試,或者是芯片回來的調(diào)試,都是一份相當(dāng)大,相當(dāng)困難,相當(dāng)耗時的艱巨任務(wù)。該技巧包括如下幾個方面:
1)你在設(shè)計的時候就要充分考慮如何進(jìn)行后續(xù)的驗證,你可以拉出一些信號進(jìn)行調(diào)試,但是由于出pin的數(shù)量限制,所以你可以利用mux分級拉出信號,然后用寄存器配置的方式,選擇哪些pin被拉出,這樣你可以拉出很多的pin.
2) 你可以加一些寄存器用于調(diào)試,例如中斷寄存器,error寄存器,狀態(tài)機(jī)寄存器,拉出狀態(tài),看狀態(tài)跳轉(zhuǎn)的是否正確。
3)如果你的設(shè)計中有ram,你要充分考慮ram該如何驗證,否則ram出錯的話將是十分頭疼的事情。
4)如果你做的是通信類的設(shè)計,要考慮loop_back模式的測試,這樣不需要和別的設(shè)計進(jìn)行連接。
五:溝通的技巧,這一塊說不重要其實可以說是最重要的,設(shè)計的要和驗證的溝通,硬件的要和軟件的溝通,做技術(shù)支持的要和客戶溝通,上下級要溝通,反正溝通無處不在。所以你要注意下面幾個方面:
1)保留平時的溝通記錄,可以幫助你到時候進(jìn)行review,也可以幫助你到時出錯時作為證據(jù)。
2)通過各種手段進(jìn)行溝通,例如郵件,電話,會議等等,要充分讓別人懂你說的,你也懂別人說的,開會不要漫無目的,要把握時間。
3)溝通的最主要目的是發(fā)現(xiàn)問題,解決問題,所以怎么高效怎么辦。
來源:面包板博主——sunyzz博主
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 電源設(shè)計經(jīng)驗50談
- 嵌入式項目實戰(zhàn)經(jīng)驗
- 在高速PCB設(shè)計中的70個超實用經(jīng)驗資料下載
- 4個 5G NR 實戰(zhàn)經(jīng)典案例資料下載
- 五個方面,看PCB可靠性與具體電路設(shè)計資料下載
- 老工程師經(jīng)驗談,高速運(yùn)算放大器電路PCB布線資料下載
- 從單片機(jī)的PCB設(shè)計到軟件處理方面來介紹對電磁兼容性的處理資料下載
- 6個方面。嵌入式的硬件構(gòu)架資料下載
- 藍(lán)牙m(xù)esh的5個常見誤解資料下載
- FPGA設(shè)計經(jīng)驗技巧,用數(shù)學(xué)思維來簡化設(shè)計邏輯!資料下載
- 從定性的角度談電源去耦資料下載
- PCB布線百問:一個布線工程師談PCB設(shè)計的經(jīng)驗資料下載
- 四個方面區(qū)分MPK和CBB電容資料下載
- ARM全國產(chǎn)云平臺部署容器實戰(zhàn)經(jīng)驗分享 71次下載
- 開關(guān)電源維修方法和實戰(zhàn)經(jīng)驗 49次下載
- 數(shù)據(jù)庫慢查詢分析與SQL優(yōu)化實戰(zhàn)技巧 781次閱讀
- Linux服務(wù)器性能調(diào)優(yōu)的核心技巧和實戰(zhàn)經(jīng)驗 795次閱讀
- Docker與Kubernetes在生產(chǎn)環(huán)境中的最佳應(yīng)用 731次閱讀
- 10個RTL優(yōu)化實戰(zhàn)技巧 729次閱讀
- 使用MCUXpresso for VS Code插件開發(fā)Zephyr的hello world 1.8k次閱讀
- STM32H5 DA證書鏈實戰(zhàn)經(jīng)驗 2.5k次閱讀
- 從焊接角度談下設(shè)計PCB的5個建議 1.4k次閱讀
- 生活的案例LDO異常損壞的原因之一 1.6w次閱讀
- 辨別PCB線路板好壞可以從兩個方面入手 3.9k次閱讀
- 深度解析人臉識別技術(shù) 1.3w次閱讀
- 從EMC設(shè)計的角度來解析無人機(jī) 6.6k次閱讀
- WEBENCH:DC-DC方面的設(shè)計經(jīng)驗分享 1.8k次閱讀
- 年度IP眾籌:張飛PFC電源實戰(zhàn)視頻教程 152次閱讀
- 介紹初次接觸ARM開發(fā)應(yīng)該從4個方面來理清開發(fā)思路 4.9k次閱讀
- 濾波器分類與選型實戰(zhàn)經(jīng)驗總結(jié) 1.9w次閱讀
下載排行
本周
- 1MDD品牌三極管MMBT3906數(shù)據(jù)手冊
- 2.33 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管S9012數(shù)據(jù)手冊
- 2.62 MB | 次下載 | 免費(fèi)
- 3聯(lián)想flex2-14D/15D說明書
- 4.92 MB | 次下載 | 免費(fèi)
- 4收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊
- 2.50 MB | 次下載 | 免費(fèi)
- 524Pin Type-C連接器設(shè)計報告
- 1.06 MB | 次下載 | 免費(fèi)
- 6新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 次下載 | 免費(fèi)
- 7MS1000TA 超聲波測量模擬前端芯片技術(shù)手冊
- 0.60 MB | 次下載 | 免費(fèi)
- 8MS1022高精度時間測量(TDC)電路數(shù)據(jù)手冊
- 1.81 MB | 次下載 | 免費(fèi)
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論