数字逻辑第6章(2)寄存器与移位_第1页
数字逻辑第6章(2)寄存器与移位_第2页
数字逻辑第6章(2)寄存器与移位_第3页
数字逻辑第6章(2)寄存器与移位_第4页
数字逻辑第6章(2)寄存器与移位_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、6.2 寄存器寄存器 在数字系统中经常使用寄存器存放二进制代码,如地址在数字系统中经常使用寄存器存放二进制代码,如地址寄存器、指令寄存器、数据寄存器、控制寄存器、状态寄存寄存器、指令寄存器、数据寄存器、控制寄存器、状态寄存器、器、,寄存器是由一组触发器构成的,信息是在统一的,寄存器是由一组触发器构成的,信息是在统一的时钟脉冲作用下存入寄存器。时钟脉冲作用下存入寄存器。1)简单寄存器)简单寄存器CP3D3Q3QCP2D2Q2QCP1D1Q1QCP0D0Q0QCPABCDAQBQCQDQ通用四位并行寄存器通用四位并行寄存器74LS175 CLK CLR 1D 2D 3D 4D1Q1Q2Q2Q3Q3

2、Q4Q4Q74LS175逻辑符号逻辑符号互补输出端互补输出端数据输入端,数据输入端,在在CP上升沿写上升沿写入寄存器。入寄存器。CP/CLR异步清零异步清零其逻辑图见教材其逻辑图见教材P212。/ RESET有效时,通过异步清零端将寄存器置为:有效时,通过异步清零端将寄存器置为:0000在在CP上升沿,数据输入端(上升沿,数据输入端(ABCD)的信息写入寄存器)的信息写入寄存器CP3D3Q3QCP2D2Q2QCP1D1Q1QCP0D0Q0QCPABCDAQBQCQDQ&MRRRRESET/R只有在控制信号只有在控制信号M=1时,才送到输出端(时,才送到输出端(QAQBQCQD)八位三态输出并行

3、寄存器八位三态输出并行寄存器74LS374逻辑符号逻辑符号 CLK OE 1D 2D 3D 4D 5D 6D 7D 8D1Q2Q3Q4Q5Q6Q7Q8Q74LS374CP/OE在在CP上升上升沿,沿,8位数位数据写入寄据写入寄存器。存器。/OE=0,寄存,寄存器数据输出;器数据输出;/OE=1,高阻,高阻状态。这种寄状态。这种寄存器适于挂接存器适于挂接到公共总线上。到公共总线上。其逻辑图见教材其逻辑图见教材P213。输出选通输出选通使能输入使能输入8位并行寄存器位并行寄存器74LS377逻辑符号逻辑符号 CLK EN 1D 2D 3D 4D 5D 6D 7D 8D1Q2Q3Q4Q5Q6Q7Q8

4、Q74LS377CP/G/G=0时,在时,在CP上上升沿,升沿,8位数据才位数据才写入寄存器。写入寄存器。11&1DCLKQ11D/GCP1位等效逻辑图位等效逻辑图/G=1时,保持时,保持二选一二选一寄存器的寄存器的Verilog HDL描述描述module myreg_8 ( data, clk, reset, OE, q ) ; input clk, reset, OE ; input 7:0 data ; output 7:0 q ; reg 7:0 temp ; / 目的目的? assign q = ( OE=1 ) ? temp : 8h00; / 功能功能? always ( po

5、sedge clk or negedge reset ) begin if (!reset) temp = 8h00; / 同步清零同步清零? else temp = data; endendmodule如何添加输入使能?如何添加输入使能? 移位寄存器是一种既能存储数据,又能对所存数据在移位寄存器是一种既能存储数据,又能对所存数据在时钟节拍作用下按位向高位(或低位)顺移的寄存器。时钟节拍作用下按位向高位(或低位)顺移的寄存器。按逻辑功能划分:串行输入按逻辑功能划分:串行输入串行输出;串行输出; 串行输入串行输入并行输出;并行输出; 并行输入并行输入串行输出;串行输出; 并行输入并行输入并行输出

6、。并行输出。按移位方式划分:按移位方式划分: 单向移位、双向移位、单向移位、双向移位、 循环移位、扭环移位循环移位、扭环移位 利用移位操作,可实现简单的乘除法。例如:将原寄存利用移位操作,可实现简单的乘除法。例如:将原寄存器中的数据向高位移一位,相当于乘以器中的数据向高位移一位,相当于乘以 2;向低位移一位,;向低位移一位,相当于除以相当于除以 2。 在数字通信系统中,移位寄存器广泛用于并行数据和在数字通信系统中,移位寄存器广泛用于并行数据和串行数据之间的转换。串行数据之间的转换。6.3 移位寄存器(移位寄存器(重点重点)1)串入)串入串出结构移位寄存器串出结构移位寄存器CP3D3QCP2D2

