![VHDL語言入門教程PPT課件_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/27/8bf1edbc-3a27-45f8-b705-4b36ccdffde9/8bf1edbc-3a27-45f8-b705-4b36ccdffde91.gif)
![VHDL語言入門教程PPT課件_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/27/8bf1edbc-3a27-45f8-b705-4b36ccdffde9/8bf1edbc-3a27-45f8-b705-4b36ccdffde92.gif)
![VHDL語言入門教程PPT課件_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/27/8bf1edbc-3a27-45f8-b705-4b36ccdffde9/8bf1edbc-3a27-45f8-b705-4b36ccdffde93.gif)
![VHDL語言入門教程PPT課件_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/27/8bf1edbc-3a27-45f8-b705-4b36ccdffde9/8bf1edbc-3a27-45f8-b705-4b36ccdffde94.gif)
![VHDL語言入門教程PPT課件_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/27/8bf1edbc-3a27-45f8-b705-4b36ccdffde9/8bf1edbc-3a27-45f8-b705-4b36ccdffde95.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2021/3/913 VHDL語言語言VHDL: VHSIC Hardware Description Language.3.1 VHDL語言基礎(chǔ)語言基礎(chǔ)3.2 VHDL基本結(jié)構(gòu)基本結(jié)構(gòu)3.3 VHDL語句語句3.4 狀態(tài)機(jī)在狀態(tài)機(jī)在VHDL中的實現(xiàn)中的實現(xiàn)3.5 常用電路常用電路VHDL程序程序3.6 VHDL仿真仿真3.7 VHDL綜合綜合2021/3/92HDL-Hardware Description Language 一種用于描述數(shù)字電路的功能或行為的語言。目的是提為電路設(shè)計效率,縮一種用于描述數(shù)字電路的功能或行為的語言。目的是提為電路設(shè)計效率,縮短設(shè)計周期,減小設(shè)計成本,可在芯片制
2、造前進(jìn)行有效的仿真和錯誤檢測。短設(shè)計周期,減小設(shè)計成本,可在芯片制造前進(jìn)行有效的仿真和錯誤檢測。 優(yōu)點:優(yōu)點: HDL設(shè)計的電路能獲得非常抽象級的描述。如基于設(shè)計的電路能獲得非常抽象級的描述。如基于RTL(Register Transfer Level)描述的描述的IC,可用于不同的工藝。,可用于不同的工藝。 HDL設(shè)計的電路,在設(shè)計的前期,就可以完成電路的功能級的驗證。設(shè)計的電路,在設(shè)計的前期,就可以完成電路的功能級的驗證。 HDL設(shè)計的電路類似于計算機(jī)編程。設(shè)計的電路類似于計算機(jī)編程。 常用的常用的HDL語言:語言:VHDL 、Verilog HDL 2021/3/93 VHDL是美國國防
3、部在是美國國防部在20世紀(jì)世紀(jì)80年代初為實現(xiàn)其高速集成電路年代初為實現(xiàn)其高速集成電路硬件硬件VHSIC計劃提出的描述語言計劃提出的描述語言; IEEE從從1986年開始致力于年開始致力于VHDL標(biāo)準(zhǔn)化工作,融合了其它標(biāo)準(zhǔn)化工作,融合了其它ASIC芯片制造商開發(fā)的硬件描述語言的優(yōu)點,于芯片制造商開發(fā)的硬件描述語言的優(yōu)點,于93年形成了標(biāo)年形成了標(biāo)準(zhǔn)版本(準(zhǔn)版本(IEEE.std_1164)。)。 1995年,我國國家技術(shù)監(jiān)督局推薦年,我國國家技術(shù)監(jiān)督局推薦VHDL做為電子設(shè)計自動化做為電子設(shè)計自動化硬件描述語言的國家標(biāo)準(zhǔn)。硬件描述語言的國家標(biāo)準(zhǔn)。 VHDL 概述:概述:VHDL VHSIC H
4、ardwarter Description Language Very High speed integrated circuitVHSIC2021/3/94 覆蓋面廣,系統(tǒng)硬件描述能力強(qiáng),是一個多層次的硬件描述語言覆蓋面廣,系統(tǒng)硬件描述能力強(qiáng),是一個多層次的硬件描述語言; VHDL語言具有良好的可讀性,既可以被計算機(jī)接受,也容易被人們語言具有良好的可讀性,既可以被計算機(jī)接受,也容易被人們所理解所理解; VHDL語言可以與工藝無關(guān)編程語言可以與工藝無關(guān)編程; VHDL語言已做為一種語言已做為一種IEEE的工業(yè)標(biāo)準(zhǔn),便于使用、交流和推廣。的工業(yè)標(biāo)準(zhǔn),便于使用、交流和推廣。 VHDL語言的不足之處
5、語言的不足之處: VHDL優(yōu)點優(yōu)點: 設(shè)計的最終實現(xiàn)取決于針對目標(biāo)器件的編程器,工具的不同會導(dǎo)致綜設(shè)計的最終實現(xiàn)取決于針對目標(biāo)器件的編程器,工具的不同會導(dǎo)致綜合質(zhì)量不一樣。合質(zhì)量不一樣。2021/3/953.1.1 標(biāo)識符標(biāo)識符(Identifiers)要求:要求:l 首字符必須是字母首字符必須是字母l 末字符不能為下劃線末字符不能為下劃線l 不允許出現(xiàn)兩個連續(xù)的下劃線不允許出現(xiàn)兩個連續(xù)的下劃線l 不區(qū)分大小寫不區(qū)分大小寫l VHDL定義的保留字(關(guān)鍵字),不能用作標(biāo)識符定義的保留字(關(guān)鍵字),不能用作標(biāo)識符l 標(biāo)識符字符最長可以是標(biāo)識符字符最長可以是32個字符。個字符。注釋由兩個連續(xù)的虛線(
6、)引導(dǎo)。注釋由兩個連續(xù)的虛線()引導(dǎo)。3.1 VHDL語言基礎(chǔ)語言基礎(chǔ) 標(biāo)識符用來定義常數(shù)、變量、信號、端口、子程序或參數(shù)的名字,標(biāo)識符用來定義常數(shù)、變量、信號、端口、子程序或參數(shù)的名字,由字母由字母(AZ,az)、數(shù)字、數(shù)字(09)和下劃線和下劃線(_)字符組成。字符組成。2021/3/96例如:例如: 關(guān)鍵字(保留字):關(guān)鍵字(保留字): 關(guān)鍵字(關(guān)鍵字(keyword)是)是VHDL中具有特別含義的單詞,只中具有特別含義的單詞,只能做為固定的用途,用戶不能用其做為標(biāo)識符。能做為固定的用途,用戶不能用其做為標(biāo)識符。2021/3/973.1.2 數(shù)據(jù)對象數(shù)據(jù)對象(Date Objects)
7、常量常量ConstantConstant bus_width: integer := 8; -定義總線寬度為常數(shù)定義總線寬度為常數(shù)8 數(shù)據(jù)對象包括常量、變量、信號和文件四種類型。數(shù)據(jù)對象包括常量、變量、信號和文件四種類型。 常量是對某一常量名賦予一個固定的值,而且只能賦值一次。通常賦常量是對某一常量名賦予一個固定的值,而且只能賦值一次。通常賦值在程序開始前進(jìn)行,該值的數(shù)據(jù)類型則在說明語句中指明。值在程序開始前進(jìn)行,該值的數(shù)據(jù)類型則在說明語句中指明。Constant 常數(shù)名:數(shù)據(jù)類型:表達(dá)式常數(shù)名:數(shù)據(jù)類型:表達(dá)式Constant Vcc:real:=5.0; -定義定義Vcc的數(shù)據(jù)類型是實數(shù),
8、賦值為的數(shù)據(jù)類型是實數(shù),賦值為5.0V常量所賦的值應(yīng)和定義的數(shù)據(jù)類型一致;常量所賦的值應(yīng)和定義的數(shù)據(jù)類型一致;常量在程序包、實體、構(gòu)造體或進(jìn)程的說明性區(qū)域內(nèi)必須加以說明。定義在程序包常量在程序包、實體、構(gòu)造體或進(jìn)程的說明性區(qū)域內(nèi)必須加以說明。定義在程序包內(nèi)的常量可供所含的任何實體、構(gòu)造體所引用,定義在實體說明內(nèi)的常量只能在該內(nèi)的常量可供所含的任何實體、構(gòu)造體所引用,定義在實體說明內(nèi)的常量只能在該實體內(nèi)可見,定義在進(jìn)程說明性區(qū)域中的常量只能在該進(jìn)程內(nèi)可見。實體內(nèi)可見,定義在進(jìn)程說明性區(qū)域中的常量只能在該進(jìn)程內(nèi)可見。2021/3/98Variable 變量名:數(shù)據(jù)類型變量名:數(shù)據(jù)類型 :初始值初始
9、值;Variable count: integer 0 to 255:=20 ; - 定義定義count整數(shù)變量,變化整數(shù)變量,變化 范圍范圍0255,初始值為,初始值為20。 變量變量Variable 變量只能在進(jìn)程語句、函數(shù)語句和過程語句結(jié)構(gòu)中使用。變變量只能在進(jìn)程語句、函數(shù)語句和過程語句結(jié)構(gòu)中使用。變量的賦值是直接的,非預(yù)設(shè)的,分配給變量的值立即成為當(dāng)前值,量的賦值是直接的,非預(yù)設(shè)的,分配給變量的值立即成為當(dāng)前值,變量不能表達(dá)變量不能表達(dá)“連線連線”或存儲元件,不能設(shè)置傳輸延遲量。或存儲元件,不能設(shè)置傳輸延遲量。變量賦值語句:變量賦值語句: 目標(biāo)變量名目標(biāo)變量名 := 表達(dá)式表達(dá)式;變量
10、定義語句:變量定義語句:x:=10.0; - 實數(shù)變量賦值為實數(shù)變量賦值為10.0Y:=1.5+x; - 運算表達(dá)式賦值,注意表達(dá)式必須與目標(biāo)變量的數(shù)據(jù)類型相同運算表達(dá)式賦值,注意表達(dá)式必須與目標(biāo)變量的數(shù)據(jù)類型相同A(3 to 6):=(“1101”); -位矢量賦值位矢量賦值2021/3/99Signal 信號名信號名: 數(shù)據(jù)類型數(shù)據(jù)類型 :初始值初始值Signal clock:bit :=; -定義時鐘信號類型,初始值為定義時鐘信號類型,初始值為0 信號信號Signal 信號表示邏輯門的輸入或輸出,類似于連接線,也可以表達(dá)存信號表示邏輯門的輸入或輸出,類似于連接線,也可以表達(dá)存儲元件的狀態(tài)
11、。信號通常在構(gòu)造體、程序包和實體中說明。儲元件的狀態(tài)。信號通常在構(gòu)造體、程序包和實體中說明。信號定義語句:信號定義語句:Signal count:BIT_VECTOR(3 DOWNTO 0); -定義定義count為為4位位矢量位位矢量信號賦值語句:信號賦值語句: 目標(biāo)信號名目標(biāo)信號名 = 表達(dá)式表達(dá)式; x=9;Z=x after 5 ns; - 在在5ns后將后將x的值賦予的值賦予z2021/3/9103.1.2 數(shù)據(jù)類型數(shù)據(jù)類型l 布爾:布爾:(Boolean)l 位位: ( Bit ) TYPE BIT IS (0,1); -取值為取值為0和和1,用于邏輯運算,用于邏輯運算 l 位矢量
12、位矢量: ( Bit_Vector ) TYPE BIT_VECTOR IS ARRAY (Natural range) OF BIT; - 基于基于Bit類型的數(shù)類型的數(shù) 組,用于邏輯運算組,用于邏輯運算 SIGNAL a:Bit_Vector(0 TO 7); SIGNAL a:Bit_Vector ( 7 DOWNTO 0) VHDL的預(yù)定義數(shù)據(jù)類型的預(yù)定義數(shù)據(jù)類型 在在VHDL標(biāo)準(zhǔn)程序包標(biāo)準(zhǔn)程序包STANDARD中定義好,實際使用過程中,已中定義好,實際使用過程中,已自動包含進(jìn)自動包含進(jìn)VHDL源文件中,不需要通過源文件中,不需要通過USE語句顯式調(diào)用。語句顯式調(diào)用。 TYPE BOO
13、LEAN IS (FALSE, TRUE); - 取值為取值為FALSE和和TRUE,不是數(shù)值,不,不是數(shù)值,不 能運算,一般用于關(guān)系運算符能運算,一般用于關(guān)系運算符2021/3/911l 整數(shù):整數(shù):(Integer) 取值范圍取值范圍 -(231-1) (231-1),可用,可用32位有符號的二進(jìn)制數(shù)表示位有符號的二進(jìn)制數(shù)表示 variable a:integer range -63 to 63 在實際應(yīng)用中,在實際應(yīng)用中,VHDL仿真器將仿真器將Integer做為有符號數(shù)處理,而做為有符號數(shù)處理,而VHDL綜合器將綜合器將Integer做為無符號數(shù)處理;做為無符號數(shù)處理; 要求用要求用R
14、ANGE子句為所定義的數(shù)限定范圍,以便根據(jù)范圍來決定表示此子句為所定義的數(shù)限定范圍,以便根據(jù)范圍來決定表示此信號或變量的二進(jìn)制數(shù)的位數(shù)。信號或變量的二進(jìn)制數(shù)的位數(shù)。 l 字符:字符:(Character) TYPE CHARACTER IS (NUL, SOH,STX, , , !,); -通常用通常用引起引起 來,區(qū)分大小寫;來,區(qū)分大小寫;l 字符串:字符串:(String)VARIABLE string_var: STRING (1 TO 7);string_var:=“A B C D” ; - 通常用通常用“”“”引起來,區(qū)分大小寫;引起來,區(qū)分大小寫;2021/3/912l 實數(shù):實
15、數(shù):(Real) 取值范圍取值范圍 -1.0E38 +1.0E38,僅用于仿真不可綜合,僅用于仿真不可綜合 1.0 -十進(jìn)制浮點數(shù)十進(jìn)制浮點數(shù) 843.6e+4 -八進(jìn)制浮點數(shù)八進(jìn)制浮點數(shù) 43.6E-4 -十進(jìn)制浮點數(shù)十進(jìn)制浮點數(shù)l 時間:時間:(Time) 物理量數(shù)據(jù),完整的包括整數(shù)和單位兩個部分物理量數(shù)據(jù),完整的包括整數(shù)和單位兩個部分,用至少一個空格隔,用至少一個空格隔開,僅用于仿真不可綜合;開,僅用于仿真不可綜合; fs,ps,ns,us,ms,sec,min,hrl 錯誤等級錯誤等級(Severity Level) : 表示系統(tǒng)狀態(tài),表示系統(tǒng)狀態(tài),僅用于仿真不可綜合;僅用于仿真不可綜
16、合;TYPE severity_level IS (NOTE、WARNING、ERROR、FAILURE);2021/3/913 IEEE預(yù)定義標(biāo)準(zhǔn)邏輯位與矢量預(yù)定義標(biāo)準(zhǔn)邏輯位與矢量l 標(biāo)準(zhǔn)邏輯位標(biāo)準(zhǔn)邏輯位(Std_Logic)l 標(biāo)準(zhǔn)邏輯位矢量標(biāo)準(zhǔn)邏輯位矢量( Std_Logic_vector)基于基于Std_Logic類型的數(shù)組;類型的數(shù)組; 使用使用Std_Logic和和 Std_Logic_Vector要調(diào)用要調(diào)用IEEE庫中的庫中的Std_Logic_1164 程序包;就綜合而言,能夠在數(shù)字器件中實現(xiàn)的是程序包;就綜合而言,能夠在數(shù)字器件中實現(xiàn)的是“、0、1、Z”四種狀態(tài)。四種狀態(tài)。
17、 在條件語句中,必須要全面考慮在條件語句中,必須要全面考慮Std_Logic的所有可能取值情況,否則綜的所有可能取值情況,否則綜合器可能會插入不希望的鎖存器。合器可能會插入不希望的鎖存器。U:Uninitialized; X:Forcing Unkown; 0: Forcing 0 1: Forcing 1 Z:High Impedance W:Weak UnknownL: Weak 0 H: Weak 1 :Dont care2021/3/914枚舉:枚舉:type states is (idle,decision,read,write); type boolean is (false,tr
18、ue); type bit is (0,1);數(shù)組:數(shù)組:type value_type is array (127 downto 0) of integer; type matrix_type is array (0 to 15, 0 to 31) of std_logic; 用戶自定義用戶自定義l TYPE 數(shù)據(jù)類型名數(shù)據(jù)類型名 IS 數(shù)據(jù)類型定義數(shù)據(jù)類型定義 OF 基本數(shù)據(jù)類型基本數(shù)據(jù)類型 或或 TYPE 數(shù)據(jù)類型名數(shù)據(jù)類型名 IS 數(shù)據(jù)類型定義數(shù)據(jù)類型定義l SUBTYPE 子類型名子類型名 IS 基本數(shù)據(jù)類型定義基本數(shù)據(jù)類型定義 RANGE 約束范圍約束范圍subtype digit
19、 is integer range 0 to 9;2021/3/9153.1.3 數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換VHDL為強(qiáng)定義類型語言,不同類型的數(shù)據(jù)不能進(jìn)行運算和直接賦值。為強(qiáng)定義類型語言,不同類型的數(shù)據(jù)不能進(jìn)行運算和直接賦值。l 類型標(biāo)記法類型標(biāo)記法Variable A: integer; Variable B: real;A= integer (B); B=real (A);l 函數(shù)法函數(shù)法Conv_interger (A);-由由std_logic轉(zhuǎn)換為轉(zhuǎn)換為integer型,在型,在std_logic_unsigned包。包。l 常數(shù)轉(zhuǎn)換法常數(shù)轉(zhuǎn)換法 / 常量轉(zhuǎn)換法常量轉(zhuǎn)換法Type c
20、onv_table is array(std_logic) of bit;Constant table: conv_table:=(0|L=0, 1|H=1, others=0);Signal a: bit; signal b: std_logic;A=table(b); - 將將std_logic型轉(zhuǎn)換為型轉(zhuǎn)換為bit型型具有轉(zhuǎn)換表性質(zhì)的常數(shù)具有轉(zhuǎn)換表性質(zhì)的常數(shù)2021/3/916 在在“STD_LOGIC_1164”、“STD_LOGIC_ARITH”和和 “STD_LOGIC_UNSIGNED”的程序包中提供的數(shù)據(jù)類型變換函數(shù)。的程序包中提供的數(shù)據(jù)類型變換函數(shù)。2021/3/917 屬性
21、屬性屬性提供的是關(guān)于信號、類型等的指定特性。屬性提供的是關(guān)于信號、類型等的指定特性。 event:若屬性對象有事件發(fā)生,則生成布爾值若屬性對象有事件發(fā)生,則生成布爾值“true”,常用來檢查時鐘,常用來檢查時鐘邊沿是否有效。邊沿是否有效。上升沿:上升沿:Clock EVENT AND Clock=1 range:生成一個限制性數(shù)組對象的范圍生成一個限制性數(shù)組對象的范圍left:生成數(shù)據(jù)類型或數(shù)據(jù)子類型的左邊界值;生成數(shù)據(jù)類型或數(shù)據(jù)子類型的左邊界值;right , high, low, lengthrange: “0 to n” ; reverse_range:“n downto 0”2021/
22、3/918 運算符運算符l 算術(shù)運算符:算術(shù)運算符:, , *, / , MOD, REM ,SLL ,SRL ,SLA, SRA ,ROL ,ROR ,*,ABSl 關(guān)系運算符:關(guān)系運算符:, /, , =l 邏輯運算符:邏輯運算符:AND,OR,NAND,NOR,XNOR,NOT,XORl 賦值運算符:賦值運算符:l 其他運算符:其他運算符:, ,& 2021/3/919并置操作符并置操作符 SIGNAL a : STD_LOGIC_VECTOR (3 DOWNTO 0) ;SIGNAL d : STD_LOGIC_VECTOR (1 DOWNTO 0) ; .a = 1 0 d(
23、1) 1 ; - 元素與元素并置,并置后的數(shù)組長度為元素與元素并置,并置后的數(shù)組長度為4 .IF a d = 101011 THEN . - 在在IF條件句中可以使用并置符條件句中可以使用并置符 2021/3/920 運算符優(yōu)先級別運算符優(yōu)先級別邏輯、算術(shù)運算符(邏輯、算術(shù)運算符( NOT, *,ABS) 乘法運算符(乘法運算符(/ , MOD, REM, * ) 正負(fù)運算符:,正負(fù)運算符:, , 加減、并置運算符:,加減、并置運算符:, , & 關(guān)系運算符:,關(guān)系運算符:, /, , =邏輯運算符:邏輯運算符:AND,OR,NAND,NOR,XNOR,NOT,XOR2021/3/92
24、1 移位運算符的左邊為一維數(shù)組,其類型必須是移位運算符的左邊為一維數(shù)組,其類型必須是BIT或或BOOLEAN,右邊必須是整數(shù)移位次數(shù)為整數(shù)的絕對值。右邊必須是整數(shù)移位次數(shù)為整數(shù)的絕對值。移位運算符操作示意圖移位運算符操作示意圖“1100”SLL1 =“1000” “1100”SRL1 =“0110” “1100”SLA1 =“1000” “1100”SRA1 =“1110” “1100”ROL1 =“1001” “1100”ROR1 =“0110” SLL:將位向量左移,右邊移空位補(bǔ)零;:將位向量左移,右邊移空位補(bǔ)零;SRL:將位向量右移,左邊移空位補(bǔ)零;:將位向量右移,左邊移空位補(bǔ)零;SLA
25、:將位向量左移,右邊第一位的數(shù)值保持原值不變;:將位向量左移,右邊第一位的數(shù)值保持原值不變;SRA:將位向量右移,左邊第一位的數(shù)值保持原值不變;:將位向量右移,左邊第一位的數(shù)值保持原值不變;ROL和和ROR:自循環(huán)左右移位。:自循環(huán)左右移位。2021/3/922取余運算(取余運算(a REM b)的符號與)的符號與a相同,其絕對值小于相同,其絕對值小于b的絕對值。的絕對值。 例如:(例如:(-5)REM 2=(-1) 5 REM 2=(1) 取模運算(取模運算(a MOD b)的符號與)的符號與b相同,其絕對值小于相同,其絕對值小于b的絕對值。的絕對值。 例如:(例如:(-5)MOD 2=1
26、5 MOD (- 2)=(-1)2021/3/9233.2 VHDL基本結(jié)構(gòu)基本結(jié)構(gòu) 實體(實體(Entity):描述所設(shè)計的系統(tǒng)的外部接口信號,定義電路設(shè)計中):描述所設(shè)計的系統(tǒng)的外部接口信號,定義電路設(shè)計中所有的輸入和輸出端口;所有的輸入和輸出端口; 結(jié)構(gòu)體結(jié)構(gòu)體 (Architecture):描述系統(tǒng)內(nèi)部的結(jié)構(gòu)和行為;:描述系統(tǒng)內(nèi)部的結(jié)構(gòu)和行為; 包集合包集合 (Package):存放各設(shè)計模塊能共享的數(shù)據(jù)類型、常數(shù)和子程序等;:存放各設(shè)計模塊能共享的數(shù)據(jù)類型、常數(shù)和子程序等; 配置配置 (Configuration):指定實體所對應(yīng)的結(jié)構(gòu)體;:指定實體所對應(yīng)的結(jié)構(gòu)體; 庫庫 (Libr
27、ary):存放已經(jīng)編譯的實體、結(jié)構(gòu)體、包集合和配置。:存放已經(jīng)編譯的實體、結(jié)構(gòu)體、包集合和配置。2021/3/924LIBRARY IEEE; - 庫、程序包的說明調(diào)用庫、程序包的說明調(diào)用 USE IEEE.Std_Logic_1164.ALL;ENTITY FreDevider IS - 實體聲明實體聲明PORT(Clock: IN Std_logic; Clkout: OUT Std_logic);END;ARCHITECTURE Behavior OF FreDevider IS - 結(jié)構(gòu)體定義結(jié)構(gòu)體定義SIGNAL Clk:Std_Logic;BEGIN PROCESS(Clock)B
28、EGIN IF rising_edge(Clock) THEN Clk=NOT Clk; END IF;END PROCESS;Clkout=Clk;END;VHDL的基本設(shè)計單元結(jié)構(gòu):程序包說明、實體說明和結(jié)構(gòu)體說明三部分。的基本設(shè)計單元結(jié)構(gòu):程序包說明、實體說明和結(jié)構(gòu)體說明三部分。2021/3/9253.2.1 實體(實體(Entity)ENTITY 實體名實體名 IS GENERIC(常數(shù)名:數(shù)據(jù)類型:設(shè)定值)(常數(shù)名:數(shù)據(jù)類型:設(shè)定值)PORT( 端口名端口名1:端口方向:端口方向 端口類型;端口類型; 端口名端口名2:端口方向:端口方向 端口類型;端口類型; . . 端口名端口名n:
29、端口方向:端口方向 端口類型端口類型);END 實體名實體名; 實體描述了設(shè)計單元的輸入輸出接口信號或引腳,是設(shè)計實體實體描述了設(shè)計單元的輸入輸出接口信號或引腳,是設(shè)計實體經(jīng)封裝后對外的一個通信界面。經(jīng)封裝后對外的一個通信界面。2021/3/926ENTITY FreDevider ISPORT(Clock: IN Std_logic; Clokout: OUT Std_logic);END;實體名實體名最后一條端口聲明語句無分號最后一條端口聲明語句無分號端口方向端口方向端口類型端口類型端口名端口名 實體名由設(shè)計者自由命名,用來表示被設(shè)計電路芯片的名稱,實體名由設(shè)計者自由命名,用來表示被設(shè)計電
30、路芯片的名稱,但是必須與但是必須與VHDL程序的文件名稱相同。要與文件名一致;程序的文件名稱相同。要與文件名一致;2021/3/927例如:例如: GENERIC(wide:integer:=32);); -說明寬度為說明寬度為32 GENERIC(tmp:integer:=1ns);); -說明延時說明延時1 ns 類屬說明類屬說明 類屬為設(shè)計實體與外界通信的靜態(tài)信息提供通道,用來規(guī)類屬為設(shè)計實體與外界通信的靜態(tài)信息提供通道,用來規(guī)定端口的大小、實體中子元件的數(shù)目和實體的定時特性等。定端口的大小、實體中子元件的數(shù)目和實體的定時特性等。格式:格式: GENERIC(常數(shù)名:數(shù)據(jù)類型:設(shè)定值;(
31、常數(shù)名:數(shù)據(jù)類型:設(shè)定值; 常數(shù)名:數(shù)據(jù)類型:設(shè)定值);常數(shù)名:數(shù)據(jù)類型:設(shè)定值);2021/3/928 端口方向:端口方向:IN, OUT,INOUT,BUFFERINOUTINOUTBUFFER“OUT”和和“BUFFER”都可定義輸出端口都可定義輸出端口;若實體內(nèi)部需要反饋輸出若實體內(nèi)部需要反饋輸出信號,則輸出端口必須被信號,則輸出端口必須被設(shè)置為設(shè)置為“BUFFER”,而不,而不能為能為“OUT”。2021/3/929 同方向、同類型的端口可放在同一個說明語句中。同方向、同類型的端口可放在同一個說明語句中。ENTITY Full_adder IS PORT( a, b, c: IN B
32、IT; sum, carry: OUT BIT ); END Full_adder;2021/3/9303.2.2 結(jié)構(gòu)體結(jié)構(gòu)體 (Architecture)ARCHITECTURE 結(jié)構(gòu)體名結(jié)構(gòu)體名 OF 實體名實體名 IS 聲明語句聲明語句BEGIN 功能描述語句功能描述語句END 結(jié)構(gòu)體名結(jié)構(gòu)體名;用于聲明該結(jié)構(gòu)體將用到的信號、數(shù)據(jù)類型、常數(shù)、子程用于聲明該結(jié)構(gòu)體將用到的信號、數(shù)據(jù)類型、常數(shù)、子程序和元件等。聲明的內(nèi)容是局部的。序和元件等。聲明的內(nèi)容是局部的。具體描述結(jié)構(gòu)體的功能和行為。具體描述結(jié)構(gòu)體的功能和行為。 結(jié)構(gòu)體定義了設(shè)計單元具體的功能,描述了該基本設(shè)計單元的結(jié)構(gòu)體定義了設(shè)計單
33、元具體的功能,描述了該基本設(shè)計單元的行為、元件和內(nèi)部的連接關(guān)系。行為、元件和內(nèi)部的連接關(guān)系。 一個實體可對應(yīng)多個結(jié)構(gòu)體,每個結(jié)構(gòu)體代表該實體功能的不同實現(xiàn)方案或不同一個實體可對應(yīng)多個結(jié)構(gòu)體,每個結(jié)構(gòu)體代表該實體功能的不同實現(xiàn)方案或不同實現(xiàn)方式。同一時刻只有一個結(jié)構(gòu)體起作用,通過實現(xiàn)方式。同一時刻只有一個結(jié)構(gòu)體起作用,通過CONFIGURATION決定用哪個結(jié)構(gòu)決定用哪個結(jié)構(gòu)體進(jìn)行仿真或綜合。體進(jìn)行仿真或綜合。 在結(jié)構(gòu)體描述中,具體給出了輸入、輸出信號之間的邏輯關(guān)系。在結(jié)構(gòu)體描述中,具體給出了輸入、輸出信號之間的邏輯關(guān)系。2021/3/931ARCHITECTURE Behavior OF Fr
34、eDevider IS - 結(jié)構(gòu)體定義結(jié)構(gòu)體定義SIGNAL Clk:Std_Logic; -信號聲明信號聲明BEGIN PROCESS(Clock)BEGIN IF rising_edge(Clock) THEN Clk=NOT Clk; END IF;END PROCESS;Clkout=Clk;END;功能描述語句功能描述語句進(jìn)程進(jìn)程順序順序語句語句2021/3/9323.2.3 庫、程序包的調(diào)用庫、程序包的調(diào)用LIBRARY IEEE; USE IEEE.Std_Logic_1164.ALL;LIBRARY 庫名庫名;USE 庫名庫名.程序包名程序包名.項目名;項目名;調(diào)用此程序包中所
35、有的資源調(diào)用此程序包中所有的資源LIBRARY IEEE; USE IEEE.Std_Logic_1164.ALL;USE IEEE.Std_Logic_Arith.ALL;USE IEEE.Std_Logic_Unsigned.ALL;2021/3/9333.3 VHDL語句語句3.3.1 并行語句并行語句在結(jié)構(gòu)體中的執(zhí)行是同時進(jìn)行,執(zhí)行順序與書寫順序無關(guān)。在結(jié)構(gòu)體中的執(zhí)行是同時進(jìn)行,執(zhí)行順序與書寫順序無關(guān)。2021/3/934 并行信號賦值語句并行信號賦值語句l 簡單賦值語句簡單賦值語句目標(biāo)信號名目標(biāo)信號名 = 表達(dá)式表達(dá)式目標(biāo)信號的數(shù)據(jù)類型與右邊表達(dá)式一致目標(biāo)信號的數(shù)據(jù)類型與右邊表達(dá)式一
36、致ARCHITECTURE Behavior OF FreDevider IS SIGNAL Clk:Std_Logic;BEGIN PROCESS(Clock)BEGIN IF rising_edge(Clock) THEN Clk=NOT Clk; END IF;END PROCESS;Clkout=Clk;2021/3/935l 選擇信號賦值語句選擇信號賦值語句WITH 選擇表達(dá)式選擇表達(dá)式 SELECT賦值目標(biāo)信號賦值目標(biāo)信號 = 表達(dá)式表達(dá)式1 WHEN 選擇值選擇值1, 表達(dá)式表達(dá)式2 WHEN 選擇值選擇值1, 表達(dá)式表達(dá)式n WHEN OTHERS; 選擇值要覆蓋所有可能情況,
37、若不能一一指定,用選擇值要覆蓋所有可能情況,若不能一一指定,用OTHERS為其他情為其他情況找個出口;況找個出口; 選擇值必須互斥,不能出現(xiàn)條件重復(fù)或重疊的情況。選擇值必須互斥,不能出現(xiàn)條件重復(fù)或重疊的情況。2021/3/936LIBRARY IEEE;USE IEEE.Std_Logic_1164.ALL;ENTITY MUX ISPORT( Data0,Data1,Data2,Data3:IN Std_Logic_VECTOR(7 DOWNTO 0); Sel:IN Std_Logic_Vector(1 DOWNTO 0); DOUT:OUT Std_Logic_Vector(7 DOWN
38、TO 0);END;ARCHITECTURE DataFlow OF MUX ISBEGIN WITH Sel SELECT DOUT= Data0 WHEN “00”, Data1 WHEN “01”, Data2 WHEN “10”, Data3 WHEN “11”,“00000000” WHEN OTHERS;END;地址選線地址選線Sel輸出輸出DOUT00Data001Data110Data211Data34X1多路選擇器多路選擇器2021/3/9372021/3/938l 條件信號賦值語句條件信號賦值語句賦值目標(biāo)信號賦值目標(biāo)信號 = 表達(dá)式表達(dá)式1 WHEN 賦值條件賦值條件1 E
39、LSE 表達(dá)式表達(dá)式2 WHEN 賦值條件賦值條件2 ELSE 表達(dá)式表達(dá)式n WHEN 賦值條件賦值條件n ELSE 表達(dá)式;表達(dá)式;各賦值語句有各賦值語句有優(yōu)先級優(yōu)先級的差別,按書寫順序從高到低排列;的差別,按書寫順序從高到低排列;各賦值條件可以各賦值條件可以重疊重疊。2021/3/9398輸入優(yōu)先編碼器輸入優(yōu)先編碼器I7I6I5 A2I4 A1I3 A0 I2I1I0高高低低優(yōu)優(yōu)先先級級LIBRARY IEEE;USE IEEE.Std_Logic_1164.ALL;ENTITY Priority_Encoder ISPORT( I:IN Std_Logic_VECTOR(7 DOWNT
40、O 0); A:OUT Std_Logic_Vector(2 DOWNTO 0);END;ARCHITECTURE DataFlow OF Priority_Encoder ISBEGIN A=“111” WHEN I(7)=1 ELSE “110” WHEN I(6)=1 ELSE “101” WHEN I(5)=1 ELSE “100” WHEN I(4)=1 ELSE “011” WHEN I(3)=1 ELSE “010” WHEN I(2)=1 ELSE “001” WHEN I(1)=1 ELSE “000” WHEN I(0)=1 ELSE “111”;END;2021/3/94
41、02021/3/941 進(jìn)程語句進(jìn)程語句l 進(jìn)程本身是并行語句,但內(nèi)部是順序語句;進(jìn)程本身是并行語句,但內(nèi)部是順序語句;l 進(jìn)程只有在特定的時刻(敏感信號發(fā)生變化)才會被激活。進(jìn)程只有在特定的時刻(敏感信號發(fā)生變化)才會被激活。 進(jìn)程標(biāo)號:進(jìn)程標(biāo)號: PROCESS (敏感信號參數(shù)表)(敏感信號參數(shù)表) 聲明區(qū);聲明區(qū); BEGIN 順序語句順序語句END PROCESS 進(jìn)程標(biāo)號;進(jìn)程標(biāo)號;在進(jìn)程中起作用的局部變量在進(jìn)程中起作用的局部變量 一個進(jìn)程可以有多個敏感信號,任一個進(jìn)程可以有多個敏感信號,任一敏感信號發(fā)生變化都會激活進(jìn)程一敏感信號發(fā)生變化都會激活進(jìn)程 進(jìn)程語句定義順序語句模塊,用于將
42、從外部獲得的信號值,進(jìn)程語句定義順序語句模塊,用于將從外部獲得的信號值,或內(nèi)部的運算數(shù)據(jù)向其他的信號進(jìn)行賦值。或內(nèi)部的運算數(shù)據(jù)向其他的信號進(jìn)行賦值。2021/3/942l 進(jìn)程的工作原理進(jìn)程的工作原理當(dāng)某個敏感信號的值發(fā)生當(dāng)某個敏感信號的值發(fā)生變化時,每個進(jìn)程語句立變化時,每個進(jìn)程語句立即完成進(jìn)程內(nèi)順序語句所即完成進(jìn)程內(nèi)順序語句所定義的功能行為。定義的功能行為。執(zhí)行過程終止執(zhí)行過程終止 順序語句所定義的功順序語句所定義的功能行為的結(jié)果可以賦值給能行為的結(jié)果可以賦值給信號,并通過信號被其他信號,并通過信號被其他的進(jìn)程讀取或賦值。的進(jìn)程讀取或賦值。2021/3/943l 進(jìn)程與時鐘進(jìn)程與時鐘在每個
43、上升沿啟動一次進(jìn)程(執(zhí)行進(jìn)程內(nèi)所有的語句)。在每個上升沿啟動一次進(jìn)程(執(zhí)行進(jìn)程內(nèi)所有的語句)。上升沿描述:上升沿描述:Clock EVENT AND Clock=1下降沿描述:下降沿描述:Clock EVENT AND Clock=0上升沿描述:上升沿描述: rising_edge (Clock)下降沿描述:下降沿描述: falling_edge (Clock)2021/3/944LIBRARY IEEE; USE IEEE.Std_Logic_1164.ALL;ENTITY FreDevider ISPORT( Clock: IN Std_logic; Clkout: OUT Std_log
44、ic);END;ARCHITECTURE Behavior OF FreDevider IS SIGNAL Clk: Std_Logic;BEGIN PROCESS (Clock) 將時鐘作為進(jìn)程的敏感信號將時鐘作為進(jìn)程的敏感信號BEGIN IF rising_edge (Clock) THEN Clk=NOT Clk; 在時鐘上升沿執(zhí)行在時鐘上升沿執(zhí)行Clk=NOT Clk END IF;END PROCESS;Clkout=Clk;END;2021/3/945LIBRARY IEEE; USE IEEE.Std_Logic_1164.ALL;ENTITY Counter ISPORT( R
45、ESET:IN Std_Logic; 異步復(fù)位信號異步復(fù)位信號 Clock: IN Std_logic; 時鐘信號時鐘信號 NUM: BUFFER Integer RANGE 0 TO 3); 計數(shù)器輸出值計數(shù)器輸出值END;ARCHITECTURE Behavior OF Counter IS BEGIN PROCESS (RESET, Clock) 將復(fù)位、時鐘作為進(jìn)程的敏感信號將復(fù)位、時鐘作為進(jìn)程的敏感信號BEGIN IF RESET=1 THEN Num=0; 復(fù)位時復(fù)位時Num清清0 ELSIF rising_edge (Clock) THEN IF Num=3 THEN Num=0
46、; 如果如果Num3就清就清0 ELSE Num=Num+1; 否則自加否則自加1 END IF; END IF;END PROCESS;END;2021/3/946仿真波形:仿真波形:2021/3/947LIBRARY IEEE; USE IEEE.Std_Logic_1164.ALL;USE IEEE.Std_Logic_unsigned.ALL;ENTITY Counter ISPORT( clr :IN Std_Logic; inl: in std_logic_vector(3 downto 0); outl: out std_logic_vector(3 downto 0) 計數(shù)器輸
47、出值計數(shù)器輸出值);END;ARCHITECTURE Behavior OF Counter IS BEGIN PROCESS (clr, inl) 進(jìn)程的敏感信號進(jìn)程的敏感信號BEGIN IF (clr=1 or inl=“1001”) THEN outl=“0000”; ELSE outl=inl+1; END IF;END PROCESS;END;重載符號,在庫重載符號,在庫IEEE.Std_Logic_unsigned中預(yù)先聲明中預(yù)先聲明2021/3/948LIBRARY IEEE; USE IEEE.Std_Logic_1164.ALL;USE IEEE.Std_Logic_unsi
48、gned.ALL;ENTITY Counter ISPORT( clr,clk:IN Std_Logic; cnt: buffer std_logic_vector(3 downto 0) 計數(shù)器輸出值計數(shù)器輸出值);END;ARCHITECTURE Behavior OF Counter IS BEGIN PROCESS BEGINWait until clkevent and clk=1; IF (clr=1 or cnt=9) THEN cnt=“0000”; ELSE cnt output output output output = s1; END CASE; END IF;END
49、PROCESS;END;2021/3/950l 進(jìn)程注意事項:進(jìn)程注意事項:l 進(jìn)程本身是并行語句,但內(nèi)部為順序語句;進(jìn)程本身是并行語句,但內(nèi)部為順序語句;l 進(jìn)程在敏感信號發(fā)生變化時被激活,在使用了敏感表的進(jìn)程中不能進(jìn)程在敏感信號發(fā)生變化時被激活,在使用了敏感表的進(jìn)程中不能含含wait語句;語句;l 在同一進(jìn)程中對同一信號多次賦值,只有最后一次生效;在同一進(jìn)程中對同一信號多次賦值,只有最后一次生效;l 在不同進(jìn)程中,不可對同一信號進(jìn)行賦值;在不同進(jìn)程中,不可對同一信號進(jìn)行賦值;l 一個進(jìn)程不可同時對時鐘上、下沿敏感。一個進(jìn)程不可同時對時鐘上、下沿敏感。l 進(jìn)程中的信號賦值是在進(jìn)程掛起時生效的
50、,而變量賦值是即時生效。進(jìn)程中的信號賦值是在進(jìn)程掛起時生效的,而變量賦值是即時生效。l 相對于結(jié)構(gòu)體而言,信號具有全局性,是進(jìn)程間進(jìn)行并行聯(lián)系的重相對于結(jié)構(gòu)體而言,信號具有全局性,是進(jìn)程間進(jìn)行并行聯(lián)系的重要途徑。要途徑。l 進(jìn)程為綜合器支持,且其建模方式直接影響仿真和綜合結(jié)果,綜合進(jìn)程為綜合器支持,且其建模方式直接影響仿真和綜合結(jié)果,綜合后對應(yīng)于進(jìn)程的硬件結(jié)構(gòu)對進(jìn)程中所有可讀入信號都是敏感的。后對應(yīng)于進(jìn)程的硬件結(jié)構(gòu)對進(jìn)程中所有可讀入信號都是敏感的。SIGNAL A,B: Integer RANGE 0 TO 7; : PROCESS (Clock) BEGIN IF rising_edge (
51、Clock) THEN : B=A+1; B連接端口名連接端口名 , );要插在電路系統(tǒng)板上的芯片要插在電路系統(tǒng)板上的芯片較大的電路系統(tǒng)較大的電路系統(tǒng)電路板上準(zhǔn)備接受芯片的插座電路板上準(zhǔn)備接受芯片的插座元件定元件定義語句義語句元件例元件例化語句化語句列出對外通信的各端口名列出對外通信的各端口名 當(dāng)前系統(tǒng)與準(zhǔn)備接當(dāng)前系統(tǒng)與準(zhǔn)備接入的元件對應(yīng)端口相連入的元件對應(yīng)端口相連的通信端口。的通信端口。名字關(guān)聯(lián)方式:名字關(guān)聯(lián)方式:port map語句中位置可以任意;語句中位置可以任意;位置關(guān)聯(lián)方式:位置關(guān)聯(lián)方式:端口名和關(guān)聯(lián)連接符號可省去,連端口名和關(guān)聯(lián)連接符號可省去,連接端口名的排列方式與所需例化的元件端
52、口定義中接端口名的排列方式與所需例化的元件端口定義中的端口名相對應(yīng)。的端口名相對應(yīng)。2021/3/952LIBRARY IEEE; USE IEEE.Std_Logic_1164.ALL;ENTITY nd2 ISPORT( a, b:IN Std_Logic; c: out std_logic);END;ARCHITECTURE nd2behv OF nd2 IS BEGIN yc1, c=y, b=d1); 名字關(guān)聯(lián)方式名字關(guān)聯(lián)方式u3:nd2 PORT MAP( x, y, c=z1); 混和關(guān)聯(lián)方式混和關(guān)聯(lián)方式END;元件例化:元件例化:2021/3/9531位二進(jìn)制全加器位二進(jìn)制全加
53、器內(nèi)部端口外部端口2021/3/954外部端口內(nèi)部端口端口連線2021/3/9553.3.2 順序語句順序語句 順序語句僅出現(xiàn)在進(jìn)程和子程序中。順序語句僅出現(xiàn)在進(jìn)程和子程序中。 順序語句綜合后,映射為實際的門電路,系統(tǒng)一上電,門電路開始工順序語句綜合后,映射為實際的門電路,系統(tǒng)一上電,門電路開始工作。電路可實現(xiàn)邏輯上的順序執(zhí)行,實際上所有門電路是并行工作的。作。電路可實現(xiàn)邏輯上的順序執(zhí)行,實際上所有門電路是并行工作的。l 賦值語句賦值語句l 流程控制語句流程控制語句l 空操作語句空操作語句l 等待語句等待語句l 子程序調(diào)用語句子程序調(diào)用語句l 返回語句返回語句2021/3/956 賦值語句賦值
54、語句ENTITY TEST_Signal ISPORT( Reset, Clock: IN Std_logic; NumA, NumB: OUT Integer RANGE 0 TO 255);END;ARCHITECTURE TEST OF TEST_Signal IS SIGNAL A, B: Integer RANGE 0 TO 255; BEGIN PROCESS (RESET,Clock) VARIABLE C: Integer RANGE 0 TO 255; BEGIN IF RESET=1 THEN A=0; B=2;C:=0; ELSEIF rising_edge(Clock)
55、 THEN C:=C+1;A=C+1;B=A+2; END IF; END PROCESS; Num A=A; NumB=B;END;2021/3/957 流程控制語句流程控制語句l IF語句:語句:IF 條件式條件式 THEN 順序語句順序語句END IF;IF 條件式條件式 THEN 順序語句順序語句ELSE 順序語句順序語句END IF;IF 條件式條件式 THEN 順序語句順序語句ELSEIF 條件式條件式2 THEN 順序語句順序語句 ELSE 順序語句順序語句END IF;有優(yōu)先級有優(yōu)先級2021/3/958 用用IF語句描述組合邏輯電路時,務(wù)必涵蓋所有的情況,否則語句描述組合邏輯
56、電路時,務(wù)必涵蓋所有的情況,否則綜合后將引入鎖存器!綜合后將引入鎖存器!ENTITY Encoder ISPORT( En: IN Std_logic; I: IN Std_logic_Vetor(7 DOWNTO 0); A: OUT Std_logic_Vetor(2 DOWNTO 0); Idle: OUT Std_logic);END;ARCHITECTURE Behavior OF Encoder IS BEGIN PROCESS (En, I)BEGIN IF En=1 THEN IF I(7)=1 THEN A=“111”; Idle=0; ELSIF IF I(6)=1 THE
57、N A=“110”; Idle=0; ELSIF IF I(5)=1 THEN A=“101”; Idle=0; ELSIF IF I(4)=1 THEN A=“100”; Idle=0; ELSIF IF I(3)=1 THEN A=“011”; Idle=0; ELSIF IF I(2)=1 THEN A=“010”; Idle=0; ELSIF IF I(1)=1 THEN A=“001”; Idle=0; ELSIF IF I(0)=1 THEN A=“000”; Idle=0; ELSE A=“000”; Idle b1 THEN q1 = 1 ; ELSIF a1 b1 THEN
58、q1 b1 THEN q1 = 1 ; ELSE q1 順序語句順序語句; WHEN 選擇值選擇值|選擇值選擇值 =順序語句順序語句; WHEN OTHERS=順序語句順序語句;END CASE;l 選擇值不可重復(fù)或重疊選擇值不可重復(fù)或重疊;l 當(dāng)當(dāng)CASE語句的選擇值無法覆蓋所有的情況時語句的選擇值無法覆蓋所有的情況時,要用要用OTHERS指定指定未能列出的其他所有情況的輸出值未能列出的其他所有情況的輸出值;2021/3/963LIBRARY IEEE;USE IEEE.Std_Logic_1164.ALL;ENTITY MUX ISPORT( Data0,Data1,Data2,Data3
59、:IN Std_Logic_VECTOR(7 DOWNTO 0); Sel:IN Std_Logic_Vector(1 DOWNTO 0); DOUT:OUT Std_Logic_Vector(7 DOWNTO 0);END; ARCHITECTURE DataFlow OF MUX IS BEGIN CASE Sel IS WHEN “00”= DOUT DOUT DOUT DOUT DOUTNULL; END CASE; END IF;END PROCESS;2021/3/968 WAIT語句語句 在進(jìn)程或過程中執(zhí)行到在進(jìn)程或過程中執(zhí)行到WAIT語句時,程序?qū)⒈粧炱?,并設(shè)語句時,程序?qū)⒈粧?/p>
60、起,并設(shè)置好再次執(zhí)行的條件。置好再次執(zhí)行的條件。WAIT ON 信號表信號表UNTIL 條件表達(dá)式條件表達(dá)式FOR 時間表達(dá)式時間表達(dá)式;WAIT ;未設(shè)置停止掛起的條件,表示永遠(yuǎn)掛起。未設(shè)置停止掛起的條件,表示永遠(yuǎn)掛起。WAIT ON 信號表;信號表;敏感信號等待語句,敏感信號的變化將結(jié)束敏感信號等待語句,敏感信號的變化將結(jié)束掛起,再次啟動進(jìn)程。掛起,再次啟動進(jìn)程。WAIT UNTIL 條件表達(dá)式;條件表達(dá)式;條件表達(dá)式為中所含的信號發(fā)生變化,條件表達(dá)式為中所含的信號發(fā)生變化,且滿足且滿足WAIT語句所設(shè)條件,則結(jié)束掛起,再次啟動進(jìn)程。語句所設(shè)條件,則結(jié)束掛起,再次啟動進(jìn)程。WAIT FOR 時間表達(dá)式;時
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年佳木斯道路運輸從業(yè)人員從業(yè)資格考試
- 2025年度公路貨運與委托車輛維護(hù)服務(wù)合同
- 2025年度自媒體合伙人合同版:自媒體平臺內(nèi)容合作與分成協(xié)議
- 2025年度農(nóng)產(chǎn)品加工企業(yè)財務(wù)代理記帳服務(wù)合同
- 2025年度終止合作協(xié)議通知及產(chǎn)品退換貨服務(wù)合同
- 項目管理方法在學(xué)生團(tuán)隊中的運用
- 2025年度區(qū)塊鏈技術(shù)應(yīng)用電子合同書
- 2025年度瓷磚美縫施工與智能家居系統(tǒng)集成合同
- 2025年度物業(yè)管理公司股權(quán)分割與轉(zhuǎn)讓實施合同
- 2025年度私人房產(chǎn)使用權(quán)轉(zhuǎn)讓附帶社區(qū)健身房使用合同
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點試題含答案解析
- 醫(yī)保政策與健康管理培訓(xùn)計劃
- 策略與博弈杜塔中文版
- 無人化農(nóng)場項目可行性研究報告
- 2024屆上海市金山區(qū)高三下學(xué)期二模英語試題(原卷版)
- 學(xué)生春節(jié)安全教育
- 2024-2025年校長在教研組長和備課組長會議上講話
- 2025屆江蘇省常州市高級中學(xué)高三第二次模擬考試語文試卷含解析
- 高三日語一輪復(fù)習(xí)助詞「で」的用法課件
- 2024-2030年中國銣銫及其化合物行業(yè)深度調(diào)研及投資戰(zhàn)略分析報告
- 散貨物流行業(yè)市場調(diào)研分析報告
評論
0/150
提交評論