freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

vhdl設(shè)計進階ppt課件(已修改)

2025-01-24 09:10 本頁面
 

【正文】 第 5章 VHDL設(shè)計進階 VHDL語言要素 VHDL順序語句 VHDL并行語句 子程序 庫、程序包及其配置 VHDL描述風(fēng)格 單元電路的設(shè)計舉例 VHDL與原理圖混合設(shè)計舉例 第 5章 VHDL設(shè)計進階 數(shù)字 的表達可以是 整數(shù)文字 、 實數(shù)文字 、以數(shù)制基數(shù)表示的文字 和 物理量文字 。 字符 是用單引號引起來的 ASCII字符,可以是數(shù)值,也可以是符號或字母,如:‘ R?, ‘ A?, ‘ *’ , ‘ 0?。而 字符串則是一維的字符數(shù)組,須放在雙引號中 。 VHDL語言要素 VHDL文字規(guī)則 標(biāo)識符 是 VHDL語言中各種成分的名稱,這些成分包括常量、變量、信號、端口、子程序或參數(shù)等。定義標(biāo)識符需要遵循以下規(guī)則: l 有效的字符:包括 26個大小寫英文字母,數(shù)字0~ 9以及下劃線 “ _”。 l 任何標(biāo)識符必須以英文字母開頭。 l 必須是單一下劃線 “ _”,且其前后都必須有英文字母或數(shù)字。 l 標(biāo)識符中的英文字母不分大小寫。 l 允許包含圖形符號(如回車符、換行符等),也允許包含空格符。 l VHDL的保留字不能用于作為標(biāo)識符使用。 以下是幾種合法和非法標(biāo)識符的示例。 合法的標(biāo)識符: Decoder_1, FFT, abc123。 非法的標(biāo)識符: _Decoder_1 起始為非英文字母 2 FET 起始為數(shù)字 NotRST 符號 “ ”不能作為標(biāo)識符的構(gòu)成 RyY_RST_ 標(biāo)識符的最后不能是下劃線 Data_ _BUS 標(biāo)識符中不能有雙下劃線 Begin 關(guān)鍵詞不能作為標(biāo)識符 resΩ 使用了無效字符 “ Ω” 下標(biāo)名 用于指示數(shù)組型變量或信號的某一元素,而 下標(biāo)段名則用于指示數(shù)組型變量或信號的某一段元素,其語句格式如下: 數(shù)組類型信號名或變量名(表達式 l[ TO/DOWNTO 表達式2]); 下面是下標(biāo)名及下標(biāo)段名使用示例: SIGNAL a, b, c: BIT_VECTOR( 0 TO 7); SIGNAL m: INTEGER RANGE 0 TO 3; SIGNAL y, z: BIT; y< =a( m); m是不可計算型下標(biāo)表示 z< =b(3); 3是可計算型下標(biāo)表示 c( 0 TO 3)<= a( 4 TO 7); 以段的方式進行賦值 c( 4 TO 7)< = a( 0 TO 3); 以段的方式進行賦值 常量的定義形式如下: CONSTANT 常量名:數(shù)據(jù)類型 [: =表達式 ]; 例如: CONSTANT fbt: STD_LOGIC_VECTOR : =“010110” ; 標(biāo)準(zhǔn)位矢類型 CONSTANT vcc: REAL: =; 實數(shù)類型 CONSTANT dely: TIME: =25ns; 時間類型 常量定義語句所允許的設(shè)計單元有實體、結(jié)構(gòu)體、程序包、塊、進程和子程序。 VHDL數(shù)據(jù)對象 ( 1)常量( CONSTANT) 定義變量的語法格式如下: VARIABLE 變量名:數(shù)據(jù)類型 [: =初始值 ]; 例如: VARIABLE a : INTEGER RANGE 0 TO 15; VARIABLE b,c : INTEGER:=2; VARIABLE d : STD_LOGIC; 變量賦值的一般表達式如下: 目標(biāo)變量名: =表達式; 變量作為局部量,其適用范圍僅限于定義了變量的進程或子程序的順序語句中 ( 2)變量( VARIABLE) 信號的定義格式如下: SIGNAL 信號名:數(shù)據(jù)類型 [: =初始值 ]; 以下是信號的定義示例: SIGNAL s1: STD_LOGIC:=?0?; 定義了一個標(biāo)準(zhǔn)位的單值信號 s1,初始值為低電平 SIGNAL s2, s3: BIT; 定義了兩個位( BIT)的信號 s2和 s3 SIGNAL s4: STD_LOGIC_VECTOR(15 DOWNTO 0)。 信號的賦值語句表達式如下: 目標(biāo)信號名< =表達式; 信號的使用和定義范圍是實體、結(jié)構(gòu)體和程序包。在進程和子程序中不允許定義信號。 ( 3)信號( SIGNAL) ( 6)信號賦值和變量賦值分別使用不同的賦值符號 “ =”和 “ : =”,信號類型和變量類型可以完全一致,也允許兩者之間相互賦值,但要保證兩者的類型相同。 ( 4)信號與變量的區(qū)別 ( 1)信號賦值至少有 δ 延時,而變量賦值沒有延時。 ( 2)信號除當(dāng)前值外有許多相關(guān)的信息,而變量只有當(dāng)前值。 ( 3)進程對信號敏感而對變量不敏感。 ( 4)信號可以是多個進程的全局信號;而變量只在定義它們的順序域可見(共享變量除外)。 ( 5)信號是硬件中連線的抽象描述,它們的功能是保存變化的數(shù)據(jù)和連接子元件,信號在元件的端口連接元件。變量在硬件中沒有類似的對應(yīng)關(guān)系,它們用于硬件特性的高層次建模所需要的計算中。 ( 4)用戶自定義數(shù)據(jù)類型 : 枚舉類型 , 整數(shù)與實數(shù)類型 , 數(shù)組類型 , 記錄類型 VHDL數(shù)據(jù)類型 四大類:標(biāo)量、復(fù)合、存取、文件類型,每類分為兩種。 ( 1) VHDL的預(yù)定義數(shù)據(jù)類型 : 布爾( BOOLEAN)數(shù)據(jù)類型, 位( BIT)數(shù)據(jù)類型 , 位矢量( BIT_VECTOR)數(shù)據(jù)類型 , 字符( CHARACTER)數(shù)據(jù)類型 , 整數(shù)( INTEGER)數(shù)據(jù)類型 , 自然數(shù)( NATURAL)和正整數(shù)( POSITIVE)數(shù)據(jù)類型 , 實數(shù)( REAL)數(shù)據(jù)類型 , 字符串( STRING)數(shù)據(jù)類型 , 時間( TIME)數(shù)據(jù)類型 ( 2) IEEE預(yù)定義標(biāo)準(zhǔn)邏輯位與矢量 : 標(biāo)準(zhǔn)邏輯位 STD_LOGIC數(shù)據(jù)類型 , 標(biāo)準(zhǔn)邏輯矢量 STD_LOGIC_VECTOR數(shù)據(jù)類型 ( 3)其他預(yù)定義標(biāo)準(zhǔn)數(shù)據(jù)類型 : 無符號數(shù)據(jù)類型( UNSIGNED TYPE) , 有符號數(shù)據(jù)類型( SIGNED TYPE) 。 數(shù)據(jù)類型的轉(zhuǎn)換 函數(shù)轉(zhuǎn)換法 (P114:例 51) 程序包 函數(shù)名 功能 STD_LOGIC_1164 TO_STDLOGICVECTOR(A) 由 BIT_VECTOR轉(zhuǎn)換為STD_LOGIC_VECTOR TO_BITVECTOR(A) 由 STD_LOGIC_VECTOR轉(zhuǎn)換為 BIT_VECTOR TO_STDLOGIC(A) 由 BIT轉(zhuǎn)換為 STD_LOGIC TO_BIT(A) 由 STD_LOGIC轉(zhuǎn)換為 BIT STD_LOGIC_ARITH CONV_STD_LOGIC_VECTOR(A,位長 ) 由 INTEGER、 UNSIGNED、SIGNED轉(zhuǎn)換成STD_LOGIC_VECTOR CONV_INTEGER(A) 由 UNSIGNED、 SIGNED轉(zhuǎn)換成 INTEGER STD_LOGIC_UNSIGNED CONV_INTEGER(A) 由 STD_LOGIC_VECTOR轉(zhuǎn)換成 INTEGER 在 VHDL語言中的類型標(biāo)記轉(zhuǎn)換法是直接使用類型名進行數(shù)據(jù)類型的轉(zhuǎn)換,這與高級語言中的強制類型轉(zhuǎn)換類似。其語句格式如下: 數(shù)據(jù)類型標(biāo)志符(表達式); 下面幾個語句說明了標(biāo)記類型轉(zhuǎn)換的例子。 VARIABLE a:INTEGER。 VARIABLE b:REAL。 a:=INTEGER(b)。 b:=REAL(a)。 (常數(shù)轉(zhuǎn)換法 ) 數(shù)據(jù)類型限定( P115) 類型標(biāo)記轉(zhuǎn)換法 VHDL操作符 類型 操作符 功能 操作數(shù)數(shù)據(jù)類型 算術(shù)操作符 + 加 整數(shù) 減 整數(shù) amp。 并置 一維數(shù)組 * 乘 整數(shù)和實數(shù)(包括浮點數(shù)) / 除 整數(shù)和實數(shù)(包括浮點數(shù)) MOD 取模 整數(shù) REM 取余 整數(shù) SLL 邏輯左移 BIT或布爾型一維數(shù)組 SRL 邏輯右移 BIT或布爾型一維數(shù)組 SLA 算術(shù)左移 BIT或布爾型一維數(shù)組 SRA 算術(shù)右移 BIT或布爾型一維數(shù)組 ROL 邏輯循環(huán)左移 BIT或布爾型一維數(shù)組 ROR 邏輯循環(huán)右移 BIT或布爾型一維數(shù)組 ** 乘方 整數(shù) ABS 取絕對值 整數(shù) + 正 整數(shù) 負 整數(shù) 關(guān)系操作符 = 等于 任何數(shù)據(jù)類型 /= 不等于 任何數(shù)據(jù)類型 小于 枚舉與整數(shù)類型及對應(yīng)的一維數(shù)組 大于 枚舉與整數(shù)類型及對應(yīng)的一維數(shù)組 = 小于等于 枚舉與整數(shù)類型及對應(yīng)的一維數(shù)組 = 大于等于 枚舉與整數(shù)類型及對應(yīng)的一維數(shù)組 邏輯操作符 AND 與 BIT, BOOLEAN, STD_LOGIC OR 或 BIT, BOOLEAN, STD_LOGIC NAND 與非 BIT, BOOLEAN, STD_LOGIC NOR 或非 BIT, BOOLEAN, STD_LOGIC XOR 異或 BIT, BOOLEAN, STD_LOGIC XNOR 異或非 BIT, BOOLEAN, STD_LOGIC NOT 非 BIT, BOOLEAN, STD_LOGIC 表 5- 3 VHDL操作符優(yōu)先級 運算符 優(yōu)先級 NOT, ABS, ** 最高優(yōu)先級 最低優(yōu)先級 *, /, MOD, REM +(正號), (負號) +, , amp。 SLL, SLA, SRL, SRA, ROL, ROR =, /=, , =, , = AND, OR, NAND, NOR, XOR, XNOR 例 52: 邏輯運算 VHDL描述 (p118) 例 53: 四位二進制數(shù)比較程序 1(p118) 例 54: 四位二進制數(shù)比較程序 2(p119) 例 55: 整數(shù)加法運算電路 (p119) 重載操作符:重新定義 (p120) 變量賦值語句和信號賦值語句的語法格式如下: 變量賦值目標(biāo) : =賦值源; 信號賦值目標(biāo) 〈 =賦值源; VHDL順序語句 賦值語句 信號和變量的賦值 六類基本順序語句:賦值語句、轉(zhuǎn)向控制語句、等待語句、子程序調(diào)用語句、返回語句、空操作語句。 例 56: … SIGNAL s1, s2: STD_LOGIC; SIGNAL svec:STD_LOGIC_VECTOR( 0 TO 3) 。 … PROCESS(s1, s2) VARIABLE v1, v2: STD_LOGIC。 BEGIN v1:=?1?; 立即將變量 v1置位為 1 v2:=?1?。 立即將變量 v2置位為 1 s1=?1?。 信號 s1被賦值為 1 s2=?1?。 由于在本進程中,這里的 s2不是最后一個賦值語句故不作任何賦值操作
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1