7、QCP1D1QCP0D0QCPSERINSEROUT若视该电路为右移,则左移?若视该电路为右移,则左移?串入串入串出的串出的Verilog HDL模型模型module shifter_R ( SERIN, CP, SEROUT ) ; input SERIN, CP ; output SEROUT ; reg 3:0 Q ; always ( posedge CP ) begin Q3= SERIN; Q2=Q3; Q1=Q2; Q0=Q1; end assign SEROUT= Q0; / ?endmodule可否?可否?Q3 = SERIN;Q2 =Q3;Q1 =Q2;Q0 =Q1;体会阻

8、塞与非阻塞区别体会阻塞与非阻塞区别结论:时序描述,用非阻塞。结论:时序描述,用非阻塞。2)串入)串入并出结构移位寄存器并出结构移位寄存器CP3D3QCP2D2QCP1D1QCP0D0QCPSERIN&RDQAQBQCQD串入串入并出的并出的Verilog HDL模型模型module shifter_R ( SERIN, CP, RD, OUT ) ; input SERIN, CP, RD ; output 3:0 OUT ; reg 3:0 Q ; always ( posedge CP ) begin Q3= SERIN; Q2=Q3; Q1=Q2; Q0=Q1; end assign O

9、UT= (RD=1) ? Q : 0 ; / ?endmodule3)并入)并入串出结构移位寄存器串出结构移位寄存器CP3D3QCP2D2QCP1D1QCP0D0QCPSINSEROUT 1& 1& 1& 1&1LD/SHIFTABCDmodule shifter_R ( SIN, CP, LD, Data, SEROUT ) ; input SIN, CP , LD; input 3:0 Data ; output SEROUT ; reg 3:0 Q ; always ( posedge CP ) if (LD=1) Q=Data ; / 并入并入 else begin Q3= SIN ;

10、 Q2=Q3 ; Q1=Q2 ; Q0CLK CLR S1 S0 RIN A B C D LIN74LS194QAQBQCQD异步清零异步清零 /CLR工作方式控制端工作方式控制端右移串行输入端右移串行输入端左移串行输入端左移串行输入端并行输入端并行输入端左移串行输出端左移串行输出端右移串行输出端右移串行输出端并行输出端并行输出端74LS194功能表功能表/CLRS1 S0CPQA QB QC QD功能功能01111 0 00 11 01 10 0 0 0QA QB QC QDRIN QA QB QCQB QC QD LINA B C D清零清零保持保持右移右移左移左移并行置数并行置数74LS

11、194的的Verilog HDL模型模型module my_194 (clr, clk, data, Rin, Lin, sel, Qout) ; input clr, clk, Rin, Lin; input 1:0 sel; input 3:0 data; output 3:0 Qout; reg 3:0 Qout; always (posedge clk or negedge clr) if ( !clr ) Qout = 4b0000; else case ( sel ) 2b00 : Qout=Qout; 2b01 : begin Qout1;Qout3=Rin;end 2b10 :

