计算机体系结构 实验报告2 华东理工大学

合集下载

计算机体系结构实验报告

计算机体系结构实验报告

计算机体系结构实验报告实验目的:1.掌握计算机体系结构的基本概念和组成部分2.学会使用模拟器对计算机性能进行测试和优化3.理解计算机指令的执行过程和流水线工作原理4.掌握计算机性能指标的测量方法和分析技巧实验材料和工具:1.一台个人电脑2.计算机体系结构模拟器3.实验指导书和实验报告模板实验步骤:1.搭建计算机系统:根据实验指导书提供的指导,我们搭建了一个简单的计算机系统,包括中央处理器(CPU)、内存和输入输出设备。

2.编写测试程序:我们编写了一段简单的测试程序,用于测试计算机系统的性能。

3.运行测试程序:我们使用模拟器运行测试程序,并记录测试结果。

模拟器可以模拟计算机的执行过程,并提供各种性能指标的测量功能。

4.分析和优化:根据测试结果,我们对计算机系统的性能进行分析,并尝试优化系统设计和测试程序,以提高性能。

实验结果:通过测试程序的运行和性能指标的测量,我们得到了如下结果:1.计算机的时钟频率:根据模拟器显示的结果,我们得知计算机的时钟频率为1000MHz。

2. 指令执行时间:我们计算了测试程序的平均执行时间,得到了结果为5ms。

4.流水线效率:我们通过模拟器提供的流水线分析功能,得到了计算机流水线的平均效率为80%。

实验分析:根据测试结果1.提高时钟频率:通过增加时钟频率可以加快计算机的运行速度。

我们可以尝试调整计算机硬件的设计和制造工艺,提高时钟频率。

2.优化指令执行过程:我们可以通过优化指令的执行过程,减少执行时间。

例如,并行执行多个指令、增加指令缓存等。

3.提高流水线效率:流水线是提高计算机性能的关键技术,我们可以通过增加流水线级数和优化流水线结构,提高流水线效率。

4.增加并行计算能力:并行计算是提高计算机性能的重要途径,我们可以尝试增加计算机的并行计算能力,例如增加处理器核心的数量。

实验总结:通过本次实验,我们深入了解了计算机体系结构的工作原理和性能指标。

通过模拟器的使用,我们学会了对计算机性能进行测试和进行性能优化的方法。

计算机体系结构实验

计算机体系结构实验

计算机体系结构实验
计算机体系结构实验是计算机科学与技术专业中的一门实
践课程,旨在让学生通过实际操作来深入了解计算机体系
结构的原理和实现。

在这门课程中,学生通常会进行一系列的实验,主要包括
以下内容:
1. 单周期CPU设计与实现:学生会实际设计和实现一个简单的单周期CPU,包括指令的解码、运算和存储等功能,
了解CPU的工作原理。

2. 流水线CPU设计与实现:学生会进一步设计和实现一个流水线CPU,通过将指令的执行过程划分为多个阶段,并
行处理不同指令,提高CPU的工作效率。

3. 缓存设计与实现:学生会学习和实践缓存的原理和实现,包括缓存的映射方式、替换策略和写策略等,以及如何通
过缓存来提高计算机的性能。

4. IO设备的编程和控制:学生会学习如何使用IO设备,
包括键盘、鼠标、显示器、磁盘等,并实践编程和控制这
些设备,实现输入输出功能。

5. 总线设计与实现:学生会学习计算机系统中各个组件之间的通信方式和总线的设计原理,以及如何实现总线控制和数据传输等功能。

通过这些实验,学生可以深入了解计算机体系结构的各个方面,从硬件层面理解计算机的工作原理,同时也能锻炼实践操作和解决问题的能力。

计算机系统结构实验报告

计算机系统结构实验报告

计算机系统结构实验报告一、实验目的:1、熟练掌握WinDLX模拟器的操作和使用2、熟悉DLX指令集结构及其特点二、实验内容:1、用WinDLX模拟器执行求阶乘程序fact.s。

这个程序说明浮点指令的使用。

该程序从标准输入读入一个整数,求其阶乘,然后将结果输出。

该程序中调用了input.s 中的输入子程序,这个子程序用于读入正整数。

2、用WinDLX模拟器执行求最大公约数程序gcm.s。

该程序从标准输入读入两个整数,求他们的最大公约数,然后将结果写到标准输出。

该程序中调用了input.s 中的输入子程序。

3、通过上述使用WinDLX,总结WinDLX的特点。

