計(jì)算機(jī)組成原理實(shí)踐環(huán)節(jié)課件第3部分:實(shí)驗(yàn)基礎(chǔ)2——able語(yǔ)言-_第1頁(yè)
計(jì)算機(jī)組成原理實(shí)踐環(huán)節(jié)課件第3部分:實(shí)驗(yàn)基礎(chǔ)2——able語(yǔ)言-_第2頁(yè)
計(jì)算機(jī)組成原理實(shí)踐環(huán)節(jié)課件第3部分:實(shí)驗(yàn)基礎(chǔ)2——able語(yǔ)言-_第3頁(yè)
計(jì)算機(jī)組成原理實(shí)踐環(huán)節(jié)課件第3部分:實(shí)驗(yàn)基礎(chǔ)2——able語(yǔ)言-_第4頁(yè)
計(jì)算機(jī)組成原理實(shí)踐環(huán)節(jié)課件第3部分:實(shí)驗(yàn)基礎(chǔ)2——able語(yǔ)言-_第5頁(yè)
已閱讀5頁(yè),還剩112頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、計(jì)算機(jī)組成原理實(shí)踐環(huán)節(jié)基礎(chǔ)2Able語(yǔ)言簡(jiǎn)介7/21/2022計(jì)算機(jī)組成原理可編程邏輯器件設(shè)計(jì)語(yǔ)言ABEL前言1 ABEL-HDL語(yǔ)言的基本語(yǔ)法2 ABEL-HDL語(yǔ)言源文件的基本結(jié)構(gòu)3 邏輯描述7/21/2022計(jì)算機(jī)組成原理 前言 開(kāi)發(fā)使用PLD的系統(tǒng)時(shí),應(yīng)使用語(yǔ)言或邏輯圖來(lái)描述該P(yáng)LD的功能,并通過(guò)編譯、連接、適配,產(chǎn)生可對(duì)芯片進(jìn)行編程的目標(biāo)艾件(該文件一股采用熔絲圖格式,如標(biāo)準(zhǔn)的JED文件),然后再下載并寫(xiě)入芯片中。7/21/2022計(jì)算機(jī)組成原理 常用的可編程邏輯器件設(shè)計(jì)語(yǔ)言為ABEL-HDL(ABEL硬件描述語(yǔ)言),它是DATA I/O公司開(kāi)發(fā)的一種可編程邏輯器件設(shè)計(jì)語(yǔ)言,它可支持

2、絕大多數(shù)可編程邏輯器件。7/21/2022計(jì)算機(jī)組成原理1 ABEL-HDL語(yǔ)言的基本語(yǔ)法1.1 ABEL源文件構(gòu)成 在用ABEL-HDL進(jìn)行邏輯設(shè)計(jì)時(shí),描述邏輯功能的源文件必須是符合ABEL-HDL語(yǔ)言語(yǔ)法規(guī)定的ASII碼文件。 7/21/2022計(jì)算機(jī)組成原理 ABEL-HDL源文件是由各種語(yǔ)句組成的,這些語(yǔ)句是由ABEL-HDL語(yǔ)言的基本符號(hào)構(gòu)成的,這些符號(hào)必須滿足一定的格式才能正確描述邏輯功能。語(yǔ)句的每一行最長(zhǎng)為150個(gè)字符。在源文件的語(yǔ)句中標(biāo)識(shí)符、關(guān)鍵字、數(shù)字之間至少必須有一個(gè)空格,以便將它們分隔開(kāi)來(lái)。但在標(biāo)識(shí)符列表中標(biāo)識(shí)符以逗號(hào)分隔。 7/21/2022計(jì)算機(jī)組成原理 在表達(dá)式中,

3、標(biāo)識(shí)符和數(shù)字用操作符或括號(hào)分隔??崭?、點(diǎn)號(hào)不能夾在標(biāo)識(shí)符、關(guān)鍵字、數(shù)字之間。如空格夾在標(biāo)識(shí)符、數(shù)字之間將會(huì)被看作兩個(gè)標(biāo)識(shí)符或數(shù)數(shù)字。以大寫(xiě)、小寫(xiě)或大小寫(xiě)混合寫(xiě)的關(guān)鍵字被看作同一個(gè)關(guān)鍵字,而以大寫(xiě)、小寫(xiě)或大小寫(xiě)混合寫(xiě)寫(xiě)的標(biāo)識(shí)符將被看作不同的標(biāo)識(shí)符。 7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理1.2 ASCII字符 在ABEL-HDL語(yǔ)言中,其合法的ASCII字符除了數(shù)字0-9,大小寫(xiě)的英文字母外,還包括空格符及下述符號(hào): ! # $ ? + & * ( ) ; : “ ,. /