12、 begin Qout=Qout1;Qout0=Lin;end 2b11 : QoutCLK1DCLK1DCLKCP反反 馈馈 逻逻 辑辑 电电 路路Dn-1= F (Qn-1 ,Qn-2 , ,Q0)(右移)移位寄存器型计数器电路结构示意图(右移)移位寄存器型计数器电路结构示意图QQQ通过状态变化对通过状态变化对CP计数,一般采用循环移位方式。计数,一般采用循环移位方式。6.4.1 环形计数器环形计数器反馈电路为:反馈电路为:Dn-1 = Q0 构成自循环的移位寄存器构成自循环的移位寄存器 。现以现以n=4为例。为例。 DCPQ3DCPQ2DCPQ1CPDCPQ0不能自启动,有无效循环和陷阱

13、。不能自启动,有无效循环和陷阱。1000 01000001 0010010110101100 01101001 00111101 11101011 011100001111分析,画出状态图分析,画出状态图为了便于修改设计,先作出基本反馈下的状态矩阵:为了便于修改设计,先作出基本反馈下的状态矩阵:010111011100010001111111111001100011101110100010000110011000000023QQ01QQ1011010010110100)()()()(1t01t11t21t3QQQQ 010101010100010001110111011001100011001

14、1001000100001000100000000101101000001111001QQ23QQ100010001233QQQD 10011101011011000000000110000100001010101011010111101111011100111233QQQD DCPQ3DCPQ2DCPQ1CPDCPQ0&1Q3Q2Q1Q0下面我们画出该电路输出端的时序波形,分析其特点。下面我们画出该电路输出端的时序波形,分析其特点。波形波形CP1000111000000001000001003Q2Q1Q0Q每一时刻只有一个触发器状态为每一时刻只有一个触发器状态为1。(四位循环一个。(四位循环

15、一个1)每个触发器的输出均为与每个触发器的输出均为与CP等宽的脉冲。可直接用作等宽的脉冲。可直接用作 节拍发生器。节拍发生器。只使用了只使用了n个触发器的个触发器的n种状态,有种状态,有2n n个无效状态。个无效状态。0001100001000010例例1:采用:采用74LS194实现循环一个实现循环一个“1”的环形计数器。的环形计数器。解:根据功能表,设置成右移工作方式,将反馈逻辑引到解:根据功能表,设置成右移工作方式,将反馈逻辑引到 RIN输入端。当启动清零后,循环一个输入端。当启动清零后,循环一个“1”。CBACBAIN1233QQQQQQRQQQD 有有:参参照照ININLDCBARD

16、CBAQQQQ10SSCLKCLRA194LS741 )(/启启动动清清零零CLR10CPQAQBQCQD0 0 0 01 0 0 00 1 0 00 0 1 00 0 0 1ININLDCBARDCBAQQQQ01SSCLKCLRA194LS741)(/启启动动清清零零CLRCP101例例2:分析图示电路的逻辑功能。:分析图示电路的逻辑功能。解:从启动清零开始,根据反馈条解:从启动清零开始,根据反馈条 件和件和74LS194功能表,画出状功能表,画出状 态转移图,进行分析。态转移图,进行分析。QAQBQCQD S1 S00 0 0 00 1 1 11 0 1 11 1 0 11 1 1 01

17、 10 10 10 11 1置数置数置数置数右移右移右移右移右移右移/CLR清零清零CPCPCPCPCP 功能:功能:四位右循环一个四位右循环一个“0”;循环一个循环一个“0”环形计数器;环形计数器;模模4环形计数器。环形计数器。问题:若某时刻问题:若某时刻进入进入1111?例例3:四位右循环一个:四位右循环一个“0”的的Verilog HDL描述。描述。module R_shift_0 (clr, clk, Q); input clr, clk; output 3:0 Q; reg 3:0 Q; always (posedge clk or negedge clr) if (!clr) Q=

18、4b0111; else case (Q) 4b0111 : Q=4b1011; 4b1011 : Q=4b1101; 4b1101 : Q=4b1110; 4b1110 : Q=4b0111; default : Q=4b0111; endcaseendmodule思考:下列命题的思考:下列命题的Verilog HDL描述描述1)8位右循环一个位右循环一个“0”2)8位右循环一个位右循环一个“1”3)8位左循环一个位左循环一个“0”4)8位左循环一个位左循环一个“1”6.4.2 扭环形计数器(扭环形计数器(Johnson计数器)计数器)反馈电路为:反馈电路为:Dn-1 = Q0 构成自循环的

