數(shù)電課件 邏輯代數(shù)與硬件描述語言基礎(chǔ)_第1頁
數(shù)電課件 邏輯代數(shù)與硬件描述語言基礎(chǔ)_第2頁
數(shù)電課件 邏輯代數(shù)與硬件描述語言基礎(chǔ)_第3頁
數(shù)電課件 邏輯代數(shù)與硬件描述語言基礎(chǔ)_第4頁
數(shù)電課件 邏輯代數(shù)與硬件描述語言基礎(chǔ)_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2 .邏輯代數(shù)與硬件描述語言基礎(chǔ)2.1 邏輯代數(shù) 2.2 邏輯函數(shù)的卡諾圖化簡法 2.3 硬件描述語言Verilog HDL基礎(chǔ) 教學(xué)基本要求1、熟悉邏輯代數(shù)常用基本定律、恒等式和規(guī)則。3、熟悉硬件描述語言Verilog HDL2、掌握邏輯代數(shù)的變換和卡諾圖化簡法; 2.1.1 邏輯代數(shù)的基本定律和恒等式2.1 邏輯代數(shù)2.1.3 邏輯函數(shù)的變換及代數(shù)化簡法2.1.2 邏輯代數(shù)的基本規(guī)則2.1 邏輯代數(shù)邏輯代數(shù)又稱布爾代數(shù)。它是分析和設(shè)計現(xiàn)代數(shù)字邏輯電路不可缺少的數(shù)學(xué)工具。邏輯代數(shù)有一系列的定律、定理和規(guī)則,用于對數(shù)學(xué)表達式進行處理,以完成對邏輯電路的化簡、變換、分析和設(shè)計。邏輯關(guān)系指的是事件

2、產(chǎn)生的條件和結(jié)果之間的因果關(guān)系。在數(shù)字電路中往往是將事情的條件作為輸入信號,而結(jié)果用輸出信號表示。條件和結(jié)果的兩種對立狀態(tài)分別用邏輯“1” 和“0”表示。1 1、基本公式基本公式交換律:A + B = B + AA B = B A結(jié)合律:A + B + C = (A + B) + C A B C = (A B) C 分配律:A + BC = ( A + B )( A + C )A ( B + C ) = AB + AC A 1 = AA 0 = 0A + 0 = AA + 1 = 10-1律:A A = 0A + A = 1互補律:2.1.1邏輯代數(shù)的基本定律和恒等式重疊律:A + A = A

3、A A = A反演律:AB = A + B A + B = A BAA BAB() ()ABACABCABAAAABA()吸收律 其它常用恒等式 ABACBCAB + ACABACBCDAB + AC2、基本公式的證明例 證明ABA BABA B,列出等式、右邊的函數(shù)值的真值表(真值表證明法)011 = 001+1=00 01 1110 = 101+0=00 11 0101 = 100+1=01 00 1100 = 110+0=11 10 0A+BA+BA B A BABA B 2.1.2 邏輯代數(shù)的基本規(guī)則 1. 代入規(guī)則 : 在包含變量A邏輯等式中,如果用另一個函數(shù)式代入式中所有A的位置,

