logsim实验一

文章讲述了在Logisim平台上进行的多种IT技术实验,包括8位可控加减法、四位及十六位快速加法器、阵列乘法器、流水线设计和MIPS运算器,涉及实验原理、实现步骤、遇到的问题及其解决方案,强调了理论与实践结合的重要性。
摘要由CSDN通过智能技术生成

目录

实验目的

实验原理 

实验实现

遇到的问题及解决

遇到的问题

解决方法

总结


实验目的

  1. 帮助学生掌握一位全加器的实现逻辑,掌握多位可控加减法电路的实现逻辑,熟悉 Logisim 平台基本功能,能在 logisim 中实现多位可控加减法电路。(8位可控加减法电路设计
  2. 帮助学生掌握快速加法器中先行进位的原理,能利用相关知识设计4位先行进位电路,并利用设计的4位先行进位电路构造4位快速加法器,能分析对应电路的时间延迟。(CLA182四位先行进位电路设计、4位快速加法器设计)
  3. 帮助学生理解成组进位产生函数,成组进位传递函数的概念,熟悉 Logisim 平台子电路的概念,能利用前述实验封装好的4位先行进位子电路以及4位快速加法器子电路构建16位、32位、64位快速加法器,并能利用相关知识分析对应电路的时间延迟,理解电路并行的概念。(16位快速加法器设计、32位快速加法器设计
  4. 帮助学生掌握阵列乘法器的实现原理,能够分析阵列乘法器的性能,能在 Logisim 中绘制阵列乘法器电路。(5位无符号阵列乘法器设计
  5. 帮助学生掌握补码阵列乘法器的实现原理。(6位有符号补码阵列乘法器
  6. 学生掌握运算流水线基本概念,理解将复杂运算步骤细分成子过程的思想,能够实现简单的乘法运算流水线。(乘法流水线设计
  7. 学生掌握原码一位乘法运算的基本原理,熟练掌握 Logisim 寄存器电路的使用,能在 Logisim 平台中设计实现一个 8*8位的无符号数乘法器。(原码一位乘法器设计
  8. 学生掌握补码一位乘法运算的基本原理,熟练掌握 Logisim 寄存器电路的使用,能在 Logisim 平台中设计实现一个8*8 位的补码 Booth一位乘法器。(补码一位乘法器设计
  9. 学生理解算术逻辑运算单元(ALU)的基本构成,掌握 Logisim 中各种运算组件的使用方法,熟悉多路选择器的使用,能利用前述实验完成的32位加法器、 Logisim 中的运算组件构造指定规格的 ALU 单元。(MIPS运算器设计

实验原理 

8位可控加减法电路设计:利用已经封装好的全加器设计8位串行可控加减法电路,我们可以直接使用在电路中使用对应的隧道标签,其中 X0~X7,Y0~Y7 为输入数,Sub 为加减控制信号,S0~S7 为运算结果输出,Cout 为进位输出,OF 为有符号运算溢出位

CLA182四位先行进位电路设计:其中 G*,P* 为进位生成函数和传递函数,Cin 为进位输入,C1~C4 为进位输出,G,P 为成组进位生成函数和成组进位传递函数。

4位快速加法器设计:利用前一步设计好的四位先行进位电路构造四位快速加法器,其中 X0~X4,Y0~Y4 为四位相加数,Cin 为进位输入,S 为和数输出,Cout 为进位输出,G,P 为 4 位成组进位生成函数和成组进位传递函数。

16位快速加法器设计:在对应的子电路中利用一个四位先行进位电路和四个四位快速加法器构造十六位组间先行进位,组内先行进位快速加法器,并验证其功能是否正常。其中 X,Y 为16位相加数,Cin 为进位输入,S 为和数输出,Cout 为进位输出,G,P 为16位成组进位生成函数和成组进位传递函数。

32位快速加法器设计:利用两个16位快速加法器以及先行进位电路构建32位快速加法器,其中 X,Y 为32位相加数,Cin 为进位输入,S 为和数输出,Cout 为进位输出,Overflow 为有符号加法运算溢出信号。

5位无符号阵列乘法器设计:在5位阵列乘法器中实现斜向进位的阵列乘法器,其中 X,Y 为5位被乘数和乘数,P 为乘积输出,阵列乘法所需的25按位与的乘积项已经通过辅助电路生成,所有乘积项均通过隧道标签给出,我们只需要在已给出的电路框架中进行简单连线即可完成5位阵列乘法器。

6位有符号补码阵列乘法器:在6位补码阵列乘法器中利用5位阵列乘法器以及求补器等部件实现补码阵列乘法器。

乘法流水线设计:流水思想:将简单问题分解为细粒度任务并发。流水线=寄存器+组合逻辑+寄存器+组合逻辑+寄存器……流水线时钟频率取决于组合逻辑的关键路径。

原码一位乘法器设计:原码一位乘法器子电路中,增加控制电路和数据通路,使得该电路能自动完成8位无符号数的一位乘法运算。再设置引脚初始值,然后驱动时钟自动仿真,电路可自动完成运算。运算结束,结果传输到输出引脚。运算结束时,电路应该自动停止。

补码一位乘法器设计:补码一位乘法器子电路中,增加控制电路和数据通路,使得该电路能自动完成8位补码一位乘法运算。再设置引脚初始值,然后驱动时钟自动仿真,电路可自动完成运算。运算结束,结果传输到输出引脚

MIPS运算器设计:构建一个32位算术逻辑运算单元,可支持算术加、减、乘、除,逻辑与、或、非、异或运算、逻辑左移、逻辑右移、算术右移运算,支持常用程序状态标志(有符号溢出 OF 、无符号溢出 UOF ,结果相等 Equal )。

实验实现

1、8位可控加减法电路设计:

2、CLA182四位先行进位电路设计:

3、4位快速加法器设计:

4、16位快速加法器设计:

5、32位快速加法器设计:

6、5位无符号阵列乘法器设计:

7、6位有符号补码阵列乘法器:

        

8、乘法流水线设计:

9、原码一位乘法器设计:

  1. 补码一位乘法器设计:

11、MIPS运算器设计:

遇到的问题及解决

遇到的问题

1、分线器位宽不匹配导致电路不连通。

2、线路连接都正常但是头歌平台测试不通过

3、对于运算器实现的各种操作不是很清楚,导致一些连接部分频频出错,在最后一关上面卡壳了很久。

解决方法

1.对于位宽不匹配的问题,通过分析电路线路,修改分线器的位宽,之后便迎刃而解。在实验过程中,常常会遇到位宽不匹配的问题而导致电路中一片的黄线,只需要好好的分析一下电路对应的位宽即可。

2.线路连接正常但是头歌平台没通过的问题,这个地方我犯了个十分蠢的问题,我没有把线连接在接口上面,,我直接连接在运算器的框架上,而没有连接到上面的接口。

3.对于最后运算器实现频频出错的问题,我通过观看各个博客,观看视频讲解,和自己理解其中的原理,最终成功实现并通关。

总结

        运算器的实验虽然关数较多,但是关关相扣,每一关都是建立在上一关的基础上来实现,当真正搞懂之后会发现其实真的不难,而且这一关关通过获得的成就感真的让人很有动力。每个电路实现的背后都有自己的原理,加法器、乘法器的实现也都是基于书上的知识,这种把理论知识在电路上实现的感觉也很有成就感。虽然在实验过程中遇到了很多问题,特别是出现了一些基础的错误,但是在最后完成实验的那一瞬间内心真的很开心。

        每次实验都会遇到各种各样的困难,有些问题同学们讨论不出结果可以自行上网查找,如果还是得不出结果可以向老师请教。每个电路的实现都有其内在原理,真正懂得之后就会发现自己的错误,因此我们遇到困难的时候不能马上放弃,要认真思考。在完成了运算器的实验后,我觉得我自己的动手能力又变强了,对于电路也越来越感兴趣。在今后学习中,遇到困难我也会仔细思考原理,不能轻言放弃。通过本次运算器实验让我受益匪浅,在接下来的学习中我会更加努力,多多了解一些电路的实现和一些运算器的实现原理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值