简单模型机实验报告
简单模型机组成原理实验报告
简单模型机组成原理实验报告简单模型机是一种学习机械原理和电子技术的教学工具,它可以帮助学生理解机械结构和电路原理,提高学生的实验能力和创新能力。
本文将介绍简单模型机的组成原理和实验过程。
一、简单模型机的组成原理简单模型机由机械结构和电路控制两部分组成。
机械结构包括电机、齿轮、链条、轮子、滑轮等零部件,这些零部件组成了模型机的动力系统。
电路控制包括电源、电机控制器、传感器、LED灯等电子元件,这些元件组成了模型机的控制系统。
模型机的动力系统和控制系统通过电线连接在一起,实现了模型机的运动和控制。
二、简单模型机的实验过程1. 组装机械结构。
根据模型机的说明书,将各个零部件按照要求组装在一起,包括电机、齿轮、链条、轮子、滑轮等零部件。
组装的过程需要注意每个零部件的位置和连接方式。
2. 连接电路控制。
将电源、电机控制器、传感器、LED灯等元件按照要求连接在一起,形成一个控制电路。
电路的连接需要注意电线的颜色和连接方式,确保电路的正常工作。
3. 调试机械结构。
将电源接上,打开电机控制器,测试机械结构的运动情况,包括电机转动、齿轮传动、轮子转动等。
如果出现异常情况需要及时停机检查。
4. 调试电路控制。
将传感器连接到电路控制中,测试传感器的工作情况,包括检测光线、声音、温度等。
如果传感器检测到异常情况,控制器会发出警报信号或控制电机停止运动。
5. 进行实验。
根据实验要求,调整机械结构和电路控制,进行不同的实验,包括测量速度、转动角度、距离等。
实验过程需要记录数据和结果,进行分析和总结。
三、结论通过简单模型机的组装和实验,可以帮助学生深入理解机械原理和电路控制原理,提高学生的实验能力和创新能力。
同时,模型机的组装和实验也可以培养学生的动手能力和团队精神,促进学生的综合素质的提高。
机器模型实验报告范文
实验名称:机器模型实验实验时间:2023年10月15日实验地点:XX实验室实验人员:XXX、XXX、XXX一、实验目的1. 理解并掌握机器模型的基本概念和原理。
2. 通过实际操作,加深对机器模型设计、制作和调试过程的理解。
3. 培养团队协作能力和创新思维。
二、实验原理机器模型是模拟真实机器工作原理的一种教学工具,通过构建模型,可以帮助我们更好地理解机器的工作过程。
本实验主要研究机器模型的设计、制作和调试过程。
三、实验内容1. 选取一个典型机器,如机械臂、挖掘机等,进行模型设计。
2. 分析机器的结构和工作原理,确定模型的主要部件和功能。
3. 制作模型,包括绘制设计图、选用材料、加工制作等。
4. 调试模型,确保模型能够按照预期的工作原理运行。
四、实验步骤1. 模型设计(1)选取机器:以挖掘机为例。
(2)分析结构:挖掘机主要由斗杆、动臂、斗斗和底盘等部分组成。
(3)确定功能:挖掘机的主要功能是挖掘、装载和运输物料。
(4)绘制设计图:根据分析结果,绘制挖掘机模型的设计图。
2. 模型制作(1)选用材料:选用轻质、易加工的材料,如塑料、木材等。
(2)加工制作:根据设计图,进行模型制作,包括切割、组装、焊接等。
3. 模型调试(1)检查模型:确保模型各部件连接牢固,无松动。
(2)测试功能:通过手动或电动驱动,测试模型的功能,如挖掘、装载等。
(3)调整参数:根据测试结果,调整模型参数,如驱动速度、负载能力等。
五、实验结果与分析1. 模型外观:挖掘机模型整体结构完整,外观与真实挖掘机相似。
2. 模型功能:模型能够实现挖掘、装载和运输物料的功能。
3. 模型性能:模型在测试过程中,能够稳定运行,满足预期性能。
4. 实验分析(1)在设计阶段,通过分析机器的结构和工作原理,明确了模型的设计目标和功能。
(2)在制作阶段,选用合适的材料和加工工艺,确保了模型的制作质量。
(3)在调试阶段,通过测试和调整,使模型达到了预期性能。
六、实验总结通过本次实验,我们掌握了机器模型的设计、制作和调试过程。
实验四 模型机设计与实现——实验报告
专业级班学号姓名实验报告实验四模型机的设计与实现一、实验目的1、构造一台基本模型计算机。
2、掌握在模型计算机上进行微程序编制、指令输入、运行调试的方法。
二、实验设备DVCC-C5JH计算机组成原理教学实验系统一台,排线若干。
三、实验原理:部件试验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元空间信号,实现特定指令的功能,这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
四、实验内容1、模型机指令设计:(这里填写各模型机指令的指令助记符、指令机器编码、指令说明)DEC R0 0101 0000 (R0)-1→R0AND addr,R0 0110 0000 (R0) 与[addr]→R02、实验过程:先详细了解实验的原理然后进行以下步骤:(以下步骤应根据自己实际情况补充完整)⑴设计模型机的数据通路图,根据实际机器指令要求,设计微程序流程图及确定微地址;(下面绘制:①数据通路图;②微程序流程图及相应的微指令地址。
)1、2、PC A RPC AR RAM B US RAM B US SW R PC A RRAM B USR0BUS BUS R01 1103 04 12 07 31 10RAM B US02 R0DR1 05 (DR1)+(D R2)R006 PC A RRAM B US RAM B US32 17 R0DR125 13 PC A RRAM B US 26 14 R0DR1 (DR1)-1R0 PC A R RAM B US RAM B USR0DR1 (DR1)+(D R2)R01516 33 34 3536 37微指令代码PC AR PC+1(SW)BUS BUS DR1DR1RAMPC AR PC+1RAM BUS BUS DR1DR1LED21243020 2227⑵根据⑴的设计,编制好微程序;(下面写设计的微程序,要标出各微指令在控存中的地址,可以用联机调试中的十六进制形式编写)$ M00108101$ M0182ED01$ M0248C000$ M0304E000$ M0405B000$ M0506A201$ M06019A95$ M0719E000$ M08011000$ M0983ED01$ M0A87ED01$ M0B9AED01$ M0C96ED01$ M0D1BA201$ M0E9CED01$ M0F15A000$ M1092ED01$ M1194ED01$ M1217A000$ M13018001$ M14182000$ M15010A07$ M1681D100$ M17100A07$ M18118A06$ M19018202$ M1A0FE000$ M1B018AF5$ M1C1DE000$ M1D1EA000$ M1E1FB201$ M1F018AB9⑶根据⑴中的数据通路,连接好实验线路,仔细检查无误后接通电源;⑷将编制好的微程序写入控存;⑸使用上面设计好的机器指令编写机器指令程序,存放在内存中;(下面列出编写的机器指令程序,可以用联机调试中的十六进制形式编写,要写明对应的内存地址和相应的内存内容,且要进行简要的指令说明)$ P0000 IN$ P0110 ADD[0CH] R0+[0CH] -> R0$ P020C 01$ P0320 STA[0BH] R0->[0BH]$ P040D$ P0530 OUT[0BH] [0BH]->BUS$ P060D$ P0740 JMP[00H] 00H->PC$ P0800$ P0950 DEC [R0]-1->R0$ P0A60 AND [R0][0DH]->R0$ P0B0D 05$ P0C01 内容为01$ P0D05 内容为05⑹执行⑸中的机器指令程序,并验证前面的设计是否正确,若不正确请修改前面的设计和微程序;四、实验结果机器指令执行的情况:①第一次执行情况(记录实验时发生的情况包括何处错误):②第二次执行情况:……(调试过程根据自己情况进行填写)五、实验总结。
简单模型机实验报告
简单模型机实验报告篇一:模型机实验报告HUNAN UNIVERSITY课程实习报告题目:模型机学生姓名学生学号 XX0801328专业班级计算机科学与技术(3)班指导老师方恺晴完成日期 XX.5.28思考题:1. 给定一个复合运算式子以及指令码IR[7..5]与八位BUS总线对应情况。
要求写出七条指令新的指令码并写出复合运算执行mif文件。
修改模型机电路调试程序以实现复合运算。
例:已知A=55H,B=8AH,C=F0H;IR[7..5]对应BUS8,BUS1,BUS3;写出(Aplus/B)^(/(/CplusB))的mif文件,并在模拟机上实现。
答:模拟机电路修改如下:存储器预设指令重设:计算结果:(A+/B)^(/(/C+B))=42H2. Microcomputer.vhd代码中进程ct1,ct2,ct3,ct4功能划分依据是什么?ct1:微序列控制器下址跳转。
ct2:实现各种指令,主要集中在实现从存储器或者寄存器释放数据到总线上。
ct3:完成各种指令,从总线上装载数据到相应的存储器或者寄存器中。
ct4:生成下址,判断下址生成方式,根据不太那个的方式生成下址。
3. Microcomputer.vhd代码中如何定义并初始化RAM?type ram is array(0 to 37)of std_logic_vector(7 downto 0); --38*8ramsignal ram8:ram:=(x”20”, x”1e”, x”80”, x”40”, x”20”, x”20”, x”1d”, x”c0”, x”20”, x”40”, x”21”, x”20”, x”1f”, x”80”, x”40”, x”22”, x”20”, x”1e”, x”c0”, x”22”, x”80”, x”e0”, x”21”, x”40”, x”23”, x”60”, x”23”, x”a0”, x”00”, x”55”, x”8a”, x”f0”,others=>x”00”) –initialize ram44. Microcomputer.vhd代码中bus_reg_t2 将ram8存储器中对应于ar中地址单元的数据取出来放到bus_reg_t2寄存器中。
CPU-与简单模型机设计实验
评语: 课中检查完成的题号及题数:课后完成的题号与题数:成绩: 自评成绩: 85实验报告实验名称:CPU 与简单模型机设计实验日期:2015.11.17 班级: 2 学号:13 姓名:周小多一、实验目的:1. 掌握一个简单CPU 的组成原理。
2. 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。
3. 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。
二、实验内容:1.要实现一个简单的CPU,并且在此CPU 的基础上,继续构建一个简单的模型计算机。
CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图2-1-1 所示。
这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。
2.本模型机和前面微程序控制器实验相比,新增加一条跳转指令JMP,共有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高4位为操作码):助记符机器指令码说明IN 0010 0000 IN→R0ADD 0000 0000 R0 + R0→R0OUT 0011 0000 R0→OUTJMP addr 1100 0000 addr→ PCHLT 0101 0000 停机3. 设计一段机器程序,要求从IN 单元读入一个数据,存于R0,将R0 和自身相加,结果存于R0,再将R0 的值送OUT 单元显示。
根据要求可以得到如下程序,地址和内容均为二进制数。
地址内容助记符说明00000000 00100000 ; START: IN R0 从IN 单元读入数据送R000000001 00000000 ; ADD R0,R0R0 和自身相加,结果送R000000010 00110000 ; OUT R0R0 的值送OUT 单元显示00000011 11100000 ; JMP START跳转至00H 地址00000100 0000000000000101 01010000 ; HLT停机三、项目要求及分析:1. 试修改现有的指令系统,将加法指令的功能修改为R0的内容和某个存储单元的内容相加;增加存数、取数和减法三条机器指令,指令助记符分别为STA、LAD 和SUB,指令操作码分别为十六进制的60、70和80。
模型机实验报告范文
模型机实验报告范文实验报告:模型机引言模型机是一种能够模拟真实飞行原理的飞行模拟器设备。
它具有模拟真实飞行环境的能力,并用电子方式提供各种飞行动作的控制和监测。
本实验报告旨在介绍模型机的原理和应用,并通过实验来验证模型机的飞行能力和准确性。
一、模型机的原理1.动力系统:模型机的动力系统由电动机、电调器和螺旋桨组成。
电动机提供动力,电调器控制电机的转速,螺旋桨则产生推力。
通过调节电机的转速和螺旋桨的角度,可以控制模型机的飞行状态和动作。
2.飞行姿态控制系统:模型机的姿态控制系统由陀螺仪和加速度计组成。
陀螺仪可以感知模型机的倾斜和转动,加速度计可以感知模型机的加速度。
通过对陀螺仪和加速度计的信号进行处理,可以对飞行姿态进行控制。
3.遥控系统:模型机的遥控系统包括遥控器和接收机。
遥控器由飞行员通过手柄进行控制,接收机接收遥控信号并将其转化为模型机动作。
遥控器可以控制模型机的方向、高度和速度等参数。
二、实验方法本实验使用一架模型机进行飞行模拟实验。
实验过程包括以下步骤:1.检查模型机的动力系统,确保电动机和螺旋桨工作正常。
2.检查模型机的姿态控制系统,确保陀螺仪和加速度计的正常工作。
3.进行遥控系统的校准,确保遥控信号的准确传输。
4.在开阔的空地上进行飞行实验。
首先以低速起飞,然后在空中进行一系列动作,如直线飞行、转弯、盘旋等。
通过遥控器控制模型机的动作,并通过观察和记录模型机的运动轨迹来验证模型机的飞行能力和准确性。
三、实验结果通过实验观察和记录,我们发现模型机在飞行过程中表现出良好的飞行能力和准确性。
它能够根据遥控器的指令进行各种飞行动作,如上升、下降、前进、后退、左转、右转等。
模型机的姿态控制系统能够保持模型机的水平飞行,并根据遥控信号进行相应的调整。
同时,模型机的动力系统能够提供足够的动力,使模型机能够在空中稳定飞行。
四、实验讨论1.模型机的飞行性能受到多种因素的影响,如风速、湿度、温度等。
在实际飞行中,飞行员需要根据实际情况进行相应的调整和控制。
计算机组成实验报告四 基本模型机实验
淮海工学院计算机工程学院实验报告书课程名:《计算机组成原理》题目:实验四基本模型机实验班级:^ ^学号:^ ^姓名:^ ^1、目的与要求1)在“微程序控制器的组成与微程序设计实验”的基础上,将第一部分中的各单元组成系统,构造一台基本模型计算机。
2)本实验定义五条机器指令,编写相应的微程序,并上机调试运行,形成整机概念。
2、实验设备1) ZYE1601B计算机组成原理教学实验箱一台,排线若干。
2) PC机一台。
3、实验步骤与源程序l) 根据该模型机的指令系统,编写一段程序。
这里给出两个参考程序。
参考程序一:本程序从输入设备(数码开关)取入数据,保存在内存单元08,然后从08单元送到输出设备(LED数码管)进行显示。
然后程序停止(请实验者考虑:如何修改程序,使程序不断从输入设备取出数据,送到输出设备显示。
每次循环过程中,可以使输入设备数据改变,考察输出显示的结果。
)。
设计机器指令程序如下(机器码为十六进制数据)。
地址内容助记符说明00 00 IN ;输入开关数据→R001 20 STA [08H] ;R0→[08]02 08 ;地址03 30 OUT [08H] ;[08H]→BUS04 08 ;地址05 40 JMP [00H] ;00H→PC06 00 ;跳转地址参考程序二:本程序从输入设备(数码开关)读入数据,与0A单元的数据相加,然后送到输出设备(LED 数码管)进行显示。
本程序不断地循环运行,在运行中可改变输入开关(INPUT)的值,观察输出显示的变化。
设计机器指令程序如下(机器码为十六进制数据)。
地址内容助记符说明00 00 IN ;输入开关数据→R0,采集数据01 10 ADD [0AH] ;R0+[0AH]→R0,输入数据与指定数据相加02 0A ;地址03 20 STA [0BH] ;R0→[0B]04 0B ;地址05 30 OUT [0BH] ;[0BH]→BUS,输出显示06 0B ;地址07 40 JMP [00H] ;00H→PC08 00 ;跳转地址0A 01 ;加数,可自定0B ;求和结果保存在0B单元2) 按图1连接实验线路。
模型机设计实验报告
模型机设计实验报告模型机设计实验报告一、引言模型机是一种能够模拟真实飞行器运行原理和机械结构的小型飞行器。
通过设计和制作模型机,可以更好地理解飞行器的工作原理,提高对飞行器的认知和掌握。
本实验旨在通过设计和制作一个简单的模型机,展示其基本原理和运行过程。
二、设计思路在设计模型机之前,我们首先需要明确模型机的用途和目标。
本次实验的目标是设计一个能够实现垂直起降和水平飞行的模型机。
为了达到这个目标,我们选择了倾转旋翼飞行器作为设计的基础。
三、模型机结构设计1. 机身设计模型机的机身采用轻质材料制作,如碳纤维和铝合金,以确保机身的强度和轻量化。
机身的设计需要考虑到电池和电子设备的安装位置,以及传感器和控制系统的布局。
2. 旋翼设计倾转旋翼飞行器的旋翼是实现垂直起降和水平飞行的关键部件。
我们选择了四旋翼结构,每个旋翼由一个电动机驱动,并通过控制系统实现旋翼的倾斜,从而实现飞行器的方向控制。
3. 控制系统设计模型机的控制系统由飞行控制器、传感器和执行机构组成。
飞行控制器负责接收传感器数据并进行飞行控制算法的计算,然后通过执行机构控制旋翼的转速和倾斜角度。
四、实验过程1. 材料准备根据设计要求,准备所需的材料和工具,包括碳纤维板、铝合金材料、电动机、飞行控制器等。
2. 制作机身根据设计图纸,使用碳纤维板和铝合金材料制作机身的框架和外壳。
确保机身的强度和轻量化。
3. 安装电动机和旋翼将电动机安装在机身上,并连接旋翼。
确保旋翼能够自由旋转,并通过控制系统进行倾斜控制。
4. 安装控制系统将飞行控制器、传感器和执行机构安装在机身中,并进行连接。
确保控制系统能够正常工作,并能够接收传感器数据并进行飞行控制。
5. 调试和测试完成模型机的组装后,进行调试和测试。
通过遥控器进行模型机的起飞、降落和飞行控制,检查模型机的性能和稳定性。
五、实验结果与分析经过实验测试,我们成功地设计和制作了一个能够实现垂直起降和水平飞行的模型机。
模型机实验报告
模型机实验报告模型机实验报告一、引言模型机是一种用来模拟真实飞行器的小型飞行模型。
通过对模型机的设计、搭建和调试,可以深入了解飞行器的结构和原理,提高对飞行器的认识和理解。
本文将介绍我所进行的一次模型机实验,并对实验结果进行分析和总结。
二、实验目的本次实验的目的是通过搭建一架模型机,探究其飞行性能和稳定性,并对模型机进行相应的调试和优化。
通过实验,我们希望能够了解模型机的飞行原理,提高对空气动力学和飞行控制的理解。
三、实验材料和方法1. 实验材料:a. 模型机组件:包括机翼、机身、尾翼、电机、螺旋桨等。
b. 遥控器:用于控制模型机的飞行姿态和动作。
c. 电池:为模型机提供动力。
d. 降落伞:用于模型机降落时减慢速度。
2. 实验方法:a. 搭建模型机:根据设计图纸和说明书,将模型机的各个组件进行组装和连接。
b. 调试模型机:通过遥控器对模型机进行飞行姿态和动作的调试,确保模型机能够平稳飞行。
c. 进行飞行实验:将模型机投放到空中,观察其飞行状态和性能。
d. 数据分析和总结:根据实验结果,对模型机的飞行性能和稳定性进行分析和总结。
四、实验结果在实验过程中,我们成功搭建了一架模型机,并进行了多次飞行实验。
通过观察和记录实验数据,我们得到了以下实验结果:1. 飞行性能:模型机在飞行过程中,能够稳定地在空中飞行,并且能够完成一些基本的动作,如上升、下降、转弯等。
模型机的飞行速度和高度可以通过遥控器进行调节和控制。
2. 稳定性:模型机在飞行过程中表现出较好的稳定性。
即使在风力较大的情况下,模型机也能够保持相对平稳的飞行姿态,并能够自动调整飞行姿态以保持平衡。
3. 飞行时间:模型机的飞行时间受限于电池的容量和电机的功率。
在实验中,我们发现模型机的飞行时间大约为10-15分钟,之后需要更换电池。
五、实验分析和总结通过对实验结果的分析和总结,我们可以得出以下结论:1. 模型机的飞行性能和稳定性受到多种因素的影响,包括机翼的设计、重心的位置、电机的功率等。
纸飞机模型实验报告
纸飞机模型实验报告引言纸飞机是一种简单而又有趣的玩具,它以其简单的结构和易操作性而备受儿童和成年人的喜爱。
在本次实验中,我们将研究和测试不同纸飞机模型的飞行性能,探究飞行距离和飞行稳定性之间的关系。
实验目的1. 了解纸飞机模型的基本结构和设计原理。
2. 探究纸飞机模型的飞行特性和影响飞行性能的因素。
3. 分析不同设计的纸飞机模型的飞行距离和飞行稳定性之间的关系。
实验材料和方法材料1. 纸张2. 尺子3. 手工刀4. 计时器5. 测量器材(标尺或测量软件)方法1. 选择纸张并根据所选模型的设计原理进行切割和折叠,并确保模型的对称性和平衡性。
2. 进行距离测量前,确保实验环境平整且没有任何干扰。
3. 开始实验前,将纸飞机模型对齐并掷出,启动计时器。
4. 测量纸飞机模型的飞行距离,并记录下来。
5. 重复实验三次,并计算平均值。
实验结果经过一系列实验,我们获得了以下数据:模型名称第一次飞行距离(单位:米)第二次飞行距离(单位:米)第三次飞行距离(单位:米)平均飞行距离(单位:米)-模型A 5.2 4.9 5.15.07模型B 4.5 4.3 4.24.33模型C 6.1 5.9 6.26.07由上表可知,模型C的平均飞行距离最远,达到了6.07米,而模型B的平均飞行距离最短,只有4.33米。
这说明不同设计的纸飞机模型具有不同的飞行距离表现,其中模型C的设计最为优秀。
结论通过本次实验,我们得出以下结论:1. 不同设计的纸飞机模型具有不同的飞行性能。
2. 飞行距离受到纸飞机模型的结构和平衡性的影响,优秀的设计能够使纸飞机飞行更远。
3. 实验结果表明模型C的设计最为优秀,具有最远的飞行距离。
总结纸飞机模型实验是一项有趣且能够展示设计能力和物理原理知识的实验。
通过本次实验,我们不仅了解了纸飞机模型的基本结构和设计原理,还得出了不同设计的纸飞机模型的飞行距离和飞行稳定性之间的关系。
探索纸飞机的飞行性能不仅能为我们带来乐趣,还能帮助我们更好地理解物理学中的运动和力学原理。
模型机设计实验报告
模型机设计实验报告一、实验目的本次实验的目的是通过设计和制作模型机,掌握机械设计的基本原理和方法,提高学生的机械制图和机械加工能力,培养学生的创新思维和动手能力。
二、实验原理模型机是一种小型机械装置,通常由多个零部件组成,可以模拟真实机器的运行原理。
在设计模型机时,需要考虑机器的结构、功能和材料等因素,以确保机器的稳定性和可靠性。
在本次实验中,我们采用了三维建模软件进行机器的设计,然后使用数控机床进行机器的加工。
在加工过程中,需要注意机器的精度和加工质量,以确保机器的性能和使用寿命。
三、实验步骤1. 设计模型机的结构和功能,确定机器的材料和尺寸。
2. 使用三维建模软件进行机器的设计,包括零部件的设计和组装。
3. 将设计好的模型导入数控机床,进行机器的加工。
4. 对加工好的零部件进行组装和调试,确保机器的性能和稳定性。
5. 对机器进行测试和评估,记录机器的性能和使用情况。
四、实验结果经过设计和制作,我们成功地制作出了一台模型机。
该机器采用了铝合金材料,具有较高的强度和耐腐蚀性。
机器的结构紧凑,功能齐全,可以模拟真实机器的运行原理。
在加工过程中,我们采用了数控机床进行加工,确保了机器的精度和加工质量。
在组装和调试过程中,我们注意了机器的细节和性能,确保了机器的稳定性和可靠性。
经过测试和评估,我们发现该机器的性能和使用情况良好,可以满足实际应用的需求。
五、实验总结通过本次实验,我们掌握了机械设计的基本原理和方法,提高了机械制图和机械加工能力,培养了创新思维和动手能力。
同时,我们也了解了数控机床的加工原理和操作方法,提高了数控加工的技能和水平。
在今后的学习和工作中,我们将继续加强机械设计和制造方面的学习和实践,不断提高自己的技能和能力,为实现自己的梦想和目标做出更大的贡献。
计算机组成原理课程设计模型机实验报告 精品
实践报告计算机组成原理--模型机设计报告作者姓名:专业:计算机科学与技术学号:指导教师:完成日期:年月号******学院计算机工程系摘要“计算机组成原理”是计算机科学与技术系的一门核心专业基础课程,在计算机专业中起了很重要的作用。
课程中分部分介绍了计算机的各个部件,我们有必要将它们组合起来以对计算机有一个整体的认识。
这次课程设计通过对一个简单模型机的设计与实现,是我们对计算机的基本组成、部件的设计、部件间的连接有更深的理解。
依次设计计算机的几个部件并进行连接使成为一个完整的模型机。
通过运行和调试,使之正常工作。
关键词:运算器;控制器;存储器;输入输出接口;模型机正文:一、课设目的要求:《计算机组成原理》是一门理论性、实践性均较强的专业基础课,要求学生具有一定的电路分析、指令系统编写能力、软件设计能力。
通过计算机组成原理实践周,要突出《计算机组成原理》理论联系实际的特点,培养实践动手能力。
1.培养学生运用理论知识和技能,构建建立问题逻辑结构,锻炼学生分析解决实际问题的能力。
2.培养学生使用PROTEUS软件分析和设计计算机内部器件的方法和技巧。
3.培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。
4.通过实践设计,要求学生在指导教师的指导下,独立完成设计课题的全部内容,包括:(1)通过调查研究和上机实习,掌握PROTEUS软件的设计和仿真调试技能。
(2)掌握计算机系统的组成结构及其工作原理。
(3)设计实现一个简单计算机的模型机,并能够使用PROTEUS软件进行电路仿真验证二、课设内容:利用所学的计算机结构和工作原理的知识,要求学生独立完成简单计算机的模型机设计,并用PROTEUS软件进行验证。
在分析设计过程中,要求学生养成良好的习惯,学会分析实际问题,并利用所学的知识建立系统的逻辑结构,学会PROTEUS调试技巧和方法,通过逻辑设计和工程设计培养调试硬件电路的实际动手能力。
要求学生掌握数字逻辑电路中故障的一般规律,以及排除故障的一般原则和方法;锻炼分析问题与解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。
基本模型机实验报告
基本模型机实验报告一、实验目的本实验旨在通过构建一个基本模型机,深入了解计算机的工作原理,包括数据的二进制表示、指令执行、内存管理以及简单的输入输出。
二、实验设备1. 微处理器(如 Intel 8080)2. 存储器芯片(如 Intel 2114)3. 输入设备(如开关或键盘)4. 输出设备(如LED灯或显示器)5. 电源三、实验步骤步骤一:构建模型机根据实验设备,将微处理器、存储器、输入设备和输出设备连接起来,形成一个简单的模型机。
确保所有连接正确无误,电源供应稳定。
步骤二:数据表示与存储在模型机中,使用二进制数表示数据。
将数据存储在存储器中,并观察数据在存储器中的表示形式。
例如,使用开关模拟二进制数的0和1,将开关按下表示0,不按下表示1。
步骤三:指令执行编写简单的汇编指令,如加法指令,并在模型机上执行。
观察指令的执行过程,包括取指令、解码指令、执行指令和写回结果等步骤。
步骤四:内存管理模拟内存的读写操作,了解内存地址的概念以及如何通过地址访问存储在内存中的数据。
观察内存地址的增加和减少对数据读写的影响。
步骤五:输入输出操作通过输入设备输入数据,观察模型机如何将输入的数据存储在内存中。
然后通过输出设备输出数据,了解输出数据的表示形式。
四、实验结果与分析通过本次实验,我们了解了计算机的基本工作原理,包括数据的二进制表示、指令执行、内存管理和输入输出操作。
在实验过程中,我们观察到微处理器负责执行指令,存储器用于存储数据和指令,输入设备用于输入数据,输出设备用于输出数据。
此外,我们还了解了内存地址的概念以及如何通过地址访问存储在内存中的数据。
五、结论与建议本次实验使我们深入了解了计算机的基本工作原理,并掌握了构建简单模型机的方法。
为了进一步提高实验效果,建议在未来的实验中增加更多的设备和功能,例如中断处理、多任务处理等,以便更全面地了解计算机的工作原理。
同时,建议在实验过程中注重细节和观察,以便更好地理解实验结果和原理。
计算机组成原理 实验八 简单模型计算机实验
实验八简单模型计算机实验一、实验目的1)通过实验分析简单模型机结构,了解计算机的工作原理。
2)掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程二、实验原理基本整机模型数据框图如图所示,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
数据的通路从程序计数器PC的地址送到主存的地址寄存器,根据地址寄存器的内容找到相应的存储单元。
存储器中的数据是指令时,那么数据是从RAM送到总线,再从总线送到IR 中。
存储器中的数据是需要加工的数据时,那么数据是从RAM送到总线,再动总线送到通用寄存器中等待加工。
数据加工过程中,两个数据是从总线上将数据分别分时压入两个暂存器中,等待运算部件的加工,在数据加工完成以后。
运算结果是通过三太门送到总线上。
三态门的控制时由微控制器来控制。
图:模型机的数据通路图SW-G三、实验过程1.连线按实验逻辑原理图连接以下控制信号。
1)时钟单元(CLOCK UNIT)的T1-T4接到微程序控制单元(MAIN CONTROL UNIT)的T1-T4.2)手动控制开关单元(MANUAL UNIT)的KA ,KB接到指令单元(INS UNIT)的KA,KB。
3)指令单元(INS UNIT)的J(1)-J(5)、SE6-SE0、B-IR 接到的微程序控制单元(MAIN CONTROL UNIT)的J(1)-J(5)、SE6-SE0、B-IR。
4)输入/输出单元(INPUT/OUTPUT UNIT)IO-W,IO-R接到微程序控制单元(MAINCONTROL UNIT)的IO-W,IO-R,Ai接到地址单元(ADDRESS UNIT)的A0. 5)主存储器单元(MEM UNIT)M-W、M-R接到微程序控制单元(MAIN CONTROL UNIT)的M-W、M-R,A7-A0 接到地址单元(ADDRESS UNIT)的A7-A0.6)地址单元(ADDRESS UNIT)的B-AR、B-PC、PC+1、PC-B接到微程序控制单元(MAIN CONTROLUNIT)的B-AR、B-PC、PC+1、PC-B.7)通用寄存器单元(REG UNIT)的B-R、R0-B 接到微程序控制单元(MAIN CONTROLUNIT)的B-DR、DR-B。
基本模型机设计与实现实验报告
实验报告时间:2011.5.6基本模型机设计与实现一、目的要求(1)在掌握单元电路实验基础上,将各部分组成系统,构成一台基本模型计算机。
(2)为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念。
二、实验仪器与试剂计算机组成原理实验箱。
三、实验原理1、实验中所用的基本模型机实验原理如图1所示。
图1 基本模型机实验原理框图四、实验步骤1、写程序。
方法一:手动写入①将机器指令对应的微代码正确写入2816中。
②使用控制台KWE和KRD进行机器指令的装入和检查。
方法二:联机读/写程序(略)2、运行程序。
单步运行程序、连续运行。
五、实验现象、结果记录及整理首先验证微控制器的存储特性。
将编程开关置为“写入”状态,写入如表2微地址为06~0D的微代码。
每写入一条指令,按一下“启动运行”开关。
再将微地址和总清开关置0,编程开关置为“读”状态,即可验证是否存储正确。
若有错误,则需检查连线或者是重新输入。
经实验,成功显示。
最后,将编程开关置为“运行”状态,即可运行我们写入的微程序。
经实验,结果显示正确。
六、分析讨论与思考题解答(两个解答选择一个填写,也可以自己修改一下填写)解答一:通过这次实践,不仅让我对计算机的基本组成、简单运算器的数据传送通路组成、静态随机存取存储器RAM工作特性及数据的读写方法、时序信号发生电路组成原理、微程序控制器的设计思想和组成原理、微程序的编制、写入过程有了进一步的了解, 也让我觉得自己的动手能力有了很大的提高;自信心也增强了,在课程设计中自己动脑子解决遇到的问题,书本上的知识有了用武之地,这巩固和深化了自己的知识结构。
解答二:通过这次实践,我相信,只要自己在每一次实践中都能仔细思考,课程设计其实都不会很难,关键在于自己能不能认真思考,能不能亲自动手做实验,而不是想着其他人的劳动果实,其次你还要多操作,只有多操作才能从中发现问题,才能及时向老师和同学请教,解决问题,从而更好的掌握书本中知识。
模型机实验报告
一.基本知识点a)计算机的组成和工作原理。
b)计算机执行机器指令的工作过程。
c)微指令,微程序的设计及调试。
二.实验设计方案:模型机与程序运行实验是一个综合型整机实验。
该模型机包含七条指令。
他能够依照用户程序执行微程序完成由加,与,非运算以及数据组合的任意复合运算。
用户测试程序可通过内存初始化的方式存储在内存中,也可通过强迫写的方式循环写入内存。
该模型机可通过以下两种方式完成:(1)分模块整合法。
此整机实验,由节拍脉冲,数据通路,微控制器,数码管显示4个模块组成。
运算器,存储器,数据通路及微程序控制器中的时钟脉冲必须与时序电路相连。
(2)依据微体系结构图通过VHDL编程设计模型机,由模型机主体,时序电路,显示模块组成。
三.实验流程实验前先学习如何创建一个工程。
点击create a new project创建工程路径,工程和顶层文件名称选择需要添加的子模块选择实验板类型,然后点击finish。
1.设计时序电路(节拍器)状态机设计仿真结果2.模型机主体VHDL代码library ieee;use Ieee.std_logic_1164.all;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity microcomputer isport( Clr, srd, swe, t1, t2, t3, t4: in std_logic;sw_in: in std_logic_vector(7 downto 0);mpcout : out std_logic_vector(4 downto 0);arout, bus_data : out std_logic_vector(7 downto 0));end microcomputer;architecture rt1 of microcomputer istype RAM is array(0 to 31) of std_logic_vector(7 downto 0);signal ram8:RAM := (x"20", x"0d", x"e0", x"0e", x"40", x"10", x"60", x"10", x"c0", x"0f",x"80", x"a0", x"00", x"11", x"12", x"24", x"ff", others => x"00");signal pc, ar, dr1, dr2, r5, bus_Reg, bus_reg_t2, bus_Reg_t3: std_logic_vector(7 downto 0);signal mpc, mpc_t2, mpc_t3, mpc_t4:std_logic_vector(4 downto 0);signal ir: std_logic_vector(2 downto 0);beginmpcout <= mpc_t4;arout <= ar;bus_data <= bus_Reg;ct1:process(t1, clr, srd, swe)beginif clr = '0' then mpc <= (others => '0');elsif swe = '0' then mpc <= "10000";elsif srd = '0' then mpc <= "01000";elsif t1 = '1' and t1'event then mpc <= mpc_t4;end if;end process;ct2:process(t2, mpc, sw_in, ar)beginif Clr = '0' then mpc_t2 <= (others => '0');elsif t2 = '1' and t2'event thencase mpc iswhen "00000" =>mpc_t2 <= "00001";bus_reg_t2<= sw_in;when "00001" =>mpc_t2 <= "00010";bus_Reg_t2<= pc;when "00010" =>mpc_t2 <= "01000";bus_Reg_t2<=ram8(conv_integer(ar));when "01001" =>mpc_t2 <= "10101";bus_Reg_t2<=pc;when "10101" =>mpc_t2 <= "10110";bus_Reg_t2<=ram8(conv_integer(ar));when "10110" =>mpc_t2 <= "00001";bus_Reg_t2<=ram8(conv_integer(ar));when "01010" =>mpc_t2 <= "10111";bus_Reg_t2<=pc;when "10111" =>mpc_t2 <= "11000";bus_Reg_t2<=ram8(conv_integer(ar));when "11000" =>mpc_t2 <= "00001";bus_Reg_t2<=r5;ram8(conv_integer(ar))<=r5;when "01011" =>mpc_t2 <= "11001";bus_Reg_t2<=pc;when "11001" =>mpc_t2 <= "11010";bus_Reg_t2<=ram8(conv_integer(ar));when "11010" =>mpc_t2 <= "00001";bus_Reg_t2<=ram8(conv_integer(ar));when "01100" =>mpc_t2 <= "11011";dr1 <= r5;bus_Reg_t2<=r5;when "11011" =>mpc_t2 <= "00001";bus_Reg_t2<=bus_Reg_t2;when "01101" =>mpc_t2 <= "11100";bus_Reg_t2<=pc;when "11100" =>mpc_t2<="00001";bus_Reg_t2<=ram8(conv_integer(ar));when "01110" =>mpc_t2 <= "00011";bus_Reg_t2<=pc;when "00011" =>mpc_t2 <= "00100";bus_Reg_t2<=ram8(conv_integer(ar));when "00100" =>mpc_t2<="00101";dr2<=ram8(conv_integer(ar));bus_Reg_t2 <=ram8(conv_integer(ar));when "00101" =>mpc_t2 <= "00110";dr1<=r5;bus_Reg_t2<=r5;when "00110" =>mpc_t2<="00001";bus_Reg_t2<=bus_Reg_t2;when "01111" =>mpc_t2<="11101";bus_Reg_t2<=pc;when "11101" =>mpc_t2<="11110";bus_Reg_t2<=ram8(conv_integer(ar));when "11110" =>mpc_t2<= "11111";dr2<= ram8(conv_integer(ar));bus_Reg_t2<=ram8(conv_integer(ar));when "11111" =>mpc_t2<="00111";dr1<=r5;bus_Reg_t2<=r5;when "00111" =>mpc_t2<= "00001";bus_Reg_t2<=bus_Reg_t2;when "10000" =>mpc_t2<="10001";bus_Reg_t2<=sw_in;when "10001" =>mpc_t2<="10010";bus_Reg_t2<=pc;when "10010" =>mpc_t2<="10001";bus_Reg_t2<=sw_in;ram8(conv_integer(ar))<=sw_in;when "01000" =>mpc_t2<="10011";bus_Reg_t2<=sw_in;when "10011" =>mpc_t2<="10100";bus_Reg_t2<=pc;when "10100" =>mpc_t2<="10011";bus_Reg_t2<=ram8(conv_integer(ar));when others =>mpc_t2<= mpc; bus_Reg_t2<=bus_Reg_t2;end case;end if;end process;ct3:process(t3, mpc, mpc_t2,bus_Reg_t2)beginif clr = '0' then mpc_t3<=(others=>'0');elsif t3 ='1' and t3'event thenmpc_t3<= mpc_t2;bus_Reg_t3 <= bus_Reg_t2;case mpc iswhen "00000" =>pc <= bus_Reg_t2;when "00001" =>ar <= bus_Reg_t2;pc<=pc+1;when "00010" =>ir <= bus_Reg_t2(7 downto 5);when "01001" =>ar <= bus_Reg_t2;pc <= pc+1;when "10101" =>ar <= bus_Reg_t2;when "10110" =>r5 <=bus_Reg_t2;when "01010" =>ar <= bus_Reg_t2;pc<=pc+1;when "10111" =>ar <= bus_Reg_t2;when "01011" =>ar <= bus_Reg_t2;pc <= pc+1;when "11001"=>ar <= bus_Reg_t2;when "11011" =>r5 <= not dr1;bus_Reg_t3<= not dr1;when "01101"=>ar <= bus_Reg_t2;pc<= pc+ 1;when "11100"=>pc<=bus_Reg_t2;when "01110"=>ar <= bus_Reg_t2;pc<= pc+1;when "00011"=>ar <= bus_Reg_t2;when "00110"=>r5 <= dr1+dr2;bus_Reg_t3<=dr1+dr2;when "01111"=>ar <= bus_Reg_t2;pc<= pc+1;when "11101"=>ar <= bus_Reg_t2;when "00111"=>r5<=dr1 and dr2; bus_Reg_t3 <= dr1 and dr2;when "10000"=>pc <= bus_Reg_t2;when "10001"=>ar <= bus_Reg_t2;pc<=pc+1;when "01000"=>pc<= bus_Reg_t2;when "10011"=>ar <= bus_Reg_t2;pc<=pc+1;when others =>bus_Reg_t3<=bus_Reg_t2;end case;end if;end process;ct4:process(clr, t4,mpc,ir,mpc_t3)beginif clr = '0' then mpc_t4 <= (others=>'0');elsif t4='1' and t4'event thenbus_Reg<=bus_Reg_t3;case mpc iswhen "00010" =>mpc_t4<= mpc_t3(4 downto 3) & ir;when others =>mpc_t4 <= mpc_t3;end case;end if;end process;end rt1;3.模4计数器顶层电路4.2_3译码器顶层电路5.4_1选择器VHDL代码6.4_7译码器7.顶层电路设计8.引脚设置选择Assignments->pins8.全编译 processing->compiler tool ,然后点击start8.下载到电板选择TOOLs->groprommer9.然后点击start开始下载。
计算机组成原理简单模型机实验
实验四简单模型机实验1.1实验目的1)将微程序控制器模块通过总线同运算器模块、存储器模块联机,组成一台模型计算机;2)用微程序控制器控制模型机数据通路;3)通过CPU运行5条机器指令组成的简单程序,掌握机器指令与微指令的关系,牢固建立机器的整机概念。
1.2电路图本次实验用到前几次实验所有电路,将几个模块组成一台简单计算机,由微程序控制器控制数据通路,实现cpu从内存取出一条机器指令到执行指令结束的一个指令周期,由微指令组成的序列来完成,一条机器指令对应一个微程序。
图1 电路图1.3 实验原理(1)PC计数器初始值为“0”,微程序默认从00地址开始执行,产生控制信号,使PC的地址通过ABUS将送到存储器(6116)的地址锁存器AR中, PC=PC+1;(2)读出存储器中存放内容,通过DBUS送到IR指令寄存器中,实现指令译码,指令的操作码送至微程序控制器的程序跳转控制部分,在P(1)的控制下与微程序中储存的下一条指令地址进行逻辑运算,产生真正的下一条微程序地址;(3)在微程序的控制下单步执行微指令序列。
1.4 微指令格式表1 微指令格式1.5 微程序流程图:图2 微程序流程图1.6微程序代码表1.7 数据通路总体图图3 数据通路总体图五条机器指令格式(其中,A为内存地址8bit):RAM中装入的程序和数据(其中,地址为8进制):1.8 实验任务及步骤(1)实验连线:本次实验大部分的连线已由教师完成,请同学们对照微指令格式,完成微程序控制器的剩余部分连线。
(2)实验环境初始化:实验平台通电前请关闭DR1(74ls273),DR2(74ls273),存储器(6116)的地址锁存器(74ls273),微程序控制器的地址锁存器(74ls175)的自动清零功能,将几个芯片的-MR引脚置为“1”。
时钟发生器的功能设定为单步执行,具体信号为:STOP=0,STEP=1。
(3)加电运行初始化:①指令寄存器IR自动清零,程序计数器PC手动清零,将两片74ls163的ENT,ENP引脚置“1”,-CR引脚置“0”,打开三态门开关,给单步时钟脉冲;②程序计数器PC设定为单步技术功能,并交由微程序控制,将-CR引脚置“1”,关闭三态门开关;③关闭指令寄存器IR清零功能,交由微程序控制,将-MR设为“1”。
简单模型机实验报告
简单模型机实验报告篇一:模型机实验报告HUNAN UNIVERSITY课程实习报告题目:模型机学生姓名学生学号 XX0801328专业班级计算机科学与技术(3)班指导老师方恺晴完成日期 XX.5.28思考题:1. 给定一个复合运算式子以及指令码IR[7..5]与八位BUS总线对应情况。
要求写出七条指令新的指令码并写出复合运算执行mif文件。
修改模型机电路调试程序以实现复合运算。
例:已知A=55H,B=8AH,C=F0H;IR[7..5]对应BUS8,BUS1,BUS3;写出(Aplus/B)^(/(/CplusB))的mif文件,并在模拟机上实现。
答:模拟机电路修改如下:存储器预设指令重设:计算结果:(A+/B)^(/(/C+B))=42H2. Microcomputer.vhd代码中进程ct1,ct2,ct3,ct4功能划分依据是什么?ct1:微序列控制器下址跳转。
ct2:实现各种指令,主要集中在实现从存储器或者寄存器释放数据到总线上。
ct3:完成各种指令,从总线上装载数据到相应的存储器或者寄存器中。
ct4:生成下址,判断下址生成方式,根据不太那个的方式生成下址。
3. Microcomputer.vhd代码中如何定义并初始化RAM?type ram is array(0 to 37)of std_logic_vector(7 downto 0); --38*8ramsignal ram8:ram:=(x”20”, x”1e”, x”80”, x”40”, x”20”, x”20”, x”1d”, x”c0”, x”20”, x”40”, x”21”, x”20”, x”1f”, x”80”, x”40”, x”22”, x”20”, x”1e”, x”c0”, x”22”, x”80”, x”e0”, x”21”, x”40”, x”23”, x”60”, x”23”, x”a0”, x”00”, x”55”, x”8a”, x”f0”,others=>x”00”) –initialize ram44. Microcomputer.vhd代码中bus_reg_t2 将ram8存储器中对应于ar中地址单元的数据取出来放到bus_reg_t2寄存器中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
简单模型机实验报告篇一:模型机实验报告HUNAN UNIVERSITY课程实习报告题目:模型机学生姓名学生学号 XX0801328专业班级计算机科学与技术(3)班指导老师方恺晴完成日期思考题:1. 给定一个复合运算式子以及指令码IR[7..5]与八位BUS总线对应情况。
要求写出七条指令新的指令码并写出复合运算执行mif文件。
修改模型机电路调试程序以实现复合运算。
例:已知A=55H,B=8AH,C=F0H;IR[7..5]对应BUS8,BUS1,BUS3;写出(Aplus/B)^(/(/CplusB))的mif文件,并在模拟机上实现。
答:模拟机电路修改如下:存储器预设指令重设:计算结果:(A+/B)^(/(/C+B))=42H2. Microcomputer.vhd代码中进程ct1,ct2,ct3,ct4功能划分依据是什么?ct1:微序列控制器下址跳转。
ct2:实现各种指令,主要集中在实现从存储器或者寄存器释放数据到总线上。
ct3:完成各种指令,从总线上装载数据到相应的存储器或者寄存器中。
ct4:生成下址,判断下址生成方式,根据不太那个的方式生成下址。
3. Microcomputer.vhd代码中如何定义并初始化RAM?type ram is array(0 to 37)of std_logic_vector(7 downto 0); --38*8ramsignal ram8:ram:=(x”20”, x”1e”, x”80”, x”40”, x”20”, x”20”, x”1d”, x”c0”, x”20”, x”40”, x”21”, x”20”, x”1f”, x”80”, x”40”, x”22”, x”20”, x”1e”, x”c0”, x”22”, x”80”, x”e0”, x”21”, x”40”, x”23”, x”60”, x”23”, x”a0”, x”00”, x”55”, x”8a”, x”f0”,others=>x”00”) –initialize ram44. Microcomputer.vhd代码中bus_reg_t2 将ram8存储器中对应于ar中地址单元的数据取出来放到bus_reg_t2寄存器中。
将r5寄存器中的数据装载到ram8存储器对应于ar中地址单元中。
5. Microcomputer.vhdram8(conv_integer(ar)) 代码中bus_reg_t2 r5;可否修改成bus_reg_t2 ram8(conv_integer(ar)) 可以这样修改,但是不修改更能体现CPU设计的方式。
6. Microcomputer.vhd代码中bus_reg,bus_reg_t2,bus_reg_t3属于bus_reg同类的Signal,用途是什么?Bus_reg:一个时序周期后总线上的数据。
Bus_reg_t2:记录t2时刻总线上的中间数据。
Bus_reg_t3:记录t3时刻总线上的中间数据。
7. Microcomputer.vhd代码中mpc,mpc_t2,,mpc_t3,mpc_t4属于mpc同类的Signal,用途是什么?Mpc:一个时序周期后微序列控制器的下址。
Mpc_t2:记录绝对地址寻址方式的下址。
Mpc_t3:记录t3时刻的下址,和Mpc_t2相同。
Mpc_t4:记录t4时刻的下址,和mpc_t3相同,同时如果是映射寻址,则修改下址。
篇二:CPU 与简单模型机设计实验评语: 课中检查完成的题号及题数:成绩:自评成绩:85课后完成的题号与题数:实验报告实验名称: CPU 与简单模型机设计实验日期:姓名:周小多班级:学号: XX02513一、实验目的:1. 掌握一个简单CPU 的组成原理。
2. 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。
3. 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。
二、实验内容:1.要实现一个简单的CPU,并且在此CPU 的基础上,继续构建一个简单的模型计算机。
CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图2-1-1 所示。
这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。
本模型机和前面微程序控制器实验相比,新增加一条跳转指令JMP,共有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高4位为操作码):助记符机器指令码说明 IN 0010 0000IN→R0 ADD 0000 0000R0 + R0→R0 OUT 0011 0000R0→OUT JMP addr 1100 0000addr→ PC HLT 0101 0000停机2.设计一段机器程序,要求从IN 单元读入一个数据,存于R0,将R0 和自身相加,结3.果存于R0,再将R0 的值送OUT 单元显示。
根据要求可以得到如下程序,地址和内容均为二进制数。
地址内容助记符说明00000000 00000001 00000010 00000011 00000100 0000010100100000 00000000 00110000 00000000 01010000 ; START: IN R0 ; ADD R0,R0 ; OUT R0从 IN 单元读入数据送 R0 R0 和自身相加,结果送R0R0 的值送 OUT 单元显示跳转至 00H 地址停机; JMP START ; HLT三、项目要求及分析:1. 试修改现有的指令系统,将加法指令的功能修改为R0的内容和某个存储单元的内容相加;增加存数、取数和减法三条机器指令,指令助记符分别为 STA、LAD 和SUB,指令操作码分别为十六进制的60、70和80。
R0和某个存储器相加,R0是可以直接读进来的,R0和另一个存储单元内容相加,如果两个值都是读入的话,就要将一个放在R0中,可以直接读入,另一个放存在储单元。
可以先将值读入到R0 中,在将R0保存到其他的存储单元中,进行加法时从存储单元中取出放在临时寄存器中,这样是两个寄存器相加减就可以。
具体步骤:1)将R0中的数据送ALU中的A; 2)给出另一个数在内存中的地址; 3)从内存中取出相应的数据并送ALU中的B; 4)进行加法运算并将结果送R0。
对于增加存数、取数和减法三条机器指令,存数指令STA 具体操作过程如下: 1)从IN读入数据要存储的地址;2)将地址送至AR;3)从IN读入要存储的数据; 4)将数据送入内存中的相应存储单元。
对于取数指令LAD具体操作过程如下: 1)从IN读入数据的存储地址;2)将存储地址送至AR; 3)将取出的数据送至R0减法指令的具体操作过程如下: 1)将被减数送至ALU 的A; 2)将减数送至ALU的B; 3)ALU进行减法操作,结果送R0;2. 利用修改后的指令系统编写一段程序,完成十六位二进制数的加减法运算。
答:十六进制比八进制多了一半,该内容利用的指令系统,编写相应的程序。
可以先将两个十六位的二进制数的高八位和低八位分别存入不同的地址,然后先取出两个数低八位进行相加,送至OUT单元显示,进位进行存储;再进行两个数低八位相加,结果在数据总线出显示。
四、具体实现:微程序设计流程图:微代码$M 00 000001 ; NOP$M 01 006D42 ; PC->AR,PC加1$M 02 107073 ; MEM->IR, P$M 11 006412 ; pc->ar,PC++$M 12 183013 ; mem->ar$M 13 XX01 ; mem->b$M 15 006416 ; alu->r0 加法$M 16 103001 ; pc->ar,PC++ $M 17 183018; mem->ar$M 18 006419; mem->b$M 19 10XX ; alu->r0 减法$M 1D 105141 ; mem->ar$M 2C 18302D ; R0->MEM STA$M 2D 00642E ; m->ar(本文来自:小草范文网:简单模型机实验报告)$M 2E 10202F ; m->r0 LAD$M 2F 05B201 ; m->pc JMP PC++$M 30 001417 ; R0->A 加法 $M 32 183001 ; R0->A 减法$M 33 280401 ; pc->ar ,PC++ 置ro [AR]->R0LAD$M 35 000035 ; STA:PC->AR,PC++,mem->ar,R0->MEM(AR) $M 36 183011 ; IN->R0 输入IN$M 37 183015 ; R0->OUT输出OUT$M 38 00142C ; pc$M 3C 006D5D ; pc->ar JMP利用修改后的指令系统编写一段程序,完成十六位二进制数的加减法运算。
以下的一段程序用于实现两个16位二进制数的加法,其思想为高位和低位分别对应相加,将低位的进位给高位,减法同理。
结果的低八位在OUT单元显示,高八位数据在数据总线显示,最高位的进位忽略。
$P 00 60 STA 存加数的低八位 $P 01 60 STA 存被加数的低八位$P 02 60 STA 存加数的高八位 $P 03 60 STA 存被加数的高八位$P 04 70 LDA 取出加数的低八位存入R0中$P 05 00 ADD 两个数低八位相加$P 06 30 OUT 两个数低八位相加的结果在OUT单$P 07 70 LDA 取出加数的高八位存入R0中$P 08 00 ADD 两个数的高八位相加$P 09 50 HLT 停机五、调试运行结果:加法:输入的两个数据分别为:01010010,(52FF)00110010,00000001(3201)输出的结果为: 00000001,00000000(8500)减法:输入的两个数据分别为:01010110,(56FF)00110010,00000001(3201)输出的结果为:001111111,(3FFE)六、所遇问题及解决方法:1. 在上实验课时,因为自己的实验器材的问题,一直都不能完成一个数与自身相加,之后也尝试了很多次才调整过来,感觉连线的过程千万不能将线接错,否则结果很难出来,做实验一定要很细心。