4、則等式仍然成立。這一規(guī)則稱為代入規(guī)則。例:B (A + C) = BA+BC,用A + D代替A,得B (A +D) +C = B(A +D) + BC = BA + BD + BC代入規(guī)則可以擴展所有基本公式或定律的應(yīng)用范圍對于任意一個邏輯表達式L,若將其中所有的與( )換成或(+),或(+)換成與();原變量換為反變量,反變量換為原變量;將1換成0,0換成1;則得到的結(jié)果就是原函數(shù)的反函數(shù)。2. 反演規(guī)則:)(1)(DCBADCB)(AL 0 CDBAL例2.1.1 試求 的非函數(shù)解:按照反演規(guī)則,得 LABAC 對于任何邏輯函數(shù)式,若將其中的與( )換成或(+),或(+)換成與();并將

5、1換成0,0換成1;那么,所得的新的函數(shù)式就是L的對偶式,記作 。 L()()LAB A C例: 邏輯函數(shù) 的對偶式為3. 對偶規(guī)則:當某個邏輯恒等式成立時,則該恒等式兩側(cè)的對偶式也相等。這就是對偶規(guī)則。利用對偶規(guī)則,可從已知公式中得到更多的運算公式,例如,吸收律“或-與”表達式“與非-與非”表達式 “與-或-非”表達式“或非或非” 表達式“與-或” 表達式 2.1.3 邏輯函數(shù)的代數(shù)法化簡 DCACL DC A C = )DC)(CA( )C+D()CA( DCCA 1、邏輯函數(shù)的最簡與-或表達式在若干個邏輯關(guān)系相同的與-或表達式中,將其中包含的與項數(shù)最少,且每個與項中變量數(shù)最少的表達式稱為

6、最簡與-或表達式。2、邏輯函數(shù)的化簡方法 化簡的主要方法:公式法(代數(shù)法)圖解法(卡諾圖法)代數(shù)化簡法: 運用邏輯代數(shù)的基本定律和恒等式進行化簡的方法。 1AA并項法: CBA CBAL BA)CC(BA 1 AAABBA 吸收法: A + AB = A 消去法: BABAA CABAB CAB 配項法: CA=AB BAFEBCDABAL )(CBAAB)( CBCAABL A+AB=A+BCBCAABL CBAACAAB)( CBACABCA=AB )()(BCACACABAB )CC(DBADBA)DD(ABL DBADBA=AB )(DDBAAB BAAB BAAB BAAB CDBA

7、DCBAABDDBADABL )例2.1.7 已知邏輯函數(shù)表達式為,要求:(1)最簡的與-或邏輯函數(shù)表達式,并畫出相應(yīng)的邏輯圖;(2)僅用與非門畫出最簡表達式的邏輯圖。解:) B A L AB BA & & & & & CBACBA CBACBA CBACBA B L CBA 1 1 1 A C CBA 1 1 1 CBACBAL 例2.1.8 試對邏輯函數(shù)表達式進行變換,僅用或非門畫出該表達式的邏輯圖。解: CBACBAL 2.2 邏輯函數(shù)的卡諾圖化簡法2.2.2 邏輯函數(shù)的最小項表達式2.2.1 最小項的定義及性質(zhì)2.2.4 用卡諾圖化簡邏輯函數(shù)2.

8、2.3 用卡諾圖表示邏輯函數(shù)1.邏輯代數(shù)與普通代數(shù)的公式易混淆,化簡過程要求對所有公式熟練掌握;2.代數(shù)法化簡無一套完善的方法可循,它依賴于人的經(jīng)驗和靈活性;3.用這種化簡方法技巧強,較難掌握。特別是對代數(shù)化簡后得到的邏輯表達式是否是最簡式判斷有一定困難??ㄖZ圖法可以比較簡便地得到最簡的邏輯表達式。代數(shù)法化簡在使用中遇到的困難:n個變量X1, X2, , Xn的最小項是n個因子的乘積,每個變量都以它的原變量或非變量的形式在乘積項中出現(xiàn),且僅出現(xiàn)一次。一般n個變量的最小項應(yīng)有2n個。 BAACBA、 、A(B+C)等則不是最小項。例如,A、B、C三個邏輯變量的最小項有(23)8個,即 CBACB

9、ACBABCACBACBACABABC、1. 最小項的意義2.2 .1 最小項的定義及其性質(zhì)對于變量的任一組取值,全體最小項之和為1。對于任意一個最小項,只有一組變量取值使得它的值為1; 對于變量的任一組取值,任意兩個最小項的乘積為0;CBABCACBACBACBACABABCCBAABC0 00 00 01 10 00 00 00 00 00 00 00 00 01 10 01 10 00 00 00 00 00 00 01 10 00 00 01 10 00 00 00 00 01 10 00 00 00 00 00 01 10 00 00 00 01 11 10 00 00 01 10

10、00 00 00 01 10 01 10 00 00 00 00 01 10 00 01 11 10 00 00 00 00 00 00 01 10 01 11 11 10 00 00 00 00 00 00 01 1三個變量的所有最小項的真值表 2、最小項的性質(zhì) 3、最小項的編號 三個變量的所有最小項的真值表 m0m1m2m3m4m5m6m7最小項的表示:通常用mi表示最小項,m 表示最小項,下標i為最小項號。 ABC0 00 00 01 10 00 00 00 00 00 00 00 00 01 10 01 10 00 00 00 00 00 00 01 10 00 00 01 10 00

