半定制設(shè)計(jì)——8階FIR低通數(shù)字濾波器電路_第1頁
半定制設(shè)計(jì)——8階FIR低通數(shù)字濾波器電路_第2頁
半定制設(shè)計(jì)——8階FIR低通數(shù)字濾波器電路_第3頁
半定制設(shè)計(jì)——8階FIR低通數(shù)字濾波器電路_第4頁
半定制設(shè)計(jì)——8階FIR低通數(shù)字濾波器電路_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 工作計(jì)劃與進(jìn)度安排:第1-2天:講解題目,準(zhǔn)備參考資料,檢查、調(diào)試實(shí)驗(yàn)軟硬件,進(jìn)入設(shè)計(jì)環(huán)境,開始設(shè)計(jì)方案和驗(yàn)證方案的準(zhǔn)備;第3-5天:完成設(shè)計(jì),經(jīng)指導(dǎo)老師驗(yàn)收后進(jìn)入模塊電路設(shè)計(jì)(驗(yàn)收設(shè)計(jì)文檔);第6-9天:完成模塊電路代碼輸入,并完成代碼的仿真(驗(yàn)收代碼與仿真結(jié)果);第 9-10天:約束設(shè)計(jì),綜合(驗(yàn)收約束與綜合結(jié)果);第11-12天:布局布線,完成版圖(驗(yàn)收版圖結(jié)果);第13-14天:物理驗(yàn)證、后仿真,修改設(shè)計(jì)(驗(yàn)收物理驗(yàn)證結(jié)果和時(shí)序仿真結(jié)果);第15天:整理設(shè)計(jì)資料,驗(yàn)收合格后進(jìn)行答辯。摘 要 關(guān)鍵詞 Verilog HDL;tcl;Design Compiler;邏輯綜合;Encoun

2、ter;物理驗(yàn)證;后仿真;目 錄摘 要III引 言11 總體電路結(jié)構(gòu)設(shè)計(jì)21.1 FIR數(shù)字濾波器原理21.2 抽頭系數(shù)計(jì)算31.3 功能電路設(shè)計(jì)41.4 頂層TOP的設(shè)計(jì)62 功能仿真72.1 仿真的功能列表72.2 頂層仿真平臺(tái)與激勵(lì)72.3 電路功能仿真結(jié)果83 約束及邏輯綜合93.1 約束策略93.2 腳本93.3 綜合文件113.4 綜合環(huán)境123.5 綜合過程123.5.1 綜合流程123.5.2 綜合操作過程134 布局布線144.1 文件準(zhǔn)備144.2 布局布線過程144.3 物理驗(yàn)證165 后仿真176 總結(jié)18參考文獻(xiàn)19附錄A:頂層設(shè)計(jì)源代碼20附錄B:電路源代碼21附錄

3、C:設(shè)計(jì)約束代碼28附錄D:IO文件代碼291 總體電路結(jié)構(gòu)設(shè)計(jì)1.1 FIR數(shù)字濾波器原理數(shù)字濾波器的功能一般是用來變換時(shí)域或者頻域中某些要求信號(hào)的屬性,濾除信號(hào)中某一部分頻率分量。經(jīng)過數(shù)字濾波器的信號(hào)是讓其頻譜與數(shù)字濾波器的頻率響應(yīng)相乘從而得出新的結(jié)果。經(jīng)過一個(gè)線性卷積過程,從時(shí)域上輸入信號(hào)與濾波器的單位沖擊響應(yīng)作一個(gè)卷積和。下面是卷積定義式:LTI數(shù)字濾波器在一般情況下分為有限脈沖響應(yīng)(Finite impulse response)和無限脈沖響應(yīng)(Infinite impulse response),F(xiàn)IR數(shù)字濾波器的設(shè)計(jì)方法和IIR濾波器的設(shè)計(jì)方法有很大的差別。通常情況下一般數(shù)字濾波

