0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【教程分享】FPGA零基礎(chǔ)學(xué)習(xí):數(shù)字電路中的組合邏輯

電子發(fā)燒友論壇 ? 來(lái)源:未知 ? 2023-04-18 09:15 ? 次閱讀

大俠好,歡迎來(lái)到FPGA技術(shù)江湖。本系列將帶來(lái)FPGA的系統(tǒng)性學(xué)習(xí),從最基本的數(shù)字電路基礎(chǔ)開(kāi)始,最詳細(xì)操作步驟,最直白的言語(yǔ)描述,手把手的“傻瓜式”講解,讓電子、信息、通信類(lèi)專(zhuān)業(yè)學(xué)生、初入職場(chǎng)小白及打算進(jìn)階提升的職業(yè)開(kāi)發(fā)者都可以有系統(tǒng)性學(xué)習(xí)的機(jī)會(huì)。


系統(tǒng)性的掌握技術(shù)開(kāi)發(fā)以及相關(guān)要求,對(duì)個(gè)人就業(yè)以及職業(yè)發(fā)展都有著潛在的幫助,希望對(duì)大家有所幫助。后續(xù)會(huì)陸續(xù)更新 Xilinx 的 Vivado、ISE 及相關(guān)操作軟件的開(kāi)發(fā)的相關(guān)內(nèi)容,學(xué)習(xí)FPGA設(shè)計(jì)方法及設(shè)計(jì)思想的同時(shí),實(shí)操結(jié)合各類(lèi)操作軟件,會(huì)讓你在技術(shù)學(xué)習(xí)道路上無(wú)比的順暢,告別技術(shù)學(xué)習(xí)小BUG卡破腦殼,告別目前忽悠性的培訓(xùn)誘導(dǎo),真正的去學(xué)習(xí)去實(shí)戰(zhàn)應(yīng)用,這種快樂(lè)試試你就會(huì)懂的。話(huà)不多說(shuō),上貨。


數(shù)字電路中的組合邏輯

根據(jù)邏輯功能的不同特點(diǎn),可以將數(shù)字電路分為兩大類(lèi),一類(lèi)稱(chēng)為組合邏輯電路(簡(jiǎn)稱(chēng)組合電路),另一類(lèi)稱(chēng)為時(shí)序邏輯電路(簡(jiǎn)稱(chēng)時(shí)序電路)。


在組合邏輯電路中,任何時(shí)刻的輸出僅僅取決于該時(shí)刻的輸入,與電路原來(lái)的狀態(tài)無(wú)關(guān)。這就是組合邏輯電路在邏輯功能上的共同特點(diǎn)。在上一節(jié)中,設(shè)計(jì)的三人表決器就是組合邏輯電路,輸出與輸入一一對(duì)應(yīng),和其他無(wú)關(guān),輸入發(fā)生改變,輸出立刻跟著改變。


組合邏輯的設(shè)計(jì)方法在邏輯代數(shù)基礎(chǔ)中有一定的簡(jiǎn)單的敘述。


  • 根據(jù)現(xiàn)有的資源做出合理的假設(shè)(通過(guò)為1、還是為0,不同的硬件可能會(huì)是不同的結(jié)構(gòu))。

  • 根據(jù)設(shè)計(jì)要求和假設(shè),列出真值表。

  • 根據(jù)真值表得出表達(dá)式,并化簡(jiǎn)(公式化,卡諾圖)。有時(shí)需要化簡(jiǎn)為與非的形式或者其他形式。

  • 根據(jù)化簡(jiǎn)后的布爾表達(dá)式做出電路結(jié)構(gòu),并且驗(yàn)證。

  • 如果最后結(jié)果出現(xiàn)錯(cuò)誤,上述所有步驟都要檢查,如果上述步驟都沒(méi)有問(wèn)題,可以考慮電路結(jié)構(gòu)中的連接問(wèn)題或者器件的損壞。


下面利用一個(gè)三人表決器的電路設(shè)計(jì)來(lái)說(shuō)明一些問(wèn)題。此電路有三個(gè)輸入(A、B、C),一個(gè)輸出(Y),只有當(dāng)兩個(gè)及兩個(gè)以上輸入贊成時(shí),Y輸出贊成。


設(shè)贊成為1,不贊成為0。根據(jù)設(shè)計(jì)要求得出如下真值表:


圖1 :三人表決器真值表


根據(jù)真值表中Y為1的項(xiàng)列出來(lái),對(duì)應(yīng)的A、B、C為1,則留下變量,為0,則留下反變量。


Y = A'BC+AB’C+ABC’+ABC;


根據(jù)上述布爾表達(dá)式,我們得出邏輯電路圖:


圖2 :三人表決器的邏輯電路圖