11、 00 00 00 01 10 00 00 00 00 00 01 10 00 00 00 01 11 10 00 00 01 10 00 00 00 01 10 01 10 00 00 00 00 01 10 00 01 11 10 00 00 00 00 00 00 01 10 01 11 11 10 00 00 00 00 00 00 01 1CBABCACBACBACBACABABCCBA 2.2.2 邏輯函數(shù)的最小項表達式 ( ,)()()L A B CAB CCA BB Cl為“與或”邏輯表達式; l 在“與或”式中的每個乘積項都是最小項。例1 將( , ,)L A B CABAC

12、化成最小項表達式ABCABCABCABC= m7m6m3m5 (7, 6 3 5)m, ,()L ABCABCABCABCABC邏輯函數(shù)的最小項表達式:( , ,)()L A B CABABC AB 例2 將 化成最小項表達式 a.去掉非號()()L A,B,CABABCAB()AB AB CAB()()AB AB CABb.去括號ABCABCAB()ABCABCAB CCABCABCABCABC3576(3,5,6,7)mmmmm2.2.3 用卡諾圖表示邏輯函數(shù)1、卡諾圖的引出卡諾圖:將n變量的全部最小項都用小方塊表示,并使具有邏輯相鄰的最小項在幾何位置上也相鄰地排列起來,這樣,所得到的圖形

13、叫n變量的卡諾圖。邏輯相鄰的最小項:如果兩個最小項只有一個變量互為反變量,那么,就稱這兩個最小項在邏輯上相鄰。如最小項m6=ABC、與m7 =ABC 在邏輯上相鄰m7m6AB10100100011110 m0 m1 m2 m3 m4 m5 m6 m7 m12 m13 m14 m15 m8 m9 m10 m110001111000011110ABCD三變量卡諾圖四變量卡諾圖BABABAAB兩變量卡諾圖m0m1m2m3ACCCBABCACBABCACBACBACBAABCCAB m0 m1 m2 m3 m4 m5 m6 m7ADBB2、卡諾圖的特點:各小方格對應(yīng)于各變量不同的組合,而且上下左右在幾

14、何上相鄰的方格內(nèi)只有一個因子有差別,這個重要特點成為卡諾圖化簡邏輯函數(shù)的主要依據(jù)。 3. 已知邏輯函數(shù)畫卡諾圖當邏輯函數(shù)為最小項表達式時,在卡諾圖中找出和表達式中最小項對應(yīng)的小方格填上1,其余的小方格填上0(有時也可用空格表示),就可以得到相應(yīng)的卡諾圖。任何邏輯函數(shù)都等于其卡諾圖中為1的方格所對應(yīng)的最小項之和。例1:畫出邏輯函數(shù)L(A, B, C, D)= m(0, 1, 2, 3, 4, 8, 10, 11, 14, 15)的卡諾圖 1 1 1 1 1 0 0 0 0 0 1 1 1 0 1 1 10 11 01 00 CD 00 01 11 10 AB L ( ,)()()()L A B