4、%7/21/2022計(jì)算機(jī)組成原理1.3 標(biāo)識(shí)符 標(biāo)識(shí)符是用合法的ASCII字符按次序排列定義的名字,其作用是標(biāo)識(shí)器件、管腳、節(jié)點(diǎn)、集合、輸入輸出信號(hào)、常量、宏以及變量。所有的標(biāo)識(shí)符必須符合下述規(guī)定:1. 標(biāo)識(shí)符的長(zhǎng)度不超過(guò)31個(gè)字符;2. 標(biāo)識(shí)符必須以字母或下劃線開(kāi)始; 7/21/2022計(jì)算機(jī)組成原理3. 標(biāo)識(shí)符其他的宇母可采用大、小寫(xiě)字母、數(shù)字及下劃線;4. 標(biāo)識(shí)符中不能包括空格符;5. 除保留標(biāo)識(shí)符(即關(guān)鍵宇)外,標(biāo)識(shí)符中同一個(gè)字母的大、小寫(xiě)表示不同的含義;6. 除了合法的點(diǎn)擴(kuò)展外,標(biāo)識(shí)符中同一個(gè)字母的大、小寫(xiě)表示不同的含義。7/21/2022計(jì)算機(jī)組成原理 在ABEL-HDL中保留的

5、標(biāo)識(shí)符稱(chēng)為關(guān)鍵字,關(guān)鍵字不能用于命名器件、管腳、節(jié)點(diǎn)、集合、宏或信號(hào),而代表了這個(gè)字所特指的功能。7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理1.4 常量 在ABEL-HDL語(yǔ)言的邏輯描述中,常量用于賦值語(yǔ)句、真值表和測(cè)試向量的表達(dá),有時(shí)也用于給某些標(biāo)識(shí)符賦值,以使該標(biāo)識(shí)符在整個(gè)模塊的邏輯描述中代表該常量的值。 常量可以是數(shù)值常量,也可以是非數(shù)值的特殊常量。 7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理1.5 塊 塊是包含在一對(duì)大括號(hào)中的文本,它用于宏和指令。括號(hào)中的文本內(nèi)容可以是一行,也可以是多行。塊可以嵌套,即塊中包含塊。如在塊的文本的字符中包含了大

6、括號(hào),則應(yīng)在其之前加上反斜杠。7/21/2022計(jì)算機(jī)組成原理例如:This is a block再如:This is also a block,and it spans more than one line再如: A=B#C D=0,1&1,07/21/2022計(jì)算機(jī)組成原理1.6 注釋 注釋是對(duì)源文件的解釋?zhuān)⑨屢噪p引號(hào)開(kāi)始,以另一個(gè)雙引號(hào)或行結(jié)束符號(hào)結(jié)束,注釋不能用于關(guān)鍵字之間。 例如: “declaration section” module Basic_logic; ”gives the module a name(回車(chē))7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原

7、理1.7 數(shù)字 ABEL-HDL中的所有的數(shù)值運(yùn)算精度都是32位,合法的數(shù)值范圍是0232-1。 數(shù)字可采用二進(jìn)制、八進(jìn)制、十進(jìn)制或十六進(jìn)制,它們分別以符號(hào)b、o、d或h表示,如不用符號(hào)則認(rèn)為是十進(jìn)制數(shù)。 在ABEL-HDL中數(shù)字還可用字符表示,在字符之前加上單引號(hào)后,即以字母ASCII碼作為數(shù)值,例如a=h61,ab=h6162。7/21/2022計(jì)算機(jī)組成原理1.8 字符串 字符串用于標(biāo)題、模塊及選項(xiàng)的表達(dá),也用于管腳、節(jié)點(diǎn)和屬性的定義,它包含在一對(duì)單引號(hào)中。如字符串中有單引號(hào)或反斜杠,則必須在它們之前再加一反斜杠。字符串可寫(xiě)幾行,但不能超過(guò)324個(gè)字符。如:TITLE 1 to 8 li

