文档详情

数字逻辑基础》-第04章1

san****019
实名认证
店铺
PPT
214KB
约21页
文档ID:84028184
数字逻辑基础》-第04章1_第1页
1/21

4.6.2 移位寄存器,多功能移位寄存器的电路框架如图图中: clk 移位脉冲输入,每来一个clk脉冲,数据移动一位 data_out 数据并行输出,即各寄存器中数据的输出端 data_in 待移位的数据,并行输入 load 待移位数据的加载脉冲 dir 数据移动方向控制为0时数据左移,为1时数据右移 x 串行数据输入每移动一位,x的值就移入最高位(右移时)或 最低位(左移时) y 串行数据输出输出最位低(右移时)或最高位(左移时),例: 设计一个8位移位寄存器,具有上述全部功能步骤1 规划电路框架 若按整体设计电路,则规模大,难以进行: 输入变量共11个; 寄存器8个(状态代为码8位,激励函数的变量将达到19个) 现按位设计,最后级连成完整的电路Fm:触发器及相关电路; clk:移位脉冲; P : 移位方向控制端,即dir d : 待移位数据的第m位, W: 待移位数据的加载脉冲,即load Q :第m位数据的输出端第m位(m=7~0)的电路框架:,当右移时,Fm中的数据从AO端送出,Ai端的数据进入触发器,此时BO、Bi端不用; 当左移时,Fm中的数据从BO端送出,Bi端的数据进入触发器,此时AO、Ai端不用。

图示为用8个Fm模块级连成一个8位移位寄存器 Switch是二路数据选择器: 当P=1时,R点接通,y取自Q0,x从F7的Ai端进入,构成右移链路; 当P=0时,L点接通,y取自Q7,x从F0的Bi端进入,构成左移链路以上分析表明,本例的重点是设计Fm模块步骤2 建立状态表和状态图,触发器: 存储1位,选用1个D触发器, 时钟为公共的clk 数据输出:直接从触发器的Q端输出 数据加载:利用触发器的RD和SD 端, 并配以适当的控制逻辑 数据移位:组合逻辑 —— P、Ai 、 Bi 和现态Q为输入; AO 、BO为输出对Fm模块 (见右图),规划如下:,(1)Fm模块的数据加载设计:,由R-S触发器的激励方程,可求出其逻辑关系:,电路见右图2)Fm模块的数据移位设计:,即要求出D触发器的激励数据移位控制部分的状态真值表:,用卡诺图化简状态真值表,得:,电路见上面的数据移位控制部分3)切换电路 Swtich 的设计 由多路数据选择逻辑关系得:,步骤6 设计结果仿真,(1) 用MAX+plusⅡ创建Fm功能模块,,,,绘出电路,制作成用户功能模块,,(2) 调用功能模块实现完整电路,(3) 仿真,4.6.3 用MSI实现定时器,定时器的功能 在收到外部的启动信号时,立即开始计时; 当达到指定的时间时,立即发出“时间到” 信息。

定时原理 统计clk脉冲到来的个数,定时时间的长短与clk的个数成正比定时器的电路框架,clk 工作时钟、计数器的计数脉冲 Start 启动脉冲上升沿将计数器清为0,并启动计数 data_in 二进制时间常数值决定定时时间的长短 load 时间常数加载脉冲上升沿将数据 data_in 加载到锁存器 time_up “定时时间到”输出定时到跳为低电平;再次启动返回高电平电路工作过程 (1) 加载时间常数到数据锁存器,决定定时时间的长短 时间常数=定时时间÷clk的周期 (2)发出启动脉冲start,激活启动电路从0开始计数 (3)计数过程中,计数值与时间常数在数值比较器中比较,一旦相同, time_up立即下跳,将使: ① 令计数器停止计数,计数值被冻结在当前值上; ② 令启动电路进入等待状态只有再次启动,才能激活定时 若在定时中途加载时间常数,则立即按新的时间常数重新定时例 用MSI(中规模集成电路)实现一个8位定时器,定时时间范围为 0~255μs1) 芯片选择,计数器 选4位二进制同步计数器74HC163,,74HC163的管脚功能:,8位数据锁存器 选74HC374。

