计组实验报告_第1页
计组实验报告_第2页
计组实验报告_第3页
计组实验报告_第4页
计组实验报告_第5页
已阅读5页,还剩4页未读, 继续免费阅读

下载本文档

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

文档简介

#计算机组成原理

实验报告实验1:VERILOG设计基础专业班级:14级计算机二班学号:14048001姓名:杨娜学号:14048003姓名:周蓉实验地点:理工楼901实验时间:2016年5月14日

实验十VGA显示控制器的设计一、实验目的1、学习VERILOG的基本语法和编程规则2、掌握通用寄存器等常用基本数字模块的VERILOG描述和基本设计方法3、理解带使能控制和异步清零的8位寄存器的设计原理4、掌握使用VERILOG设计和验证带使能控制和异步清零的8位寄存器的方法5、掌握移位寄存器的设计方法二、实验任务1、设计一个带使能控制和异步清零的8位寄存器REG8X,实现8位输入的锁存,在时钟的上升沿处得到一个8位的输出和一个8位的反向输出,将结果显示在发光二极管。模块的端口描述如下:端口名端口方向端口位宽端口功能Resetn(cclr)in1输入清零信号,低电平时有效,有效时输出Q立即变为0Enable(rl)in1输入使能信号,高电平有效,有效时芯片工作Controlin1输出使能信号,高电平有效,有效时信号输出Clockin1输入时钟信号,正跳变(上升沿)有效Din8输入数据源DQout8输出寄存器值Q,当Resetn为咼电平且Clock发生正跳变时,Q=D;当Resetn信号为低电平时Q的值立即变为0。Qbout8输出信号Qb,其值为Q的反模块的参考物理结构如下:RRRRD7D0DRRRRD7D0D6Di带使能控制和异步清零的8位寄存器模块的使用注意事项数据源D(7..0)一直加在寄存器的数据输入端;周期性的时钟信号Clock一直加在寄存器的时钟输入端使能信号Enable控制寄存器是否接受数据。当Enable='0'时,寄存器不接受数据,保持原来的状态不变;当Enable='1'时,在时钟信号Clock正跳变时,寄存器接受并保存当时D(7..0)的数据;4.本寄存器其它方面的功能与上述的寄存器相同。2、设计一个有左、右移位功能的8位寄存器REGSHIFT8,并仿真验证。模块的端口描述如下:端口名端口方向端口位宽端口功能ResetnSw17in1输入清零信号,低电平时有效,此时输出Q立即变为0ClockKey0in1移位时钟信号,正跳变(上升沿)有效ModeSw1615in2工作模式控制信号:01左移位,10右移位,00或11时不移位Q=D。Din8输入数据源DQout8输出寄存器值Q,当Resetn为低电平时Q的