8、ne demultiplexer;DMIP16L8;7/21/2022計(jì)算機(jī)組成原理1.9 運(yùn)算符 ABEL-HDL支持四類(lèi)基本運(yùn)算:邏輯運(yùn)算、算術(shù)運(yùn)算、關(guān)系運(yùn)算及賦值運(yùn)算。 1. 邏輯運(yùn)算 (1)非: ! 例 !A (2)與: & 例 A&B (3)或: # 例 A#B (4)異或 $ 例 A$B (5)同或 !$ 例 A!$B7/21/2022計(jì)算機(jī)組成原理2. 算術(shù)運(yùn)算 (1)取負(fù) - 例 -A (2)加 + 例A+B (3)減 - 例A-B (4)乘(無(wú)符號(hào)整數(shù)) * 例A*B (5)除(無(wú)符號(hào)整數(shù)) / 例A/B (6)取模(無(wú)符號(hào)整數(shù)) % 例A%B (7)左移 例A 例AB7/2

9、1/2022計(jì)算機(jī)組成原理3. 關(guān)系運(yùn)算 關(guān)系運(yùn)算為無(wú)符號(hào)運(yùn)算,其結(jié)果為位(布爾值)。 (1)等于: = 例A=B (2)不等號(hào): ! = 例A!=B (3)小于: 例AB (4)小于等于:= 例A 例AB (6)大于等于: = 例A=B 例如: 2=3 值為false 32 值為false7/21/2022計(jì)算機(jī)組成原理4. 賦值運(yùn)算組合輸出為(非時(shí)鐘賦值) =寄存器輸出為(時(shí)鐘賦值) :=7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理1.10 表達(dá)式和等式 表達(dá)式由標(biāo)示符和運(yùn)算符組成。在表達(dá)式中可出現(xiàn)任何邏輯、算術(shù)或關(guān)系運(yùn)算,表達(dá)式中的運(yùn)算次序按運(yùn)算優(yōu)先級(jí)決定,也可加括號(hào)

10、改變執(zhí)行次序。 賦值運(yùn)算僅用于等式,它將表達(dá)式的運(yùn)算結(jié)果通過(guò)等式賦給輸出信號(hào)(包括組合賦值和時(shí)序(寄存器)賦值)。一個(gè)信號(hào)可以被多次賦值,而其最終結(jié)果是所有這些賦值的或,而不是最后一次的賦值。 7/21/2022計(jì)算機(jī)組成原理1.12 引腳和寄存器的特別說(shuō)明1. 三態(tài)允許端: .OE,它為1有效,僅 適用于引腳。2. 寄存器復(fù)位端: .RS,它為1有效3. 寄存器置位端: .PR,它為1有效4. 寄存器時(shí)鐘: .CLK,它為上跳觸發(fā)5. JK觸發(fā)器輸入端: .J和.K6. T觸發(fā)器輸入端: .T7. RS觸發(fā)器輸入端: .R和.S8. D觸發(fā)器輸入端: .D也可使用:=7/21/2022計(jì)算機(jī)

11、組成原理1.13 集合 集合是作為一個(gè)獨(dú)立單元進(jìn)行操作的一組信號(hào)或常量。它采用一個(gè)標(biāo)識(shí)符,用方括號(hào)內(nèi)的一組信號(hào)或常量表示,其中的每一個(gè)信號(hào)或常量稱(chēng)為集合的元素。 定義集合的方法有枚舉法、界限符法或它們的組合。例如: ADD=A5,A4,A3,A2,A1,A0 為枚舉法 ADD=A5.A0 為界限符法 ADD=A5,A4,A3.A0 為兩種方法的組合 7/21/2022計(jì)算機(jī)組成原理 集合可以進(jìn)行邏輯、加、減、關(guān)系運(yùn)算。邏輯運(yùn)算是對(duì)集合中每一個(gè)元素作相應(yīng)的運(yùn)算,因此如果需對(duì)兩個(gè)或兩個(gè)以上集合進(jìn)行運(yùn)算時(shí),這些參與運(yùn)算的集合的元素?cái)?shù)目必須相同。但單個(gè)變量與集合進(jìn)行邏輯運(yùn)算為該變量與集合的每個(gè)元素進(jìn)行

