2021-1-18计算机组成原理实验总结

         **实验一    验证74LS181运算和逻辑功能**

一、实验题目
验证74LS181运算和逻辑功能

二、实验目的
(1)掌握算术逻辑单元(ALU)的工作原理;
(2)熟悉简单运算器的数据传送通路;
(3)画出逻辑电路图及布出美观整齐的接线图;
(4)验证4位运算功能发生器(74LS181)组合功能。

三、总体设计
1、基本原理
ALU能进行多种算术运算和逻辑运算。4位ALU-74LS181能进行16种算术运算和逻辑运算。功能表如下:
在这里插入图片描述
在这里插入图片描述

四、详细设计
1、实验电路图
在这里插入图片描述

五、实验结果与分析
1、实验结果
在这里插入图片描述
2、分析
在验证74LS181组合功能的时候我们需要将其引脚对应的电平状态都设置成相应状态,然后根据74LS181的运算原理来推算结果是否正确。

六、小结与心得体会
1、小结:
(1)通过本次实验基本掌握了算术逻辑单元(ALU)的工作原理;
(2)通过本次实验熟悉了简单运算器的数据传送通路;
(3)通过本次实验能够画出逻辑电路图及布出美观整齐的接线图;
(4)通过本次实验验证了4位运算功能发生器(74LS181)组合功能,确实自己的电路连接无误。

2、心得体会:
通过本次实验我大致熟悉了Multisim.14的使用方法,刚开始使用Multisim.14的时候,我感觉无从下手,不过根据指导书中的指导内容,我逐渐能够上手一些简单的电路布置,最后通过一段时间终于完成了实验一的电路布局,我感觉通过本次实验我对电路的理解又加深了一点,对74LS181的运算原理的了解也更深刻了。所以本次实验对于我来说是很好的一次学习体验。

                  **实验二    运算器(2)**

一、实验题目
运算器

二、 实验目的
(1)熟练掌握算术逻辑单元(ALU)的应用方法;
(2)进一步熟悉简单运算器的数据传送原理;
(3)画出逻辑电路图及布出美观整齐的接线图;
(4)熟练掌握有关数字元件的功能和使用方法。
(5)熟练掌握子电路的创建及使用。

三、 总体设计
1.基本原理
本实验仿真单总线结构的运算器,原理如图2-2所示。相应的电路如图2-3所示。
电路图中,上右下三方的8条线模拟8位数据总线;K8产生所需数据;74244层次块为三态门电路,将部件与总线连接或断开,切记总线上只能有一个输入;两个74273层次块作为暂存工作寄存器DR1和DR2;两个74374层次块作为通用寄存器组(鉴于电路排列情况,只画出两个通用寄存器GR1和GR2,如果可能的话可设计4个或8个通用寄存器);众多的开关作为控制电平或打入脉冲;众多的8段代码管显示相应位置的数据信息;核心为8位ALU层次块。
在这里插入图片描述

四、详细设计
1.实验电路图;
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、实验结果与分析
1.实验结果
(1)在这里插入图片描述
(2)
在这里插入图片描述
(3)在这里插入图片描述
(4)
在这里插入图片描述
(5)在这里插入图片描述
(6)在这里插入图片描述
(7)
在这里插入图片描述
2.分析
(1)74LS244N的功能是控制器件对总线的占用,输入信号G用来控制74LS244N的工作,当输入信号G为低电平时,74LS244N工作,反之,则不工作;
(2)74LS273N作为暂存工作寄存器,它的作用就是保存需要运算的数据,当接收8位ALU层次块运算的任务时就将数据传入8位ALU层次块内进行运算,输入信号CLK主要接受脉冲信号,同时将传入的数据储存起来。;
(3)74LS374N作为通用寄存器组,首先它将K8产生所需数据暂时寄存在内部,当数据需要运算时,再将数据传出,CLK作为控制开关,控制74374层次块与外部进行数据交换而OC主要接受脉冲信号以存入数据。

六、总结与心得体会
1.总结
(1)通过本实验我熟练掌握算术逻辑单元(ALU)的应用方法并且进一步熟悉简单运算器的数据传送原理;
(2)通过本实验我能画出逻辑电路图及布出美观整齐的接线图;
(3)通过本实验我熟练掌握有关数字元件的功能和使用方法;
(4)通过本实验我熟练掌握子电路的创建及使用;

