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

正文內(nèi)容

基于vhdl的復(fù)雜可編程邏輯器件應(yīng)用技術(shù)(編輯修改稿)

2025-07-24 19:09 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 ANGE)。 BEGIN IF (ab) THEN tmp := a。 ELSE tmp := b。 END IF。 RETURN tmp。 END。 END bpac。 庫(kù)和程序包 庫(kù)和程序包用來(lái)描述和保留元件、類型說(shuō)明函數(shù)、子程序等,以便在其它設(shè)計(jì)中可以隨時(shí)引用這些信息,提高設(shè)計(jì)效率。 庫(kù)(LIBRARY) 庫(kù)是經(jīng)編譯后的數(shù)據(jù)的集合,它存放包集合定義、實(shí)體定義、結(jié)構(gòu)定義和配置定義。 庫(kù)語(yǔ)句的格式為: LIBRARY 庫(kù)名; USE語(yǔ)句指明庫(kù)中的程序包。一旦說(shuō)明了庫(kù)和程序包,整個(gè)設(shè)計(jì)實(shí)體都可以進(jìn)入訪問(wèn)或調(diào)用,但其作用范圍僅限于所說(shuō)明的設(shè)計(jì)實(shí)體。USE語(yǔ)句的使用將使所說(shuō)明的程序包對(duì)本設(shè)計(jì)實(shí)體部分或全部開(kāi)放。 USE語(yǔ)句有以下兩種常用的格式:USE 。USE 。 第一種語(yǔ)句格式的作用是向本設(shè)計(jì)實(shí)體開(kāi)放指定庫(kù)中的特定程序包內(nèi)的所選定的項(xiàng)目。第二種語(yǔ)句格式的作用是向本設(shè)計(jì)實(shí)體開(kāi)放指定庫(kù)中的特定程序包內(nèi)的所有內(nèi)容。 例如: LIBRARY IEEE; USE 。 USE 。 此例中,第一個(gè)USE語(yǔ)句表明打開(kāi)IEEE庫(kù)中的STD_LOGIC_1164程序包,并使程序包中的所有公共資源對(duì)本語(yǔ)句后面的VHDL設(shè)計(jì)實(shí)體程序全部開(kāi)放,關(guān)鍵詞ALL代表程序包中的所有資源。第二個(gè)USE語(yǔ)句開(kāi)放了程序包STD_LOGIC_1164中的STD_ULOGIC數(shù)據(jù)類型。 STD_ULOGIC :可枚舉數(shù)據(jù)類型注意:庫(kù)說(shuō)明語(yǔ)句的作用范圍從一個(gè)實(shí)體說(shuō)明開(kāi)始到它所屬的結(jié)構(gòu)體、配置為止,當(dāng)一個(gè)源程序中出現(xiàn)兩個(gè)以上實(shí)體時(shí),兩條作為使用庫(kù)的說(shuō)明語(yǔ)句應(yīng)在每個(gè)設(shè)計(jì)實(shí)體說(shuō)明語(yǔ)句前重復(fù)書(shū)寫(xiě)。 例:LIBRARY IEEE; 庫(kù)使用說(shuō)明USE 。ENTITY and IS ┇END and;ARCHITECTURE dataflow OF and IS ┇END dataflow。CONFIGURATION c1 OF and IS CONFIGURATION(配置) ┇AND c1。LIBRARY IEEE; 庫(kù)使用說(shuō)明 USE 。ENTITY or ISCONFIGURATION c2 OF and IS ┇AND c2。 程序包程序包也叫包集合,主要用來(lái)存放各個(gè)設(shè)計(jì)都能共享的數(shù)據(jù)類型、子程序說(shuō)明、屬性說(shuō)明和元件說(shuō)明等部分。設(shè)計(jì)者使用時(shí)只要用USE子句進(jìn)行說(shuō)明即可。 程序包由兩部分組成:程序包首和程序包體。 程序包的一般書(shū)寫(xiě)格式如下:PACKAGE 程序包名 ISEND [PACKAGE] 程序包名; 程序包首PACKAGE BODY 程序包名 IS ┇ 程序包體 END [PACKAGE BODY] [程序包名]; 例:USE ;PACKAGE math IS TYPE tw16 IS ARRAY(0 TO 15)OF T_WLOGIC; FUNCTION add (a,b:IN tw16)RETURN tw16; FUNCTION sub (a,b:IN tw16)RETURN tw16;END math;PACKAGE BODY math ISFUNCTION vect_to_int(s:tw16); RETURN INTEGER IS VARIBLE result:INTEGER :=0。 BEGIN FOR i IN 0 TO 7 LOOP result := result*2。 IF s(i)=’1’THEN result := result+1 END IF。 END LOOP。RETURN result。END vect_to_int。FUNCTION int_to_tw16(s:INTEGER)。 RETURN tw16 IS VARIBLE result: tw16。 VARIBLE digit: INTEGER:=2**15。 VARIBLE local: INTEGER。 BEGIN local := s。 FOR i IN 15 DOWNTO 0 LOOP IF local/ digit=1 THEN Local := local digit。 ELSE result (i) :=0。 END IF。 digit := digit/2。 END LOOP。RETURN result。END int_to_tw16。FUNCTION add(a,b:IN tw16)。RETURN tw16 IS VARIBLE result: INTEGER。 BEGIN result := vect_to_int (a)+ vect_to_int (b)。 RETURN int_to_tw16(result)。END add。FUNCTION sub(a,b:IN tw16)。RETURN tw16 IS VARIBLE result: INTEGER。BEGIN result := vect_to_int (a)+ vect_to_int (b)。 RETURN int_to_tw16(result)。END sub。END math。此例的程序包是由程序包首和程序包體兩部分組成。程序包首定義了數(shù)據(jù)類型和函數(shù)的調(diào)用說(shuō)明,程序包體中才具體描述實(shí)現(xiàn)該函數(shù)功能的語(yǔ)句和數(shù)據(jù)的賦值。這種分開(kāi)描述的好處是,當(dāng)函數(shù)的功能需要做某些調(diào)整或數(shù)據(jù)賦值需要變化時(shí),只要改變程序包體的相關(guān)語(yǔ)句就可以了,而無(wú)需改變程序包首的說(shuō)明,這樣就使得需要重新編譯的單元數(shù)目盡可能的減少了。 配置 在用VHDL描述硬件電路時(shí),常常采用結(jié)構(gòu)描述方式和混合描述方式。在這兩種描述方式中,常常需要將其他設(shè)計(jì)實(shí)體作為元件進(jìn)行引用,這時(shí)就需要將不同元件通過(guò)配置安裝到不同的設(shè)計(jì)實(shí)體中。VHDL提供了配置語(yǔ)句用于描述各種設(shè)計(jì)實(shí)體和元件之間連接關(guān)系以及設(shè)計(jì)實(shí)體和結(jié)構(gòu)體之間的連接關(guān)系。 默認(rèn)配置默認(rèn)配置語(yǔ)句的基本格式為:CONFIGURATION 配置名 OF 實(shí)體名 IS FOR 選配結(jié)構(gòu)體名 END FOREND 配置名;例:與、或、與非、或非、異或,5個(gè)結(jié)構(gòu)體共用一個(gè)實(shí)體。LIBRARY IEEE。USE 。ENTITY example_v IS PORT (a : IN STD_LOGIC。 b : IN STD_LOGIC。 y : OUT STD_LOGIC)。END example_v。ARCHITECTURE and2_arc OF example_v IS BEGIN y = a AND b。 END and2_arc。ARCHITECTURE or2_arc OF example_v IS BEGIN y = a OR b。 END or2_arc。ARCHITECTURE nand2_arc OF example_v IS BEGIN y = NOT(a AND b)。 END nand2_arc。ARCHITECTURE nor2_arc OF example_v IS BEGIN y = NOT(a OR b)。 END nor2_arc。ARCHITECTURE xor2_arc OF example_v IS BEGIN y = a XOR b。 END xor2_arc。CONFIGURATION cfg1 OF example_v IS FOR and2_arc END FOR。END cfg1。CONFIGURATION cfg2 OF example_v IS FOR or2_arc END FOR。END cfg2。CONFIGURATION cfg3 OF example_v IS FOR nand2_arc END FOR。END cfg3。CONFIGURATION cfg4 OF example_v IS FOR nor2_arc END FOR。END cfg4。CONFIGURATION cfg5 OF example_v IS FOR xor2_arc END FOR。END cfg5。在上例( example_v)中,有5個(gè)不同的結(jié)構(gòu)體,分別用來(lái)完成二輸入的邏輯與、或、與非、或非和邏輯異或的運(yùn)算操作。在程序中使用了5個(gè)默認(rèn)配置語(yǔ)句來(lái)指明設(shè)計(jì)實(shí)體example_v和哪個(gè)結(jié)構(gòu)體一起組成一個(gè)完整的設(shè)計(jì):配置語(yǔ)句cfg1將與邏輯結(jié)構(gòu)體配置給實(shí)體;cfg2將或邏輯結(jié)構(gòu)體配置給實(shí)體;cfg3將與非邏輯結(jié)構(gòu)體配置給實(shí)體;cfg4將或非邏輯結(jié)構(gòu)體配置給實(shí)體;cfg5將異或邏輯結(jié)構(gòu)體配置給實(shí)體。在進(jìn)行模擬的時(shí)候,將根據(jù)所編譯的是上面的哪個(gè)配置來(lái)決定要進(jìn)行模擬的結(jié)構(gòu)體,也就是說(shuō)最后一個(gè)被編譯的結(jié)構(gòu)體(異或邏輯)將被模擬,下圖就是異或邏輯的仿真波形。異或門仿真波形 結(jié)構(gòu)體的配置結(jié)構(gòu)體的配置主要是用來(lái)對(duì)結(jié)構(gòu)體中引用的元件進(jìn)行配置。結(jié)構(gòu)體的配置的書(shū)寫(xiě)格式:FOR 元件例化標(biāo)號(hào):元件名USE ENTITY 庫(kù)名.實(shí)體名(結(jié)構(gòu)體名)。以1位全加器的構(gòu)成為例說(shuō)明結(jié)構(gòu)體的配置的用法: 將兩輸入與門、或門、異或門設(shè)置成通用例化元件由結(jié)構(gòu)體引用。二輸入與門源代碼:LIBRARY IEEE。USE 。ENTITY and2_v IS PORT(a: IN STD_LOGIC。 b: IN STD_LOGIC。 y: OUT STD_LOGIC)。END and2_v。ARCHITECTURE and2_arc OF and2_v ISBEGIN y = a AND b。END and2_arc。CONFIGURATION and2_cfg OF and2_v IS FOR and2_arc END for。END and2_cfg。與門and2_v仿真波形二輸入或門源代碼:LIBRARY IEEE。USE 。ENTITY or2_v IS PORT(a: IN STD_LOGIC。 b: IN STD_LOGIC。 y: OUT STD_LOGIC)。END or2_v。ARCHITECTURE or2_arc OF or2_v ISBEGIN y = a OR b。END or2_arc。CONFIGURATION or2_cfg OF or2_v IS FOR or2_arc END for。END or2_cfg?;蜷Tor2_v仿真波形異或門源代碼:LIBRARY IEEE。USE 。ENTITY xor2_v IS PORT(a: IN STD_LOGIC。 b: IN STD_LOGIC。 y:
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1