DIN[14:7] DOUT[15: 0] 74x251 P334DIN6015] 74×251 利用三态输出 图6-1 DIN[13:6] 74x251 74x251 DIN[5015141 74×251 基本原理: 利用多路复用器, DIN[O, 15: 9] 通过控制教据输 74×251 DIN[8:1] 入端的连接使輪 74x251 DIN[158] 出产生移位。 74×251 DIN[7:0] 74x251 DIN[15:0] 负载太大 S3 s[2:0 s[3:0] 6 制作:金燕华
6 制作:金燕华 P334 图6-1 DIN[14:7] DIN[6:0,15] DIN[13:6] DIN[5:0,15,14] DIN[0,15:9] DIN[8:1] DIN[15:8] DIN[7:0] DIN[15:0] S[3:0] S[2:0] S3 74x251 74x251 74x251 74x251 74x251 74x251 74x251 74x251 利用三态输出 74x251 DOUT[15:0] 基本原理: 利用多路复用器, 通过控制数据输 入端的连接使输 出产生移位。 负载太大
方亲三:利用74x157 如何利用2輪入4位多路复用控制移位? 74x×157 基本原理: 利用多路复用器, DIN[3: 0]-A4-A0 Y4~Y0 DIN[2:03] B4~B0 通过控制教据输 入端的连接使輪 当S=0时,Y=A,不移位 出产生移位。 当S=1时,Y=B,相当于右移一位 改变A端输入数据的连接顺序 可以使输出:左/右移动一或多位 制作:金燕华
7 制作:金燕华 方案二:利用74x157 G S A4~A0 B4~B0 Y4~Y0 74x157 DIN[3:0] DIN[2:0,3] 如何利用2输入4位多路复用控制移位? 基本原理: 利用多路复用器, 通过控制数据输 入端的连接使输 当S=0时,Y=A,不移位 出产生移位。 当S=1时,Y=B,相当于右移一位 改变A端输入数据的连接顺序 可以使输出:左/右移动一或多位
74x157 DI[15:12] A4NAO 84~B0 Y4NY05 YO[15: 12 通过0控制6位多路复用器移 D工[14:11] G S DI[11:8] A4NAO B4~B0Y4~Y0Yo1:8] DI[10:7] G S DI[7:4] A4NAO B4~B0 Y4NY0-TYO[7: 4 DI6:3] G S DI[3:0] A4NAO B4~B0 Y4N YO-Yo[3: 0 D工[2:015] G S 位DI5:0 Yo[15:0] 制作:金燕华
8 制作:金燕华 通过 S0控制 16位多路复用器移位 74x157 A4~A0 B4~B0 G S Y4~Y0 YO[3:0] YO[7:4] YO[11:8] YO[15:12] DI[3:0] DI[7:4] DI[11:8] DI[15:12] DI[2:0,15] DI[6:3] DI[10:7] DI[14:11] S0 DI[15:0] YO[15:0] A4~A0 B4~B0 G S Y4~Y0 A4~A0 B4~B0 G S Y4~Y0 A4~A0 B4~B0 G S Y4~Y0
DI[15:0] Do[15:0] 74x157 74x157 74x157 74x157 74x157 国74x157 74x157 74x157 □74x157 国74×157□74×157 74x157 74x157 74x157 74x157 74x157 s[3:0] S1 S2 S3 si=1:移动位移动2位移动4位移动8位 si=0:不移动 节省器件,延迟大,P335图62 制作:金燕华
9 制作:金燕华 DI[15:0] 74x157 74x157 74x157 74x157 S0 74x157 74x157 74x157 74x157 S1 74x157 74x157 74x157 74x157 S2 74x157 74x157 74x157 74x157 S3 DO[15:0] S[3:0] Si=1: 移动1位 移动2位 移动4位 移动8位 Si=0:不移动 节省器件,延迟大,P335 图6-2
浮点编码器 11010110100=1101×:2+0110100 0010010111=1001×210+0111 0000000010=0010×2+0 丿截位误差 浮点数的表示:B=M×2、+F 从第一个“1”开始取4位 3位指数 首先解决的几个问题: 由第一个“1”的位置决定 门)如何确定第一个“1”的位置?优先编码器 2)如何确定3位指数? 优先编码器的输出 如何从第一个“1”开始选出4位?—数据选择器 10 制作:金燕华
10 制作:金燕华 首先解决的几个问题: ⑴ 如何确定第一个“1”的位置? ⑵ 如何确定3位指数? ⑶ 如何从第一个“1”开始选出4位? 浮点编码器 11010110100 = 1101×2 7 + 0110100 00100101111 = 1001×2 5 + 01111 00000000010 = 0010×2 0 + 0 2 111 2 101 2 000 从第一个“1”开始取4位 由第一个“1”的位置决定 3位指数 浮点数的表示: B = M × 2 E + T 截位误差 —— 优先编码器 —— 优先编码器的输出 —— 数据选择器