999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于數(shù)字ASIC設(shè)計流程的DDS設(shè)計與實現(xiàn)

2010-04-12 00:00:00陳冀明李開航
現(xiàn)代電子技術(shù) 2010年6期

摘 要:作為第三代頻率合成技術(shù),直接數(shù)字頻率合成器具有顯著的優(yōu)點并得到廣泛的應(yīng)用。在此結(jié)合數(shù)字ASIC設(shè)計流程,利用流水線技術(shù)和函數(shù)對稱性性質(zhì),設(shè)計并實現(xiàn)一個優(yōu)化的DDS電路。從系統(tǒng)結(jié)構(gòu)劃分到自動布局布線,逐步介紹各個設(shè)計階段的目的、使用軟件及設(shè)計要點。經(jīng)過分析,最終得到的DDS電路能夠運行在150 MHz系統(tǒng)時鐘下,并且具有較小的面積,滿足設(shè)計要求。

關(guān)鍵詞:DDS;ASIC;Verilog;流水線

中圖分類號:TN742.1文獻標識碼:A

文章編號:1004-373X(2010)06-012-04

Design and Implementation of DDS Based on Digital ASIC Design Flow

CHEN Jiming,LI Kaihang

(Xiamen University,Xiamen,361005,China)

Abstract:As the third generation frequency synthesizer,Direct Digital Synthesizer(DDS) has been widely used due to its many significant advantages.An optimized DDS based on digital ASIC design flow is designed and implemented by using the pipeline technology and the symmetry character of a few functions.The design steps from the structure divide to the auto placement and route are given out in detail,and each involves in the design purpose,software in use and design points.Theoretical results show that the proposed DDS has advantages of small size and can run at 150 MHz clock frequency,which meets requirement of the design.

Keywords:DDS;ASIC;Verilog;pipeline

隨著現(xiàn)代通信、工業(yè)控制以及航空航天應(yīng)用的發(fā)展,對于頻率合成技術(shù)提出了越來越高的要求。直接數(shù)字頻率合成技術(shù)是最新的第三代頻率合成技術(shù),具有頻率分辨率高、頻率切換速度快、頻率切換相位連續(xù)和全數(shù)字化實現(xiàn)等優(yōu)點。從20世紀70年代產(chǎn)生起,DDS就獲得了巨大的發(fā)展及廣泛的應(yīng)用[1]。

DDS的主要電路都是數(shù)字電路,可以使用數(shù)字ASIC的設(shè)計方法來設(shè)計與實現(xiàn)[2]。數(shù)字ASIC設(shè)計流程主要包括結(jié)構(gòu)規(guī)劃、RTL代碼編寫及仿真、邏輯綜合、形式驗證、時序分析、自動布局布線、DRC、LVS等步驟。在此通過實施以上數(shù)字ASIC設(shè)計步驟,設(shè)計實現(xiàn)了一個能夠運行在150 MHz的頻率,并具有較小的版圖面積的DDS。

1 DDS原理及結(jié)構(gòu)規(guī)劃

DDS的基本原理是根據(jù)時域采樣定理,利用量化相位與波形幅度之間的對應(yīng)關(guān)系產(chǎn)生信號波形。本文根據(jù)基本的DDS結(jié)構(gòu),同時考慮時序和資源消耗等方面因素,設(shè)計的DDS結(jié)構(gòu)框圖如圖1所示。

這里主要對DAC之前的數(shù)字部分進行設(shè)計,實現(xiàn)輸出sin函數(shù)波形的功能。該設(shè)計包括相位累加器、相位偏移控制器、地址控制器、相幅轉(zhuǎn)換器和幅度控制器五個部分。

圖1 DDS設(shè)計結(jié)構(gòu)框圖

