吉林大學《數(shù)字電路設計基礎》課程 —— vhdl語法ppt課件_第1頁
吉林大學《數(shù)字電路設計基礎》課程 —— vhdl語法ppt課件_第2頁
吉林大學《數(shù)字電路設計基礎》課程 —— vhdl語法ppt課件_第3頁
吉林大學《數(shù)字電路設計基礎》課程 —— vhdl語法ppt課件_第4頁
吉林大學《數(shù)字電路設計基礎》課程 —— vhdl語法ppt課件_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、VHDL硬件描畫言語硬件描畫言語可編程器件及數(shù)字系統(tǒng)設計可編程器件及數(shù)字系統(tǒng)設計第四講第四講第四講:第四講:VHDL硬件描畫言語硬件描畫言語nVHDL概述概述nVHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象nVHDL命令語句命令語句一、一、VHDLVHDL概述概述 VHDL是超高速集成電路硬件描畫言語 (Very High speed Integrated Circuit Hardware Description Language)的英文縮寫。 語法和風格:語法和風格:1 1類似與現(xiàn)代高級編程言語,如類似與現(xiàn)代高級編程言語,如C C言語。言語。2 2VHDLVHDL描畫的是硬件,它包含許多硬描畫

2、的是硬件,它包含許多硬件特有的構造。件特有的構造。硬件描畫言語硬件描畫言語HDL:美國:美國Iverson, 1962VHDL硬件描畫言語硬件描畫言語: 20世紀世紀80年代初年代初, 美國國防部美國國防部VHSIC方案方案目的目的:方便電子設計文檔的交流和成果的再利用方便電子設計文檔的交流和成果的再利用一、一、VHDL概述概述u VHDL開展歷史開展歷史 1983年提出了硬件描畫言語的規(guī)范化問題。年提出了硬件描畫言語的規(guī)范化問題。 1985年,第年,第1版版VHDL完成;完成; 1987年,國際電氣與電子工程師協(xié)會年,國際電氣與電子工程師協(xié)會IEEE將將VHDL言語言語作為硬件描畫言語的工業(yè)

3、規(guī)范作為硬件描畫言語的工業(yè)規(guī)范IEEE1076; 1988年,美國國防部規(guī)定一切官方的年,美國國防部規(guī)定一切官方的ASIC設計都必需以設計都必需以VHDL作為設計描畫言語,以后作為設計描畫言語,以后VHDL逐漸成為工業(yè)界規(guī)范。逐漸成為工業(yè)界規(guī)范。 1993年,年,IEEE在在87版本的根底上進展了假設干修訂,增修版本的根底上進展了假設干修訂,增修為為IEEE1164規(guī)范;規(guī)范; 1999年,年,IEEE又將數(shù)字模擬混合又將數(shù)字模擬混合VHDL的版本作為工業(yè)規(guī)范,的版本作為工業(yè)規(guī)范,即即IEEE1076.3;一、一、VHDL概述概述u VHDL與電路圖設計電路的方式不同:與電路圖設計電路的方式不

4、同:u和電路圖設計方式相比:和電路圖設計方式相比:u1易于修正;易于修正;u2設計才干更強;設計才干更強;u3VHDL言語很方便:獨立于器件設計;言語很方便:獨立于器件設計;一樣的程序代碼可以用于不同廠家消費的一樣的程序代碼可以用于不同廠家消費的器件。器件。 一、一、VHDL概述概述u VHDL言語的程序構造言語的程序構造u LIBRARYUSE- 庫庫u PACKAGE - 程序包集合程序包集合u ENTITY - 實體實體u ARCHITECTURE - 構造體構造體u CONFIGURATION - 配置語句配置語句一、一、VHDL概述概述一、一、VHDL概述概述include “std

5、io.h; include “math.h;int main(void) int a,b,c; a=8; b=9; c=a+b; return c; Library std; Use std.standard.all;Entity and2 is Port( a,b : in bit;c : out bit);End and2;Architecture a1 of and2 is Begin c = a and b; End a1;VHDL程序程序 C程序程序 Library庫是用于存放預先編譯好的庫是用于存放預先編譯好的Package程程序包。序包。Package 程序包中定義了根本的常數(shù),