12、邏輯運(yùn)算。加、減、關(guān)系運(yùn)算為對(duì)整個(gè)集合執(zhí)行該運(yùn)算。 7/21/2022計(jì)算機(jī)組成原理 例:(ADD=h10)&(ADD=hA000)&(AddrX,Y ) 0,0-0,0 0,1-0,1 1,0-0,1 1,1-1,0; End GATE7/21/2022計(jì)算機(jī)組成原理 在這個(gè)模塊中有標(biāo)頭段、定義段、邏輯描述段、測(cè)試向量段及結(jié)束語(yǔ)句段五部分組成。 在這五部分中,標(biāo)頭段為模塊的開(kāi)始;定義段的定義部分指定或定義用于設(shè)計(jì)的器件、信號(hào)、常量宏和庫(kù);邏輯描述段對(duì)所設(shè)計(jì)的邏輯進(jìn)行功能描述;測(cè)試向量段寫(xiě)出了測(cè)試向量,用以驗(yàn)證所設(shè)計(jì)的邏輯;結(jié)束語(yǔ)句段表示一個(gè)模塊的結(jié)束。 7/21/2022計(jì)算機(jī)組成原理 此外

13、在模塊中還允許有選擇地加上一些指令。每一個(gè)模塊只能有一個(gè)標(biāo)頭段,它與結(jié)束語(yǔ)句段配對(duì)使用,而定義段、邏輯描述段、測(cè)試向量段則可以任意次序重復(fù),定義語(yǔ)句必須緊跟標(biāo)頭或定義段的關(guān)鍵字。7/21/2022計(jì)算機(jī)組成原理2.2 標(biāo)頭段 在例1中標(biāo)頭段如下: Module GATE Options_trace wave Titleexample of gate 標(biāo)頭段包括模塊語(yǔ)句、選項(xiàng)和標(biāo)題三個(gè)元素組成。 7/21/2022計(jì)算機(jī)組成原理1. 模塊語(yǔ)句 模塊語(yǔ)句是必不可少的,其作用是命名模塊并標(biāo)志模塊的開(kāi)始,它與結(jié)束語(yǔ)句配對(duì)使用,同時(shí)也可指出是否利用啞元。 7/21/2022計(jì)算機(jī)組成原理 模塊語(yǔ)句的關(guān)鍵

14、字是Module,其格式為:Module modulename(dummy_arg,dummy_arg) 其中modulename為命名模塊的合法標(biāo)識(shí)符,在本例中為GATE。 dummy_arg是啞變量名稱(chēng),如不利用啞變量則可以略去。7/21/2022計(jì)算機(jī)組成原理 若模塊選用啞變量,則在使用語(yǔ)言處理程序處理模塊時(shí),可將真實(shí)變量傳給模塊。啞變量可為模塊引用。模塊中,凡帶有“?”的啞變量,語(yǔ)法分析程序都用真實(shí)變量將其替代。例: module my_example (A,B) C=?B+?A; end my_example7/21/2022計(jì)算機(jī)組成原理2. 選項(xiàng) 選項(xiàng)為可選語(yǔ)句。其作用是語(yǔ)言處理

15、器控制源文件的處理。 選項(xiàng)的關(guān)鍵字是Options,其格式為 Optionsstingstring為選項(xiàng)字符串。 7/21/2022計(jì)算機(jī)組成原理3. 標(biāo)題 標(biāo)題為可選語(yǔ)句,其作用是給出模塊一個(gè)標(biāo)題,此標(biāo)題將作為語(yǔ)言處理程序所生的編程器下載文件及設(shè)計(jì)編制文件的題頭。 標(biāo)題的關(guān)鍵字是Title,其格式為: Titlestring string為標(biāo)題字符串。 7/21/2022計(jì)算機(jī)組成原理2.3 定義段 在例1中定義段如下: Declarations gate DEVICEGAL16V8; A,B PIN 1,2; X,Y PIN 18,17; 定義段包括定義段關(guān)鍵字、器件定義、信號(hào)定義、常量定

16、義、宏定義、庫(kù)定義等元素。7/21/2022計(jì)算機(jī)組成原理 定義段的關(guān)鍵字是Declarations,后面可跟任何合法的定義語(yǔ)句。定義段的關(guān)鍵字允許定義段可在源文件的任何一部分進(jìn)行定義。如定義語(yǔ)句緊跟標(biāo)頭段,則可略去定義段關(guān)鍵字。7/21/2022計(jì)算機(jī)組成原理1. 器件定義 器件定義是可選項(xiàng),它的作用是將模塊中所使用的器件名與實(shí)際所采用的可編程邏輯器件聯(lián)系起來(lái)。 器件定義的關(guān)鍵字是DEVICE,其格式為 Device_id DEVICE real_device; 7/21/2022計(jì)算機(jī)組成原理 此表達(dá)式中,device_id為模塊中所使用的器件名,在本例中為gate。real_device

