- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《现代逻辑课程设计》 四选一选择器 报告.doc
中国计量学院
《现代逻辑课程设计》报告
题目: 四选一选择器
专 业 计算机科学与技术
班 级 _11计算机1班 _
姓 名
学 号
实验报告 验收成绩 平时成绩 总成绩
2013年 7 月 03 日
一、实验目的
理解并掌握现代逻辑设计的基本方法,学会使用原理图或硬件描述语言方式对电路建模,并进行仿真测试。
二、实验环境
PC机1台、ModelSim XE仿真软件1套、Xlink软件一套。
三、实验内容
1、顶层模块图及接口说明
该实验有四个输入a、b、c、d(3:0),一个判断位s(1:0),一个输出y(3:0).当判断位s的值为“00”时,输出y的值为输入a的值;当判断位s的值为“01”时,输出y的值为输入b的值;当判断位s的值为“10”时,输出y的值为输入c的值;当判断位s的值为“11”及其他所有可能取值,即s=others时,输出y的值为输入d的值;
即
输入a 输入b 输入c 输入d 判断位s 输出y 0 1 1 1 00 0 1 0 0 0 00 1 1 0 1 1 01 0 0 1 0 0 01 1 1 1 0 1 10 0 0 0 1 0 10 1 1 1 1 0 others 0 0 0 0 1 others 1 2、内部电路电路或VERILOG模型
下面的源代码给出verilog程序,实现了各项功能,
程序源代码如下:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
-- Uncomment the following lines to use the declarations that are
-- provided for instantiating Xilinx primitive components.
--library UNISIM;
--use UNISIM.VComponents.all;
entity jie is
port(a,b,c,d:in std_logic_vector(3 downto 0);
s:in std_logic_vector(1 downto 0);
y:out std_logic_vector(3 downto 0));
end jie;
architecture Behavioral of jie is
begin
y=a when s=00 else
b when s=01 else
c when s=10 else
d when s=11 else
0000;
end Behavioral;
3、测试用例和测试波形
四、实验步骤(出现的问题和解决的方法)
实验开始我是先网上搜索资料了解VHDL语言及相关设计。然后用老师给的实验指导书,参考上面的例题在软件上做了几遍,目的是熟悉实验步骤。这过程中也遇到一些问题,比如在完成一个步骤后不知道下一步怎么做,不过同学多这问题也好解决,请教他们一会儿就好了。熟悉实验步骤后,我去图书馆借了专业书籍,这样对做作业和理解作业都有帮助。实验做起来倒是很快,代码参考的书上的,所以一会儿就到了测试结果的阶段,不过在这个中间却老是出错,一直测试不了。重复做了几遍后还是这个问题,最后只得一句一句地检查代码,终于发现错误是因为代码里少了一个后括号。改正后程序就正常了,不过结果有点小毛刺。操作了几遍后发现还有个更大的问题,就是输出的正确率只有50%。本来我还想自己想办法解决的,后来发现能力有限,再加上大家都是刚接触这个,所以同学也不怎么能帮上忙。所以我把代码基本改掉了。这一过程我对这个软件进一步熟悉,操作起来更方便了,结果很快出来了,并且在我的测试过程中结果一直是正确的。
五、实验结果
序号 输入数据 仿真结果 正确结果 仿真结果的正确性 1 a=0000,b=0000
c=0001,d=0001
s=01 y=0000 y=0000 正确 2 a=1010,b=0110
c=1100,d=1101
s=00 y=1010 y=1010 正确 3 a=0001,b=0000
c=0001,d=0001
s=10 y=0001 y=0001 正确 4 a=0001,b=0000
c=0000,d=0101
s=11 y=0101 y=0101 正确 六、实验分析与总结
本实验采用的代码形式实验功能,刚开始和大家一样,什么都不懂,不过老师也说只是让大家熟悉熟悉。所以就网上搜了一些资料,和老师给的指导书试着做了一些,想先熟悉实验步骤。真
文档评论(0)