实验五 计数器的设计
74138的实验报告

74138的实验报告数字系统设计综合实验报告数字系统设计综合实验报告实验名称:1、加法器设计2、编码器设计3、译码器设计4、数据选择器设计5、计数器设计6、累加器设计7、交通灯控制器设计班级:姓名:学号:指导老师:实验1 加法器设计1) 实验目的(1) 复习加法器的分类及工作原理。
(2) 掌握用图形法设计半加器的方法。
(3) 掌握用元件例化法设计全加器的方法。
(4) 掌握用元件例化法设计多位加法器的方法。
(5) 掌握用Verilog HDL语言设计多位加法器的方法。
(6) 学习运用波形仿真验证程序的正确性。
(7) 学习定时分析工具的使用方法。
2) 实验原理加法器是能够实现二进制加法运算的电路,是构成计算机中算术运算电路的基本单元。
目前,在数字计算机中,无论加、减、乘、除法运算,都是化为若干步加法运算来完成的。
加法器可分为1位加法器和多位加法器两大类。
1位加法器有可分为半加器和全加器两种,多位加法器可分为串行进位加法器和超前进位加法器两种。
(1)半加器如果不考虑来自低位的进位而将两个1位二进制数相加,称半加。
实现半加运算的电路则称为半加器。
若设A和B是两个1位的加数,S是两者相加的和,C是向高位的进位。
则由二进制加法运算规则可以得到。
(2)全加器在将两个1位二进制数相加时,除了最低位以外,每一位都应该考虑来自低位的进位,即将两个对应位的加数和来自低位的进位三个数相加,这种运算称全加。
实现全加运算的电路则称为全加器。
若设A、B、CI分别是两个1位的加数、来自低位的进位,S是相加的和,C是向高位的进位。
则由二进制加法运算规则可以得到:3)(1)(2)(3) 实验内容及步骤用图形法设计半加器,仿真设计结果。
用原件例化的方法设计全加器,仿真设计结果用原件例化的方法设计一个4为二进制加法器,仿真设计结果,进行定时分析。
(4) 用Verilog HDL语言设计一个4为二进制加法器,仿真设计结果,进行定时分析。
实验五计数器的设计实验报告

实验五计数器的设计——实验报告邱兆丰 15331260一、实验目的和要求1.熟悉JK触发器的逻辑功能。
2.掌握用JK触发器设计同步计数器。
二、实验仪器及器件1、实验箱、万用表、示波器、2、74LS73,74LS00,74LS08,74LS20三、实验原理1.计数器的工作原理递增计数器----每来一个CP,触发器的组成状态按二进制代码规律增加。
递减计数器-----按二进制代码规律减少。
双向计数器-----可增可减,由控制端来决定。
2.集成J-K触发器74LS73⑴符号:图1 J-K触发器符号⑵功能:表1 J-K触发器功能表⑶状态转换图:图2 J-K触发器状态转换图⑷特性方程:⑸注意事项:①在J-K触发器中,凡是要求接“1”的,一定要接高电平(例如5V),否则会出现错误的翻转。
①触发器的两个输出负载不能过分悬殊,否则会出现误翻。
② J-K触发器的清零输入端在工作时一定要接高电平或连接到实验箱的清零端子。
3.时序电路的设计步骤内容见实验预习。
四、实验内容1.用JK触发器设计一个16进制异步计数器,用逻辑分析仪观察CP和各输出波形。
2.用JK触发器设计一个16进制同步计数器,用逻辑分析仪观察CP和各输出波形。
3.设计一个仿74LS1944.用J-K触发器和门电路设计一个特殊的12进制计数器,其十进制的状态转换图为:5.考虑增加一个控制变量D,当D=0时,计数器按自定义内容运行,当D=1时,反方向运行五、实验设计及数据与处理实验一16进制异步计数器设计原理:除最低级外,每一级触发器用上一级触发器的输出作时钟输入,JK都接HIGH,使得低一级的触发器从1变0时高一级触发器恰好接收下降沿信号实现输出翻转。
实验二16进制同步计数器设计原理:除最低级外,每一级的JK输入都为所有低级的输出的“与”运算结果实验三仿74LS194设计原理:前两个开关作选择端输入,下面四个开关模仿预置数输入,再下面两个开关模仿左移、右移的输入,最后一个开关模仿清零输入。
试验四LED数码管显示数字试验五运动计时器的设计试验要求