4、器的N階FIR數(shù)字濾波器基于輸入信號(hào)x(n)的表達(dá)式為:這個(gè)公式給我們了一個(gè)非常明了的直接型網(wǎng)絡(luò)結(jié)構(gòu),該結(jié)構(gòu)表現(xiàn)出N個(gè)乘法器,每次采樣y(n)的內(nèi)容是n次乘法和n-1次加法,然后做乘累加之和。如圖1.1所示。圖1.1 FIR濾波器直接型網(wǎng)絡(luò)結(jié)構(gòu)從DSP的介紹中,第一類線性相位對(duì)h(n)的約束條件:又以上兩式可得:移相并利用三角公式化簡(jiǎn)得到:從數(shù)字信號(hào)處理學(xué)科中知道函數(shù) 關(guān)于求和區(qū)間的中心(N-1)/2奇對(duì)稱,于是我們要求 和h(n)滿足如下條件: 其中對(duì)應(yīng)的有圖1.2 線性相位FIR濾波器結(jié)構(gòu)若h(n)呈現(xiàn)對(duì)稱特性,即此具有線性相位的濾波器是FIR數(shù)字濾波器。濾波器的基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu)可以相互進(jìn)行轉(zhuǎn)

5、換4。1.3 功能電路設(shè)計(jì)功能電路電路的文件名為FIR.v,根據(jù)信號(hào)功能將接口分為4部分,分別是時(shí)鐘信號(hào)、復(fù)位信號(hào)、輸入信號(hào)、輸出信號(hào)。具體接口如下表1.1所示。表1.1 接口信號(hào)表名稱IO屬性 描述備注clkin 輸入時(shí)鐘,頻率100KHz上升沿有效rstin 復(fù)位信號(hào),給初值低電平有效x7:0in輸入8bit的信號(hào)y7:0out經(jīng)過處理后輸出的8bit結(jié)果電路的功能框圖如下所示。圖1.5 電路功能框圖圖中輸入信號(hào)clk和復(fù)位信號(hào)rst,分別要接到有需要時(shí)鐘和復(fù)位的位置,電路的輸入是x7:0,輸出為y7:0。數(shù)據(jù)寄存模塊由8個(gè)8bit的鎖存器組成,主要是對(duì)輸入的信號(hào)x7:0進(jìn)行8次鎖存,產(chǎn)生

6、tag07:0、tag17:0、tag77:0,輸出給后面的4個(gè)加法器。因?yàn)橹暗玫降某轭^系數(shù)可以看出是偶對(duì)稱的,即h(0)=h(7),h(1)=h(6),h(2)=h(5),h(3)=h(4),所以后面只需要用的h(0),h(1),h(2),h(3)即可,這里就需要用到4個(gè)加法器將相應(yīng)的數(shù)進(jìn)行相加,即tag0+tag7,tag1+tag6,tag2+tag5,tag3+tag4,得到相加的t08:0、t18:0、t28:0、t38:0,輸出給后面的浮點(diǎn)化模塊。浮點(diǎn)化模塊由4個(gè)float模塊構(gòu)成,float的功能就是將9bit的整數(shù)化成32bit的浮點(diǎn)數(shù)。浮點(diǎn)化模塊輸出ft031:0、ft13

7、1:0、ft231:0、ft331:0給后面的乘法模塊。乘法模塊由4個(gè)mult模塊構(gòu)成,mult的功能就是進(jìn)行單精度浮點(diǎn)乘法運(yùn)算。乘法模塊的h0、h1、h2、h3就是抽頭系數(shù)h(0),h(1),h(2),h(3),這里定義為常數(shù)就行了,最后輸出fff031:0、fff131:0、fff231:0、fff331:0給后面的求和模塊。求和模塊由3個(gè)add模塊構(gòu)成,add的功能就是進(jìn)行單精度的浮點(diǎn)加法運(yùn)算。求和模塊輸出y231:0給之后的整數(shù)化模塊。整數(shù)化模塊是將產(chǎn)生的單精度浮點(diǎn)數(shù)進(jìn)行整數(shù)化,產(chǎn)生8bit的y7:0就是最后的輸出信號(hào)。1.4 頂層TOP的設(shè)計(jì)因?yàn)楸驹O(shè)計(jì)是要一起綜合功能電路和PAD,所

8、以需要頂層的文件,該文件為FIR.v,此部分內(nèi)部包含了功能電路和PAD。具體接口如下表1.2所示。表1.2 TOP的接口信號(hào)表名稱IO屬性 描述備注CLK_in 外部輸入到TOP的時(shí)鐘,頻率100KHz上升沿有效RST_in 外部輸入到TOP的復(fù)位信號(hào) 低電平有效X7:0in外部輸入到TOP的要處理的信號(hào)Y7:0out輸出到外部的已處理的信號(hào) 電路的功能框圖如下所示。圖1.6 TOP的功能框圖根據(jù)選用的工藝庫,這里輸入clk、rst、x7:0所選擇的PAD為PDIDGZ,輸出y7:0選擇的PAD為PDO04CDG。2 功能仿真2.1 仿真的功能列表功能仿真要針對(duì)每一條設(shè)計(jì)需要實(shí)現(xiàn)的功能進(jìn)行。設(shè)

