选多路选择器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选多路选择器
部门: xxx
时间: xxx
整理范文,仅供参考,可下载自行编辑
EDA实验二4选1多路选择器设计实验
一、实验目的
进一步熟悉 QuartusII 的 VHDL 文本设计流程、组合电路的设计仿真和测试。
二、实验内容
实验内容一:根据4.1流程,利用 QuartusII 完成四选一多路选择器的文本编辑输入和仿真测试等步骤,给出仿真波
形。 b5E2RGbCAP
实验内容二:对 VHDL 不同描述方式的四选一多路选择器进行硬件实验,比较他们的特性。
三、实验记录
1.when-else语句设计的4选1多路选择器
a>.利用when-else语句的vhdl程序
library ieee。
use ieee.std_logic_1164.all。
entity mux41a is
port(
a,b,c,d,s0,s1:in std_logic。
y:out std_logic>。
end entity mux41a。
architecture one of mux41a is
begin
y<= a when s0='0' and s1='0' else
b when s0='1' and s1='0' else
c when s0='0' an
d s1='1' else
d。
end architecture one。
备注
以上是when-else语句设计的4选1多路选择器的vhdl描述。程序中应该注意的有以下几点
A.一:实体的命名要和工程名相同,并且不能是中文的或者以数字
开头;
B.二:when-else语句具有最高赋值优先级;
b>.when-else语句设计的4选1多路选择器的RTL图
图<1)when-else语句设计的4选1多路选择器的RTL图
c>.when-else语句设计的4选1多路选择器的时序仿真波形图
图<2)when-else语句设计的4选1多路选择器的时序仿真波形图
d>.when-else语句设计的4选1多路选择器功能仿真波形图
图<3)when-else语句设计的4选1多路选择器功能仿真波形图
2.if-then语句设计的4选1多路选择器
a>.利用when-else语句的vhdl程序
library ieee。
use ieee.std_logic_1164.all。
entity mux41b is
port(
a,b,c,d,s0,s1:in std_logic。
y:out std_logic>。
end entity mux41b。
architecture one of mux41b is
begin
process (a,b,c,d,s0,s1> begin
if s0='0' and s1='0' then y<= a。end if。
if s0='1' and s1='0' then y<= b。end if。
if s0='0' and s1='1' then y<= c。end if。
if s0='1' and s1='1' then y<= d。end if。
end process。
end architecture one。
备注:
以上是if—then语句设计的4选1多路选择器的vhdl描述。值得注意以下几点:
程序开头应该包含std_logic_1164.all这个程序库包添加进去<由于在定义端口是端口号的类型为std_logic);p1EanqFDPw B.进程语句应该将能够导致本进程启动的信号加到进程后的敏感信
号表中,这能才能使得进程更加具有一般意义;
C.每一条的if-then语句后都应该以endif结束;
b>.if-then语句设计的4选1多路选择器的RTL图
图<4)if-then语句设计的4选1多路选择器的RTL图
`
c>.if-then语句设计的4选1多路选择器的时序仿真波形图
图<5)if-then语句设计的4选1多路选择器的时序仿真波形图
d>.if-then语句设计的4选1多路选择器的功能仿真波形图
图<6)if-then语句设计的4选1多路选择器的功能仿真波形图
3.case语句设计的4选1多路选择器
a>.利用case语句的vhdl程序
library ieee。
use ieee.std_logic_1164.all。
entity mux41d is
port(
a,b,c,d,s0,s1:in std_logic。
y:out std_logic>。
end entity mux41d。
architecture one of mux41d is
signal s:std_logic_vector(1 downto 0>。
begin
s <= s0 & s1。
process(s> begin
case s is
when "00" => y<= a。
when "10" => y<= b。
when "01" => y<= c。
when "11" => y<= d。
when others =>null。
end case。
end process。
end architecture one。
b>.case语句设计的4选1多路选择器的RTL图
图<7)case语句设计的4选1多路选择器的RTL图
c>.case语句设计的4选1多路选择器的时序仿真图