數(shù)字電路與邏輯設(shè)計(第四版)課件 第7章 VHDL與數(shù)字電路設(shè)計_第1頁
數(shù)字電路與邏輯設(shè)計(第四版)課件 第7章 VHDL與數(shù)字電路設(shè)計_第2頁
數(shù)字電路與邏輯設(shè)計(第四版)課件 第7章 VHDL與數(shù)字電路設(shè)計_第3頁
數(shù)字電路與邏輯設(shè)計(第四版)課件 第7章 VHDL與數(shù)字電路設(shè)計_第4頁
數(shù)字電路與邏輯設(shè)計(第四版)課件 第7章 VHDL與數(shù)字電路設(shè)計_第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第7章VHDL與數(shù)字電路設(shè)計7.1電子設(shè)計自動化(EDA)技術(shù)的發(fā)展7.2硬件描述語言對數(shù)字系統(tǒng)的描述7.3基于硬件描述語言的數(shù)字電路設(shè)計流程7.4VHDL的基本文法7.5VHDL對基本電路行為的描述方法7.6VHDL對復(fù)雜電路行為的描述方法

7.1電子設(shè)計自動化(EDA)技術(shù)的發(fā)展

電子設(shè)計自動化的發(fā)展大致可以分為三個階段:20世紀(jì)70年代的第一代EDA系統(tǒng),常稱為計算機輔助設(shè)計(CAD)系統(tǒng);80年代的第二代EDA系統(tǒng),常稱為計算機輔助工程(CAE)系統(tǒng);90年代的第三代EDA系統(tǒng),這一代EDA系統(tǒng)的特點是實現(xiàn)了高層次設(shè)計的自動化。

第一代EDA工具的特點是交互式圖形編輯設(shè)計,硬件采用16位小型機,邏輯圖輸入、邏輯模擬、電路模擬、版圖設(shè)計及版圖驗證是分別進行的,設(shè)計人員需要對設(shè)計內(nèi)容進行多次的比較和修改才能得到正確的設(shè)計。

第二代EDA工具集邏輯圖輸入、邏輯模擬、測試碼生成、電路模擬、版圖輸入、版圖驗證等工具于一體,構(gòu)成了一個較完整的設(shè)計系統(tǒng)。

CAE系統(tǒng)的特點是支持一致性檢查和后模擬功能。

第三代EDA工具出現(xiàn)于20世紀(jì)90年代,隨著芯片的復(fù)雜程度愈來愈高,數(shù)萬門及數(shù)十萬門的電路設(shè)計越來越多,單是靠原理圖輸入方式已經(jīng)無法完成,硬件描述語言設(shè)計方式應(yīng)運而生,設(shè)計工作從行為級、功能級開始,EDA向設(shè)計的高層次發(fā)展,這樣就出現(xiàn)了第三代EDA系統(tǒng)。

第三代EDA系統(tǒng)的特點是高層次設(shè)計的自動化。

高層次設(shè)計是與具體生產(chǎn)技術(shù)無關(guān)的,亦即與工藝無關(guān)。一個HDL原碼可以通過邏輯綜合工具綜合成為一個現(xiàn)場可編程門陣列,既FPGA電路,也可綜合成某一工藝所支持的專用集成電路,即ASIC電路。HDL原碼對于FPGA和ASIC是完全一樣的,僅需要更換不同的庫重新進行綜合。隨著工藝技術(shù)的進步,需要采用更先進的工藝時,如從0.35μm技術(shù)轉(zhuǎn)換為0.18μm技術(shù)時,可利用原來所書寫的HDL原碼。

前兩代的EDA系統(tǒng)是以軟件工具為核心的,第三代EDA系統(tǒng)是一個統(tǒng)一的、協(xié)同的、集成化的、以數(shù)據(jù)庫為核心的系統(tǒng)。它具有面向目標(biāo)的各種數(shù)據(jù)模型及數(shù)據(jù)管理系統(tǒng),有一致性較好的用戶界面系統(tǒng),有基于圖形界面的設(shè)計管理環(huán)境和設(shè)計管理系統(tǒng)。在此基礎(chǔ)上,第三代EDA系統(tǒng)實現(xiàn)了操作的協(xié)同性、結(jié)構(gòu)的開放性和系統(tǒng)的可移植性。

