当前位置:文档之家› 基于复杂模型机两个8位二进制数乘法的实现

基于复杂模型机两个8位二进制数乘法的实现

基于复杂模型机两个8位二进制数乘法的实现
基于复杂模型机两个8位二进制数乘法的实现

评语: 课中检查完成的题号及题数:

成绩: 自评分:

实验报告

实验名称:基于复杂模型机两个8位二进制数乘法的实现日期:

本人信息

班级:学号:姓名:

一、实验目的:

1、综合运用所学计算机组成原理知识,设计并实现较为完整的计算机;

2、理解计算机运行的原理以及微指令架构;

3、掌握原码一位乘实现的控制流程和硬件配置。

二、实验内容:

1、根据实验指导书提供的复杂模型机电路图连接电路,并校验电路

2、装载示例程序并运行,分析理解所增加的微指令

3、根据复杂模型机现有条件设计两个8位二进制相乘的程序

三、项目要求及分析:

要求:利用上述模型机通过编写程序实现两个8位二进制数的乘法运算。

分析:

要求利用复杂模型机现有的指令系统以及硬件电路设计一段实现八位二进制数相乘的程序。因为乘法在计算机中有多种算法实现,包括整数乘、小数乘、原码乘、补码乘等等,因为此次实验并不要求给出一个完整的实用乘法程序段,故实验程序只实现两

个八位二进制整数无符号相乘运算。

采用算法如下:

采用算法如下:

乘数 A A7A6A5A4A3A2A1A0

被乘数B

乘积 C = B·A0 +2(B·A1+2(B·A2+ ……2·B·A7))))))其中Ai为0或者1,在机器中使用原码表示2*X是使X左移1位。若不采用循环模式而是直接使用指令将该算法的乘积等式直接表示出来,需要A,B,RL(结果低位),RH (结果高位)四个通用寄存器;而若使用循环模式,则需要除A、B、RL、RH外的CX(控制循环次数以及高低位相与寄存器)和AD(取中间结果高低位)的辅助。

此次实验为了充分的接触指令系统,采用循环模式。由于复杂模型机中只有R0、R1、R2、R3四个通用寄存器,故一些原来计划使用的寄存器改为使用主存。

另外,因为低位结果相加可能进位,所以修改原微指令ADD为带进位加法。

四、具体实现:

1. 画出算法流程图

该流程图使用了以下6个寄存器CX, AD,A,B,RL,RH;其中CX作为计数以及辅助生成AD 的,CX变化为

1000 0000 初始值

0000 0001

0000 0010

……

1000 0000 程序结束

AD作为被乘数的高低位划分数据, 其中被乘数B中高位对应的AD的位置1,低位置0: 0000 0000 初始值

0000 0001 CX OR AD -> AD

0000 0011

……

1111 1111

另流程图中所用6个寄存器在实现中使用MEM代替,CX,AD,A,B使用R2作RL,R3作RH,左移1位等价右移7位。

2.根据算法实现,若需修改指令系统,画出修改后的微程序流程图

3.编写修改指令系统后的二进制代码表

二进制数微代码表

地址十六进制表示高五位S3-S0 A字段B字段C字段UA5-UA0

00 00 00 01 00000 0000 000 000 000 000001

01 00 6D 43 00000 0000 110 110 101 000011

03 10 70 70 00010 0000 111 000 001 110000

04 00 24 05 00000 0000 010 010 000 000101

05 04 B2 01 00000 1001 011 001 000 000001

06 00 24 07 00000 0000 010 010 000 000111

07 01 32 01 00000 0010 011 001 000 000001

08 10 60 09 00010 0000 110 000 000 001001

09 18 30 01 00011 0000 011 000 000 000001

0A 10 60 10 00010 0000 110 000 000 010000 0B 00 00 01 00000 0000 000 000 000 000001 0C 10 30 01 00010 0000 011 000 000 000001 0D 20 06 01 00100 0000 000 011 000 000001 0E 00 53 41 00000 0000 101 001 101 000001 0F 00 00 CB 00000 0000 000 000 011 001011

10 28 04 01 00101 0000 000 010 000 000001

11 10 30 01 00010 0000 011 000 000 000001

12 06 B2 01 00000 1101 011 001 000 000001

13 00 24 14 00000 0000 010 010 000 010100

14 05 B2 01 00000 1011 011 001 000 000001

15 00 24 16 00000 0000 010 010 000 010110

16 01 B2 01 00000 0011 011 001 000 000001

17 00 24 18 00000 0000 010 010 000 011000

18 04 32 01 00000 1000 011 001 000 000001

1B 00 53 41 00000 0000 101 001 101 000001

1C 10 10 1D 00010 0000 001 000 000 011101 1D 10 60 8C 00010 0000 110 000 010 001100 1E 10 60 1F 00010 0000 110 000 000 011111 1F 10 10 20 00010 0000 001 000 000 100000 20 10 60 8C 00010 0000 110 000 010 001100

28 10 10 29 00010 0000 001 000 000 101001

29 00 28 2A 00000 0000 010 100 000 101010 2A 04 E2 2B 00000 1001 110 001 000 101011 2B 04 92 8C 00000 1001 001 001 010 001100 2C 10 10 2D 00010 0000 001 000 000 101101 2D 00 2C 2E 00000 0000 010 110 000 101110 2E 04 E2 2F 00000 1001 110 001 000 101111 2F 04 92 8C 00000 1001 001 001 010 001100

30 00 16 04 00000 0000 001 011 000 000100

31 00 16 06 00000 0000 001 011 000 000110

32 00 6D 48 00000 0000 110 110 101 001000

33 00 6D 4A 00000 0000 110 110 101 001010

34 00 34 01 00000 0000 011 010 000 000001

35 00 00 35 00000 0000 000 000 000 110101

36 00 6D 51 00000 0000 110 110 101 010001

37 00 16 12 00000 0000 001 011 000 010010

38 00 16 13 00000 0000 001 011 000 010011

39 00 16 15 00000 0000 001 011 000 010101 3A 00 16 17 00000 0000 001 011 000 010111 3B 00 00 01 00000 0000 000 000 000 000001 3C 00 6D 5C 00000 0000 110 110 101 011100 3D 00 6D 5E 00000 0000 110 110 101 011110 3E 00 6D 68 00000 0000 110 110 101 101000 3F 00 6D 6C 00000 0000 110 110 101 101100

地址十六进制表示高五位S3-S0 A字段B字段C字段UA5-UA0

4. 编写微程序

两个8位二进制数的乘法运算程序如下:

;机器指令

$P 00 20;INPUT TO R0

$P 01 00

$P 02 22;INPUT TO R2

$P 03 00

$P 04 61;SET R1 TO 00

$P 05 00

$P 06 63;SET R3 TO 00

$P 07 00

$P 08 63;SET R3 TO F8

$P 09 F8

