计算机组成实验报告.doc_第1页
计算机组成实验报告.doc_第2页
计算机组成实验报告.doc_第3页
计算机组成实验报告.doc_第4页
计算机组成实验报告.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计 算 机 组 成 原 理实 验 报 告评 语:成绩教 师:年 月 日班 级:学 号:姓 名:地 点:时 间: 实验一 存储器实验FPGA中LPM_ROM定制与读出实验一实验目的1、掌握FPGA中lpm_ROM的设置,作为只读存储器ROM的工作特性和配置方法。2、用文本编辑器编辑mif文件配置ROM,学习将程序代码以mif格式文件加载于lpm_ROM中;3、在初始化存储器编辑窗口编辑mif文件配置ROM; 4、验证FPGA中mega_lpm_ROM的功能。二实验原理ALTERA的FPGA中有许多可调用的LPM (Library Parameterized Modules)参数化的模块库,可构成如lpm_rom、lpm_ram_io、lpm_fifo、lpm_ram_dq的存储器结构。CPU中的重要部件,如RAM、ROM可直接调用他们构成,因此在FPGA中利用嵌入式阵列块EAB可以构成各种结构的存储器,lpm_ROM是其中的一种。lpm_ROM有5组信号:地址信号address 、数据信号q 、时钟信号inclock、outclock、允许信号memenable,其参数都是可以设定的。由于ROM是只读存储器,所以它的数据口是单向的输出端口,ROM中的数据是在对FPGA现场配置时,通过配置文件一起写入存储单元的。图3-1-1中的lpm_ROM有3组信号:inclk输入时钟脉冲;q23.0lpm_ROM的24位数据输出端;a5.0lpm_ROM的6位读出地址。实验中主要应掌握以下三方面的内容:(1)lpm_ROM的参数设置; (2)lpm_ROM中数据的写入,即LPM_FILE初始化文件的编写;(3)lpm_ROM的实际应用,在GW48_CP+实验台上的调试方法。三实验步骤(1)用图形编辑,进入mega_lpm元件库,调用lpm_rom元件,设置地址总线宽度address和数据总线宽度q,分别为6位和24位,并添加输入输出引脚,如图3-1-1设置和连接。(2)设置图1为工程。(3)在设置lpm_rom数据参数选择项lpm_file的对应窗口中(图2),用键盘输入lpm_ROM配置文件的路径(rom_a.mif),然后设置在系统ROM/RAM读写允许,以便能对FPGA中的ROM在系统读写。(4)用初始化存储器编辑窗口编辑lpm_ROM配置文件(文件名.mif)。这里预先给出后面将要用到的微程序文件:rom_a.mif 。rom_a.mif中的数据是微指令码(图3)。(5)全程编译。(6)下载SOF文件至FPGA,改变lpm_ROM的地址a5.0,外加读脉冲,通过实验台上的数码管比较读出的数据是否与初始化数据(rom_a.mif中的数据)一致。图1 lpm_ROM的结构图图2 设置在系统ROM/RAM读写允许图3 rom_a.mif中的数据(7)打开QuartusII的在系统存储模块读写工具,了解FPGA中ROM中的数据,并对其进行在系统写操作(图3-1-4)。图4 在系统存储模块读写四实验操作结果与演示下载sof示例文件至实验台上的FPGA,选择实验电路模式仍为NO.0,24位数据输出由数码8至数码3显示,6位地址由键2、键1输入,键1负责低4位,地址锁存时钟CLK由键8控制,每一次上升沿,将地址锁入,数码管8/7/6/5/4/3将显示ROM中输出的数据。发光管8至1显示输入的6位地址值。1、按模式选择键选择实验板模式为NO.0,然后按其左边复位键,复位系统; 2、按1键数码管1显示8,按2键使数码管显示0;3、按键8控制上升沿将地址锁入,看到数码管8-3分别显示00ED8A;4、比对图3可发现结论正确。五、思考题(1)如何在图形编辑窗口中设计lpm_ram_dq存储器?怎样设定地址宽度和数据线的宽度?设计一数据宽度为6,地址线宽度为7的RAM,仿真检验其功能,并在FPGA上进行硬件测试。(2)如何建立lpm_ram_dq的数据初始化,如何导入和存储lpm_ram_dq参数文件?生成一个mif文件,并导入以上的RAM中。(3)怎样对lpm_ram_dq设计参数文件进行软件仿真测试?(4)使用VHDL文件作为顶层文件,学习lpm_ram_dq的VHDL语言的文本设计方法。(5)了解lpm_ram_dq存储器占用FPGA中EAB资源的情况。FPGA中LPM_RAM读写实验一实验目的1、了解FPGA中RAMlpm_ram_dq的功能, 2、掌握lpm_ram_dq的参数设置和使用方法,3、掌握lpm_ram_dq作为随机存储器RAM的工作特性和读写方法。二实验原理在FPGA中利用嵌入式阵列块EAB可以构成存储器,lpm_ram_dq的结构如图3-2-1。数据从ram_dp0的左边D7.0输入,从右边Q7.0输出,R/W为读/写控制信号端。数据的写入:当输入数据和地址准备好以后,在inclock是地址锁存时钟,当信号上升沿到来时,地址被锁存,数据写入存储单元。数据的读出:从A7.0输入存储单元地址,在CLK信号上升沿到来时,该单元数据从Q7.0输出。R/W读/写控制端,低电平时进行读操作,高电平时进行写操作;CLK读/写时钟脉冲; DATA7.0RAM_dq0的8位数据输入端;A7.0RAM的读出和写入地址; Q7.0RAM_dq0的8位数据输出端。三实验步骤(1)按图5输入电路图。并进行编译、引脚锁定、FPGA配置。(2)通过键1、键2输入RAM的8位数据(选择实验电路模式1),键3、键4输入存储器的8位地址。键8控制读/写允许,低电平时读允许,高电平时写允许;键7(CLK0)产生读/写时钟脉冲,即生成写地址锁存脉冲,对lpm_ram_dq进行写/读操作。(3)lpm_ram_dq也能加入初始化文件,此文件加入的路径表达和文件表达(图6);同时选择在系统读写RAM功能,RAM的ID名取为:ram1。 图5 lpm_ram_dp实验电路图图6 lpm_ram_dq加入初始化文件和选择在系统读写RAM功能四实验结果操作演示下载.sof至实验台上的FPGA,选择实验电路模式为NO.1,按以上方式首先进行验证实验。首先控制读出初始化数据,与载入的初始化文件.mif中的数据进行比较,然后控制写入一些数据,再读出比较。使用在系统读写RAM的工具对其中的数据进行读写操作,设置成连续读模式,将在系统读写工具窗口的数据与实验箱上数码管上显示的数据对照起来看。五、实验心得实验二 运算器组成实验算术逻辑运算实验一实验目的1 了解简单运算器的数据传输通路。2 验证运算功能发生器的组合功能。3 掌握算术逻辑运算加、减、与的工作原理。4 验证实验台运算的8位加、减、与、直通功能。5 按给定数据,完成几种指定的算术和逻辑运算。二实验内容1实验原理算术逻辑单元ALU的数据通路如图2-1所示。其中运算器ALU181根据74LS181的功能用VHDL硬件描述语言编辑而成,构成8位字长的ALU。参加运算的两个8位数据分别为A7.0和B7.0,运算模式由S3.0的16种组合决定,而S3.0的值由4位2进制计数器LPM_COUNTER产生,计数时钟是Sclk(图2-1);此外,设M=0,选择算术运算,M=1为逻辑运算,CN为低位的进位位;F7.0为输出结果,CO为运算后的输出进位位。两个8位数据由总线IN7.0分别通过两个电平锁存器74373锁入,ALU功能如表2-1所示。表1 ALU181的运算功能选择端高电平作用数据S3 S2 S1 S0M=HM=L 算术操作逻辑功能Cn=L(无进位)Cn=H(有进位)0 0 0 00 0 0 1加10 0 1 0+10 0 1 1减1(2的补码)0 1 0 0加10 1 0 1加加+10 1 1 00 1 1 11 0 0 0加11 0 0 1加11 0 1 0加11 0 1 11 1 0 0*1 1 0 1加11 1 1 0加11 1 1 1注1、* 表示每一位都移至下一更高有效位, “+”是逻辑或,“加”是算术加注2、在借位减法表达上,表2-1与标准的74181的真值表略有不同。三实验步骤(1)设计ALU元件在Quartus II 环境下,用文本输入编辑器Text Editor输入ALU181.VHD算术逻辑单元文件,编译VHDL文件,并将ALU181.VHD文件制作成一个可调用的原理图元件。(2)以原理图方式建立顶层文件工程选择图形方式。根据图1输入实验电路图,从Quartus II的基本元件库中将各元件调入图形编辑窗口、连线,添加输入输出引脚。将所设计的图形文件ALU.bdf保存到原先建立的文件夹中,将当前文件设置成工程文件,以后的操作就都是对当前工程文件进行的。(3)器件选择选择Cyclone系列,在Devices中选择器件EP1C6QC240C8。编译,引脚锁定,再编译。引脚锁定后需要再次进行编译,才能将锁定信息确定下来,同时生成芯片编程/配置所需要的各种文件。(4)芯片编程Programming打开编程窗口。将配置文件ALU.sof下载进GW48系列现代计算机组成原理系统中的FPGA中。(5)选择实验系统的电路模式是NO.0,验证ALU的运算器的算术运算和逻辑运算功能根据表1,从键盘输入数据A7.0和B7.0,并设置S3.0、M、Cy,验证ALU运算器的算术运算和逻辑运算功能,记录实验数据。图1 算术逻辑单元ALU实验原理图四实验结果操作演示1、 下载.sof至实验台上的FPGA按模式选择键选择实验板模式为NO.0,然后按其左边复位键,复位系统;2、 用数据选择开关(键3控制)的高/低电平选择总线通道上的8位数据进入对应的74373中;即首先将键3输入高电平,用键2、键1分别向A7.0 置数01010101(55),这时在数码管4/3上显示输入的数据(55H);然后用键3输入低电平,再用键2、键1分别向B7.0置数10101010(AA),这时在数码管2/1上显示输入的数据(AA);这时表示在图2-1中的两个74373锁存器中分别被锁入了加数55H和被加数AA。3、 设定键8为低电平,即M=0(允许算术操作),键6控制时钟SCLK,可设置表1的S3.0=0 F。现连续按动键6,设置操作方式选择9(加法操作),使数码管8显示9,以验证ALU的算术运算功能: 当键7设置cn=0(最低位无进位)时,数码管7/6/5=0FF(55+AA=0FF);4、 当键7设置cn=1(最低位有进位)时,数码管7/6/5=100(55+AA+1=100);5、 若设置S3.0=0F,KEY7设置cn=0或cn=1,可验证ALU的逻辑运算功能。五、实验题与思考题用VHDL实现输入暂存器74373B的功能并对ALU181进行算术运算和逻辑运算的功能仿真,并记录仿真波形。六、实验心得实验三 微控制器实验节拍脉冲发生器时序电路实验一实验目的(1)掌握节拍脉冲发生器的设计方法和工作原理。 (2)理解节拍脉冲发生器的工作原理。二实验原理与实验步骤计算机之所以能够按照人们事先规定的顺序进行一系列的操作或运算,就是因为它的控制部分能够按一定的先后顺序正确地发出一系列相应的控制信号。这就要求计算机必须有时序电路。控制信号就是根据时序信号产生的。本实验说明时序电路中节拍脉冲发生器的工作原理。1、连续节拍发生电路设计(图1):可由4个D触发器组成,可产生4个等间隔的时序信号T1T4,其中CLK1为时钟信号,由实验台右边的方波信号源clock0提供,可产生1Hz12MHz的方波信号频率。实验者可根据实验自行选择信号频率。当RST1为低电平时,T1输出为“1”,而T2、T3、T4输出为“0”;当RST1由低电平变为高电平后,T1T4将在CLK1的输入脉冲作用下,周期性地轮流输出正脉冲,机器进入连续运行状态。图1节拍脉冲发生器节拍脉冲发生器的工作原理 2、单步节拍发生电路(图2):将图1电路稍加改变即可得到图2所示的单步运行电路。该电路每当RST1出现一个负脉冲后,仅输出一组T1、T2、T3、T4节拍信号,直到RST1出现下一个负脉冲。 图2单步运行电路工作原理3、单步/连续节拍发生电路(图3):。增加两个2-1多路选择器,可将图2电路改变为图3所示电路。S0是单步或连续节拍发生控制信号,当S0=0,选择单步运行方式;当S0=1,选择连续运行方式。示例工程文件是.bdf。硬件实验验证:下载.SOF 文件,选择实验模式1,Clock0接4Hz,键8控制RST1,键7控制S0,发光管1、2、3、4分别显示T1、T2、T3、T4的输出电平(实验结果与仿真波形图6比较!)。图3单步/连续运行电路工作原理三、实验结果操作验证1、节拍脉冲发生器波形验证T1T4以及CLK1、RST1的工作波形如图2所示,实验结果与仿真波形图。图4 节拍脉冲发生器工作波形2、单步运行电路波形验证T1T4以及CLK1、RST1的工作波形如图2所示,实验结果与仿真波形图。图5单步运行电路工作波形3、单步/连续运行电路波形验证T1T4以及CLK1、RST1以及S0的工作波形如图2所示,实验结果与仿真波形图。图6单步连续运行电路工作波形四、思考题1单步运行与连续运行有何区别,它们各自的使用环境怎样?2如何实现单步/连续运行工作方式的切换?答1:区别:单步运行只在复位后T1-T4依次产生一个脉冲,对应与计算机中执行一条指令,而连续运行复位后T1-T4将依次产生脉冲不断循环下去。使用环境:单步运行用于调试器对单步指令运行的控制,连续运行用于程序的正常运行和连续运行控制连续指令执行。答2:通过S0切换,S0为高电平时,复位后将连续运行,S0为低电平,复位后将单步运行一次。五、实验心得实验四 程序计数器PC与地址寄存器AR实验一实验目的1掌握地址单元的工作原理。2掌握的两种工作方式,加1计数和重装计数器初值的实现方法;3掌握地址寄存其从程序计数器获得数据和从内部总线获得数据的实现方法。二实验原理地址单元主要由三部分组成:地址寄存器和多路开关。程序计数器PC用以指出下一条指令在主存中的存放地址,CPU正是根据PC的内容去存取指令的。因程序中指令是顺序执行的,所以PC有自增功能。程序计数器提供下一条程序指令的地址,如电路图1所示,在T4时钟脉冲的作用下具有自动加1的功能;在LDPC信号的作用下可以预置计数器的初值(如子程序调用或中断相应等)。当LDPC为高电平时,计数器装入data 端输入的数据。aclr是计数器的清0端,高电平有效(高电平清零);aclr为低电平时,允许计数器正常计数。图1程序计数器原理图地址寄存器AR(74273)锁存访问内存SRAM的地址。273中的地址来自两个渠道。一是程序计数器PC的输出,通常是下一条指令的地址;二是来自于内部数据总线的数据,通常是被访问操作数的地址。为了实现对两路输入数据的切换,在FPGA的内部通过总线多路开关BUSMUX进行选择。LDAR与多路选择器的sel相连,当LDAR为低电平,选择程序计数器的输出;当LDAR为高电平时,选择内部数据总线的数据。三实验步骤1.按照 图1程序计数器原理图编辑、输入电路。对输入原理图进行编译、引脚锁定。1、输入8位总线数据B7.0;CLR按2次(010),产生一正脉冲,高电平清零;2、LDAR=0时,BUSMUX输出程序计数器PC的值;LDAR=1时,BUSMUX输出B7.0总线数据。3、LDPC:程序计数器PC预置控制端,当LDPC=1时,将B7.0总线数据装入程序计数器PC;当LDPC=0时,程序计数器PC处于计数自动工作状态,对T4进行计数;4、T4:程序计数器PC的计数时钟CLK,键8按动两次产生一个计数脉冲。5、通过B7.0设置程序计数器的预加载数据。当LDPC=0时,观察程序计数器自动加1的功能;当LDPC=1时,观察程序计数器加载输出情况; 四、 实验结果操作验证一、程序计数器工作波形验证图2 程序计数器工作波形二、实验板验证1、下载.sof至实验台上的FPGA按模式选择键选择实验板模式为NO.0,然后按其左边复位键,复位系统;2、所有键置0,键2/1输入A5;按键5PC计数器清0(010);3、连续按动键8,可以从数码8/7上看到AR的输出,即PC值;4、按键61,选通直接输出总线上的数据A5作为PC值,按键8,产生一个脉冲上升沿,即可看到AR(显示在数码8/7)的输出为A5;5、使键6=0,仍选通PC计数器输出,这时键2/1输入86,按键7产生一个上升脉冲(010),即用LDPC将86加载进PC计数器;6、连续按动键8,可以发现AR的输出在86上累加输出:86、87、88等五思考题分支和转移程序与顺序程序有何区别?要实现程序的分支和转移,需要对程序计数器PC和地址寄存器AR作怎样的操作?应改变哪些控制信号,请在实验台上实现程序转移的功能。六、实验心得实验五 总线控制实验一实验目的1理解总线的概念及特性。 2掌握总线传输控制特性。二实验原理数据输入开关地址寄存器AR存储器RAM数码管LED寄存器R0SW-BLDARCSW/RLED-BW/RR0-BLDR0总线图1 总线实验传输框图1总线的基本概念总线是多个系统部件之间进行数据传输的公共通路,是构成计算机系统的骨架。借助总线连接,计算机在系统各部件之间实现传送地址、数据和控制信息的操作。所谓总线就是指能为多个功能部件服务的一组公用信息线。2实验原理实验所用总线实验传输框图如图1所示。它将几种不同的设备挂在总线上,有存储器、输入设备、输出设备、寄存器。这些设备在传统的系统中需要有三态输出控制,然而在FPGA的内部没有三态输出控制结构,因此必须采用总线输出多路开关结构加以控制。按照传输要求恰当有序地控制它们,就可以实现总线信息传输。三实验内容一、根据挂在总线上的几个基本部件,设计一个简单的流程。(1)输入设备将数据打入寄存器R0。 (2)输入设备将另一个数据打入地址寄存器AR。(3)将寄存器R0中的数据写到当前地址的存储器中。(4)将当前地址的存储器中的数用数码管显示。实验电路如图2所示。写使能WE=1允许写,=0禁止写,允许读;inclock为数据DATA锁存时钟。键2、键1输入D7.0,输入的数据同时显示在数码2和数码3上。2)键4、键3输入控制设备选择端sel1.0,如图52所示,键4/键3控制总线多路选择器,选择不同设备的数据进入总线:sel1.0= 00:输入设备INPUT数据进入总线BUS;= 01:寄存器R0中的数据进入总线BUS;= 11:地址寄存器AR的数据进入总线BUS;= 10:存储器RAM的数据进入总线BUS;4)总线BUS上的输出数据显示在数码8和数码7上;5)键5控制寄存器R0的输入选通锁存端;6)键6控制地址寄存器AR输入选通锁存端;7)键7控制LPM_RAM数据DATA输入锁存端;8)键8控制LPM_RAM写入允许WE端,=1有效; 9)键9控制输出设备OUTPUT的输入选通端,输出数据显示在数码6和数码 图2 总线数据传输练习操作步骤图3 总线控制实验线路图四、实验操作步骤与演示一、总线控制的时序仿真波形 二、下载.sof至实验台上的FPGA按模式选择键选择实验板模式为NO.0,然后按其左边复位键,复位系统;根据图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论