其中操作的協(xié)同性是指可在多窗口的環(huán)境下同時運行多個工具。例如,當(dāng)版圖編輯器完成了一個多邊形的設(shè)計時,該多邊形就被存入數(shù)據(jù)庫,被存入信息對版圖設(shè)計規(guī)則檢查器同樣有效。因此,允許在版圖過程中交替地進行版圖設(shè)計規(guī)則檢查,以避免整個設(shè)計過程的反復(fù)。再如,當(dāng)在邏輯窗口中對該邏輯圖的某個節(jié)點進行檢查時,在版圖窗口可同時看到該節(jié)點所對應(yīng)的版圖區(qū)域。這種協(xié)同操作的并行設(shè)計環(huán)境使設(shè)計者可同時訪問設(shè)計過程中的多種信息,并能分享設(shè)計數(shù)據(jù)。

結(jié)構(gòu)的開放性是指通過一定的編程語言可以訪問統(tǒng)一的數(shù)據(jù)庫,同時在此結(jié)構(gòu)框架中可嵌入第三方所開發(fā)的設(shè)計軟件。

系統(tǒng)的可移植性是指整個軟件系統(tǒng)可安裝到不同的硬件平臺上,這樣可組成一個由不同型號工作站所組成的設(shè)計系統(tǒng),從而共享同一設(shè)計數(shù)據(jù)。也可由低價的個人計算機和高性能的工作站共同組成一個系統(tǒng)。

7.2硬件描述語言對數(shù)字系統(tǒng)的描述

VHDL作為一種經(jīng)典的硬件描述語言,它主要包含三方面的功能:實現(xiàn)電路系統(tǒng)的文檔化描述、支持系統(tǒng)仿真和支持系統(tǒng)綜合。電路系統(tǒng)可以從不同的角度進行描述:

?行為級:系統(tǒng)執(zhí)行什么樣的操作和處理。

?結(jié)構(gòu)級:系統(tǒng)是如何構(gòu)成的。

?功能特性:系統(tǒng)如何與外界進行連接與交互。

?物理特性:系統(tǒng)的處理速度如何。

同時,系統(tǒng)也可以按照不同的抽象級別進行描述:

?開關(guān)級:描述晶體管的開關(guān)行為。

?寄存器傳輸級:描述組合電路和時序電路的邏輯結(jié)構(gòu)。

?指令級體系結(jié)構(gòu)級:描述微處理器的功能行為。

綜合這些不同的角度和抽象級別,數(shù)字系統(tǒng)的描述可以用Gajski和Kuhn提出的著名的Y圖來表示,如圖7-1所示。

圖7-1數(shù)字系統(tǒng)設(shè)計所涵蓋的領(lǐng)域

7.3基于硬件描述語言的數(shù)字電路設(shè)計流程

高層次綜合也稱為行為級綜合(BehavioralSynthesis),它的任務(wù)是將一個設(shè)計的行為級描述轉(zhuǎn)換成寄存器傳輸級的結(jié)構(gòu)描述。其設(shè)計步驟是,首先翻譯和分析設(shè)計的HDL描述,在給定的一組性能、面積和功耗條件下,確定需要哪些硬件資源,如執(zhí)行單元、存儲器、控制器、總線等,通常稱這一步為資源分配(Allocation);其次確定在這一結(jié)構(gòu)中各種操作的次序,通常稱這一步為調(diào)度(Scheduling)。同時還可通過行為級和寄存器傳輸級硬件仿真進行驗證。

邏輯綜合是將邏輯級的行為描述轉(zhuǎn)換成邏輯級的結(jié)構(gòu)描述,即邏輯門級網(wǎng)表。邏輯級的行為描述可以是狀態(tài)轉(zhuǎn)移圖、有限狀態(tài)機,也可以是布爾方程、真值表或硬件描述語言。邏輯綜合過程還包括一些優(yōu)化步驟,如資源共享、連接優(yōu)化和時鐘分配等。優(yōu)化目標(biāo)是面積最小、速度最快、功耗最低或它們的折中。

邏輯綜合分成兩個階段:首先是與工藝無關(guān)的階段,此階段采用布爾操作或代數(shù)操作技術(shù)來優(yōu)化邏輯;其次是工藝映射階段,此階段根據(jù)電路的性質(zhì)(如組合型或時序型)及采用的結(jié)構(gòu)(多層邏輯、PLD或FPGA)作出具體的映射,將與工藝無關(guān)的描述轉(zhuǎn)換成門級網(wǎng)表或PLD(或FP-GA)的專門文件。