如果所有的邏輯都按照這種寫(xiě)法的話(huà),那么很多的邏輯就會(huì)變的很復(fù)雜,并且會(huì)浪費(fèi)很多的資源。我們考慮一下,電路既然是按照布爾表達(dá)式做出來(lái)的,那么布爾表達(dá)式能不能化簡(jiǎn)一下呢?


Y = A'BC+AB’C+ABC’+ABC;

= A'BC+ ABC +AB’C+ ABC+ ABC’+ABC;

= BC(A' + A) + AC(B+B') + AB(C+C')

= BC+AC+AB


上述布爾表達(dá)式所對(duì)應(yīng)的邏輯電路圖如下:


圖3 :化簡(jiǎn)后的布爾表達(dá)式所對(duì)應(yīng)的電路圖


思考 :半加器、全加器、多路選擇器、乘法器、除法器等常用組合邏輯電路的設(shè)計(jì)與實(shí)現(xiàn)?


在設(shè)計(jì)組合邏輯時(shí),分析和設(shè)計(jì)都是在輸入、輸出處于穩(wěn)定的邏輯電平下進(jìn)行的。為了保證系統(tǒng)工作的可靠性,有必要再觀察一下當(dāng)輸入信號(hào)邏輯電平發(fā)生變化的瞬間電路的工作情況。


在圖1-28所示的與門(mén)電路中,穩(wěn)態(tài)下無(wú)論A=1、B=0還是A=0、B=1,輸出都應(yīng)該是Y=0;但是輸入信號(hào)A從1變?yōu)?時(shí),如果B從0變?yōu)?,由于某些原因(布線(xiàn)的寬度、厚度、溫度等),B先從0變?yōu)?了,這樣在極短的時(shí)間內(nèi)出現(xiàn)了A和B都是1的情況,與門(mén)電路就會(huì)輸出一個(gè)極窄的Y=1的尖峰脈沖,或稱(chēng)為電壓毛刺。這個(gè)尖峰脈沖不符合門(mén)電路穩(wěn)態(tài)下的邏輯功能,因而它是系統(tǒng)內(nèi)部的一種噪聲。


圖4 :與門(mén)由于競(jìng)爭(zhēng)而產(chǎn)生的尖峰脈沖


將門(mén)電路兩個(gè)輸入信號(hào)同時(shí)向相反的邏輯電平跳變(一個(gè)從1變?yōu)?,另一個(gè)從0變?yōu)?)的現(xiàn)象稱(chēng)為競(jìng)爭(zhēng)。


在有競(jìng)爭(zhēng)時(shí),不一定都會(huì)產(chǎn)生尖峰脈沖。例:在上述的與門(mén)中,如果A先于B發(fā)生了改變,此時(shí)就不會(huì)產(chǎn)生尖峰脈沖。


思考:可以嘗試分析一下或門(mén),分析或門(mén)是否有可能會(huì)產(chǎn)生尖峰脈沖?


與門(mén)和或門(mén)在競(jìng)爭(zhēng)時(shí),都有可能產(chǎn)生尖峰脈沖。與門(mén)和或門(mén)是復(fù)雜數(shù)字邏輯電路中的兩個(gè)基本門(mén)電路,A、B經(jīng)過(guò)不同的傳輸途徑達(dá)到,那么在設(shè)計(jì)時(shí)往往難于準(zhǔn)確知道A、B到達(dá)次序的先后,以及它們?cè)谏仙龝r(shí)間和下降時(shí)間上的細(xì)微差異。因此,我們只能說(shuō)只要存在競(jìng)爭(zhēng)現(xiàn)象,輸出就有可能出現(xiàn)違背穩(wěn)態(tài)下邏輯關(guān)系的尖峰脈沖。


由于競(jìng)爭(zhēng)而在電路輸出端可能產(chǎn)生尖峰脈沖的現(xiàn)象稱(chēng)為競(jìng)爭(zhēng)-冒險(xiǎn)。


如果后續(xù)電路是一個(gè)對(duì)尖峰脈沖敏感的電路,那么這種尖峰脈沖將可能使后續(xù)電路發(fā)生誤動(dòng)作。


思考:如果存在競(jìng)爭(zhēng)冒險(xiǎn)現(xiàn)象的話(huà),應(yīng)該怎么避免?


  • 可以在輸出端接入濾波電容;由于競(jìng)爭(zhēng)-冒險(xiǎn)而產(chǎn)生的尖峰脈沖一般都很窄,所以在輸出端并接一個(gè)很小的濾波電容就足以把尖峰脈沖的幅度削弱至門(mén)電路的閾值電壓一下。這種方法簡(jiǎn)單易行,而缺點(diǎn)是增加了輸出電壓波形的上升時(shí)間和下降時(shí)間,使波形變壞。

  • 引入選通脈沖;由于電路的延遲產(chǎn)生的尖峰脈沖是極窄的,如果在輸入(輸出)信號(hào)穩(wěn)定后,我們?cè)偃ミx取結(jié)果作為輸出,此時(shí)的結(jié)果就是正確的。那么此時(shí)的選通脈沖就必須要要在穩(wěn)定后再能出現(xiàn),否則也無(wú)濟(jì)于事。

  • 修改邏輯設(shè)計(jì);此方法的局限性比較大,不再做過(guò)多介紹。