其中相位偏移控制器是一個加法器,將相位累加器的結(jié)果與輸入的相位偏移量相加,從而在輸出可以得到所需起始相位的波形。地址控制器與幅度控制器利用sin函數(shù)的對稱性,將相幅轉(zhuǎn)換器儲存的幅度值范圍減小到0~π/2,從而將相幅轉(zhuǎn)換器的容量降低到1/4。相幅轉(zhuǎn)換器是一個以相位為地址,波形幅度為輸出的ROM,利用相位與幅度之間的對應(yīng)關(guān)系實現(xiàn)從相位到幅度的轉(zhuǎn)換。這里設(shè)計的DDS采用32位的頻率控制字,并截取相位偏移控制器結(jié)果的高10位作為查找地址。其中只有低8位作為ROM的地址,高2位分別為地址控制器和幅度控制器的控制輸入。相幅轉(zhuǎn)換器輸出8位量化幅度,最后經(jīng)過幅度控制器處理輸出9位的無符號量化幅度,以方便DAC處理[3]。

DDS的工作過程為:在系統(tǒng)時鐘fc的作用下,相位累加對頻率控制字K進行累加,并將結(jié)果反饋回輸入。截取高10位與外部輸入的10位相位偏移量相加得到地址,地址控制器根據(jù)地址的次高位將遞增的地址轉(zhuǎn)換成遞增(0~π/2)或遞減(π/2~π)的地址。接著相幅轉(zhuǎn)換器根據(jù)地址的低八位將相位轉(zhuǎn)換成0~π范圍的幅度值,幅度控制器根據(jù)地址的最高位將輸出的幅度值分別轉(zhuǎn)換為0~π和0~2π的幅度值,實現(xiàn)一個完整的sin周期。再通過DAC可得到階梯型的幅度波形,最后經(jīng)過低通濾波器處理就可得到平滑的sin波形。

每當相位累加器溢出,則累加器重新開始累加,進入下一個周期,因而累加器的溢出頻率就是輸出信號的頻率。輸出頻率fo與輸入頻率fc之間的關(guān)系為:

fo=(K/232)fc(1)

由式(1)可知,在系統(tǒng)時鐘不變的情況下,輸出頻率fo與頻率控制字K成正比,改變K就可以改變輸出頻率的大小。當K=1時,輸出頻率為fc/232,即輸出頻率的分辨率[4]。

2 DDS前端設(shè)計

2.1 設(shè)計優(yōu)化及RTL代碼編寫

當設(shè)計的結(jié)構(gòu)規(guī)劃完成后,就進入前端設(shè)計階段。首先使用Verilog硬件描述語言對DDS進行編碼。在編碼過程中,根據(jù)具體情況對各個模塊的劃分進行調(diào)整。可以使用Design Compiler綜合后得到的頂層模塊示意圖來說明各個模塊之間的連接關(guān)系。如圖2所示。

圖2 DDS頂層模塊示意圖

如圖2所示,該設(shè)計的DDS包括PhaCladder 32,PhaseMod和WaveLookup三個模塊。其中,PhaCladder 32是32位的相位累加器;PhaseMod是10位的相位偏移控制器。由于地址控制器和幅度控制器的電路比較小,而且這兩部分電路直接對ROM進行控制,所以把這三部分電路集中在一個模塊WaveLookup中。該模塊還包括一個名為ROM的底層模塊,是相幅轉(zhuǎn)換器的實例化。ROM模塊具有8位地址線,儲存有256個數(shù)據(jù),分別是sin函數(shù)在0~π/2范圍的采樣數(shù)據(jù)[5]。

RTL代碼的質(zhì)量對最終設(shè)計的性能起著決定性的作用,在代碼編寫過程中就要考慮時序及資源消耗的影響。在該設(shè)計中,32位加法器是設(shè)計的關(guān)鍵路徑,決定著設(shè)計的最大頻率,需要使用流水線技術(shù)來加快加法完成的速度。將32位加法器分成4組8位加法器,在每組加法器之間加入寄存器構(gòu)成4級流水線。每組8位加法器都使用超前進位算法來進一步減小延時,同時為了避免由于超前進位鏈過長而影響速度,將8位加法器分解成2個4位超前進位加法器的級聯(lián)。經(jīng)過以上優(yōu)化以后,加法器的速度提高了2倍左右。但是需要注意的是,設(shè)計速度的提高是以增加寄存器數(shù)目為代價的。并不是流水線級數(shù)越高越好,而是要在速度與資源消耗之間進行折衷考慮[6]。

