时序比较器课程设计报告Word文件下载.docx
- 文档编号:8362844
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:36
- 大小:595.79KB
时序比较器课程设计报告Word文件下载.docx
《时序比较器课程设计报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《时序比较器课程设计报告Word文件下载.docx(36页珍藏版)》请在冰点文库上搜索。
第四章实验小结33
4.1实验小结33
4.2心得体会33
第一章技术指标
1.1整体功能要求
现代工业控制和微机系统中离不开数据处理器。
时序比较器是数据处理器的一个部分,它能将输入的8421BCD码存储并进行比较,最终以十进制数显示其大小。
时序比较器的功能是,用同一组输入端口分两次送入两组数据,经过比较显示出数值大的一组数据值。
1.2系统的结构要求
时序比较器的总体结构方框图如图1-1所示。
在图1-1中:
RESET:
开机后按复位键,低电平有效,为整个系统的复位。
AJ:
当一组数据(X3~X0)设置完毕时,按“确认”键后输入的这组数据有效。
Y1:
第一组X3~X0数据输入,若第一组为大数,则Y1=1,LED1亮。
Y2:
第二组X3~X0数据输入,若第二组为大数,则Y2=1,LED2亮。
D3~D0:
较大数输出端,驱动显示电路显示十进制。
1.3电气指标
(1)数据输入采用并行送数,系统先后收到两组8421BCD码后比较其大小,将大数输出,用十进制数显示出来。
(2)显示时间8S,显示结束电路自动清零,进入初始状态。
(3)仅在开机后人工操作RESET开关,使RESET=0整机清零,整机立即进入工作状态;
LED1点亮表示允许输入第一组数据Xa。
(4)按一次AJ键,表示输入一脉冲信号,Xa被确认后LED2点亮,表示允许输入第二组数据Xb。
(5)再按一次AJ键,Xb被确认,电路立即比较大小,输出显示大数。
(6)对比较结果:
Xa>
Xb,Xa=Xb或Xa<
Xb,应有LED显示。
Xb时,LED1闪亮;
Xa<
Xb时,LED2闪亮;
Xa=Xb时,两灯交替闪亮。
(7)系统设计要求采用ASM图法。
1.4设计条件
(1)电源条件,直流稳压电源输出+5V。
(2)必须采用ASM图法进行设计,否则设计无效。
(3)可供选择的元件器件范围如下表1-1所示。
表1-1
型号名称及功能数量
74160十进制计数器3片
741944位双向移位寄存器2片
74854位比较器1片
74157四2选1数据选择器1片
7448七段显示译码器1片
741614位二进制计数器1片
7402四2输入或非门2片
74273三输入与非门1片
74004二输入与非门3片
第二章整体电路的设计
2.1设计原理
时序比较器是一个小型的数字系统,它包含控制器和受控器两大部分,其原理框图如图2-1所示。
图2-1时序比较器原理框图
2.1.1数据处理器的功能
由框图2-1可以看出,数据处理器的功能是:
(1)输入数据进行寄存,比较数据大小,选择比较结果。
(2)大数送显示寄存器,通过译码器显示大数。
同时比较器将结果送组合电路驱动两只发光二极管。
2.1.2控制器的功能
由框图2-1可以看出,控制器工作过程为:
(1)开机后接收RESET键的复位信号,使控制器处于初始状态。
(2)确认按键送来的单脉冲信号使控制器由初始状态进入工作状态。
(3)控制器根据自身工作状态来控制数据寄存器,接收输入数据和将寄存器中的数据比较结果显示出来。
2.1.3显示电路
显示电路二—十进制译码器电路输入数据为二进制码,显示为十进制数。
二进制码转换为十进制数的电路,需要加修正电路,列出二—十进制数转换的真值表,找出其修正电路的特点。
十进制数转换的真值表,找出其修正电路的特点。
其参考电路见“课题十六数字式电缆对线器”中的“二、电路设计提示”。
2.2建立算法流程图
2.2.1算法流程图
根据前面介绍的电气指标,设计条件和设计原理可以得到如下所示的时序比较器的算法流程图2-2:
图2-2时序比较器算法流程图
2.2.2ASM图
1,从算法流程图—>
ASM图:
原则1:
在算法的起始点安排一个状态;
如:
图2-2
图2-2
原则2:
必须用状态来分开不能同时实现的寄存器传输操作;
如:
图2-3
图2-3
原则3:
如果判断框中的转移条件受前一个寄存器操作的影响,应在它们之间安排一个状态。
图2-4
图2-4
2,根据课题分析,RESET信号为外部控制信号,即根据算法流程图可以得到ASM图2-5。
图2-5时序比较器ASM图
2.3建立处理器的明细表
根据ASM图可列出处理器的明细表,如表2-1所示:
2.3.1建立明细表的分析
首先根据明细表可知,处理器有三个寄存器,即:
A寄存器、B寄存器和CNT寄存器;
其次处理器有比较器、数据选择器、译码器和振荡器。
2.3.2寄存器
一,A寄存器
1,A寄存器的功能
从处理器明细表,可知A寄存器有三个功能:
保持、置数和清零。
2,讨论,求出其控制命令
根据分析A寄存器的功能以及数字电路第六章的学习,我们选取74194芯片作为实现其三个功能寄存器。
从74194功能表可知,它有两个功能控制端M1M0,即:
功能控制端的功能表如表2-2所示。
同时74194芯片清零为异步清零。
3,获得电路图
(1)芯片设计图(如图2-6):
(2)仿真设计图(如图2-7):
4,仿真(如:
图2-8)
5,分析仿真结果
(1)RESET=1,T0=T1=AJ=0,系统整体清“0”,即虽然X3—X0=0110,但是A3—A0=0000;
(2)RESET=0,T0=1,T1=AJ=0,系统整体清“0”,即虽然X3—X0=0110,但是A3—A0=0000;
(3)RESET=T0=0,T1=1,AJ=0,因为AJ=0,故不可以置数:
A3—A0=0000;
(4)RESET=T0=T1=0,电路保持,即虽然AJ=1,但是A3—A0=0000;
(5)RESET=T0=0,T1=AJ=1,X3—X0=0110,置数成功:
A3—A0=0110。
6,结论
(1)RESET和T0中只要有一个置为1,则系统整体清“0”;
(2)T1和AJ中两个都为1时,置数才会成功;
反之,保持。
(3)通过仿真,该74194能达到所要满足的A寄存器的功能。
二,B寄存器
1,B寄存器的功能
从处理器明细表,可知B寄存器有三个功能:
根据分析B寄存器的功能以及数字电路第六章的学习,我们同样选取74194芯片作为实现其三个功能寄存器。
功能控制端的功能表如表3所示。
则M1=M0=SETXb=T2·
AJ,CR=RESET+T0。
3,获得电路图
(1)芯片设计图(如图2-9):
(2)仿真设计图(如图2-10):
4,仿真(如图2-11)
(1)RESET=1,T0=T1=AJ=0,系统整体清“0”,即虽然X3~X0=1001,但是A3~A0=0000;
(2)RESET=0,T0=1,T1=AJ=0,系统整体清“0”,即虽然X3~X0=1001,但是A3~A0=0000;
A3~A0=0000;
(4)RESET=T0=T1=0,电路保持,即虽然AJ=1,但是A3~A0=0000;
(5)RESET=T0=0,T1=AJ=1,X3~X0=1001,置数成功:
A3~A0=1001。
(1)RESET和T0中只要有一个置为1,则系统整体清“0”,RESET信号为外部清零,T0信号为系统同步信号;
(3)通过仿真,该74194能达到所要满足的B寄存器的功能。
三,CNT寄存器
1,CNT寄存器的功能
从处理器明细表可知,它主要是作为定时器使用。
定时长度为:
8s,即为M=8的加法计数器。
当控制器进入T3状态时,计数器开始计数;
当所计的数为“8”时,计数器停止计数并清零返回到初始状态。
因此,CNT寄存器的功能有3个:
清零、计数和预置零。
根据以上分析CNT寄存器以及数字电路第六章的学习,我们可选用74161芯片来实现它的3个功能。
同时74161芯片为异步清零,同步置数。
CP=2HZ。
即:
功能控制端的功能表如表2-3所示:
(1)芯片设计图(如图2-12):
(2)仿真设计图(如图2-13):
4,仿真(如图2-14)
(1)RESET=1,T0=T3=0,系统整体清“0”;
(2)RESET=0,T0=1,T3=0,系统整体清“0”;
(3)RESET=T0=0,T3=1,当16个脉冲(即8S)后,CNT8=1,且CNT8维持1个脉冲;
(4)RESET=T0=0,T3=0,74161寄存器不工作,CNT8始终为0。
(1)RESET和T0只要有一个为1,则系统整体清“0”;
(2)T3=1,74161工作,周期为8s;
反之,T3=0,74161不工作。
(3)通过仿真,该74161能达到所要满足的CNT寄存器的功能。
2.3.3比较器
1,分析
根据分析处理器明细表以及数字电路第六章的学习,我们可选用7485芯片来实现Xa,Xb的比较。
其(A=B)i=1,(A<
B)i=0,(A>
B)i=0。
2,比较器的功能
(1)、A3~A0接A寄存器的Q3~Q0;
(2)、B3~B0接B寄存器的Q3~Q0;
(3)、输出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
(1)芯片设计图(图2-15):
(2)仿真设计图(如图2-16):
4,仿真(如图2-17)
(1)RESET=1,TO=AJ=0,T1=T2=0;
系统整体清“0”;
(2)RESET=T0=0,T1=AJ=1,T2=0,系统给A寄存器置数:
X3—X0=1001,则A3—A0=1001;
(3)RESET=T0=0,T2=AJ=1,T1=0,系统给B寄存器置数:
X3—X0=0101,则B3—B0=0101;
当给B寄存器置数结束后,立即进行比较:
GG=1,EE=LL=0;
表明第一个数大于第二个数;
(4)RESET=1,系统整体清“0”;
(5)RESET=T0=0,T1=AJ=1,T2=0,系统给A寄存器置数:
X3—X0=0001,则A3—A0=0001;
(6)RESET=T0=0,T2=AJ=1,T1=0,系统给B寄存器置数:
X3—X0=1001,则B3—B0=1001;
EE=1,GG=LL=0;
表明第一个数小于第二个数;
(7)RESET=1,系统整体清“0”;
(8)RESET=T0=0,T1=AJ=1,T2=0,系统给A寄存器置数:
(9)RESET=T0=0,T2=AJ=1,T1=0,系统给B寄存器置数:
表明第一个数等于第二个数;
(1)数a和数b是并行送入的,分别通过T1和T2控制,但在送数时,AJ=1,否则也不置数;
其原理可以见2.3.2A、B寄存器;
(2)当送完第二个数,系统立即进行比较。
2.3.4数据选择器
根据题目技术要求选出大数,即从A和B两数中选出大数。
可选用二选一数据选择器。
由于A和B为四位而二进制数,则选用74157芯片四个二选一数据选择器。
2,二选一MUX的地址,控制端和数据端连接
从ASM图和处理器明细表可知,输出端输出大数,地址A端连接到FA〈B。
分析:
当A=FA〈B=1时,选择D1数据输出(Y=B,B为大数)。
当A=FA〈B=0时,A〉B,选择D0数据输出(Y=A,A为大数)
A=B,选择D0数据输出(Y=A,选A输出)
3,二选一MUX的使能端的控制
当
=1,Y=0时,数据选择器不工作;
=0,Y输出取决于地址A。
因此,从ASM图和处理器明细表可知:
=
当T3=0时,
当T3=1时,
=0,数据选择器工作。
4,获得电路图
(1)芯片设计图(如图2-18):
(2)仿真设计图(如图2-19):
5,仿真(如图2-20)
6,分析仿真结果
(1)RESET=1,TO=AJ=0,T1=T2=T3=0;
(2)RESET=T0=0,T1=AJ=1,T2=T3=0,系统给A寄存器置数:
X3—X0=0101,则A3—A0=0101;
但是因为T3=0,所以74157不工作,即Y4—Y1=0000;
(4)RESET=T0=0,T2=AJ=1,T1=0,T3=1;
Y4—Y1=1001显示的是大数;
(5)RESET=1,系统整体清“0”;
(6)RESET=T0=0,T1=AJ=1,T2=0,系统给A寄存器置数:
(7)RESET=T0=0,T2=AJ=1,T1=0,T3=1,系统给B寄存器置数:
X3—X0=0001,则B3—B0=1001;
且Y4—Y1=1001;
(8)RESET=1,系统整体清“0”;
(9)RESET=T0=0,T1=AJ=1,T2=0,系统给A寄存器置数:
(10)RESET=T0=0,T2=AJ=1,T1=0,系统给B寄存器置数:
X3—X0=0001,则B3—B0=0001;
且Y4—Y1=0001。
(1)当送完第二个数,系统立即进行比较。
当T3=1时,74157工作。
(2)通过仿真,该74157能达到所要满足的CNT寄存器的功能。
2.3.5译码显示电路
1,显示管
译码器选择7448芯片(8421BCD码译成a~g的电位信号),显示选择共阴极数码管,
如图2-21:
8421BCD码译成a~g的电位信号表(如表2-4):
2,译码器
(1)方案选择
由8421BCD码译成a~g的电位信号表可以绘制卡诺循环图,即用组合电路设计,得到的电路有与或门等等,但是电路非常复杂,所以使用硬件描述语言,即VHDL语言实现。
通过HDLEditor编写7448模版(定义输入输出管脚,实现结构体功能),再链接(Synthesis->
checksyntax),最后运行(Project->
CreatMaacro).
(2)程序
libraryIEEE;
useIEEE.std_logic_1164.all;
entityX74_48is
port(
A3:
inSTD_LOGIC;
A2:
A1:
A0:
a:
outSTD_LOGIC;
b:
c:
d:
e:
f:
g:
outSTD_LOGIC
);
endX74_48;
architectureX74_48_archofX74_48is
signalx:
std_logic_vector(3downto0);
signaly:
std_logic_vector(6downto0);
begin
x<
=A3&
A2&
A1&
A0;
withxselect
y<
="
1111110"
when"
0000"
"
0110000"
0001"
1101101"
0010"
"
1111001"
0011"
0110011"
0100"
1011011"
0101"
1011111"
0110"
1110000"
0111"
1111111"
1000"
1111011"
1001"
0000000"
whenothers;
a<
=y(6);
b<
=y(5);
c<
=y(4);
d<
=y(3);
e<
=y
(2);
f<
=y
(1);
g<
=y(0);
endx74_48_arch;
(3)仿真(如图2-22,图2-23,图2-24)
(4)分析仿真结果
@1@分析图2-22:
(1)RESET=T0=1,系统整体清“0”;
(2)RESET=T0=0,AJ=T1=T2=0,置数保持,即A3—A0=0000,B3—B0=0000;
(3)RESET=T0=0,AJ=1,但是T1=T2=0,所以A,B寄存器都不工作;
(4)RESET=T0=0,AJ=T1=1,所以给A寄存器置数,X3--X0=0001,A3—A0=0001;
(5)RESET=T0=0,AJ=T1=T2=0,所以A寄存器数保持,数值X3--X0=1001发生变化,但并不给B寄存器置数;
(6)RESET=T0=0,AJ=T2=1,所以给B寄存器置数,X3--X0=1001,A3—A0=1001;
(7)RESET=T0=0,AJ=T1=T2=0,即置完第二个数,立即进行比较,LL=1,GG=EE=0,输出大数:
ABCDEFG=1111011。
@2@分析图2-23:
(2)RESET=T0=0,AJ=1,但是T1=T2=0,所以A,B寄存器都不工作;
(3)RESET=T0=0,AJ=T1=1,所以给A寄存器置数,X3--X0=1001,A3—A0=1001;
(4)RESET=T0=0,AJ=T1=T2=0,置数保持,即A3—A0=1001,B3—B0=0000;
(5)RESET=T0=0,AJ=1,T1=T2=0,所以A寄存器数保持,数值X3--X0=0001发生变化,但并不给B寄存器置数;
(6)RESET=T0=0,AJ=T2=1,所以给B寄存器置数,X3--X0=1001,A3—A0=0001;
(7)RESET=T0=0,AJ=T1=T2=0,即置完第二个数,立即进行比较,GG=1,LL=EE=0,输出大数:
@2@分析图2-24:
(5)RESET=T0=0,AJ=T1=T2=0,所以A寄存器数保持,数值X3--X0=0001,但并不给B寄存器置数;
(6)RESET=T0=0,AJ=T2=1,所以给B寄存器置数,X3--X0=0001,A3—A0=0001;
(7)RESET=T0=0,AJ=T1=T2=0,即置完第二个数,立即进行比较,EE=1,GG=LL=0,输出大数:
ABCDEFG=0110000。
(5)结论
由以上的分析仿真结果可以知道我们翻译出来的7448芯片是正确的。
2.3.6分频器
实验箱上提供2KHz振荡信号,通过1000分频可获的2Hz振荡信号。
(1)电路设计
1))芯片设计图(如图2-25):
2))仿真设计图(如图2-26):
(2)仿真(如图2-27)
(3)分析仿真结果
(1)CR=0,系统自动清“0”;
(2)CR=1,表示每通过1000分频可以获得2HZ振荡信号。
(4)结论
通过仿真,该74160能达到所要满足的分频器的功能。
2.4控制器设计
2.4.1方案选择
1,每态一位:
控制器中状态寄存器有多种形式,采用每态一位的方法设计控制器。
这种设计方法在状态不多的情况下便于设计和调测。
控制器采用每态一个D触发器实现,由于ASM图中有四个状态,所以需要4个D触发器。
2,数据选择器+寄存器+译码器:
控制器中状态寄存器有多种形式,采用数据选择器+寄存器+译码器的方法设计控制器。
这种设计方案占用的资源少,但设计和调测相对复杂。
通过以上的认真分析和比较本电路决定选择方案一(即:
每态一个D触发器),目的在于设计和调测控制器比较容易。
2.4.2求激励函数
2.4.3控制器发出的命令
SETXa=T1·
AJ,SETE=T3;
SETXb=T2·
2.4.4外部发出的命令
2.4.5发光二极管的逻辑表达式
依靠ASM图可以求出二极管的逻辑表达式:
2.4.6画
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 时序 比较 课程设计 报告