设计8位双向移寄存器电路.docVIP

  • 37
  • 0
  • 约1.25万字
  • 约 15页
  • 2016-10-13 发布于贵州
  • 举报
设计8位双向移寄存器电路

目录 1多功能双向移位寄存器 1 1.1基本工作原理 1 1.2 基本实现方案 1 2电路图设计 2 2.1 电路结构 2 2.2真值表 3 3移位寄存器的Verilog建模 3 3.1Verilog建模基础 4 3.2 8位双向移位寄存器Verilog描述 5 4程序仿真 6 5心得体会 8 参考文献 10 附录 11 摘要 使用硬件描述语言Verilog,在EDA工具QuartussII中,对8位双向移位寄存器进行行为级描述,根据设计语言进行功能时序仿真,验证设计的正确性与可行性。通过本基本设计熟悉QuartusII环境下的硬件描述操作流程,掌握基本的Verilog语法与编写风格。 关键字:Verilog QuartusII 移位寄存器 设计8位双向移位寄存器电路 1多功能双向移位寄存器 1.1基本工作原理 移位寄存器是基本的同步时序电路,基本的移位寄存器可以实现数据的串行/并行或并行/串行的转换、数值运算以及其他数据处理功能。但有时候需要对移位寄存器的数据流向加以控制,实现数据的双向移动,其中一个方向称为右移,另一个方向称为左移,这种移位寄存器就称为双向移位寄存器。 根据国家标准规定,逻辑图中的最低有效位(LSB)到最高有效位(MSB)的电路排列顺序应从上到下,从左到右。因此定义移位寄存器中的数据从低位触发器移向高位为右移,移向低位为左移。 为了扩展逻辑功能和增加使用的灵活性,某些双向移位寄存器集成电路产品又附加了并行输入、并行输出等功能。下图所示是上述几种工作模式的简化示意图。 图1-1 多功能移位寄存器工作模式简图 1.2 基本实现方案 图1-2所示是实现数据保持、右移、左移、并行置入和并行输出的一种电路方案。图中的D触发器是N为移位寄存器中的第m位触发器,在其数据输入端插入了一个4选1数据选择器,用2位编码输入控制,来选择触发器输入信号的来源。当时,选择该触发器本身输出的,次态为,使触发器保持状态不变;当时,触发器的输出被选中,故CP脉冲上升沿到来时,存入此前的逻辑值,即,而,从而实现右移功能;类似地,当时,选择,实现左移功能;而当时,则选中并行输入数据,其次态,从而完成并行数据的置入功能。上述四种操作概述于表1-1,此外,在各触发器的输入端,可以得到N位并行数据的输出。 图1-2 实现多功能双向移位寄存器的一种方案 表1-1 图1-2的功能表 控制信号 功能 控制信号 功能 S1 S0 S1 S0 0 0 保持 1 0 左移 0 1 右移 1 1 并行输入 2电路图设计 2.1 电路结构 根据上一节的移位寄存器的一种基本实现方案,可以设计出8位双向移位寄存器,完整电路图入图2-1所示。 此电路由8个4选1数据选择器、8个带异步清零的D触发器组成。所有的数据选择器编码端分别对应地接在一起,同时选择D触发器的信号数据来源。D触发器时钟端CP接一起,清零端也同样接在一起,这样可以保证级联D触发器的同步,和并行输出数据的清零。另,每个D触发器的输出对应一位并行输入。Dsr是右移串行数据输入端,Dsl是左移串行数据输入端,分别接最低有效位对应的数据选择器和最高有效位对应的数据选择器。 图2-1 8位双向移位寄存器 2.2真值表 分析电路图,可得此8位双向移位寄存器的真值表,入下表所示: 表2-1 8位双向移位寄存器真值表 输 入 输 出 清零 控制信号 串行输入 时钟 CP 并行输入 S1 S0 Dsr Dsl L L H L L H L H L H L H H H H L L H H L H H H H 注:表示CP脉冲上升沿之前瞬间的电平 3移位寄存器的Verilog建模 3.1Verilog建模基础 硬件描述语言Verilog HDL类似于高级程序设计语言(如C语言等),它是一种以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示更复杂的数字逻辑系统所完成的逻辑功能(即行为)。人们还可以用HDL编写设计说明文档,这种文档易于存储和修改,适用于不同的设计人员之间进行技术交流,还能被计算机识别和处理,计算机对于HDL的处理包括两个方面:逻辑仿真和逻辑综合。 逻辑仿真是指用计算机仿真软件对数字逻辑电路的结构和行为进行预测,仿真器对HDL描述进行解释,以文本形式或时序波形图形式给出电路的输出。在电路在实现之前,设计人员可以根据仿真结果初步判断电路的逻辑功能是否正确。在仿真期间,如果发现设计中存在错误,可以对HDL文件进行修改,直至满足设计要求为止。 在Verilog中,行为级描述主要使用由关键词ini

文档评论(0)

1亿VIP精品文档

相关文档