在ASIC流程中,ROM主要有兩種實現(xiàn)方法:使用Verilog語言編寫與使用Memory Compiler創(chuàng)建。兩種方法各有優(yōu)缺點:第一種方法比較直觀,而且不依賴于具體的工藝文件,適用范圍廣,但是存在著輸入數(shù)據(jù)繁瑣等缺點。第二種方法是現(xiàn)在工程上普遍采用的方法,創(chuàng)建ROM文件操作簡單,可以產(chǎn)生多種格式的ROM文件,并且貼近具體的工藝廠家,可以作為IP在后端中使用,避免后端過程中的一系列問題。但是該方法需要有特定代工廠發(fā)布的Memory Compiler軟件,使用范圍窄。由于條件限制,在前端設(shè)計過程中,兩種方法都進行了實現(xiàn)和比較,后端只對前一種方法進行實現(xiàn)。

2.2 功能仿真

功能仿真的作用是驗證Verilog語言描述的電路功能是否正確,并對錯誤的結(jié)果進行調(diào)試。本文使用的功能仿真軟件是Mentor公司的Modelsim,它是工業(yè)上最通用的仿真器之一。

功能仿真需要額外增加一個測試頂層模塊,給功能模塊提供各種激勵,從而產(chǎn)生輸出波形。在這一階段通過對DDS電路提供適當?shù)募睿炞C設(shè)計的電路能完成輸出sin波形的功能,并且符合式(1)。如圖3所示,當K不變時,DDS電路輸出了預(yù)期的sin波形;當K遞增變化時,輸出的sin波形的頻率也隨之變大,滿足設(shè)計的要求。

圖3 K變化的輸出波形圖

該設(shè)計在一般的DDS功能上還增加了相位偏移的功能,能夠產(chǎn)生任何初始相位的輸出波形,以滿足不同應(yīng)用的要求。圖4為相位偏移為π/2時的輸出波形,實現(xiàn)了cos函數(shù)的輸出。

2.3 邏輯綜合與時序分析

邏輯綜合是數(shù)字ASIC設(shè)計流程的重要步驟之一,是在特定的約束下,將RTL級HDL代碼轉(zhuǎn)換為符合要求的優(yōu)化門級網(wǎng)表的過程。本文使用Synopsys公司的Design Compiler(DC)進行邏輯綜合,它是現(xiàn)階段工業(yè)上使用最廣泛的綜合工具。在邏輯綜合過程中,時序約束的設(shè)定及綜合策略的選擇是最關(guān)鍵的部分。

在功能仿真階段,沒有考慮電路元器件的延時情況,任何時鐘頻率都可以達到。實際上,任何電路元件都有延時,系統(tǒng)只能達到有限的時鐘頻率。同時時鐘網(wǎng)絡(luò)也不是理想的,在邏輯綜合過程 必須設(shè)定適當?shù)臅r序約束,使設(shè)計的電路符合實際情況[7]。

圖4 相位偏移為π/2的輸出波形

設(shè)計時鐘頻率的預(yù)定目標是150 MHz,定義時鐘周期為6.66 ns。對于時鐘網(wǎng)絡(luò),最重要的三個屬性是時鐘傳播延時、時鐘偏斜和時鐘轉(zhuǎn)換時間,其中后兩個是時鐘影響電路時序的最主要因素。在綜合過程中總是將時鐘網(wǎng)絡(luò)定義成理想路徑,傳播延時為零,設(shè)計人員就用時鐘傳播延時來模擬時鐘信號到各個寄存器時鐘輸入端的時間。時鐘偏斜是指時鐘信號到達各個寄存器的時間差,時鐘轉(zhuǎn)換時間是指時鐘信號在高低電平之間翻轉(zhuǎn)的時間。同步電路的功能實現(xiàn)是以時鐘為基準的,如果這兩個屬性的定義與實際情況偏差太大,可能造成數(shù)據(jù)不能在正確的時間到達寄存器,導致錯誤的結(jié)果。在設(shè)計的過程中,要根據(jù)具體的設(shè)計情況以及經(jīng)驗,仔細地設(shè)定這些參數(shù)。并且要多次反復修改、執(zhí)行才能得到合理的結(jié)果。

