一、实验目的
1.掌握开源数字电路模拟软件Logisim的使用;
2.掌握有符号数加减运算溢出检测的基本方法;
3.掌握运算器的组成及其工作原理;
4.验证4位函数发生器74181的组合功能。
二、实验设备
EL-JY-II型计算机组成原理实验系统一套,排线若干。
三、实验内容
1.利用Logisim软件设计一个全加器;
2.利用Logisim软件设计一个行波进位的补码加法/减法器;
四、实验步骤
- 全加器设计 (1)在Logisim中画出一位全加器的电路图,电路图如下:
(2)在Logisim中测试该电路的正确性,并记录测试数据与测试结果。
Ai | Bi | Ci | Ci+1 | Si |
0 | 1 | 0 | 0 | 1 |
1 | 0 | 0 | 0 | 1 |
0 | 0 | 1 | 0 | 1 |
1 | 1 | 1 | 1 | 1 |
2.行波进位的补码加法/减法器设计
(1)学习Logisim中子电路(Subcircuit)的用法,然后将第1步中完成的全加器设计成成FA子电路单元;
(2)参照下面的电路图,并借助FA子电路单元在Logisim中画出8位行波进位的补码加法/减法器电路;
(多次粘贴图片不过来,大家可以自行进行补充)
(3)在Logisim中测试该电路的正确性,并记录测试数据与测试结果。
A | B | M | S | 溢出 | |||
2进制 | 10进制 | 2进制 | 10进制 | 2进制 | 10进制 | ||
01000000 | 64 | 01000000 | 64 | 0 | 10000000 | -128 | 1 |
00000100 | 4 | 00000010 | 2 | 0 | 00000110 | 6 | 0 |
00001000 | 8 | 00000010 | 2 | 1 | 00000110 | 6 | 0 |
00001010 | 10 | 00001000 | 8 | 1 | 00000010 | 2 | 0 |
3.74181功能验证
(1)参考EL-JY-II型实验仪配套的实验指导(实验一),在EL-JY-II型实验仪上完成运算器实验的线路连接;
(2)74181的功能表如下:
方式 | M=1逻辑运算 | M=0算术运算 | |
S3 S2 S1 S0 | 逻辑运算 | CN=1(无进位) | CN=0(有进位) |
0 0 0 0 | F=/A | F=A | F=A加1 |
0 0 0 1 | F=/(A+B) | F=A+B | F=(A+B)加1 |
0 0 1 0 | F=(/A)B | F=A+/B | F=(A+/B)加1 |
0 0 1 1 | F=0 | F=负1 | F=0 |
0 1 0 0 | F=/(AB) | F=A加A(/B) | F=A加A/B加1 |
0 1 0 1 | F=/B | F=(A+B)加A/B | F=(A+B)加A/B加1 |
0 1 1 0 | F=A⊕B | F=A减B减1 | F=A减B |
0 1 1 1 | F=A/B | F=A(/B)减1 | F=A(/B) |
1 0 0 0 | F=/A+B | F=A加AB | F=A加AB加1 |
1 0 0 1 | F=/(A⊕B) | F=A加B | F=A加B加1 |
1 0 1 0 | F=B | F=(A+/B)加AB | F=(A+/B)加AB加1 |
1 0 1 1 | F=AB | F=AB减1 | F=AB |
1 1 0 0 | F=1 | F=A加A | F=A加A加1 |
1 1 0 1 | F=A+/B | F=(A+B)加A | F=(A+B)加A加1 |
1 1 1 0 | F=A+B | F=(A+/B)加A | F=(A+/B)加A加1 |
1 1 1 1 | F=A | F=A减1 | F=A |
(3)参考EL-JY-II型实验仪配套的实验指导(实验一),从74181功能表中选择部分功能进行测试,同时记录测试数据与测试结果。
A | B | S3 S2 S1 S0 M Cn | F |
0001 | 0000 | 0 0 0 0 1 | 0001000100010000 |
0001 | 0001 | 0 0 0 1 1 1 | 0000000000000010 |
0001 | 0010 | 1 1 1 1 1 | 0000000000100001 |
0001 | 0001 | 1 1 0 0 1 | 0000000000000001 |
五、心得体会
让我对logism软件中子电路的使用有了初步了解,并可以运用电路解决一些简单问题,但并没有熟练掌握相关技巧。通过实验动手操作,让我对电路内部处理有了初步了解,加强了对其功能的理解。