问答题 四位运算器框图如图2.2所示,ALU为算术逻辑单元,A和B为三选一多路开关。预先已通过多路开关A的SW门向寄存器R 1 ,R 2 送入数据如下:R 1 =0101,R 2 =1010。寄存器BR输出端接四个发光二极管进行显示。其运算过程依次如下: (1)R 1 (A)+R 2 (B)→BR(1010); (2)R 2 (A)+R 1 (B)→BR(1111); (3)R 1 (A)+R 1 (B)→BR(1010); (4)R 2 (A)+R 2 (B)→BR(1111); (5)R 2 (A)+BR(B)→BR(1111); (6)R 1 (A)+BR(B)→BR(1010)。 试分析运算器的故障位置与故障性质(“1”故障还是“0”故障),说明理由。
【正确答案】正确答案:运算器的故障位置在多路开关B,其输出始终为R 1 的值。分析如下: (1)R 1 (A)+R 2 (B)=1010,输出结果错; (2)R 2 (A)+R 1 (B)=1111,结果正确,说明R 2 (A),R 1 (B)无错; (3)R 1 (A)+R 1 (B)=1010,结果正确,说明R 1 (A),R 1 (B)无错;由此可断定ALU和BR无错。 (4)R 2 (A)+R 2 (B)=1111。结果错。由于R 2 (A)正确,且R 2 (A)=1010,本应R 2 (B)=1010,但此时推知R 2 (B)=0101,显然,多路开关B有问题。 (5)R 2 (A)+BR(B)=1111,结果错。由于R 2 (A)=1010,BR(B)=1111,但现在推知BR(B)=0101,证明开关B输出有错。 (6)R 1 (A)+BR(B)=1010,结果错。由于R 1 (A)=0101,本应BR(B)=1111,但现在推知BR(B)=0101,仍证明开关B出错。 综上所述,多路开关B输出有错。故障性质:多路开关B输出始终为0101。这有两种可能:一是控制信号BS 0 ,BS 1 始终为01,故始终选中寄存器R 1 ;二是多路开关B电平输出始终嵌在0101上。
【答案解析】