![VHDL第1講盛建倫老師ppt課件_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/3b67fafc-94e8-4bcf-9b11-352c3ccb3f06/3b67fafc-94e8-4bcf-9b11-352c3ccb3f061.gif)
![VHDL第1講盛建倫老師ppt課件_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/3b67fafc-94e8-4bcf-9b11-352c3ccb3f06/3b67fafc-94e8-4bcf-9b11-352c3ccb3f062.gif)
![VHDL第1講盛建倫老師ppt課件_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/3b67fafc-94e8-4bcf-9b11-352c3ccb3f06/3b67fafc-94e8-4bcf-9b11-352c3ccb3f063.gif)
![VHDL第1講盛建倫老師ppt課件_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/3b67fafc-94e8-4bcf-9b11-352c3ccb3f06/3b67fafc-94e8-4bcf-9b11-352c3ccb3f064.gif)
![VHDL第1講盛建倫老師ppt課件_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/24/3b67fafc-94e8-4bcf-9b11-352c3ccb3f06/3b67fafc-94e8-4bcf-9b11-352c3ccb3f065.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數 字 邏 輯Digital Logic青島理工大學廣義雙語教學課程習題參考答案習題參考答案1-24 (5) ),(),(),(311211105432ddddmmmmDCBAFAB0011CD00 0100 01110011 10XX0000XX11 10CBCBF習題參考答案習題參考答案1-13 (2) (3) 1-15 (1) (2) DBCABDFDCBDCBDBADABDBDBCADBCADBF)()()(ABBCACFCBCABACCBCABABABACBCAF)()()(CBBACAF)(BACABXABBAY)(硬件描畫言語VHDL根底第第3章章 Very High speed
2、 Integrated Circuit Hardware Description Language VHDL非常高速集成電路硬件描畫言語是由美國國防部支持的一項研討方案,于1983年創(chuàng)建,目的是以文字化方法描畫電子電路與系統(tǒng)。1987年,VHDL成為IEEE規(guī)范,即IEEE1076規(guī)范,1993年修正為IEEE1164規(guī)范,2019年,IEEE又將電路合成的規(guī)范程序與規(guī)格參與到VHDL言語中,稱為1076.3規(guī)范。之后,又有1076.4規(guī)范和1076.6規(guī)范。庫、程序包使用說明配置(CONFIGURATION)結構體(ARCHITECTURE)實體(ENTITY)PORT端口說明結構體說明GE
3、NERIC類屬說明體實計設結構體功能描述VHDL程序設計根本構造 VHDL用言語的方式而非圖形等方式描畫硬件電路,容易修正,容易保管。特別適宜于設計組合邏輯電路和形狀機:譯碼器、編碼器、加法器、多路選擇器、地址譯碼器、.VHDL程序根本構造程序根本構造nVHDL程序通常包含實體(Entity),構造體(Architecture),配置(Configuration),包集合(Package),和庫(Library)五部分。庫是專門存放預編譯程序包的地方。庫是專門存放預編譯程序包的地方。其中實體用于描畫所設計的系統(tǒng)的外部接口信號; 配置語句安裝詳細元件到實體構造體對,可以被看作是設計的零件清單;
4、構造體用于描畫系統(tǒng)內部的構造和行為;建立輸入和輸出之間的關系;包集合存放各個設計模塊共享的數據類型、常數和子程序等;包集合存放各個設計模塊共享的數據類型、常數和子程序等;VHDL主要用于描畫設計系統(tǒng)的構造、行為、功能和接口。n器件器件 或或n子系統(tǒng)子系統(tǒng) ARCHITECTUREn Process Process Sequentialn Process Combinationaln Process component Ports它將一個設計 元件、電路、系統(tǒng)分為:n外部外部 可視部分、端口,可視部分、端口,n內部不可視部分、內部功能、算法。內部不可視部分、內部功能、算法。Very High s
5、peed Integrated Circuit Hardware Description Language一、信號signal的含義和信號的兩種最常用類型: std_logic 和 std_logic_vectorVHDL入門需掌握的根本知識入門需掌握的根本知識二、四種常用語句的根本用法賦值語句、if語句、case語句 和 process語句三、實體entity、構造體architecture)以及 一個實體和一個構造體組成的設計實體。四、層次構造的設計 掌握元件component語句和端口映射port map語句。五、庫library和程序包package的根本運用。有了以上入門知識,就能做
6、普通的設計了。有了以上入門知識,就能做普通的設計了。庫庫library和程序包和程序包package 庫Library用于存放預先編譯好的程序包Package,作用: 程序包中定義了數據集合體、邏輯操作和元件等。 主要是聲明在設計或實體中將用到的常數,數據類型,元件及子程序等。 任何一種設計都要充分利用前人已有的成果,公用的資源要盡能夠運用;本人曾經設計好的資源也要盡量利用起來,程序包 package 和庫(library)就是一些可以公用的資源,是設計實體的一個重要組成部分。庫庫library 設計庫對當前設計是可見的,默許的,無需用library子句和use子句闡明的庫。VHDL言語的庫分
7、為兩種,一種是設計庫,一種是資源庫。 庫是用來放置可編譯的設計單元的地方。 VHDL中的常用庫有: STD庫、WORK庫、IEEE庫和用戶定義庫。Std 和 work 這兩個庫是設計庫。 VHDL的規(guī)范庫。庫中存放有稱為“standard的規(guī)范包集合,其中定義了多種常用的數據類型,均不加闡明可直接援用。庫庫librarySTD庫庫 常用的資源庫。IEEE庫包含經過IEEE正式認可的STD_LOGIC_1164包集合和某些公司提供的一些包集合,如STD_LOGIC_ARITH算術運算庫、STD_LOGIC_UNSIGNED等。 WORK庫是現行作業(yè)庫。設計者所描畫的VHDL語句不需求任何闡明,都
8、將存放在WORK庫中。WORK庫對一切設計都是隱含的,因此在運用該庫時無需進展任何闡明。IEEE庫庫WORK庫庫庫庫library用戶定義庫用戶定義庫 用戶定義庫簡稱用戶庫,是由用戶本人創(chuàng)建并定義的庫。 除了IEEE規(guī)范資源庫外,各可編程器件廠家的EDA軟件提供本人獨特的資源程序包。由于這些程序包是為它們制造的器件效力的,往往更有針對性。 設計者可以把本人經常運用的非規(guī)范普通是本人開發(fā)的包集合和實體等聚集在一同定義成一個庫,作為對VHDL規(guī)范庫的補充。用戶定義庫在運用時同樣要首先進展闡明。 Qartus 中提供了一個LPM庫,庫中有許多稱之為 MegaFunctions的功能強大的函數。庫庫l
9、ibrary除了STD庫和WORK庫之外的其它庫均為資源庫。 運用資源庫中的元件和函數之前,需求運用library子句和use子句予以闡明。 沒有闡明的庫中的元件不能運用。 library子句和use子句總是放在設計實體的最前面可以放在注釋之后。 假設一個設計實體中運用了某個庫中的元件和函數,就要運用相應的library子句和use子句。library子句的作用是使該庫在當前文件中“可見。library子句闡明運用哪個庫,它的格式是子句闡明運用哪個庫,它的格式是 library 庫名庫名1,庫名庫名2,庫名庫名n;庫庫librarystd庫和work庫是設計庫,在任何設計文件中隱含都是“不可見
10、的,不需求特別闡明。也就是說,每一個設計文件中總是隱含以下不可見的行:library std, work;use std.standard.all;use子句闡明運用哪個庫中的哪個程序包中的元件或者函數。它子句闡明運用哪個庫中的哪個程序包中的元件或者函數。它的格式是:的格式是:use 庫名庫名.程序包名程序包名.all; 這些是不用在程序里寫的程序包程序包package 程序包是一種使包體中的類型、常量、元件和函數對其他模塊文件是可見、可以調用的設計單元。 程序包是公用的存儲區(qū),在程序包內闡明的數據,可以被其它設計實體運用。程序包由包頭和包體兩部分組成。VHDL言語要素言語要素 V VH HD
11、 DL L語語言言要要素素包包括括數據對象數據對象變量變量信號信號常數常數數據類型數據類型操作數操作數運運算算操操作作符符VHDL數據對象數據對象數據對象Data Objects: 凡是可以被賦予一個值的對象稱為數據對象,數據對象用于傳送信號。數據對象值的類型 數據對象類型 數據對象名 信號和變量信號和變量信號信號signal)變量變量 (variable) 是硬件中物理連線的籠統(tǒng)描畫,信號在元件的端口銜接元件以及在元件內部各部分之間的銜接。 在硬件中沒有類似的對應關系,它們主要用于保管中間結果。例如作為數組的下標。常量代表數字電路中的電源、地、恒定邏輯值等常數。常量常量 Constant)信
12、號在邏輯電路設計中最常用的數據類型信號在邏輯電路設計中最常用的數據類型 在VHDL言語中有10種數據類型,但是在邏輯電路設計中最常用的是std_logic和std_logic_vector提供的數據類型。 std_logic類型分為布爾boolean型、位bit型、位矢量(bit_vector)型。std_logic有9種形狀,常用的是三種形狀:1 高電平高電平0 低電平低電平z高阻高阻高阻形狀是為了雙向總線的描畫信號闡明信號闡明 一個信號只需經過闡明后才干運用。用VHDL言語進展設計就是寫一系列語句。信號闡明方式如下:一個語句用分號終了。一個語句用分號終了。 Signal clock, T1
13、, T2 : std_logic;Signal 信號名:數據類型 :=設定值;Signal A : Std_logic_vector(3 Down to 0) := “0000; 例如:Signal r0, r1 ,r2, r3 : std_logic_vector(15 downto 0);Signal r0,r1,r2,r3:std_logic_vector(0 upto 15);設定值設定值可選項可選項1闡明位置不同,信號通常在實體、構造體和程序包中闡明,變量普通在進程、過程和函數語句中闡明;信號與變量的區(qū)別信號與變量的區(qū)別2賦值運算符不同,信號用“ = 符號進展賦值, 變量用 “ :=
14、 符號賦值;3延遲不同,信號的賦值存在延遲,變量的賦值是直接的,沒有任何延遲時間。 從信號闡明看不出一個信號是組合邏輯還是時序邏輯例如存放器,這與ABEL言語是不同的。VHDL 操作符操作符VHDL操作符:邏輯操作符邏輯操作符算術操作符算術操作符符號操作符符號操作符關系操作符關系操作符邏輯運算符邏輯運算符 -signal a,b :std_logic; -signal c,d :std_logic_vector(7 downto 0);有7種邏輯運算符:NOT、OR、AND、NAND、NOR、XOR 、 XNOR 。闡明:- 是注釋開場的標志,這些signal語句的存在只是為了闡明這些信號的類
15、型,供閱讀方便運用。兩個進展邏輯運算的信號,類型必需一樣。例如a and b a or b not a正確c and d c xor d not c 正確a and c錯誤 常用的為前三種。不等于 ( a and b) or (c and d)邏輯運算符邏輯運算符例如:a and b or c and d等于 (a and b ) or c) and d 這些邏輯運算符, not優(yōu)先級最高,其他的優(yōu)先級一樣。因此運算時按由左到右的順序展開。運算時要留意加括號。NOT、OR、AND、NAND、NOR、XOR 、XNOR 。能進展邏輯運算的數據類型:bit、 bit_vector、 boolean
16、std_logic、 std_logic_vectorSignal a,b,c,d: std_logic_vector(3 downto 0);Signal e,f,g,h: std_logic_vector(1 downto 0);d=a and b and c;d=a or b or c;d=a xnor b xnor c;h=e nor f nor g;h=(e nor f) nor g;d=(e nor f) nor g;例算術運算符算術運算符a + ba + 1常用的算術運算符有:+ - -USE ieee.Std_logic_arith.ALL;-signal a,b :std_l
17、ogic_vector(15 downto 0);字符串必需用雙引號括起來字符類型通常用單引號括起來,字符類型區(qū)分大小寫,a + 01求和運算符、求積運算符、符號運算符、混合運算符、移位運算符 VHDL中的求和運算符包括加減運算和并置運算,操作數的數據類型為整型。例VHDL語句不區(qū)分大小寫并置運算符并置運算符 &-signal a,b:std_logic_vector(3 downto 0);-signal c,d:std_logic_vector(2 downto 0); a and (1 & c) c & a 并置運算符用于位的銜接,構成矢量。也可銜接矢量構成更大的
18、矢量。例如:Signal a : std_logic_vector(4 downto 0);Signal b : std_logic_vector(2 downto 0);Signal c : std_logic_vector(1 downto 0);B B2 2B B1 1 B B0 0b b: :C C1 1 C C0 0c c: :b cB B2 2 B B1 1 B B0 0b b: :C C1 1 C C0 0: :c c B2B2 B1B1 B0B0 C1C1 C0C0a = b cA A4 4 A A3 3 A A2 2A A1 1 A A0 0a a: :a:a:B B2 2
19、B B1 1 B B0 0 C C1 1 C C0 0例:并置運算符 & 并置運算符用于位的銜接,構成矢量。也可銜接矢量構成更大的矢量。關系運算符關系運算符 = 等于等于/= 不等于不等于 大于大于 = 大于等于大于等于 關系運算符有以下幾種:關系運算的結果為“真(true)或者“假(false)。=、 /= 在實現硬件電路時比其它的關系運算符對芯片的利用率要高 等于、不等于運算符適用于一切的數據類型,其他的運算符適用于整數、位及矢量等。在進展關系運算時,兩邊的數據類型必需一樣,但位長度可以不同。VHDL順序語句順序語句 順序語句的特點是,每一條順序語句的執(zhí)行順序是與它們的書寫順序根本
20、一致的。順序語句只能出如今進程Process和子程序中,子程序包括函數Function和過程Procedure。順序語句的種類: 進程語句賦值語句 流程控制語句 等待語句 子程序調用語句 前往語句 空操作語句常用的常用的4種語句種語句 VHDL有許多類型的語句,入門只需掌握4種語句:賦值語句,賦值語句,if語句,語句,case語句語句 和和 process語句。語句。賦值語句賦值語句 -signal a, b, c: std_logic; -signal d, e, q :std_logic_vector3 downto 0; = 是信號賦值符,= 左右兩邊數據類型必需一樣,數據長度必需一樣。
21、1、信號賦值語句、信號賦值語句 由于信號是物理量,因此賦值有延遲時間。如第二個語句就是一個或門,因此,信號d或“q后到e有延遲時間。信號賦值語句的語法格式為:目的信號名 = 表達式設定值; c = not (a and b); e = d or q; -variable x,y,z : integer range 0 to 255;x := 0;y := 132;z := x; 賦值語句賦值語句2、變量賦值語句、變量賦值語句:=是變量賦值符。是變量賦值符。:=左右兩邊的數據類型必需一樣。左右兩邊的數據類型必需一樣。由于變量沒有相對應的明確的物理量,因此變量賦由于變量沒有相對應的明確的物理量,因
22、此變量賦值沒有時間延遲。值沒有時間延遲。3. 并行賦值語句并行賦值語句(1) 條件賦值語句條件賦值語句格式:目的信號=表達式1 WHEN 條件1 ELSE表達式2 WHEN 條件2 ELSE表達式N-1 WHEN 條件N-1 ELSE表達式N;并行賦值語句并行賦值語句(2) 選擇賦值語句選擇賦值語句格式:目的信號 b ) THEN outb ) THEN out= 1;ELSEout=0;END IF;2、二選一if語句例例: 一個8位二選一選擇器用于二選一控制的if語句-signal sel :std_logic;-signal a, b,c :std_logic_vector(7 down
23、to 0); if sel = 1 then c = a; else c = b; end if; 第三種IF語句If 條件1 Then 假設干語句;Elsif 條件2 Then 假設干語句; else 條件n Then 假設干語句;End if;語句格式3、多項選擇一if語句例:例:A1A1A2A2Y Y0 00 00 01 11 10 01 11 1D0D0D1D1D2D2D3D3A1A1A2A2D0D0D1D1D2D2D3D3Y Y四選一數四選一數據選擇器據選擇器Process(A)BeginIf A=00 then f=D0; elsif A=01 then f=D1; elsif A
24、=10 then f=D2; else f=D3; end if;end process;多項選擇一if語句process 語句語句 process語句通常稱為進程語句,本質上它描畫了一個功能獨立的電路塊。 在VHDL言語中,一切的并行執(zhí)行語句都代表功能獨立的電路塊,而一切順序執(zhí)行語句那么是用于描畫電路塊的功能。 process語句有許多變種,這里只引見最根本的方式。流程控制語句 process語句是個并行執(zhí)行的語句,但是process語句內部的語句要求是順序執(zhí)行語句。它是VHDL程序中,描畫硬件并行任務的最重要最常用的語句。Process語句的書寫格式是:進程名: process敏感信號1,
25、敏感信號 2,敏感信號n假設干變量闡明語句begin假設干順序執(zhí)行語句end process 進程名; process 語句語句用方括號括起來的部分是可選的 第一個進程名以冒號終了,和關鍵字process隔開,它是可選的,可要可不要,對硬件電路沒有影響。不過我建議最好加上進程名,加上進程名等于給這塊功能獨立的電路加了個標志,加強可讀性。 process語句中,begin之前的假設干變量闡明語句也是可選的。假設該process語句中需求運用變量,那么需求在begin之前予以闡明。這些被闡明的變量只對該進程語句起作用,只能在該process語句中運用。敏感信號表 process語句中有個敏感信號表
26、,各敏感信號之間用逗號分開。最后一個敏感信號后面是括號,不需求跟一個逗號。process 語句語句 所謂敏感信號就是指當它的形狀發(fā)生變化時,啟動process語句執(zhí)行。由于process語句代表一塊功能獨立的電路,它的某些輸入信號的形狀變化,勢必引起電路輸出的變化,這些立刻引起當然要經過短暫的時間延遲輸出信號形狀變化的信號就是敏感信號。 變量不是真正的物理量,因此不能出如今敏感信號表中。在process語句中只作為輸出存在的信號出如今信號賦值符“=的左邊,不能作為敏感信號。 既出如今信號賦值符“=的左邊,又出如今信號賦值符“=右邊的信號,可以出如今敏感信號表中,這是由于這些信號既作為這塊電路的
27、輸出,又是電路內部的反響信號。 在process語句的書寫格式中,在 begin 和 end process 之間的假設干順序執(zhí)行語句用于描畫該process語句所代表的電路塊的功能。process 語句語句 在前面引見if語句時,用if語句描畫了二選一選擇器和多項選擇一選擇器。 但是由于if語句是順序執(zhí)行語句,因此不能代表一塊功能獨立的電路,只能成為一塊功能獨立電路的一部分。需求對前面的if語句進展改造,使之成為一塊功能獨立的電路能并行執(zhí)行。改造的方法之一就是將if語句放在process語句中。-signal sel: std_logic;-signal a, b, c: std_logic
28、_vector(15 downto 0);mux2to1: processsel, a, b beginif sel = 0 then c = a;else c = b;end if; end process;process 語句語句例: 二選一選擇器留意,本例中運用了進程名,不過在end process之后沒有書寫進程名。敏感信號表中有3個輸入信號case語句語句 case語句是順序執(zhí)行語句,常用來描畫總線的行為、編碼器和譯碼器的構造以及形狀機等等。case語句可讀性好,非常簡約。case語句的書寫格式為流程控制語句case 條件表達式 is when 條件表達式值1 = 假設干順序執(zhí)行語句
29、 when 條件表達式n = 假設干順序執(zhí)行語句 when others = 假設干順序執(zhí)行語句end case; 在case語句中,某一個條件表達式滿足時,就執(zhí)行它后面的順序執(zhí)行語句。case語句語句if語句的執(zhí)行是按順序執(zhí)行,各條件有不同的優(yōu)先級; case語句各條件表達式值之間不存在不同的優(yōu)先級,它們是同時執(zhí)行的,即執(zhí)行的順序與各條件表達式值的書寫順序無關。 case語句中條件表達式的值須一一列舉,不能脫漏;假設不需求一一列舉,那么用others替代。 case語句和if語句在許多情況下完成的功能是一樣的,在這些情況下,用case語句描畫比用if語句描畫更明晰、更簡約。 -signal
30、sel :std_logic_vector(1 downto 0);-signal a,b,c: std_logic;process(a,b,sel)begin sel c c null; end case;end process;case語句語句本例中出現的“null;是個什么也不做的空語句。例: 2輸入與非門本例中,首先將與非門輸入信號a和b并置,生成一個2位的std_logic_vector信號sel。信號c是與非門的輸出。 第一個when 中的“|代表或者,即三個條件中的任何一個滿足,都執(zhí)行 c = 1 語句。實踐上與非門普通不這樣設計。常用的設計方法是: c = not (a and
31、 b);設計實體設計實體 在VHDL的設計中,根本設計單元是設計實體。 實體闡明了該設計實體對外的接口;構造體描畫了設計實體內部的性能;程序包存放各設計實體能共享的數據類型、常數和子程序等等,庫中存放已編譯好的實體、構造體、程序包和配置。配置描畫了實體與構造體之間的銜接關系。 一個設計實體最多由5部分構成:實體entity,一個或者幾個構造體architecture,運用的庫(library)和程序包(pachage),配置configuration。 這里僅討論含有一個構造體的設計實體,絕大多數設計實體都是僅含一個構造體的設計實體。一個實體-構造體“對共同定義一個電路模型。 設計實體設計實體
32、 實體entity 實體由實體entity 語句闡明。實體語句又稱為實體闡明entity declaration語句。實體語句的作用是定義設計實體對外的信號。entity語句的書寫格式如下:entity 實體名 is generic 類屬參數表; port端口信號表; 實體闡明部分; begin實體語句部分;end 實體名; 最常用的方式是:entity 實體名 isport端口信號表;end 實體名; port端口語句的書寫格式是:port(端口名,端口名:方式 數據類型; 端口名,端口名:方式 數據類型; 端口名,端口名:方式 數據類型); 實體entity 實體中的每一個輸出/輸入被稱為
33、一個端口。一個端口實踐上是一個信號,由于這些信號擔任設計實體與外部的接口,因此稱為端口。假設設計實體是一個封裝起來的元件,那么端口相當于元件的引腳pin。 跟普通訊號有兩點不同:一是端口一定是信號,因此在闡明時省略了關鍵字signal,二是在闡明普通訊號的信號闡明語句中的信號沒有闡明方向,端口由于是設計實體與外部的接口,因此是有方向的。 例: 實體entity port(reset, cs:instd_logic; rd, wr:instd_logic; a1, a0:instd_logic; pa, pb:inoutstd_logic_vector(7 downto 0); pcoutstd
34、_logic_vector(15 downto 0) ); port端口語句的書寫格式:port(端口名,端口名:方式 數據類型; 端口名,端口名:方式 數據類型); 留意:pc信號一行最后不以分號終了 端口的方式用來闡明信號經過端口的方向和經過方式,這些方向都是針對該設計實體而言的。例如,in方式對設計實體就是輸入。有以下幾種方式: 實體entity in流入設計實體, 輸入 out從設計實體流出, 輸出 inout雙向端口,即可輸入,又可輸出buffer 緩存,能用于內部反響的輸出 out方式和buffer方式的區(qū)別在于out端口不能用于設計實體的內部反響。buffer端口可以用于設計實體
35、的內部反響。 實體entity aq1的方式是outbq1的方式是buffer構造體構造體 (architecture) 構造體描畫設計實體內部的特性。構造體的書寫格式如下: architecture 構造體名 of 實體名 is 內部信號,常量,數據類型,函數等的定義; begin 假設干并行執(zhí)行語句 end 構造體名; 實體名一定要與本構造體對應實體的實體名完全一致。architecture后面的構造體名要與end后的構造體名完全一致,而不是與實體名一致。構造體名可以隨意起,由于別的地方很少用到構造體名。構造體內要求運用并行執(zhí)行語句。 類似if之類的順序執(zhí)行語句,只需將它們放在進程語句pr
36、ocess語句之內即可。 process語句是并行執(zhí)行語句。 前面曾經闡明了并行語句和順序執(zhí)行語句的區(qū)別。構造體構造體(architecture) 并行執(zhí)行語句代表一個獨立的功能電路,因此它一定有明確表示或者隱含表示的輸入、輸出信號,如process語句中敏感信號表中的信號不是輸入信號就是反響信號。而順序執(zhí)行語句只用于描畫電路的功能普通很難判別輸入輸出信號,因此不能代表一個獨立的功能電路,例如從一個if語句中判別輸入輸出信號就比較難。構造體有3種描畫方式:行為描畫、構造描畫和數據流描畫。構造體構造體(architecture) (1) 行為描畫 描畫該設計實體的功能,即該單元能做什么。(2)
37、構造描畫 描畫該設計實體的硬件構造,即該設計實體的硬件是如何構成的。(3) 數據流方式 以類似于存放器傳輸級的方式描畫數據的傳輸和變換。主要運用并行執(zhí)行的信號賦值語句,即顯式表示了設計實體的行為,也隱式表示了設計實體的構造。 其實初學者不用太研討各種描畫方式的定義,只需能正確描畫設計實體的內部特性即可。 構造體內部要求運用并行執(zhí)行的語句,這是非常重要的。每個并行執(zhí)行語句都是一塊獨立的電路。構造體構造體(architecture) 像與非門這種簡單的電路經過信號賦值語句很容易做到,但是像16位存放器用簡單的信號賦值語句就無法實現,因此process語句在構造體內得到了大量的運用。這和電路原理圖中是一樣的。 在用電路原理圖設計的電路中,每塊電路也都是并行操作,操作時間也沒有先后。所以各process語句之間都是并行執(zhí)行的。 在用原理圖描畫的電路中,各塊電路之間運用信號線相互聯絡。在VHDL言語中,各process語句、各并行執(zhí)行語句之間同樣是經過信號相互聯絡或者稱之為通訊的。構造體構造體(architecture) 無論用電路原理圖的方式設計電路,還是用VHDL言語設計電路,組合邏輯電路中的各個信號,假設不思索信號傳輸延遲時間,是沒有時間先后的;時序電路中的各信號是經過時鐘信號來同步,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度跨境電商平臺代理權授權合同
- 共享香煙售賣合同范本
- 個人轉介紹合同范本
- 公司過戶合同范本
- 北京家政服務合同范本
- 代墊付工資合同范本
- 鄉(xiāng)鎮(zhèn)防汛物資購銷合同范本
- 2023-2028年中國等離子手術刀行業(yè)市場調查研究及發(fā)展戰(zhàn)略規(guī)劃報告
- 2025年度住宅小區(qū)工程質量監(jiān)控服務合同
- 加工合同范本版
- 社會政策概論課件
- 工程量清單及招標控制價編制服務采購實施方案(技術標)
- 全國住戶收支調查業(yè)務知識考試復習題庫(含答案)
- 復方氨基酸注射液的匯總
- 2023年上海市秋考語文真題試卷含答案(整理版)
- 2023年心理咨詢師之心理咨詢師基礎知識考試題庫附完整答案【有一套】
- 一級建造師繼續(xù)教育最全題庫及答案(新)
- 直線加速器專項施工方案
- 聯苯二氯芐生產工藝及產排污分析
- 儲能設備項目采購供應質量管理方案
- 美國房地產市場特征、框架與周期演變
評論
0/150
提交評論