![硬件描述語言及器件(侯伯亨版)_第1頁](http://file4.renrendoc.com/view/bfd56e3897b79b09058adc2f15b468ac/bfd56e3897b79b09058adc2f15b468ac1.gif)
![硬件描述語言及器件(侯伯亨版)_第2頁](http://file4.renrendoc.com/view/bfd56e3897b79b09058adc2f15b468ac/bfd56e3897b79b09058adc2f15b468ac2.gif)
![硬件描述語言及器件(侯伯亨版)_第3頁](http://file4.renrendoc.com/view/bfd56e3897b79b09058adc2f15b468ac/bfd56e3897b79b09058adc2f15b468ac3.gif)
![硬件描述語言及器件(侯伯亨版)_第4頁](http://file4.renrendoc.com/view/bfd56e3897b79b09058adc2f15b468ac/bfd56e3897b79b09058adc2f15b468ac4.gif)
![硬件描述語言及器件(侯伯亨版)_第5頁](http://file4.renrendoc.com/view/bfd56e3897b79b09058adc2f15b468ac/bfd56e3897b79b09058adc2f15b468ac5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、適合班級(jí):11060441 11060442 教學(xué)(jio xu)東區(qū)15610H第二課VHDL語言(yyn)程序基本結(jié)構(gòu)共三十八頁VHDL標(biāo)識(shí)符(Identifiers)基本標(biāo)識(shí)符由字母、數(shù)字和下劃線組成第一個(gè)字符(z f)必須是字母最后一個(gè)字符不能是下劃線不允許連續(xù)2個(gè)下劃線保留字(關(guān)鍵字)不能用于標(biāo)識(shí)符大小寫是等效的共三十八頁VHDL 大小寫不敏感(mngn)eqcomp4.vhd包實(shí)體(sht)構(gòu)造體文件名和實(shí)體名一致每行;結(jié)尾關(guān)鍵字begin關(guān)鍵字end后跟實(shí)體名關(guān)鍵字end后跟構(gòu)造體名庫-eqcomp4 is a four bit equality comparatorLibrar
2、y IEEE;use IEEE.std_logic_1164.all;entity eqcomp4 isport(a, b:in std_logic_vector(3 downto 0); equal :out std_logic);end eqcomp4;architecture dataflow of eqcomp4 isbegin equal = 1 when a=b else 0;End dataflow;共三十八頁VHDL語言(yyn)的五個(gè)部分實(shí)體(Entity):描述所設(shè)計(jì)的系統(tǒng)的外部接口信號(hào);構(gòu)造體或構(gòu)造體(Architecture):描述系統(tǒng)內(nèi)部的結(jié)構(gòu)和行為;配置(Confi
3、guration):從庫中選取(xunq)所需單元組成系統(tǒng)設(shè)計(jì)的不同版本;包(Package):存放各設(shè)計(jì)模塊都能共享的數(shù)據(jù)類型、常數(shù)和子程序;庫(Library):存放已經(jīng)編譯的實(shí)體、構(gòu)造體、包、配置。共三十八頁VHDL 程序(chngx)的基本結(jié)構(gòu)實(shí)體(sht):VHDL語言的硬件抽象。它表示具有明確的輸入、輸出的硬件設(shè)計(jì)的一部分。 構(gòu)造體:指定設(shè)計(jì)實(shí)體輸入和輸出之間的行為、邏輯關(guān)系或功能 。共三十八頁VHDL 程序的基本(jbn)結(jié)構(gòu)多次使用(shyng)低層次實(shí)體多個(gè)頂層結(jié)構(gòu)體使用同一個(gè)實(shí)體共三十八頁實(shí)體(sht)(Entity)描述此設(shè)計(jì)功能輸入輸出端口(Port)在層次化設(shè)計(jì)時(shí),P
4、ort為模塊(m kui)之間的接口在芯片級(jí),則代表具體芯片的管腳abscoEntity addr1 isport(a, b: in bit ; s,co:out bit );end addr1;共三十八頁實(shí)體說明的語法(yf)示格式 entity 實(shí)體名 is【generic(類型說明)】-定義端口大小,IO引腳分配(fnpi)port(信號(hào)名:模式信號(hào)類型;信號(hào)名:模式信號(hào)類型;信號(hào)名:模式信號(hào)類型);end 實(shí)體名;共三十八頁實(shí)體(sht)端口的模式輸入(Input):clk、reset、en、addr等輸出(Output):輸出信號(hào),不能內(nèi)部引用雙向(Inout):可代替(dit)所有
5、其他模式,用于設(shè)計(jì)雙向總線緩沖(Buffer):與Output類似,但允許該管腳名作為一些邏輯的輸入信號(hào)不定(Linkage):不定方向,哪個(gè)方向都可連接共三十八頁Out與Buffer的區(qū)別(qbi)Entity test1 is port(a: in std_logic; b,c: out std_logic ); end test1; architecture a of test1 is begin b = not(a); c = b;-Error end a;Entity test2 is port(a: in std_logic; b : buffer std_logic; c: ou
6、t std_logic ); end test2; architecture a of test2 is begin b = not(a); c = b; end a;共三十八頁使用(shyng) out還是使用 bufferout允許對應(yīng)(duyng)多個(gè)信號(hào): addr:out std_logic_vector(3 downto 0);buffer只允許對應(yīng)一個(gè)信號(hào):addr(0) : buffer std_logic; addr(1) : buffer std_logic; addr(2) : buffer std_logic; addr(3) : buffer std_logic;當(dāng)一
7、個(gè)構(gòu)造體用buffer說明輸出端口時(shí),與其連接的另一個(gè)構(gòu)造體端口也使用buffer;對于out,沒有上述要求共三十八頁信號(hào)(xnho)數(shù)據(jù)類型 數(shù)據(jù)類型是內(nèi)部的或用戶定義的信號(hào)類型 。常用數(shù)據(jù)類型:bit 、bit_vector、 boolean 、integer、枚舉型兩類重要的數(shù)據(jù)類型(實(shí)際工程應(yīng)用(yngyng)): std_logic、std_logic_vector。信號(hào)之間賦值,必須首先保證信號(hào)的數(shù)據(jù)類型相同。共三十八頁例3-2 不同(b tn)的數(shù)據(jù)類型說明library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_AR
8、ITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity mu isport( d0,d1,sel:in std_logic;q:out std_logic;bus:out std_logic_vector(7 downto 0);end mu;例3-1 較完整的端口說明(shumng)port( d0,d1,sel:in bit; q:out bit; bus:out bit _vector(7 downto 0);共三十八頁構(gòu)造(guzo)體(Architecture)描述實(shí)體的行為(xngwi)或結(jié)構(gòu)構(gòu)造體有三種描述方式行為描述(behavioral)
9、數(shù)據(jù)流描述或寄存器傳輸描述(dataflow)結(jié)構(gòu)化描述(structural)共三十八頁構(gòu)造體行為(xngwi)描述Architecture behavioral of eqcomp4 is begincomp: process (a,b) beginif a=b then equal = 1; else equal =0;end if; end process comp;end behavioral ;高層次的功能描述(mio sh),不必考慮在電路中到底是怎樣實(shí)現(xiàn)的。共三十八頁構(gòu)造體定義的語法(yf)格式 architecture 構(gòu)造體名 of 實(shí)體名 is類型說明信號(hào)(xnho)說明
10、函數(shù)定義進(jìn)程定義元件說明begin并行語句并行語句end 構(gòu)造體名;并發(fā)語句同時(shí)執(zhí)行 共三十八頁構(gòu)造(guzo)體命名任意命名對應(yīng)三種描述風(fēng)格(fngg)可將構(gòu)造體命名為behavioral, dataflow, structural三種方式。直接命名為a,簡單明了。共三十八頁構(gòu)造(guzo)體描述語句塊語句(yj)(Block)進(jìn)程語句(Process)信號(hào)賦值語句(=)子程序調(diào)用語句(Subprogram)元件例示語句(Component)共三十八頁Blcok語句(yj)的使用在進(jìn)行電路原理圖設(shè)計(jì)時(shí),往往將一個(gè)(y )大規(guī)模電路分割成多張子原理圖,進(jìn)行輸入和存檔。在VHDL語言中同樣可使用
11、Block語句對應(yīng)電原理圖。共三十八頁Block語句(yj)Block語句(yj)結(jié)構(gòu)塊結(jié)構(gòu)名Block begin并行語句并行語句End Block 塊結(jié)構(gòu)名;共三十八頁二選一電路Block語句(yj)示例例3-4Entity mux isport(d0,d1,sel:in bit;q:out bit);end mux;architecture connect of mux is signal tmp1,tmp2,tmp3:bit;begin cale:blockbegintmp1=d0 and sel;tmp2=d1 and (not sel) tmp3= tmp1 and tmp2;q=
12、tmp3; end block cale;end connect;共三十八頁衛(wèi)式Block語句(yj)Block語句(yj)并發(fā)執(zhí)行,若想對其進(jìn)行條件觸發(fā)判斷,則需使用衛(wèi)式Block語句。例如:一個(gè)D觸發(fā)器,具有一個(gè)數(shù)據(jù)輸入端d,一個(gè)時(shí)鐘輸入端clk,一個(gè)輸出端q和一個(gè)反向輸出端qb。共三十八頁例3-5Entity latch isport(d,clk: in bit;q: out bit);end latch;architecture latch_guard of latch isbegin g1:block ( clk =1 )beginq=guarded d after 5 ns;qb=
13、guarded not (d) after 7 ns;end block g1;end latch_guard;布爾表達(dá)式前衛(wèi)(qinwi)關(guān)鍵詞,只有在布爾表達(dá)式為真時(shí),語句才被執(zhí)行共三十八頁進(jìn)程(jnchng)(process)語句 進(jìn)程語句在VHDL程序中用來描述硬件的行為,進(jìn)程中的語句按順序執(zhí)行。一個(gè)構(gòu)造體中可以有多個(gè)進(jìn)程語句,各個(gè)進(jìn)程是并發(fā)執(zhí)行的。進(jìn)程語句是設(shè)計(jì)(shj)人員描述構(gòu)造體時(shí)使用最為頻繁的語句。它有如下特點(diǎn):(1)它可以與其它進(jìn)程并發(fā)執(zhí)行,并可存取構(gòu)造體或?qū)嶓w中所定義的信號(hào);(2)進(jìn)程結(jié)構(gòu)中的所有語句都是按順序執(zhí)行的;(3)為了啟動(dòng)進(jìn)程,在進(jìn)程結(jié)構(gòu)中必須包含一個(gè)顯式的敏感
14、信號(hào)量表或者包含一個(gè)wait語句;(4)進(jìn)程之間的通信是通過信號(hào)量的傳遞來實(shí)現(xiàn)的。共三十八頁進(jìn)程(jnchng)(process)語句的語法格式【進(jìn)程名:】process(敏感(mngn)信號(hào)1,敏感信號(hào)2)【說明區(qū)】 begin順序語句;順序語句; end process 【進(jìn)程名】;共三十八頁帶清零端的(dund)D觸發(fā)器的VHDL程序 敏感(mngn)信號(hào)順序語句共三十八頁進(jìn)程中使用wait語句(yj)的VHDL程序 architecture a of waityuju issignal q:std_logic_vector(3 downto 0);beginprocessbeginwa
15、it until (clkevent and clk=1);q=q+1;end process;y=q;end a; 無敏感(mngn)信號(hào)使用wait語句定義q為信號(hào)共三十八頁庫和程序包庫是經(jīng)編譯后的數(shù)據(jù)集合,它存放實(shí)體說明(shumng)、構(gòu)造體、程序包和配置說明(shumng)等。包括用于分析、仿真和綜合的中間文件。程序包用來存放VHDL語言中所要用到的信號(hào)定義、常量定義、數(shù)據(jù)類型、元件語句等,它是一個(gè)可以編譯的設(shè)計(jì)單元,也是庫結(jié)構(gòu)中的一個(gè)層次。共三十八頁庫和程序包語句(yj)格式library 庫名;use 庫名.程序包名.all; -all指使用所有(suyu)項(xiàng)目use 庫名.程序
16、包名.項(xiàng)目名;-只使用庫中的 某個(gè)項(xiàng)目共三十八頁library IEEE; -使用IEEE庫use IEEE.std_logic_1164.all; -打開IEEE庫中的程序包std_logic_ 1164 .all的所有項(xiàng)目use IEEE .std_logic_1164.std_logic; -打開程序包std_logic_1164中的std_ logic(標(biāo)準(zhǔn)(biozhn)邏輯)數(shù)據(jù)類型共三十八頁庫的類型(lixng)IEEE庫std庫work庫ASIC庫用戶(yngh)自定義的庫 共三十八頁程序包1.std_logic_1164程序包2.numeric_std程序包共三十八頁庫和程序
17、包的常用(chn yn)寫法library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;共三十八頁配置(pizh)(configuration)語句配置(configuration)語句描述層與層之間的連接關(guān)系以及實(shí)體與構(gòu)造體之間的連接關(guān)系。在仿真時(shí),可以利用配置來選擇不同的構(gòu)造體,進(jìn)行對比驗(yàn)證以得到性能最佳(zu ji)的構(gòu)造體。配置根據(jù)不同的使用情況,大體分為四種類型:默認(rèn)配置、元件配置、塊配置和構(gòu)造體配置。共三十八頁配置語句的語法(yf)格式 Configuration 配置名 of 實(shí)體名 is【語句(yj)說明】;end 配置名;Configuration 配置名 of 實(shí)體名 isfor 選配構(gòu)造體名end for;end 配置名;默認(rèn)配置語句 共三十八頁VHDL程序(chngx)結(jié)構(gòu)圖共三十八頁作業(yè)(zuy):將例3-4畫出時(shí)序仿真圖,要求畫出輸入d0,d1,sel,輸出tmp1,tmp2,tmp3,q,其中(qzhng)輸入條件自己設(shè)置。共三十八頁內(nèi)容摘要適合班級(jí):。實(shí)體端口的模式
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山西省2024七年級(jí)道德與法治上冊第二單元成長的時(shí)空第四課幸福和睦的家庭情境基礎(chǔ)小練新人教版
- 2025年臨時(shí)租房協(xié)議考研范文(2篇)
- 2025年倉儲(chǔ)租賃合同例文(三篇)
- 游戲廳裝修工程協(xié)議
- 主題公園商鋪居間合同
- 體育館裝修施工合同協(xié)議書
- 鹽田古典聲學(xué)裝修施工方案
- 機(jī)場候機(jī)廳墻面裝修協(xié)議
- 木材短途運(yùn)輸協(xié)議
- 服裝店內(nèi)部裝修項(xiàng)目協(xié)議
- 父母贈(zèng)與協(xié)議書
- 2025節(jié)后復(fù)工安全工作重點(diǎn)(培訓(xùn)課件)
- 員工之愛崗敬業(yè)培訓(xùn)課件1
- 高校鑄牢中華民族共同體意識(shí)教育的路徑研究
- 《宗教與文化》課件
- 醫(yī)療機(jī)構(gòu)依法執(zhí)業(yè)自查管理辦法
- 《個(gè)人所得稅征管問題及對策研究》
- 2020-2024年五年高考?xì)v史真題分類匯編(全國)專題14 中國古代史(非選擇題)(原卷版)
- JGJT46-2024《施工現(xiàn)場臨時(shí)用電安全技術(shù)標(biāo)準(zhǔn)》條文解讀
- 2022年云南省公務(wù)員錄用考試《申論》真題(縣鄉(xiāng)卷)及答案解析
- 大學(xué)輔導(dǎo)員崗位考核參考指標(biāo)
評論
0/150
提交評論