D7~D0:数据输入端; CLK: 上升沿加载数据D7~D0 Q7~Q0:数据输出端 OEN: 0:允许数据输出; 1:禁止输出(输出端呈高阻态),,8位数值比较器 选74HC688 当两组输入P7~P0和Q7~Q0上的数据相等时: 若GN=0,则EQUALN=0; 若GN=1,则EQUALN=12) 电路构成,,时间常数 加载与锁 存部分,,计数部分,,数值比较部分,,启动 部分,工作过程: 8位二进制计数 两片74HC163级连 而成 时间常数存储 由74HC374存储 ,存储的数据与计数值不停地比较 计数值与时间常数比较 由74HC688执行 第一组比较输入端接收计数值Q7~Q0; 第二组比较输入端接收时间常数P7~P0 一旦计数到达Q7~Q0=P7~P0,EQUALN立即为0 —— 传到计数允许控制端ENP,使计数停止,且冻结计数值; 计数值被冻结,EQUALN继续保持为0 启动 由启动电路向74HC163的CLRN端发送一低电平,Q7~Q0=0 —— Q7~Q0≠P7~P0,EQUALN=1,冻结被解除 —— 74HC163的计数得以允许3) 计数启动脉冲产生电路的设计,任务: 接收启动输入信号 start ,上升沿有效; 输出计数器清0脉冲clrn 。

start =1 后—— 第一个clk上升沿使 clrn 由1变0; 第二个clk上升沿使 clrn 回到1 按工作时序画出状态图 采用Mealy型电路 需要3个状态,记为A、B、C A:等待start上跳,有上跳转到B B:输出0,下一clk上跳时—— start=0 转到A; start=1 转到C,待start = 0 再转到A C:等待start下跳,转到A,启动完成需两个触发器,故有4个状态 D为无关状态; 处理状态D:将其转移到A态或C态,以解决了电路挂起或输出错误问题由状态图得出状态表,,编码: A:00 B:01 C:10 D:11,,化简,(4) 画出全部电路 用MAX+plusⅡ的图形编辑器绘图5 ) 电路仿真,4.7 异步时序逻辑电路的设计,(1) 无公共时钟控制信号 触发器的翻转借助于输入信号或电路中的其它信号的改变来实现触发器的翻转又会导致电路中的有关信号改变这种互为因果的关系如果处理不当,就会使电路不能正常工作 (2)输入信号不允许同时变化因控制翻转的输入信号来自不同的信号源,不可能严格对齐触发顺序不同会导致电路进入不同的状态 异步时序逻辑的主要优点: (1)可灵活地为各触发器选择不同的翻转控制信号,电路得以简化。

(2)任何时刻只需考虑输入信号中的一个有效,电路的描述简单 异步时序逻辑的分类: (1)电平型异步时序逻辑电路:触发器的翻转受触发信号的电平高低控制,接收作用的时间长; (2)脉冲型异步逻辑时序电路:触发器的翻转仅在触发信号的有关跳变沿发生,接收作用的时间短,较易把握 本节仅讨论脉冲异步时序逻辑电路的设计异步时序逻辑的特点:,例 采用T触发器,设计一个脉冲异步型模5计数器步骤1 构建电路框架 x: 计数输入脉冲,上升沿有效 注: x并非所有触发器的时钟 y2y1y0:计数值输出 Z: 进位输出步骤2 作原始状态图 5个状态,编码直接引用计数值用“↑”表示信号的上升沿步骤3 列出激励函数、时钟函数和输出函数的参考真值表,参考真值表:,注意: C2、 C1 、 C0: 时钟,也要求解; y2n+1 y1n+1 y0n+1: 不求解,列出只为 方便确定激励步骤4 求激励函数、时钟函数和输出函数,关键:找各触发器所需的时钟驱动源,原则如下: 找单一的信号源提供时钟,尽量避免将几个信号组合形成时钟 注意触发的因果关系不能把自己的时钟引发的跳变又作为自己的时钟 注意利用备选方案1)为各时钟寻找信号源 C0:启用备选方案,改 C0 =1 、T0=Ф 为 C0=↑、T0=0,使C0 与x 一致。

即: C0 =x C1:观察 发现,令C1 = 满足触发要求(因“↓”不起触发作用) 即: C1 = C2:启用备选方案,改 C2 =1 、T2=Ф 为 C2=↑、T2=0,使C2 与x 一致 即: C2 =x,↑ 0,↑ 0,↑ 0,↑ 0,,,,(2) 求激励函数 注意:激励函数是电平型的,在相关时钟跳变之前,必须为各触发器的激励端准备好到达指定的次态所需的激励量,以等待相关时钟跳变时向次态翻转所以,应借助现态来产生激励函数作卡诺图,化简:,注意: T2的表达式较复杂,现将T2改为D触发器,以进一步简化电路:,电路的输出为:,步骤4 画出电路并用MAX+plusⅡ仿真:,异步时序逻辑特点: (1)可能得到比较简单的电路 (2)工作速度要比同步时序逻辑低 由于各触发器的时钟来自不同的途径,到达的时刻滞后于输入信 号的长短不尽相同,整个电路完成一次状态转移花费时间必然要比同 步时序逻辑的长 (3)在状态转移的过程中,各状态变量的改变有先有后,在未达到稳定之 前,会出现短暂的过渡状态值或输出值。

下载提示
相似文档
正为您匹配相似的精品文档
相关文档