6、數(shù)據(jù)類型,程序包中定義了根本的常數(shù),數(shù)據(jù)類型,元件及子程序等。元件及子程序等。 作用:聲明在實體和構造體定義中將用到的作用:聲明在實體和構造體定義中將用到的 數(shù)據(jù)類型、元件或子程序等。數(shù)據(jù)類型、元件或子程序等。聲明格式:聲明格式: Library 庫名;庫名; Use 庫名庫名. PACKAGE名名.All;一、一、VHDL概述概述1Library和和Package部部分分 作用:作用: ENTITY實體用于定義電路的外實體用于定義電路的外觀,即觀,即I/O端口的類型和數(shù)量。端口的類型和數(shù)量。 定義格式:定義格式:Entity 實體名實體名 is Port( a : in bit; b : i

7、n bit; c : out bit);End 實體名實體名;2ENTITY定義區(qū)定義區(qū)一、一、VHDL概述概述端口名端口名數(shù)據(jù)類型數(shù)據(jù)類型端口方式端口方式端口方式端口方式MODE有以下幾種類型:有以下幾種類型: IN ;OUT;INOUT ;BUFFER 端口方式可用以下圖闡明:黑框代表一個端口方式可用以下圖闡明:黑框代表一個設計或模塊設計或模塊 IN OUT BUFFER INOUT一、一、VHDL概述概述3ARCHITECTURE定義區(qū)定義區(qū)實體的實現(xiàn)。即闡明電路執(zhí)行什么動作或?qū)崿F(xiàn)功能。實體的實現(xiàn)。即闡明電路執(zhí)行什么動作或?qū)崿F(xiàn)功能。定義格式:定義格式: Architecture 構造體名

8、構造體名 of 實體名實體名 is 聲明語句;聲明語句;(內(nèi)部信號、變量、常數(shù),元件,子程序聲內(nèi)部信號、變量、常數(shù),元件,子程序聲明明) Begin并行描畫語句;并行描畫語句;End 構造體名;構造體名;一、一、VHDL概述概述4CONFIGURATION部分部分 一個完好一個完好VHDL電路設計必需有一個實體和對應的電路設計必需有一個實體和對應的構造體,即實體和構造體對構成一個完好的構造體,即實體和構造體對構成一個完好的VHDL設計。設計。 一個實體可對應一個構造體或多個構造體,即一個實體可對應一個構造體或多個構造體,即一個實體可以有不同的描畫方式。一個實體可以有不同的描畫方式。作用:當實體

9、有多個構造體時,系統(tǒng)默許實體選用最作用:當實體有多個構造體時,系統(tǒng)默許實體選用最后一個構造體,利用后一個構造體,利用CONFIGURATION語句可以語句可以恣意選擇采用哪一個構造體。恣意選擇采用哪一個構造體。一、一、VHDL概述概述定義格式:定義格式:Configuration 配置名配置名 of 實體名實體名 isfor 選用的構造體名選用的構造體名end for;end configuration 配置名配置名 ;一、一、VHDL概述概述u 標識符的定義原那么:標識符的定義原那么:u1標識符由字母、數(shù)字和下劃線組成,標識符由字母、數(shù)字和下劃線組成,a7_;u2在標識符不區(qū)分大小寫,在標識

10、符不區(qū)分大小寫,ab和和AB是是一樣的;一樣的;u3第一個字符必需是字母,即第一個字符必需是字母,即a666;u4不允許有兩個延續(xù)的下劃線,不允許有兩個延續(xù)的下劃線,a_b錯誤;錯誤;u5末尾不能是下劃線,末尾不能是下劃線,mname_錯誤;錯誤;u6標識符不能和關鍵字一樣標識符不能和關鍵字一樣,如如Entity,is等。等。一、一、VHDL概述概述u 設計范例:設計范例:2輸入與門輸入與門abc電路真值表電路真值表abc000100010111一、一、VHDL概述概述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARI

