adcdac的工作原理及應(yīng)用 總結(jié)數(shù)字電路設(shè)計的一般方法?
總結(jié)數(shù)字電路設(shè)計的一般方法?我依附西北工業(yè)大學(xué)計算機學(xué)院微電子學(xué)研究所,現(xiàn)在是微電子學(xué)研究所的研一學(xué)生,專業(yè)方向是數(shù)字集成電路設(shè)計。在研一上學(xué)期,大致了解掌握到了數(shù)字集成電路后端偏文科類設(shè)計方法,本篇
總結(jié)數(shù)字電路設(shè)計的一般方法?
我依附西北工業(yè)大學(xué)計算機學(xué)院微電子學(xué)研究所,現(xiàn)在是微電子學(xué)研究所的研一學(xué)生,專業(yè)方向是數(shù)字集成電路設(shè)計。在研一上學(xué)期,大致了解掌握到了數(shù)字集成電路后端偏文科類設(shè)計方法,本篇學(xué)術(shù)素養(yǎng)課程報告主要注意繼續(xù)討論在基于后端流程時的方法、經(jīng)驗、在內(nèi)相關(guān)的感悟。
根據(jù)我的觀察,軟件工程師的需求量和硬件工程師的需求量是10:1,也就是說硬件工程師需求量遠大于0軟件工程師,硬件工程師中又可分模擬和數(shù)字兩大類,仿真的集成電路設(shè)計比較多以及ADC、DAC、PLL等,數(shù)字集成電路設(shè)計則更比較雜于實現(xiàn)方法特定的事件功能的芯片,如CPU、GPU、MCU、MPU、DSP等。
很顯然,發(fā)展到現(xiàn)階段,數(shù)字集成電路的設(shè)計方法已經(jīng)在EDA工具的幫助之下相當傳說中的軟件開發(fā)了,典型的數(shù)字集成電路開發(fā)象為以下步驟:
1、參照需求,自頂向上設(shè)計什么電路模塊,必須明確該數(shù)字系統(tǒng)必須實現(xiàn)什么功能,再具體一點細分到各個功能模塊。此時的設(shè)計圖形式象為模塊框圖,可以使用visio或其他繪圖軟件基于。這個環(huán)節(jié)特有內(nèi)松外緊,但十分,只不過參照產(chǎn)品需求啊,設(shè)計大的模塊和指標時,前提是要結(jié)合實際情況,不然的話到后期會經(jīng)歷無盡的次返工甚至連不能都沒有達到預(yù)定啊指標。像是由高望重,見多識廣的工程師接受總體設(shè)計。
2、定義好各個模塊之后,接下來就是具體看實現(xiàn)各個模塊的功能。畢竟硬件描述語言的存在,我們也可以很輕易地的通過硬件描述語言來“寫”出模塊的實現(xiàn)方法方法,在本次實驗中,我不使用的是VerilogHDL。具體看代碼的復(fù)雜程度和模塊的復(fù)雜程度有關(guān),我在這回實驗中采用的是“八位格雷碼計數(shù)器”電路設(shè)計。
3、成功“八位格雷碼計數(shù)器”的Verilog代碼后,是需要對該設(shè)計參與“前仿真”。有所謂前仿真,主要注意是是為驗證代碼是否是描述錯誤的,是否需要真正的實現(xiàn)了所規(guī)劃設(shè)計的功能。象在用modelsim軟件進行仿真模型,仿真設(shè)計成功再次進入下一階段,不成功了則是需要前往可以修改代碼。
4、前仿真成功了后,早有了功能錯誤的的Verilog設(shè)計代碼,此時可以不將代碼上網(wǎng)下載到FPGA板上進行驗證(Quartus,JTAG),驗證成功了則可以證明此設(shè)計正確的確認無誤后。相對于某些集成度要求不高且時間相當害怕的數(shù)字電路設(shè)計項目,這個可以再在用FPGA來利用芯片功能。很顯然,F(xiàn)PGA這種通用器件是肯定不能行最簡形矩陣高板載顯卡、超低功耗、清潔液性高ASIC設(shè)計需求的,只能用于較為簡單點和粗獷的設(shè)計。
5、接下來的直接進入后端流程。正當此時不需要膠的服務(wù)器包括價格高昂的EDA工具支持。這也我想知道為什么硬件技術(shù)入了門較難的原因之一,假如一個也沒所接觸過軟件編程的有志青年立志要做做軟件工程,象一臺電腦,一本書就就夠,最少再買個正版編譯器(VS,Eclipse,DW等),只不過去做硬件電路設(shè)計,一臺電腦一本書起碼學(xué)畫畫PCB。要做最核心的部分,需要在用功能強大的服務(wù)器和價格貴得要命的EDA工具,而且其它的PC電腦負擔(dān)不起“后端綜合考”的工作需求。而且大量linux下的復(fù)雜操作也會使人卻步。
6、馬上準備好后端平臺后,就可以將“八位格雷碼計數(shù)器”扔到平臺里,正在此時馬上必須決定的問題是在用什么元件庫在內(nèi)什么工藝?只不過同時一個與非門,有所不同元件庫有有所不同利用細節(jié),MOS管細節(jié)可能會都大不相同,別外又要確定工藝,這些工藝的文件依附于相關(guān)廠家(TSMC,CSMS等),這都是個人不能做后端的原因之一——只不過你完全不可能以自己的名義向臺積電好好商量工藝庫文件,要知道以及一個涉世未深,無錢無術(shù)的初學(xué)者,你是沒能樂觀自信的和人數(shù)上萬、資金上億的工藝廠簽定合同的。經(jīng)由親自炒篩選后(更多情況下是沒得選),可以確定你想在用的工藝。在本次實驗中,我建議使用的是實驗室學(xué)長實驗過過的元件庫,在內(nèi)TSMC0.18um工藝,EDA工具為Cadence IC 614。 7、經(jīng)過一系列配置之后,“八位格雷碼計數(shù)器”早就成為了三個浩大的工程文件,我建議您常規(guī)TCL腳本文件進行配置。然后就可以接受RTL級綜合。所謂RTL級看專業(yè),雖然是指將Verilog代碼“改寫”為綜合工具(我可以使用的是Encounter)所能不識別的Verilog代碼。通俗一點的講,這個類似于將“文言文”英文翻譯為“白話文”,也類似C語言中的“編譯”,還沒有有高級語言翻譯為匯編代碼。當然,理論上可以不直接寫一段RTL級代碼,但這就和再寫匯編語言差不多,復(fù)雜程度非同一般。
8、RTL級綜合類成功后,接下來將RTL Verilog導(dǎo)入Encounter接受唯一的后端綜合類。導(dǎo)入RTL代碼后,還要那就證明標準單元庫的LEF文件,并定義電源和地的線名。此時不需要一個MMMCconfig配置,流程煩雜,要注意是配置相關(guān)文件和器件狀態(tài)(TT、SS、FF等)。
9、能完成導(dǎo)入配置,接下來的是芯片布局設(shè)計,即Floorplan。Floorplan不需要設(shè)置一些基礎(chǔ)參數(shù),如芯片的長寬(面積),帶走管腳的空間,芯片利用率等。長寬比我建議你為0.2-5,奇怪電路利用率0.85,象電路利用率0.90,電路圖利用率0.95。
10、POWER計算,得以為據(jù)布置電源線路,通常為ring和stripe。比如,某數(shù)字電路芯片功耗為55mW,提升系統(tǒng)冗余量到2倍左右,電腦設(shè)計為100mW,遵循1.8V供電,電流約為60mA,也就是總電源線為60u,要是每條線10u,則六條電源線,左右兩側(cè)各一條,中間四條。Encounter中有一類的布線配置器。布線施工之后,也可以先Apply,后再可以撤銷剛開始嘗試。
11、布置IO管腳。要是提前沒有導(dǎo)入IO,也可以恢復(fù)導(dǎo)入(TCL),也這個可以讓其調(diào)整。
12、Pre-Place,畢竟Verilog中來講有很多的module,每個module對應(yīng)一個布局模塊,布局時應(yīng)當由再注意一些布局原則。布局時像是簡單的移動鼠標就這個可以?!鞍宋桓窭状a計數(shù)器”是因為唯有一個module,因此不是需要急切的布局。
13、布局是一個斷的直接修改和改進之處的過程,Pre-Place之后通過Place,之后進行之后Post-Place。Place之后,要參與時鐘樹綜合考(CTS),時鐘樹看專業(yè)的目的是為了讓每個信號都在約束的時間內(nèi)傳輸信號到下一個時序單元,不然會對芯片的主頻產(chǎn)生影響(主頻是在設(shè)計前就定過來的指標),然后把在Post-CTS對不條件符合時鐘約束的部分通過布線調(diào)整。
14、布局之后進行電源布線,即Route,是對特殊能量還布線施工必須并且SRoute,然后把并且Post-Place,這些步驟某種程度上是“點按鈕”和“配參數(shù)”,但后端綜合考時你必須有清醒過來的頭腦,要很清楚為什么不要點這些按鈕,和該配置什么參數(shù)。
15、布局布線當經(jīng)過一次迭代,IO管腳配置好后,是可以Fill全圖,用各層金屬覆蓋未使用的區(qū)域。單個“八位格雷碼計數(shù)器”是因為結(jié)構(gòu)簡單,芯片未覆蓋區(qū)域減小。
16、眼下,Encounter內(nèi)的后端綜合類就結(jié)束了,可以導(dǎo)出(export)成GDSII格式的網(wǎng)表,以及就是為了做DRC,LVS檢查,也是需要“Netlist”成schematic(電路原理圖)的格式。
17,將后端綜合考的GDSII文件文件導(dǎo)入(Streamin)到Virtuoso里。Virtuoso是一個用于模擬真實集成電路設(shè)計的軟件。將GDSII文件導(dǎo)入到該軟件主要有兩個目的,一是也可以在Virtuoso里做“后仿真”,驗正經(jīng)后端偏文科類的一系列流程之后,概念芯片是否是能不滿足設(shè)計需求,此時的仿真就已經(jīng)判斷到了延時,電阻,功耗等求實際存在的問題,如果仿真時出現(xiàn)了問題,必須通過返工如何修改,必要的話時要原先信號完整性分析。當“后仿真”是從后,還要對該芯片進行DRC和LVS檢查,DRC是欄里點是否需要滿足所選工藝的要求,是因為在求實際情況下,一些理論上的值是不現(xiàn)實的,.例如過細的線難以生產(chǎn)出來,柵極間的距離過短可能會會造成電源短路,導(dǎo)線和各金屬層之間的電容會影響不大電路功能等。LVS是比較比較layout和Schematic之間的拓撲信息如何確定不一致。二是可以不方便啊以后做數(shù)?;旌闲酒O(shè)計時接受水的混合物設(shè)計,是因為模擬集成電路的是真接在Virtuoso中并且的,兩者最后結(jié)合在一起,就也可以參與數(shù)?;旌霞呻娐吩O(shè)計。
18、接受完檢查之后,就也可以與工藝需要提供廠家直接聯(lián)系并且加工了,如TSMC。就像加工不需要跟上來企業(yè)的業(yè)務(wù)流程??偣苍?月左右,芯片加工能完成,然后直接進入測試出來環(huán)節(jié)。焊接,試驗,驗證驗證芯片指標,包括提出來設(shè)計改進方案。
至此,一個數(shù)字集成電路從概念到實物的整個流程就能完成了,每邁一步都值得去愛研究和再回味,從二四譯碼器到緊張的CPU,其流程是基本上差不多的。當經(jīng)過研一上一個學(xué)期的學(xué)習(xí),我也基本上手中掌握了這個流程。以后會越來越很努力的在本專業(yè)方向繼續(xù)前進,重視培養(yǎng)核心競爭力。
DAC和ADC的轉(zhuǎn)換精度取決于什么?
sigmadeltaDAC象和插值濾波器,sigma-delta調(diào)制器(其是真包含數(shù)字積分器、數(shù)據(jù)量化器的和反饋回路的模塊),開關(guān)電容DAC(高精度的有),模擬低通濾波器。工作原理為:輸入輸入的高精度數(shù)字信號,按照插值濾波變?yōu)楦卟蓸勇实母呔葦?shù)字信號,然后把-delta調(diào)制器調(diào)制成低精度的高采樣率的數(shù)字信號(sigma-delta調(diào)制器中有有量化器,其作用是對可量化噪聲的高通濾波,讓可量化噪聲其分布在高頻處,而在輸入信號的帶寬內(nèi)一直保持較高的信噪比),然后把按照開關(guān)電容DAC轉(zhuǎn)變?yōu)槟M信號,之后通過模擬低通濾波器濾掉低頻率分量,輸出。
sigmadeltaADC像是除開反混頻濾波器,sigma-delta調(diào)制器(其是中有離散化方法時間積分器、數(shù)字量化器、DAC、反饋回路的模塊),抽樣濾波器。工作原理為:對輸入輸入的模擬信號,并且反混頻濾波,然后再鍵入到sigma-delta調(diào)制器調(diào)制成低精度高采樣率的數(shù)字信號,后再按照抽樣濾波器 低采樣率高精度的數(shù)字信號。