双二选一多路选择器的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四:双二选一多路选择器的设计
1.实验目的
(1)学习isEXPERT/MAX+plus Ⅱ/Foudation Series软件的基本使用方法。
(2)学习GW48-CK EDA实验开发系统的基本使用方法。
(3)学习VHDL基本逻辑电路的综合设计应用。
2.实验内容
设计并调试好二选一多路选择器的设计,并用GW48_CK EDA实验开发系统(拟采用的实验芯片的型号为isPLSI1032E OLCC_84)进行硬件验证。
3.实验条件
(1)画出系统的原理框架图,说明系统中各主要部分的功能。
(2)编写各个VHDL源程序。
(3)根据选用的软件编好用于系统仿真的测试文件。
(4)根据选用的软件及EDA实验开发装置编好用于硬件验证的管脚锁定文件。
(5)记录系统仿真、硬件验证结果。
(6)记录式样过程中出现的问题及解决方法。
4.实验设计
(1)系统原理图框架
双2选1多路选择器逻辑图
(2)VHDL源程序
library ieee;
use ieee.std_logic_1164.all;
entity mux21a is
port(a,b,s:in bit;
y:out bit);
end mux21a;
architecture one of mux21a is
begin
process(a)
begin
case a is
when '0'=>y<=a;
when '1'=> y<=b;
when others=>null;
end case;
end process;
end architecture one;
library ieee;
use ieee.std_logic_1164.all; entity muxk is
port(a1,a2,a3:in std_logic; s0,s1:in bit ;
outy:out std_logic);
end entity muxk;
architecture art of muxk is signal tmp: std_logic; begin
process(s0)is
begin
case s0 is
when'0'=>tmp<=a2;
when'1'=>tmp<=a3;
end case;
end process;
process(s1)is
begin
case s1 is
when'0'=>outy<=a1; when'1'=>outy<=tmp;
end case;
end process;
end architecture art;
(3)波形仿真文件Modul muxk;
A1,a2,a3,s0,s1,outy pin; Test_vectors
([s1,s0,a3,a2,a1]->outy) [0,0,0,0,0]->[x];
[1,1,0,0,1]->[x];
[0,0,0,1,0]->[x];
[1,1,0,1,1]->[x];
[0,0,1,0,0]->[x];
[1,1,1,0,1]->[x];
[0,0,1,1,0]->[x];
[1,1,1,1,1]->[x];
[0,0,0,0,0]->[x];
[1,1,1,1,1]->[x];
(4)管脚锁定文件
管脚锁定图
管脚锁定文件
//muxk.ppn
//part: isPLSI1032E OLCC_84 //fromat:
pinnanme pintype lock s1 in 84
s0 in 42
a3 in 44
a2 in 2
a1 in 1
outy out 19
5.实验结果及总结
(1)系统仿真情况
系统功能仿真结果
系统时序仿真结果
(2)硬件验证情况
(3)实验开发过程中出现的问题及解决的方法
1)在编写源文件时,case情况没有列完,修改后正常编译。
2)开始时,编写的mux21a.vhd里有两个process,编译提示说不能够进一步process,后来发现单独的一个mux21a.vhd里面没有两个process,在2个组成的muxk.vhd中才可以有。改了后,编译通过。