17、為實(shí)際際所使用的某一個(gè)特定可編程邏輯器件的型號(hào),在本例中為GAL16V8。值得注意的是device_id必須是合法的文件名,因?yàn)榫幊唐餮b載文件的文件名由device_id加上擴(kuò)展名“jde”產(chǎn)生的。 7/21/2022計(jì)算機(jī)組成原理2. 信號(hào)定義 信號(hào)定義包括了管腳定義、節(jié)點(diǎn)定義及屬性定義。其作用是定義信號(hào),并可選擇和管腳及節(jié)點(diǎn)相聯(lián)系。 節(jié)點(diǎn)/管腳定義用于定義信號(hào)名,并將信號(hào)同具體的器件節(jié)點(diǎn)/管腳序數(shù)聯(lián)系起來(lái)。如不用FUSASM和JEDSIM處理文件,可以不設(shè)定具體的器件節(jié)點(diǎn)/管腳序數(shù)。7/21/2022計(jì)算機(jī)組成原理 屬性用于定義信號(hào)的特性,它既可用于器件的節(jié)點(diǎn)/管腳說(shuō)明中,作為節(jié)點(diǎn)/管腳定

18、義的一部分,也可設(shè)在器件的節(jié)點(diǎn)/管腳定義之后,作為一個(gè)獨(dú)立的定義部分。它們的關(guān)鍵字分別為PIN,NODE,ISTYPE。7/21/2022計(jì)算機(jī)組成原理(1). 管腳定義 管腳定義的格式為:!pin_id,!pin_idPINpin#,pin#ISTYPEattributes;其中!pin_id是邏輯設(shè)計(jì)中用于指示模塊中管腳的標(biāo)識(shí)符,pin#為實(shí)際器件中的管腳(可為?,由系統(tǒng)分配),attributes為在節(jié)點(diǎn)可編程的器件中用于指明屬性的字符串,有以下幾種: 7/21/2022計(jì)算機(jī)組成原理7/21/2022計(jì)算機(jī)組成原理例:!Clock,Rest,SI pin in U12,12,15,3;

19、 這行代碼將器件U12的管腳12,15,3分別用標(biāo)示符Clock,Rest,SI來(lái)表示。若模塊中不止定義一個(gè)器件,必須用語(yǔ)句中的in項(xiàng)來(lái)指明器件。7/21/2022計(jì)算機(jī)組成原理例: 管腳的屬性可由語(yǔ)句中的屬性項(xiàng)或ISTYPE語(yǔ)句定義,比如 FO pin 13=neg,reg;7/21/2022計(jì)算機(jī)組成原理(2). 節(jié)點(diǎn)定義 節(jié)點(diǎn)定義的格式為:!node_id,!node_idNODEnode#,node#IETYPEattributes;其中!node_id是邏輯設(shè)計(jì)中用于表示節(jié)點(diǎn)的標(biāo)識(shí)符,node #為實(shí)際器件中的節(jié)點(diǎn)號(hào),Attributes為在節(jié)點(diǎn)可編程的器件中用于指明屬性的字符串(同

20、管腳定義)。 7/21/2022計(jì)算機(jī)組成原理 關(guān)鍵字NODE并沒(méi)有把信號(hào)限制在器件上的內(nèi)部節(jié)點(diǎn)上,當(dāng)一個(gè)信號(hào)用NODE定義后,也可能被器件裝配器分配給器件的I/O引腳上。7/21/2022計(jì)算機(jī)組成原理(3). 屬性定義 屬性定義的格式為:signalsignalPIN NODE# #SISTYPEattributes,attributes;signal是管腳或節(jié)點(diǎn)的標(biāo)識(shí)符,attributes為指明屬性的字符串。 7/21/2022計(jì)算機(jī)組成原理例: FO , A istype neg,latch;將FO和A定義為負(fù)極性鎖存信號(hào)7/21/2022計(jì)算機(jī)組成原理常量定義 常量定義用于定義模塊