19、移位寄存器构成自循环的移位寄存器 。现以现以n=4为例。为例。 DCPQ3DCPQ2DCPQ1CPDCPQ00000 1000 1100 11100001 0011 0111 11110100 1010 1101 01101001 0010 0101 101111001111011111100011000100001000101101000001111001QQ23QQ)()()()(1t01t11t21t3QQQQ 11010101010001101011001010101001100110111101001001100100101001011021323103QDQDQDQQQD 0001

20、001111001111011111100011000100001000101101000001111001QQ23QQ)()()()(1t01t11t21t3QQQQ 11010101010001101011001010101001111011001021323103QDQDQDQQQD DCPQ3DCPQ2DCPQ1CPDCPQ0&CP3Q2Q1Q0Q0000 0000000000000100001111111111111110001特点:特点:1.相邻两组状态只有一位变化,符合可靠性编码原则。相邻两组状态只有一位变化,符合可靠性编码原则。 2.常用于步进电机控制,也称步进码计数器。常用于

21、步进电机控制,也称步进码计数器。 3.便于构成无竞争现象问题的顺序脉冲发生器。便于构成无竞争现象问题的顺序脉冲发生器。 4.只使用只使用 个触发器的个触发器的种状态,有种状态,有2n-2n个无效状态。个无效状态。例例1:分析采用:分析采用74LS194构成扭环形计数器。构成扭环形计数器。解:解:74LS194置成右移工作方式,置成右移工作方式,QD反相接入反相接入RIN,当启动清零,当启动清零 后,即进入有效循环。后,即进入有效循环。ININLDCBARDCBAQQQQ01SSCLKCLRA194LS74110CPCLR/启动清零启动清零0000 1000 1100 11100001 0011

22、 0111 1111问题:问题:电路进入电路进入0100,会如何,会如何?解决:应满足解决:应满足310QQQRin 观察:观察:1.上述电路也称模上述电路也称模8步进码计数器。步进码计数器。 2.若若QC反相接入反相接入RIN,可获得模,可获得模6步进码计数器。步进码计数器。 3.若若QB反相接入反相接入RIN,可获得模,可获得模4步进码计数器。步进码计数器。ININLDCBARDCBAQQQQ01SSCLKCLRA194LS74110CPCLR/启动清零启动清零例例2:4位位左移左移扭环形计数器的扭环形计数器的Verilog HDL描述描述关键是获得正确的状态图!关键是获得正确的状态图!0

23、0000001001101111111111011001000其余其余状态状态module R_shift_0 (clr, clk, Q); input clr, clk; output 3:0 Q; reg 3:0 Q; always (posedge clk or negedge clr) if (!clr) Q=4b0000; else case (Q) 4b0000 : Q=4b0001; 4b0001 : Q=4b0011; 4b1000 : Q=4b0000; default : Q=4b0000; endcaseendmodule4位左移扭环形计数器的位左移扭环形计数器的Verilog HDL描述描述同学补充同学补充完整完整例例3:分析图示电路的逻辑功能:分析图示电路的逻辑功能ININLDCBARDCBAQQQQ01SSCLKCLRA194LS74&10CPCLR/启动清零启动清零CBAQQQ0 0 01 0 01 1 01 1 10 1 10 0 1/CLR清零清零功能:模功能:模5步进码计数器步进码计数器? 模模5扭环形计数器扭环形计数器思考:若将与非门输入端改接到思考:若将与非门输入端改接到QCQD,电路的逻

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论