三、实验结果:fact.s程序代码:.dataPrompt: .asciiz "An integer value >1 : "PrintfFormat: .asciiz "Factorial = %g\n\n".align 2PrintfPar: .word PrintfFormatPrintfValue: .space 8.text.global mainmain:;*** Read value from stdin into R1addi r1,r0,Promptjal InputUnsigned;*** init valuesmovi2fp f10,r1 ;R1 -> D0 D0..Count registercvti2d f0,f10addi r2,r0,1 ;1 -> D2 D2..resultmovi2fp f11,r2cvti2d f2,f11movd f4,f2 ;1-> D4 D4..Constant 1;*** Break loop if D0 = 1Loop: led f0,f4 ;D0<=1 ?bfpt Finish;*** Multiplication and next loopmultd f2,f2,f0subd f0,f0,f4j LoopFinish: ;*** write result to stdoutsd PrintfValue,f2addi r14,r0,PrintfPartrap 5;*** endtrap运行结果:gcm.s程序代码:.data;*** Prompts for inputPrompt1: .asciiz "First Number:"Prompt2: .asciiz "Second Number: ";*** Data for printf-TrapPrintfFormat: .asciiz "gcM=%d\n\n".align 2PrintfPar: .word PrintfFormatPrintfValue: .space 4.text.global mainmain:;*** Read two positive integer numbers into R1 and R2addi r1,r0,Prompt1jal InputUnsigned ;read uns.-integer into R1add r2,r1,r0 ;R2 <- R1addi r1,r0,Prompt2jal InputUnsigned ;read uns.-integer into R1Loop: ;*** Compare R1 and R2seq r3,r1,r2 ;R1 == R2 ?bnez r3,Resultsgt r3,r1,r2 ;R1 > R2 ?bnez r3,r1Greaterr2Greater: ;*** subtract r1 from r2sub r2,r2,r1j Loopr1Greater: ;*** subtract r2 from r1sub r1,r1,r2j LoopResult: ;*** Write the result (R1)sw PrintfValue,r1addi r14,r0,PrintfPartrap 5;*** endtrap 0运行结果:四、实验总结在本次实验过程当中,winDLX里的程序是一种汇编语言,通过对寄存器和条件转移来实现程序的实现。

计算机系统结构实验报告

计算机系统结构实验报告

计算机系统结构实验报告实验目的:掌握计算机系统的基本结构和工作原理,了解计算机系统的组成部分及其相互关系。

实验仪器和材料:计算机硬件设备(主机、硬盘、内存、显卡等)、操作系统、实验指导书、实验报告模板。

实验原理:实验步骤:1.搭建计算机硬件设备,将主机、硬盘、内存、显卡等组装连接好。

2. 安装操作系统,如Windows、Linux等。

3.启动计算机,进入操作系统界面。

4.打开任务管理器,查看CPU的使用情况。

5.打开任务管理器,查看内存的使用情况。

6.运行一些应用程序,观察CPU和内存的使用情况。

7.尝试使用输入输出设备,如键盘、鼠标等。

实验结果:通过实验,我们可以观察到计算机系统的硬件部分和软件部分的工作情况。

通过任务管理器,我们可以查看到CPU的使用情况和内存的使用情况。

在运行应用程序时,我们可以观察到CPU和内存的使用情况的变化。

通过使用输入输出设备,我们可以与计算机进行交互操作。

实验分析:从实验结果可以看出,计算机系统的硬件部分和软件部分都是相互关联的。

CPU作为计算机的核心部件,负责执行各种指令,通过数据传输和计算来完成各种操作。

而内存则用于存储数据和程序,通过读写操作来完成对数据的处理。

硬盘则用于长期存储数据。

操作系统则是计算机系统的管理者,通过调度CPU和内存的使用来实现对计算机资源的分配。

结论:计算机系统是由硬件和软件部分组成的,其中硬件部分包括CPU、内存、硬盘等,软件部分包括操作系统、应用程序等。

计算机系统通过CPU 的运算和数据传输来实现各种操作。

通过实验,我们可以观察到计算机系统的工作情况,并深入了解计算机系统的组成和工作原理。

实验总结:通过本次实验,我们对计算机系统的基本结构和工作原理有了更深入的了解。

实验中,我们搭建了计算机硬件设备,安装了操作系统,并通过观察和分析实验结果,进一步认识到计算机系统的组成部分和各部分之间的相互关系。

通过操作输入输出设备,我们还实践了与计算机进行交互操作的过程。

计算机体系结构实验报告二

计算机体系结构实验报告二

实验二结构相关一、实验目得:通过本实验,加深对结构相关得理解,了解结构相关对CPU性能得影响。

二、实验内容:1、用WinDLX模拟器运行程序structure_d、s 。

2、通过模拟,找出存在结构相关得指令对以及导致结构相关得部件。

3、记录由结构相关引起得暂停时钟周期数,计算暂停时钟周期数占总执行周期数得百分比。

4、论述结构相关对CPU性能得影响,讨论解决结构相关得方法。

三、实验程序structure_d、sLHI R2, (A>>16)&0xFFFF 数据相关ADDUI R2, R2, A&0xFFFFLHI R3, (B>>16)&0xFFFFADDUI R3, R3, B&0xFFFFADDU R4, R0, R3loop:LD F0, 0(R2)LD F4, 0(R3)ADDD F0, F0, F4 ;浮点运算,两个周期,结构相关ADDD F2, F0, F2 ; < A stall is found (an example of how to answeryour questions)ADDI R2, R2, #8ADDI R3, R3, #8SUB R5, R4, R2BNEZ R5, loop ;条件跳转TRAP #0 ;; Exit < this is a ment !!A: 、double 1, 2, 3, 4, 5, 6, 7, 8, 9, 10B: 、double 1, 2, 3, 4, 5, 6, 7, 8, 9, 10四、实验过程打开软件,load structure_d、s文件,进行单步运行。

经过分析,此程序一次循环中共有五次结构相关。

(Rstall 数据相关Stall 结构相关)1)第一个结构相关:addd f2,,f0,f2由于前面得数据相关,导致上一条指令addd f0,f0,f4暂停在ID阶段,所以下一条指令addd f2,,f0,f2发生结构相关,导致相关得部件:译码部件。

计算机结构与组成实验报告2

计算机结构与组成实验报告2

