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

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

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

數(shù)字電路教程的組合邏輯部分介紹

電子森林 ? 來(lái)源:電子森林 ? 作者:蘇老師 ? 2021-10-08 11:27 ? 次閱讀

數(shù)字電路教程的組合邏輯部分,最經(jīng)典的示例除了加法器以外就是:

Encoder - 編碼器

Decoder - 譯碼器

Multiplexer - 簡(jiǎn)寫(xiě)Mux,多路復(fù)用器,也叫數(shù)據(jù)選擇器

Demultiplexer - 簡(jiǎn)寫(xiě)Demux,解復(fù)用器,也叫數(shù)據(jù)分配器

其實(shí)是兩對(duì)概念:Encoder/Decoder是跟code(碼)相關(guān)的正反兩個(gè)操作,Mux/Demux是跟數(shù)據(jù)流相關(guān)的正反兩個(gè)操作。

翻看各種教科書(shū),我們很難理清楚它們之間的功能差異以及相互之間的關(guān)系,只是有一些點(diǎn)滴應(yīng)用在書(shū)本上提及。

這兩組概念其實(shí)是非常重要的,是構(gòu)成我們信息組織和信息傳輸?shù)闹匾A(chǔ),并且在我們的生活中處處都能夠找到與之對(duì)應(yīng)的應(yīng)用:

比如我們看諜戰(zhàn)片中神秘的電報(bào)編碼(要用密碼本來(lái)翻譯);我們用的鍵盤(pán)上面有100多個(gè)按鍵、而幾根線(xiàn)就可以將它跟計(jì)算機(jī)連接;我們使用的旋轉(zhuǎn)撥碼開(kāi)關(guān)、模數(shù)轉(zhuǎn)換器中通過(guò)比較器輸出的比較結(jié)果到最終用于表征模擬信號(hào)大小的數(shù)據(jù),這些都被稱(chēng)為Encode - 編碼。

99421436-23b9-11ec-82a8-dac502259ad0.png

單刀八擲的旋轉(zhuǎn)開(kāi)關(guān)可以用3根二進(jìn)制數(shù)據(jù)線(xiàn)來(lái)表征其狀態(tài)

簡(jiǎn)而言之,編碼器是一種把熟悉的數(shù)字、字符或符號(hào)轉(zhuǎn)換成二進(jìn)制代碼的裝置,它將給定的信息編碼成更緊湊的形式,主要用于減少表示給定信息所需的比特?cái)?shù)。在數(shù)字系統(tǒng)中,編碼器用來(lái)傳輸或存儲(chǔ)信息,通過(guò)編碼傳輸鏈路可以使用更少的線(xiàn)路來(lái)傳輸或更少的空間來(lái)存儲(chǔ)。將量化的音樂(lè)通過(guò)編碼器轉(zhuǎn)換為MP3格式,將采集到的視頻流通過(guò)編碼器轉(zhuǎn)換為MP4的數(shù)據(jù)格式,這些過(guò)程都統(tǒng)稱(chēng)為“編碼” ,當(dāng)然在我們的數(shù)字電路教程中,只是通過(guò)最簡(jiǎn)單的示例來(lái)講述其原理。

就像電報(bào)中的編碼有很多中一樣,用二進(jìn)制來(lái)表征數(shù)字、字符或符號(hào)也有多種不同的方式,比如BCD、5421碼、2421碼、余3碼、格雷碼等,每種編碼方式都有其優(yōu)缺點(diǎn),因此有用于不同的場(chǎng)景。

