定点原码一位除法器的设计Word文档格式.docx

上传人:b****5 文档编号:15856123 上传时间:2022-11-16 格式:DOCX 页数:11 大小:177.54KB
下载 相关 举报
定点原码一位除法器的设计Word文档格式.docx_第1页
第1页 / 共11页
定点原码一位除法器的设计Word文档格式.docx_第2页
第2页 / 共11页
定点原码一位除法器的设计Word文档格式.docx_第3页
第3页 / 共11页
定点原码一位除法器的设计Word文档格式.docx_第4页
第4页 / 共11页
定点原码一位除法器的设计Word文档格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

定点原码一位除法器的设计Word文档格式.docx

《定点原码一位除法器的设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《定点原码一位除法器的设计Word文档格式.docx(11页珍藏版)》请在冰豆网上搜索。

定点原码一位除法器的设计Word文档格式.docx

1.1设计原理2

1.2设计思路2

1.3设计环境2

第2章详细设计方案4

2.1总体方案的设计与实现4

2.1.1总体方案的逻辑图4

2.1.2算法流程图5

2.2功能模块的设计与实现6

2.2.1模块的设计与实现6

第3章验证测试9

3.1验证测试9

参考文献10

第1章总体设计方案

1.1设计原理

原码一位除,即两个原码数相除,商的符号为除数和被除数的符号异或值。

采用汇编语言实现定点原码一位除法器,算法为恢复余数法,除数为4位。

利用恢复余数的方法来进行运算。

1.2设计思路

算法为恢复余数法,先用被除数减去除数,如果结果为正数商1,然后左移,如果是负数商0然后加上Y的补,继续运算。

本题目是要求4位所以到结果是4位时结束运算。

实验开始时将实验数据从实验箱的开关输入到R0,R1,R2三个寄存器中,R0为被除数,R1为除数,R2为商。

运算过程采用恢复余数法。

主要判断被除数减去除数的商值。

如果为负,商0然后加除数然后左移。

如果商值为正商1,左移。

数据都存放在寄存器中,最后结果在OUT寄存器中显示。

1.3设计环境

COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:

运算器ALU、累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。

其中运算器和中断控制电路以及跳转控制电路用CPLD来实现,其它电路都是用离散的数字电路组成。

微程序控制部分也可以用组合逻辑控制来代替。

模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。

指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。

而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。

在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。

ADDA,R?

------------将寄存器R?

的值加入累加器A中

ADDA,#II----------立即数#II加入累加器A中

SUBA,#II-----------从累加器中减去立即数后加入累加器A中

ANDA,#II-----------累加器A“与”立即数II

(2)数据传送指令

MOVA,R?

的值送到累加器A中

MOVR?

#II------------将立即数II存放到寄存器R?

MOVR?

,A------------将累加器A中的值送到寄存器A中

(3)移位指令

RRA----------------累加器A右移

RLA----------------累加器A左移

(4)跳转指令

JZMM---------------若零标志位置1,跳转到MM地址

JMPMM---------------跳转到MM

(5)位运算

ANDA,R?

------------累加器A“与”寄存器R?

的值

(6)输入输出

OUT--------------------将累加器A中数据输出到输出端口

第2章详细设计方案

2.1总体方案的设计与实现

定点原码一位除,算法为恢复余数法,当余数为负时,需加上除数,将其恢复城原来的余数。

商值的确定是通过比较被除数和除数的绝对值的大小,即x”-y”实现的,而计算机内只设加法器,所以需要将x”-y”操作变为|x|补+|y|补得操作。

2.1.1总体方案的逻辑图

图2.1.1

如上逻辑框图2.1.1中所示,R0、R1、R2均是8位的寄存器。

R1是被除数。

R2是除数。

R3为商。

其结果在OUT中输出。

2.1.2算法流程图

图2.3算法流程图

算法流程图如图2.3所示。

除法开始前,R2寄存器被清0,准备接收商,被除数的原码放在R0寄存器中,除数的原码放在R1寄存器中,计数器R3中存放需要移位的次数。

除法开始后,首先判断除数是否为0,若除数为0则进行处理,若不为0,则用被除数减去除数,若运算结果大于0,商上1。

若结果小于0,商上0。

然后被除数左移一位,计数器减1。

当计数器R3内容为0时,结束运算。

2.2功能模块的设计与实现

2.2.1模块的设计与实现

2.2.1.1功能描述

主要模块包括:

循环控制模块、加减运算模块、移位模块、商符运算模块。

循环控制模块:

通过计数器内容控制运算过程。

若计算器大于0,继续进行运算;

若计算器为0,结束运算。

主要应用恢复余数过程。

图2.3循环模块流程图

加减运算模块:

实现加减运算功能,当余数为正时,商加1,当余数为负时,商加0。

图2.4加减模块流程图

移位模块:

实现左、右移位功能。

图2.5移位模块流程图

商符运算模块:

通过异或运算求出商的符号。

图2.6商结果显示流程图

本设计可以进行定点原码一位除法运算。

通过以上几个关键模块实现。

主要方法是恢复余数法,在运算过程中主要是判断被除数和除数之间的差来决定运算过程的。

移位模块流程

2.2.1.2数据输入流程图

图2.8数据输入流程图

第3章验证测试

3.1验证测试

输入被除数:

0BH

输入除数:

0DH

图2.9验证

参考文献

[1]李景华.可编程程逻辑器件与EDA技术[M].北京:

东北大学出版社,2001

[2]范延滨.微型计算机系统原理、接口与EDA设计技术[M].北京:

北京邮电大学出版社,2006

[3]王爱英.计算机组成与结构(第4版)[M].北京:

清华大学出版社,2006

[4]王冠.VerilogHDL与数字电路设计[M].北京:

机械工业出版社,2005

[5]江国强.EAD技术习题与实验[M].北京:

电子工业出版社,2005

[6]杜建国.VerilogHDL硬件描述语言[M].北京:

国防工业出版社,2004

附录

MOVR0,#0BH

MOVR1,#0DH

MOVR2,#00H

MOVR3,#04H

MOVA,R1

SUBA,#00H

JZOVERFLOW

MOVA,R0

SUBA,R1

MOVR0,A

LOOP:

ANDA,#10H

JZS1

SUBA,#10H

JZS2

S1:

RLA

MOVA,R2

ADDA,#01H

MOVR2,A

MOVA,R3

SUBA,#01H

JZNEXT

MOVR3,A

JMPLOOP

S2:

ADDA,R1

NEXT:

JZOUT1

JZOUT2

OUT1:

OUT

OUT2:

OVERFLOW:

END

课程设计总结:

首先本次课设努力认真地完成了。

本设计可以进行原码一位除法运算。

在汇编语言编辑的程序,其中遇到很多问题。

例如如果利用汇编语言进行数据存储,汇编环境的规则,以及如何具体实现等问题。

在我的精心努力下依次解决。

本次课设用到恢复余数法实现的。

其过程在上面陈述的很详细。

指导教师评语:

指导教师(签字):

      年月日

课程设计成绩

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 预防医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1