大连理工大学本科实验报告课程名称:计算机结构与组成原理实验报告学院(系):软件学院专业:软件工程班级:0726学号:200792055学生姓名:李小梅2009年4月27日实验项目列表目录实验一部件实验存储器和总线传输实验一、实验目的二、实验原理三、实验要求四、实验设备五、实验步骤六、实验结果与分析七、实验体会实验二8位微程序控制计算机设计实验第一节预习报告一、8位微程序控制计算机的工作原理二、2位乘法程序的流程图第二节实验报告一、实验目的二、实验原理三、实验原理图四、实验步骤五、指令流程表六、微指令编码表七、指令集文件八、2位乘法程序流程图九、实验程序十、实验体会学院(系) 软件学院 专业 软件工程 班级 0726 姓名 李小梅 学号 200792055 组 实验时间 实验室 实验台 指导教师签字 成绩实验一 部件实验 存储器和总线传输实验一.实验目的 了解总线的作用及数据传输原理二.实验要求 把两个数据分别写入373、374中,在使用RAM 作为中间单元来交换这两个数据。

实验完成后,将以上两个寄存器中数据置零 三.实验原理1根据数据传输原理,需通过寄存器以及内总线从外设向控存写数据,同时根据脉冲信号的有效性来控制输入\输出以及交换操作的进行,并且以三态门来隔离总线对数据的干扰。

2.实验框图RAMDB244 373377A9……A0MCLKMENMWR MOECI(7) CI(0)OE374开关输入显示灯四.实验步骤1.下载busv1.bit文件到XC2S150中五.实验结果与分析1.第一次上拔s12时,灯L0-L7中L0-L4亮;说明数据11110000已送入373.2.第一次上拔s9时,灯L0-L7中L1,L2,L3,L7四个灯亮;说明01110001已送入374.3.第二次上拔s12时,灯L0-L7中L1,L2,L3,L7四个灯亮;第二次上拔s9时,灯L0-L7中L0-L4亮;说明373,374中的数据交换成功六.实验体会通过这次实验,我对计算机内部数据的存储,数据在总线上的传输有了进一步了解,以及对VHDL语言有了初步的了解。

大学计算机2实验报告

大学计算机2实验报告

大学计算机2实验报告大学计算机2实验报告引言大学计算机2实验是计算机专业学生必修的一门实践课程,旨在培养学生的实际动手能力和解决问题的能力。

通过实验,学生可以将在课堂上学到的理论知识应用到实际中,加深对计算机原理和技术的理解。

本篇实验报告将对大学计算机2实验的内容、实验过程以及实验结果进行详细描述和分析。

实验内容大学计算机2实验的内容主要包括以下几个方面:汇编语言程序设计、计算机组成原理、操作系统原理、网络通信等。

在实验中,我们需要完成一系列的实际操作,如编写汇编语言程序、设计简单的计算机系统、实现操作系统的基本功能等。

通过这些实验,我们可以更好地理解计算机的工作原理和内部结构,提高对计算机系统的整体认识。

实验过程在实验过程中,我们首先需要学习相关的理论知识,包括计算机指令集、寄存器的功能、内存的组织方式等。

然后,我们会根据实验要求进行实际的操作。

例如,在汇编语言程序设计的实验中,我们需要根据给定的要求编写相应的程序,并通过模拟器进行调试和测试。

在计算机系统设计的实验中,我们需要根据给定的硬件要求,设计并实现一个简单的计算机系统。

在操作系统实验中,我们需要实现操作系统的基本功能,如进程管理、内存管理、文件系统等。

在网络通信实验中,我们需要学习网络协议的基本原理,并通过实际操作进行网络通信的测试。

实验结果通过实验,我们可以得到一些实验结果。

例如,在汇编语言程序设计的实验中,我们可以得到程序的运行结果,并进行相应的分析。

在计算机系统设计的实验中,我们可以得到一个可以运行的计算机系统,并测试其性能和稳定性。

在操作系统实验中,我们可以得到一个具备基本功能的操作系统,并测试其对进程管理、内存管理、文件系统等方面的支持程度。

在网络通信实验中,我们可以测试网络通信的可靠性和速度,并进行相应的优化。

实验心得通过大学计算机2实验,我深刻体会到了理论与实践的结合的重要性。

在实验中,我们不仅要掌握相关的理论知识,还要能够将其应用到实际中。

计算机组织与体系结构实验报告

计算机组织与体系结构实验报告

实验一基本运算器实验一、实验目的(1)了解运算器的组织结构。

(2)掌握运算器的工作原理。

二、实验设备PC机一台,TD-CMA实验系统一套。

三、实验原理运算器含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A和B的数据,各部件对操作数进行何种运算有控制信号S3、S2、S1、S0和CN来决定,任何时候,多嘴选择开关只选择三部件中的一个部件的结果作为ALU的输出。

是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。

ALU中多有模块集中成一片CPLD中。

运算器逻辑功能表:四、实验步骤1.连接实验电路并检查无误。

图中将用户需要连接的信号线用小圆圈标明(其它实验相同,不再说明)。

2.KK2设置为单拍,KK1和KK3为运行。

3. 开电源开关。

4.用输入开关向暂存器DR1 置数。

①拨动输入开关形成二进制数01100101(或其它数值)。

(数据显示灯亮为0,灭为1)。

