《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > VHDL語(yǔ)言應(yīng)用實(shí)例指導(dǎo)
VHDL語(yǔ)言應(yīng)用實(shí)例指導(dǎo)
摘要: VHDL中的標(biāo)識(shí)符可以是常數(shù)、變量、信號(hào)、端口、子程序或參數(shù)的名字。
關(guān)鍵詞: 開(kāi)發(fā)工具 VHDL
Abstract:
Key words :

  VHDL中的標(biāo)識(shí)符可以是常數(shù)、變量、信號(hào)、端口、子程序或參數(shù)的名字。使用標(biāo)識(shí)符要遵守如下法則:

  ·標(biāo)識(shí)符由字母(A…Z;a…z)、數(shù)字和下劃線字符組成。

  ·任何標(biāo)識(shí)符必須以英文字母開(kāi)頭。

  ·末字符不能為下劃線。

  ·不允許出現(xiàn)兩個(gè)連續(xù)下劃線。

  ·標(biāo)識(shí)符中不區(qū)分大小寫字母。

  ·VHDL定義的保留子或稱關(guān)鍵字,不能用作標(biāo)識(shí)符。

  ·VHDL中的注釋由兩個(gè)連續(xù)的短線(--)開(kāi)始,直到行尾。

  以下是非法標(biāo)識(shí)符:

  -Decoder —起始不能為非英文字母

  3DOP —起始不能為數(shù)字

  Large#number —“#”不能成為標(biāo)識(shí)符的構(gòu)成符號(hào)

  Data__bus —不能有雙下劃線

  Copper_ —最后字符不能為下劃線

  On —關(guān)鍵字不能用作標(biāo)識(shí)符。

  注:在AHDL語(yǔ)言中標(biāo)識(shí)符要區(qū)分大小寫,但在VHDL語(yǔ)言中不區(qū)分大小寫。所以寫程序時(shí),一定要養(yǎng)成良好的書寫習(xí)慣,應(yīng)用關(guān)鍵字時(shí)用大寫,自己定義的標(biāo)識(shí)符用小寫。

  標(biāo)識(shí)符表示的幾種數(shù)據(jù)對(duì)象的詳細(xì)說(shuō)明如下:

  1) 常數(shù)(Constant )

  常數(shù)是一個(gè)固定的值,主要是為了使設(shè)計(jì)實(shí)體中的常數(shù)更容易閱讀和修改。常數(shù)一被賦值就不能在改變。一般格式:

  CONSTANT 常數(shù)名:數(shù)據(jù)類型:=表達(dá)式;

  例:CONSTANT Vcc: REAL: =5.0;

  —設(shè)計(jì)實(shí)體的電源電壓指定

  常數(shù)所賦得值應(yīng)與定義的數(shù)據(jù)類型一致。

  常量的使用范圍取決于它被定義的位置。程序包中定義的常量具有最大的全局化特性,可以用在調(diào)用此程序包的所有設(shè)計(jì)實(shí)體中;設(shè)計(jì)實(shí)體中某一結(jié)構(gòu)體中定義的常量只能用于此結(jié)構(gòu)體;結(jié)構(gòu)體中某一單元定義的常量,如一個(gè)進(jìn)程中,這個(gè)常量只能用在這一進(jìn)程中。

  2) 變量(Variable)

  變量是一個(gè)局部變量,它只能在進(jìn)程語(yǔ)句、函數(shù)語(yǔ)句和進(jìn)程語(yǔ)句結(jié)構(gòu)中使用。用作局部數(shù)據(jù)存儲(chǔ)。在仿真過(guò)程中。它不像信號(hào)那樣,到了規(guī)定的仿真時(shí)間才進(jìn)行賦值,變量的賦值是立即生效的。變量常用在實(shí)現(xiàn)某種算法的賦值語(yǔ)句中。

  一般格式:

  VARIABLE 變量名 數(shù)據(jù)類型 約束條件:=表達(dá)式;

  例:VARIABLE x,y:INTEGER; —定義x,y為整數(shù)變量

  VARIABLE count: INTEGER RANGE0 TO255:=10; —定義計(jì)數(shù)變量范圍

  變量的適用范圍僅限于定義了變量的進(jìn)程或子程序中。若將變量用于進(jìn)程之外,必須該值賦給一個(gè)相同的類型的信號(hào),即進(jìn)程之間傳遞數(shù)據(jù)靠的信號(hào)。

  變量賦值語(yǔ)句的語(yǔ)法格式如下:

  目標(biāo)變量:=表達(dá)式;

  變量賦值符號(hào)是“:=”。賦值語(yǔ)句右方的表達(dá)式必須是一個(gè)與目標(biāo)變量有相同數(shù)據(jù)類型的數(shù)值。變量不能用于硬件連線和存儲(chǔ)元件。

  3) 信號(hào)(Signal)

  信號(hào)是描述硬件系統(tǒng)的基本數(shù)據(jù)對(duì)象,它類似于連接線,它除了沒(méi)有數(shù)據(jù)流動(dòng)方向說(shuō)明以外,其它性質(zhì)與實(shí)體的端口(Port)概念一致。變量的值可以傳遞給信號(hào),而信號(hào)的值不能傳遞給變量。信號(hào)通常在構(gòu)造體、包集合和實(shí)體中說(shuō)明。信號(hào)說(shuō)明格式為:

  SIGNAL 信號(hào)名: 數(shù)據(jù)類型;

  信號(hào)初始值的設(shè)置不是必需的,而且初始值僅在VHDL的行為仿真中有效。

 

  VHDL中的標(biāo)識(shí)符可以是常數(shù)、變量、信號(hào)、端口、子程序或參數(shù)的名字。使用標(biāo)識(shí)符要遵守如下法則:

  ·標(biāo)識(shí)符由字母(A…Z;a…z)、數(shù)字和下劃線字符組成。

  ·任何標(biāo)識(shí)符必須以英文字母開(kāi)頭。

  ·末字符不能為下劃線。

  ·不允許出現(xiàn)兩個(gè)連續(xù)下劃線。

  ·標(biāo)識(shí)符中不區(qū)分大小寫字母。

  ·VHDL定義的保留子或稱關(guān)鍵字,不能用作標(biāo)識(shí)符。

  ·VHDL中的注釋由兩個(gè)連續(xù)的短線(--)開(kāi)始,直到行尾。

  以下是非法標(biāo)識(shí)符:

  -Decoder —起始不能為非英文字母

  3DOP —起始不能為數(shù)字

  Large#number —“#”不能成為標(biāo)識(shí)符的構(gòu)成符號(hào)

  Data__bus —不能有雙下劃線

  Copper_ —最后字符不能為下劃線

  On —關(guān)鍵字不能用作標(biāo)識(shí)符。

  注:在AHDL語(yǔ)言中標(biāo)識(shí)符要區(qū)分大小寫,但在VHDL語(yǔ)言中不區(qū)分大小寫。所以寫程序時(shí),一定要養(yǎng)成良好的書寫習(xí)慣,應(yīng)用關(guān)鍵字時(shí)用大寫,自己定義的標(biāo)識(shí)符用小寫。

  標(biāo)識(shí)符表示的幾種數(shù)據(jù)對(duì)象的詳細(xì)說(shuō)明如下:

  1) 常數(shù)(Constant )

  常數(shù)是一個(gè)固定的值,主要是為了使設(shè)計(jì)實(shí)體中的常數(shù)更容易閱讀和修改。常數(shù)一被賦值就不能在改變。一般格式:

  CONSTANT 常數(shù)名:數(shù)據(jù)類型:=表達(dá)式;

  例:CONSTANT Vcc: REAL: =5.0;

  —設(shè)計(jì)實(shí)體的電源電壓指定

  常數(shù)所賦得值應(yīng)與定義的數(shù)據(jù)類型一致。

  常量的使用范圍取決于它被定義的位置。程序包中定義的常量具有最大的全局化特性,可以用在調(diào)用此程序包的所有設(shè)計(jì)實(shí)體中;設(shè)計(jì)實(shí)體中某一結(jié)構(gòu)體中定義的常量只能用于此結(jié)構(gòu)體;結(jié)構(gòu)體中某一單元定義的常量,如一個(gè)進(jìn)程中,這個(gè)常量只能用在這一進(jìn)程中。

  2) 變量(Variable)

  變量是一個(gè)局部變量,它只能在進(jìn)程語(yǔ)句、函數(shù)語(yǔ)句和進(jìn)程語(yǔ)句結(jié)構(gòu)中使用。用作局部數(shù)據(jù)存儲(chǔ)。在仿真過(guò)程中。它不像信號(hào)那樣,到了規(guī)定的仿真時(shí)間才進(jìn)行賦值,變量的賦值是立即生效的。變量常用在實(shí)現(xiàn)某種算法的賦值語(yǔ)句中。

  一般格式:

  VARIABLE 變量名 數(shù)據(jù)類型 約束條件:=表達(dá)式;

  例:VARIABLE x,y:INTEGER; —定義x,y為整數(shù)變量

  VARIABLE count: INTEGER RANGE0 TO255:=10; —定義計(jì)數(shù)變量范圍

  變量的適用范圍僅限于定義了變量的進(jìn)程或子程序中。若將變量用于進(jìn)程之外,必須該值賦給一個(gè)相同的類型的信號(hào),即進(jìn)程之間傳遞數(shù)據(jù)靠的信號(hào)。

  變量賦值語(yǔ)句的語(yǔ)法格式如下:

  目標(biāo)變量:=表達(dá)式;

  變量賦值符號(hào)是“:=”。賦值語(yǔ)句右方的表達(dá)式必須是一個(gè)與目標(biāo)變量有相同數(shù)據(jù)類型的數(shù)值。變量不能用于硬件連線和存儲(chǔ)元件。

  3) 信號(hào)(Signal)

  信號(hào)是描述硬件系統(tǒng)的基本數(shù)據(jù)對(duì)象,它類似于連接線,它除了沒(méi)有數(shù)據(jù)流動(dòng)方向說(shuō)明以外,其它性質(zhì)與實(shí)體的端口(Port)概念一致。變量的值可以傳遞給信號(hào),而信號(hào)的值不能傳遞給變量。信號(hào)通常在構(gòu)造體、包集合和實(shí)體中說(shuō)明。信號(hào)說(shuō)明格式為:

  SIGNAL 信號(hào)名: 數(shù)據(jù)類型;

  信號(hào)初始值的設(shè)置不是必需的,而且初始值僅在VHDL的行為仿真中有效。

 

  1. 變量

  變量只能在進(jìn)程、函數(shù)和過(guò)程中使用,一旦賦值立即生效。

  例:VARIABLE x, y: INTEGER;

  VARIABLE count: INTEGER RANGE 0 TO 255:=10;

  2. 信號(hào)

  信號(hào)除了沒(méi)有方向的概念以外幾乎和端口概念一致。

  例:SIGNAL sys_clk: BIT:=’0’;

  SIGNAL ground: BIT:=’0’

  在程序中,信號(hào)值輸入信號(hào)時(shí)采用代入符”<=”,而不是賦值符“:=”,同時(shí)信號(hào)可以附加延時(shí)。

  信號(hào)傳送語(yǔ)句:

  s1<=s2 AFTER 10ns

  信號(hào)是一個(gè)全局量,可以用來(lái)進(jìn)行進(jìn)程之間的通信

  3. 信號(hào)與變量的區(qū)別:

  信號(hào)賦值可以有延遲時(shí)間,變量賦值無(wú)時(shí)間延遲;

  信號(hào)除當(dāng)前值外還有許多相關(guān)值,如歷史信息等,變量只有當(dāng)前值;

  進(jìn)程對(duì)信號(hào)敏感,對(duì)變量不敏感;

  信號(hào)可以是多個(gè)進(jìn)程的全局信號(hào),但變量只在定義它之后的順序域可見(jiàn);

  信號(hào)可以看作硬件的一根連線,但變量無(wú)此對(duì)應(yīng)關(guān)系。

  例:ENTITY reg1 IS

  PORT ( d : in BIT;

  clk : in BIT;

  q : out BIT);

  END reg1;

  ARCHITECTURE reg1 OF reg1 IS

  SIGNAL a, b : BIT;

  BEGIN

  PROCESS (clk)

  BEGIN

  IF clk=‘1’ AND clk’event THEN

  a <= d;

  b <= a;

  q <= b;

  END IF;

  END PROCESS;

  END reg1;

  ENTITY reg1 IS

  PORT ( d : in BIT;

  clk : in BIT;

  q : out BIT);

  END reg1;

  ARCHITECTURE reg1 OF reg1 IS

  BEGIN

  PROCESS (clk)

  VARIABLE a, b : BIT;

  BEGIN

  IF clk=‘1’ AND clk’event THEN

  a := d;

  b := a;

  q <= b;

  END IF;

  END PROCESS;

  END reg1;

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品影视天天线| 欧美激情四色| 亚洲国产网站| 亚洲欧美经典视频| 亚洲国产一区二区三区在线播 | 国产午夜精品理论片a级大结局| 欧美高清在线视频| 久久久久久网址| 亚洲欧美日韩另类精品一区二区三区| 亚洲开发第一视频在线播放| 久久成人18免费观看| 亚洲午夜一区二区| 99视频超级精品| 亚洲精品123区| 亚洲福利在线观看| 在线播放不卡| 韩国av一区| 国产亚洲女人久久久久毛片| 国产精品免费网站| 欧美三日本三级少妇三2023| 欧美电影在线| 农村妇女精品| 女人天堂亚洲aⅴ在线观看| 午夜精品久久久久| 亚洲一区二区在线免费观看视频| 99精品欧美一区二区三区综合在线| 亚洲国产成人porn| 亚洲第一视频网站| 欧美在线高清视频| 在线观看日韩精品| 在线观看日韩av| 一区二区三区我不卡| 国外视频精品毛片| 狠狠色综合播放一区二区| 免费的成人av| 欧美成人tv| 欧美连裤袜在线视频| 欧美日韩天天操| 国产精品国产三级国产专区53| 国产精品自在在线| 国产亚洲精品资源在线26u| 国产一区香蕉久久| 在线视频国产日韩| 亚洲人成网站精品片在线观看| 99精品国产在热久久| 亚洲香蕉伊综合在人在线视看| 亚洲欧美日韩区| 亚洲国产美女久久久久| 亚洲美洲欧洲综合国产一区| 亚洲视频精选| 欧美在线一区二区三区| 久久综合狠狠| 欧美日本不卡高清| 国产精品日韩精品欧美精品| 韩日成人在线| 亚洲精品一区二区在线| 亚洲尤物视频在线| 亚洲国产精品成人久久综合一区| 亚洲美女电影在线| 香蕉亚洲视频| 免费视频一区| 国产精品二区二区三区| 韩国av一区二区| 日韩视频在线观看| 欧美一区成人| 夜夜嗨av一区二区三区网页| 欧美在线播放一区| 欧美激情在线观看| 国产日韩欧美制服另类| 亚洲欧洲美洲综合色网| 亚洲永久网站| 日韩视频免费在线| 久久精品理论片| 欧美精品入口| 国产亚洲成人一区| 亚洲人成在线免费观看| 午夜国产一区| 99精品国产在热久久婷婷| 欧美一区二区三区婷婷月色| 欧美大片一区二区三区| 国产欧美韩国高清| 亚洲人在线视频| 久久精品国产一区二区电影| 亚洲性视频网址| 免费看成人av| 国产嫩草一区二区三区在线观看| 亚洲福利视频在线| 午夜精品久久久| 在线视频欧美日韩精品| 农村妇女精品| 激情久久影院| 欧美综合国产| 欧美一区二区视频在线观看2020| 欧美日韩免费在线观看| 亚洲成人在线网| 亚洲高清久久| 久久久999成人| 国产精品永久免费观看| aaa亚洲精品一二三区| 亚洲精品一区二区三| 久久视频国产精品免费视频在线| 国产精品日韩一区| 亚洲午夜在线观看| 亚洲香蕉伊综合在人在线视看| 欧美激情区在线播放| 极品av少妇一区二区| 久久gogo国模裸体人体| 欧美一级片久久久久久久| 国产精品久久久久久久久借妻| 亚洲人午夜精品免费| 亚洲精品影院在线观看| 免费在线成人av| 一区二区三区在线不卡| 久久精品盗摄| 久久女同互慰一区二区三区| 国产日韩欧美二区| 亚洲一区二区免费在线| 亚洲专区在线视频| 欧美国产日本在线| 亚洲欧洲精品一区二区三区 | 夜夜嗨av色一区二区不卡| 欧美国产第二页| 黄色成人av在线| 亚洲欧美一区二区三区在线| 一区二区三区国产在线观看| 米奇777超碰欧美日韩亚洲| 精品福利电影| 久久高清免费观看| 久久精品夜色噜噜亚洲aⅴ| 国产精品日韩欧美一区| 一本色道久久加勒比精品| 亚洲天堂久久| 欧美日韩欧美一区二区| 亚洲国产清纯| 亚洲精品国精品久久99热一| 男同欧美伦乱| 伊人久久大香线| 久久成人精品| 久久久五月天| 国产亚洲欧洲997久久综合| 亚洲午夜在线| 久久久国产一区二区三区| 国产欧美一区二区白浆黑人| 亚洲在线视频| 欧美中文字幕在线播放| 国产欧美在线视频| 亚洲高清av在线| 欧美xxx在线观看| 亚洲人成在线免费观看| 亚洲乱码国产乱码精品精| 欧美国产极速在线| 一本到12不卡视频在线dvd| 亚洲尤物视频网| 国产精品天天看| 午夜性色一区二区三区免费视频| 欧美一级日韩一级| 狠狠色香婷婷久久亚洲精品| 亚洲丰满少妇videoshd| 欧美不卡福利| 亚洲午夜精品福利| 久久本道综合色狠狠五月| 国外成人在线| 亚洲精品一区久久久久久| 国产精品theporn| 亚洲综合不卡| 久久久久久久999| 在线观看欧美日本| 日韩视频第一页| 国产精品有限公司| 亚洲摸下面视频| 久久婷婷国产综合国色天香 | 黄色精品免费| 日韩视频在线免费观看| 国产久一道中文一区| 久久精品国产综合精品| 欧美风情在线观看| 一区二区高清在线| 亚洲男人av电影| 亚洲成人自拍视频| 野花国产精品入口| 国产欧美精品va在线观看| 亚洲黄色免费| 国产精品女主播| 久久国产精品99精品国产| 欧美成人激情视频免费观看| 亚洲毛片在线观看| 欧美一区二区在线免费播放| 最新国产成人av网站网址麻豆| 亚洲一级片在线观看| 国产欧美精品va在线观看| 亚洲第一在线| 欧美日韩一区二区在线观看| 亚洲高清久久网| 欧美日韩视频在线一区二区| 亚洲欧美日韩一区二区| 蜜臀av性久久久久蜜臀aⅴ| 一本色道88久久加勒比精品| 久久精品国产视频| 亚洲精品视频在线观看免费| 欧美夜福利tv在线|