下载流程
建立引脚约束文件,告诉软件实物中的引脚定义
下载流程
网络,是自己定义的 约束信息,在实验手册
引脚不可变
的每个实验部分有说明
下载流程
接上电源,插入下载线, 首次接入的话,需要等待 一会,保证电脑上设备管 理器下已经完成了驱动连 接。计算机自动安装驱动
编译没有错误之后,直接双击 【Configure Target Device】
输入
源文件目录
编译命令窗口
程序包, 类似C语言中 的include
待添加的程序主体
新建工程 输入
程序主体说明
添加程序包
端口说明
需要的信号,变量申 明 添加程序进 程
新建工程 输入
添加两条库调用语句
端口声明语句 内部信号量声明语句
模块进程,可多个
新建工程 综合
编写好程序之后,【保存】,双击左侧 栏下的【Synthesize-XST】,进行语法检 查,生成RTL原理图
下载流程
双击操作
单击右键选择
找到xx.bit文件,*有时候
窗口出现的不是刚才生成 生成Bit文件的路径,需 要切换过去找到
下载流程
这是选择了bit文件之后 会出现的几个窗口
下载流程
右键单击选择【program】 即完成了下载
下载流程
*常出现下载失败的原因: 1.芯片选型不对 2.连接驱动没有建立成功(电源上电)
实验题目及要求
实验四 LED数码管显示数字
实验五 运动计时器的设计
实验要求:
在四个七段LED数码管上
实验要求:
(1)在四个七段LED数码管上显示分钟和 秒,最长的计时时间为59:59。
显示自己学号的最后四位“xxxx”
五进制计数器实验中注意事项

五进制计数器实验中注意事项
1.需小心处理进位:五进制计数器在进位时需要特别注意,因为
其进位是在每5个数位之间进行的,因此进位操作需要特别小心,以
确保计数器不会出错或跳过某个数字。
2.需仔细标注输入和输出:在搭建五进制计数器时,需要仔细标
注输入和输出管脚的位置,以确保插入电路板时正确连接,避免错误。
3.需使用适当的电路元器件:五进制计数器需要大量使用器件,
如555定时器、CD4017计数器和74LS138译码器等。
一定要选择正确
的电路元器件,并按照其设计标准使用,以确保能够正确工作。
4.需注意电路板的布局:五进制计数器的电路板需要精心设计,
确保电路元件的布局合理,电路的连接清晰,以及电源和地线的正确
连接等。
5.需根据实际需求进行调整:五进制计数器的设计需根据实际需
求进行调整,如选择计数范围、计数方式以及计数间隔等,以确保计
数器符合实际应用。
实验五 加法计数器的设计

实验五、加法计数器的设计一、实验目的1、掌握计数器的设计与使用;2、掌握时序电路的设计、仿真和硬件测试;3、进一步熟悉VHDL设计技术;二、实验器材PC机一台、EDA教学实验系统一台、下载电缆一根(已接好)、导线若干三、实验要求1、带有使能端,有异步清零,同步置数的模为10进制加法计数器2、在功能允许的情况下,可自由发挥;四、参考程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 ISPORT (CLK,CLRN,ENA,LDN : IN STD_LOGIC;D:IN STD_LOGIC_VECTOR(3 DOWNTO 0);Q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC );END CNT 10;ARCHITECTURE behav OF CNT10 ISSIGNAL CQI : STD_LOGIC_VECTOR(3 DOWNTO 0):=“0000”;BEGINPROCESS(CLK, CLRN, ENA,LDN)BEGINIF CLRN = ‘0' THEN CQI<= (OTHERS =>'0') ;ELSIF CLK'EVENT AND CLK='1' THENIF LDN=‘0’ THEN CQ I<=D; ELSEIF ENA = '1' THENIF CQI < 9 THEN CQI <= CQI + 1;ELSE CQI <= (OTHERS =>'0');END IF;END IF;END IF;END IF;Q <= CQI; --将计数值向端口输出END PROCESS;COUT<=CQI(0) AND CQI(3);PROCESS( A ) –-译码电路BEGINCASE A ISWHEN 0 => SG <= "0111111"; WHEN 1 => SG <= "0000110";WHEN 2 => SG <= "1011011"; WHEN 3 => SG <= "1001111";WHEN 4 => SG <= "1100110"; WHEN 5 => SG <= "1101101";WHEN 6 => SG <= "1111101"; WHEN 7 => SG <= "0000111";WHEN 8 => SG <= "1111111"; WHEN 9 => SG <= "1101111";WHEN 10 => SG <= "1110111"; WHEN 11 => SG <= "1111100";WHEN 12 => SG <= "0111001"; WHEN 13 => SG <= "1011110";WHEN 14 => SG <= "1111001"; WHEN 15 => SG <= "1110001";WHEN OTHERS => NULL ;END CASE ;END PROCESS P3;END behav;七、实验报告1、写出实验源程序,画出仿真波形;2、总结实验步骤和实验结果;3、心得体会;4、完成实验思考题。
实验五 含异步清零和同步使能4位加法计数器的VHDL设计

