时序比较器课程设计报告书
时序电路设计-101序列检测器

数字逻辑设计及应用课程设计报告姓名:雷蕾学号:2010012030036选课号:设计题号: 5一.设计题目:设计101序列检测器二.设计要求要求使用状态机设计一个序列检测器,检测输入数据,当输入中出现101时,输出1,否则输出为0。
不进行重复判断,即当出现10101…时,输出为00100…判断的具体流程如下:1.电路复位,进入状态S0,等待输入2.S0状态下:如果输入为0,则停留在S0,如果输入为1,则跳转到S13.S1状态下:如果输入为0,则跳转到S2,如果输入为1,则停留在S14.S2状态下:如果输入为1,则输出1,并跳转到S0,如果输入为0,则输出0,并跳转到S0检测器电路实现:时钟信号,1 bit输入待判断信号,1bit输出判断结果。
三.设计过程1.设计方案:通过使用ISE编写verilog语言,实现以下过程:1s3只有当s3接收到的输入信号为1的时候,输出才会为1,其余时候输出都为0.2.设计程序:模块文件:`timescale 10ns/1ns//////////////////////////////////////////////////////////////////////////////////// Company:// Engineer://// Create Date: 21:02:40 06/06/2012// Design Name:// Module Name: abcd// Project Name:// Target Devices:// Tool versions:// Description://// Dependencies://// Revision:// Revision 0.01 - File Created// Additional Comments://////////////////////////////////////////////////////////////////////////////////// module abcd(input reset,input clk,input ipt,output reg result);parameter [1:0] s0 = 2'b00, s1 = 2'b01, s2 = 2'b10;reg[1:0] state;always @ (posedge clk)beginif(reset)beginstate<=s0;result<=0;endelsebegincase(state)s0:beginif(ipt==0)beginstate<=s0;result<=0;endelse.beginstate<=s1;result<=0;endends1:beginif(ipt==0)beginstate<=s2;result<=0;endelsebeginstate<=s1;result<=0;endends2:beginif(ipt==0)beginstate<=s0;result<=0;endelsebeginstate<=s0;result<=1;endenddefault:beginstate<=s0;result<=0;endendcaseendendendmodule测试文件:`timescale 10ns / 1ps////////////////////////////////////////////////////////////////////////////// //// Company:// Engineer://// Create Date: 23:05:50 06/06/2012// Design Name: test_detector// Module Name: D:/TDDOWNLOAD/fortwo2/haha.v// Project Name: fortwo2// Target Device:// Tool versions:// Description://// Verilog Test Fixture created by ISE for module: test_detector//// Dependencies://// Revision:// Revision 0.01 - File Created// Additional Comments://////////////////////////////////////////////////////////////////////////////// //module haha;module test_detector();reg clk;reg reset;reg ipt;wire result;reg[20:0] indata=20'b101001110011011110110;integer i;initial clk=1;always #1 clk=~clk;initialbeginreset=1;ipt=0;#4reset=0;for(i=0;i<21;i=i+1)beginipt=indata[i];#2;end#10$stop;endabcd detector_instance(.clk(clk),.reset(reset),.ipt(ipt),.result(result));endmodule3.仿真结果四.设计结论(包括:设计结果分析、设计中遇到的问题、设计心得和体会等) 1.设计结果分析:以时钟信号的一个周期为基准,有仿真结果可看出,当输入(ipt)为连续的一个周期高一个周期的低一个周期的高(即101)时,输出(result)为高。
实验报告四(时序逻辑电路的设计)_林子坤_2014011541