2.心得体会
在本次实验的过程中我刚开始创建出了子电路后发现虽然子电路与指导书中的看似一样,但并不能够正确使用,最后经过仔细检查,终于发现是连线的时候发生了错误,将本不在一起的两根线连在了一起,改正后运行则可以了,从这一点我明白电路的连接一定要细心,否则找错的时候尽管可以循序渐进,但是还是很耗费时间的,不过在自己的努力下终于将实验原理搞清楚并成功完成实验,心里还是很有成就感的。

                 **实验三 字发生器及跑马灯**

一、实验题目
字发生器及跑马灯

二、实验目的:
了解字发生器的使用方法。

三、总体设计
1.实验电路图
在这里插入图片描述

四、详细设计
1.实验原理
通过设定字发生器的数据,使探针依次点亮,形成跑马灯。

2.元件详解
字信号发生器(Word Generator)可以采用多种方式产生32位同步逻辑信号,用于对数字电路进行测试,是一个通用的数字输入编辑器。
单击Simulate/Instruments/Word Generator,得到如图2-4(a)所示的字信号发生器的图标。在字信号发生器的左右两侧各有16个端口,分别为0~15和16~31的数字信号输出端,下面的R表示输出端,用以输出与字信号同步的时钟脉冲;T表示输入端,用来接外部触发信号。
双击图2-4(a)中的字信号发生器图标,便可以得到图2-4(b)所示的字信号发生器内部参数设置控制面板。该控制面板大致分为5个部分。在这里插入图片描述
(1)Control区:输出字符控制,用来设置字信号发生器的最右侧的字符编辑显示区字符信号的输出方式,有下列3种模式。
Cycle 区:在已经设置好的初始值和终止值之间循环输出字符。
Burst:每单击一次,字信号发生器将从初始值开始到终止值之间的逻辑字符输出一次,即单页模式。
Step:每单击一次,输出一条字信号。即单步模式。
单击Set按钮,弹出如图2-5所示的对话框。该对话框主要用来设置字符信号的变化规律。其中各参数含义如下所述。
No Change:保持原有的设置。
在这里插入图片描述
Load:装载以前的字符信号的变化规律的文件。
Save:保存当前的字符信号的变化规律的文件。
Clear buffer:将字信号发生器的最右侧的字符编辑显示区的字信号清零。
Up Count:字符编辑显示区的字信号以加1的形式计数。
Down Count:字符编辑显示区的字信号以减1的形式计数。
Shift Right:字符编辑显示区的字信号右移。
Shift Left:字符编辑显示区的字信号左移。
Display Type选项区:用来设置字符编辑显示区的字信号的显示格式:Hex(十六进制),Dec(十进制)。
Buffer Size:字符编辑显示区的缓冲区的长度。
Initial Patterns:采用某种编码的初始值。
(2)Display区:用于设置字信号发生器的最右侧的字符编辑显示区的字符显示格式,有Hex、Dec、Binary、ASCII等几种计数格式。
(3)Trigger区:用于设置触发方式。
Internal:内部触发方式,字符信号的输出由Control区的3种输出方式中的某一种来控制。
External:外部触发方式,此时,需要接入外部触发信号。右侧的两个按钮用于外部触发脉冲的上升或下降沿的选择。
(4)Frequency区:用于设置字符信号飞输出时钟频率。
(5)字符编辑显示区:字信号发生器的最右侧的空白显示区,用来显示字符。

五、实验结果与分析
1.实验结果电路图
在这里插入图片描述
2.分析
将不同颜色的小灯泡连接设置成爱心图案,然后设置字发生器的指令集合,并且设置循环,触发字发生器,跑马灯由开始逆时针依次点亮,直到电路停止供电,跑马灯停止。

六、小结与心得体会
1.总结
通过本次实验我了解了字发生器如何使用。