$P 0A D3;STORE R3 TO 80 AS A TAG

$P 0B 80

;循环主体

$P 0C 63;SET R3 TO 01

$P 0D 01

$P 0E 1B;AND R2,R3

$P 0F F0;BZC TO 12

$P 10 12

$P 11 01;ADD R0,R1

$P 12 63;SET R3 TO 01

$P 13 01

$P 14 AD;RR R3,R1

$P 15 AE;RR R3,R2

$P 16 63;SET R3 TO 7F

$P 17 7F

$P 18 1E;AND R3,R2

$P 19 63;SET R3 TO 80

$P 1A 80

$P 1B 17;AND R1,R3

$P 1C 9E;OR R3,R2

$P 1D 63;SET R3 TO 01

$P 1E 01

$P 1F AF;RR R3,R3 JUST TO MAKE FZ NOT EQUAL ONE THEN BZC DEPENDS ON FC

$P 20 F0;BZC TO 40

$P 21 40

$P 22 63;SET R3 TO 7F

$P 23 7F

$P 24 1D;AND R3,R1 TO MAKE THE HB OF R1 AS 0

$P 25 63;SET R3 TO 01

$P 26 01

$P 27 AF;RR R3,R3 JUST TO ...

$P 28 C3;LAD 80 TO R3

$P 29 80

$P 2A 73;R3++

$P 2B F0;BZC TO THE END WHICH IS 90

$P 2C 90

$P 2D D3;STA R3 TO 80

$P 2E 80

$P 2F E0;JMP TO THE ENTRANCE OF THE CYCLE

$P 30 0C

;条件转移指令分支

$P 40 63;SET R3 TO 80

$P 41 80

$P 42 9D;OR R3,R1 TO MAKE THE HB OF R1 AS 1

$P 43 E0;JMP TO 25

$P 44 25

;程序结尾

$P 90 34;OUTPUT R1

$P 91 40

$P 92 38;OUTPUT R2

$P 93 40

$P 94 50;STOP

;微指令

; //** Start Of MicroController Data **// $M 00 000001 ; NOP

$M 01 006D43 ; PC->AR, PC加1 $M 03 107070 ; MEM->IR, P<1> $M 04 002405 ; RS->B

$M 05 04B201 ; A加B->RD

$M 06 002407 ; RS->B

$M 07 013201 ; A与B->RD

$M 08 106009 ; MEM->AR

$M 09 183001 ; IO->RD

$M 0A 106010 ; MEM->AR

$M 0B 000001 ; NOP

$M 0C 103001 ; MEM->RD

$M 0D 200601 ; RD->MEM

$M 0E 005341 ; A->PC

$M 0F 0000CB ; NOP, P<3>

$M 10 280401 ; RS->IO

$M 11 103001 ; MEM->RD

$M 12 06B201 ; A加1->RD

$M 13 002414 ; RS->B

$M 14 05B201 ; A减B->RD

$M 15 002416 ; RS->B

$M 16 01B201 ; A或B->RD

$M 17 002418 ; RS->B

$M 18 043201 ; A右环移->RD

$M 1B 005341 ; A->PC

$M 1C 10101D ; MEM->A

$M 1D 10608C ; MEM->AR, P<2> $M 1E 10601F ; MEM->AR

$M 1F 101020 ; MEM->A

$M 20 10608C ; MEM->AR, P<2> $M 28 101029 ; MEM->A

$M 29 00282A ; RI->B

$M 2A 04E22B ; A加B->AR

$M 2B 04928C ; A加B->A, P<2>

$M 2C 10102D ; MEM->A

$M 2D 002C2E ; PC->B

$M 2E 04E22F ; A加B->AR

$M 2F 04928C ; A加B->A, P<2>

$M 30 001604 ; RD->A

$M 31 001606 ; RD->A

$M 32 006D48 ; PC->AR, PC加1

$M 33 006D4A ; PC->AR, PC加1

$M 34 003401 ; RS->RD

$M 35 000035 ; NOP

$M 36 006D51 ; PC->AR, PC加1

$M 37 001612 ; RD->A

$M 38 001613 ; RD->A

$M 39 001615 ; RD->A

$M 3A 001617 ; RD->A

$M 3B 000001 ; NOP

$M 3C 006D5C ; PC->AR, PC加1

$M 3D 006D5E ; PC->AR, PC加1

$M 3E 006D68 ; PC->AR, PC加1

$M 3F 006D6C ; PC->AR, PC加1

; //** End Of MicroController Data **//

5. 编写机器指令验证

;机器指令

$P 00 20;INPUT TO R0

$P 01 00

$P 02 22;INPUT TO R2

$P 03 00

$P 04 61;SET R1 TO 00

$P 05 00

$P 06 63;SET R3 TO 00

$P 07 00

$P 08 63;SET R3 TO F8

$P 09 F8

$P 0A D3;STORE R3 TO 80 AS A TAG

$P 0B 80

;循环主体

$P 0C 63;SET R3 TO 01

$P 0D 01

$P 0E 1B;AND R2,R3

$P 0F F0;BZC TO 12

$P 10 12

$P 11 01;ADD R0,R1

$P 12 63;SET R3 TO 01

$P 13 01

$P 14 AD;RR R3,R1

$P 15 AE;RR R3,R2

$P 16 63;SET R3 TO 7F

$P 17 7F

$P 18 1E;AND R3,R2

$P 19 63;SET R3 TO 80

$P 1A 80

$P 1B 17;AND R1,R3

$P 1C 9E;OR R3,R2

$P 1D 63;SET R3 TO 01

$P 1E 01

$P 1F AF;RR R3,R3 JUST TO MAKE FZ NOT EQUAL ONE THEN BZC DEPENDS ON FC

$P 20 F0;BZC TO 40

$P 21 40

$P 22 63;SET R3 TO 7F

$P 23 7F

$P 24 1D;AND R3,R1 TO MAKE THE HB OF R1 AS 0

$P 25 63;SET R3 TO 01

$P 26 01

$P 27 AF;RR R3,R3 JUST TO ...

$P 28 C3;LAD 80 TO R3

$P 29 80

$P 2A 73;R3++

$P 2B F0;BZC TO THE END WHICH IS 90

$P 2C 90

$P 2D D3;STA R3 TO 80

$P 2E 80

$P 2F E0;JMP TO THE ENTRANCE OF THE CYCLE

$P 30 0C

;条件转移指令分支

$P 40 63;SET R3 TO 80

$P 41 80

$P 42 9D;OR R3,R1 TO MAKE THE HB OF R1 AS 1

$P 43 E0;JMP TO 25

$P 44 25

;程序结尾

$P 90 34;OUTPUT R1

$P 91 40

$P 92 38;OUTPUT R2

$P 93 40

$P 94 50;STOP

联机装入调试

五、调试运行结果:

输入FD*FE,输出FB06。

六、所遇问题及解决方法:

