欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1756|回復: 0
打印 上一主題 下一主題
收起左側

譯碼器與編碼器的設計與仿真

[復制鏈接]
跳轉到指定樓層
樓主
ID:441136 發表于 2018-12-6 20:01 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
. 實驗目的
a.        參照芯片74LS138的電路結構,用邏輯圖和VHDL語言設計3-8譯碼器。
b.        參照芯片74LS148的電路結構,用邏輯圖和VHDL語言設計8-3優先編碼器。
2.實驗內容的詳細說明
2.1 74148:8-3優先編碼器(8 to 3 Priority Encoder)
2.1.1 設計思想
先定義八個輸入四個輸出的實體,然后定義結構體,再定義一個進程利用利用if的嵌套來體現使能端與輸入信號的優先級,再利用if和else if的結構來選擇不同輸入時輸出信號的不同。
2.1.2 實驗原理
1)優先編碼器邏輯圖

優先編碼器邏輯圖
2)優先編碼器真值表
INPUTS
OUTPUTS
EN
0N  1N  2N  3N  4N  5N  6N  7N
A2   A1  A0
GSEO
1
×    ×  ×  ×  ×  ×  ×  ×
1     1    1
1  1
0
×    ×  ×  ×  ×  ×  ×   0
0    0    0
0  1
0
×    ×  ×  ×  ×  ×    0   1
0    0    1
0  1
0
×    ×  ×  ×  ×    0    1   1
0    1    0
0  1
0
×    ×  ×  ×    0    1    1   1
0    1    1
0  1
0
×    ×  ×  0    1    1    1   1
1    0    0
0  1
0
×    ×    0    1    1    1    1   1
1    0    1
0  1
0
×    0    1    1    1   1    1   1
1    1    0
0  1
0
0   1    1    1     1    1    1   1
1    1    1
0  1
0
1     1    1    1    1    1    1   1
1    1    1
1  0
2.1.3 VHDL程序(詳見附錄1)
2.1.4 仿真結果


優先編碼器畫圖-功能仿真波形圖

優先編碼器VHDL-功能仿真波形圖
2.2 74138:3-8譯碼器(3 to 8 Demultiplexer)
2.2.1 設計思想
先定義六個輸入八個輸出的實體,再定義結構體和一個用來先存儲輸出信號組合新的信號,用with..when來將不同輸入組合時將不同的輸出信號賦給存儲信號,當使能端輸入組合為100時,將存儲信號賦給輸出,否則將“1111111”賦給輸出信號組合。
2.2.2 實驗原理
1)74138(3-8譯碼器)邏輯圖

74138邏輯圖
2)74138邏輯功能真值表
INPUT
OUTPUT
Select
Enable
C  B  A
G1  ̄G2A  ̄G 2B
 ̄Y ̄7 ̄Y ̄6 ̄ ̄Y ̄5 ̄ ̄Y ̄4 ̄Y ̄3  ̄Y ̄2 ̄Y ̄1  ̄Y ̄0
× × ×
× × ×
1        0  0
0  0  1
0  1  0
0  1  1
1  0  0
1  0  1
1  1  0
1  1  1
×  1    1
0  ×  ×
1  0  0
1  0  0
1  0  0
1  0  0
1  0  0
1  0  0
1  0  0
1  0  0
1    1  1    1  1  1  1    1
1    1  1    1  1  1  1    1
1    1  1    1  1  1  1    0
1    1  1    1  1  1  0    1
1    1  1    1  1  0  1    1
1    1  1    1  0  1  1    1
1    1  1    0  1  1  1    1
1    1  0    1  1  1  1    1
1    0  1    1  1  1  1    1
0    1  1    1  1  1  1    1
2.2.3 VHDL程序(詳見附錄2)
2.2.4 仿真結果

74138畫圖-邏輯功能仿真波形圖

74138VHDL-邏輯功能仿真波形圖
3.實驗總結:
通過本次實驗,我對優先編碼器和譯碼器的邏輯功能有進一步的了解,了解到譯碼器與編碼器的功能正好相反,編碼器是將各種輸入信號轉換成一組二進制代碼,而譯碼器則是用一組二進制代碼來產生各種獨立的輸出信號。
4.附錄(VHDL程序)
4.1 附錄1
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY V74148 IS
PORT(
EIN : IN STD_LOGIC;
D:IN STD_LOGIC_VECTOR(0 TO 7);
A:OUT STD_LOGIC_VECTOR(0 TO 2) );
END V74148;
ARCHITECTURE V74184_A OF V74148 IS
SIGNAL A_I : STD_LOGIC_VECTOR(0 TO 2);
BEGIN
PROCESS(D,A_I,EIN)
BEGIN
IF ((NOT EIN)='1')
THEN
IF (D(7)='0') THEN A_I<="111";
ELSIF (D(6)='0')THEN A_I<="110";
ELSIF (D(5)='0')THEN A_I<="101";
ELSIF (D(4)='0')THEN A_I<="100";
ELSIF (D(3)='0')THEN A_I<="011";
ELSIF (D(2)='0')THEN A_I<="010";
ELSIF (D(1)='0')THEN A_I<="001";
ELSIF (D(0)='0')THEN A_I<="000";
END IF;
ELSE A_I <= "ZZZ";
END IF;
A<= A_I;
END PROCESS;
END;
4.2 附錄2
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY V74138 IS
PORT ( G1,G2A_L,G2B_L: IN STD_LOGIC;
A: IN STD_LOGIC_VECTOR(2 DOWNTO 0);
Y_L: OUT STD_LOGIC_VECTOR (0 TO 7) );
END V74138;
ARCHITECTURE V74138_A OF V74138 IS
SIGNAL Y_L_I : STD_LOGIC_VECTOR(0 TO 7);
BEGIN
WITH A SELECT Y_L_I <=
"01111111" WHEN "000" ,
"10111111" WHEN "001" ,
"11011111" WHEN "010" ,
"11101111" WHEN "011" ,
"11110111" WHEN "100" ,
"11111011" WHEN "101" ,
"11111101" WHEN "110" ,
"11111110" WHEN "111" ,
"11111111" WHEN OTHERS;
Y_L <= Y_L_I WHEN (G1 AND NOT G2A_L AND NOT G2B_L)='1' ELSE "11111111";
END V74138_A;


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表