物理綜合也稱為版圖綜合(LayoutSynthesis),它的任務(wù)是將門級網(wǎng)表自動轉(zhuǎn)換成版圖,即完成布圖。

與傳統(tǒng)的數(shù)字電路設(shè)計方法相比,基于硬件描述語言的數(shù)字電路設(shè)計方法具有以下四方面的優(yōu)勢:

(1)采用自上向下(Top-down)的設(shè)計方法。所謂自上向下的設(shè)計方法,是指從系統(tǒng)總體要求出發(fā),自上而下地逐步將設(shè)計內(nèi)容細化,最后完成系統(tǒng)硬件的整體設(shè)計。在利用HDL的硬件設(shè)計方法中,自上而下分成三個層次對系統(tǒng)硬件進行設(shè)計。

第一層次是行為描述。所謂行為描述,實質(zhì)上就是對整個系統(tǒng)的數(shù)學(xué)模型的描述。

第二層次是RTL描述。這一層次稱為寄存器傳輸描述(即數(shù)據(jù)流描述)。

第三層次是邏輯綜合。邏輯綜合階段利用邏輯綜合工具將RTL方式描述的程序轉(zhuǎn)換成用基本邏輯元件表示的文件(門級網(wǎng)表),之后對門級網(wǎng)表再進行仿真,并檢查定時關(guān)系。

如果在上述三個層次的某個層次上發(fā)現(xiàn)有問題,則應(yīng)返回上一層,尋找和修改相應(yīng)的錯誤,然后再向下繼續(xù)未完成的工作。

(2)采用系統(tǒng)早期仿真。從自上而下的設(shè)計過程可以看到,在系統(tǒng)設(shè)計過程中要進行三次仿真,即行為層次仿真、RTL層次仿真和門級層次仿真,也就是進行系統(tǒng)數(shù)學(xué)模型的仿真、系統(tǒng)數(shù)據(jù)流的仿真和系統(tǒng)門電路原理的仿真。這三級仿真貫穿系統(tǒng)硬件設(shè)計的全過程,從而可以在系統(tǒng)設(shè)計早期發(fā)現(xiàn)設(shè)計中存在的問題。與傳統(tǒng)設(shè)計的后期仿真相比,早期仿真可大大縮短系統(tǒng)的設(shè)計周期,節(jié)約大量的人力和物力。

(3)降低硬件電路設(shè)計難度。在采用傳統(tǒng)的硬件電路設(shè)計方法時,往往要求設(shè)計者寫出該電路的邏輯表達式、真值表、時序電路的狀態(tài)表。這一工作是相當(dāng)困難和繁雜的,特別是在系統(tǒng)比較復(fù)雜時更是如此。在用HDL設(shè)計硬件電路時,就可以使設(shè)計者免除編寫邏輯表或真值表之苦。

(4)主要設(shè)計文件為用HDL編寫的源程序。HDL源程序作為歸檔文件有很多好處:資料良好,便于保存;可繼承性好;等等。使用HDL源程序作為歸檔文件,當(dāng)設(shè)計其他硬件電路時,可以使用文件中的某些硬件電路的工作原理和邏輯關(guān)系,而閱讀原理圖,推知其工作原理卻需要較多的硬件知識和經(jīng)驗,并且看起來也不那么一目了然。

7.4VHDL的基本文法

7.4.1基本語言要素

1.注釋

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

2.標(biāo)識符

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

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

(2)必須以英文字母開頭。

(3)末字符不能為下劃線。

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

(5)不區(qū)分大小寫字母。

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

3.數(shù)據(jù)對象

VHDL中的數(shù)據(jù)對象有三種:信號、變量和常量。信號表示電路接線上的邏輯信號;變量表示數(shù)據(jù)值,用于行為模型中的計算;常量是一個固定的值,作用是使設(shè)計實體中的常數(shù)更容易閱讀和修改。常量只要被賦值就不能再改變。

4.數(shù)據(jù)類型

1)位(BIT)和位矢量(BIT_VECTOR)

位的取值是0或1;位矢量是用雙引號括起來的一組位數(shù)據(jù),使用位矢量必須注明位寬。

