时序逻辑电路ppt课件
《时序逻辑电路ppt课件》由会员分享,可在线阅读,更多相关《时序逻辑电路ppt课件(27页珍藏版)》请在装配图网上搜索。
模拟与数字电路 Analog and Digital Circuits,17_时序逻辑电路(4),1,主要内容,数码管动态显示 按键/开关去抖动 数字系统结构 时序二进制乘法器 寄存器组,2,Nexys-3基本输入/输出,开关/按键 BTN按下为1 SW拨到上为1 LED指示灯 LD=1时点亮 7段数码管 AN=0使能相应数位 CA~CG:字形码,0显示相应段(共阳极),3,Nexys-2基本输入/输出,开关/按键 BTN按下为1 SW拨到上为1 LED指示灯 LD=1时点亮 7段数码管 AN=0使能相应数位 CA~CG:字形码,0显示相应段(共阳极),4,数码管动态显示,4位7段 数码 显示 接口,8,DG0,8,DG1,8,DG2,8,DG3,Clk,AN0,AN1,AN2,8,AN3,DG,5,按键/开关去抖动,输入 整形 电路,In,Clk,Ol,Op,若In≠Ol,则Cnt计数,否则清零 若Cnt=N,则Ol=in,Cnt=0 若Cnt=N且In=1,则Op=1 若Op=1,则Op=0,抖动持续时间一般在5~10ms,6,数字系统结构,数字系统 由若干逻辑功能部件构成,按一定顺序处理数字信号的电路 从结构上划分为数据通路和控制单元两部分 数据通路(Data Path) 数据在被处理过程中经过的路径 控制单元 (Control Unit) 控制数据通路中数据的流动方向和次序,7,示例1 — 时序二进制乘法器,X,Y:输入数据,被乘数和乘数,4位无符号二进制数 Z:输出数据,8位积 Start:控制输入,启动乘法运算,高电平有效 Reset:控制输入,复位,高电平有效 Done:状态输出,运算结束指示,高电平有效 Clk:时钟输入,,Start,,Reset,4位乘法器,,,4,Y,,,4,X,,,8,Z,,Done,,Clk,8,乘法运算过程,X2,X3,X0,X1,Y2,Y3,Y0,Y1,×,,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,,Z2,Z3,Z0,Z1,Z6,Z7,Z4,Z5,+,(当Yi =1),? ? ? ? =,X3X2X1X0,(当Yi =0),0 0 0 0,,手工运算过程,Z = X × Y,9,乘法器结构,10,乘法器结构(续),11,乘法器控制单元,状态图,,Start,,Reset,Clk,,控制单元,,,,,,Init,Add,,E,,B[0],Cnt,Shr,Done,Init: DX, BY, T0 , A0, C0,Cnt: TT-1,Add: {C, A}A+D,Shr: {C, A, B}{C, A, B}1 , C0,12,乘法器控制单元(续1),状态表,Reset,Start,B[0],E,Sn,Sn+1,Done,Init,Add,Shr,Cnt,,1,,x,x,x,x,S0,0,0,0,0,1,,0,0,x,x,S0,0,0,0,0,1,S0,0,1,x,x,S1,1,0,0,0,1,S0,0,X,0,x,0,0,0,1,0,0,X,1,x,S2,0,1,0,1,0,S1,S2,S1,0,X,x,0,0,0,1,0,0,0,X,x,1,S0,0,0,1,0,0,S2,S1,S2,,,13,乘法器时序图,,,,,,,,,clk,Start,,S0,,,Init,State,,Cnt,Add,,Shr,S1,S2,S1,S2,S1,S2,,,?,D,,?,B,,?,A,,?,T,1111,1011,00,0000,C,Done,,11,10,01,1101,0110,1111,0111,0110,1011,,E,,,?,?,,14,Verilog描述二进制乘法器,module binary_multiplier (x, y, z, start, done, reset, clk); output [7:0] z; output done; input [3:0] x, y; input start, reset, clk; reg [3:0] a, b, d; reg c; reg [1:0] state, next_state, t; parameter S0=2’b00, S1=2’b01, S2=2’b10; wire e; assign e = ~|t; assign z = {a, b};,15,Verilog描述二进制乘法器(续1),//state register always @(posedge clk or posedge reset) begin if (reset) state = S0; else state = next_state; end assign done = (state == S0); //next state function always @(start or e or state) begin case (state) S0: if(start) next_state = S1; else next_state = S0; S1: next_state = S2;,16,Verilog描述二进制乘法器(续2),S2: if (!e) next_state = S1; else next_state = S0; default next_state = S0; endcase end //datapath function always @(posedge clk) begin case (state) S0: if (start) begin d = x; b = y; a = 4’d0; c = 1’b0; t = 2’b0; end,17,Verilog描述二进制乘法器(续3),S1: begin t = t - 2’b01; if (b[0]) {c, a} = a + d; end S2: begin a = {c, a[3:1]}; b = {a[0], b[3:1]}; c = 1’b0; end endcase end endmodule,18,乘法器仿真波形,19,寄存器之间传输数据 每个寄存器的数据输入处配置多路数据选择器(MUX) 每个寄存器的输出数据连接到所有MUX 灵活实现多个数据同时传送,寄存器传送,L0,L1,L2,,R0,Ld,,,R1,Ld,,,R2,Ld,,,,,; S0=1, L0=1 ; S1=0, L1=1,,,,20,,BUS,多个部件共享用于传输数据的导线 每次只能传送一个数据,总线,R0 R1,; S=1, L0=1,L0,,n,R0,Ld,,,,S,,MUX,S,0,1,,,,2,,,n,,,n,,,L1,,n,R1,Ld,,,,n,,L2,,n,R2,Ld,,,,n,,,,,,,2,R0 R1,; E1=1, L0=1,; E0=0, E2=0,21,寄存器组,也称寄存器堆,或者寄存器文件(Register File) 例如,有3个读写端口的2m个n位寄存器,其中 D端口供写 DA:寄存器地址 D:写入数据 WE:写使能 A、B端口供读 AA、BA:寄存器地址 A、B:读出数据,22,,M U X,0 1 2 3,,,,,,,,R0,,,D,E,,R1,,,,D,E,R2,,,,D,E,R3,,,D,E,M U X,0 1 2 3,,,,,,,,,,,,Decoder,0 1 2 3,E,,,,,,A,,,,A,B,D,DA,AA,BA,WE,,2,,n,,2,,2,,n,,n,,n,,n,,n,,n,寄存器组的MUX实现,3端口4×n寄存器组,23,寄存器组的三态门实现,3端口4×32寄存器组,24,ALU,算术逻辑单元(Arithmetic Logic Unit) 设计8位ALU,ALU功能表,25,示例—数据通路,寄存器组 8个8位寄存器,记为R0~R7 ALU为前例 MEM为存储器 DI/DO: 输入/输出数据 MA: 地址 MW: 写使能,Register File,A,B,D,DA,AA,BA,WE,,,8,,,8,,,8,,,3,,,,,3,,,0 1 MUX,,,8,,,,,0 1 MUX,,,,,,,8,MEM,,,DI,DO,MW,MA,,,,,,8,,8,,,4,V,C,N,Z,S,,,3,4,K,,MB,,MD,R0 R1-R2,; AA=1, BA=2, MB=1,X,Y,H,F,ALU,; S=5, MD=0,; DA=0, WE=1,26,The End,27,- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 时序 逻辑电路 ppt 课件

链接地址:https://www.zhuangpeitu.com/p-1236402.html