②使SWITCH UNIT 单元中的开关SW-B=0(打开数据输入三态门)、ALU-B=1(关闭 ALU 输出三态门)、LDDR1=1、LDDR2=0。

③按动微动开关KK2,则将二进制数01100101 置入DR1 中。

5.用输入开关向暂存器DR2 置数。

①拨动输入开关形成二进制数10100111(或其它数值)。

②SW-B=0、ALU-B=1 保持不变,改变LDDR1、LDDR2,使LDDR1=0、LDDR2=1。

③按动微动开关KK2,则将二进制数10100111 置入DR2 中。

6.该变运算器的功能设置观察输出。

并将结果填入表中。

五、实验结果六、实验心得体会与收获通过本次实验我了解了运算器的组成结构并掌握了运算器的工作原理。

学习了运算器的输出跟数据总线相连,还有两个输入端通过两个锁存器也与数据总线相连。

实验总是不厌其烦的调试,认真地把每个数据记录下来,同时还需要仔细分析数据的准确性和实用性。

计算机系统结构实验报告

计算机系统结构实验报告

计算机系统结构实验报告计算机系统结构实验报告引言:计算机系统结构是计算机科学领域中的重要课题,它研究计算机硬件和软件之间的关系,以及如何优化计算机系统的性能和效率。

本实验报告旨在介绍我们小组在计算机系统结构实验中的设计和实现过程,以及所获得的实验结果和经验。

一、实验目的计算机系统结构实验的目的是通过设计和实现一个简单的计算机系统,加深对计算机硬件和软件之间关系的理解,以及掌握计算机系统的组成和工作原理。

具体目标包括:1. 理解计算机系统的层次结构和组成部分。

2. 理解指令集架构和微指令集架构的区别。

3. 设计和实现一个简单的计算机系统,包括处理器、存储器和输入输出设备。

4. 测试和验证计算机系统的功能和性能。

二、实验设计与实现1. 计算机系统结构设计我们设计了一个基于冯·诺依曼体系结构的计算机系统,包括中央处理器(CPU)、存储器和输入输出设备。

CPU由控制单元和算术逻辑单元组成,控制单元负责指令的解码和执行,算术逻辑单元负责数据的运算和逻辑操作。

存储器用于存储指令和数据,我们选择了静态随机存储器(SRAM)作为主存储器。

输入输出设备包括键盘、显示器和磁盘。

2. 指令集架构设计我们选择了经典的冯·诺依曼指令集架构作为基础,定义了一套简单的指令集,包括算术运算、逻辑运算和数据传输等指令。

我们还设计了一套微指令集架构,用于实现指令的执行过程。

微指令集中包含了各种控制信号和操作码,用于控制CPU的工作。

3. 硬件设计与实现我们使用硬件描述语言(HDL)进行硬件设计和实现。

通过使用HDL,我们可以描述和模拟计算机系统的各个组成部分,并进行功能验证和性能分析。

我们使用Verilog HDL进行设计和实现,借助Verilog仿真器进行功能验证。

4. 软件设计与实现除了硬件设计和实现,我们还编写了一些软件程序,用于测试和验证计算机系统的功能和性能。

我们编写了一些简单的程序,包括算术运算、逻辑运算和数据传输等,用于测试CPU的指令执行和数据处理能力。

计算机体系结构实验报告——实验二

计算机体系结构实验报告——实验二

计算机体系结构实验报告——实验二1.实验目的:通过本实验,熟练掌握WinDLX模拟器的操作和使用,清楚WinDLX五段流水线在执行具体程序时的流水情况,熟悉DLX指令集结构及其特点。

2.实验内容:(1)用WinDLX模拟器执行程序gcm.s。

该程序从标准输入读入两个整数,求他们的greatest common measure,然后将结果写到标准输出。

该程序中调用了input.s中的输入子程序。

(2).给出两组数6、3和6、1,分别在main+0x8(add r2,r1,r0)、gcm.loop(seg r3,r1,r2)和result+0xc(trap0x0)设断点,采用单步和连续混合执行的方法完成程序,注意中间过程和寄存器的变化情况,然后单击主菜单execute/display dlx-i/0,观察结果。

3.实验程序求最大公约数程序:gcm.s;***********WINDLX Ex.1:Greatest common measure*************;------------------------------------------------------------------------;Program begins at symbol main;requires module INPUT;Read two positive integer numbers from stdin,calculate the gcm;and write the result to stdout;------------------------------------------------------------------------.data;***Prompts for inputPrompt1:.asciiz“First Number:”Prompt2:.asciiz“Second Number:“;***Data for printf-TrapPrintfFormat:.asciiz“gcM=%d\n\n”.align2PrintfPar:.word PrintfFormatPrintfValue:.space4.text.global mainmain:;***Read two positive integer numbers into R1and R2 addi r1,r0,Prompt1jal InputUnsigned;read uns.-integer into R1add r2,r1,r0;R2<-R1addi r1,r0,Prompt2jal InputUnsigned;read uns.-integer into R1Loop:;***Compare R1and R2seq r3,r1,r2;R1==R2?bnez r3,Resultsgt r3,r1,r2;R1>R2?bnez r3,r1Greaterr2Greater:;***subtract r1from r2sub r2,r2,r1j Loopr1Greater:;***subtract r2from r1sub r1,r1,r2j LoopResult:;***Write the result(R1)sw PrintfValue,r1addi r14,r0,PrintfPartrap5;***endtrap0该程序中调用了input.s中的输入子程序。