实验名称:时序逻辑电路的设计实验者姓名:林子坤实验者学号:2014011541实验分组:DA43-229实验完成日期:2015年12月2日一、画出调试成功后的电路图,并说明各模块电路的工作原理。
电路图:工作原理:a. 60进制计数器(两位分钟数码)该模块需要一片74HC160和一片74HC161。
将第一个10进制计数器的进位输出端经过反相器后接入第二片芯片的时钟信号CLK端;将第二个芯片通过异步置数法改为6进制计数器,当出现6时进行置零并将此信号向下一级(小时个位数码)的时钟信号CLK端传递。
b. 小时个位数码该模块需要一片74HC160。
接收到上一级传递过来的时钟信号后进行记数。
c. 小时十位数码该模块需要一个D触发器改装的T触发器。
在数字显示为09(CO=1)或11时被触发,输出反相。
二、总结(1)时序逻辑电路的设计和调试步骤。
设计步骤:1、仔细分析设计要求,确定输入、输出变量。
2、进行逻辑抽象,画出抽象的状态转换图,列出状态转换表和次态卡诺图。
3、根据实际情况与电路分析,选择合适的触发器。
4、画出逻辑电路图。
5、对画出的逻辑电路图进行Multisim仿真,检验电路正确性。
6、打印电路图,对电路及芯片的使用进行合理的布局。
7、搭接面包板。
调试步骤:1、检查电路所有的Vcc端和GND端是否接好,各个芯片是否正常供电。
2、检查各个小部分是否能够正常工作:如果有一些部分不能正常工作,则先检查芯片是否存在故障。
若芯片无故障,检查原理图是否正确、接线是否正确。
3、检查整个电路是否能够正常工作:如果不能正常工作,则需要检查各个连接结点是否接好。
若结点接好,检查原理图是否正确、接线是否正确。
4、最后检验显示结果是否正确。
如果不正确,对电源外加信号频率进行调整,排除因为频率过高导致的电路不稳定。
(2)在实验中遇到的问题及解决方法。
1、电路设计。
为了方便搭接,除了四个必要的74160和74161芯片,应该使用尽可能少的门,否则可能在面包板上放不下。
实验时序电路实验报告

