下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验二算术逻辑单元(ALU)的设计与实现实验目的认识算术逻辑单元的功能及意义掌握算术逻辑单元的结构与实现进一步熟练Modelsim、Vivado软件和Verilog硬件描述语言的使用理解DigilentN4DDRFPGA开发板上数码管显示原理实验原理ALU算术逻辑单元(Arithmetic/LogicUnit,ALU)是现代计算机的核心部件之一。其内部由算术和逻辑操作部件组合而成,可以实现整数加、减等算术运算和与、或等逻辑运算。一个典型的算术逻辑单元由两路N位输入、一路N位输出、一组功能选择信号和一些标志位(flag)组成。两路N位输入数据作为参与运算的两个操作数,输入到ALU中,通过改变功能选择信号,控制ALU对两操作数进行不同的算术或逻辑运算操作,并将N位的结果输出,与结果一同输出的还有运算产生的标志位,例如运算结果为零的标记信号Z(zero)与运算结果溢出的标记信号O(over)、进位标志C(CY)、符号位S(SF)等,如图2-1所示。图2-SEQ图2-\*ARABIC1ALU模块示意图在本次实验中,我们把输入和输出的数据长度定为4位,数据输入命名为A、B,数据输出为F,功能控制信号输入为opcode,进位输入为Cn,只产生结果为零的zero标志位。功能控制信号opcode的定义如表2-1所示。例如:opcode=0001,运算器实现加法运算。表2-SEQ表2-\*ARABIC1ALU控制信号定义opcodeALU运算0000MOV0001ADD0010ADDC0011SUB0100SUBB0101AND0110OR0111NOT1000XOR1001INC1010DEC数码管显示 关于N4DDR开发板上数码管的显示原理,参见前面的实验准备部分内容。实验内容基础实验。用实验调试软件验证ALU的功能,并操作分析、记录结果。图2-2ALU虚拟实验示意图(1)运算功能和控制信号①输入输出对于的开关指示灯分配如下:输入信号A:SW(4-7)B:SW(3-0)Cn:SW8opcode:SW(12-9)输出信号F:LD(12-15)标志位S:LD(3)ZLD(2)O:LD(1)C:LD(0)②各种运算对应的控制信号及功能,如下表。表2-2ALU运算功能和控制信号定义运算指令运算功能运算控制信号opcodeM3M2M1M0MOVF=A0000ADDF=A+B0001SUBF=A-B0011INCF=A+11001DECF=A-11010ANDF=A∧B0101ORF=A∨B0110NOTF=0111XORF=A⊕B1000ADDCF=A+B+进位C00010SUBBF=A-B-借位C00100(2)加法运算结果的特征标志设置opcode(M3~M0)为加法运算,按下表步骤操作,观察加法运算的结果,填入下表,并写出计算数和结果的真值。ABCnM3~M0FFLAG运算数和运算结果的真值SZOC视为无符号数视为补码①10000001—1001100110008+1=9(﹣8)+1=﹣7②11011100—1001100113+12=25(-3)+(-4)=(-7)③01000010—011000004+2=64+2=6④00000000—000001000+0=00+0=0⑤11110001—0000010115+1=16(-1)+1=0⑥00110101—100010103+5=83+5=8⑦11001011—0111001112+11=23(-4)+(-3)=(-7)⑧11000101—0001000112+5=17(-4)+5=1⑨00111011—111010003+11=143+(-3)=0⑩10001000—000001118+8=160+0=0提示:为方便分析运算结果,可以事先列出负数的4位补码与真值的对应关系:10001001101010111100110111101111-8-7-6-5-4-3-2-1实验现象分析:(1)符号标志S就是运算结果的___最高位________(最高位/最低位)。(2)零标志Z的生成和__F______(F/C/F及C)有关。(3)溢出标志OF和进位标志__没有______(有/没有)直接的联系。(4)对照标志位和真值,可以看出溢出标志OF是按照___补码_____(无符号数/补码)的运算结果设置的;进位标志CF是按照__无符号数______(无符号数/补码)运算的结果设置的。也就是说,如果运算数是无符号数,运算结果是否溢出是由__C___(C/O)反映的;如果运算数是有符号补码数,运算结果是否溢出是由___O__(C/O)反映的。(5)4位补码能表示数值的范围是___-8~7__________,4位无符号数能表示数值的范围是____0~15___________。(6)运算器电路是否“知道”运算数是有符号数还是无符号数?_不知道________(3)减法运算减法运算是转换为加法计算的。设置M3~M0为减法运算,注意观察B操作数、Cn和FLAG的C(进位)标志位。ABCnM3~M0FC实验现象分析①00100001—000100011_有___(有/无)借位②00010010—11110_无___(有/无)借位实验现象分析:减法运算时,F=____A-B___________②C标志与减法运算有没有产生借位____有____(有/没有)关系,没有产生借位时,CF=__0___;减法运算产生借位时,CF=__1___。(4)带借位的减法运算设置M3~M0为带借位的减法运算,注意观察F和Ci的关系。ABCnM3~M0FC实验现象分析①010100111001000101带借位②01010011000011不带借位实验现象分析:带借位的得到正确结果,不带借位的结果不正确。(5)加1和减1运算ABCnM3~M0FFLAG(SZOC)①INC00100101—001100110000①INC00101010—00110000②DEC00101010—000100010001②DEC00100101—00010001实验现象分析:加1运算时,B对结果__无___(有/没有)影响,F=__A+1______。减1运算时,F=__B-1______。2.提高实验。(1)分别用Modelsim、Vivado、Verilog硬件描述语言实现一个4位、32位的运算器ALU,并进行仿真测试。(2)在ALU中增加“同或”、“增4”功能,并进行测试。(3)使用vivado形成bit文件,并将Nexys4DDR_Lab2.bit文件下载至FPGA硬件板(4)打开虚拟面板构图文件Lab_alu.vpl,验证增加了两种功能的运算器能否
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 软件开发过程管理
- 2024年中国海藻洗颜泥市场调查研究报告
- 2024年中国波纹管带市场调查研究报告
- 高校共青团新媒体培训内容
- 商场员工培训课程设计
- 护理人员融洽相处
- 大学教材课程设计与标准
- plc课程设计不会做
- 大班加减法课程设计
- 学校心理社团课程设计
- 第七届重庆市青少年科学素养大赛考试题库(含答案)
- 河南省郑州市外国语中学2024-2025学年上学期期中考试九年级数学试卷
- 电商红枣规划
- 商业街区装修施工突发应急预案
- 水利信息化数据中心及软件系统单元工程质量验收评定表、检查记录
- 骨科疼痛的护理与评估
- 公司股份代持协议书范本4篇
- 教科版四年级科学上册《3.3-用橡皮筋驱动小车》说课稿
- 北京市海淀区2023-2024学年高二上学期期末考试 英语 含答案
- 2024福建福州人才发展集团代理招聘109+人高频难、易错点500题模拟试题附带答案详解
- 国开2024年秋《大数据技术概论》形考作业1-4答案
评论
0/150
提交评论