21、中的常量,常量的關(guān)鍵字是=,其格式為: id ,id = expr ,expr ; id為模塊中所使用的常量的標(biāo)識(shí)符。 expr為定義常量值的表達(dá)式。7/21/2022計(jì)算機(jī)組成原理例:A , B , C = 5 , 1,0 , 6;G = 1,2 + 3,47/21/2022計(jì)算機(jī)組成原理4. 宏定義 宏定義用于定義模塊中的宏。這個(gè)宏包含了源文件中的某一部分,這樣,用戶在建立文件時(shí),不必每次書(shū)寫(xiě)相同的內(nèi)容,而可以調(diào)用宏。 7/21/2022計(jì)算機(jī)組成原理 宏定義的關(guān)鍵字是MACRO,其格式為:Macro_id MACRO(dummy_arg,dummy_arg)block; Macro_id

22、為表示宏的宏的標(biāo)識(shí)符。 dummy_arg為啞變量。 block為塊。7/21/2022計(jì)算機(jī)組成原理例:若定義了NAND3 MACRO(A,B,C)!(?A&?B&?C;則引用D=NAND3(Clock,Hello,Busy);相當(dāng)于D=!(Clock&Hello&Busy);7/21/2022計(jì)算機(jī)組成原理5. 庫(kù)定義 庫(kù)定義的關(guān)鍵字是Library,其格式為: Libraryname name為定義庫(kù)文件名的字符串,不含擴(kuò)展名。 庫(kù)定義使用戶指定的文件內(nèi)容從name.inc 庫(kù)文件中抽取出來(lái),并被插到源文件中。7/21/2022計(jì)算機(jī)組成原理2.4 邏輯描述段 在例1中邏輯描述段如下:

23、Equations X=A&B; Y=A$B; ABEL-HDL語(yǔ)言描述邏輯的方式有方程、真值表、狀態(tài)圖、熔絲和異或因子,其中每一種描述方法均以關(guān)鍵字或符號(hào)開(kāi)始,以引導(dǎo)某種描述的開(kāi)始。7/21/2022計(jì)算機(jī)組成原理方程的形式 它以擴(kuò)展的布爾方程來(lái)描述邏輯功能; 方程語(yǔ)句表示與某個(gè)器件相關(guān)的一組方程的開(kāi)始; 方程語(yǔ)句的關(guān)鍵字是Epuations,其賦值符為=或:=,其中:=為組合邏輯的賦值操作符,:=為時(shí)序邏輯的賦值操作符。7/21/2022計(jì)算機(jī)組成原理 在方程中允許使用WHEN-THEN-ElSE語(yǔ)句。 方程的表達(dá)形式如下:EquationsWHEN condition THEN ! el

24、ement = expression;ELSE equations; 或者7/21/2022計(jì)算機(jī)組成原理WHEN condition THEN equations;ELSE equations; 其中condition 為任何合法的表達(dá)式。 element 命名一個(gè)或一組信號(hào),或一個(gè)實(shí)際集合的一個(gè)標(biāo)識(shí)符。 equation 為任何合法的表達(dá)式。7/21/2022計(jì)算機(jī)組成原理2. 真值表的形式 它以表格的形式描述了輸出與輸入邏輯之間的關(guān)系。真值表由表頭向量和表格組成。7/21/2022計(jì)算機(jī)組成原理(1). 表頭向量它的關(guān)鍵字是TRUTH TABLE,它的表達(dá)形式為: TRUTH TABLE

25、(in ids-out ids) inputs-outputs;或者 TRUTH TABLE(in ids:reg ids) inputs:regs outs;或者 TRUTH TABLE(in ids:reg ids-out ids) inputs:regs outs-outputs;7/21/2022計(jì)算機(jī)組成原理 其中in ids為邏輯關(guān)系中的輸入信號(hào)標(biāo)識(shí)符。 out ids為邏輯關(guān)系中的輸出信號(hào)標(biāo)識(shí)符。 reg ids為邏輯關(guān)系中的寄存器型信號(hào)標(biāo)識(shí)符。 inputs為邏輯關(guān)系中的輸入信號(hào)。 outputs為邏輯關(guān)系中的輸出信號(hào)。 reg outs為信號(hào)寄存后的輸出。7/21/2022計(jì)

26、算機(jī)組成原理 這三種形式中第一種適合于描述組合邏輯,第二種適合于描述時(shí)序邏輯,第三種適合于描述既包含組合邏輯又包含時(shí)序邏輯的較復(fù)雜的邏輯電路。 符號(hào)-表示輸入輸出關(guān)系為組合型,符號(hào):表示輸入輸出關(guān)系為寄存器型。7/21/2022計(jì)算機(jī)組成原理(2). 真值表格式 格式由真值表的表頭向量定義,真值表本身即為按格式定義格式排列的一組輸入輸出信號(hào)。真值表中使用的所用信號(hào)必須是常量。7/21/2022計(jì)算機(jī)組成原理例:定義帶使能的異或門(mén) truth_table inIC6 (EN,A,B-C) 0, .X., .X.-.X.; 1, 0, 0-0; 1, 0, 1-1; 1, 1, 0-1; 1, 1

27、, 1-0;7/21/2022計(jì)算機(jī)組成原理例: 定義一個(gè)簡(jiǎn)單的狀態(tài)機(jī)。當(dāng)前狀態(tài)用放在一個(gè)集合里的信號(hào)A,B表示,下一個(gè)狀態(tài)用寄存器輸出信號(hào)C,D表示,它們也放在一個(gè)集合中。輸出信號(hào)為一簡(jiǎn)單的組合型信號(hào)。 該狀態(tài)機(jī)工作時(shí),在各狀態(tài)之間循環(huán)。當(dāng)A=0,B=1時(shí),將E置為低電平。7/21/2022計(jì)算機(jī)組成原理truth_table inIC17(A,B:C,D-E)0,0:0,1-1;0,1:1,0-0;1,0:1,1-1;1,1:0,0-1;也可寫(xiě)為truth_table inIC17(A,B:C,D-E)0:1-1;1:2-0;2:3-1;3:0-1;7/21/2022計(jì)算機(jī)組成原理3. 狀

28、態(tài)圖的形式 狀態(tài)圖采用了狀態(tài)機(jī)的結(jié)構(gòu),專(zhuān)門(mén)用于描述時(shí)序邏輯,它可以更簡(jiǎn)便地設(shè)計(jì)如計(jì)數(shù)器、順序控制器等狀態(tài)機(jī)構(gòu)。7/21/2022計(jì)算機(jī)組成原理 它的關(guān)鍵字是STATE DIAGRAM,其表達(dá)形式為: STATE DIAGRAM State reg -state out STATE state exp equation equation . . . trans-stmt7/21/2022計(jì)算機(jī)組成原理(1). IF-THEN-THEN語(yǔ)句語(yǔ)法:if 表達(dá)式 then 狀態(tài)表達(dá)式 else 狀態(tài)表達(dá)式;例: if X-Y then J else K;若X-Y不等于零,轉(zhuǎn)入J態(tài),否則轉(zhuǎn)入K態(tài)。 7/

29、21/2022計(jì)算機(jī)組成原理(2). 鏈?zhǔn)絀F-THEN-THEN語(yǔ)句語(yǔ)法:if 表達(dá)式 then 狀態(tài)表達(dá)式 else 狀態(tài)表達(dá)式; else if 表達(dá)式 then 狀態(tài)表達(dá)式 else if 表達(dá)式 then 狀態(tài)表達(dá)式 else 狀態(tài)表達(dá)式 可鏈接的數(shù)目沒(méi)有限制,但最后一個(gè)語(yǔ)句必須以分號(hào)結(jié)尾7/21/2022計(jì)算機(jī)組成原理(3). CASE-ENDCASE語(yǔ)句語(yǔ)法:case 表達(dá)式:狀態(tài)表達(dá)式; 表達(dá)式:狀態(tài)表達(dá)式; 表達(dá)式:狀態(tài)表達(dá)式; endcase;7/21/2022計(jì)算機(jī)組成原理例: case a=0:1; a=1:2; a=2:3; a=3:0; endcase7/21/20