除了對時鐘網(wǎng)絡(luò)的約束,在綜合過程中也要對電路的輸入/輸出端口進行約束,給電路可重用留下足夠的余量。一般情況下,要根據(jù)設(shè)計外部的具體情況估計數(shù)值。如果不知道外部電路的情況,可以將延時大小設(shè)為時鐘周期的60%。經(jīng)過分析,這樣設(shè)置可以留下20%的余量,是一個比較合理的結(jié)果。

使用DC綜合,大致上有三種綜合策略:自頂向下策略、時間預(yù)算策略和設(shè)計預(yù)算策略。前一種策略操作簡單,適用于比較小的設(shè)計;后兩種策略自下向上綜合,適用于大規(guī)模的電路,但是操作過程十分復雜。該設(shè)計的DDS電路規(guī)模較小,并且各個模塊之間時鐘關(guān)系簡單。整體綜合時運行時間短,同時時鐘約束作用在頂層模塊可以得到更佳的綜合結(jié)果。因此該設(shè)計選用自頂向下的綜合策略 [8]。

綜合時目標工藝庫采用0.18 μm工藝庫,線載模型選擇_wl10,工藝條件設(shè)置為slow,綜合得到的頂層模塊示意圖如圖1所示。分別使用HDL編碼和Memory Compiler創(chuàng)建ROM,由于ROM電路并不在關(guān)鍵路徑上,所以兩種情況下建立時間和保持時間的余量大致相同。建立時間余量為0.03 ns,保持時間余量為0.48 ns。但是在面積上,前一種方法需要186 596 μm2,而后一種方法只需要96 518 μm2,兩者相差將近2倍。由此可見,使用Memory Compiler產(chǎn)生ROM文件是一種更合理的選擇。

2.4 形式驗證

所謂形式驗證是指通過比較兩個設(shè)計的結(jié)構(gòu)和功能在邏輯上是否等價來驗證設(shè)計。它是使用數(shù)學的方法來代替動態(tài)仿真,與動態(tài)仿真相比較具有更快的驗證速度及更大的測試覆蓋率。Formality是Syonpsys公司的形式驗證工具,具有與DC等工具一樣的命令語法和操作界面,能夠方便地完成形式驗證的任務(wù)。經(jīng)過驗證DDS設(shè)計的RTL代碼與優(yōu)化的門級網(wǎng)表具有相同的邏輯功能。

3 DDS后端設(shè)計

3.1 自動布局布線

隨著集成電路規(guī)模的不斷增大,標準單元設(shè)計方法已經(jīng)成為了數(shù)字電路物理實現(xiàn)最主要的設(shè)計方法。相對于全定制設(shè)計方法,標準單元設(shè)計方法將設(shè)計人員從繁雜的晶體管設(shè)計中解放出來,能夠大大地縮短設(shè)計周期。Synopsys公司的Astro是一款使用范圍較廣泛的自動布局布線(APR)工具,這里采用它來完成這一階段的任務(wù)。APR主要包括設(shè)計設(shè)置、布圖規(guī)劃、標準單元放置、時鐘樹綜合和布線五個階段。

布圖規(guī)劃是APR過程中最重要的步驟,好的布圖規(guī)劃不但能夠加快布線的速度,還使最終的設(shè)計滿足時序、電源以及布線阻塞等方面的要求。布圖規(guī)劃包括PAD擺放、電源網(wǎng)絡(luò)配置和IP放置三方面的內(nèi)容。由于該設(shè)計只是一個大項目的子設(shè)計,同時設(shè)計里面也不包括IP等子模塊,所以設(shè)計的重點是電源網(wǎng)絡(luò)的配置。

