第VHDL與原理圖層次型溷合設(shè)計(jì)PPT課件_第1頁
第VHDL與原理圖層次型溷合設(shè)計(jì)PPT課件_第2頁
第VHDL與原理圖層次型溷合設(shè)計(jì)PPT課件_第3頁
第VHDL與原理圖層次型溷合設(shè)計(jì)PPT課件_第4頁
第VHDL與原理圖層次型溷合設(shè)計(jì)PPT課件_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 6.1 自底向上混合設(shè)計(jì)6.1.1 6.1.1 自底向上混合設(shè)計(jì)流程第1頁/共53頁6.1 自底向上混合設(shè)計(jì)6.1.2 1位二進(jìn)制全加器設(shè)計(jì)一位二進(jìn)制半加器真值表如表6.1所示。其中a、b是輸入端,So是和、 co進(jìn)位端。表6.1 一位二進(jìn)制半加器真值表第2頁/共53頁6.1 自底向上混合設(shè)計(jì)1.建立工程 建立一個(gè)工程名為f_adder的工程文件,如圖6.2所示: 圖6.2 f_adder的工程項(xiàng)目圖 第3頁/共53頁6.1 自底向上混合設(shè)計(jì)2.建立文件 建立三個(gè)VHDL文本文件,分別命名為h_adder.vhd(半加器文件名)、or_2.vhd(或門文件名)和f_adder.vhd(全加器

2、文件名),并保存,如圖6.3所示。 圖 6.3第4頁/共53頁6.1 自底向上混合設(shè)計(jì)3.輸入代碼并打包入庫 在每個(gè)VHDL文件中輸入相應(yīng)的代碼,并保存文件,將底層的半加器和或門電路打包入庫,如圖6.4所示 圖6.4 輸入代碼后的圖形 第5頁/共53頁6.1 自底向上混合設(shè)計(jì)(1)半加器的VHDL代碼如下 :【例6.1】library ieee;use ieee.std_logic_1164.all;entity h_adder isport(a,b:in std_logic; co,so:out std_logic);end entity h_adder;architecture str o

3、f h_adder issignal abc:std_logic_vector(1 downto 0);beginabcso=0;coso=1;coso=1;coso=0;conull;end case;end process; end architecture str; 圖6.5半加器的打包元件 圖6.6 半加器的仿真波形第7頁/共53頁6.1 自底向上混合設(shè)計(jì)or_2.vhd中輸入代碼如下:【例6.2】library ieee;use ieee.std_logic_1164.all;entity or_2 isport(a,b:in std_logic; c:out std_logic);

4、end entity or_2;architecture str of or_2 isarchitecture str of or_2 isbegincain, b=bin, co=d, so=e);u2:h_adder port map(a=e, b=cin, co=f, so=sum);u3: or_2 port map(a=d, b=f, c=cout);end architecture str;第13頁/共53頁6.1 自底向上混合設(shè)計(jì)5.頂層文件編譯與仿真(1)編譯頂層VHDL的方法 此時(shí),由于工程文件名是f_adder,所以可以直接點(diǎn)擊編譯按鈕,此時(shí)將對頂層VHDL文件進(jìn)行編譯。

5、圖6.11 全加器的頂層VHDL語言仿真波形第14頁/共53頁6.1 自底向上混合設(shè)計(jì)(2)編譯頂層原理圖 編譯頂層原理圖文件,需要重新建立一個(gè)新的工程文件,且命名為fg_adder,原因是頂層原理圖文件名為fg_adder.bdf。其時(shí)序仿真結(jié)果如圖6.14所示。 圖6.14 全加器頂層原理圖仿真波形第15頁/共53頁6.1 自底向上混合設(shè)計(jì)6. 引腳分配、下載驗(yàn)證 分配引腳的結(jié)果如圖6.15所示,并在實(shí)驗(yàn)板上驗(yàn)證其功能,具體步驟做實(shí)驗(yàn)再詳述。 圖6.15 全加器引腳分配圖 第16頁/共53頁6.1 自底向上混合設(shè)計(jì)6.1.3 簡易時(shí)鐘計(jì)數(shù)電路設(shè)計(jì) 1. 時(shí)鐘計(jì)數(shù)電路結(jié)構(gòu)圖 時(shí)鐘電路的組成由

6、兩個(gè)模為60的計(jì)數(shù)器和一個(gè)模為12的計(jì)數(shù)器構(gòu)成,具體結(jié)構(gòu)如圖6.16所示 第17頁/共53頁6.1 自底向上混合設(shè)計(jì)2.模塊電路的VHDL描述 本列采用混合設(shè)計(jì)輸入方法,先建立兩個(gè)VHDL文本文件,分別將模為60的8421BCD計(jì)數(shù)器和模為12的計(jì)數(shù)器代碼輸入,然后再建立頂層原理圖文件。 (1)模為60的BCD計(jì)數(shù)器的VHDL設(shè)計(jì)代碼如下: 第18頁/共53頁6.1 自底向上混合設(shè)計(jì)【例6.4】模為60的BCD計(jì)數(shù)器的VHDL設(shè)計(jì)library ieee;use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;entity co