实验时序电路实验报告摘要:时序电路是数字电路中的一种重要电路,它负责控制系统中各个部件和信号的时序关系。
本实验旨在通过设计和实现一个简单的时序电路,加深对时序电路原理的理解,并掌握时序电路设计的基本方法和步骤。
在实验中,我们采用了JK触发器和计数器等器件,通过逻辑电平的高低和输入信号的输入顺序来实现不同的时序控制功能。
通过实验我们发现,在正确配置和连接时序电路的各个部件后,时序电路可以准确地按照预定的时序顺序进行工作,实现了预期的控制效果。
一、实验目的1. 了解时序电路的基本概念和工作原理;2. 掌握JK触发器和计数器的基本特性和设计方法;3. 设计和实现一个简单的时序电路。
二、实验器材和设备1. 实验台板2. 集成电路(IC):7404、74107、741613. 电源、导线等三、实验原理1. 时序电路简介时序电路又称为序贯电路,是数字电路中按照一定的时序和顺序进行工作的电路。
它根据输入信号和内部时钟信号的时序关系来控制系统的输出,能够实现各种复杂的逻辑控制功能。
时序电路对时钟信号的边沿触发具有较高的要求,通常使用触发器作为时序电路的基本单元。
2. JK触发器JK触发器是一种常用的时序电路元件,具有两个正反馈输入端(J和K)和两个输出端(Q和Q')。
JK触发器的工作原理是当时钟触发信号为上升沿时,J、K输入信号控制Q输出端的电平状态。
3. 计数器计数器是一种常用的时序电路模块,它可以根据时钟信号的输入进行计数,并输出对应的计数结果。
常见的计数器有二进制计数器、十进制计数器等。
四、实验内容和步骤1. 实验电路的设计根据实验要求和所学知识,设计一个简单的时序电路。
本实验中,我们设计一个由两个JK触发器和一个计数器构成的时序电路。
其中,JK触发器用于接收输入信号和时钟信号,并根据输入信号的顺序和时钟信号的边沿触发生成输出信号;计数器用于对输入信号的个数进行计数,并根据计数结果控制输出信号的状态。
时序实验实验报告

一、实验目的1. 掌握时序逻辑电路的基本原理和设计方法。
2. 熟悉常用时序逻辑电路器件的结构和功能。
3. 培养实际操作能力,提高电路设计水平。
二、实验原理时序逻辑电路是指输出不仅与当前输入有关,还与过去输入有关,即电路的输出状态具有记忆功能的电路。
本实验主要涉及同步计数器和寄存器的设计与测试。
三、实验设备1. 数字电子实验箱2. 示波器3. 信号发生器4. 74LS163、74LS00、74LS20等集成器件四、实验内容1. 设计一个4位同步计数器,实现二进制加法计数功能。
2. 设计一个8位同步寄存器,实现数据的暂存和传送功能。
五、实验步骤1. 4位同步计数器设计(1)根据计数器功能要求,列出状态转换表。
(2)根据状态转换表,画出状态转换图。
(3)根据状态转换图,画出电路图。
(4)将电路图连接到实验箱上,并进行调试。
(5)观察计数器输出,验证计数功能是否正确。
2. 8位同步寄存器设计(1)根据寄存器功能要求,列出数据输入、保持、清除和输出控制信号的真值表。
(2)根据真值表,画出电路图。
(3)将电路图连接到实验箱上,并进行调试。
(4)观察寄存器输出,验证寄存功能是否正确。
六、实验结果与分析1. 4位同步计数器实验结果经过调试,4位同步计数器能够实现二进制加法计数功能。
观察计数器输出,验证计数功能正确。
2. 8位同步寄存器实验结果经过调试,8位同步寄存器能够实现数据的暂存和传送功能。
观察寄存器输出,验证寄存功能正确。
七、实验总结本次实验,我们通过设计4位同步计数器和8位同步寄存器,掌握了时序逻辑电路的基本原理和设计方法。
在实际操作过程中,我们提高了电路设计水平,培养了实际操作能力。
八、实验心得1. 在设计时序逻辑电路时,要充分理解电路功能要求,合理选择器件,确保电路能够实现预期功能。
2. 在调试过程中,要仔细观察电路输出,发现问题及时解决。
3. 通过本次实验,我们对时序逻辑电路有了更深入的了解,为今后学习和实践打下了基础。
时序电路实验报告总结

时序电路实验报告总结
时序电路实验报告总结示例如下:
1. 实验目的
本次实验的目的是了解时序电路的基本概念、分析方法和实际应用,掌握时序电路的设计与分析方法,提高实验技能水平。
2. 实验内容
本次实验包括时序电路的基本概念、线性时序电路分析方法、非线性时序电路分析方法、时序电路的建模与仿真、时序电路的实现与测试等环节。
3. 实验过程
(1) 时序电路的基本概念
在这一部分,学生对时序电路的基本概念和控制信号的定义、时
序电路的时序系数、时序电路的稳定性分析等知识点进行学习和掌握。
(2) 线性时序电路分析方法
在这一部分,学生通过搭建简单的线性时序电路,学习线性时序
电路的分析方法,包括基尔霍夫变换、拉普拉斯变换、傅里叶变换等。
(3) 非线性时序电路分析方法
在这一部分,学生通过搭建非线性时序电路,学习非线性时序电
路的分析方法,包括拉普拉斯变换、基尔霍夫变换、傅里叶变换、诺
特定里定理等。
(4) 时序电路的建模与仿真
在这一部分,学生通过搭建时序电路的模型,使用仿真软件进行
时序电路的仿真分析,学习时序电路的建模方法和仿真软件的使用。
(5) 时序电路的实现与测试
在这一部分,学生通过搭建时序电路,进行实际的测试,学习时序电路的实现方法和测试技巧。
4. 实验结果
在实验过程中,学生通过搭建、分析、仿真和实现时序电路,对时序电路的概念、分析方法、建模和实现技巧进行了深入了解,并掌握了时序电路的实际应用能力。
5. 实验结论
通过本次实验,学生掌握了时序电路的基本概念、分析方法、建模和实现技巧,能够灵活运用时序电路进行实际的电路设计和分析,提高了实验技能水平。
时序电路应用实验报告(3篇)

第1篇一、实验目的1. 理解时序电路的基本概念和组成,掌握时序电路的设计方法和分析方法。
2. 掌握计数器、寄存器、移位寄存器等时序电路的应用。
3. 熟悉FPGA开发环境,能够使用Quartus II设计工具进行时序电路的设计和仿真。
二、实验原理时序电路是数字电路中的一种重要电路,它能够根据输入信号的变化,产生一系列有序的输出信号。
时序电路主要由触发器、逻辑门和时钟信号组成。
1. 触发器:触发器是时序电路的基本单元,具有存储一个二进制信息的功能。
常见的触发器有D触发器、JK触发器、T触发器等。
2. 逻辑门:逻辑门用于实现基本的逻辑运算,如与、或、非、异或等。
3. 时钟信号:时钟信号是时序电路的同步信号,用于控制触发器的翻转。
三、实验内容1. 计数器设计(1)设计一个3位同步二进制加计数器。
(2)设计一个3位同步二进制减计数器。
2. 寄存器设计使用74LS74触发器设计一个双向移位寄存器。
3. 移位寄存器设计使用74LS74触发器设计一个单向移位寄存器。
4. 环形计数器设计使用74LS74触发器设计一个环形计数器。
5. 可控分频器设计使用Verilog HDL语言设计一个可控分频器,实现时钟信号的分频功能。
四、实验步骤1. 使用Quartus II设计工具创建工程,并添加所需的设计文件。
2. 根据实验原理,编写时序电路的Verilog HDL代码。
3. 编译代码,并生成测试平台。
4. 在测试平台上进行仿真,验证时序电路的功能。
5. 将设计下载到FPGA,进行硬件实验。
6. 记录实验结果,分析实验现象。
五、实验结果与分析1. 计数器实验结果(1)3位同步二进制加计数器:按照时钟信号的变化,计数器能够从000计数到111。
(2)3位同步二进制减计数器:按照时钟信号的变化,计数器能够从111减到000。
2. 寄存器实验结果使用74LS74触发器设计的双向移位寄存器,能够实现数据的左移和右移功能。
3. 移位寄存器实验结果使用74LS74触发器设计的单向移位寄存器,能够实现数据的左移功能。
时序电路测试及研究实验报告
时序电路测试及研究实验报告一、实验目的1、掌握时序电路的基本概念和工作原理;2、学习时序电路的测试方法;3、实验对仿真结果验证,进一步了解和理解时序电路的性能。
二、实验仪器和材料1、示波器;2、信号发生器;3、逻辑分析仪;4、7400、7474、74163等数字集成电路芯片;5、电路板、连接线等。
三、实验原理时序电路是一种含有存储单元的组合电路,可以实现不同时刻的输入、输出和状态转移。
时序电路可以分为同步时序电路和异步时序电路两种类型。
同步时序电路是指每次时钟上升沿时,电路的状态都会根据当前的输入信号和存储器的状态进行更新,因此该电路的输出状态只与时钟信号有关。
常见的同步时序电路有触发器、寄存器、计数器等。
异步时序电路是指每次时钟上升沿时,电路的状态不仅根据当前的输入信号和存储器的状态进行更新,而且可能还受到外部输入信号的影响。
因此该电路的输出状态除了与时钟信号有关外,还与其他输入信号有关。
常见的异步时序电路有锁存器、触发器等。
时序电路的测试是指通过特定的输入序列,观察电路在不同时刻的输出状态,并对电路的正确性进行判断。
常见的时序电路测试方法有基本时序测试和边界值测试。
基本时序测试是指通过在不同时间点上施加不同的输入信号序列,观察电路的输出状态,通过比对期望的输出状态和实际的输出状态,判断电路是否正常工作。
边界值测试是指通过在输入信号中使用最大值、最小值、最大不稳定延迟和最小不稳定延迟等极限数据进行测试,以检测电路的极限工作条件下的正确性和可靠性。
四、实验步骤1、搭建基本的时序电路,如触发器、寄存器、计数器等;2、给电路施加不同的输入信号序列,观察电路的输出状态;3、利用逻辑分析仪、示波器等工具,对电路的输入信号和输出信号进行测试;4、对比实际的输出状态和期望的输出状态,判断电路是否正常工作;5、使用边界值测试方法,对电路的极限工作条件下的正确性和可靠性进行测试。
五、实验结果及分析在实验过程中,我们使用了不同的数字集成电路,包括7400、7474、74163等。
时序逻辑电路实验报告
时序逻辑电路实验报告时序逻辑实验报告(时序逻辑实验报告1)。
实验目的1。
掌握同步计数器的设计方法和测试方法。
2掌握常用积分计数器的逻辑功能和使用方法。
第二,lshd数字信号盒。
该计数器不仅可用于计数,还可用于分频、定时和数字运算。
在实际工程应用中,很少使用小型触发器构成计数器,而直接使用中型集成计数器。
2(1)四位二进制计数器74ls161?74lsl61是具有同步设置和异步清除功能的4位二进制加法计数器。
其功能表如下表所示。
74ls163是一个4位二进制加法计数器,具有同步设置和同步清除功能。
其他函数与74lsl61相同,区别在于删除是同步的。
此图显示两个管脚的外部示意图。
表74lsl61功能表3。
应用集成计数器实现了正常情况下的任意一种计数器。
任何玛丽计数器的结构都可以分为三种类型。
第一种类型是由触发器组成的简单计数器。
第二种类型由一个集成的二进制计数器组成。
第三种类型是移位寄存器,它由移位寄存器组成。
在第一类中,您可以使用顺序逻辑电路进行设计。
在第二类中,当计数器的模数m较小时,可以通过积分计数器来实现。
当m较大时,可以通过级联多个计数器来实现。
实现方法有两种:反馈设置法和反馈清除法。
第三种类型是移位寄存器计数器,它由移位寄存器组成。
4实验电路:十进制计数器同步清除法、同步设定法、六边形回路输出、六边形分频电路图74ls161外部引脚图4。
实验内容及步骤?1。
综合计数器实验?根据电路图,使用介质集成计数器74ls163和“与非门74ls00”连接十进制计数器的同步设置或同步清零,输出连接到数码管或LED。
然后以单个脉冲作为触发输入,观察数码管或发光二极管的变化,记录电路的计数过程和状态转换规律。
根据电路图,用D触发器74ls7474构成一个六边形扭环计数器,输出端还连接到数码管或发光二极管上。
然后用单个脉冲作为触发输入,观察数码管或LED的变化,记录电路计数过程和状态转换规律。
注意观察电路是否能自动启动,否则不能将电路设置为有效状态。
《FPGA系统设计》实验报告》时序逻辑电路的设计
《FPGA系统设计》实验报告》时序逻辑电路的设计
一、设计任务
分别设计并实现锁存器、触发器的VHDL模型。
二、设计过程
1、同步锁存器:
同步锁存器是指复位和加载功能全部与时钟同步,复位端的优先级较高。
下图为同步锁存器的VHDL程序及模型:
2、异步锁存器:
异步锁存器,是指复位与时钟不同步的锁存器。
下图为同步锁存器的VHDL程序及模型:
3、D触发器:
D触发器是最常用的触发器。
下图为简单D触发器的VHDL 模型:
4、T触发器:
T触发器的特点是在时钟沿处输出信号发生翻转。
按
照有无复位、置位信号以及使能信号等,T触发器也有多种类型。
下图为带异步复位T触发器的VHDL模型:
5、JK触发器:
JK触发器中,J、K信号分别扮演置位、复位信号的角色。
为了更清晰的表示出JK触发器的工作过程,以下给出JK触发器的真值表(如表1所示)。
表1 JK触发器真值表
按照有无复位、置位信号,常见的JK触发器也有多种类型,下图带异步复位(clr)、置位(prn)的JK触发器的VHDL模型:
三.总结
本次实验中较为顺利,在第一次课的时间内我就已经完成了必做实验与选作实验。
在实验的过程中,在防抖电路处有了较大的困难。
由于仿真中不存在此问题,在实际操作中参数选择时遇到了一定的困难。
在反复比对效果之后,我
确定了电路的参数,实现了防抖功能。
通过这次实验,我对时钟脉冲、计数器等有了更加深入的认识与理解。
数电实验报告 典型时序逻辑电路分析与设计实验
《数字电子技术》课程实验报告实验四:典型时序逻辑电路分析与设计实验1、实验目的1、掌握中规模数字集成电路同步计数器的基本工作原理和使用方法。
2、理解中规模数字集成电路同步计数器的基本工作特性。
3、掌握用中规模数字集成电路同步计数器实现任意进制计数器的基本方法。
4、了解同步计数器基本调试方法。
2、实验任务1、4位二进制加法计数器74LS163功能分析(参考实验教材P356)(1)参考图6.7.1,在实验板创建4位二进制加法计数器74LS163功能分析电路:①计数;②清零;③保持功能。
图6.7.1(2)将检测结果记入自拟的表格中。
(3)将上电路改为在计数工作状态,输入时钟为10 kHz。
利用双踪示波器,观察输出波形与输入时钟时序关系,记录输出与输入时钟波形关系(至少一个周期以上)。
(4)选用器件:74LS163(4位二进制加法计数器)。
(5)选用仪器仪表:直流稳压电源+5V、脉冲信号发生器、发光二极管、双踪示波器。
2、4位二进制加法计数器74LS163的应用1(参考实验教材P358)(1)采用4位二进制加法计数器74LS163和反馈归零法,设计十进制计数器电路。
(2)自拟实验方案,记录所设计的计数器有效状态转换。
(3)将上电路输入时钟改为10 kHz,利用双踪示波器,观察输出波形与输入时钟时序关系,记录输出与输入时钟波形关系。
(注:至少一个周期以上)(4)仪器仪表:直流稳压电源、数字万用表、发光二极管、脉冲信号发生器、双踪示波器。
(5)元器件:74LS163(4位二进制加法计数器)、74LS20(双4输入与非门)。
3、4位二进制加法计数器74LS163的应用2(参考实验教材P358)(1)采用4位二进制加法计数器74LS163和反馈置数法,设计十二进制计数器电路。
(2)自拟实验方案,记录所设计的计数器有效状态转换。
(3)将上电路输入时钟改为10 kHz,利用双踪示波器,观察输出波形与输入时钟时序关系,记录输出与输入时钟波形关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
. .. . .. .. .. .. 目录 第一章 技术指标 1.1整体功能描述 1.2系统结构要求 1.3电气指标 1.4扩展指标 1.5设计条件 第二章 整体电路设计
2.1设计原理 2.1.1数据处理器的功能 2.1.2控制器的功能 2.1.3显示电路 2.2建立算法流程图和ASM图. 2.2.1算法流程图 2.2.2 ASM图 2.3 建立处理器明细表 2.3.1分析 2.3.2比较器 2.3.3数据选择器 2.3.4译码显示电路 2.3.5分频器 2.4控制器设计 2.5定时器 2.6秒信号产生电路 第三章 测试与调试
3.1处理器
3.2控制器 3.3总图 3.4实物图 第四章 试验小结和心得体会 . .. .
.. .. .. .. 第一章 技术指标 1.1整体功能描述 现代工业控制和微机系统中离不开数据处理器。时序比较器是数据处理器的一个部分,它能将输入的8421BCD码存储并进行比较,最终以十进制数显示其大小。时序比较器的功能是,用同一组输入端口分两次送入两组数据,经过比较显示出数值大的一组数据值。
1.2系统结构要求: 时序比较器的总体结构框图如下图:
RESET:开机后按复位键,低电平有效,整个系统复位。 AJ:当一组数据(X3~X0)设置完毕后,按“确认”键后,输入的这组数据有效。 Y1:Y1常亮,要求输入第一组数据,若闪亮,则为第一组数据为大数。 Y2:Y2常亮,要求输入第二组数据,若闪亮,则为第二组数据为大数。 D3~D0:较大数输出端,驱动显示十进制数。
1.3电气指标 (1)数据输入采用并行送数,系统先后收到两组8421BCD码后比较其大小,将大数输出,用十进制数显示出来。 (2)显示时间5S~10S,显示结束电路自动清零,进入初始状态。 (3)仅在开机后人工操作RESET开关,使RESET=0整机清零,整机立即进入工作状态;LED1点亮表示允许输入第一组数据Xa。 (4)按一次AJ键,表示输入一脉冲信号,Xa被确认后LED2点亮,表示允许输入第二组数据Xa。 (5)再按一次AJ键,Xb被确认,电路立即比较大小,输出显示大数。 (6)对比较结果:Xa>Xb ,Xa=Xb 或 XaXb 时,LED1闪亮; Xa时,LED2闪亮;Xa=Xb 时,两灯交替闪亮。 (7)系统设计要求采用ASM图法。 . .. . .. .. .. .. 1.4扩展指标 以串行方式从同一输入端口先后输入两 组M=4的序列码,每输入完一组按一次确认 键,比较前后两组序列码码值的大小,并显 示出大数值。序列码中后面的码值高于前面 的码值。
1.5设计条件 电源条件,直流稳压电源输出+5V。
第二章 整体电路设计 2.1设计原理
2.1.1数据处理器的功能 (1)输入数据进行寄存,比较数据大小,选择比较结果。 (2)大数送显示寄存器,通过译码器显示大数。同时比较器将结果送组合电路驱动两只发光二极管。 2.1.2控制器的功能 . .. . .. .. .. .. (1)开机后接收RESET键的复位信号,使控制器处于初始状态。 (2)确认按键送来的单脉冲信号使控制器由初始状态进入工作状态。 (3)控制器根据自身工作状态来控制数据寄存器,接收输入数据和将寄存器中的数据比较结果显示出来。 2.1.3显示电路 显示电路二—十进制译码器电路输入数据为二进制码,显示为十进制数。 二进制码转换为十进制数的电路,需要加修正电路,列出二—十进制数转换的真值表,找出其修正电路的特点。十进制数转换的真值表,找出其修正电路的特点。其参考电路见“课题十六 数字式电缆对线器”中的“二、电路设计提示”。
2.2建立算法流程图和ASM图 2.2.1算法流程图 . .. .
.. .. .. .. 2.2.2 ASM图
2.3 建立处理器明细表 . .. .
.. .. .. .. 2.3.1寄存器 (1)A寄存器的功能 1.保持、置数和清零。根据分析A寄存器的功能,选取74194芯片实现其三个功能比较器。从74194功能表可知,它有两个功能控制端M1M0,即:功能控制端的功能表如表3所示。同时74194芯片清零为异步清零。 2.A寄存器的控制信号: RESET 74194 清零 M1 M0 SET Xa 1 1 所以 M1M0=SET Xa CR = RESET+T0 3.电路图:
4.仿真: 5.结论:电路仿真结果完全符合设计要求。 (2)B寄存器的功能 . .. . .. .. .. .. 1.从处理器明细表可知有3个功能:清零、保持和置数。同样采用74194实现。则M1=M0=SET Xb, CR=RESET+T0 2.电路图:
3.仿真:
4.结论:电路仿真结果完全符合设计要求。 2.3.2比较器 a.选择7485芯片 b.1.(A=B)i=1 , (AB)i=0 ; 2.A3~A0 接A寄存器的Q3~Q0 ; 3.B3~B0 接B寄存器的Q3~Q0 ; . .. . .. .. .. .. 4.输出FA>B、FA<B、FA=B ; A3~A0= B3~B0 ,则FA=B =1, FA>B=FA<B=0 A3~A0> B3~B0 ,则FA>B =1,FA=B =FA<B=0 A3~A0< B3~B0 ,则FA<B =1,FA=B =FA>B=0
c.电路图:
d.仿真: . .. .
.. .. .. .. e.结论:电路仿真结果完全符合设计要求。 2.3.3数据选择器 根据题目技术要求选出大数,即从A和B两数中选出大数。可选用二选一数据选择器。由于A和B为四位而二进制数,则选用74157 四个二选一数据选择器。 (1)二选一数据选择器的地址控制端和数据端连接。从ASM图和处理器明细表可知,输出端输出大数,地址A端连接到FA〈B。 数据端D1接B寄存器的Q端; 数据端D0接A寄存器的Q端 当A=FA〈B=1时,选择D1数据输出(Y=B,B为大数)。 当A=FA〈B=0时, A〉B,选择D0数据输出(Y=A,A为大数) A= B,选择D0数据输出(Y=A,选A输出) (2)二选一数据选择器的使能端控制命令 当E=1,Y=0时,数据选择器不工作; 当E=0,Y输出取决于地址A。 因此,从ASM图和处理器明细表可知:E=T3 当T3=0时,E=1,Y=0时,数据选择器不工作; 当T3=1时,E=0,数据选择器工作。 . .. . .. .. .. .. (3)电路图: . .. .
.. .. .. .. (4)仿真:
(5)结论:电路仿真结果完全符合设计要求。 . .. .
.. .. .. .. 2.3.4译码显示电路 1.显示管:共阴极 2.译码管: 方案选择——用VHDL硬件描述语言描述,编译成所需的逻辑器件.(连线方便, 效率高) 3.电路图: . .. .
.. .. .. .. 4仿真
4.结论:电路仿真结果完全符合设计要求。 . .. .
.. .. .. .. 2.3.5分频器 1.利用555产生100Hz时钟信号,通过74160分频可获的1Hz时钟信号。 2.电路图:
3.仿真: 4.结论:电路仿真结果完全符合设计要求。 2.4控制器设计 . .. . .. .. .. .. 控制器采用每态一个D触发器实现。由于ASM图中有四个状态,所以需要4个D触发 实验中使用GAL16V8,所以以上容可以通过编程烧到GAL16V8中,有利于电路的集成。 代码如下: PIN [1,2,3,4]=[CP,RESET,AJ,8S]; PIN [19,18,17,16,13,12] =[T0,T1,T2,T3,L1,L2]; T0.D=T3&8S#!RESET; T1.D=(T0#T1&!AJ)&RESET; T2.D=(T1&AJ#T2&!AJ)&RESET; T3.D=(T2&AJ#T3&!8S)&RESET; L1=T3&!8S&F1&CP#T3&!8S&!F1&F2&CP#T1; L2=T3&!8S&!F2&!F1&CP#T3&!F1&!8S&F2&!CP#T2;
2.5定时器(74161一片) 电路图:
2.6秒信号产生电路
第三章 测试与调试
. .. . .. .. .. .. 3.1处理器 3.1.1处理器=A寄存器+B寄存器+CNT寄存器+MUX数据选择器+比较器
3.1.2仿真图
分析: 1.RESET=1,T1=T2=T3=0,置数器清零 2.RESET=0,T1=1,T2=T3=0,X3-X0=0110,置数A,GG=1 3.RESET=0,T2=1,T1=T3=0,X3-X0=1000,置数B,LL=1 4.RESET=0,T3=1,T1=T2=0,置数器比较,A-G输出大数11111111(8),CNT=8时