圖5為設(shè)計布圖規(guī)劃后的版圖,圖中主要的結(jié)構(gòu)包括周圍的電源環(huán)和內(nèi)部的電源帶線。配置電源網(wǎng)絡(luò)的目的是給內(nèi)核提供足夠的電流和電壓,合理的電源線寬和電源帶線位置都是必需的。影響電源線寬的因素有IR壓降和電遷移,具體處理時主要是根據(jù)電路的功耗進行初步計算,再進行多次調(diào)整。在該設(shè)計中,根據(jù)DC中計算的功耗將電源環(huán)的寬度設(shè)成5 μm,兩個電源帶線分別設(shè)成2.5 μm。圖5中橫向的細線是給標準單元供電的電源線。設(shè)計中并不存在消耗大量能量的子模塊,兩條電源帶線平均分布是一個比較合理的分布[9]。

在邏輯綜合階段,對電源網(wǎng)絡(luò)沒有進行任何優(yōu)化,所有的優(yōu)化工作都是在APR的時鐘樹綜合階段完成。時鐘樹綜合通過在時鐘網(wǎng)絡(luò)添加緩沖、延時等單元,平衡時鐘信號到達時間,提高時鐘網(wǎng)絡(luò)驅(qū)動能力。在時鐘樹綜合階段,主要是通過設(shè)置合理的偏斜、延時、最大扇出、最大負載和轉(zhuǎn)換時間等參數(shù),引導工具生成樹狀的時鐘網(wǎng)絡(luò)[10]。

圖6為APR階段最終的版圖,core的面積為29 970 μm2,面積的利用率為82.56%。從圖6中還可以觀察到core的左上部標準單元分布比較密集,其中分布的是ROM模塊的電路單元。由此可見,采用Memory Compiler創(chuàng)建ROM模塊,不但可以減小設(shè)計面積,還可以減少布線阻塞的可能。

圖5 布圖規(guī)劃示意圖

圖6 最終版圖

在得到最終版圖后,還需要執(zhí)行DRC和LVS,驗證版圖滿足相應(yīng)的物理規(guī)則。Astro自帶有DRC和LVS驗證引擎,同時它還可以調(diào)用Hercules的DRC內(nèi)核進行高級DRC檢察。這里采用Astro自帶的驗證引擎進行高級DRC和LVS驗證,反復執(zhí)行直到驗證通過。

3.2 靜態(tài)時序分析和形式驗證

完成APR后,需要從Astro中提取實際的電路物理寄生信息或延時信息,反標注到靜態(tài)時序分析軟件進行分析,驗證實際電路滿足時序約束的要求。完成這個任務(wù)需要用到PrimeTime(PT)軟件。

從Astro軟件中可以直接得到spef格式的時鐘及其他關(guān)鍵連線的寄生信息,并且Astro可以調(diào)用StarRCXT的內(nèi)核得到更準確的數(shù)值,對于一般的設(shè)計提取精度已經(jīng)足夠了。使用生成的spdf文件反標回PT進行靜態(tài)時序分析,建立時間有0.67 ns的余量,保持時間有0.5 ns的余量。該結(jié)果表明設(shè)計在150 MHz的時鐘運行是安全的。

在APR過程中,各種優(yōu)化操作及時鐘樹綜合改變了電路,同樣要進行形式驗證保證邏輯功能的正確性。這次的形式驗證在綜合優(yōu)化網(wǎng)表與Astro導出的網(wǎng)表之間進行。經(jīng)過驗證,兩者在邏輯上是一致的。

4 結(jié) 語

本文基于數(shù)字ASIC設(shè)計流程設(shè)計并實現(xiàn)了一個DDS電路。分析執(zhí)行了結(jié)構(gòu)規(guī)劃、RTL代碼編寫及仿真、邏輯綜合、形式驗證、時序分析、自動布局布線、DRC、LVS八個步驟,完成了數(shù)字ASIC設(shè)計的主要步驟。在0.18 μm工藝條件下,實現(xiàn)的DDS電路具有150 MHz的時鐘頻率和29 970 μm2的面積,取得了較理想的結(jié)果。

參考文獻

[1]白居憲.直接數(shù)字頻率合成[M].西安:西安交通大學出版社,2007.