2)標(biāo)準(zhǔn)邏輯位(STD_LOGIC)和標(biāo)準(zhǔn)邏輯矢量(STD_LOGIC_VECTOR)

在IEEE庫的程序包STD_LOGIC1164中,定義了兩個重要的數(shù)據(jù)類型,即STD_LOGIC(標(biāo)準(zhǔn)邏輯位)和STD_LOGIC_VECTOR(標(biāo)準(zhǔn)邏輯矢量),該數(shù)據(jù)類型可以更精確地表示實際電路的信號值。

STD_LOGIC數(shù)據(jù)可以包含如下9種不同取值:

(1)“0”———正常0。

(2)“1”———正常1。

(3)“Z”———高阻。

(4)“_”———不可能情況。

(5)“L”———弱信號0。

(6)“H”———弱信號1。

(7)“U”———未初始化值。

(8)“X”———未知值。

(9)“W”———弱未知信號值。

3)整數(shù)(INTEGER)

整數(shù)類型的數(shù)代表正整數(shù)、負整數(shù)和零,表示的范圍為-(231-1)~(231-1),它與算術(shù)整數(shù)相似,可進行“+”“-”“*”“/”等算術(shù)運算,不能用于邏輯運算。

4)布爾量(BOOLEAN)

一個布爾量有兩個狀態(tài):“真”或“假”。布爾量不屬于數(shù)值,因此不能用于運算,它只能通過關(guān)系運算符獲得。

5)枚舉類型

用戶通過枚舉類型可以定義數(shù)據(jù)對象所有可能的取值。其文法表示如下:

TYPEidentifierIS(value1,value2,…);

6)陣列類型

用戶通過陣列類型可以將同一類型的單個數(shù)據(jù)對象組織成為一維或多維的陣列。其文法表示如下:

TYPEidentifierISARRAY(range)OFtype;

7)子類型

子類型是某一個類型的子集。其文法表示如下:

SUBTYPEidentifierIStypeRANGErange;

5.數(shù)據(jù)對象運算操作符

1)邏輯運算操作符

NOT(非)

OR(或)

AND(與)

NOR(或非)

NAND(與非)

XOR(異或)

2)算術(shù)運算操作符

+(加)

-(減)

*(乘)

/(除)

MOD(求模)

REM(取余)ABS(取絕對值)**(乘方)&(并置)

ABS(取絕對值)

3)關(guān)系運算操作符

4)移位運算操作符

6.實體(ENTITY)

實體定義電路模塊的名字和接口,其中接口部分包含了該電路模塊的輸入和輸出信號。其文法表示如下:

ENTITY實體名IS

PORT(端口名和類型);

END實體名;

7.結(jié)構(gòu)體(ARCHITECTURE)

1)針對數(shù)據(jù)流模型的結(jié)構(gòu)體文法表示

其中并行賦值語句是并行執(zhí)行的。

2)針對行為模型的結(jié)構(gòu)體文法表示

3)針對結(jié)構(gòu)模型的結(jié)構(gòu)體文法表示

8.包(PACKAGE)

1)包聲明和包體

包聲明中包含了所有被實體(ENTITY)共享的相關(guān)定義項,即這些定義項對實體ENTITY是可見的。包體中的內(nèi)容就是包聲明中所涉及的函數(shù)和子程序的具體實現(xiàn)。

2)包的使用

可以通過LIBRARY和USE語句來使用一個包。對應(yīng)的文法如下:

LIBRARY庫名;

USE庫名.包名.ALL;

7.4.2數(shù)據(jù)流模型中的并行語句

1.并行信號賦值語句

并行信號賦值語句將一個值或一個表達式的計算結(jié)果賦值給一個信號。并行信號賦值語句能夠轉(zhuǎn)入執(zhí)行的條件是表達式的值發(fā)生了變化。注意,被賦值信號的變化需要一定的延遲才能實現(xiàn),即信號賦值不是立刻發(fā)生的。其對應(yīng)的文法如下:

信號<=表達式;

2.條件信號賦值語句

條件信號賦值語句按照不同的條件對信號賦予不同的值。該語句轉(zhuǎn)入執(zhí)行的條件是條件或表達式的值發(fā)生了變化。其對應(yīng)的文法如下

3.選擇信號賦值語句

