《2022年2022年计算机组成与系统结构实验报告 2.pdf》由会员分享,可在线阅读,更多相关《2022年2022年计算机组成与系统结构实验报告 2.pdf(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、面山/求/漳计算机组成原理实验报告评语:课中检查完成的题号及题数:课后完成的题号与题数:成绩:自评成绩:95实验报告实验名称:基于 Verilog 语言的运算器和存储器设计与实现日期:2015.11.2班级:10011303 学号:2013302534 姓名:杨添文、实验目的:1、了解运算器的组成结构。2、掌握运算器的工作原理。3、掌握静态随机存储器RAM工作特性及数据的读写方法。二、实验内容:1、基本运算器实验。2、静态随机存储器实验三、项目要求及分析:1、基本运算器实验:要求:验证和实现运算器的数据运算功能。这些运算除了常规的加、减、乘、除等基本的算术运算之外,还包括能进行“逻辑判断”的逻
2、辑处理能力,即“与”、“或”、“非”这样的基本逻辑运算以及数据的比较、移位等操作。分析:(1)运算器原理图如下图所示FP-OJ名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 14 页 -面山/求/漳计算机组成原理实验报告2运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A和B的数据,各部件对操作数进行何种运算由控制信号S3?-S0来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为ALU的输出。如果是算术运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。(2)ALU和外围电路的连接如下图所
3、示:(图中的小方框代表排针座)14 mA?-对U B7.B011F.O 弓乂运算类型S3S2S1S0功能AI.ULDA LOB Cn S3.,a50 07.M名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 14 页 -面山J求/漳计算机组成原理实验报告3逻辑运算0 0 0 0F=A(直通)0 0 0 1F=B(直通)0 0 1 0F=AB(FZ)0 0 1 1F=A+B(FZ)0 1 0 0F=/A(FZ)移位运算0 1 0 1F=A逻辑右移B(取低3位)位(FZ)0 1 1 0F=A逻辑左移B(取低3位)位(FZ)0 1 1 1F=A算术右移B(取低3位)位(FZ)1 0 0
4、0F=A循环右移B(取低3位)位(FZ)算术运算1 0 0 1F=A加B(FC,FZ)1 0 1 0F=A加B加Cn(FC,FZ)1 0 1 1F=A减B(FC,FZ)1 1 0 0F=A减1(FC,FZ)1 10 1F=A加1(FC,FZ)1 1 1 0(保留)1 1 1 1(保留)2、静态随机存储器实验:要求:实现静态随机存储器的读写操作,通过软件中的数据通路图来观测实验结果。分析:(1)实验原理图如下图所示:存储器数据线接至数据总线,数据总线上接有8个LED灯显示D7DO 的内容。地址线接至地址总线,地址总线上接有8个LED灯显示A7-A0的IRDWR名师资料总结-精品资料欢迎下载-名师
5、精心整理-第 3 页,共 14 页 -面山/求土漳计算机组成原理实验报告4内容,地址由地址锁存器(74LS273位于PC&AF单元)给出。数据开关(位 于IN单元)经一个三态门(74LS245连至数据总线,分时给出地址和数据。地址寄存器为8位,接入6116的地址A7-A0,6116的高三位地址A10-A8接地,所以其实际容量为256字节。(2)实验中的读写控制逻辑如下图所示:0E功能1XX不选择010读001写000写IOM用来选择是对I/O 还是对MEM进行读写操作,RD=1时为读,WR=1 时为写。四、具体实现:1、基本运算器实验:(1)按下图连接实验电路,并检查无误。图中将用户需要连接的
6、信号用圆圈标明(其它实验相同)。TS1-0-rT1rsz7-CT2时序单 転MC 単兀(2)将时序单元的状态开关置为单步档,MEM单元的编程开关置为运行档。(3)打开电源开关,如果听到有嘀报警声,说明有总线竞争现象,应立即关闭名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 14 页 -面山/求/漳计算机组成原理实验报告5电源,重新检查接线,直到错误排除。然后按动CON单 元的CLR按钮,将运算器的A B和FC FZ清零。(4)用输入开关向暂存器A置数。拨动CON单元的SD27-SD20数据开关,形成二进制数01100101(或其它数值),数据显示亮为 1,灭为 0。置LDA=1
7、LDB=0按动时序单元的TS按钮,产生一个T2上沿,则将二进制数01100101置入暂存器A中,暂存器A的值通过ALU单 元的A7-A0八位LED灯显示。(5)用输入开关向暂存器B置数。拨动CON单元的SD27-SD20数据开关,形成二进制数10100111(或其它数值)。置LDA=0 LDB=1按动时序单元的TS按钮,产生一个T2上沿,则将二进制数10100111置入暂存器B中,暂存器B的值通过ALU单 元的B7B0八位LED灯显示。(6)改变运算器的功能设置,观察运算器的输出。置ALU_B=0 LDA=0 LDB=0然后按表1-1-1置S3、S2、S1、S0和Cn的数值,并观察数据总线LE
8、D显示灯显示的结果。如置S3、S2、S1、S0为0010,运算器作逻辑与运算,置S3、S2、S1、S0为1001,运算器作加法运算。如果实验箱和PC联机操作,则可通过软件中的数据通路图来观测实验结果,方法是:打开软件,选择联机软件的“【实验】一【运算器实验】”,打开运算器实验的数据通路图,如下图所示。进行上面的手动操作,每按动一次TS按钮,数据通路图会有数据的流动,反映当前运算器所做的操作,或在软件中选择“【调试】一【单周期】”,其作用相当于将时序单元的状态开关置为单步档后按动了一次TS按钮,数据通路图也会反映当前运算器所做的操作。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共
9、14 页 -面山J求/漳计算机组成原理实验报告61XXMXKKMX|AUU_9#t.u,SQ1PCS2 爭睹开美 1 曲一j SC 51 *FZT2(2)将时序单元的状态开关置为单步档(时序单元的介绍见附录二),MEM单元的编程开关置为运行档。(3)将CON单元的IOR开关置为1(使IN单元无输出),打开电源开2、静态随机存储器实验:(1)关闭实验系统电源,按下图连接实验电路,并检查无误,图中将用户需要连接的信号用圆圈标明。*斗E 4 J*耳 E 具单元MR血肝MfPCW单元CON单元地址总垃TN单兀MR期控制总钱WR RD raMOK o扩展单元GND LDAR 名师资料总结-精品资料欢迎下
10、载-名师精心整理-第 6 页,共 14 页 -面山J求漳计算机组成原理实验报告7关,如果听到有嘀报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。给存储器的OOH 01H 02H 03H 04H地址单元中分别写入数据11H 12H 13H 14H 15Ho由前面的存储器实验原理图可以看出,由于数据和地址由同一个数据开关给出,因此数据和地址要分时写入,先写地址,具体操作步骤为:先关掉存储器的读写(WR=0 RD=0,然后利用数据开关设定地址,输出地址到数据总线(IOR=0),最后打开地址寄存器门控信号(LDAR=1,按动TS产 生T2脉冲,即将地址打入到AR中。再写数据,具
11、体操作步骤为:先关掉存储器的读写(WR=0 RD=0和地址寄存器门控信号(LDAR=0,然后利用数据开关给出要写入的数据,输出数据到数据总线(IOR=C),最后使存储器处于写状态(WR=1RD=0 IOM=0,按动TS产生T2脉冲,即将数据打入到存储器中。写存储器的流程如下图所示(以向00地址单元写入11H为例):(5)依次读出第00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。同写操作类似,也要先给出地址,然后进行读,地址的给出和前面一样,而在进行读操作时,应先关闭IN单元的输出(IOR=1),然后使存储器处于读状态(WR=0 RD=1 IOM=0),此
12、时数据总线上的数即为从存储器当前地址中读出的数据内容。读存储器的流程如下图 所示(以从00地址单元读出11H为例):数据打人MEMLDAHRD=0TOM=0IOR=0I0M=0 IOR=0/WR=0 RC=0 TOM=JOR=01 AR=1 T2丿RD WR RD IOM IOR 0 0 LDAR LDAR=0 J Tn 丿名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 14 页 -面山J求漳计算机组成原理实验报告8(6)如果实验箱和PC联机操作,则可通过软件中的数据通路图来观测实验结果,方法是:打开软件,选择联机软件的“【实验】一【存储器实验】”,打开存储器实验的数据通路图,如
13、下图所示。进行上面的手动操作,每按动一次TS按钮,数据通路图会有数据的流动,反映当前存储器所做的操作 (即使是对存储器进行读,也应按动一次TS按钮,数据通路图才会有数据流动),或在软件中选择“【调试】一【单周期】”,其作用相当于将时序单元的状态开关置为单步档后按动了一次TS按钮,数据通路图也会反映 当前存储器所做的操作。3、用Verilog语言在Modelsim上实现:源代码:module logic_operati on(parameter ISA_WIDTH=4,DATA_WIDTH=8)(in put sys_clock,in put sys_reset,in put ISA_WIDTH
14、-1:0 co ntrol,in put DATA_WIDTH-1:0 data_a,IOR=0LDAR 二1 T2=n/、WR=0即=0RD=0RD 二LI0M=0I0M=0IOR=1I0R 二1LDAR=0LDAR=0/WRRD=0IOM=0IOM 二0IOR=0LDAR=0/0名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 14 页 -面山/求/漳计算机组成原理实验报告9in put DATA_WIDTH-1:0 data_b,output regDATA_WIDTH-1:0 result);in teger i;always(posedge sys_clock or po
15、sedge sys_reset)begi n if(sys_reset=1bO)begi n result=4bO;end else begi n case(con trol)4b0000:begin for(i=0;i DATA_WIDTH;i=i+1)resulti=data_ai;end 4b0001:begin for(i=0;i DATA_WIDTH;i=i+1)resulti=data_bi;end 4b0010:begin for(i=0;i DATA_WIDTH;i=i+1)resulti=data_ai&data_bi;end 4b0011:begin for(i=0;i D
16、ATA_WIDTH;i=i+1)resulti=data_ai|data_bi;end 4b0100:begin for(i=0;i DATA_WIDTH;i=i+1)resulti=data_ai;end default:;endcase end end en dmodule 五、调试运行结果:实验结果以表格方式呈现:名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 14 页 -面山/求/漳计算机组成原理实验报告10结果表运算类型ABS3S2SIsocn结果65A70000XF二(65)FZ=(0)FC=(0)65A70001X F=(A7)FZ=(O)FC=(O)逻辑运算65A
17、70010XF=(25)FZ=(0)FC=(0)6&A70011X F=(E7)FZ=(0)FC=(O)65A70100XF(9A)存 9)FC=(0)65A70101X F=(CA)FZ=(0)FC=(0)$5A7A110F=(32)FZ=(0)卩C=(D夥位运算65A711U1F-CB2)FZ=(0)FO(1)65A7A110F=(CA)F2=(0)FC=(0)65A7U1111F=(CA)F7=(0)FC=(0)65A71000 x(o)F=(CA)F7=0)FC=(0)65A71001X F=(0C)FZ=CO)FC=(1)65A71 01O(FOD)X65A71 01O(FC=1)X
18、F=(0D)FZ=(0)FC=(1)算数运算65A710:1X F=(BE)FZ=(O)FC=(1)65A71100XF(64)理二(0)FO(O)6&A71101X F=(66)FZ=(0)FC=(0)65A71110X保留65A71111X H 保留六、思考题的解答与分析:1、基本运算器实验:(1)利用上述运算器能否实现大于8位二进制数的算术运算?如果能,需要采取什么样的措施?答:可以利用上述运算器实现大于8位的二进制算数运算,前提是,将上述两个寄存器连接起来实现一个16位的寄存器,输入与输出都可以利用这个寄存器。(2)给出一组数据,验证桶形移位器的功能。答:设计了一个8位桶形移位器,能左
19、右进行循环移位,移位的数量名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 14 页 -面山/求/漳计算机组成原理实验报告11可以在07进行变化。以下是源代码,3位选择移位数,还有一位是方向选择:module shifter1(IN,S,d,out);in put 7:0 IN;in put 2:0 S;in put d;output7:0 out;reg7:0 out;always(IN or S or d)begi n if(d)case(S)3b000:begi n out=IN;end 3b001:begi n out7=IN0;out6:0=IN7:1;end 3b01
20、0:begi n out7:6=IN1:0;out5:0=IN7:2;end 3b011:begi n out7:5=IN2:0;out4:0=IN7:3;end 3b100:begi n out7:4=IN3:0;out3:0=IN7:4;end 名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 14 页 -面山/求/漳计算机组成原理实验报告123b101:begi n out7:3v=IN4:0;out2:0v=IN7:5;end 3b110:begi n out7:2=IN5:0;out1:0=IN7:6;end 3b111:begi n out7:1=IN6:0;out0
21、=IN7;end endcase else if(d)case(S)3b000:begi n out=IN;end 3b001:begi n out0=IN7;out7:1=IN6:0;end 3b010:begi n out1:0=IN7:6;out7:2=IN5:0;end 3b011:begi n out2:0=IN7:5;out7:3=IN4:0;end 3b100:begi n 名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 14 页 -面山/求/漳计算机组成原理实验报告13out3:0v=IN7:4;out7:4v=IN3:0;end 3b101:begi n ou
22、t4:0=IN7:3;out7:5v=IN2:0;end 3b110:begi n out5:0=IN7:2;out7:6=IN1:0;end 3b111:begi n out6:0=IN7:1;out7=IN0;end endcase end en dmodule 2、静态随机存储器:(1)随机存储器和只读存储器的区别是什么,能否通过外加电路实现用随机存储器代替只读存储器?答:只读存储器就是ROM而随机存储器就是RAM只读存储器是只能读出事先所存数据的固态半导体存储器,ROM所存数据,一般是装入整机前事先写好的,整机工作过程中只能读出,而不像随机存储器那样能快速地、方便地加以改写。ROM所存
23、数据稳定,断电后所存数据也不会改变;其结构较简单,读出较方便,因而常用于存储各种固定程序和数据,就像电脑硬盘一样。随即存储器是以相同速度高速地、随机地写入和读出数据(写入速 度和读出速度可以不同)的一种半导体存储器,RAM的优点是存取速度快、读写方便,缺点是数据不能长久保持,断电后自行消失,因此主要用于计算机主存储器等要求快速存储的系统,比如,电脑的内存条就是RAM(2)动态随机存储器和静态随机存储器的区别是什么,与静态随机名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 14 页 -面山/求/漳计算机组成原理实验报告14存储器相比,动态随机存储器在电路设计需要考虑什么问题?答:
24、SRAM也称动态随机存储器,其特点是工作速度快,只要电源不撤除,写入SRAM勺信息就不会消失,不需要刷新电路,同时在读出时不破坏原来存放的信息,一经写入可多次读出,但集成度较低,功耗较大。SRAMH般用来作为计算机中的高速缓冲存储器(Cache)。DRAM是动态随机存储器(Dynamic Random Access Memory),它是利用场效应管的栅极对其衬底间的分布电容来保存信息,以存储电荷的多少,即电容端电压的高低来表示“1”和“0”。它的集成度较高,功耗也较低,但缺点是保存在DRAM中的信息场效应管栅极分布电容里的信息随着电容器的漏电而会逐渐消失,一般信息保存时间为2ms左右。为了保存
25、DRAM中的信息,必须每隔1?2ms对其刷新一次。因此,采用DRAM 的计算机必须配置动态刷新电路,防止信息丢失。DRAM一般用作计算机中的主存储器。七、所遇问题及解决方法:实验中要通过软件观察数据通路,但因为PC没有跟实验箱连接成功,软件中的任务栏操作按钮显示灰色,经过认真排查线路,最终得以解决。八、实验总结:通过了解运算器的组成与工作原理,成功掌握了运算器的运算执行过程,让我对计算机内部的核心构成产生了浓重的兴趣。实验软件对数据通路执行流程的清楚描述,将RAM的读写方式变得抽象,简单易懂。因为之前没有接触过Verilog语言,要用软件实现起来比较麻烦,目前要抓紧时间学习Verilog。九、建议:实验安排比较紧凑,理论与实践连接不上。名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 14 页 -