组成原理实验指导_第1页
组成原理实验指导_第2页
组成原理实验指导_第3页
组成原理实验指导_第4页
组成原理实验指导_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、实验与设计实验4-1.算术逻辑运算单元ALU设计实脸参考实验例如和实验课件:/CMPUT_EXPMT/CH4_Ewt/DEM()_41_alu/和实验。(1)实验目的:一、了解运算器的数据传输通踣;二、验证运算器的组合功能;3、把握算术逻辑运算加、减工作原理;4、脸证明脸台运算的8位加、减、与、直通功能;五、按给定数据,完成几种指定的算术和逻楫运算。实验原理:算术逻楫单元ALU的数据通购如图4-50所示。其中运算器ALL-181依照74LS181的功能用VHDL硬件描述语言编辑而成(参考例4-1),组成8位宇长的ALLO参加运算的两个8位数据别高为A7刈和BJO。运算模式由S3.O的16种组合

2、决定,而S3.O的值由4位2进制计数器LPM_CQUNTER产生,计数时钟是Selk;另外,设M=0,选择算术运算,M=1为逻辑运算,C、为低位的进位位;F7.O为输出结果;a为运算后的输出进位位。两个8位数据由总线1NP.0别高通过两个电平锁存器74373锁入,ALU181功能如表4-1所示。(3)实验步骤:一、设计ALU元件。在Quartusll环境下,用文本输入编辑器TextEditor输入算术逻楫单元文件,编译VHDL文件,并将文件(例41)制作成一个可榔用的原理图元件。二、以原理图方式成立顶层文件工程。选择图形方式。依照图4-50输入实脸电蹈图,从QuartusII的大体元件库中将各

3、元件调入图形编揖窗口、连线,添加输入输出引脚。将所设计的原理图图形文件保留到原先成立的文件夹中,将当前文件设置成工程文件,以后的操作就都是对当前工程文件进行的。3、器件选择。选择Cyclone系列,在Devices当选择器件EP1C6QC240c8。编译,弓解锁定,再编译。引脚锁定后需要再次进行编译,才能将顿定信息确信下来,同时生成芯片编程/配置所需要的各类文件。4、芯片编程Programming(也能够直接选择光盘中的例如)。打开编程窗口。将配置文件下载进GW48系列现代运算机组成原理系统中的FPGA中。五、选择实验系统的电路模式是,验证ALU的运算器的算术运算和逻辑运算功能。依照表4-1,

4、用按键输入数据A7.O和B7.O,并设置S3.O、M、CN,验证ALU运算器的算术运算和逻辑运算功能,记录实验数据。(4)实验任务:(1)按图4-50所示,在此验证性例如顶用AO_B1(键3)产生锁存信号,将IN7.0的8位数据进入对应的8位数据锁存器中;即第一使AO_B1(键3)=0,用键二、键1别离向A7.0置数O1O1O1O1(55H),这时在数码管2/1上显示输入的数据(55H);然后用键3输入高电平1,再用键二、键1别离向B7.O置数(AAH),这时在数码管4/3上显示输入的数据(AAH);这时表示在图中的两个8位数据锁存器锁存器中别离被锁入了加数55H和被加数AAH。可双击图中的A

5、LU181元件,了解其VHDL功能描述。(2)设定键8为低电平,即M=0(许诺算术操作),键6操纵时钟SCLK,可设置表4-1的S3.0=0F0现持续按动键6,设置操作方式选择S3.0=9(加法操作),使数码管8显示9,以验证ALU的算术运算功能:当键7设置cn=O(最低位无进位)时,数码管7/6/5=0FF(55H+AAH=OFFH);当键7设置cn=l(最低位有进位)时,数码管7/6/5=100(55H+AAH+1=1OOH);(3)假设设定键8为高电平,即M=l,键KEY6操纵时钟SCLK,设置S3.0=0F,KEY7设置cn=0或cn=l,验证ALU的逻辑运算功能,并记录实验数据。LP