实验五含异步清零和同步使能4位加法计数器的VHDL设计一、实验目的1掌握计数器的VHDL设计方法;2掌握异步复位和同步复位和使能的概念;3掌握寄存器性能的分析方法(即分析芯片所能达到的最高时钟频率)。
二、实验内容1异步复位4位加法计数器的设计;2同步复位4位加法计数器的设计。
3异步清0和同步时钟使能的4位加法计数器三、实验原理复位:给计数器一个初值叫复位,如果所给初值为0,则称复位为清零。
异步复位:复位跟时钟无关,只要复位信号的复位电平出现,计数器立即复位,如图5-1所示;同步复位:复位跟时钟有关,当复位信号的复位电平出现时,计数器并不立即复位,而是要等到时钟沿到来时才复位,如图5-2所示。
异步复位4位加法计数器的VHDL设计代码见教材P122-P123,仿真波形如图5-3所示。
同步复位4位加法计数器的VHDL部分代码如下,仿真波形如图5-4所示。
.图5-1异步复位图5-2同步复位图5-3异步复位计数器仿真波形图5-4同步复位计数器仿真波形四、实验步骤(一)异步复位4位加法计数器的设计1建立一个设计工程,工程名为CNT4B;2打开文本编辑器,建立一个VHDL设计文件,其VHDL代码见教材P164中的例6-20,文件名存为CNT4B.VHD。
注意文件的扩展名要选为.vhd,而且要求工程名、文件名和设计实体名必须相同。
3选器件:ACEX1K,EP1K30TC144-3(旧)或Cyclone,EP3C40Q240C8目标芯片。
4编译;5建立波形文件,然后保存,其文件名必须与工程名一致;【波形设置:①设置仿真时间为10us:②设置输入信号的波形:时钟周期设置为200ns,其他输入信号的波形设置参看图6-3。
】6仿真,观察输出波形是否正确;7时序分析:分析芯片所能达到的最高时钟频率。
【打开时序分析器,然后执行菜单命令:analysis/register performance/start,可以看到最高时钟频率为100.00MHZ】(二)同步复位4位加法计数器的设计8建立一个设计工程,工程名为CNT4B_SYS;9打开文本编辑器,建立一个VHDL设计文件,其VHDL代码参看异步计数器代码和实验原理中的参考代码,文件名存为CNT4B_SYS.VHD。
实验五可编程定时器计数器8254实验

实验五 可编程定时器计数器 8254/8253 实验图 1 可编程定时器/计数器 8253/8254 原理图1 实验目的 了解计数器的硬件连接方法及时序关系,掌握 8254/8253 的各种模式的编程及其原理,用示波器观察 各信号之间的时序关系。
2 实验设备(1) PC 机一台;(2) QTH-8086B 16 位微机教学实验仪一套。
3 实验说明8253/8254 是一种可编程的定时器/计数器芯片,它具有 3 个独立的 16 位计数器通道,每个计数器都 可以按照二进制或二-十进制计数,每个计数器都有 6 种工作方式,计数频率可高达 24MHz ,芯片所 有的输入输出都与 TTL 兼容。
计数器都有 6 种工作方式:方式 0—计数过程结束时中断;方式 1—可编程的单拍脉冲;方式2— 频率发生器;方式 3—方波发生器;方式 4—软件触发;方式 5—硬件触发。
6 种工作方式主要有 5 点 不同:一是启动计数器的触发方式和时刻不同;二是计数过程中门控信号 GATE 对计数操作的影响不 同;三是 OUT 输出的波形不同;四是在计数过程中重新写入计数初值对计数过程的影响不同;五是计 数过程结束,减法计数器是否恢复计数初值并自动重复计数过程的不同。
4 实验内容将 32Hz 的晶振频率作为 8254 的时钟输入,利用定时器 8254 产生 1Hz 的方波,发光二极管不 停闪烁,用示波器可看到输出的方波。
5 实验原理图6 实验步骤(1)实验连线:信号源模块短路32.0Hz,CLK 连到8254 模块的CLK0。
8254 模块选通线CS 连到MCU 主模块的地址A14。
8254 模块GATE0 接电源+5*;OUT0 接发光二极管L1。
该模块的WR、RD 分别连到MCU 主模块的WR、RD。
该模块该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到MCU 主模块的数据(AD0~AD7)、地址线(A0~A7)。
数字系统设计实验报告计数器、累加器