9、計(jì)中要求實(shí)現(xiàn)的、需要仿真功能列表如下:1) 復(fù)位功能當(dāng)復(fù)位信號(hào)低有效時(shí),電路應(yīng)處于復(fù)位狀態(tài):任何輸入沒有響應(yīng)、輸出全是復(fù)位狀態(tài);當(dāng)復(fù)位信號(hào)變?yōu)楦唠娖綍r(shí),電路正常工作。2) 時(shí)鐘信號(hào)當(dāng)有時(shí)鐘時(shí)電路正常工作;沒有時(shí)鐘信號(hào)時(shí),除復(fù)位外所有的輸入沒有響應(yīng),所有的輸出沒有變化。3) 輸入信號(hào)輸入信號(hào)的變化和激勵(lì)的設(shè)定一致。4) 輸出信號(hào)當(dāng)輸入信號(hào)不變的時(shí)候,輸出信號(hào)隨著時(shí)鐘同步變化,并能表示出與輸入信號(hào)對(duì)應(yīng)的信號(hào),且以8個(gè)時(shí)鐘為周期變化數(shù)據(jù)。2.2 頂層仿真平臺(tái)與激勵(lì)仿真激勵(lì)的構(gòu)造要盡可能多的構(gòu)造出所有可能,并能驗(yàn)證電路功能。這里構(gòu)造一個(gè)測(cè)試平臺(tái),相應(yīng)文件為FIR_tb.v,其中將位于文件FIR_sti

10、m.v中的激勵(lì)信號(hào)引入,加載到例化的功能模塊中,測(cè)試平臺(tái)設(shè)定時(shí)間單位為1us,并引用電路模塊。構(gòu)建激勵(lì)文件,一是要構(gòu)造時(shí)鐘clk和異步復(fù)位信號(hào)rst,復(fù)位信號(hào)只要開始為零,之后讓電路正常工作即可;二是輸入信號(hào)x,這里依次給出的信號(hào)分別是8'h44、8'h39、8'h53、8'h58、8'h64、8'h86、8'h83、8'h94。根據(jù)FIR數(shù)字低通濾波器的原理,通過計(jì)算得到計(jì)算結(jié)果為8'h63、8'h6f、8'h73、8'h6f、8'h66、8'h5c、8'h56、8'

11、;h59,因此當(dāng)仿真結(jié)果與計(jì)算結(jié)果一致時(shí),說明電路設(shè)計(jì)的功能沒有問題。2.3 電路功能仿真結(jié)果這里仿真結(jié)果截取了仿真中最重要的幾個(gè)點(diǎn),如下圖。圖2.1 仿真開始先看輸入信號(hào),x7:0開始為零,之后按順序顯示8'h44、8'h39、8'h53、8'h58、8'h64、8'h86、8'h83、8'h94。開始復(fù)位信號(hào)為低電平,y 7:0為零,此時(shí)處于復(fù)位狀態(tài);然后進(jìn)入工作狀態(tài)后,因?yàn)檎麄€(gè)設(shè)計(jì)延遲的時(shí)鐘周期為21個(gè)周期,所以這里看不出y7:0有什么變化。圖2.2 第21個(gè)周期出現(xiàn)結(jié)果從這能看出在第21個(gè)周期,y7:0的值依次為8'

12、;h63、8'h6f、8'h73、8'h6f、8'h66、8'h5c、8'h56、8'h59,與計(jì)算結(jié)果一致,并以8個(gè)時(shí)鐘為周期變化,當(dāng)且僅當(dāng)clk上升沿到來的時(shí)候發(fā)生改變。3 約束及邏輯綜合3.1 約束策略對(duì)于一個(gè)由時(shí)鐘控制的數(shù)字邏輯電路來說,時(shí)序是最為重要的。FIRTop.v是本設(shè)計(jì)所要約束的文件。本設(shè)計(jì)定的時(shí)鐘CLK的頻率為100KHz,即周期為10000ns。輸入為X7:0,輸出為Y7:0,他們都是由CLK信號(hào)同步控制,所以這些信號(hào)延時(shí)約占時(shí)鐘信號(hào)的60%,即輸入輸出延時(shí)設(shè)置為6000ns。本設(shè)計(jì)沒有輸入輸出信號(hào)都是clk信號(hào)同步