[2]鄒雪城,鄒志革,劉政林,等.VLSI 設(shè)計方法與項目實施[M].北京:科學出版社,2007.

[3]藍天,張金林.直接數(shù)字頻率合成器DDS的優(yōu)化設(shè)計[J].電子技術(shù)應(yīng)用,2007(1):42-44.

[4]Song Hu.A Low-power Quadrature Digital Modulator in 0.18 μm CMOS[D].Canada:University of Saskat-chewan,2007.

[5]王金明.Verilog HDL 程序設(shè)計教程[M].北京:人民郵電出版社,2004.

[6]Keshab K Parhi.VLSI數(shù)字信號處理系統(tǒng)設(shè)計與實現(xiàn)[M].陳弘毅,白國強,吳行軍,等譯.北京:機械工業(yè)出版社,2004.

[7]陳亮,張濤.基于ASIC的直接數(shù)字頻率合成器前端設(shè)計與實現(xiàn)[J].微電子學,2009,39(1):11-15.

[8]Himanshu Bhatnagar.Advanced ASIC Chip Synthesis[M].New York:Kluwer Academic Publishers,2002.

[9]李磊.深亞微米高性能數(shù)字ASIC芯片的后端設(shè)計[D].成都:電子科技大學,2007.

[10]黃榮志,陳曉冬,龍燦.基于Astro工具的ASIC時序分析[J].電子設(shè)計應(yīng)用,2006(8):117-119.

主站蜘蛛池模板: 亚洲小视频网站| 色悠久久久| 国产96在线 | 亚洲欧美自拍中文| 欧美中文字幕第一页线路一 | 青青草国产一区二区三区| 久久女人网| 亚洲男人的天堂久久香蕉网| 97视频免费看| 亚洲黄网在线| 色欲不卡无码一区二区| 国产精品九九视频| 国产精品成人一区二区不卡| 视频国产精品丝袜第一页| 色综合天天视频在线观看| 国产综合另类小说色区色噜噜 | 亚洲天堂成人| 67194亚洲无码| 亚洲中文字幕日产无码2021| 四虎影院国产| 男人天堂亚洲天堂| 欧美日韩国产一级| 中文字幕人妻av一区二区| 国产成人免费观看在线视频| 青草国产在线视频| 日韩毛片免费观看| 久草青青在线视频| 真实国产精品vr专区| 黄色一级视频欧美| 91精品国产综合久久香蕉922| 无码又爽又刺激的高潮视频| 成人噜噜噜视频在线观看| 高清无码手机在线观看 | 国产福利一区视频| 青青青视频蜜桃一区二区| 国产香蕉一区二区在线网站| 国产精品v欧美| 国产农村妇女精品一二区| 四虎永久在线视频| 日韩第九页| 国产91丝袜在线观看| 久久影院一区二区h| 色婷婷亚洲综合五月| 无码一区中文字幕| 一级一级一片免费| 婷婷成人综合| 日本爱爱精品一区二区| 视频一区亚洲| 热99re99首页精品亚洲五月天| 国产91无毒不卡在线观看| 亚洲成人精品在线| 精品综合久久久久久97超人该| 欧美精品啪啪一区二区三区| 国产高潮视频在线观看| 亚洲第一黄片大全| 狠狠五月天中文字幕| 精品国产一区91在线| 亚洲国产欧美国产综合久久| 欧美日韩免费在线视频| 日韩A∨精品日韩精品无码| 欧美国产在线看| 亚洲第一成人在线| 欧美日韩导航| 国产簧片免费在线播放| 不卡色老大久久综合网| 国产在线啪| 色婷婷在线影院| 又爽又黄又无遮挡网站| 无码AV动漫| 五月婷婷亚洲综合| 凹凸精品免费精品视频| 成人国产一区二区三区| igao国产精品| 日韩av在线直播| 97成人在线视频| 青青国产成人免费精品视频| 亚洲精品手机在线| 亚洲爱婷婷色69堂| 婷婷激情亚洲| 中文字幕资源站| a级毛片网| 亚洲中文字幕在线一区播放|