11、TH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;Entity and2 is Port( a : in bit; b : in bit; c : out bit);End and2;-實體定義終了。實體定義終了。 雙減號雙減號-為為VHDL程序的程序的注釋符,類似注釋符,類似C言語中的言語中的/注釋符。注釋符。一、一、VHDL概述概述Architecture Na of and2 is Begin c =0 when a=0 and b = 0 else 0 when a=1 and b = 0 else 0 when a=0 and b = 1 else 1;

12、- 符號符號=為信號直接賦值符。為信號直接賦值符。 End Na; - 構造體構造體Na Architecture Nb of and2 is Begin c = a and b; - and 為邏輯與操作為邏輯與操作End Nb; -構造體構造體Nb一、一、VHDL概述概述Configuration s1 of and2 isfor naend for;end configuration s1;-構造體配置終了。構造體配置終了。一、一、VHDL概述概述二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象在在VHDL程序中,我們經(jīng)常會遇到這樣的語句:程序中,我們經(jīng)常會遇到這樣的語句:Signa

13、l A : std_logic;Variable B : std_logic_vector(7 downto 0); Constant C : integer;數(shù)據(jù)對象類型數(shù)據(jù)對象類型數(shù)據(jù)類型數(shù)據(jù)類型數(shù)據(jù)對象名數(shù)據(jù)對象名u VHDL言語中的根本數(shù)據(jù)類型言語中的根本數(shù)據(jù)類型邏輯類型邏輯類型數(shù)值類型數(shù)值類型布爾代數(shù)布爾代數(shù)(Boolean)位位 (Bit)規(guī)范邏輯規(guī)范邏輯 (Std_Logic)整數(shù)整數(shù) (Integer)實數(shù)實數(shù) (Real)二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象n 邏輯數(shù)據(jù)類型邏輯數(shù)據(jù)類型 1布爾代數(shù)布爾代數(shù)Boolean型型 ; 2位位Bit; 3規(guī)范邏輯規(guī)范邏

14、輯Std_logic;type BIT is (0, 1); type BOOLEAN is (FALSE, TRUE) ;二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象 規(guī)范邏輯類型規(guī)范邏輯類型 Type Std_Logic Is ( U, -Undefined X , -Forcing Unknown 0 , -Forcing 0 1 , -Forcing 1 Z , -Hign Impedance W, -Weak Unknown L , -Weak 0; H , -Weak 1; - , -Dont Care; )二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象 規(guī)范邏輯類型

15、對數(shù)字邏輯電路的邏輯特性描畫更加完好,真實,因此在VHDL程序中,對邏輯信號的定義通常采用規(guī)范邏輯類型l 邏輯序列邏輯序列位序列 (Bit_Vector)規(guī)范邏輯序列 (Std_Logic_Vector)二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象Signal data: Std_Logic_Vector( 7 downto 0);Signal address: Bit_Vector ( 0 to 3);序列的范圍大小聲明方式:序列的范圍大小聲明方式:To, Downtol 序列的運用序列的運用二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象l 序列的分解與合成序列的分解與合成lS

16、ignal A: Std_Logic_Vector( 3 downto 0);lSignal B: Std_Logic_Vector( 0 to 3);lSignal C: Std_Logic_Vector( 0 to 1);lSignal D: Std_Logic_Vector( 1 downto 0);lC= A( 2 downto 1);lB= A(3) & D & 1;二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象n 數(shù)值類型數(shù)值類型n1整數(shù)整數(shù)nType Integer Is Range -231 231-1n限定整數(shù)取值范圍的方法:限定整數(shù)取值范圍的方法:nS

17、ignal A: Integer;nSignal B: Integer Range 0 to 7;nSignal C: Integer Range -1 to 1;二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象l 無符號數(shù)無符號數(shù) Unsignedl與規(guī)范邏輯序列類似,聲明時必需指明其與規(guī)范邏輯序列類似,聲明時必需指明其l位數(shù)。位數(shù)。lSignal A : Unsigned(3 downto 0);lSignal B : Unsigned( 7 downto 0);l留意留意: 必需運用必需運用downto方式。方式。二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象2實數(shù)實數(shù)Type