選擇信號賦值語句根據(jù)選擇條件表達式對信號賦予不同的值。該語句轉(zhuǎn)入執(zhí)行的條件是條件或表達式的值發(fā)生了變化。其對應(yīng)的文法如下:

7.4.3行為模型中的串行語句

1.進程(PROCESS)

在進程模塊中包含的語句都是串行執(zhí)行的,而進程語句自身是一個并行語句,即多個進程語句之間是并行執(zhí)行的。多個進程模塊可以和并行語句組合在一起使用。其對應(yīng)的文法如下:

2.串行信號賦值語句

串行信號賦值語句的結(jié)構(gòu)和并行信號賦值語句是一樣的,只是它的執(zhí)行機制是串行執(zhí)行的。

其對應(yīng)的文法如下:

信號<=計算表達式;

3.變量賦值語句

變量賦值語句將一個值或表達式的計算結(jié)果賦值給一個變量。變量賦值語句對變量的賦值操作是立刻執(zhí)行的,不存在延遲。變量只能在進程模塊內(nèi)部定義。其對應(yīng)的文法是:

變量:=表達式;

4.WAIT語句

如果一個進程的敏感信號表不為空,則在執(zhí)行完進程中的最后一條語句后將被掛起。也可以利用WAIT語句來掛起一個進程。對應(yīng)的文法如下:

WAITUNTIL條件表達式;

5.IF_THEN_ELSE語句

6.CASE語句

7.NULL語句

NULL語句代表一個空操作語句,它的執(zhí)行不會引起任何操作。其對應(yīng)的文法如下:

NULL;

8.FOR語句

9.WHILE語句

10.LOOP語句

11.EXIT語句

EXIT語句只能在LOOP語句的循環(huán)結(jié)構(gòu)中使用,它的執(zhí)行將使內(nèi)部循環(huán)被中斷。它的文法表示如下:

EXITWHEN條件表達式;

12.NEXT語句

NEXT語句只能在LOOP語句的循環(huán)結(jié)構(gòu)中使用,它的執(zhí)行將使當(dāng)前循環(huán)直接跳到循環(huán)底部并開始下一輪的循環(huán)。NEXT語句通常和FOR語句搭配使用,它的文法表示如下:

NEXTWHENcondition;

13.函數(shù)(FUNCTION)

14.子程序(PROCEDURE)

7.4.4結(jié)構(gòu)化模型的描述語句

1.元器件聲明(COMPONENT)語句

元器件聲明語句對元器件的名字和接口信號進行聲明,每一個元器件都有相應(yīng)的實體(EN_x0002_TITY)和結(jié)構(gòu)體(ARCHITECTURE)描述。元器件聲明語句中的元器件名字和接口信號必須與實體語句中的實體名和接口信號嚴格地一一對應(yīng)。它的文法表示如下:

2.端口映射(PORTMAP)語句

端口映射語句通過定義元器件在系統(tǒng)中的實際互連關(guān)系來實現(xiàn)元器件的實例化。它的文法表示如下:

標(biāo)號:元器件名PORTMAP(實際連接信號列表);

3.連接的斷開(OPEN)

在端口映射(PORTMAP)語句的實際連接信號列表中,沒有使用或沒有連接的端口可以用關(guān)鍵字OPEN來表示,例如:

4.生成(GENERATE)語句

生成(GENERATE)語句的作用類似于宏擴展,它可以描述同一元器件的多次實例化。它的文法表示如下:

7.5VHDL對基本電路行為的描述方法

1.VHDL的ENTITY結(jié)構(gòu)對電路接口的描述

一個半加器的電路結(jié)構(gòu)如圖7-2所示,它的輸入接口信號是a、b,輸出接口信號是sum、carry。一個電路模塊的接口是全部端口(PORT)的集合,在VHDL中一個端口就是一個信號,具有類型定義,如BIT;同時具有輸入/輸出方向定義,如IN、OUT、INOUT(雙向)。

圖7-2半加器的電路結(jié)構(gòu)

VHDL支持四種基本的對象類型:變量(VARIABLE)、

量(CONSTANT)、

信號(SIGNAL)和文件(FILE)。其中,變量和常量類型和傳統(tǒng)的編程語言定義一致,而信號類型是針對數(shù)字系統(tǒng)的描述而定義的,與變量類型的區(qū)別在于信號值是與時間相聯(lián)系的,信號的內(nèi)部表示是一個時間值的序列,該序列常被稱為信號的驅(qū)動序列。