6、MCOUNTERSelk )qS3.ONO.O74373bIN7,.0-.KEY2,KEY1A0.B1KEY3SCLK - KEY6 Cn KEY?M KEYSOEND8.1GOljT<w?.q.rhi OCTAL LATCHESA17.0A7.OLED2.LED1B7.OLED4,LED3F7.OLED6,LED5CN4 LED7IN7.O|ATHFIJT ;OEN DI8.1 Gg7-0ALU工81S3.O:a7.0Er?.。CM32 OCTAL LATCHES<WPIJT.WG.C.J-WUT,OUTPUT©UTPCIT II 图4-50算术逻辑单元ALU实验原理图

7、表43A|7.0bB7.0设置值检查F7.0|SW_B寄存器内容S3S2S1S0MBUSA|7.OB|7.,0)01010101100101010110(4)验证ALU181的算术运算和逻辑运算功能,ALU181模块功能可参照表4-1。表4-4给定了寄放器DR1=A7.O和DR2=B7.O的数据(十六进制),要求依照此数据对照逻辑功能表所得的理论值(要求课前完成)与实验结果值进行比较(均采纳正逻辑0)。表44ALU实验数据表QICOQ1CAAf*7AlDITAl算术运算M=0;克献4;三特/Kf1、Cn=0(无进位)cn=l(有进位)0000AA55F=(OAA)F=(0A6)F=(155)0

8、001AA55F=(OFF)F=(100)F=(100)0010AA55F=(1AA)F=(1A6)F=(055)0011AA55F=(000)F=(IFF)F=(000)0100FF01F=()F=()F=()省略0101FF01F=()F=()F=()11015501F=()F=()F=()11105501F=()F=()F=()11115501F=()F=()F=()(4)表4-5列出了8种经常使用的算术与逻辑运算要求指定的操作内容,正确选择运算器数据通路、操纵参数S3、S二、S、SO、M,并将实验结果值填入括号内,表中给定原始数据DR1=A7.O和DR2=B7.O,以后的数据取自前而运

9、算的结果。表4-58种常用的算术与逻辑运算操作S3S2S1SOMCnDR1DR2运算关系及结果显示Cn4逻辑乘66FFDRiADRi-*DR:()传送DRi-D&()按位加DR】DRlDR式)取反西-DR:()加1DR2+I-DR:()求负函+1-DR式)加法DRi+DRlDRK)减法DRi-DR2-*DR:()(5)实验任务:一、做好实验预习,把握运算器的数据传送通路和ALU的功能特性,并熟悉本实验中所用的操纵台开关的作用和利用方式。二、写出实验报告,内容是:实验目的:按理论分析值填写好表4-3、表44和表4-5,给出对应的仿真波形。列表比较实验数据,及理论分析值与实验结果值,并对结

10、果进行分析。实验结果与理论分析值比较,有无不同?什么缘故?通过本实验,你对运算器ALU有何熟悉,有什么心得体会?(6)实验题与试探题1.用VHDL实现输入暂存器74373B的功能,及模式选择计数器LPMJ2OUNTER的功能。2 .用VHDL表达ALU实验电路的功能,对电路进行仿真、引脚锁定、并在实验台上实现其功能。3 .用VHDL设计一个简化的8位ALU,具有大体算术运算(加、减、带进位加、减)功能和逻辑运算(与AND、或OR、异或XOR、非NOT等)功能,给出仿真波形,并在实验台上实现。4 .用VHDL设计一个16位的ALU,实现大体的算术逻辑运算,为了节省逻辑资源,建议利用两个8位ALU

11、模块级联而成。5 .对ALU181进行算术运算和逻辑运算的时序仿真,并记录仿真波形。实验4-2,带进位算术逻辑运算单元ALU设计实验参考实验例如和实验课件:/CMPUT_EXPMT/CH4_Expt/DEMO_42_aluc/和实验。(1)实验目的:1、验证带进位操纵的算术运算功能发生器的功能:2、按指定数据完成几种指定的算术运算。(2)实验原理:在实验4-1的基础上增加进位操纵电路,将运算器ALU181的进位位送入D锁存器,由T4和CN操纵其写入,在此,T4是由键5产生的脉冲信号,这时,CN的功能是电平操纵信号(高电平常,CN有效),操纵是不是许诺将进位信号c。加入下一加法周期的最低进位位,