实验时不知道如何利用已有设备利用加法进行两个8位数乘法运算,通过上网查询知道了方法,并以此设计复杂模型机;

然后是开始时对机器程序不太了解,对微指令与机器指令之间的运行不太明白,后来在同组成员和其他同学的帮助与讨论下明白了它们之间的联系和运行顺序。

七、实验总结:

1、经过实验,深层次的了解了微指令系统以及它存在的意义;

2、体会到了机器语言的速度之快以及变成之繁琐,贯通了从电路到桌面应用这一系列体系知识;

3、复杂模型是对前面简单模型的升华,使我们更深入了解了机器程序的执行过程;

4、模型机的设计是一个新的知识,在编写时遇到了很多问题与难处,因此我们在编写时需要不断查阅课本,加深理解。

八、心得体会:

1、复杂模型机的实现比较简单,就是微程序的编写比较繁琐;

2、以后再遇到这种繁琐的程序,先仔细构思,画出流程图再编写,就能容易出错;

3、复杂模型机的调试是一个极其繁琐的过程,我们编写是要细心认真,调试出现问题时要耐心检查;

4、通过本次实验收获丰富,在做这次实验之前,通过深入的预习,理解了实验原理、明确了实验的目的,按部就班地连线,逐步完成了实验的要求。在实验过程中,我认真进行实验操作和思考实验有关的内容,把自己不太明白的问题通过实验理解清楚。通过这次实验我更加深刻的理解了计算机的工作原理,懂得了复杂模型机设计与实现的基本操作,加深了对书本知识的认识。

8位模型机课程设计

xxxxx 课程设计报告学院机电信息学院 课程课程设计 专业计算机科学与技术班级xxxxx 姓名xxxxxxx x 学号xxxxxxxxxx 指导教师xxxxxx 日期201x年x月x日

目录 1.概述 0 2.总体设计 0 3.详细设计 (2) 3.1 运算器 (2) 3.2 存储器 (3) 3.3 微控制器 (5) 3.4 基本模型机设计与实现 (8) 4. 总结 (10) 参考文献 (11)

8位模型机的设计与仿真 1.概述 在掌握部件单元电路设计与仿真的基础上,进一步将其组成系统构造一台8位模型机。字长是8位纯整型,包含基本的五大件:运算器、存储器、控制器、I/O设备。它的结构框图如下图1-1所示. 这基本的五大件通过数据总线连接,实现数据的处理和控制。 部件实验过程中,各部件单元的控制信号是人为模拟产生的,而综合实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 2.总体设计 模型机主要由运算器、控制器、存储器、数据总线、输入输出和时序产生器组成,模型机的结构图如图2-1所示。 图2-1 模型机结构图 在图2-1中T1、T2、T3和T4等控制信号都是由时序产生器生产,时序产生器由时序电路实现如图2-2所示,时序产生器一个周期中产生四个脉冲信号T1~T4,这四个脉冲信号用于控制组件的执行顺序,组件在这些信号的控制下有序的执行,一个周期中完成一条微指令的执行。 图2-2 时序产生器

计算机硬件课程设计--简单模型机设计

计算机硬件课程设计--简单模型机设计

计算机硬件综合课程设计报告

简单模型机设计 一、设计要求 硬件:TDN-CM+计算机组成原理实验系统一台,PC机一台,排线若干,串口线一根。 软件:CMP软件 二、设计目的 1.通过对一个简单计算机的设计,对计算机的基 本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。 2.通过这次课程设计,建立整机的概念,对程序 进行编辑,校验,锻炼理论联系实际的能力。 3.通过本次课程设计熟悉和训练设计思路与实 现方法。 4.通过本次课程设计锻炼团队合作的能力和团 队问题的解决。

三、设计电路及连线 设计电路及连线实验图如下图1-1所示。 图1-1 简单模型机连线图 四、设计说明 本次课程设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器

来完成,CPU 从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本次课程设计采用五条机器指令:IN (输入)、ADD (二进制加法)、STA (存数)、OUT (输出)、JMP (无条件转移),其指令格式如下(前4位为操作码): 助记符 机器指令码 说 明 微程序入口地址 IN 0000 0000 “INPUT DEVICE ”中 10 的开关状态→R0 0001 0000 ×××× ×××× R0+[addr]→R0 11 0010 0000 ×××× ×××× R0→[addr] 12 0011 0000 ×××× ×××× [addr]→BUS 13 0100 0000 ×××× ×××× addr →PC 14 ADD addr STA

4FPGA实验报告8位乘法器—徐艺萍

实验四8位乘法器实验 一、实验原理 8位乘法器,输入为两个8位信号,输出结果为16位。 module mult8(out, a, b); //8位乘法器源代码 parameter size=8; input[size-1:0] a,b; //两个操作数 output[2*size-1:0] out; //结果 assign out=a*b; //乘法运算符 endmodule 本实验采用Chipscope-Pro生成VIO/ICON核,并插入到8位乘法器设计中,在线进行观测和调试。 二、实验目的 1. 熟悉ISE9.1 开发环境,掌握工程的生成方法; 2. 熟悉SEED-XDTK XUPV2Pro 实验环境; 3. 了解Verilog HDL语言在FPGA 中的使用; 4. 通过掌握8位乘法器的Verilog HDL设计,了解数字电路的设计。 三、实验内容 1. 用Verilog HDL语言设计8位乘法器,进行功能仿真验证。 2. 使用chipscope-Pro 生成VIO/ICON 核,在线观测调试。 四、实验准备 1. 将USB 下载电缆与计算机及XUPV2Pro 板的J8 连接好; 2. 将RS232 串口线一端与计算机连接好,另一端与板卡的J11 相连接; 3. 启动计算机,当计算机启动后,将XUPV2Pro 板的电源开关SW11 打开到ON 上。观察XUPV2Pro 板上的+2.5V,+3.3V,+1.5V 的电源指示灯是否均亮。若有不亮的,请断开电源,检查电源。

五、实验步骤 ⑴创建工程及设计输入 ①在E:\project\目录下,新建名为mult8的新工程; 器件族类型(Device Family)选择“Virtex2P”, 器件型号(Device)选“XC2VP30 ff896 -7”, 综合工具(Synthesis Tool)选“XST (VHDL/Verilog)”, 仿真器(Simulator)选“ISE Simulator” ②设计输入并保存。 ⑵功能仿真 ①在sources窗口sources for中选择Behavioral Simulation。 ②由Test Bench WaveForm 添加激励源,如图1所示。仿真结果如图2所示。 图1 波形激励编辑窗口 图2 仿真结果 从图中可以验证由Verilog HDL语言设计的8位乘法器的工作是正确的,不论是输入a的值变化还是输入b的值变化,输出值随之变化,为a与b的乘积。 ⑶生成核并添加核 本次试验内容为8位乘法器,不需要使用ILA核。因此下面使用核生成法生成一个ICON核,一个VIO核就可以了。 ①首先对生成的工程进行综合。 ②生成核 ③添加核