计算机组织与结构实验报告

计算机组织与结构实验报告

计算机组织与结构实验报告实验一:学习计算机组成部件及主板结构一.实验目的1.了解计算机的主要部件2.掌握放置在主板中的器件的位置与结构特征二.实验内容1.根据老师的讲解与实物示意图,观察并确定各个放置在主板中的器件的名称,了解计算机内部的组织结构。

中央处理器,芯片组,主存储器,4个SerialATA接口,PCI-Express X16图形连接器,2个PCI-Express X1连接器,10/100网络接口,5.1环绕声音频接口,4个PCI连接器,8个高速USB2.0端口,intel超静冷却部件。

整体示意图:局部示意图:2.能够默记下各个器件的位置与名称。

3.了解各个器件的主要功能与应用。

1)中央处理器CPU由于大规模集成电路的发展,芯片制作可以将运算器与控制器集成在一个芯片之内,即中央处理器,它是计算机的核心组件,负责程序的执行。

它由完成算数及逻辑运算的单元ALU以及控制程序执行的控制单元CU构成。

2)芯片组由南桥与北桥共同构成,其中,北桥将CPU与高速部件如主存、显卡连接在一起,而南桥负责连接低速外设总线,如低速PCI总线设备。

3)主存储器保存正在执行的程序及所用的数据。

4)SerialATA接口用于连接高速外围存储器,如硬盘。

5)高速USB2.0端口连接USB设备6)intel超静冷却部件用于控制风扇速度,降低噪声级别。

三.实验小结我们不仅要从理论上理解计算机的组织结构与主要部件,还要从实践中加以巩固。

直观观察主板上的相关器件,并且动手操作拆装,有助于加深理解现代微型计算机的完美结构。

实验二:C程序的翻译与执行一.实验目的1.掌握从高级语言编写的程序源码到机器可执行的目标代码,需要经过的几个关键处理环节。

2.理解各个环节的相关原理。

二.实验内容1.打开Microsoft Visual C++ 6.0 新建一个源程序文件2.输入一个简单的源程序#include<stdio.h>#include<math.h>void main(){int a,b,c;float s,area;printf("input a,b,c:");scanf("%d,%d,%d",&a,&b,&c);if (a+b>c&&a-b<c){printf("they can make t\n");s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c));printf("area=%f\n",area);}else printf("they can't make it\n");}3.编译、链接、运行此程序运行结果:三.实验小结1.编译,由C编译器对一个C程序源码进行编译,将其翻译成机器可懂得的符号形式,又成为汇编语言程序。

计算机体系结构实验报告

计算机体系结构实验报告

《计算机体系结构》实验报告计算机实验教学中心实验名称FIFO存储器实验地点信息楼418实验日期2015.10一、实验目的掌握FIFO 存储器的工作特性和读写方法二、实验设备PC、唐都实验箱三、实验原理本实验用FPGA 芯片来实现一个简单的8 位×4 的FIFO,器件的接口信号如图3-2-1,内部逻辑图如下图3-2-2。

其各信号的功能为:EMPTY:FIFO 存储器空标志,高电平有效。

FULL:FIFO 存储器满标志,高电平有效。

RST:清FIFO 存储器为空。

FIFOWR:FIFO 存储器写入信号,低电平有效。

FIFORD:FIFO 存储器读信号,低电平有效。

ID0~ID7:FIFO 存储器输入数据线。

OD0~OD7:FIFO 存储器输出数据线。

四、实验操作及运行结果1、按实验连接图接线。

注意:连线时实验箱电源要处于关闭状态。

2、确保接线正确后,将实验箱连到电脑:电源线+串口电缆(com口)+并口Jtag下载线(打印机口),并打开实验箱电源。

3、在软件Quartus II 8.0中选择“File->Open Project”选项,按照以下路径查找实验过程中需要下载到FPGA中的数据“C:\TangDu\CMX\FPGA\FIFO\FIFO.qpf(.sof)”(该路径为“FIFO 实验”的全路径,以后每次试验都需要用到的公共路径名为“C:\TangDu\CMX\FPGA”),打开该文件后,单击软件中的“Programmer”选项,单击“Start”完成下载。

如果下载成功在界面Progress中可以看到100%的标志字样。

4、运行结果接线图中B03 和B04 是FIFO 空状态、满状态指示信号,分别接到扩展单元指示灯E0、E1 上,用来反映FIFO 当前的状态。

1)实验时,按动系统右下脚的CLR 清零开关可使读、写信号计数清零。

这时指示灯E0 亮,表示FIFO 为空。

2)使用CON 单元编号为SD27 到SD20 的开关模拟输入总线给出一个数据,按动时序与操作台单元的开关ST,可将该数写入到FIFO 中。

计算机系统结构 实验报告

计算机系统结构 实验报告

计算机系统结构实验报告计算机系统结构实验报告一、引言计算机系统结构是计算机科学中的重要领域,它研究计算机硬件和软件之间的关系,以及如何设计和优化计算机系统的组成部分。

本实验旨在通过实际操作和观察,深入了解计算机系统结构的原理和实践应用。

二、实验目的本次实验的主要目的是通过搭建一个简单的计算机系统,实践理论知识,加深对计算机系统结构的理解。

具体目标包括:1. 学习和掌握计算机系统的基本组成部分,如中央处理器(CPU)、内存、输入输出设备等。