12、从而可实现带进位操纵运算。(3)实验步骤:一、依照电路图图4-51和波形图图4-52,第一使键5(操纵T4)和键7(操纵CN)=0:键8(操纵和键3(操纵AO_B1)=1:持续按键6,使产生9个脉冲,这时数码管8显示9(作加法运算):再用键2,键1输入加数9DH(数码管4/3显示9D):二、按键3=0,再用键2,键1输入被加数E5H(数码管4、3、二、1别离显示加数和被加数);再将键8(X)置0,使ALU作算术运算,这时能够从数码管6,5上看到9DH+E5H=82H(低8位和):先将键7(CN)置为1(许诺锁存ALU的进位),再用键5(T4)产生一个正脉冲,就能够将进位锁入D触发器中:数码管7

13、将显示1,表示加法有进位,并被锁:同时能够看到此进位被累加,使数码管6,5=83Ha置键8=1,在实验系统上作逻辑运算方面的实验,给出相应的仿真波形图:利用带进位操纵,操纵T4,别离由低到高输入3个8位加数和被加数,计算24位加法:7AC5E9H+BD5AF8H=?最后依照表4-6完成实验,记录实验数据,给出对应仿真波形图。(4)实验要求:一、做好实验预习,把握带进位操纵的算术运算功能发生器的功能特性:二、写出实验报告,内容是:实验目的;按理论分析值填写表6-6。列表比较实验数据的理论分析值与实验结果值;并对结果进行分析。实验结果与理论分析值比较,有无不同?什么缘故?(5)试探题:1.带进位运

14、算与不带进位运算有何区别?2.如何实现带进位运算,将上一次运算的进位位用于下一次的运算当中,并实现多个8位数据的(如两个24位数据的加法)运算?在操纵电路上应作如何的改动?给出24位加法详细的仿真波形图。&XK KEV6CO -La>7Cn KEY7MKEY3SI3.0 -Le?B图4-51带进位操纵的ALU表4-6带进位ALU实验数据表QICOQ1onA(*7AlDCAl算术运算M=0源Hl;二竹/、,<1、cn=0(无进位)cn=l(有进位)0101FF01F=()F=()F=()0110FF01F=()F=()F二()0111FF01F=()F=()F;()1000F

15、FFFF二()F=()F=()1001FFFFF=()F=()F=()1010FFFFF;()F=()F=()图4-52带进位操纵的ALU的仿真波形实验4-3,移位运算器设计实验参考实验例如和实验课件:/CMPUT_EXPMT/CH4_Expt/DEMO_43.shift/和实验,(1)实验目的:验证移位操纵器的组合功能。(2)实验原理:移位运算实验原理图如图4-53所示。移位运算器SHIFTER利用VHDL语言编写,其输入/输出端别离与键盘/显示器LED连接。移位运算器是时序电路,在时钟信号到来时状态产生转变,CLK为其时钟脉冲。由So、ShM操纵移位运算的功能状态,具有数据装入、数据维持、

16、循环右移、带进位循环右移,循环左移、带进位循环左移等功能。移位运算器的具体功能见表4-7所示,其中电路连接、输入数据的按键、输出显示数码管的概念如图4=53右上角所示。CLK是时钟脉冲输入,通过键5产生高低电平:M操纵工作模式,M=1时带进位循环移位,由键8操纵:CO为许诺带进位移位愉入,由键7操纵:S操纵移位模式03,由键6操纵,显示在数码管LED8上;D70是移位数据输入,由键2和1操纵,显示在数码管2和1上;QB7.O是移位数据输出,显示在数码管6和5上;CN是移位数据输出进位,显示在数码管7匕。匚二?STRUCTURE M0.0JwpTiT"I>PM. .:=>.

17、UGC. .YWhT 二两吸一”CNT2011 0L : IVee "-rw' « 9 一 SI-FTERCDS(1.oiOC7.01hslCLK _KEY5M 二 KEY8CO _KEY7S _KEY6D(7 UL_KEY2KEY106(7. 0_LEO(6) CM二 LED。)S(1. 0| _LED(8) IN(7. 0| _LEO(2.1)四包二丘5司工讥图453移位运算实验原理图表47移位发生器的功能GSIsoM功能000任意保持0100循环右移0101带进位循环右移0010循环左移0011带进位循环左移任意11任意加载待移位数co cuen日5 CNa

18、II回Q8图4-54 shifl移位运算器仿真波形(3)实验步骤:1.实验台选择模式0、下载例如配置文件到实验台。例如工程文件是。2 .键入待移位数据。通过键盘键1、键2向口7.0置数01101011(6814,显示在数码管2和1)。3 .将D7.O装入移位运算器QB7.O。键6设置(S1.SO)=3,键8设置M=0,(S&M=6,许诺加载待移位数据,显示于数码8):现在用键5产生CLK(0-1-0电平),将数据装入(加载进移位寄放器,显示在数码管6和5)。4 .对输入数据进行移位运算。再用键6设置为(Sl.S0)=2(S&M=4,显示于数码8,许诺循环右移):持续按键5,产生

19、CLK,输出结果QB7.O(显示在数码管6和5)将发生转变:6BHTB5H玲DAH.,5.键8设置M=1(许诺带进位循环右移),观看带进位移位许诺操纵C0的置位与清零对移位的阻碍:依照表4-7,通过设置(M、S、S0)验证移位运算的带进位和不带进位移位功能。(4)实验要求:一、做好实验预习,把握带进位操纵的算术运算功能发生器的功能特性。二、写出实验报告,内容是:实验目的,实验原理:按理论分析值预备并填写好实验数据表:列表比较实验数据的理论分析值与实验结果值,并对结果进行分析:实验结果与理论分析值比较,有无不同?什么缘故?(5)试探题:如何实现有符号数的算术右移和算术左移?修改用VHDL编写的实

20、验参考程序,进行时序仿真,并在实验台上调试实现。实验4-4.LPM_ROM实验参考实验例如和实验课件:/CMPUT_EXPMT/CH4_Expt/DEMO_44_ROM/和实验。(1)实验目的:1、把握FPGA中lpm_ROM的设置,作为只读存储器ROM的工作特性和配置方式:2、用文本编辑器编辑mif文件(图4-56)配置ROM,学习将程序代码以n】if格式文件加载于lpm_ROM中;3、在初始化存储器编辑窗口编辑mif文件配置ROM;4、验证FPGA中LPM_ROM的功能。(2)实验原理:参考4.2.4节中的相关内容。实验中要紧把握三方面的内容:一、LPM_ROM的参数设置;二、LPM_RO

21、M中数据的写入,即初始化文件的编写:3、LPM_ROM的实际应用,在GW48实验台上的调试方式。(3)实验步骤:参考4.2.4节中的LPM_ROM的设计进程。下载例如文件至实验台上的FPGA,选择实验电路模式仍为,24位数据输出由数码8至数码3显示,6位地址由键二、键1输入,键1负责低4位,地址锁存时钟CLK由键8操纵,每一次上升沿,将地址锁入,数码管8/7/6/5/473将显示ROM中输出的数据。发光管8至1显示输入的6位地址值。Addr小L或7Y100016106COED62COC050COE004cooore01A20695sMlOOEOCF!08CUB?比BAU二8C0W0106200

22、907aA08038201:10C01001COB583CO田87COB399COED箕31B21O31821F31822118318223C0BJ1AC0A01B07QA01C0D1&12ieeiE01S60129Ee&22-CN93011133220193011953240198010181100OCOO2OOCOD328C00304COO3O5COO3O6COCI307C0C0G3OOCOC19OOCOOAOOCOO030COWOCCOOTODcomotcomoFC0L010000011Q0CO1200CO1338COO314COO315C00316COM17C0C018

23、Q0CO19QOCOIApocoic|图4-56ROM初始化文件的内容(4)实验任务:实验前认真温习LPM-ROM存储器部份的有关内容:用图形编辑设计lpm_romc一、要求用LPM元件库设计LPM_ROM,地址总线宽度address。和数据总线宽度q别离为6位和24位。二、成立相应的工程文件,设置lpm_rom数据参数,lpm_ROM配置文件的途径(),并设置在系统ROM,RAM读写许诺,以便能对FPGA中的ROM在系统读写。3、锁定输入输出引脚。4、完成全程编译。五、下载SOF文件至FPGA,改变lpm_ROM的地址a5.O,外加读脉冲,通过实验台上的数码管比较读出的数据是不是与初始化数据

24、中的数据)一致。六、打开QuartusU的在系统存储模块读写工具,了解FPGA中ROM中的数据,并对其进行在系统写操作。(3)记录实验数据,写出实验报告,给出仿真波形图(如图4-57所示)。(5)试探题:一、学习LPM-ROM用VHDL语言的文本设计方式(顶层文件用VHDL表达):二、了解LPM-ROM存储器占用FPGA中EAB资源的情形。实验4-5.LPM_RAM实验参考实验例如和实验课件:/CMPUT_EXPMT/CH4_Expt/DEMO_45_RAM/和实验.(1)实验目的:一、了解FPGA中RAMlpm_ram_dq的功能;二、把握pm_ram_dq的参数设置和利用方式;3、把握lp

25、mam_dq作为随机存储器RAM的仿真测试方式,工作特性和读写方式。(2)实验原理:在FPGA中利用嵌入式阵列块EAB能够组成存储器,lpm_ram_dq的结构如图4-19。数据从ram_dpO的左侧D7.O输入,从右边QL7.O输出,R/W为读/写操纵信号端。当输入数据和地址预备好以后,在inclock是地址锁存时钟,当信号上升沿到来时,地址被锁存,数据写入存储单元。数据的读出操纵是从A7.O输入存储单元地址,在CLK信号上升沿到来时,该单元数据从QI7.0输出。R/W是读/写操纵端,低电平常进行读操作,高电平常进行写操作;CLK是读/写时钟脉冲信号:DATA7.O是RAM_dqO的8位数据

26、输入端:A7.O是RAM的读出和写入地址:Q7.O是RAM_dqO的8位数据输出端。(3)实验步骤:一、按图4-19输入电路图,进行编译、引脚锁定、向FPGA配置下载;二、通过键一、键2输入RAM的8位数据(选择实验电路模式1),键3、键4输入存储器的8位地址。键8操纵读/写许诺,低电平常读许诺,高电平常写许诺;键7(CLK0)产生读/写时钟脉冲,即生成写地址锁存脉冲,对lpm_rani_dq进行写/读操作;3、lpmam_dq也能加入初始化文件(那个地址是是后面将要用到的模型CPU执行微程序文件),注意此文件加入的途径表达和文件表达方式(图4-58):(注意后缀mif要小写);选择RAM的I

27、D名取为:ramlo实验当选择实验电路模式为,按以上方式进行验证明验。第一操纵读出初始化数据,与载入的初始化文件中的数据进行比较,然后操纵写入一些数据、再读出比较。利用在系统读写RAM的工具对其中的数据进行读写操作,设置成持续读模式,将在系统读写工具窗口的数据与实验箱上数码管上显示的数据进行对照(图4-59)。(4)实验要求:一、设计数据宽度和地址宽度均为8位lpm_ram_dq;二、设计对lpmam_dq进行测试的波形文件,完成对lpmam_dq时序仿真和硬件测试:3、利用系统读写RAM的工具对其中的数据进行读、写、修改、加载新的数据文件操作:4、写出实验报告,包括工作原理、仿真波形、调试和

28、测试结果。(5)试探题与实验题:一、如何成立lpm_ram_dq的数据初始化,如何导入和存储lpmam_dq参数文件?生成一个mif文件,并导入以上的RAM中;二、利用VHDL文件作为顶层文件,学习lpm_ram_dq的VHDL语言的文本设计方式。M*<juWi/4nlPluqInMmi叼e-IPMRAMM)3of4c V-KaW“ 回 A”配slool6QbcXXVMock,打嗜bVe皿iorI'm(w:d:tw a a? di“脑0JKtKixkS&lUi633blockdGthtoDaygRantio»yi£ylk«miitxlcont

29、entof<h«r«»ar>C*W0,】"itblankC3,a*CAA«SC5,6YyVC3t4,*-Q&xC5gKoxgdGCmd.Qxt«l-fwr«at)3ilg【.hidwNerctyHitidiTdtiitLFtl*Leif.)P116L./Mad%。Th*t?it36Jcont*ctfilevhoulicor.fomLtex(I»pl»««n<*ithlaxicr«ll%«oly.2ntfhdaviz©3代包他Imz«rO:VAll&vIn*Srvt«r>RaaoryContentEdiiorlacxplur«3d8d3,cont&xt)n&的d

温馨提示

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

评论

0/150

提交评论