30、22計(jì)算機(jī)組成原理(4). GOTO語(yǔ)句 語(yǔ)法:goto 狀態(tài)表達(dá)式; 例: goto x+y;7/21/2022計(jì)算機(jī)組成原理5. 異或因子的形式 異或因子部分可以指定一個(gè)布爾表達(dá)式,這個(gè)表達(dá)式從簡(jiǎn)化的乘積形式方程中提取公因子,并與這個(gè)方程異或。這樣當(dāng)一個(gè)設(shè)計(jì)在具有異或門(mén)結(jié)構(gòu)的器件中實(shí)現(xiàn)時(shí),可以大大地簡(jiǎn)化方程的表達(dá)式。7/21/2022計(jì)算機(jī)組成原理 它的關(guān)鍵字是XOR_Factors,表達(dá)式為: XOR_Factors Singal_name = xor_factors 式中Singal_name為信號(hào)名, xor_factors為異或表達(dá)式。7/21/2022計(jì)算機(jī)組成原理6. 關(guān)于點(diǎn)擴(kuò)

31、展 點(diǎn)擴(kuò)展的語(yǔ)言符號(hào)為Singal_name.ext信號(hào)點(diǎn)擴(kuò)展類(lèi)似于屬性,它可以精確地描述電路的行為,其主要應(yīng)用是復(fù)雜的語(yǔ)言情況。7/21/2022計(jì)算機(jī)組成原理2.5.測(cè)試向量段 在例1中測(cè)試向量段如下: Test_vections ( A,B-X,Y ) 0,0-0,0 0,1-0,1 1,0-0,1 1,1-1,0;7/21/2022計(jì)算機(jī)組成原理 測(cè)試向量段是可選項(xiàng),它包括了測(cè)試向量和跟蹤說(shuō)明兩部分。 測(cè)試向量用于驗(yàn)證邏輯設(shè)計(jì)的功能,它通過(guò)定義輸出為輸入的一個(gè)函數(shù)來(lái)指定用戶所期望的器件的邏輯運(yùn)算,以便在仿真時(shí)確定邏輯功能是否正確。 7/21/2022計(jì)算機(jī)組成原理 測(cè)試向量的關(guān)鍵字是T