2. 理解计算机指令的执行过程,包括指令的获取、解码和执行。

3. 掌握计算机系统的性能评估方法,如时钟周期、吞吐量和响应时间等。

三、实验过程1. 搭建计算机系统首先,我们需要准备计算机系统的各个组成部分。

将中央处理器、内存、输入输出设备等逐一连接起来,确保它们能够正常工作。

然后,将操作系统安装到计算机系统中,以便后续的实验操作。

2. 执行指令在搭建好计算机系统后,我们可以开始执行指令了。

通过输入指令,计算机系统将按照指令的要求进行相应的操作。

我们可以观察指令的执行过程,包括指令的获取、解码和执行。

同时,我们还可以通过性能评估方法,如时钟周期、吞吐量和响应时间等,评估计算机系统的性能。

3. 优化计算机系统在观察和评估计算机系统的性能后,我们可以根据实验结果进行优化。

例如,我们可以调整计算机系统的硬件配置,提升计算机的运行速度和效率。

另外,我们还可以优化指令的执行顺序和算法,以提高计算机系统的整体性能。

四、实验结果与分析通过实验,我们可以得到计算机系统的性能数据,并进行相应的分析。

例如,我们可以计算计算机系统的时钟周期,以及每秒钟能够执行的指令数量。

通过对这些数据的分析,我们可以了解计算机系统的性能瓶颈,并采取相应的优化措施。

五、实验总结本次实验通过搭建计算机系统、执行指令、优化系统等步骤,深入了解了计算机系统结构的原理和实践应用。

通过实验,我们学习到了计算机系统的基本组成部分,以及指令的执行过程。

计算机体系结构实验报告3篇

计算机体系结构实验报告3篇

计算机体系结构实验报告第一篇:计算机体系结构概述计算机体系结构是计算机学科中的一个重要分支,它研究的是计算机的硬件组成和工作原理,包括计算机的处理器、存储器、输入输出设备、总线等。

计算机体系结构的研究可以帮助我们理解计算机的工作原理,优化计算机的性能,提升计算机的能力。

计算机体系结构可以分为两个方面:指令集体系结构和微体系结构。

其中,指令集体系结构是指计算机的操作系统能够直接识别和执行的指令集合,它们是应用程序的编程接口;而微体系结构是指通过硬件实现指令集合中的指令,在底层支持指令集合的操作。

指令集体系结构和微体系结构是密切相关的,因为指令集体系结构会影响微体系结构的设计和实现。

目前,计算机体系结构主要有三种类型:单处理器体系结构、多处理器体系结构和分布式计算体系结构。

其中,单处理器体系结构是指所有的指令和数据都存放在同一台计算机中,这种体系结构的优点是操作简单、易于管理,但是主频存在瓶颈,无法很好地发掘多核的性能优势;多处理器体系结构是指多个计算机共享同一块物理内存,因此可以方便地实现负载均衡和任务协作,但是存在通信延迟和数据一致性问题;分布式计算体系结构则是指通过互联网将多个计算机连接成一个网络,可以在全球范围内共享计算资源,但是通信成本和数据安全问题需要考虑。

总之,计算机体系结构是计算机学科中的重要分支,它研究计算机的硬件组成和工作原理,帮助我们理解计算机的工作原理,优化计算机性能,提升计算机能力。

第二篇:计算机指令集体系结构计算机指令集体系结构,简称ISA(Instruction Set Architecture),是指计算机能够识别和执行的指令集合。

ISA是计算机指令的编程接口,定义了一组指令和地址模式,以及寄存器和内存的组织方式,它是计算机软件和硬件协同工作的关键接口之一。

ISA可以分为两类:精简指令集体系结构(RISC,Reduced Instruction Set Computer)和复杂指令集体系结构(CISC,Complex Instruction Set Computer)。

计算机系统结构第一,二次实验报告范文

计算机系统结构第一,二次实验报告范文

班别:学号:姓名:袁凯琦1.实验一WINDLX模拟器安装及使用1.1实验类别:综合实验1.2实验目的:建立实验环境,了解WINDLX模拟器的结构及使用1.3实验设备环境:WinDLX要求的硬件平台是IBM PC兼容机,WinDLX是一个Windows应用程序,运行于Windows 3.0以上的操作系统。

1.4实验原理:WinDLX软件包中带有说明文件,供安装程序时候使用。

1.5要点与难点:软件包中还有WinDLX教程和联机帮助,可以通过它们进一步了解模拟器的使用方法和DLX处理器的原理。

大家在进行模拟实验以前应该仔细阅读这些文档。

1.6实验内容和要求:阅读模拟器Help文档和相关资料,利用Fact.s及Input.s代码熟悉模拟器的配置、各项工具使用、寄存器设置及指令系统。

1.7实验步骤:(1)WINDLX模拟器安装WinDLX是一个基于Windows的模拟器, 能够演示DLX流水线是如何工作的。

WinDLX 包含windlx.exe和windlx.hlp文件。

同时,还需要一些扩展名为.s的汇编代码文件。

按以下步骤在Windows下安装WinDLX: WinDLX创建目录,例如E:\WINDLX解压WinDLX软件包或拷贝所有的WinDLX文件(至少包含 windlx.exe, windlx.hlp)到这个WinDLX 目录。