譯碼器(Decoder)是編碼器的逆過(guò)程,它是把二進(jìn)制表征的信息給翻譯過(guò)來(lái),或者說(shuō)映射過(guò)來(lái),我們生活中的門(mén)牌號(hào)、車(chē)牌號(hào)、郵箱、組合開(kāi)關(guān)對(duì)多個(gè)燈的控制、嵌入式系統(tǒng)中的存儲(chǔ)器/外設(shè)尋址,這些都是譯碼的過(guò)程,通過(guò)代碼中的數(shù)字,找到其對(duì)應(yīng)的對(duì)象。在數(shù)字計(jì)算中,代碼中的數(shù)字都是用二進(jìn)制(擴(kuò)展為8進(jìn)制、16進(jìn)制等,本質(zhì)上也是2進(jìn)制)。數(shù)字電路教程中,在譯碼器部分最常用到的例子就是3:8譯碼器,這是因?yàn)?4HC138就是這么一個(gè)IC,比較適合做各種實(shí)驗(yàn),當(dāng)然7段數(shù)碼管的控制也是非常重要的實(shí)驗(yàn)項(xiàng)目讓同學(xué)們來(lái)體會(huì)譯碼的過(guò)程,通過(guò)幾根控制線(xiàn)的電平組合,可以點(diǎn)亮數(shù)碼管上7個(gè)LED燈中的若干個(gè),從而組合出我們需要顯示的數(shù)字。

我們硬禾學(xué)堂也專(zhuān)門(mén)針對(duì)譯碼部分制作了兩個(gè)視頻案例,一個(gè)是2:4譯碼,一個(gè)是3:8譯碼,雖然看起來(lái)沒(méi)啥大的區(qū)別,但我們還是通過(guò)這兩個(gè)實(shí)例來(lái)讓大家體會(huì)Verilog代碼實(shí)現(xiàn)的不同方式,希望對(duì)學(xué)習(xí)Verilog的同學(xué)有幫助。

FPGA中的邏輯單元的基本構(gòu)成就是LUT - 查找表,其理論基礎(chǔ)就是譯碼,比如我們小腳丫FPGA中采用的是4輸入LUTS,通過(guò)查找表的方式代替邏輯門(mén)的構(gòu)成,4個(gè)輸入作為RAM的地址,可以尋址16個(gè)不同的地址空間內(nèi)存儲(chǔ)的信息。

是不是感覺(jué)編碼器/譯碼器用途很廣?

那Mux/Demux呢?想象一下從四條不同路徑過(guò)來(lái)的車(chē)輛要并線(xiàn)到一條路上,由紅綠燈控制,控制部分就相當(dāng)于一個(gè)分時(shí)切換的開(kāi)關(guān),根據(jù)開(kāi)關(guān)的控制碼來(lái)決定哪一路的車(chē)輛通行,Mux又稱(chēng)為多路數(shù)據(jù)選擇器,Demux又被稱(chēng)為數(shù)據(jù)分配器。

其實(shí)MUX不僅用于數(shù)字器件中,模擬電路中也有這個(gè)概念,我們所說(shuō)的模擬開(kāi)關(guān),可以切換不同的輸入與輸出的連接,在模擬電路中Mux和Demux是一體的,同一個(gè)電路即是Mux又是Demux。而數(shù)字的Mux和Demux需要使用不同的器件。

9a343734-23b9-11ec-82a8-dac502259ad0.png

復(fù)用器的構(gòu)成

從上面的圖中可以看出譯碼器是復(fù)用器構(gòu)成的重要部分。復(fù)用器的控制信號(hào)就是通過(guò)譯碼以后,對(duì)應(yīng)到相應(yīng)的控制端點(diǎn),從而實(shí)現(xiàn)對(duì)輸入信號(hào)的選擇通過(guò)的。

復(fù)用器/解復(fù)用器的Verilog邏輯異常簡(jiǎn)單,有一點(diǎn)程序基礎(chǔ)的同學(xué)一看就懂,比如下面的4選1多路選擇器,一個(gè)case語(yǔ)句搞定,case的條件是2個(gè)選擇數(shù)據(jù)為sel1、sel0,sel1和sel0的4種組合決定了一個(gè)LED同4個(gè)不同輸入信號(hào)的連接。

很容易看懂,是因?yàn)槲覀內(nèi)魏我婚T(mén)編程語(yǔ)言中的if else、case本質(zhì)上都是Mux的功能,只是我們太習(xí)以為常了而已。