通過(guò)對(duì)組合邏輯的認(rèn)識(shí),感覺(jué)自己已經(jīng)可以設(shè)計(jì)任何電路。只要按照標(biāo)準(zhǔn)的設(shè)計(jì)流程,我們都可以很快的做出電路。


思考 :目前需設(shè)計(jì)一個(gè)自動(dòng)售貨機(jī),販賣(mài)售價(jià)為三元的飲料,要求每次只能投入一個(gè)一元的硬幣??上攵?,我們投入第一個(gè)硬幣沒(méi)有反應(yīng);投入第二個(gè)硬幣沒(méi)有反應(yīng);當(dāng)我們投入第三個(gè)硬幣時(shí),售貨機(jī)會(huì)給我們一瓶飲料。如果內(nèi)部是組合邏輯的話(huà),三次投硬幣的輸入并沒(méi)有任何改變,但是產(chǎn)生了不同的結(jié)果,顯然內(nèi)部結(jié)構(gòu)不是單純的組合邏輯。內(nèi)部的功能有一定的記憶性功能,能夠清楚的記得之前我們投入的硬幣的數(shù)量。此時(shí)我們應(yīng)該如何去設(shè)計(jì)電路。


組合邏輯電路中,任一時(shí)刻的輸出信號(hào)僅取決于當(dāng)時(shí)的輸入信號(hào)。




聲明本文由電子發(fā)燒友社區(qū)發(fā)布,轉(zhuǎn)載請(qǐng)注明以上來(lái)源。如需社區(qū)合作及入群交流,請(qǐng)?zhí)砑游⑿臙EFans0806,或者發(fā)郵箱liuyong@huaqiu.com。


更多熱點(diǎn)文章閱讀

  • 龍芯架構(gòu)首款面向嵌入式應(yīng)用的開(kāi)發(fā)板,2K500開(kāi)發(fā)應(yīng)用實(shí)例

  • 基于32位RISC-V設(shè)計(jì)的互聯(lián)型微控制器,沁恒微CH32V307開(kāi)發(fā)樣例

  • RK3568!四核64位ARMv8.2A架構(gòu),匯聚編譯源碼及實(shí)戰(zhàn)樣例

  • 尺寸僅有21mm*51mm,板邊采用郵票孔設(shè)計(jì),合宙 Air105 核心板開(kāi)發(fā)總結(jié)

  • 基于32位RISC-V高集成SoC,ADP-Corvette-T1開(kāi)發(fā)板樣例及源碼!


原文標(biāo)題:【教程分享】FPGA零基礎(chǔ)學(xué)習(xí):數(shù)字電路中的組合邏輯

文章出處:【微信公眾號(hào):電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:【教程分享】FPGA零基礎(chǔ)學(xué)習(xí):數(shù)字電路中的組合邏輯