7、unter_60 isport( en:in std_logic; clear:in std_logic; clk:in std_logic; count:out std_logic; qh:buffer std_logic_vector(3 downto 0); ql:buffer std_logic_vector(3 downto 0);end;architecture str of counter_60 isBegin -接下頁第19頁/共53頁6.1 自底向上混合設(shè)計(jì)-接上頁count=1when(qh=0101 and ql=1001 and en=1)else 0;process(

8、clk,clear)beginif(clear=0)thenqh=0000;ql=0000;elsif(clkevent and clk=1)then if(en=1)then if(ql=9)then ql=0000; if(qh=5)then qh=0000; ql=“0000”; -接下頁第20頁/共53頁6.1 自底向上混合設(shè)計(jì)else qh=qh+1; -接上頁 end if; else ql=ql+1; end if; end if;end if;end process;end;第21頁/共53頁6.1 自底向上混合設(shè)計(jì)(2)模為12的計(jì)數(shù)器的VHDL代碼如下:【例6.5】libr

9、ary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity counter_12 isport(en:in std_logic; clear:in std_logic;clk:in std_logic; count:out std_logic; qh:buffer std_logic_vector(3 downto 0); ql:buffer std_logic_vector(3 downto 0);end; -接下頁第22頁/共53頁6.1 自底向上混合設(shè)計(jì)architecture str of co

10、unter_12 is -接上頁begincount=1 when(qh=0001 and ql=0010 and en=1) else 0;process(clk,clear) begin if(clear=0)then qh=0000; ql=0000;elsif(clkevent and clk=1) then if(en=1)then if(ql=9) then ql=0000; qh=“0001”; -接下頁第23頁/共53頁6.1 自底向上混合設(shè)計(jì)else ql=ql+1; -接上頁 end if; if(qh=1)then if(ql=2)then qh=0000; ql=000

11、1; else ql=ql+1; end if; end if; end if; end if; end process;end;第24頁/共53頁6.1 自底向上混合設(shè)計(jì)3.頂層原理圖設(shè)計(jì) 如圖6.17所示,時(shí)鐘計(jì)數(shù)電路的頂層原理圖設(shè)計(jì),最后保存文件。第25頁/共53頁6.1 自底向上混合設(shè)計(jì)4.編譯和仿真 編譯工程文件,建立仿真波形文件后完成仿真,仿真波形如圖6.18所示。 圖6.18 時(shí)鐘計(jì)數(shù)電路的頂層文件仿真波形第26頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.1自頂向下設(shè)計(jì)流程 所謂自頂向下的設(shè)計(jì)方法如圖6.19所示,它是指設(shè)計(jì)電子系統(tǒng)先從系統(tǒng)最抽象的層次出發(fā),作高層次仿真,經(jīng)過仿真驗(yàn)

12、證后再經(jīng)整體規(guī)劃(Floor Planning)將系統(tǒng)行為操作分為多個(gè)子系統(tǒng)。 第27頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.1自頂向下設(shè)計(jì)流程自頂向下的設(shè)計(jì)方法的優(yōu)點(diǎn):(1)克服了大規(guī)模電子系統(tǒng)高復(fù)雜度所帶來的問題,系統(tǒng)可以層次式地劃分為易于處理的子模塊系統(tǒng),子模塊系統(tǒng)還可以劃分成下一層子模塊系統(tǒng),任務(wù)可以層層分解,直到最容易實(shí)現(xiàn)為此。第28頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.1自頂向下設(shè)計(jì)流程(2)各子模塊系統(tǒng)可以給設(shè)計(jì)組中的成員同時(shí)設(shè)計(jì),也加快了設(shè)計(jì)速度。(3)設(shè)計(jì)錯(cuò)誤可以在早期發(fā)現(xiàn),極大地減少了設(shè)計(jì)的迭代次數(shù)。(4)邏輯綜合優(yōu)化之前的設(shè)計(jì)工作和具體采用什么工藝生產(chǎn)芯片是無關(guān)的,

13、因而設(shè)計(jì)的可移植性好,當(dāng)要采用新的工藝時(shí),可以直接從綜合開始。(5)自頂向下的設(shè)計(jì)方法增加了一次性設(shè)計(jì)成功的可能性。第29頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.1自頂向下設(shè)計(jì)流程自頂向下設(shè)計(jì)流程第30頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì) 1.建立工程 建立名為counter_16的工程文件,如圖 6.20所示。圖6.20 counter_16的工程文件圖第31頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)2.建立原理圖文件 建立一個(gè)空白的原理圖文件,并命名為counter_16,如圖6.21所示。 圖6.21 counter