基本模型机的设计与实现课程设计报告

基本模型机的设计与实现课程设计报告 https://www.doczj.com/doc/9e4205657.html,/maria87328/archive/2008/01/13/2041130.aspx 一、实验基本任务 1、由基本单元电路构成一台基本模型机。 2、设计五条机器指令,并编写相应的微程序。 3、调试指令和模型机使其在微程序的控制下自动产生各部件单元的控制信号正常工作。 二、设计方案 1、硬件设计 (1)设计微程序控制电路 微程序控制器的组成:控制存储器:EPROM2816*3,8D触发器74ls273*2,4D触发器74ls74*3;微指令寄存器格式:18位微指令,6位微地址。 (2)设计时钟信号源和时序控制电路 时钟信号源的组成:时基电路555,可触发单稳态多谐振荡器74ls237*2,输出频率为330-580Hz的方波信号。 时序控制电路:4D触发器74ls175*1组成移位寄存器电路。 (3)设计主存储器 主存电路的组成:6264存储器(8K*8位)*3,地址寄存器:74ls273*1,三态门:74ls245*1。 2、微控制设计 (1)实现存储器读操作; 拨动总清开关后,置控制开关SWC、SW A为“0 0”时,按要求连线后,连续按动“启动运行”开关,可对主存储器RAM连续手动读操作。 (2)实现存储器写操作; 拨动总清开关后,置控制开关SWC、SW A为“0 1”时,按要求连线后,再按动“启动运行”开关,可对主存储器RAM 连续手动写入。 (3)实现程序运行操作。 拨动总清开关后,置控制开关SWC、SW A为“1 1”时,按要求连线后,再按动“启动运行”开关,即可转入到第01号“取址”微指令,启动程序运行。

嵌入式的8位CISC模型机设计报告

韶关学院 课程设计说明书(论文) 课程设计题目:嵌入式的8位CISC模型机设计 学生姓名: 学号: 院系:计算机科学学院 专业班级: 指导教师姓名及职称: 起止时间:2011 年10 月——2011 年11 月 课程设计评分:

目录 一、实验目的 二、设计题目及要求 三、设计方案: 1.模型机的总体设计 2. 微程序控制器的组成原理框图 3. 模型机机器指令格式和指令系统 4. 时序产生器的设计原理及时序波形图 5. 微程序流程图 6. 微程序控制器单元 7. 汇编语言源程序 8. 机器语言的源程序 四、设计的过程与步骤 五.模型机系统顶层电路图 六.模型机的时序仿真波形图七.设计总结 八.参考文献

韶关学院课程设计任务书 学生姓名专业班级09科学与技术2班学号 指导教师姓名及职称设计地点信息418 设计题目嵌入式的8位CISC 本课程设计课题任务的内容和要求: 设计一台嵌入式的8位CISC模型计算机,并运行能完成一定功能的机器语言程序进行验证,程序功能可以是以下两个之一: ?求出1到任意一个整数N之间的所有奇数之和并输出显示,和为单字长。 说明:N从开关输入,和从数码管输出,然后输出显示停止。 对本课程设计工作任务及工作量的要求: 课程设计完成工作任务内容如下: (1)完成系统的总体设计,画出模型机数据通路框图。 (2)设计微程序控制器(CISC模型计算机)的逻辑结构图。 (3)设计机器指令格式和指令系统。 (4)设计时序产生器电路。 (5)设计所有机器指令的微程序流程图(CISC模型计算机) (6)设计操作控制单元。 ●设计的是CISC模型计算机,设计微指令格式(建议采用全水平型微指令),并根据微程序流程图和微指令格 式设计微指令代码表。根据微程序控制器的逻辑结构框图、微指令格式和微指令代码设计微程序控制器,包 括地址转移逻辑电路、微地址寄存器、微命令寄存器和控制存储器。 (7)设计模型机的所有单元电路,并用VHDL语言(也可使用GDF文件——图形描述文件)对模型机中的各个部件进行编程,并使之成为一个的整体,即形成顶层电路或顶层文件。 (8)由给出的题目和设计的指令系统编写相应汇编语言源程序(验证程序)。 (9)根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模型机的ROM中。(10)使用EDA软件MAX+plusII进行功能仿真,要保证其结果满足题目的要求(其中要利用MAX+plusII提供的波形编辑器,选择合适的输入/输出信号及中间信号进行调试)。 (11)选用给定的FPGA芯片——EP1K30TQC144进行器件编程和时序仿真,并将顶层电路或顶层文件下载到专用的EDA实验平台——GW48 EDA教学实验系统后进行操作演示。 课程设计应完成的图纸: (1)顶层设计的电路原理图; (2)元件(模块)符号图; (3)仿真波形图。 进度安排: 时间为18学时,分散在9周进行,每周2学时。 1、第1--4周:EDA技术基础知识教学讲座; 2、第5—8周:MAX+PLUS基础实验,确定课程设计题目,进行资料收集和学习、设计方案确定、电路设计、 程序设计与计算机仿真; 3、第9周:编写课程设计实验报告。 主要参考文献: [1] ]陈智勇等编. 《计算机原理课程设计》. 西安电子科技大学. 2006年6月 [2] 潘松黄继业编. 《EDA技术实用教程》(第二版). 科学出版社 2005年2月 [3] 罗克露等编. 《计算机组成原理》. 电子工业出版社 2004年8月 [4] 江国强编. 《EDA技术习题与实验》. 电子工业出版社 2005年1月 [5] 彭玄璋编《基于EDA技术的组成原理课程设计实验指导书》(自编教材) 2010年3月

移位相加8位乘法器的设计

EDA技术课程大作业 设计题目:移位相加8位乘法器的设计 院系:电子信息与电气工程学院 学生姓名: 学号:200902070017 专业班级:09电子信息工程专升本 2010年12月3日

移位相加8位乘法器的设计 1.设计背景和设计方案 1.1设计背景 EDA技术(即Electronic Design Automation技术)就是依赖强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL(Hardware Ddscription Langurage)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。它在硬件实现方面融合了大规模集成电路制造技术、IC版图设计、ASIC 测试和封装、FPGA(Gield Peogrammable Gate Array)/CPLD(Complex Programmable Logic Device)编程下载和自动测试等技术;在计算机辅助工程方面融合了计算机辅助设计(CAD),计算机辅助制造(CAM),计算机辅助测试(CAT),计算机辅助工程(CAE)技术以及多种计算机语言的设计概念;而在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号处理技术、数字系统建模和优化技术及长线技术理论等。本文介绍设计一个两个5位数相乘的乘法器。用发光二极管显示输入数值,用7段显示器显示十进制结果。乘数和被乘数分两次输入。在输入乘数和被乘数时,要求显示十进制输入数据。输入显示和计算结果显示,采用分时显示方式进行,可参见计算器的显示功能 1.2设计方案 此设计是由八位加法器构成的以时序逻辑方式设计的八位乘法器,它的核心器件是八位加法器,所以关键是设计好八位加法器。 方案一:八位直接宽位加法器,它的速度较快,但十分耗费硬件资源,对于工业化设计是不合理的。 方案二:由两个四位加法器组合八位加法器,其中四位加法器是四位二进制并行加法器,它的原理简单,资源利用率和进位速度方面都比较好。综合各方面的考虑,决定采用方案二。 该乘法器是由8位加法器构成的以时序方式设计的8位乘法器。其乘法原理是乘法通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数左移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。从