2.心得体会
本实验中我看到了利用字发生器对电路实现自动化,省去了人工操作,节省了人力,依然可以达到想要的效果。在设置跑马灯的开始,我认真阅读了实验指导书,并按照指导书上的步骤来操作,一次就顺利完成了跑马灯实验。然后我利用了不同颜色的小灯设置了一个爱心图案的跑马灯。这个实验也让我对构建自动化电路有了一定的认识。

                **实验四  模拟微程序实现指令**

一、实验题目
模拟微程序实现指令

二、实验目的
模拟微程序实现机器语言指令

三、总体设计
1.实验原理
(1)字发生器的一行输出数据可以作为一条微指令,一条机器语言指令由若干条微指令组成。用字发生器的输出取代实验2开关,模拟微指令自动执行实现一条机器语言指令。
(2)字发生器的26位信号输出表示二进制中的每一位都控制一个高低电平,从而实现对数据的改变,ALU,G1,G2寄存器,74LS244_BLOCK三态门的控制。

四、详细设计
本实验实际上是将实验二和实验三结合起来,以逻辑运算和字发生器为基础,采用字发生器代替开关,用0或1信号替代信号开关和脉冲信号,传入数据。电路图中涉及到的元器件、层次块的作用及解析在前面有提到过,在这里就不再赘述。
1.实验电路图:在这里插入图片描述

五、实验结果与分析
(1)产生任意数据存入通用寄存器GR1。
(2)产生任意数据存入通用寄存器GR2完成GR1+GR2→GR1
(1)、(2)如下图所示:在这里插入图片描述
字发生器的内指令如下:
10010001010000000000010010001011
10010001010000000000010010000000
10010001010000000000010011000100
10010001010000000000010010000000
11110001010000000000010010000000
11110001010000000000011010010000
11110001010000000000010010000000
11110001010000000000010010001011
11110001010110010000010010001011
11110001000110010000010010001011
11110001000110010000010011001011
11110001000110010000010010001011
00000000010110010000010010001011

//(3)到(8)操作的完成是在GR1+GR2的基础上改动9-12行,其中9-10改变运算状态,10-11改变存储位置。
(3)完成GR1-GR2→GR2。
在这里插入图片描述
字发生器内部指令如下:
11110001010001100000010010001011
11110001000001100000010010001011
11110001000001100000011010001011
11110001000001100000010010001011

(4)完成GR1∧GR2→GR1。
在这里插入图片描述
字发生器内部指令如下:
11110001010010110000010010001011
11110001000010110000010010001011
11110001000010110000010011001011
11110001000010110000010010001011

(5)完成GR1∨GR2→GR2。在这里插入图片描述
字发生器内部指令如下:
11110001010100010000010010001011
11110001000100010000010010001011
11110001000100010000011010001011
11110001000100010000010010001011

(6)完成GR1⊕GR2→GR1。
在这里插入图片描述
字发生器内部指令如下:
11110001011001100000010010001011
11110001001001100000010010001011
11110001001001100000010011001011
11110001001001100000010010001011

(7)~GR1→GR2。
在这里插入图片描述
字发生器内部指令如下:
11110001011000000000010010001011
11110001001000000000010010001011
11110001001000000000011010001011
11110001001000000000010010001011

(8)~GR2→GR1。在这里插入图片描述
字发生器内部指令如下:
11110001011001010000010010001011
11110001001001010000010010001011
11110001001001010000010011001011
11110001001001010000010010001011

2.分析
(1)实验前要设计好字发生器的各个位分别代表开关的图表或注释;
(2)在设置字发生器状态的时候,切记不要一个指令执行多步操作,如开关的同时关闭,这会导致软件出错崩溃。
(3)写入二进制码的时候要细心,最好设计出一个表格分流程完成。

六、小结与心得体会
1.小结
通过本次实验我完成了模拟微程序实现机器语言指令。学会了如何通过字发生器实现一个机器指令。

2.心得体会
本次实验教会了我利用字发生器模拟微程序实现机器语言指令,拓宽了我的知识层面,深层次的了解了微程序的概念,也加强了我动手实践能力,最重要的是学习到了如何整体设计一个微程序,要求对于它的每一个功能都了很熟悉才能完成整体的功能,并且设计字节发生器替换开关的过程需要相当细心,一个数字填错会导致整个电路的运行出错。

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值