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

下载本文档

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

文档简介

计算机组成与系统结构实验指导书邹红文2023.2目录实验一QUARTUSII软件入门1实验二组合电路8实验三寄存器17实验四控制信号发生器20实验五乘法器25实验六存储电路27实验七运算器31实验八微控制器(1)33实验九微控制器(2)37实验一QUARTUSII软件入门一、实验目的表1QUARTUSII中几种常用门电路的名称及其逻辑符号与门或门非门与非门或非门异或门AND2OR2NOTNAND2NOR2XORAND3OR3NAND3NOR3学习QUARTUSII的使用方法:建立原理图文件、工程文件、波形图文件以及仿真;掌握波形分析方法。学习QUARTUSII几种常用门电路的符号、逻辑功能。二、实验内容1.以“与门”为例,练习仿真软件的使用步骤。2.验证加法器74283的逻辑功能。3.设计选择器。三、实验步骤1.建立文件夹,用于存放所有的实验内容。文件夹名称为你的学号,例如:B0511。2.在文件夹“B0511”中建立文件夹“实验一”,存放实验一的内容。再建立子文件夹“与门”。请特别注意:“与门”这个文件夹在下面第6步保存波形图文件时还要用到!图2新建原理图文件图1与门逻辑电路图图2新建原理图文件图1与门逻辑电路图3.按照图1建立原理图文件ym2.bdf(不区分大小写!)①选菜单FILE→NEW,进入图2,选BlockDiagram,系统自动打开一个空白设计页面。②点工具,打开图3。在图3中,选择primitives→logic→and2,单击OK。然后在图4中单击左键,把与门and2放置到设计页面中。③击右键,选择Cancel,结束与门的放置,见图4。图3选择2输入与门图3选择2输入与门图4取消与门的放置图4取消与门的放置④添加输入输出引脚,更改引脚名称,连线。在图3中选primitives\pin\input,单击OK,然后在原理图中放置2个input。在图3中选primitives\pin\output,单击OK,然后在原理图中放置1个output。双击引脚,在系统对话框PinProperties(引脚属性,如图5所示)中分别输入新引脚名A(B、Y)之后,单击“确定”。最后的电路图如图1所示。图5修改引脚的名称图5修改引脚的名称⑤把原理图文件保存到保存到第2步建立的文件夹“与门”中:选择菜单项“保存”,输入文件名ym2,系统加的后缀bdf不变。图6询问是否为原理图文件建立工程图6询问是否为原理图文件建立工程4.建立工程(Project)文件(ym2.qpf)第⑤步完成之后,系统弹出对话框图6,询问是否为原理图文件建立工程,选“是”,系统接着弹出“NewProjectWizard”对话框,如图7所示,在该对话框系统自动建立工程文件名ym2和实体名ym2。选Finish,完成工程的建立。图7系统自动设置工程名ym2和实体名图7系统自动设置工程名ym2和实体名ym2图9建立波形文件5.编译工程图9建立波形文件点击编译工具,编译成功后系统显示图8。图8系统给出编译成功信息图8系统给出编译成功信息6.建立波形文件 选菜单FILE→NEW,进入图9,选Otherfiles→VectorWaveformFile,单击“保存”,然后输入文件名ym2,(后缀vwf系统自动添加)。请特别注意:系统自动保存到第2步建立的文件夹“与门”中,请不要更改路径!图10插入结点或总线7.修改系统默认仿真终止时间(可以跳图10插入结点或总线过本步骤)选菜单Edit\EndTime,系统默认时间是1US(微秒),改为400ns。8.在波形图中添加结点①选菜单Edit→InsertNodeorBus,打开图10,单击NodeFinder,进入图11。②按照图11,把Filter设置为Pins:all,Lockin设置为ym2(一般是默认当前打开的波形文件名,也可以击浏览按钮,自行选择文件)。③点按钮list,系统在图11中列出结点名称,把结点移到右边,单击OK。图11选择所需结点图11选择所需结点图12设置周期性输入信号的输入值设置周期设置图12设置周期性输入信号的输入值设置周期设置范围①点击变量名称,选中一个变量(变为蓝色表示选中),然后点工具,打开图12。图12的功能:设置周期性输入信号的输入值。在图的上部设置输入信号的持续时间范围(Timerange),本例范围是0-400ns。下部设置输入信号的周期和占空比,本例信号变化周期80ns,占空比50%。②按照图13设置输入信号AB的波形在波形图中。选A,打开图12,输入80ns,占空比50%。在波形图中选B,打开图12,输入160ns,占空比50%。③修改波形图的显示比例。单击之后,把鼠标放到波形图的时间标尺上(如图13所示),击右键缩小图形,击左键放大图形。图13图13设置输入信号AB的波形bcad时间标尺10.仿真并分析波形①选菜单Processing\SimulatorTool,打开图14。②按图14设置SimulationMode为Functional,即设置仿真模式为功能仿真。系统在SimulationInput中自动显示当前打开的波形文件(ym2.vwf),也可自行定位文件的位置。③点击GenerateFunctionalSimulationNetlist按钮。④第③步成功后,先点击Start按钮,成功后再点击Report按钮,显示仿真波形图,请大家分析波形。图1图14设置仿真模式为功能仿真图1图15加法器283的逻辑电路图11.验证加法器74283的逻辑功能。①在文件夹“实验一”中建立文件夹“加法器”。②按照图15建立原理图文件jfq283.bdf。总线的命名和连线:先在input上修改名称,然后再和芯片连线。总线的命名方法:例如总线A的命名:A[4..1],用方括号[],数字之间的圆点用西文的圆点!连线之后,单击每条单线,然后输入单线的名字,例如,A1。把所有的单线全部命名。(不区分大小写!)③保存原理图文件到文件夹“加法器”中,然后建立工程文件。④编译。⑤按照图16建立波形图文件,保存。系统自动保存到第①步建立的文件夹“加法器”中,请不要更改路径!⑥设置波形的输入值。先把Endtime设置为2.56us。然后设置输入波形。总线的赋值:选中A,点击工具“Coutvalue”,把选项卡“Timing”中的“Countevery”设置为160ns。选中B,点击工具“Coutvalue”,把选项卡“Timing”中的“Countevery”设置为10ns。⑦仿真并分析结果。图1图16加法器283的波形12.设计选择器①在文件夹“实验一”中建立文件夹“选择器”。②按照图17建立原理图文件。③保存原理图文件到文件夹“选择器”中,文件名为“xzq6w”(不要用其它名称,因为在实验五要用这个名称)。然后建立工程文件。编译。图17图17选择器逻辑电路图④建立波形图文件,保存。系统自动保存到第①步建立的文件夹“选择器”中,请不要更改路径!该选择器的功能:A、B是数据输入端,S是选择器控制端,Q是数据输出端。S=1时Q=A;S=0时Q=B。⑤仿真并分析结果。实验二组合电路一、实验目的学习选择器和三态门的定制和应用方法以及逻辑电路的封装方法。二、实验内容1.设计总线宽度为8的四选一数据选择器。2.设计总线宽度为8的三态门。3.设计8位加法器并封装。三、实验步骤1.设计总线宽度为8的四选一数据选择器。图1定制选择器图1定制选择器①在文件夹“实验二”中建立文件夹“选择器”。②新建原理图文件,放置一个“input”后保存到文件夹“选择器”(文件名xzq)。建立工程。③单击工具,在“name”下输入“lpm_mux”,单击“OK”(见图1)。进入图2。④在图2中的操作:首先选中“VHDL”;然后单击“Browse”按钮,找到文件夹\b0511\实验二\选择器;最后单击“next”按钮。进入图3。⑤在图3中把制选择器的输入端个数定义为4,每个输入端的宽度定义为8。⑥在图3中单击“next”按钮,进入下一页,再单击“next”按钮,进入图4。图2选择VHDL图2选择VHDL和路径图3定制选择器的输入端个数和每个输入端的宽度图3定制选择器的输入端个数和每个输入端的宽度图4定制选择器完成图4定制选择器完成在lpm_mux0.bsf前面打钩图5定制的选择器图5定制的选择器⑦在图4中先在lpm_mux0.bsf之前打钩,然后单击“Finish”按钮,把完成的选择器放到原理图中,为此选择器加上输入输出引脚,见图5。保存到文件夹“选择器”中。⑧建立工程文件后在工程中添加选择器的系统文件选择菜单:Project→Add/RemoveFileinproject,打开图6,单击图6中“AddALL”按钮,再单击图6中“ok”按钮。然后编译。图6在工程中添加选择器的系统文件图6在工程中添加选择器的系统文件⑨建立波形图文件,保存到文件夹“选择器”。⑩在图7中选择要设置属性的信号,然后选择端口名称,单击鼠标右键,先选择“properties”,再选择“无符号”显示属性。图7设置选择器端口的显示属性图7设置选择器端口的显示属性设置输入端口信号的值:选择端口S,然后单击工具,打开对话框如图8所示。在对话框如上部输入时间段(20ns—30ns),在下部输入数值。其它输入端口值设置方法相同。图9是仿真波形图。图8设置输入信号在一个时间段的输入值图8设置输入信号在一个时间段的输入值图9选择器的仿真波形图图9选择器的仿真波形图图10定制三态门图10定制三态门2.设计三态门①在文件夹“实验二”中建立文件夹“三态门”。②新建原理图文件,放置一个“input”后保存到文件夹“三态门”。建立工程。③按照图10到图13的步骤定制三态门。图11图11设置路径图12单向三态门,宽度是8位图12单向三态门,宽度是8位图13结束定制步骤图13结束定制步骤④按照图14连线,保存。B是控制端,高电平有效。a、f分别是数据输入输出端。⑤按照图15把系统文件加到工程中。⑥按照图16设计波形文件并仿真。图14三态门原理图图14三态门原理图图15把系统文件加到工程中图15把系统文件加到工程中图16三态门仿真波形图16三态门仿真波形3.设计8位加法器并封装①在文件夹“实验二”中建立文件夹“8位加法器”。②按照图17新建原理图文件,保存到文件夹“8位加法器”,文件名为“fadd8”(不要用其它名称,因为在实验七要用这个名称)。图17中8位加法器功能是:s0s1s2s3s4s5s6s7=a0a1a2a3a4a5a6a7+b0b1b2b3b4b5b6b7+cin③对原理图编译成功后建立波形图并仿真。④生成符号图打开原理图,按照图18选择菜单:file→Create/Update→CreateSymbleFile,即可生成符号图文件fadd8.bsf,并自动保存到当前工程中。图178位加法器逻辑电路图图178位加法器逻辑电路图①①三态门仿真波形图18选择生成符号菜单项⑤新建原理图文件,按照图19找到FADDB8,单击“ok”。图19选择生成的符号FADD8图19选择生成的符号FADD8⑥把FADD8放到原理图中,在符号上单击右键,如图20所示,选择“editselectsymbol”,把引脚修改为图20右边的符号。保存,文件名JIAFAQI。图20修改符号图的引脚位置图20修改符号图的引脚位置实验三寄存器一、实验目的学习寄存器74171和移位寄存器74194。二、实验内容1.设计8位寄存器。2.设计8位移位寄存器。三、实验步骤1.设计8位寄存器①在“实验三”中建立文件夹“寄存器”。②新建空白原理图文件。③单击工具,在“name”下输入“74171”,单击“OK”,见图7。④放置2个74171后,按照图7连线,保存到文件夹“寄存器”,文件名为“reg8b”(不要用其它名称,因为在其它实验要用这个名称)。建立工程。编译。仿真。图7所示是8位寄存器,Clrn是清0端,d7~d0是数据输入端,q7~q0数据输出端。Clk是脉冲输入信号。引脚功能:Clrn=0输出端q7~q0被清0。Clrn=1时,在clk上升沿,输出端q接收对应输入端d的值。仿真波形如图8所示。图88位寄存器仿真波形图78位寄存器逻辑电路图图88位寄存器仿真波形图78位寄存器逻辑电路图2.设计8位移位寄存器①在“实验三”中建立文件夹“移位寄存器”。②新建空白原理图文件。③单击工具,在“name”下输入“74194”,单击“OK”。④放置2个74194后,按照图9连线,保存到文件夹“移位寄存器”,文件名为“shift8”(不要用其它名称,因为在实验七要用这个名称)。建立工程。图9所示移位寄存器引脚功能:abcdefgh:8位数据并入端。srsi:右移外部数据输入端。clrn:清0控制信号输入端。低电平有效。clk:时钟输入端。上升沿有有效。qaqbqcqdqeqfqgqh:数据输出端。S1:并入数据和移位控制端,S1=1并入,S1=0移位。图98位移位寄存器逻辑电路图图98位移位寄存器逻辑电路图图10是移位寄存器仿真波形。10ns之前:Clrn=1同时s1=1时,在clk上升沿,并入abcdefgh的值。输出端q接收对应输入端的值。②10ns~20ns:Clrn=1同时s1=0时,在clk上升沿移位。移位方向:srsi→qa→qb→qc→qd→qe→qf→qg→qh③20ns之后:Clrn=0输出端被清0。图图108位移位寄存器仿真波形图实验四控制信号发生器一、实验目的学习信号发生器和运算器的VHDL程序设计方法。二、实验内容1.设计“原码一位乘法器”的信号发生器。2.设计16功能的运算器。三、实验步骤1.乘法器原理图1是“原码一位乘法”的“移位-加”算法流程图,其中X、Y是用原码表示的乘数和被乘数,即X=X0X1X2X3X4,Y=Y0Y1Y2Y3Y4,X0、Y0是符号位。F是部分积。“移位-加”算法流程包括四个步骤:步骤1:使部分积寄存器F清0,乘数、被乘数的小数部分的值寄存到相应的寄存器Y和X中。乘数、被乘数的符号位X0、Y0不参加“移位-加”运算。步骤2:根据乘数寄存器Y最低位的值,决定加数是0或X:Y4=1时执行F+X,把结果保存到移位寄存器中;Y4=0时执行F+0,把结果保存到移位寄存器中。步骤3:执行移位操作:“和”与寄存器Y一起右移一位。步骤4:保存移位后的数值。第2步到第4步重复执行4次即完成了定点小数X、Y的小数部分相乘。而乘积的符号位用2个数符异或运算完成,即SF=X0⊕Y0。图1原码一位乘法器流程图图1原码一位乘法器流程图2.原码一位乘法器原理框图图2是原码一位乘法器原理框图,包括通用寄存器F和X、选择器、加法器和移位寄存器SHIFT以及移位寄存器Y。两个通用寄存器由集成电路74171组成,分别用于保存部分积和数据A,CLRF是部分积寄存器的清0信号,低电平有效。CLKFX是通用寄存器的时钟信号,上升沿时完成输入数据的寄存操作。2选1数据选择器完成加数的选择,控制端S的值决定加法器的一个数据输入端是被乘数A或者数据0。移位寄存器SHIFT和移位寄存器Y由集成电路74194构成。控制信号S1SHIFT=0时,移位寄存器SHIFT执行移位操作;S1SHIFT=1时,移位寄存器SHIFT执行写入操作;CLKSHIFT是时钟信号,上升沿完成移位或写入操作;控制信号S1Y=0时,移位寄存器Y执行移位操作;S1Y=1时,移位寄存器Y执行并入操作;CLKY是时钟信号,上升沿移位寄存器Y完成移位或写入操作。图2原码一位乘法器框图图2原码一位乘法器框图图3是由图2分析得出的原码一位乘法器完成一次乘法运算所需的控制信号。⑤⑤①②③④④⑥图3乘法器的控制信号波形图图3中控制信号的作用如下:①clrF=0把部分积寄存器F清0。②clkY上升沿把┃Y┃并入寄存器Y。③clrF=1、clkFX上升沿把F0_F5并入寄存器F,把clkFX上升沿┃X┃并入寄存器X。④S=1时F0_F5+X,S=0时F0_F5+000000。控制端S=Y4。⑤s1SHIFT=1、clkSHIFT上升沿把“和”并入shift8。⑥s1SHIFT=0、clkSHIFT上升沿,clkY上升沿把2个移位寄存器一起移位。第③步到第⑥步重复4次即可完成一次乘法运算。3.“原码一位乘法器”信号发生器VHDL代码根据图3设计的原码一位乘法器信号发生器的VHDL代码如下:libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;entityconsignalisPort(Clk:instd_logic;clrF,clkFX,clkY,s1SHIFT8,clkSHIFT8:outstd_logic);end;architectureBehavioralofconsignalistypestateis(ini,add,LOADSUM,nullall,shift);signalCurrent_State:state;signalCount:std_logic_vector(4downto0);signaltemp:std_logic_vector(4downto0);signalClken,clkout:std_logic:='1';beginclock:clkout<=Clkenandclk;p1:process(Clkout)beginif(rising_edge(clkout))thenCount<=Count+1;if(Count<18)thenclrF<=temp(4); clkFX<=temp(3); clkY<=temp(2); s1SHIFT8<=temp(1); clkSHIFT8<=temp(0); else Clken<='0'; clkFX<='0'; clkY<='0'; clkSHIFT8<='0';endif;endif;endprocess;p2:process(Clk,Current_State)beginifrising_edge(Clk)then caseCurrent_Stateis whenini=> temp<="00100"; Current_State<=add; whenadd=> temp<="11010"; Current_State<=LOADSUM; whenLOADSUM=> temp<="10011"; Current_State<=nullall; whennullall=> temp<="10000"; Current_State<=shift; whenshift=> temp<="10101"; Current_State<=add; whenothers=>null; endcase; endif;endprocess;endBehavioral;4.VHDL代码仿真步骤在“实验四”文件夹建立文件夹“控制信号发生器”。新建“VHDLFILE”;输入代码;保存到“控制信号发生器”文件夹。注意文件名必须是“ENTITY”后面的标识符,本例代码的文件名是consignal。编译、仿真步骤与原理图的步骤相同。5.设计16功能的运算器新建VHDL文件,把下述代码复制后保存到文件夹“实验四”的“运算器”文件夹中,本例代码的文件名是ALU。建立工程,编译。仿真。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_unsigned.ALL;ENTITYALUISPORT(A,B:INSTD_LOGIC_VECTOR(7DOWNTO0);SEL:INSTD_LOGIC_VECTOR(3DOWNTO0);Y:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDALU;ARCHITECTUREbehavOFALUISSIGNALARITH,LOGIC:STD_LOGIC_VECTOR(7DOWNTO0);BEGINARITHMETICUNITWITHSEL(2DOWNTO0)SELECT ARITH<=awhen"000", a+1when"001", a-1when"010", bwhen"011",b+1when"100", b-1when"101",ALU功能表Sel[3..0]功能0000a0001a+10010a-10011b0100b+10101b-10110a+b0111a-b1000nota1001notb1010aandb1011aorb1100anandb1101anorb1110axorb1111not(axorb) a+bwhen"110",a-bwhenothers;logicunitWITHSEL(2DOWNTO0)SELECT logic<=notawhen"000", notbwhen"001", aandbwhen"010", aorbwhen"011", anandbwhen"100", anorbwhen"101", axorbwhen"110",not(axorb)whenothers;muxWITHSEL(3)SELECT y<=logicwhen'1', arithwhenothers;ENDbehav;请大家对照上表和图4说明alu的功能。图图4ALU仿真波形实验五乘法器一、实验目的学习原码1位乘法器的设计方法。二、实验内容按照图1设计原码1位乘法器。设X=X0X1X2X3X4,Y=Y0Y1Y2Y3Y4,X0、Y0是符号位。图1的功能是F=│X│*│Y│,即F=(00X1X2X3X4)*(00Y1Y2Y3Y4)。乘积的符号为两个数符号位X0、Y0异或运算值。三、实验步骤①建立文件夹“实验五”。把以下5个文件复制到文件夹“实验五”。实验一xzq6w.bdf、实验二fadd8.bdf、实验三reg8b.bdf和shift8.bdf、实验四consignal.Vhd。②新建空白原理图文件,放置一个输入引脚后保存到文件夹“实验五”,文件名为TOP.BDF。建立工程。③把所有文件加到当前工程中:选择菜单Project→Add/RemoveFilesInProject,点击按钮“AddAll”。图1原码一位乘法器逻辑电路图图1原码一位乘法器逻辑电路图④设置顶层实体:打开TOP.BDF,选择菜单Project→SetAsTop-LevelEntity。⑤按照p14生成符号图的步骤把第1步复制的5个文件全部生成符号图。⑥点击“project”前面的+号,选择所需符号放到原理图TOP.BDF中。按照图1连线后保存,编译、仿真。图2原码一位乘法器仿真波形图2原码一位乘法器仿真波形⑦仿真波形分析图2是原码一位乘法器仿真波形,其中x=0.1101,y=0.1011。F=│X│*│Y│=00.10001111。乘积符号SF=0⊕0=0,所以,X*Y=+0.10001111。用原码一位乘计算x*y的步骤如下表所示,请大家对照表格和波形图说明控制信号的作用。用原码一位乘计算x*y的步骤部分积乘数移出的数据000000+x0011011011001101右移一位000110+x00110111011010011右移一位001001+000000011101001001右移一位000100+x00110111110010001右移一位00100011111乘积高位乘积低位思考题:设x=-0.1101,y=0.1011。请画出仿真波形。实验六存储电路一、实验目的学习寄存器组设计方法和选择器定制方法。二、实验内容设计寄存器组。三、实验步骤①在文件夹“实验六”,建立文件夹“寄存器组”。把实验三的文件REG8B.bdf复制到本文件夹。②新建空白原理图文件,放置一个input,保存到文件夹“寄存器组”,文件名是REG4X8.bdf。建立工程。③定制“8位四选一选择器”。●单击工具,展开图5左上方的树形视图,找到lpm_mux(或直接在name后输入lpm_mux),然后单击按钮“ok”。图5定制选择器图5定制选择器●在图6中选择VHDL,单击NEXT。●在图7中设置选择器的输入端个数为4,数据线宽度为8,单击NEXT。●在接下来的2个图中单击NEXT,单击FINISH。然后把定制的选择器放到文件REG4X8.bdf。图图6设定选择器的文件图图7设计选择器的输入端数和数据宽度④选择菜单:Project→Add/removeFileinproject,单击“AddAll”按钮,把所需文件加到工程中,单击“ok”按钮。⑤打开REG8B.bdf,按照14页生成符号图的步骤生成符号图文件REG8B.bsf。⑥按照图8设计寄存器组,保存,文件名是REG4X8.bdf。⑦选择菜单Project中的SetasTop-LevelEntity项目,把该原理图文件REG4X8.bdf设为工程的顶层实体。编译。仿真。寄存器组引脚功能:寄存器读写操作为:G=1时CLK上升沿写入数据;G=0读出,与CLK无关。S[1..0]是寄存器单元地址:0、1、2、3。D[7..0]和Y[7..0]分别是数据输入和输出端。图图8寄存器组逻辑电路图图图9寄存器组仿真波形图9是寄存器组仿真波形。其中:40ns之前:G=1时在CLK上升沿往0/1/2/3单元写入数据。50~80ns::G=0,从0/1/2/3单元读出。读出操作与CLK无关。图10是设计数据显示格式为16进制形式。图10图10设置仿真波形显示形式实验七运算器一、实验目的学习运算器的设计方法和数据通路中控制信号的作用。二、实验内容设计运算器数据通路。三、实验步骤图1是运算器及数据通路图。按照下述步骤设计该数据通路。图1运算器图1运算器及数据通路、①建立文件夹“实验七”。②把以下7个文件复制到文件夹“实验七”:实验二的三态门:lpm_bustrio.vhd、lpm_bustrio.bsf。实验四的源代码:alu.vhd。实验六的寄存器:reg4x8.bdf、reg8b.bdf。实验六的选择器:lpm_muxo.vhd、lpm_muxo.bsf。③新建空白原理图文件,放置一个输入引脚后保存到文件夹“实验七”。建立工程。④按照p14生成符号图的步骤把第3步复制的alu.vhd、reg4x8.bdf生成符号图。⑤点击“project”前面的+号,选择所需符号放到第3步建立的原理图中。⑥按照图1连线后保存,编译、仿真。图2是仿真波形图。图2运算器电路仿真波形图2运算器电路仿真波形仿真波形图是执行以下三条机器指令的结果:MOVR1,#1功能:把立即数1写入R1。MOVR2,#3功能:把立即数3写入R2。ADDR3,R1,R2功能:(R1)+(R2)→R3。运算器电路仿真波形分析:①输入1到R1;②输入3到R2;③从R1读出,传到TA;④从R2读出,传到TB;⑤做加法运算,把结果写入R3。作业:写出执行上述3条机器指令所需的控制信号。解释120ns的波形。写出120ns执行的指令。实验八微控制器(1)一、实验目的学习CPU的工作原理,掌握CPU的控制信号的工作过程。二、实验内容①设计以下3条机器指令的微程序。MOVR1,#1功能:把立即数1写入R1。MOVR2,#3功能:把立即数3写入R2。ADDR3,R1,R2功能:(R1)+(R2)→R3。②设计微控制器,自动运行上述3条机器指令。三、实验步骤①按照实验七的数据通路分析这3条指令工作过程,设计微程序。上述3条机器指令的28位微指令如下表:U[27..19]DDINU[18..15]GSYOUTU14U13TATB12[11..8]ALUOUT运算U[7..0]下址16进制微指令00000000000000000000000000010000001000000011101000000000000001001D0002000000111110010000000000001103E40030000000000011100000000000100001C0040000000000101010000000000101002A0050000000001110001011000000110007160600000000000000000000000000000000000②把文件夹“实验七”复制粘贴,改名为“实验八”后保存。③先

温馨提示

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

评论

0/150

提交评论