2.VHDL的ARCHITECTURE結(jié)構(gòu)對電路行為的描述

圖7-2中的半加器電路的完整描述如下:

3.一個完整的全加器的VHDL描述

一個完整的全加器的電路結(jié)構(gòu)如圖7-3所示,對應(yīng)的完整的VHDL描述如下:圖7-3一個完整的全加器的電路結(jié)構(gòu)

在上述完整的VHDL描述中,有幾點需要注意:

(1)在程序段的頭兩行,在使用IEEE1164賦值系統(tǒng)之前需要加入LIBRARY和PACKAGE聲明語句。LIBRARY中包含了映射到實際文件目錄的邏輯單元,PACKAGE是類型定義、子程序和函數(shù)的集合,也包括用戶定義的PACKAGE和系統(tǒng)PACKAGE。

(2)在ARCHITECTURE中,電路門延遲被定義為一個常數(shù)類型,常數(shù)值在VHDL程序中是不能改變的。

(3)在ARCHITECTURE中,用來連接實際電路元件的內(nèi)部信號s1、s2和s3被定義為信號類型。

對于ARCHITECTURE中的簡單信號賦值語句的執(zhí)行機制,下列幾點是關(guān)鍵性的定義:

(1)一條語句能夠轉(zhuǎn)入執(zhí)行的前提條件是表達式敏感信號表中的信號有事件(EVENT)發(fā)生。

(2)信號賦值語句和電路中的信號存在一一對應(yīng)的關(guān)系。

(3)文本中的語句順序和實際的語句執(zhí)行順序沒有必然的聯(lián)系,信號賦值語句的執(zhí)行順序是由電路中的信號事件(EVENT)的傳播來決定的。

4.條件信號賦值語句

對于我們熟知的多路選擇器,一個四選一電路的VHDL描述如下:

7.6VHDL對復(fù)雜電路行為的描述方法

1.進程(PROCESS)語句的特點對于ARCHITECTURE中的PROCESS進程的執(zhí)行機制,下列幾點是關(guān)鍵性的定義:

(1)進程中的語句是順序執(zhí)行的,進程中可以包含信號賦值語句。

(2)進程體的結(jié)構(gòu)和常規(guī)C語言的函數(shù)非常相似,它們都對變量作聲明和引用,都采用IF-THEN、IF-THEN-ELSE、CASE、FOR和WHILE語句。

(3)進程和其他并行信號賦值語句的關(guān)系是并行執(zhí)行的。

(4)進程之間是并行執(zhí)行的。

(5)進程之間通過信號來通信。

(6)一個進程在仿真中的執(zhí)行時間是0秒,進程的執(zhí)行將產(chǎn)生未來的事件。

(7)以將一個進程等價地看做一個復(fù)雜的信號賦值語句,進程的外部行為和一個并行信號賦值語句是完全相同的,進程描述了更加復(fù)雜的事件產(chǎn)生和處理的操作。

(8)變量和信號在進程中的運用是不同的,信號與硬件電路中的連線相對應(yīng),變量用于標(biāo)識進程中運算的中間值。

將圖7-3中的全加器采用等價的兩個半加器結(jié)構(gòu)構(gòu)成,得到的電路結(jié)構(gòu)如圖7-4所示圖7-4含兩個半加器的全加器

2.乘法器的描述

利用PROCESS進程內(nèi)部語句串行執(zhí)行的特點,可以方便地對復(fù)雜的算法進行描述。

3.D觸發(fā)器的描述

如前所述,PROCESS進程語句的引入可以方便狀態(tài)存儲電路的描述。一個帶異步清零和置位的D觸發(fā)器的電路圖如圖7-5所示

圖7-5帶異步清零和置位的D觸發(fā)器

4.有限狀態(tài)機的描述

一個典型的有限狀態(tài)機的電路結(jié)構(gòu)如圖7-6所示。從圖中可知,有限狀態(tài)機可以分為組合邏輯和時序邏輯兩部分,組合邏輯部分用于實現(xiàn)輸出計算和下一狀態(tài)的計算,而時序邏輯部分則用于狀態(tài)存儲。與該電路結(jié)構(gòu)相對應(yīng),有限狀態(tài)機的描述也可以利用兩個PROCES

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論