18、 Real Is Range -1.7E38 to 1.7E38; 實數(shù)類型的表示可用科學計數(shù)方式或者帶實數(shù)類型的表示可用科學計數(shù)方式或者帶小數(shù)點的方式。小數(shù)點的方式。二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象l VHDL中的運算符中的運算符二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象 算術運算符:算術運算符: +加加-減減*乘乘/除除*乘方乘方mod 求模求模 rem求余求余 abs求絕對值求絕對值 邏輯運算:邏輯運算: and 邏輯與邏輯與or邏輯或邏輯或nand與非與非nor 或非或非xor 異或異或xnor同或同或not 邏輯非邏輯非關系運算符:關系運算符: = 等于

19、等于/= 不等于不等于小于小于大于大于= 大于或等于大于或等于注:其中注:其中=操作符操作符也用于表示信號的賦也用于表示信號的賦值操作。值操作。 &銜接符,將兩個數(shù)據(jù)對象或矢銜接符,將兩個數(shù)據(jù)對象或矢量銜接成維數(shù)更大的矢量,它可給量銜接成維數(shù)更大的矢量,它可給代碼書寫帶來方便。代碼書寫帶來方便。 例如:例如: vabc=a & b & c;假設假設a=1 , b=0 , c=1 ,那么那么 vabc=“101 。二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象u 用戶自定義數(shù)據(jù)類型:用戶自定義數(shù)據(jù)類型:u(1) 列舉數(shù)據(jù)類型列舉數(shù)據(jù)類型uType 列舉稱號列舉稱號