(2)熟悉模拟器的配置启动和配置WinDLX: 双击WinDLX图标,将出现一个带有六个图标的主窗口,双击这些图标会弹出子窗口.(3)利用Fact.s及Input.s代码熟悉各工具的使用1)导入求阶乘程序fact.sFile--> Load code or Data,然后出现以下界面,双击fact.s,input.s(由于fact.s调用了input.s),点击Load键即可导入按F7,单步运行程序,通过观察各个窗口的信息,理解fact.s的运行情况显示的是各个寄存器的名称及内容PC:程序计数器;IMAR:指令内存地址寄存器;IR:指令寄存器;A,B:ALU操作数寄存器;BTA:分支地址寄存器;ALU:ALU输出寄存器,ALUI(伪)寄存器;FPSR:用来保存有关浮点数操作结果的信息;DMAR:数据内存地址寄存器;SDR:存数据寄存器,SDRI (伪)寄存器;LDR:去素聚寄存器,LDRI(伪)寄存器;R0~R31:32位通用寄存器,R0永远为0;F0~F31:浮点寄存器。

计算机组成与系统结构实验报告2

计算机组成与系统结构实验报告2

评语: 课中检查完成的题号及题数: 课后完成的题号与题数:成绩:自评成绩:95一、实验目的:(1) 掌握一个简单CPU 的组成原理。

(2) 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。

(3) 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。

二、实验内容:1、实验原理:本实验要实现一个简单的CPU ,并且在此CPU 的基础上,继续构建一个简单的模型计算机。

CPU 由运算器(ALU )、微程序控制器(MC )、通用寄存器(R0),指令寄存器(IR )、程序计数器(PC )和地址寄存器(AR )组成,如图2-1-1 所示。

这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。

图1-4-1 基本CPU 构成原理图实验报告实验名称: 1.4 CPU 与简单模型机设计实验 日期: 2015.11.16 班级:10011303 学号: 2013302534 姓名:杨添文除了程序计数器(PC),其余部件在前面的实验中都已用到,在此不再讨论。

系统的程序计数器(PC)由两片74LS161 和一片74LS245 构成,其原理如图1-4-2 所示。

PC_B 为三态门的输出使能端,CLR 连接至CON 单元的总清端CLR,按下CLR 按钮,将使PC 清零,LDPC 和T2 相与后作为计数器的计数时钟,当LOAD 为低时,计数时钟到来后将CPU 内总线上的数据打入PC。

图1-4-2 程序计数器(PC)原理图本模型机和前面微程序控制器实验相比,新增加一条跳转指令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 停机其中JMP 为双字节指令,其余均为单字节指令,********为addr 对应的二进制地址码。

计算机组织体系与结构实验报告

计算机组织体系与结构实验报告

计算机组织与体系结构实验报告1.1基本运算器实验1.1.1 实验目的(1) 了解运算器的组成结构。

(2) 掌握运算器的工作原理。

1.1.2 实验设备PC机一台,TD-CMA实验系统一套。

1.1.3 实验原理本实验的原理如图1-1-1所示。

运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A 和暂存器B,三个部件同时接受来自A和B的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM),各部件对操作数进行何种运算由控制信号S3…S0和CN来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为ALU的输出。

如果是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。

ALU中所有模块集成在一片FPGA中。

逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赘述。

移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,交叉开关的原理如图1-1-2所示。

图中显示的是一个4X4的矩阵(系统中是一个8X8的矩阵)。

每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即:(1) 对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连,而没有同任何输入相连的则输出连接0。

(2) 对于循环右移功能,右移对角线同互补的左移对角线一起激活。

例如,在4位矩阵中使用‘右1’和‘左3’对角线来实现右循环1位。

(3) 对于未连接的输出位,移位时使用符号扩展或是0填充,具体由相应的指令控制。

使用另外的逻辑进行移位总量译码和符号判别。

运算器部件由一片FPGA实现。

ALU的输入和输出通过三态门74LS245连到CPU内总线上,另外还有指示灯标明进位标志FC和零标志FZ。

请注意:实验箱上凡丝印标注有马蹄形标记,表示这两根排针之间是连通的。

图中除T4和CLR,其余信号均来自于ALU单元的排线座,实验箱中所有单元的T1、T2、T3、T4都连接至控制总线单元的T1、T2、T3、T4,CLR都连接至CON单元的CLR按钮。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验名称多通路运算器和寄存器堆实验地点信息楼420
实验日期2012-12-7
一、实验目的
1.了解多通路的运算器与寄存器堆的组成结构。

2.掌握多通路的运算器与寄存器堆的工作原理及设计方法。

二、实验设备
PC 机一台, TD-CMX 实验系统一套。

三、实验原理
1.ALU&REG 单元的结构
ALU&REG单元由运算器和双端口寄存器堆构成,通过不同的控制信号SEL1、SEL0 产生不同结构的运算器。

运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A 和暂存器B。

SEL0 和SEL1 用于选择运算器和寄存器堆的通路:
(1)当SEL1=0、SEL0=0,ALU 的输出D7…D0、REG(右口)的输出OUT7…OUT0 和ALU与REG 的输入IN7…IN0 接到CPU 内总线上时,如图1-2-1 所示,寄存器堆只能从右口进行操作,相当于只有一组控制线的单端口寄存器堆,一般计算机组成原理实验涉及到的运算器和寄存器就是采用这种结构。