模型机实验报告

哈尔滨工程大学 实验报告 实验名称:复杂模型机设计与实现 班级: 学号: 姓名: 实验时间: 成绩: 指导教师:程旭辉附小晶 实验室名称:计算机专业实验中心 一、实验名称:复杂模型机的设计与实现 二、实验目的:

1.综合运用所学计算机原理知识,设计并实现较为完整的计算机。 2.设计指令系统。 3.编写简单程序,在所设计的复杂模型计算机上调试运行。 三、实验设备: GW-48CPP系列计算机组成原理实验系统。 四、实验原理: 1.数据格式 8位,其格式如下: 其中第7位为符号位,数值表示范围是:-1≤1。 2.指令格式 所设计的指令分为四大类共十六条,其中包括算术逻辑指令、I/O指令、访问、转移指令和停机指令。 (1)算术逻辑指令 设计9条算术逻辑指令并用单字节表示,采用寄存器直接寻址方式,其格式如下: 其中, (2)访问指令及转移指令 访问指令有2条,即存数(STA)、取数(LDA);2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC) 其中,OP-CODE指令)。D为位移量(正负均可),M为寻址模式,其定义如下: 在本模型机中规定变址寄存器RI为寄存器R2。 (3)I/O指令 输入(IN)和输出( 其中,addr=01时,选中“OUTPUT DEVICE”中的LCD

点阵液晶屏作为输出设备。 (4)停机指令 指令格式如下: 3.指令系统 共有16条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,输入/输出指令2条,其

本模型机的数据通路框图如图7-1。根据机器指令系统要求,设计微程序流程图及确定微地址,如图7-2。 图7-2 微程序流程图 五、实验内容: 按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表转换为联机操作时的十六进制格式文件。 微代码定义如表7-1所示。

8位CISC计算机设计

8位CISC计算机设计 班级:09电子信息工程C班 学号:091524**** 姓名:*** 日期:2012年4月26日

一.实验目的 1.深入理解基本模型计算机的功能、组成知识; 2.深入学习计算机各类典型指令的执行流程; 3.学习微程序控制器的设计过程和相关技术,掌握LPM_RO M的配置方法。 4.在掌握部件单元电路实验的基础上,进一步将单元电路组成系统,构造一台基本模型计算机。 5.定义五条机器指令,并编写相应的微程序,上机调试,掌握计算机整机概念。掌握微程序的设计方法,学会编写二进制微指令代码表。 6.通过熟悉较完整的计算机的设计,全面了解并掌握微程序控制方式计算机的设计方法。 二.实验原理 1.在部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本实验将能在微过程控制下自动产生各部件单元控制信号,实现特定的功能。实验中,计算机数据通路的控制将由微过程控制器来完成,C PU 从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 2.指令格式 (1)指令格式 采用寄存器直接寻址方式,其格式如下: 其中,OP-CODE 为操作码,r s为源寄存器,rd 为目的寄存器,并规定: 其中IN 为单字长(8位二进制),其余为双字长指令,XX H 为addr 对应的十六进制地址码。为了向R AM 中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。

8位CISC 计算机设计 1,存储器读操作(KRD):下载实验程序后按总清除按键(CLR)后,控制台S WA 、SWB 为“0 0”时,可对RAM 连续手动读入操作。 2,存储器写操作(KWE):下载实验程序后按总清除按键(CLR )后,控制台SW A 、SWB 为“0 1”时,可对R AM 连续手动写操作。 3、启动程序(RP):下载实验程序后按总清除按键(C LR)后,控制台SWA 、S WB 为“1 1”时,即可转入到微地址“01”号“取指令”微指令,启动程序运行。 根据以上 要求设计 数据通路 框图,如 图5-1所 示。 表6-1 24位微代码定义: 24 23 22 21 2 14 13 12 11 10 987 6 5 4 3 2 1 S3 S2 S 1 S0 M Cn WE A9 A8 A B C uA5 u A4 uA 3 uA2 uA 1 uA 0 表6-2 A 、B 、C各字段功能说明:A 字段 B 字段 C字段 15 14 13 选择 12 11 10 选择 9 8 7 选择 0 0 0 0 0 0 0 0 0 0 0 1 LDRi 0 0 1 RS-B 0 0 1 P(1) 0 1 0 L DDR1 0 1 0 0 1 0 0 1 1 LDD R 2 0 1 1 0 1 1 1 0 0 L DIR 1 0 0 1 0 0 P(4) 1 0 1 LOA D 1 0 1 ALU-B 1 0 1 LD AR 1 1 0 LDAR 1 1 0 P C-B 1 1 0 LDPC 24位微代码中各信号的功能 (1) uA5—uA0:微程序控制器的微地址输出信号,是下一条要执行的微指令的微地址。 (2) S 3、S2、Sl、S0:由微程序控制器输出的ALU 操作选择信号,以控制执行16种算术操作或16种逻辑操作中的某一种操作。 (3) M :微程序控制输出的ALU 操作方式选择信号端。M=0执行算术操作;M=l 执行逻辑操作。 (4) Cn :微程序控制器输出的进位标志信号,C n=0表示A LU 运算时最低位有进位,Cn=1则表示无进位。 (5)WE :微程序控制器输出的RAM 控制信号。当/C E=0时,如WE=0为存储器读;如WE =1为存储器写。 (6) A9、A8——译码后产生CS0、CS1、CS2信号,分别作为SW_B 、RAM 、LE D的选通控制信号。 (7) A 字段(15、14、13)——译码后产生与总线相连接的各单元的输入选通信号(见表6-1)。 (8) B字段(12、11、10)——译码后产生与总线相连接的各单元的输出选通信号。 (9) C 字段(9、8、7) ——译码后产生分支判断测试信号P (1)~P(4)和LD PC信号。 系统涉及到的微程序流程见图6-2。当执行“取指令”微指令时,该微指令的判断测试字段为P (1)测试。由于“取指令”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支(见图6-2左图)。用指令寄存器的高4位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定地址单元。 控制台操作为P(4)测试(见图6-2右图),它以控制台信号SW B、S WA 作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用控制存储器的一个微地址单元,随意填 SWB SWA 控制台指令 0 0 1 0 1 1 读内存(KRD) 写内存(K WE ) 启动程序(RP ) 图6-1 数据通路框图

8位二进制乘法器

8位二进制乘EDA实验 法器 学号:02115024 [2013.12.15] 班级:021151 姓名:王浩楠 指导老师:徐少莹

一.设计要求 8位二进制乘法采用移位相加的方法。即用乘数的各位数码,从低位开始依次与被乘数相乘,每相乘一次得到的积称为部分积,将第一次(由乘数最低位与被乘数相乘)得到的部分积右移一位并与第二次得到的部分积相加,将加得的和右移一位再与第三次得到的部分积相加,再将相加的结果右移一位与第四次得到的部分积相加,直到所有的部分积都被加过一次。 例如:11010101和10010011相乘,计算过程如下: 二.设计方法 按照这种算法,可以得到下图所示之框图和简单流程图。按照这种算法,可以得到下图所示之框图和简单流程图。图中Y寄存器存放被乘数M,B寄存器存放乘数N,A累加器存放部分积。A和Y中的数据在加法器中相加后送入A 中,而A和B相级联又构成了一个16bit的移位寄存器,当它工作于移位模式时,可以实现数据的右移。由于乘数的每一位不是0就是1 ,对应的部分积不是0就是被乘数本身,所以实际作部分积相加这一步时,只要根据乘数的对应位判断:如该位为1 ,则将累加器中的数据加上被乘数再移位;如该位为0时,就不加被乘数而直接移位。运算时首先将累加器A清零,并将被乘数M和乘数N分别存入寄存器Y和B,然后依据寄存器B中最右一位B0(数据N0)确定第一个部分积。将此部分积送入A累加器以后,将A连同寄存器B右移一位,部分积的最低位被移进寄存器B的最左位,乘数的最低位N0被移出寄存器B,而乘数的次低位N1被移至寄存器B的B0位。第二次仍然依据B0位的数据(N1)来确定第二个部分积,将部分积与累加器中的数据相加后右移一位,N1又被移出寄存器,数据N2被移到B0位置。。。。。这样,经过8次部分积相加位的操作,完成1次乘法运算,乘数N恰好被移出寄存器B,寄存器B中保存的就是运算积的低8位数据。移位相加的次数应用一个计数器来控制,每移位一次,计数器计一个数。当计数器计得8个数时,发出一个信号,使电路停止操作,并输出运算结果。

模型计算机系统的设计与实现

题目:模型计算机系统的设计与实现学生姓名: 学院: 班级: 指导教师: 2010年1 月8 日

内蒙古工业大学课程设计(论文)任务书 课程名称:计算机组成与结构课程设计学院:信息工程学院班级:计07-_3班__ 学生姓名:武宝全 _ 学号: 200710210023 指导教师:董志学王晓荣邢红梅

摘要 本次课程设计要求设计实现一个简单8位模型计算机系统,包括用可编程器件实现的运算器,微程序控制器,存储器,简单输入/输出接口和设备,时序和启停控制等电路。通过自己定义的一套指令系统,主要实现算术A加B,A+/B运算,逻辑A·B,置B运算,输入指令,输出指令和存储器存数指令。由微程序控制器按照微指令格式给出下地址,并将结果存入存储器。用Protel电路设计软件画出所设计的模型机系统的电路原理图,包括运算器,微程序控制器,存储器、简单输入/输出设备、时序和启停等电路。用可编程器件EPM7123实现运算器,并借助MAXPLUSII软件实现其功能。在QDKJ-CMH-CPLD试验平台上调试并进行验证。 关键字:微程序、控制器、存储器、

引言 通过俩周的组成与结构设计,设计一个8位模型计算机系统,包括用可编程器件实现的运算器,微程序控制器,存储器,简单输入/输出接口和设备,时序和启停控制等电路。设计工作是在之前的验证实验基础之上完成的,通过自己的思维,实现微程序机的一些基本的逻辑运算。根据现有的二进制指令系统,条件为模型计算机系统为8位模型机,运算器为8位运算器,数据总线和地址总线都为8位,输入设备为8位开关,输出设备为8位发光二级管指示灯。在现有的芯片内烧制自行设计的微指令,达到在输入一个数据后自加,减一,实现自行跳转。 在设计完成后,再输入数据04后得出07的结果,并实现跳转。

八位乘法器VHDL及功能模块说明

EDA课程设计报告 实验名称:八位乘法器

目录 一.引言 1.1 EDA技术的概念?? 1.2 EDA技术的特点?? 1.3 EDA设计流程?? 1.4 VHDL介绍?? 二.八位乘法器的设计要求与设计思路??2.1 设计目的?? 2.2 设计要求?? 三.八位乘法器的综合设计?? 3.1 八位乘法器功能?? 3.2 八位乘法器设计方案?? 3.3 八位乘法器实体设计?? 3.4 八位乘法器VHDL设计?? 3. 5八位乘法器仿真图形?? 心得体会?? 参考文献??

一、引言 1.1 EDA技术的概念 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。 1.2 EDA技术的特点 利用EDA技术进行电子系统的设计,具有以下几个特点:①用软件的方式设计硬件;②用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③设计过程中可用有关软件进行各种仿真;④系统可现场编程,在线升级;⑤整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。因此,EDA技术是现代电子设计的发展趋势。 1.3 EDA设计流程 典型的EDA设计流程如下: 1、文本/原理图编辑与修改。首先利用EDA工具的文本或图形编辑器将设计者的设计意图用文本或图形方式表达出来。 2、编译。完成设计描述后即可通过编译器进行排错编译,变成特定的文本格式,为下一步的综合做准备。 3、综合。将软件设计与硬件的可实现性挂钩,是将软件转化为硬件电路的关键步骤。 4、行为仿真和功能仿真。利用产生的网表文件进行功能仿真,以便了解设计描述与设计意图的一致性。 5、适配。利用FPGA/CPLD布局布线适配器将综合后的网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括底层器件配臵、逻辑分割、逻辑优化、布局布线。适配报告指明了芯片内资源的分配与利用、引脚锁定、设计的布尔方程描述情况。

计算机组成原理-简单模型机设计课设

目录 摘要 (2) 前言 (3) 正文 (4) 一、设计目的和设计原理 (4) 1.1设计目的 (4) 1.2设计原理 (4) 二、总体设计 (7) 三、详细设计 (8) 3.1运算器的物理结构 (8) 3.2存储器系统的组成与说明 (11) 3.3指令系统的设计与指令分析 (12) 3.4微程序控制器的逻辑结构及功能 (14) 3.5微程序的设计与实现 (18) 四、系统调试 (27) 总结 (29) 参考文献 (30) 致谢 (31)

摘要 根据设计任务书要求,本设计要实现完成一个简单计算机的设计,主要设计部分有运算器,存储器,控制器以及微指令的设计。 其中运算器由运算芯片和寄存器来完成,存储器由总线和寄存器构成,使用硬布线的方式实现控制器,从而完成设计要求。 : 关键词:基本模型机的设计;运算器;存储器;控制器;

前言 计算机组成原理是计算机科学技术学科的一门核心专业基础课程。从课程的地位来说,它在先导课程和后续课程之间起着承上启下的作用。 计算机组成原理讲授单处理机系统的组成和工作原理,课程教学具有知识面广,内容多,难度大,更新快等特点。此次课程设计目的就是为了加深对计算机的时间和空间概念的理解, 增强对计算机硬件和计算机指令系统的更进一步了解。 计算机组成原理课程设计目的是为加深对计算机工作原理的理解以及计算机软硬件之间的交互关系。不仅能加深对计算机的时间和空间的关系的理解,更能增加如何实现计算机软件对硬件操作,让计算机有条不紊的工作。

正文 一、设计目的和设计原理 1.1设计目的 融会贯通计算机组成原理课程中各章的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,特别是对硬连线控制器的认识,建立清晰的整机概念。对计算机的基本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。 在掌握部件单元电路实验的基础上,进一步将其组成系统地构造一台基本模型计算机。 1.2设计原理 (1)运算器 设计中所用的运算器数据通路,其中运算器由两片74LS181以并/串形成8位字长的ALU构成。运算器的输出经过一个三态门74LS245(U33)到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0~D7插座BUS1~6中的任一个相连,内部数据总线通过LZD0~LZD7显示灯显示;运算器的两个数据输入端分别由二个锁存器74LS273(U29、U30)锁存,两个锁存器的输入并联后连至插座ALUBUS,测试时通过8芯排线连至外部数据总线EXD0~D7插座EXJ1~EXJ3中的任一个;参与运算的数据来自于8位数据开并KD0~KD7,并经过一三态门74LS245(U51)直接连至外部数据总线EXD0~EXD7,通过数据开关输入的数据由LD0~LD7显示。 算术逻辑运算功能发生器 74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M并行相连后连至SJ2插座,测试时通过6芯排线连至6位功能开关插座UJ2,以手动方式用二进制开关S3、S2、S1、S0、CN、M来模拟74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M;其它电平控制信号LDDR1、LDDR2、ALUB`、SWB`以手动方式用二进制开关LDDR1、LDDR2、ALUB、SWB来模拟,这几个信号有自动和手动两种方式产生,通过跳线器切换,其中ALUB`、SWB`为低电平有效,LDDR1、

8位模型计算机的设计

石家庄经济学院 华信学院 计算机组成原理课程设计报告 题目 8位模型计算机的设计 姓名 学号 班号 4064170801 指导老师关文革尹立洁赵洋 成绩 2009年1月 目录 1. 课程设计目的 52 2. 开发工具选择 52 3. 方案选择 52 4.指令系统设计 52 5. 模型机框图设计 52 6. 指令流程图 52 7. 指令操作时间表(组合逻辑控制器)或者微指令格式(微程序控制器)设计 52 8. 微操作信号综合与优化(组合逻辑控制器)或者微程序(微程序控制器)设计 52 9. VHDL实现 52 10. 调试仿真 52 11. 课程设计回顾总结 52 参考文献 52 附录 52 一、课程设计目的 1、计算机组成原理课程设计的主要任务是让学生通过动脑和动手解决计算机设计中的实际问题。综合运用所学计算机组成原理知识,在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本的模型计算机,掌握整机概念,并设计机器指令系统,编写程序,在所设计的模型计算机上调试运行。

2、通过一台模型机的设计过程,明确计算机的控制原理与控制过程,巩固和灵活应用所学的理论知识,掌握计算机组成的一般设计方法,提高学生设计能力和实践操作技能,为从事计算机研制与设计打下基础。 二、开发工具选择 以TEC-CA教学实验系统为平台,采用硬件描述语言 VHDL为设计工具,应用QUARTUSⅡ5.1环境进行大规模集成电路的功能设计仿真。 三、方案选择 应用微程序控制器来实现8位模型计算机的设计。 四、指令系统设计 所要设计的微程序控制器是由七条指令来完成的,即:load,sta,add,sub,and1,nop,jmp。实现功能分别如下:load指令是公操作,实现取数据的功能;sta指令实现存操作;add指令实现加法操作;sub指令实现减法操作;and指令实现与操作; nop指令实现空操作;jmp指令实现无条件跳转操作。 其中add,sub,and1,属于双操作数指令,其指令格式如下图: 目的 源 其中jmp属于转移指令,其指令格式如下图: 转移条件 转移地址 五、模型机框图设计 I/O 六、指令流程图 Addr_bus load_MAR CS R_NW 3 OP

计算机组成原理课程设计基本模型机设计与实现

课程设计(大作业)报告课程名称:计算机组成原理 设计题目:基本模型机设计与实现 院系:信息技术学院 班级:计算机科学与技术3班 设计者: 学号: 指导教师: 设计时间: 昆明学院 信息技术学院 课程设计(大作业)任务书

目录 课程设计(大作业)报告 一、课程设计的教学目的 1. 在“微程序控制器的组成与微程序设计实验”的基础上,进一步将其中各单元组成系统构造一台模型计算机。 2. 本实验定义五条机器指令,编写相应的微程序,并上机调试运行,形成整机概念。 课程设计内容设计一台基本模型机,并实现相关的指令。 二、课程设计任务和基本要求 本课程设计以TDN-CM++计算机组成原理教学实验系统为平台设计完成。 1.按给定的数据格式和指令系统,设计一个微程序控制器。 2.设计给定机器指令系统以及微程序流程图,按微指令格式写出微 程序的为指令代码。

3.连接逻辑电路完成启动,测试,编程,测试,效验和运行,并观测运 行过程及结果。 4.将微程序控制器模块与运算器模块,存储器模块联机,组成一台 模型计算机。 5.用微程序控制器控制模型机的数据通路。 6.通过在模型机上运行由机器指令组成的简单程序,掌握机器指令 与微指令的关系,建立计算机整机的概念,掌握计算机的控制机制。 7.按指定的应用项目进行汇编指令格式及功能设计,并设计相应的 机器指令代码,按照模型机数据通路设计实现机器指令功能的微程序.在 PC机上编辑机器指令和微程序,装载代码到TDN-CM++实验系统并运行,实现应用要求。 三、设计任务及分析 (1)设计任务: 从输入设备读取数据X并将其存入以A为间接地址的 内存单元,将X与R 0. 寄存器中的内容Y执行X ⊕,结果送到以B为直接地址的内存单元保存。 (2)分析: A:给R 寄存器直接置入01H. B:从数据开关给间接地址为0CH的内存单元置数,(03H). C:给R 0中的内容取反,结果存在R 中. D:将间接地址0CH中直接地址0EH中的内容(03H)放入DR1中, R 中的内容 放入DR2中,将DR1和DR2种的数进行异或运算,结果放在R 中. E:将R 中的内容存在直接地址为0DH的内存单元中. 四、设计原理 模型机在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU 从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一段微程序。 本实验采用五条机器指令: IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下(前4位为操作码):

移位硬件八位乘法器

移位硬件八位乘法器 作者:孤灯 摘要:纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硬件资源,难以实现宽位乘法器,基于PLD器件外接ROM九九表的乘法器则无法构成单片系统,也不实用。这里介绍由八位加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而且由FPGA构成实验系统后,可以很容 易的用ASIC大型集成芯片来完成,性价比高,可操作性强。 关键词:加法器,寄存器,一位乘法器,锁存器。 Abstract The pure combinatory logic constitution multiplier although the working speed quite is quick,But too takes the hardware resources,Realizes the wide position multiplier with difficulty.Meets the ROM multiplication table based on the PLD component outside the multiplier then is unable to constitute the monolithic system,Also is impractica Here introduced constitutes by eight accumulators by the succession logic way design eight multipliers,Has the certain practical value, Moreover constitutes the experimental system after FPGA,May be very easy to complete with the ASIC large-scale integration chip,The natural price is higher than,Feasibility. 一.设计思路 纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硬件资源,难以实现宽位乘法器,基于PLD器件外接ROM九九表的乘法器则无法构成单片系统,也不实用。这里介绍由八位加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而且由FPGA构成实验系统后,可以很容易的用ASIC大型集成芯片来完成,性价比高,可操作性强。其乘法原理是:乘法通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数左移后与 上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。 二.方案设计与论证 此设计是由八位加法器构成的以时序逻辑方式设计的八位乘法器,它的核心器件是八 加法器,所以关键是设计好八位加法器。 方案一:八位直接宽位加法器,它的速度较快,但十分耗费硬件资源,对于工业化设计是不合理的。 方案二:由两个四位加法器组合八位加法器,其中四位加法器是四位二进制并行加法器,它的原理简单,资源利用率和进位速度方面都比较好。综合 各方面的考虑,决定采用方案二。 三.工作原理

计算机组成原理-简单模型机设计课设

兰州理工大学技术工程学院 计算机组成原理课程设计任务书(09级)题目:模型机设计—1 学生姓名:学号: 班级:计算机科学与技术(2)班指导老师: 一、计算机组成原理课程设计题目简介 该设计要求学成根据计算机组成原理课程所学知识,设计、开发一套简单的模型就算计。 通过对一个简单计算机的设计,以达到对计算机的基本组成、部件的功能与设计、微程序控制器的设计,微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。通过模型机的设计和调试,连贯运用计算机组成原理课程学到的知识,建立计算机整体概念,加深计算机时间与空间概念的理解。 二、计算机组成原理课程设计任务 1、查阅文献资料,一般在5篇以上; 2、以教学实验用模型机为背景,通过调研、分析现有的模型机,建立带有带8位自增、自减指令的整机模型; 3、完成系统编程与测试工作; 4、撰写设计说明书; 5、做好答辩工作。 三、计算机组成原理课设设计的主要内容、功能及指标 1、根据任务要求设计整体系统的方案。 2、存储系统:使用模型机的存储模块,说明存储器的输入输出时序,模块连接方式等。 3、运算器:使用模型机的器件,组成带有片间串行进位8位移位运算功能的运算器。 4、微程序控制器模块:使用教学机的系统,设计微程序控制器。 5、设计模型机指令系统:(含设计微指令格式,微程序流程图,每条指令所对

应的微程序等)。指令系统包括下列指令:IN、OUT、STA、LDA、JMP、BZC、CLR、MOV、 ADD、SUB、ADC、ADT、INC、DEC、SBT、SBC 6、了解并说明教学模型机的输入输出模块。 7、在自己设计的指令系统基础上,编制一个汇编语言小程序并进行调试通过。 8、整机设计分模块进行,说明模块中数据和控制信号的来源、去向、功能、时序、以及模块间数据和控制信号的来源、去向、功能、时序等。 四、完成课程设计报告 1、设计题目、设计任务、实验设备与器材; 2、整体设计方案,设计原理与内容; 3、画出模型机数据通路图; 4、画出设计的模型机微程序流程图和微程序; 5、说明指令系统的格式; 6、说明模块中数据和控制信号的来源、去向、功能、时序、以及模块间数据和控制信号的来源、去向、功能、时序等。 7、调试情况,调试过程中遇到的主要问题,是如何解决的;对设计和编码的回顾讨论和分析;改进设想;经验和体会等; [1]计算机组成原理课程设计提交的成果 1.设计说明书一份,内容包括: 1)中文摘要100字;关键词3-5个; 2)前言; 3) 设计的目的及设计原理; 4)模型机的逻辑结构及框架; 5) 运算器的物理结构; 6)存储器系统的组成与说明; 7)指令系统的设计与指令格式分析; 8) 微程序控制器的逻辑结构及功能; 9)微程序的设计与实现(含微指令格式、后续地址产生方法以及微程序入口地址的形式)