文章出處:【微信號(hào):gh_9b9470648b3c,微信公眾號(hào):電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    數(shù)字電路的基本邏輯關(guān)系有哪三種

    數(shù)字電路的基本邏輯關(guān)系是構(gòu)成數(shù)字電路的基礎(chǔ),它們是與門(mén)(AND)、或門(mén)(OR)和非門(mén)(NOT)。這些基本邏輯關(guān)系通過(guò)
    的頭像 發(fā)表于 08-11 15:02 ?579次閱讀

    組合邏輯電路設(shè)計(jì)時(shí)應(yīng)遵循什么原則

    一、引言 組合邏輯電路數(shù)字電路的一種基本類(lèi)型,它由邏輯門(mén)、觸發(fā)器等基本元件組成,通過(guò)邏輯門(mén)的
    的頭像 發(fā)表于 08-11 11:26 ?384次閱讀

    組合邏輯電路的基本概念、組成及設(shè)計(jì)方法

    組合邏輯電路是一種數(shù)字電路,其輸出狀態(tài)完全取決于當(dāng)前輸入狀態(tài)。這種電路沒(méi)有記憶功能,即不包含存儲(chǔ)元件。組合
    的頭像 發(fā)表于 08-11 11:22 ?486次閱讀

    組合邏輯電路的結(jié)構(gòu)特點(diǎn)是什么?

    組合邏輯電路是一種基本的數(shù)字電路,它由邏輯門(mén)組成,用于實(shí)現(xiàn)各種邏輯功能。組合
    的頭像 發(fā)表于 08-11 11:14 ?425次閱讀

    分析組合邏輯電路的設(shè)計(jì)步驟

    組合邏輯電路數(shù)字電路的一種基本類(lèi)型,它由邏輯門(mén)組成,根據(jù)輸入信號(hào)的組合產(chǎn)生相應(yīng)的輸出信號(hào)。
    的頭像 發(fā)表于 07-30 14:39 ?215次閱讀

    組合邏輯電路邏輯功能的測(cè)試方法

    一、引言 組合邏輯電路數(shù)字電路的重要組成部分,它僅由邏輯門(mén)電路(如與門(mén)、或門(mén)、非門(mén)等)和輸入
    的頭像 發(fā)表于 07-30 14:38 ?244次閱讀

    組合邏輯控制器的工作原理是什么

    組合邏輯控制器(Combinatorial Logic Controller,簡(jiǎn)稱(chēng)CLC)是一種常見(jiàn)的數(shù)字電路設(shè)計(jì),廣泛應(yīng)用于計(jì)算機(jī)、通信、控制等領(lǐng)域。本文將詳細(xì)介紹組合
    的頭像 發(fā)表于 06-30 10:15 ?367次閱讀

    FPGA零基礎(chǔ)學(xué)習(xí)系列精選:半導(dǎo)體存儲(chǔ)器和可編程邏輯器件簡(jiǎn)介

    大俠好,歡迎來(lái)到FPGA技術(shù)江湖。本系列將帶來(lái)FPGA的系統(tǒng)性學(xué)習(xí),從最基本的數(shù)字電路基礎(chǔ)開(kāi)始,最詳細(xì)操作步驟,最直白的言語(yǔ)描述,手把手的“傻瓜式”講解,讓電子、信息、通信類(lèi)專(zhuān)業(yè)學(xué)生、
    發(fā)表于 03-28 17:41

    數(shù)字電路邏輯設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《數(shù)字電路邏輯設(shè)計(jì).ppt》資料免費(fèi)下載
    發(fā)表于 03-11 09:21 ?3次下載

    常用的組合邏輯電路

    組合邏輯電路和時(shí)序邏輯電路數(shù)字電路兩種重要的邏輯電路類(lèi)型,它們主要區(qū)別在于其輸出信號(hào)的依賴(lài)關(guān)
    的頭像 發(fā)表于 02-04 16:00 ?3282次閱讀

    數(shù)字電路邏輯門(mén)的電路符號(hào)圖

    把基本邏輯運(yùn)算的電子電路稱(chēng)之為邏輯門(mén)電路。在數(shù)字電路關(guān)系應(yīng)用,
    的頭像 發(fā)表于 02-04 14:58 ?2297次閱讀
    <b class='flag-5'>數(shù)字電路</b><b class='flag-5'>中</b><b class='flag-5'>邏輯</b>門(mén)的<b class='flag-5'>電路</b>符號(hào)圖

    數(shù)字電路邏輯門(mén)電路分類(lèi)

    數(shù)字電路邏輯門(mén)電路分類(lèi) 數(shù)字電路是計(jì)算機(jī)系統(tǒng)的重要組成部分,它們由
    的頭像 發(fā)表于 02-04 09:14 ?2977次閱讀

    FPGA/CPLD數(shù)字電路設(shè)計(jì)經(jīng)驗(yàn)分享

    電子發(fā)燒友網(wǎng)站提供《FPGA/CPLD數(shù)字電路設(shè)計(jì)經(jīng)驗(yàn)分享.pdf》資料免費(fèi)下載
    發(fā)表于 11-21 11:03 ?3次下載
    <b class='flag-5'>FPGA</b>/CPLD<b class='flag-5'>數(shù)字電路</b>設(shè)計(jì)經(jīng)驗(yàn)分享

    數(shù)字電路是什么

    數(shù)字電路是什么? 數(shù)字電路不同與模擬電路的連續(xù)信號(hào),它是離散信號(hào),在使用只有兩種波形,一種是高的,一種是低的。它具有邏輯運(yùn)算和
    的頭像 發(fā)表于 11-06 17:25 ?2076次閱讀
    <b class='flag-5'>數(shù)字電路</b>是什么

    建立/保持時(shí)間對(duì)數(shù)字電路的影響

    建立/保持時(shí)間對(duì)數(shù)字電路的影響 數(shù)字電路是指使用數(shù)字信號(hào)進(jìn)行連接和處理信息的電路數(shù)字電路是由一系列數(shù)字
    的頭像 發(fā)表于 10-29 14:21 ?558次閱讀