13、控制,故并不存在純組合邏輯電路。3.2 腳本 首先是讀入源代碼,也就是HDL文本描述的設(shè)計(jì)文件,此處不用制定目錄,Design Compiler會(huì)在搜索目錄中搜索。tcl語句如下: read_verilog FIR.v add.v mult.v FIRTop.v 讀入設(shè)計(jì)原文件后,一般設(shè)定當(dāng)前設(shè)計(jì),這樣約束條件才可能有針對(duì)性的施加。tcl語句如下: current_design FIRTop 設(shè)定當(dāng)前設(shè)計(jì)后,要完成鏈接,也就是將設(shè)計(jì)與庫鏈接起來,用于映射過程中搜索相應(yīng)的單元,完成綜合。tcl語句如下: Link 檢查設(shè)計(jì),主要完成檢查轉(zhuǎn)換的設(shè)計(jì)。tcl語句如下: check_design然后對(duì)

14、設(shè)計(jì)設(shè)定時(shí)序約束,這是最重要的一項(xiàng)約束,用于設(shè)定設(shè)計(jì)的工作速度。針對(duì)不同的設(shè)計(jì)部分,有不同的約束方法。針對(duì)本次設(shè)計(jì),采用全同步,雙時(shí)鐘工作的實(shí)際情況。以下語句設(shè)定時(shí)鐘及屬性、輸入輸出信號(hào)時(shí)間余量。 設(shè)定名稱為CLK的時(shí)鐘,由于采用100KHz的時(shí)鐘,故設(shè)定時(shí)鐘周期為10000ns。tcl語句如下: create_clock -name "clk" -period 10000 get_ports CLK 設(shè)定時(shí)鐘的渡越時(shí)間為0.2ns。tcl語句如下: set_clock_transition -max 0.2 get_clocks clk 設(shè)定輸入信號(hào)最大時(shí)間延時(shí)。tcl語

15、句如下:set_input_delay -max 6000 -clock clk get_ports X 設(shè)定輸出信號(hào)最大時(shí)間延時(shí)。tcl語句如下:set_output_delay -max 6000 -clock clk get_ports Y 告訴綜合器不要對(duì)時(shí)鐘網(wǎng)絡(luò)進(jìn)行驅(qū)動(dòng),這個(gè)工作將在后續(xù)版圖布局布線中進(jìn)行。tcl語句如下: set_dont_touch_network get_clocks "clk"set_ideal_network get_ports "CLK"告訴綜合器不要對(duì)復(fù)位進(jìn)行驅(qū)動(dòng)。tcl語句如下:set_dont_touch_ne

16、twork get_ports RSTset_ideal_network get_ports RST檢查時(shí)序。tcl語句如下:check_timing設(shè)定綜合的操作條件。tcl語句如下:set_operating_conditions -max slow -max_library slow -min fast -min_library fast設(shè)定線負(fù)載模型,本設(shè)計(jì)選擇tsmc18_wl50模型。tcl語句如下:set_wire_load_model -name tsmc18_wl50 -library slow設(shè)定輸出負(fù)載電容。tcl語句如下:set_load -pin_load 2 get

17、_ports Y設(shè)定扇出最大負(fù)載能力。tcl語句如下: set_max_fanout 6900 FIRTop 驅(qū)動(dòng)能力設(shè)定。tcl語句如下: set_drive 2.0 get_ports "CLK RST X" 設(shè)定輸出網(wǎng)表的格式規(guī)則,以消除gate level nelist中的assign。tcl語句如下: set verilogout_no_tri trueset_fix_multiple_port_nets -all -buffer_constants 最大能力進(jìn)行綜合。tcl語句如下: compile -map high 輸出時(shí)序報(bào)告。tcl語句如下: rc &g

18、t; ./output/tim.log 輸出網(wǎng)表。tcl語句如下:write -f verilog -hier -o ./netlst/FIR_top.sv輸出綜合數(shù)據(jù)文件。tcl語句如下:write -f ddc -hier -o ./output/FIR_top.ddc輸出延時(shí)文件。tcl語句如下:write_sdf -version 2.1 ./output/FIR_top.sdf輸出面積文件。tcl語句如下:report_area > ./output/FIR_top.area.log3.3 綜合文件首先在家目錄下建立FIRdc作為本次實(shí)驗(yàn)dc的操作主目錄。在calcu目錄下,建