八位模型机设计

八位模型机设计 | | 实验名称八位模型机设计 课程名称计算机组成原理程序设计 | | 专业班级:计算计科学与技术 学生姓名: 实验日期:2015年5月 验证性、综合性实验报告应含的主要内容: 一、实验目的及要求 二、所用仪器、设备

三、实验原理 四、实验方法与步骤 五、实验结果与数据处理 六、讨论与结论(对实验现象、实验故障及处理方法、实验中存在的问题等进行分析和讨论,对实验的进一步想法或改进意见) 七、所附实验输出的结果或数据 设计性实验报告应含的主要内容: 一、设计要求 二、选择的方案 三、所用仪器、设备 四、实验方法与步骤 五、实验结果与数据处理 六、结论(依据“设计要求”) 七、所附实验输出的结果或数据

目录 一、摘要....................................................................................................... 错误!未定义书签。 二、前言....................................................................................................... 错误!未定义书签。 三、设计目的、任务与内容....................................................................... 错误!未定义书签。 3.1设计目的.......................................................................................... 错误!未定义书签。根据计算机组成原理课程所学知识,设计一个8位的模型计算机。 .. 错误!未定义书签。 3.2设计任务.......................................................................................... 错误!未定义书签。 3.3设计内容.......................................................................................... 错误!未定义书签。 四、八位模型机整体设计........................................................................... 错误!未定义书签。 4.1总体结构.......................................................................................... 错误!未定义书签。 4.2指令系统 (9) 4.3运算器 (10) 4.4存储器 (11) 4.5控制器 (12) 4.6指令流程图和操作时间表 (15) 4.7微指令码 (15) 五、实验感想与讨论 (21) 六、参考文献 (22)

相关主题
文本预览
相关文档 最新文档