module mult4 ( input wire a, //定義四位輸入 input wire b, input wire c, input wire d, input wire [1:0] sel, //定義輸出的選擇變量 output reg led //定義選擇器輸出結(jié)果對(duì)應(yīng)的led ); always@(sel) //根據(jù)sel結(jié)果選擇輸出,當(dāng)sel變化時(shí)執(zhí)行 begin case(sel) 2‘b00: led = a; 2’b01: led = b; 2‘b10: led = c; 2’b11: led = d; endcase end endmodule

從這幾行代碼看,F(xiàn)PGA的使用非常簡(jiǎn)單,不需要你畫(huà)門(mén)與門(mén)之間的邏輯關(guān)系圖,只需要用Verilog這種硬件描述語(yǔ)言來(lái)描述一下其因果關(guān)系就可以了。

與Encoder、Decoder、Mux、Demux相關(guān)的案例及其FPGA實(shí)現(xiàn)都匯總在www.stepfpga.com的網(wǎng)站百科中,如果您使用我們的Web IDE(不需要下載安裝FPGA工具),也可以找到相關(guān)的參考案例,自己去發(fā)掘嘍。

責(zé)任編輯:haq

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

    關(guān)注

    172

    文章

    5922

    瀏覽量

    172316
  • 復(fù)用器
    +關(guān)注

    關(guān)注

    1

    文章

    707

    瀏覽量

    28332

原文標(biāo)題:淺談“數(shù)字電路”的學(xué)習(xí)(8)- 編碼器、譯碼器、多路復(fù)用器、解復(fù)用器的關(guān)系和應(yīng)用

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    邏輯異或在數(shù)字電路中的作用

    邏輯異或(Exclusive OR,簡(jiǎn)稱(chēng)XOR)在數(shù)字電路中扮演著至關(guān)重要的角色。以下是邏輯異或在數(shù)字電路中的幾個(gè)主要作用: 一、實(shí)現(xiàn)基本邏輯
    的頭像 發(fā)表于 11-19 09:44 ?494次閱讀

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

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

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

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

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

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

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

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

    常用的組合邏輯電路有哪些

    組合邏輯電路數(shù)字邏輯電路的一種,其特點(diǎn)是輸出只依賴(lài)于當(dāng)前的輸入狀態(tài),而與輸入信號(hào)的變化歷史無(wú)關(guān)。組合
    的頭像 發(fā)表于 07-30 14:41 ?1666次閱讀

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

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

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

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

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

    組合邏輯控制器(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 ?1151次閱讀

    數(shù)字電路仿真元件符號(hào)是什么

    數(shù)字電路仿真元件通常用符號(hào)來(lái)表示。這些符號(hào)是通過(guò)簡(jiǎn)潔和易于理解的圖形來(lái)表示元件的特性和功能。符號(hào)是數(shù)字電路設(shè)計(jì)和仿真過(guò)程中非常重要的一部分,幫助工程師和設(shè)計(jì)者有效地溝通和理解電路的功能
    的頭像 發(fā)表于 04-21 09:20 ?2325次閱讀

    什么是組合邏輯電路和時(shí)序邏輯電路?它們之間的區(qū)別是什么

    什么是組合邏輯電路和時(shí)序邏輯電路?時(shí)序邏輯電路組合邏輯電路的區(qū)別是什么?
    的頭像 發(fā)表于 03-26 16:12 ?3697次閱讀

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

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

    常用的組合邏輯電路

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

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

    把基本邏輯運(yùn)算的電子電路稱(chēng)之為邏輯門(mén)電路。在數(shù)字電路關(guān)系應(yīng)用中,邏輯門(mén)
    的頭像 發(fā)表于 02-04 14:58 ?3116次閱讀
    <b class='flag-5'>數(shù)字電路</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)中的重要組成部分,它們由邏輯門(mén)
    的頭像 發(fā)表于 02-04 09:14 ?3692次閱讀