20、is (元素元素1,元素,元素2,u例子:例子:uType state is(S0,S1,S2,S3);uSignal S: state;二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象(2) 數(shù)組類型數(shù)組類型Type 數(shù)組稱號數(shù)組稱號 is Arrary(范圍范圍) of 數(shù)據(jù)類型;數(shù)據(jù)類型;例子:例子: Type Byte is Arrary(7 downto 0) of Bit; Signal sdo: Byte;二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象u 數(shù)據(jù)類型的轉(zhuǎn)換數(shù)據(jù)類型的轉(zhuǎn)換u 在在VHDL言語里,不同類型的數(shù)據(jù)信號之言語里,不同類型的數(shù)據(jù)信號之間不能相互賦值。

21、當需求不同類型數(shù)據(jù)之間不能相互賦值。當需求不同類型數(shù)據(jù)之間傳送信息時,就需求類型轉(zhuǎn)換函數(shù)將其間傳送信息時,就需求類型轉(zhuǎn)換函數(shù)將其中的一種類型數(shù)據(jù)轉(zhuǎn)換為另一中數(shù)據(jù)類型中的一種類型數(shù)據(jù)轉(zhuǎn)換為另一中數(shù)據(jù)類型后,再進展信號的傳送。后,再進展信號的傳送。二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象例如:例如:Signal Y : Std_logic_vector(7 downto 0);Signal X : Integer range 0 to 255;Y= CONV_STD_LOGIC_VECTOR(X,8);二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象CONV_INTEGER 將數(shù)據(jù)

22、類型將數(shù)據(jù)類型 UNSIGNED, SIGNED轉(zhuǎn)換為轉(zhuǎn)換為INTEGER 類型類型. CONV_UNSIGNED 將數(shù)據(jù)類型將數(shù)據(jù)類型INTEGER, SIGNED轉(zhuǎn)換為轉(zhuǎn)換為UNSIGNED 類型類型.CONV_SIGNED 將數(shù)據(jù)類型將數(shù)據(jù)類型INTEGER, UNSIGNED轉(zhuǎn)換為轉(zhuǎn)換為SIGNED類型類型.CONV_STD_LOGIC_VECTOR 將數(shù)據(jù)類型將數(shù)據(jù)類型INTEGER, UNSIGNED, SIGNED, STD_LOGIC轉(zhuǎn)換為轉(zhuǎn)換為STD_LOGIC_VECTOR 類型類型. 二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象u 數(shù)據(jù)對象數(shù)據(jù)對象常常 量量信信

23、號號變變 量量(Data Objects)二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象(1) 常量常量定義格式定義格式:Constant 常量稱號常量稱號: 數(shù)據(jù)類型數(shù)據(jù)類型 :=給定值;給定值; 常量通常來來定義延遲和功耗等參數(shù)。常量通常來來定義延遲和功耗等參數(shù)。留意!常數(shù)定義的同時進展賦初值。留意!常數(shù)定義的同時進展賦初值。常數(shù)在程序包闡明、實體闡明、構造體描常數(shù)在程序包闡明、實體闡明、構造體描畫、過程闡明、函數(shù)調(diào)用中運用。畫、過程闡明、函數(shù)調(diào)用中運用。二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象library ieee;use ieee.std_logic_1164.al

24、l;use ieee.std_logic_unsigned.all; -必需定義必需定義+entity exam1 is port (ip : in std_logic_vector(3 downto 0); op : out std_logic_vector(3 downto 0);end exam1; architecture m1 of exam1 isconstant num : integer := 6;beginop = ip + num;end m1; 二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象(2) 信號信號定義格式定義格式Signal 信號稱號信號稱號: 數(shù)據(jù)類型數(shù)

25、據(jù)類型 :=初始值初始值;信號相當于電路內(nèi)部元件之間的物理連線信號相當于電路內(nèi)部元件之間的物理連線,因因此信號的賦值有一定的延遲時間此信號的賦值有一定的延遲時間.二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象l “信號數(shù)據(jù)對象,代表電路內(nèi)部信號或銜接線路,信號數(shù)據(jù)對象,代表電路內(nèi)部信號或銜接線路,其在元件之間起互連作用。其在元件之間起互連作用。留意!信號定義的時候雖然可以直接賦初值,但系統(tǒng)往往忽略。留意!信號定義的時候雖然可以直接賦初值,但系統(tǒng)往往忽略。建議信號對象定義后再進展賦值。建議信號對象定義后再進展賦值。l信號為全局量。信號為全局量。l在實體闡明、構造體描畫和程序包闡明中運用。在

26、實體闡明、構造體描畫和程序包闡明中運用。l信號賦值的語法格式為:信號名信號賦值的語法格式為:信號名 = 表達式;表達式;l如:如:Signal S1 : Std_logic_vector(3 Downto 0);l S1 = “0000;二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象3變量變量定義格式定義格式Variable 變量稱號變量稱號: 數(shù)據(jù)類型數(shù)據(jù)類型 :=初始值初始值;變量只能用于進程之中變量只能用于進程之中,變量的賦值是立變量的賦值是立即生效的即生效的,常用于高層次籠統(tǒng)的算法描畫常用于高層次籠統(tǒng)的算法描畫當中。當中。二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象 “

27、“變量數(shù)據(jù)對象,它用于對中間數(shù)據(jù)的暫時存變量數(shù)據(jù)對象,它用于對中間數(shù)據(jù)的暫時存儲,并不一定代表電路的某一組件。儲,并不一定代表電路的某一組件。 留意!變量定義的時候雖然可以直接賦初值,但系統(tǒng)往往忽略。留意!變量定義的時候雖然可以直接賦初值,但系統(tǒng)往往忽略。建議變量對象定義后再進展賦值。建議變量對象定義后再進展賦值。變量為部分量。變量為部分量。僅限于進程僅限于進程Process或子程序中運用。或子程序中運用。 變量賦值的語法格式為:目的信號值變量賦值的語法格式為:目的信號值:=表達式;表達式;如:如:Variable S1 : Std_logic_vector(3 Downto 0); S1 :

28、= “0000;二、二、VHDL數(shù)據(jù)類型與數(shù)據(jù)對象數(shù)據(jù)類型與數(shù)據(jù)對象信號和變量的比較信號和變量的比較 1信號和變量的對應關系不同:信號代表電路內(nèi)部信號或銜接線路;而變量那么不是。 2信號和變量聲明的位置不同:信號聲明在子程序、進程的外信號和變量聲明的位置不同:信號聲明在子程序、進程的外部;而變量聲明在子程序、進程的內(nèi)部。部;而變量聲明在子程序、進程的內(nèi)部。 3信號為全局量,而變量只在定義它的域中才可見。因此,信號為全局量,而變量只在定義它的域中才可見。因此,變量不能在兩個進程之間傳送信息。變量不能在兩個進程之間傳送信息。 4在一個進程中多次為一個信號賦值時,只需最后一個值會起在一個進程中多次為

29、一個信號賦值時,只需最后一個值會起作用;而變量那么不同,每次賦值都會改動它的值。作用;而變量那么不同,每次賦值都會改動它的值。5賦值不同。在進程中,信號賦值只需在進程終了時起作用,賦值不同。在進程中,信號賦值只需在進程終了時起作用,而變量賦值是立刻進展的。而且賦值符號不同:信號賦值為而變量賦值是立刻進展的。而且賦值符號不同:信號賦值為“=,變量賦值為,變量賦值為“:=。數(shù)據(jù)對象屬性數(shù)據(jù)對象屬性1數(shù)值類屬性:數(shù)值類屬性: 數(shù)組類型的數(shù)據(jù)對象數(shù)組類型的數(shù)據(jù)對象數(shù)值類屬性有數(shù)值類屬性有 left, right, low, high, length。其中用符號其中用符號 隔開對象名及其屬性。隔開對象名

30、及其屬性。 left表示數(shù)組的左邊境;表示數(shù)組的左邊境; right表示數(shù)組的右邊境;表示數(shù)組的右邊境; low表示數(shù)組的下邊境;表示數(shù)組的下邊境; high表示數(shù)組的上邊境;表示數(shù)組的上邊境; length表示數(shù)組的長度。表示數(shù)組的長度。如:如:Signal A : std_logic_vector(7 downto 0);Signal B : std_logic_vector(0 to 3);那么這兩個信號的屬性值分別為:那么這兩個信號的屬性值分別為: Aleft=7; Aright=0; Alow=0; Ahigh=7; Alength=8; Bleft=0; Bright=3; Blo

31、w=0; Bhigh=3; Blength=4;數(shù)據(jù)對象屬性數(shù)據(jù)對象屬性2event屬性:屬性: event屬性,它的值為布爾型,假設剛屬性,它的值為布爾型,假設剛好有事件發(fā)生在該屬性所附著的信號上好有事件發(fā)生在該屬性所附著的信號上即信號有變化,那么其取值為即信號有變化,那么其取值為Ture,否那么為否那么為False。 利用此屬性可決議時鐘信號的變化情況,利用此屬性可決議時鐘信號的變化情況,即時鐘能否發(fā)生。即時鐘能否發(fā)生。數(shù)據(jù)對象屬性數(shù)據(jù)對象屬性例如:時鐘邊沿表示:例如:時鐘邊沿表示:signal clk : in std_logic;那么那么clkevent and clk=1表示時鐘的上

32、表示時鐘的上升沿。即時鐘變化了,且其值為升沿。即時鐘變化了,且其值為1。 clkevent and clk=0表示時鐘的下降表示時鐘的下降沿。即時鐘變化了,且其值為沿。即時鐘變化了,且其值為0。此外,還可利用兩個函數(shù)來表示時鐘的邊沿。此外,還可利用兩個函數(shù)來表示時鐘的邊沿。rising_edge(clk) 表示時鐘的上升沿表示時鐘的上升沿falling_edge(clk) 表示時鐘的下降沿表示時鐘的下降沿數(shù)據(jù)對象屬性數(shù)據(jù)對象屬性三、三、VHDL命令語句命令語句并列語句并列語句順序語句順序語句VHDL命令語句命令語句并列語句并列語句 并列語句普通處于進程PROCESS的外部。一切并列語句都是并行執(zhí)行的,即與它們出現(xiàn)的先后次序無關。 并列語句有三個特點:a. 一切語句的執(zhí)行是并行的;b. 每條語句的執(zhí)行和其所在的位置無關;c. 并列語句的輸出僅僅依賴于輸入,沒有其它的限制條件。 并列語句并列語句1直接賦值語句:直接

溫馨提示

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

評論

0/150

提交評論