EDA技术与应用上机任务 电子信息类 Quartus II或Quartus Prime D触发器、半减器、全减器、可加减控制的50进制加减计数器。
EDA技术与应用上机任务书
- 上机目的
- 熟悉掌握Quartus II或Quartus Prime开发工具的使用。
- 掌握利用硬件描述语言(Verilog)设计简单程序的步骤及方法。
- 掌握若干组合逻辑电路及简单时序逻辑电路的Verilog程序设计方法,以及仿真测试方法。
- 上机内容
- 独立设计一个如图1所示,带同步置位/复位的D触发器,两个反相的输出端为q,qb。其中置位端为pset,复位/清零端为clr,时钟端为clk,数据输入端为d,注意:置位信号的优先级要比复位信号优先级高。
图1 带同步置位/复位的D触发器示意图
(2)用Verilog语言设计一位半减器,然后在该半减器的基础上利用元件调用的方法设计一位全减器。
1)半减器真值表如表1。
输入减数(x) |
输入被减数(y) |
减法差值输出(diff) |
减法借位标志输出(s_out) |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
表1 半减器真值表
2)全减器对应原理图如图2。
图2 全减器对应原理图
(3)设计带有异步复位的可加减控制的50进制加减计数器。
三. 程序实现
具体代码和上机报告参考:
EDA技术与应用上机报告D触发器半减器全减器50进制加减计数器.zip-专业指导文档类资源-CSDN文库
例如:D触发器:
四.仿真附图
(1)D触发器的波形图如图3所示,该图中的clk,pest,clr,d信号在激励文件中已经行进设置,因为题目中要求置位信号的优先级要比复位信号优先级高,所以在该波形中,在置位信号和清零信号同时有效时,q端为高电平。
激励代码主要部分:
Initial begin
clk = 0;
clr = 0;
pset = 0;//首先初始化各个变量,置零
forever begin
#60 d <= 1;
#20 d <= 0;//在80ps中,每隔20ps,d信号置零,每隔60ps,d信号置1
end
end
always #720 clr = $random;//每隔720ps,clr信号变化
always #360 pset = $random;//每隔360ps,pest信号变化
always #20 clk <= ~clk;//每隔20ps,clk信号取反
图3 D触发器波形图
- 半减器的波形图如图4所示,该图中的clk,x,y信号在激励文件中已经行进设置,输出信号为差值diff和借位标志s_out。如图可知在clk信号有效时,该波形如图4所示,符合半减器真值表内容。
激励代码主要部分:
`define clock_period 20//宏定义clock_period为20ps
initial clk = 0;//clk初始化为0
always #(`clock_period/2) clk = ~clk;//每隔10ps,clk信号取反
initial begin
x = 0;//x初始化为0
repeat(20)
#(`clock_period) x = $random;//每隔20ps,x信号变化,重复20次
end
initial begin
y = 0;//y初始化为0
repeat(20)
#(`clock_period) y = $random;//每隔20ps,y信号变化,重复20次
end
initial begin
#(`clock_period*20)
$stop;//每隔20*20ps,停止
end
图4 半减器波形图
- 全减器的波形图如图5所示,该图中的clk, x,y,sub_in信号在激励文件中已经行进设置,全减器在调用了两个半减器的基础上增加了或门,使结果满足全减器真值表。
激励代码主要部分:
`define clock_period 20//宏定义clock_period为20ps
initial clk = 0;//clk初始化为0
always #(`clock_period/2) clk = ~clk;//每隔10ps,clk信号取反
initial begin
x = 0;//x初始化为0
repeat(20)
#(`clock_period) x = $random;//每隔20ps,x信号变化,重复20次
end
initial begin
y = 0;//y初始化为0
repeat(20)
#(`clock_period) y = $random;//每隔20ps,y信号变化,重复20次
end
initial begin
sub_in = 0;//sub_in初始化为0
repeat(20)
#(`clock_period) sub_in = $random;;//每隔20ps,sub_in信号变化,重复20次
end
initial begin
#(`clock_period*20)
$stop;//每隔20*20ps,停止
end
图5 全减器波形图
(4)50进制加减计数器的波形图如图6所示,clk作为系统时钟,rst为复位信号低电平触发,当rst=0时输出即为0。adds控制加减,当adds=0时计数器做减法计数,当adds=1时计数器做加法计数。此外当计数器计到49时cout=1即产生进位标志。经过仿真测试,仿真出的波形符合预期计算。
激励代码主要部分:
initial begin
clk=1;rst=0;//clk,rst初始化为0
#100;clk=0;rst=0;//100ps后,clk,rst置为0
#100;clk=0;rst=0;//100ps后,clk,rst置为0
#100;adds=1;//100ps后,adds置为1
repeat(50)
begin
clk=0;rst=1;//clk,rst分别初始化为0,1
#100;clk=1;rst=1;//100ps后,clk,rst置为1
#100;
end
clk=0;rst=1;;//clk,rst分别初始化为0,1
#100;clk=1;rst=1;//100ps后,clk,rst都置为1
#100;clk=1;rst=0;//100ps后,clk,rst分别置为1,0
#100;clk=0;rst=0;//100ps后,clk,rst都置为0
#100;clk=1;rst=1;//100ps后,clk,rst都置为1
#100;$stop;//100ps后,停止
end
图6 50进制加减计数器的波形图
五.上机总结
通过本次上机任务,我不仅复习了以前学过的数字电路逻辑设计相关知识,也对EDA知识以及对Verilog 语言的运用有了更深一步的理解。通过本次上机任务,我也比较熟悉实验的操作流程,相关的功能菜单选项和Quartus软件的使用,并进一步学习了一些对基本时序电路器件进行描述和仿真。在开始上机时,我对quartus软件的使用不够了解,编译运行上出现了很多问题,也不知道如何调试出波形图。后来,通过对教材第三章的研究,询问同学,以及在网上找资料,知道了module名称要保持与顶层实体一致,建立测试脚本(Test Bench)文件,Test Bench可以自动生成,但是核心语句需要自己添加。同时可以通过修改激励文件调整波形图。这次上机课在软件学习方面花费时间长,锻炼了我的自学能力,提高了我的自学能力。
在设计D触发器时,在复习数字电路逻辑设计相关知识的同时,也对Verilog语言有了更深的理解,并了解了D触发器的工作原理以及如何设计D触发器。在设计一位半减器和全减器的时候,刚开始构建好半减器后,不知道全减器如何调用半减器,后来通过网上查资料解决了问题。对于异步复位可加减50进制加减计数器运用了综合知识,刚开始写的代码在软件中运行有错误,后来通过参考课本解决了该问题。通过这次上机的四个内容,激发了我对eda学习的兴趣,有助于我以后的学习。
EDA技术与应用上机任务 电子信息类 Quartus II或Quartus Prime D触发器、半减器、全减器、可加减控制的50进制加减计数器。相关推荐
- 致此刻选专业发愁的你 | 从学技术到做CEO:电子信息类专业在大学时期的正确打怪升级路径
祝福你们,迎接完这人生的高考伟大战役.经历此役,你们踏上了更高的一层阶梯! "滴水石穿何所惧,蟾宫摘桂正当时",高中过程中只要拼尽全力,此役不管结果如何,我们都要向着自己的目标迈进 ...
- 计算机仿真技术-基于matlab的电子信息类课程课后答案,计算机仿真技术:基于MATLAB的电子信息类课程(第4版)...
目 录 第1章 MATLAB语言概述\t1 1.1 MATLAB语言及特点\t1 1.2 MATLAB的工作环境\t2 1.2.1 MATLAB系统的安装\t2 1.2.2 MATLAB系统的启动\t ...
- 计算机科学与技术和电子信息类哪个好,电子信息类七个专业哪个最好
很多同学想知道电子信息类七个专业哪个最好,以下是一些相关信息的整理,希望能对同学们有所帮助. 电子信息类七个专业哪个最好 信息与通信工程 首先,信息与通信工程属于典型的一级学科,在双一流学科名单.教育 ...
- 电子信息类学生必看的就业形势分析(转)
电子信息工程专业就业形势分析近几年来,IT.信息与电子类的毕业生在市场供求关系上普遍还是保持稳定的状况,社会需求量相对乐观.按照2005年毕业生就业情况统计,信息产业.IT.电子类的毕业生在各理工类中 ...
- 电子信息计算机专业院校排名,2021电子信息类专业大学全国排名
2021电子信息类专业大学全国排名2021-06-10 11:33:28文/叶丹 中国电子信息类专业最好的大学有哪几所,中国哪些本科大学电子信息门类专业实力最强?下面是全国最好的电子信息类专业大学排名 ...
- 计算机电子信息相关专业介绍,电子信息类专业有哪些
电子信息类专业有哪些 导读:小编根据大家的需要整理了一份关于<电子信息类专业有哪些>的内容,具体内容:电子信息类专业包括电子信息工程.电子科学与技术.通信工程.微电子科学与工程.光电信息科 ...
- 计算机硬件有关的课程,电气、电子信息类专业计算机硬件.PDF
电气.电子信息类专业计算机硬件.PDF 第23卷第3期 电气电子教学学报 V01.23No.3 2001年6月 OFEEEE OO1 J()URNAL Jun.2 电气.电子信息类专业计算机硬件 课程 ...
- 大数据统计分析毕业设计_基于大数据分析的电子信息类专业毕业设计成绩影响因素研究...
基于大数据分析的电子信息类专业毕业设计成绩影响因素 研究 温芳琴 [期刊名称] <佳木斯教育学院学报> [年 ( 卷 ), 期] 2019(000)011 [摘要] 通过收集苏州科技大学天 ...
- 清华大学成立人工智能学堂班,土木类、电子信息类实行全程大类培养
高考在即,5月18日,清华大学一年一度的校园开放日暨招生信息交流会如期举行.人工智能.大类贯通培养和专业认知,是本次校园开放日的关键词. 关键词1:人工智能 清华大学成立人工智能学堂班 开放日当天,清 ...
最新文章
- Idea不能新建package的解决
- xp系统下访问的两个组策略设置
- Xilinx基于模型的设计工具—Model Composer
- Nginx http和反向代理配置实例介绍
- 对传入的值,转成整数
- 外卖ERP管理系统(二)
- JVM(一) ---JVM的数据模型
- STM32中的timers中断处理函数
- ubuntu系统靠谱的清理内存的方法(can not allocate memory 问题)
- SiameseFC超详解
- .net项目开发工具最新动态
- HCL打开显示当前系统用户怎么解决_Mac键盘突然停止响应怎么办?
- python glob模块的应用
- mongodb、mysql、redis的性能对比
- 【路径规划】基于matlab GUI粒子群算法机器人避障路径规划【含Matlab源码 923期】
- OpenGL超级宝典(第7版)笔记7 细分曲面初介绍 清单3.7-3.8
- Vue项目中 实现ElementUi框架el-select拼音搜索功能
- 【数学】弧度和角度的转换
- linux设置mysql防火墙端口映射_Linux防火墙默认是关闭3306端口,iptables实现端口转发、端口映射及双向通路...
- 几款磁力搜索引擎,找资料更方便