15、C DABCD ABCD ABCD()()ABCDABCDLABCDABCDABCDABCDABCD例2 畫出下式的卡諾圖 10 11 01 00 CD 00 01 11 10 AB L 00000 1 1 1 1 1 1 1 1 1 1 1 解1. 將邏輯函數(shù)化為最小項表達式2. 填寫卡諾圖 ),(m15131060 2.2.4 用卡諾圖化簡邏輯函數(shù) 1、化簡的依據(jù)DABDADBA DBACDBADCBA BDABCDADCBA m0 m1 m3 m2 m4 m5 m7 m6 m12 m13 m15 m14 m8 m9 m11 m10 AB CD 00 01 11 10 00 01 11 1

16、0 ADABDDBA DADDA 2、化簡的步驟用卡諾圖化簡邏輯函數(shù)的步驟如下:(4) 將所有包圍圈對應(yīng)的乘積項相加。(1) 將邏輯函數(shù)寫成最小項表達式(2) 按最小項表達式填卡諾圖,凡式中包含了的最小項,其對應(yīng)方格填1,其余方格填0。(3) 合并最小項,即將相鄰的1方格圈成一組(包圍圈),每一組含2n個方格,對應(yīng)每個包圍圈寫成一個新的乘積項。本書中包圍圈用虛線框表示。畫包圍圈時應(yīng)遵循的原則: (1)包圍圈內(nèi)的方格數(shù)一定是2n個,且包圍圈必須呈矩形。(2)循環(huán)相鄰特性包括上下底相鄰,左右邊相鄰和四角相鄰。(3)同一方格可以被不同的包圍圈重復(fù)包圍多次,但新增的包圍圈中一定要有原有包圍圈未曾包圍的

17、方格。(4) 一個包圍圈的方格數(shù)要盡可能多,包圍圈的數(shù)目要可能少。 m0 m1 m3 m2 m4 m5 m7 m6 m12 m13 m15 m14 m8 m9 m11 m10 00 01 11 10 AB CD 00 01 11 10 m0 m1 m3 m2 m4 m5 m7 m6 m12 m13 m15 m14 m8 m9 m11 m10 00 01 11 10 AB CD 00 01 11 10 DBBDL BD 例 :用卡諾圖法化簡下列邏輯函數(shù)(2)畫包圍圈合并最小項,得最簡與-或表達式 解:(1) 由L 畫出卡諾圖 m)D,C,B,A(L(0,2,5,7,8,10,13,15) L C

18、 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 D A B DB 1 1 1 00 AB L 01 10 11 CD 11 00 00 01 10 011 1111111111110( , , ,)(03,5 7,811,1315)L A B C DmLDCBB例: 用卡諾圖化簡 1 1 1 00 AB L 01 10 11 CD 11 00 00 01 10 011 1111111111110CD圈0LBCDLDCB圈12.2.5 含無關(guān)項的邏輯函數(shù)及其化簡1、什么叫無關(guān)項:在真值表內(nèi)對應(yīng)于變量的某些取值下,函數(shù)的值可以是任意的,或者這些變量的取值根本不會出現(xiàn),這些變量取值

19、所對應(yīng)的最小項稱為無關(guān)項或任意項。在含有無關(guān)項邏輯函數(shù)的卡諾圖化簡中,它的值可以取0或取1,具體取什么值,可以根據(jù)使函數(shù)盡量得到簡化而定。例: 要求設(shè)計一個邏輯電路,能夠判斷一位十進制數(shù)是奇數(shù)還是偶數(shù),當十進制數(shù)為奇數(shù)時,電路輸出為1,當十進制數(shù)為偶數(shù)時,電路輸出為0。11111110110111001011101011001010001011100110101010010010011000101000100000LABCD解:(1)列出真值表(2)畫出卡諾圖 0 1 1 0 0 1 1 0 0 1 L C D A B (3) 卡諾圖化簡 D DL 2.3.1 Verilog語言的基本語法規(guī)則

20、 2.3.2 變量的數(shù)據(jù)類型 2.3.3 Verilog程序的基本結(jié)構(gòu) 2.3.4 邏輯功能的仿真與測試2.3 硬件描述語言Verilog HDL基礎(chǔ)硬件描述語言HDL(Hardware Description Languag )類似于高級程序設(shè)計語言.它是一種以文本形式來描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的語言,用它可以表示邏輯電路圖、邏輯表達式,復(fù)雜數(shù)字邏輯系統(tǒng)所的邏輯功能。HDL是高層次自動化設(shè)計的起點和基礎(chǔ).2.3 硬件描述語言Verilog HDL基礎(chǔ)計算機對HDL的處理:邏輯綜合 是指從HDL描述的數(shù)字邏輯電路模型中導(dǎo)出電路基本元件列表以及元件之間的連接關(guān)系(常稱為門級網(wǎng)表)的過程。類似

21、對高級程序語言設(shè)計進行編譯產(chǎn)生目標代碼的過程.產(chǎn)生門級元件及其連接關(guān)系的數(shù)據(jù)庫,根據(jù)這個數(shù)據(jù)庫可以制作出集成電路或印刷電路板PCB。邏輯仿真 是指用計算機仿真軟件對數(shù)字邏輯電路的結(jié)構(gòu)和行為進行預(yù)測.仿真器對HDL描述進行解釋,以文本形式或時序波形圖形式給出電路的輸出。在仿真期間如發(fā)現(xiàn)設(shè)計中存在錯誤,就再要對HDL描述進行及時的修改。2.3.1 Verilog語言的基本語法規(guī)則為對數(shù)字電路進行描述(常稱為建模),Verilog語言規(guī)定了一套完整的語法結(jié)構(gòu)。1間隔符: Verilog 的間隔符主要起分隔文本的作用,可以使文本錯落有致,便于閱讀與修改。間隔符包括空格符(b)、TAB 鍵(t)、換行符

22、(n)及換頁符。2注釋符:注釋只是為了改善程序的可讀性,在編譯時不起作用。多行注釋符(用于寫多行注釋): /* - */;單行注釋符 :以/開始到行尾結(jié)束為注釋文字。為了表示數(shù)字邏輯電路的邏輯狀態(tài),Verilog語言規(guī)定了4種基本的邏輯值。 0邏輯邏輯0、邏輯假、邏輯假 1邏輯邏輯1、邏輯真、邏輯真 x或或X不確定的值(未知狀態(tài))不確定的值(未知狀態(tài)) z或或Z高阻態(tài)高阻態(tài)標識符:給對象(如模塊名、電路的輸入與輸出端口、變量等)取名所用的字符串。以英文字母或下劃線開始如,clk、counter8、_net、bus_A 。關(guān)鍵詞:是Verilog語言本身規(guī)定的特殊字符串,用來定義語言的結(jié)構(gòu)。例如

23、,module、endmodule、input、output、wire、reg、and等都是關(guān)鍵詞。關(guān)鍵詞都是小寫,關(guān)鍵詞不能作為標識符使用 。4邏輯值集合3標識符和關(guān)鍵詞5常量及其表示實數(shù)型常量十進制記數(shù)法 如: 0.1、2.0、5.67科學(xué)記數(shù)法 如: 23_5.1e2、5E4 23510.0、 0.0005Verilog允許用參數(shù)定義語句定義一個標識符來代表一個常量,稱為符號常量。定義的格式為:parameter 參數(shù)名1常量表達式1,參數(shù)名2常量表達式2,;如 parameter BIT=1, BYTE=8, PI=3.14;6字符串:字符串是雙撇號內(nèi)的字符序列常量十進制數(shù)的形式的表示

24、方法:表示有符號常量例如:30、2帶基數(shù)的形式的表示方法: 表示常量格式為:整數(shù)型例如:3b101、5o37、8he3,8b1001_0011 2.3.2 變量的數(shù)據(jù)類型1線網(wǎng)類型:是指輸出始終根據(jù)輸入的變化而更新其值的變量,它一般指的是硬件電路中的各種物理連接. 例:wire L; /將上述電路的輸出信號L聲明為網(wǎng)絡(luò)型變量 wire 7:0 data bus; /聲明一個8-bit寬的網(wǎng)絡(luò)型總線變量常用的網(wǎng)絡(luò)類型由關(guān)鍵詞wire定義wire型變量的定義格式如下:wire n-1:0 變量名1,變量名2,變量名n;變量寬度例:網(wǎng)絡(luò)型變量L的值由與門的驅(qū)動信號a和b所決定,即La&b。a

25、、b的值發(fā)生變化,線網(wǎng)L的值會立即跟著變化。 & b a L 寄存器型變量對應(yīng)的是具有狀態(tài)保持作用的電等路元件,如觸發(fā)器寄存器。寄存器型變量只能在initial或always內(nèi)部被賦值。2、寄存器型寄存器類型寄存器類型功能說明功能說明reg常用的寄存器型變量常用的寄存器型變量integer32位帶符號的整數(shù)型變量位帶符號的整數(shù)型變量real64位帶符號的實數(shù)型變量,位帶符號的實數(shù)型變量,time64位無符號的時間變量位無符號的時間變量4種寄存器類型的變量例: reg clock;/定義一個1位寄存器變量 reg 3:0 counter; /定義一個4位寄存器變量抽象描述,不對應(yīng)具體硬件2、每個模塊先要進行端口的定義,并說明輸入(input)和輸出(output),然后對模塊功能進行描述。2.3.3 Verilog程序的基本結(jié)構(gòu)Verilog使用大約100個預(yù)定義的關(guān)鍵詞定義該語言的結(jié)構(gòu)1、 VerilogHDL程序由模塊構(gòu)成。每個模塊的內(nèi)容都是嵌在關(guān)鍵詞module和endmodule兩個語句之間。每個模塊實現(xiàn)特定的功能。3、除了endmodule

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論