八位运算器实验报告_第1页
八位运算器实验报告_第2页
八位运算器实验报告_第3页
八位运算器实验报告_第4页
八位运算器实验报告_第5页
全文预览已结束

下载本文档

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

文档简介

组成原理实验报告姓名:赵帅_专业:网络工程_学号:0121121394_日期:2014年11月25日实验一:8位运算器的设计1,设计目的:1) 学习并练习verilog语言2) 了解8位加法器实现原理2,设计目标:1) 使用verilog语言编写8为运算器并进行仿真模拟3,模块设计规格及输入输出端变量说明1)3模块设计规格及输入输出端变量说明:输入:2:0s(操作指令), LDA,LDB(输入控制), 7:0IN(输入数);输出:7:0A,B(操作数), ALU(结果寄存器), FZ(判零), FC(进位);2) 操作指令表:运算类型 S2 S1 S0功能逻辑运算 000ALU=A 001ALU=A&B 010ALU=A|B 011ALU=A移位运算 100ALU=A逻辑左移一位算术运算 101ALU=A+B 110ALU=A+1 111ALU=A-14,程序原理连接图5,程序代码Moduletest (T4,s,A,B,LDA,LDB,FZ,FC,IN,ALU);input 2:0 s;input LDA,LDB,T4;input 7:0 IN;output 7:0 A,B,ALU;output FZ,FC;reg 7:0 A,B,ALU;reg FZ,FC;/*输入模块,当clk上升沿时,如果LDA为1,则把IN的值给A,否则赋给B*/always (posedge CLK)begin if(LDA=1b1) beginA=IN; end else if(LDB=1b1) begin B=IN; endend/*计算模块,根据操作数s的不同值为A和B进行八种不同的计算,其中当A+B*进行加法计算时,把进位值赋给FC*/always (s2 or s1 or s0)begin case (s2,s1,s0) 3b000:ALU=A;/直接赋值 3b001:ALU=A&B;/A与B按位与 3b010:ALU=A|B;/A与B按位或 3b011:ALU=A;/非A 3b100:ALU=(A1);/A左移一位 3b101:FC,ALU=A+B;/ALU=A+B,FC为A+B的进位 3b110:ALU=A+1;/加一操作 3b111:ALU=A-1;/减一操作 endcaseend/*该模块的作用是判断ALU是否为,若是FZ赋为1*/always (negedge T4)begin if(

温馨提示

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

评论

0/150

提交评论