14、_16的原理圖文件圖 第32頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)3.創(chuàng)建圖標(biāo)模塊 單擊(Block Tool)按鈕,在適當(dāng)?shù)奈恢梅胖靡粋€(gè)符號塊,如圖6.22所示。 圖6.22 放置圖標(biāo)模塊第33頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)4. 設(shè)置圖標(biāo)模塊(1) 在圖所示的符號塊上單擊鼠標(biāo)右鍵:從彈出的菜單中選擇“Block Properties”命令,彈出如圖6.23所示的對話框。在“General”頁面中的“Name”欄中輸入設(shè)計(jì)文件名稱,在“Instance name”欄中輸入模塊名稱。本例中設(shè)計(jì)名稱為“counter1

15、6”,模塊名稱為“instl”。第34頁/共53頁6.2自頂向下混合設(shè)計(jì) 圖6.23 設(shè)置圖標(biāo)模塊6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)第35頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)(2)單擊“I/O”頁標(biāo)簽:頁面如圖6.24所示。在“Name”欄中分別輸入圖標(biāo)模塊的輸入端口名和輸出端口名;在“type欄中分別選擇與輸入和輸出對應(yīng)的類型,點(diǎn)擊ADD按鈕。當(dāng)設(shè)置完成所有端口后,單擊“確定”按鈕,結(jié)果如圖6.25所示。第36頁/共53頁6.2自頂向下混合設(shè)計(jì)圖6.24 圖標(biāo)模塊“I/O”頁標(biāo)簽圖6.25 圖標(biāo)模塊“I/O”設(shè)置完成6.2.

16、2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)第37頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)5.添加模塊引線并設(shè)置屬性 (1)在圖中的counter16模塊的左右兩側(cè)分別用3條連線和1條總線連接,如圖6.26所示??梢钥吹?,在每條線靠模塊的一側(cè)都有的圖樣。雙擊其中一個(gè)樣標(biāo),彈出“Mapper Properties”對話框,如圖6.27所示。在“General”頁面的“Type”欄中選擇輸入、輸出類型,本例中選擇為“INPUT”。第38頁/共53頁6.2 自頂向下混合設(shè)計(jì)圖6.26 圖標(biāo)模塊連線圖6.27 圖標(biāo)模塊端口模式設(shè)置6.2.2 16進(jìn)制計(jì)數(shù)譯

17、碼顯示電路設(shè)計(jì)進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)第39頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)(2)單擊“Mappings”頁標(biāo)簽,頁面如圖 6.28所示。在“I/O on block”欄里選擇引腳clk,在“Signals in node”欄中輸入連線節(jié)點(diǎn)名稱clk。輸入完成后,單擊“Add”按鈕添加到“Existing mappings”欄中。最后單擊“確定”按鈕。結(jié)果如圖6.29所示。第40頁/共53頁6.2自頂向下混合設(shè)計(jì)圖6.28 圖標(biāo)模塊Mappings設(shè)置 圖6.29 圖標(biāo)模塊樣標(biāo)設(shè)置 6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)第41

18、頁/共53頁6.2自頂向下混合設(shè)計(jì)(3) 同理,將其他引線按此方法進(jìn)行設(shè)置。通常模塊左側(cè)放置輸入接口信號,右側(cè)放置輸出接口信號。本例將左側(cè)的其余兩條輸入信號分別設(shè)置為,rst和en;右側(cè)的輸出信號設(shè)置為q3.0,設(shè)置完成后如圖6.30所示。第42頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)6.創(chuàng)建設(shè)計(jì)文件 在圖6.30所示的符號塊上單擊鼠標(biāo)右鍵,在彈出的菜單中選擇“Create Design File form Selected Block”命令,彈出如圖6.31所示對話框。其中“File type”欄中有4個(gè)選項(xiàng)可供選擇,它們是“AHDL”、“VHDL”、“Ve

19、rilog HDL”和“Schematic”,分別對應(yīng)不同的電路行為描述方法。本例中選擇“VHDL”,單擊“OK按鈕。此時(shí),會彈出生成模塊文件的確認(rèn)對話框,單擊“確定”,進(jìn)入VHDL文本編輯窗口,如圖6.32所示。第43頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)圖6.31 Create Design File form Selected Block選擇圖6.32 新建VHDL文本編輯窗口第44頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)7. 輸入VHDL代碼 將圖6.32中的代碼修改為所需要設(shè)計(jì)的代碼,如圖6.33所示。 圖6.33 counter16的VHDL代碼第45頁/共53頁6.2自頂向下混合設(shè)計(jì)6.2.2 16進(jìn)制計(jì)數(shù)譯碼顯示電路設(shè)計(jì)【例6.6】Counter16.vhd文件的VHDL描述 LIBRARY ieee; USE ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY counter16 IS PORT( clk : IN STD_LOGIC; en : IN STD_LOGIC; rst : IN STD_LOGIC; q : OUT STD_LOGIC_VECTOR(3 downto 0) ); END coun

溫馨提示

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

評論

0/150

提交評論