32、est_vectors,測(cè)試向量的表達(dá)形式為: Test_vectors note ( input ,input-output,output ) invalues-outvalues;7/21/2022計(jì)算機(jī)組成原理其中note為說(shuō)明測(cè)試向量的字符串。 inputs表示輸入信號(hào)或輸入反饋信號(hào)的一個(gè)或一組標(biāo)識(shí)符。 outputs表示一個(gè)或一組器件輸出信號(hào)的一個(gè)或一組標(biāo)識(shí)符。 invalues輸入值或其集合。 outvalues由給定的輸入得到的輸出值或其集合。 7/21/2022計(jì)算機(jī)組成原理 測(cè)試向量表的格式由表頭格式所決定,每一向量中的信號(hào)都按表頭格式語(yǔ)句中的定義進(jìn)行排列。測(cè)試向量表中列出了

33、各種輸入信號(hào)的組合及相應(yīng)的輸出信號(hào),這些信號(hào)組合可包含所有的組合形式或其中的一部分。表中所有的信號(hào)值必須為定義過(guò)的常量、數(shù)值常量或特殊常且如.X. .C.等。7/21/2022計(jì)算機(jī)組成原理例: test_vectors(A,B-C,D) 0,0-1,1; 0,1-1,0; 1,0-0,1; 1,1-0,0;7/21/2022計(jì)算機(jī)組成原理 對(duì)于采用狀態(tài)機(jī)描述的邏輯,其測(cè)試向量必須是順序的,即必須通過(guò)合法的狀態(tài)轉(zhuǎn)換。 跟蹤說(shuō)明用來(lái)控制PLAsim和Jedsim模擬結(jié)果的顯示特性。 跟蹤說(shuō)明的關(guān)鍵字是TRACE,其表達(dá)形式為: TRACE(inputs-outputs)7/21/2022計(jì)算機(jī)組

34、成原理2.6 結(jié)束段 在例1中結(jié)束段如下: END GATE 它標(biāo)志一個(gè)模塊的結(jié)束。它的關(guān)鍵字是END,表示形式為: END module_name;7/21/2022計(jì)算機(jī)組成原理2.7 指示字 在源文件中還允許有選擇地加上一些指令。這些指令被處理時(shí),可能影響源文件的內(nèi)容。 指令的關(guān)鍵字是,表示形式為: directive option7/21/2022計(jì)算機(jī)組成原理3 邏輯描述 ABEL-HDL語(yǔ)言描述邏輯的主要方式是方程、真值表及狀態(tài)圖,用戶可選用最適合其設(shè)計(jì)的邏輯的一種方法或者選用這三種方法中的兩種或三種來(lái)描述。7/21/2022計(jì)算機(jī)組成原理方程的形式 它以擴(kuò)展的布爾方程來(lái)描述邏輯功能。根據(jù)采用的賦值符,這種方法可描述組合邏輯或者時(shí)序邏輯。方程中便用的WHEN-THEN-ELSE語(yǔ)句則使邏輯描

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論