实验五计数器设计一、实验目的:1)复习计数器的结构组成及工作原理。
2)掌握图形法设计计数器的方法。
3)掌握Verilog HDL语言设计计数器的方法。
4)进一步熟悉设计流程、熟悉数字系统实验开发箱的使用。
二、实验器材:数字系统设计试验箱、导线、计算机、USB接口线三、实验内容:1)用图形法设计一个十进制计数器, 仿真设计结果。
下载, 进行在线测试。
用Verilog HDL语言设计一个十进制的计数器(要求加法计数;时钟上升沿触发;异步清零, 低电平有效;同步置数, 高电平有效), 仿真设计结果。
下载, 进行在线测试。
四、实验截图1)原理图:2)仿真波形:3)文本程序:5)波形仿真:五、实验结果分析、体会:这次实验, , 由于试验箱有抖动, 故在原理图上加了去抖电路, 但是在波形仿真的时候无需考虑抖动, 所以我在波形仿真的时候将去抖电路消除了, 方便观察实验六累加器设计一、实验目的:1)学习了解累加器工作原理;2)了解多层次结构的设计思路;3)学会综合应用原理图和文本相结合的设计方法。
实验器材:数字系统设计试验箱、导线、计算机、USB接口线三、实验内容:1)在文本输入方式下设计分别设计出8位的全加器和8位的寄存器, 并分别存为add8_8.v和reg8.v;3) 2)在原理图输入方式下通过调用两个模块设计出累加器电路, 并存为add8.bdf, 进行功能仿真;下载, 进行在线测试。
四、实验截图1)8位累加器原理图:2)波形仿真:3)文本输入8位加法器语言及符号:生成元器件:4)文本输入8位寄存器:生成图元:五、实验总结:通过本次实验, 学习了解累加器工作原理, 了解多层次结构的设计思路, 学会综合应用原理图和文本相结合的设计方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五计数器的设计
刘予歆
14346015 一、实验目的
使用JK触发器设计4位计数器;
区分同步计数器和异步计数器的不同原理。
如果有可能,分析两者不同的竞争和冒险的原因;
学会添加一些门电路,让普通的计数器改造成部分计数的电路;
用触发器,设计194芯片(只在 protues做原理图)
二、实验仪器
数电实验箱万用表示波器74LS73 74LS00 74LS08 74LS20
三、实验原理
2.集成J-K触发器74LS73
⑴符号:
图1 J-K触发器符号
⑵功能:
表1 J-K触发器功能表
功能
⑶状态转换图:
图2 J-K触发器状态转换图
⑷特性方程:
三、实验内容
实验说明:74LS73触发器的时钟接口是在下降沿发生状态的改变。
1、设计一个16进制异步计数器
用前一个触发器,即较低位的输出接入下一个,即较高位的时钟输入,实现“频率二分”。
如下图为原理图。
这是实验过程中的波形图,
从上到下对应二进制的较低位到较高位,从A到B点对应数字:0000、0001、0010、0011、0100、0101、0111、1000、1001、1010、1011、1100、1101、1110、1111。
然而图中有一些毛刺,经过放大,图片和毛刺产生原因的分析如下:
D0~D3是D8~D11的格雷码:
D8和D9的异或产生D0,D9和D10的异或产生D1,D10和D11的异或产生D2,而D11等于D3,
进过把毛刺放大,发现:毛刺边缘近似的和下方的BCD的波形图的对应的异或输入波段边缘对其。
因为计数器的JK触发器是从左网右一步一步传递的有时间延迟,所以造成了BCD边沿电位相同,对格雷码产生短时间的低电位,即为毛刺。
2、设计一个16进制同步步计数器
由于JK触发器的输入和输出中间有GAP,利用时间极短的GAP,让上一个,即较低位的触发器的输出状态来作为后一个,即较高为触发器的输入,当前触发器的所有较低位的触发器输出全部为1的时候,其输出状态才会改变。
以下是原理图
这是实验过程中的波形图,
从上到下对应二进制的较低位到较高位,从A到B点对应数字:0000、0001、0010、0011、0100、0101、0111、1000、1001、1010、1011、1100、1101、1110、1111。
然而图中有一些毛刺,经过放大,图片和毛刺产生原因的分析如下:
这几幅的毛刺要么看似和BCD的输入无关,因为在毛刺出现的时段,BCD的4位输出的电位都没有变化,按道理是不该有毛刺的。
经过和同学讨论,得出在极短时间内,示波器的扫描也是有一定的延迟,到时图中的毛刺
这个毛刺是因为JK触发器的延迟,经过异或门产生的
3、设计特殊的12进制同步计数器
所谓最后的状态1010,要跳转到0001,需要将第1位和第3位toggle,第4位不用管,因为随着时钟的进行,它自然会跳转到1.
以下是原理图
这是实验过程中的波形图,
从上到下对应二进制的较低位到较高位,从A到B点对应数字:、0001、00
10、0011、0100、0101、0111、1000、1001、1010、1011、1100
4、在上一个实验的基础上,添加一些门电路,使12进制计数可以正序,也可以逆序.
当UP=1时,前面所有的JK触发器的输出状态都是高电位的时候,当前的JK输出状态才改变;当up=0时,如果前面的所有的JK触发器的输出状态都是低电位的时候,当前的JK输出状态才改变。
由此,可以得到以下表达式,如下:
根据表达式设计原理图:
由于门的数量太多,所以决定只做逆序计数的,以下是倒序的波形图:
从上到下对应二进制的较低位到较高位,从A到B点对应数字:1100、1011、1010、1001、1000、0111、0101、0100、0011、0010、001
5、模拟194的功能,用JK触发器设计芯片
194芯片的功能如下:
根据上述表格,原理图如下:
原理图设计的说明:
如下图,A区是功能表格中S1和S2的功能选择和译码,当S1=S0=1时,C区的与门开启,而D区的与门的输出总是0,实现并行送数;当S1=1,S0=0时,D区的1、3、5、7的与门打开,而D区和C区的其它与门的与门输出全部是0,实现数据左移;同理,当S1=1,S0=1,只有D区的2、4、6、8的与门开启,实现数据的右移。
B区是左移或者右移的数据补充;而E区整合了以上三个功能的输出,并通过;
当S1=S0=0,E区没有新的数据传输,实现了数据的保持。
当然,以上功能只有在原理图里时钟下方的开关控制的清零端口~CR=1时才行,如果是0,JK的输出都是0。
即为清零。
由于所需的门比较多,就不能在实验箱上面进行。
所以我选择了数据右移的功能进行实验,波形图如下:
其中,我用197构建一个16进制计数器,
(1)当把Q0接入左补充数据端口时,波形图形图如下:
其中,D7是197的Q0输出,虽然每个时钟后,输入0,从D0~D3,0沿着左下角走,但是看起来是D0是D1的反向。
为了试验的可靠性,将Q1 Q2 Q3 作为向左数据补充。
Q1的波形图如下:
Q2的波形图如下:
Q1的波形图如下:
可以看出当197的Qi输出0时,间隔一个时钟,D0会复位,在下一个时钟,D1复位——一次下去,验证了我实现数据右移的成功。
6用ISE烧录BAsys2。
任务:用开关波动学号后两位的二进制码,如果正确,LED亮灯。
我的学号是14346015,后两位是0001 0101,所以如下是逻辑图:
然后进行烧录,实验在课堂上被老师验证。
四、总结
有些设计门电路多,实验板应付不过来,可以拆分设计的功能,一个一个的测试。
对于移位的实验,刚开始数据补充接口的频率和D0一样,感觉是逻辑非,但是改变输入的频率,实验期待的规律就可见了。
所以对于研究某个参数的实验,改变参数的性质可以更加稳健的发现规律,使得实验更加靠谱。