19、立設(shè)計(jì)存放目錄如code、約束文件目錄如constrn、輸出網(wǎng)表文件目錄ntlst、報(bào)告輸出目錄rpt、log文件目錄log、dc啟動(dòng)目錄work,等等。在綜合前需要準(zhǔn)備以下幾個(gè)文件,以便使軟件可以正常工作。.synopsys_dc.setup文件即啟動(dòng)項(xiàng)文件:在這個(gè)文件中,需要將所用到的庫單元文件的路徑和電路設(shè)計(jì)文件所存放的路徑寫入,以便軟件在工作時(shí)能夠找到這些文件并正確識(shí)別,本設(shè)計(jì)將它存放在work目錄下。*.v文件:因?yàn)楸敬握n程設(shè)計(jì)所使用電路描述語言為verilog HDL語言,所以至少需要將頂層TOP設(shè)計(jì)文件、功能電路的設(shè)計(jì)文件,即準(zhǔn)備好一個(gè)正確可用的設(shè)計(jì),以便用于約束綜合,本設(shè)計(jì)將*

20、.v文件存放在code目錄下。Tcl語句文件:在本次課程設(shè)計(jì)中使用的是命令界面,使用Tcl語言進(jìn)行操作,所以需要準(zhǔn)備好相應(yīng)的Tcl命令,以便對(duì)設(shè)計(jì)進(jìn)行約束綜合等相應(yīng)操作,本設(shè)計(jì)將它存放在constrn目錄下。庫文件:本設(shè)計(jì)采用的是tsmc公司的0.18um標(biāo)準(zhǔn)單元庫的所有文件,存放在目錄:/opt/eda/designKit/下面。3.4 綜合環(huán)境。3.5 綜合過程3.5.1 綜合流程按照所定義的電路的測(cè)量特征所要達(dá)到的目標(biāo),Design Compiler綜合一個(gè)電路并將其放入目標(biāo)庫中,這樣可以生成適用于你的計(jì)算機(jī)輔助設(shè)計(jì)工程(CAE)工具的原理圖或網(wǎng)表。綜合的過程如下: 讀入設(shè)計(jì)及其子設(shè)計(jì)

21、設(shè)置頂層的設(shè)計(jì)特性參數(shù) 設(shè)置實(shí)際時(shí)序和面積目標(biāo)參數(shù) 執(zhí)行check_design驗(yàn)證設(shè)計(jì),識(shí)別并且更正錯(cuò)誤 進(jìn)行Design Compiler優(yōu)化綜合流程如下:設(shè)置啟動(dòng)項(xiàng)文件讀入源代碼鏈接,設(shè)計(jì)檢查時(shí)序路徑約束編譯綜合結(jié)束3.5.2 綜合操作過程首先打開Linux中命令終端。進(jìn)入以準(zhǔn)備好的.synopsys_dc.setup文件所在路徑。執(zhí)行命令,打開Design Compiler。進(jìn)入Tcl命令界面,命令如下:cd FIRdc/workdc_shell-t運(yùn)行后,讀入文件將在終端得到如下圖圖4.1界面,即已經(jīng)進(jìn)入DC的Tcl命令界面。圖3.1 Design Compiler的Tcl命令界面因

22、為已經(jīng)將所要使用的Tcl語句準(zhǔn)備好并形成文件,所以可以使用source命令來講Tcl命令全部讀入并執(zhí)行。命令如下:source FIR.con這里我們逐一運(yùn)行命令,運(yùn)行后,將在終端得到如下界面,即已經(jīng)進(jìn)入約束綜合過程。4 布局布線4.1 文件準(zhǔn)備同所有的EDA工具一樣,Encounter在進(jìn)行設(shè)計(jì)之前也要準(zhǔn)備文件。一般必須要有時(shí)序文件lib、SI工具CeltIC進(jìn)行信號(hào)完整性分析的cdb文件、用于RC提取的電容表文件capTbl、綜合工具輸出的門級(jí)綜合網(wǎng)表、定義工藝的版圖交換文件LEF(Library Exchange Format)、時(shí)序約束的sdc(Synthesis Design Constraints)文件、PAD位置約束的io文件。其中經(jīng)過Design Compiler對(duì)其進(jìn)行綜合后獲得了網(wǎng)表文件FIR_top.sv以及約束文件FIR_top.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論