值立即变为0;当Resetn为高电平且Clock发生正跳变时,接收D的值。LinSw14in1输入信号,其值为左移位的移入信号。Loutout1输出信号,其值为左移位的移出信号。RinSw13in1输入信号,其值为右移位的移入信号。Routout1输出信号,其值为右移位的移出信号。三、实验内容1、通过输入数据先进行计算,并通过实验进行验证REG8X。⑴、将清零信号Resetn(sw17)设为0,将输入信号D(sw7~sw0)设为10101010,观察输出信号Q(Iedr7~ledr0)和Qb(Iedg7~ledg0),观察并记录输出。(2)、将清零信号Resetn(sw17)设为1,在时钟信号处输入一个上升沿(按下key0),观察并记录输出。⑶、将输入信号D(sw7~sw0)设为01010101,观察并记录输出。、在时钟信号处输入一个上升沿(按下key0),观察并记录输出。、自行完善设计表格,观察并记录测试输出。实验数据表清零信号Reset使能信号Enable输入信号D(二进制)时钟信号Clock输出信号Q(二进制)输出信号Qb(二进制)0010101010100000000000000001010101010上升沿10101010101010101110101010上升沿10101010010101011101010101101010101000000001101010101上升沿01010101101010101010101010上升沿10101010101010100010101010上升沿00000000111111111011110000上升沿11110000111100001111110000上升沿11110000000011111111100000上升沿11100000000111112、通过输入数据先进行计算,并通过实验进行验证REGSHIFT8。、测试清零信号Resetn、测试移位功能、测试寄存功能、自行设计表格观察并记录测试输出。实验数据表複式信号清霍信号Reset谕沢信号。H二进移人信号Lin移人信号Rin时钟信号Clack输出信号Qb(二进制)001'000001100:0;上升沿100000110011'00G0Q1101-:O上升沿bobOLLOQ101'000001id:o-1上升沿00000011111bowno11上升沿01000001100:1上升沿Boooono101!00G0Q1101-:O上升沿000001100110010011(5-0-'1上升沿01001100-101ooiooiio1;Q上升沿00010011101OOLOOllO1工•1boooaooo1100100110Q上升沿boioono三、实验仪器及设备:1、PC机2、Quartusll9.03、DE2-704、显示器四、实验步骤1、编写VERILOG代码2、功能仿真进行分析与综合,排除语法上的错误建立波形仿真文件,输入激励生成功能仿真网表进行功能仿真,观察输出结果3、选择器件DE2_115开发板的使用者请选择CYCLONEIV4CE1154、绑定管脚5、下载验证DE2_115开发板的下载:使用USB-Blaster进行下载代码如下:1、带使能控制和异步清零的8位寄存器modulelab1_Preg#(parameterWEISHU=8)(inputrL,inputclk,inputcclr,inputcontrol,input[WEISHU-1:0]d,output[WEISHU-1:0]dout);wire[WEISHU-1:0]w_0;wire[WEISHU-1:0]w_1;wire[WEISHU-1:0]w_2;wirew_3;reg[WEISHU-1:0]w_dff;assignw_2=w_0|w_1;assigndout=(control)?(w_dff):{(WEISHU-1){1'bz}};always@(posedgeclkornegedgecclr)beginif(!cclr)w_dff<=0;elsew_dff<=w_2;endassignw_0=d&{(WEISHU-1){rL}};assignw_1={(WEISHU-1){w_3}}&w_dff;assignw_3=~rL;endmodule2、有左、右移位功能的8位寄存器modulejicunqi(reset,clk,mode,d,q,lin,lout,rin,rout);inputreset;inputclk;input[1:0]mode;input[7:0]d;inputlin;inputrin;output[7:0]q;outputlout;outputrout;wire[1:0]mode;reg[2:0]countl=3'b000;reg[2:0]countr=3'b000;reg[7:0]q,lout,rout;always@(posedgeclkornegedgereset)beginif(!reset)q<=0;elsebegincase(mode)2'b01:if(lin)beginif(countl>3'b111)countl=3'b111;countl=countl+3'b001;q=d<<countl;lout<=q[7];end2'b10:if(rin)beginif(countr>3'b111)countr=3'b111;countr=countr+3'b001;q=d>>countr;rout<=q[7];enddefault:q<=d;endcaseendendendmodule引脚分配如下:1、带使能控制和异步清零的8位寄存器set_location_assignmentPIN_Y23-tocclrset_location_assignmentPIN_M23-toclkset_location_assignmentPIN_Y24-tocontrolset_location_assignmentPIN_AB26-tod[7]set_location_assignmentPIN_AD26-tod[6]set_location_assignmentPIN_AC26-tod[5]set_location_assignmentPIN_AB27-tod[4]set_location_assignmentPIN_AD27-tod[3]set_location_assignmentPIN_AC27-tod[2]set_location_assignmentPIN_AC28-tod[1]set_location_assignmentPIN_AB28-tod[0]set_location_assignmentPIN_H19-todout[7]set_location_assignmentPIN_J19-todout[6]set_location_assignmentPIN_E18-todout[5]set_location_assignmentPIN_F18-todout[4]set_location_assignmentPIN_F21-todout[3]set_location_assignmentPIN_E19-todout[2]set_location_assignmentPIN_F19-todout[1]set_location_assignmentPIN_G19-todout[0]set_location_assignmentPIN_G21-toqb[7]set_location_assignmentPIN_G22-toqb[6]set_location_assignmentPIN_G20-toqb[5]set_location_assignmentPIN_H21-toqb[4]set_location_assignmentPIN_E24-toqb[3]set_location_assignmentPIN_E25-toqb[2]set_location_assignmentPIN_E22-toqb[1]set_location_assignmentPIN_E21-toqb[0]set_location_assignmentPIN_AA22-torL2、有左、右移位功能的8位寄存器set_location_assignmentPIN_M23-toclkset_location_assignmentPIN_AB26-tod[7]set_location_assignmentPIN_AD26-tod[6]set_location_assignmentPIN_AC26-tod[5]set_location_assignmentPIN_AB27-tod[4]set_location_assignmentPIN_AD27-tod[3]set_location_assignmentPIN_AC27-tod[2]set_location_assignmentPIN_AC28-tod[1]set_location_assignmentPIN_AB28-tod[0]set_location_assignmentPIN_AA23-tolinset_location_assignmentPIN_Y24-tomode[1]set_location_assignmentPIN_AA22-tomode[0]set_location_assignmentPIN_AA24-torinset_location_assignmentPIN_Y23-toresetset_location_assignmentPIN_H19-tolout[7]set_location_assignmentPIN_J19-tolout[6]set_location_assignmentPIN_E18-tolout[5]set_location_assignmentPIN_F18-tolout[4]set_location_assignmentPIN_F21-tolout[3]set_location_assignmentPIN_E19-tolout[2]set_location_assignmentPIN_F19-tolout[1]set_location_assignmentPIN_G19-tolout[0]set_location_assignmentPIN_G21-torout[7]set_location_assignmentPIN_G22-torout[6]set_location_assignmentPIN_G20-torout[5]set_location_assignmentPIN_H21-torout[4]set_location_assignmentPIN_E24-torout[3]set_location_assignmentPIN_E25-torout[2]set_location_assignmentPIN_E22-torout[1]set_location_assignmentPIN_E21-torout[0]set_location_assignmentPIN_J17-toq[0]set_location_assignmentPIN_G17-toq[1]set_location_assignmentPIN_J15-toq[2]set_location_assignmentPIN_H16-toq[3]set_location_assignmentPIN_J16-toq[4]set_location_assignmentPIN_H17-toq[5]set_location_assignmentPIN_F15-toq[6]set_location_assignmentPIN_G15-toq[7]五、实验心得从数字电路到计算机组成原理,做了这么多次实验,我觉得实验过程中最重要的就是细心。按部就班,平心静气地按照要求来做一般不会有什么大问题,但一旦急躁就很容易出错。还有一方面,千万不要为了贪一点小方便就投机取巧。对基本原理的掌握是顺利做好实验的基础,在做第二个实验的时候,因为代码设计问题,导致在进行移位的时候出现时钟信号一次,移位只能移一次的情况,所以在代码设计阶段,我们还是应该考虑全面,形成完整的逻辑思考结构,完成更加全面的功能。六、实验结论带使能控制和异步清零的8位寄存器,清零信号为高电平,并且使能信号cl也为高电平时,寄存器在时钟信号clk的上升沿出输出。有左右移位功能的8位寄存器

温馨提示

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

评论

0/150

提交评论