(2)当SEL1=1、SEL0=0,REG(右口)的输出OUT7…OUT0 和ALU 与REG(右口)的输入IN7…IN0 接到CPU 内总线上时,运算器和双端口寄存器堆的结构如图1-2-2 所示,寄存器堆由两组控制信号来分别进行控制,每组控制信号都可以相对独立的对寄存器堆进行读写操作,同时增加了执行专用通道A 总线,以利于提高指令执行的效率。

(3)当SEL1=1、SEL0=1,REG(右口)的输出OUT7…OUT0 和ALU 与REG(右口)的输入IN7…IN0 接到CPU 内总线上时,运算器和双端口寄存器堆的结构如图1-2-3 所示,在双通道双端口运算器和寄存器堆的基础上增加了暂存器旁路,把运算结果写回到寄存器堆的同时也可以写到暂存器A、暂存器B 中。

由于在运算型指令中把运算的结果写到通用寄存器中的指令很多,占运算型指令的大多数,发生通用寄存器数据相关的概率相当高,因此,可以用硬件设置专用路径来解决这种通用寄存器数据相关问题。

上面介绍了运算器和寄存器堆的三种典型的数据通路图,在计算机组成原理这门课程中我们已经对运算器有了初步的了解,明白运算器的主要功能是完成算术和逻辑类运算。

在系统结构这门课程中经过进一步的研究,还会了解到运算器与寄存器堆的结构对于计算机系统的设计有着重要的作用,对于计算机性能的优劣有着很大的影响。

2.ALU&REG 单元的应用
在了解运算器与寄存器堆结构的基础上,基于如图1-2-3 所示的双通道双端口运算器和双端口寄存器堆的结构可以设计一段程序:从IN 单元读入一个数据,存入R0;从IN 单元读入另一个数据,存于R1;将R0 和R1 相加,结果存于R0;将R0 和R1 相加,结果存于R3,同时打入暂存器A 中;再将R0 的值送OUT 单元显示。

四、实验操作及运行结果
(1)实验步骤
1、把时序与操作台单元的“MODE”短路块插上,使系统工作在四节拍模式,按实验连接图接线。

注意:连线时实验箱电源要处于关闭状态。

2、确保接线正确后,将实验箱连到电脑:电源线+并口Jtag下载线(打印机口),并打开实验箱电源。

3、在软件Quartus II 8.0中选择“File->Open Project”选项,按照以下路径查找实验过程中需要下载到FPGA中的数据“C:\TangDu\CMX\FPGA\ALU&REG \ ALU&REG.qpf(.sof)”,打开该文件后,单击软件中的“Programmer”选项,单击“Start”完成下载。

如果下载成功在界面Progress中可以看到100%的标志字样。

4、用串口电缆连接实验箱和电脑打印机口,接通电源,打开软件CMX,进行串口测试(如果串口线未连接或者串口线故障则自动弹出错误信息对话框):端口→串口选择→COM1或者COM2;然后,测试串口通讯是否成功:端口→串口测试。

5、如果串口通讯成功,在PC 机上运行TD-CMX,进入联机软件界面,选择菜单命令“【实验】—【ALU&REG实验】”,打开数据通路图。

6、首先按CON单元的CLR开关进行系统清零,状态机为S0态。

然后,采用单节拍运行方式
来观察数据流通。

1)用连接成的双通道双端口运算器和双端口寄存器堆的结构实现以下一段程序:从IN 单元读入一个数据,存入R0;从IN 单元读入另一个数据,存于R1;将R0 和R1 相加,结果存于R0;将R0 和R1 相加,结果存于R3,同时打入暂存器A 中;再将R0 的值送OUT 单元显示。

2)根据指令要求,得出用时钟进行驱动的状态机描述,即得出其有限状态机
S0:空操作,系统复位后的状态
S1:IN->R0;从IN 单元往R0 中打一个数
S2:IN->R1; 从IN 单元往R1 中打一个数
S3:R0 ->A, R1 ->B;同时把R0、R1 中的数打入暂存器A、B 中
S4:A+B->R0;将A+B 的结果送往R0
S5:A+B->R3,A+B->A; 增加暂存器旁路,将A+B 的结果送往R3 的同时打入暂存器A中S6:R0->OUT;把R0 中的数送入输出单元显示
3)每个状态运行4个周期(T1—T4),即每个状态按4次单节拍运行按钮。

请在S1和S2状态,通过IN单元的开关分别输入两个数(比如1和3)。

观察数据通路图中数据的变化,并检查是否与状态的描述相符合。

最后观察OUT液晶单元是否显示正确(如果从IN 单元输入的两个数分别为1和3,则OUT单元输出应该为4)。

7、当模型机执行完一遍后,检查OUT 单元显示的数是否正确,按下CON 单元的总清按
钮CLR,改变IN 单元的值,再次执行机器程序,从OUT 单元显示的数判别程序执行是否正确。

(2)实验结果
五、实验中出现的问题和解决方法
问题1:接线问题
解决方法:本试验我自认为是这三个实验里连线最复杂的一个,因为开始的时候小组其他的两个同学连的线,后来实验执行不成功,所以我们又检查了一下连线,虽然找到了几个错误但是仍然不成功,不得不在找一遍,最终发现了加法运算器执行不正确的地方了。

问题2:串口问题
解决方法:使用新的串口需要根据实验操作指示重新安装USB转串口驱动程序。

问题3:ID问题
解决3:每次实验的 ID都不一致所以需要根据实验操作指示做相关修改。

相关文档
最新文档