教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 工程科技> 电子/电路> 8位ALU(算术逻辑单元)verilog语言

8位ALU(算术逻辑单元)verilog语言

上传者:马晓民
|
上传时间:2015-04-26
|
次下载

8位ALU(算术逻辑单元)verilog语言

大连理工大学城市学院 FPGA实验报告

实验内容:8位ALU

系别班级:电子1004班

学号:

姓名:

日期:2013.4.14

一.设计概述:

一种基于可编程逻辑器件FPGA和硬件描述语言的8位的ALU的设计方法。该ALU采用层次设计方法,有寄存器模块、控制模块和显示模块组成,能实现8位无符号数的取值、加减和4种逻辑运算(与、或、异或、同或)。该ALU在QuartusII软件环境下进行功能仿真,通过DE2验证。

二. 设计功能:

1、该处理器的数据宽度为8bit,可以实现算术加法、减法、逻辑与、逻辑或、逻辑非、逻辑与非、逻辑或非和逻辑异或等8种运算。

2、用选择端opcode [2:0] 选择8种运算,2个操作数分别是a_r [7:0]和b_r[7:0],运算结果是alu_out[7:0];并定义选择如下。

内容需要下载文档才能查看

3、使用DE2板上的3个拨码开关设置当前ALU的运算功能,再由8个拨码开关给定数据A和数据B,由一个按键key手动提供脉冲。

三. 设计方案:

本设计共有5个模块。

1)脉冲输出器(key手动脉冲),计数依次产生4个脉冲到各个部件,第一个脉冲启动信号。

2)寄存器A,第二个脉冲来时锁存数据A,并在数码管上显示。 3)寄存器B,第三个脉冲来时锁存数据B,并在数码管上显示。 4)8位ALU,第四个脉冲来时进行运算,并锁存结果alu_out。 5)结果显示器,将结果显示通过DE2上的数码管显示。

四. 程序分析:

主程序模块:

module alu8(clk,clk_r,rst,a,b,alu_out,opcode,sw_ab,HEX1, HEX0, HEX7, HEX6, HEX5, HEX4);

input clk,rst,clk_r; input [7:0] sw_ab; input [2:0] opcode;

output [6:0] HEX1, HEX0, HEX7, HEX6, HEX5, HEX4;

output [7:0] a;

output [7:0] b;

output [7:0] alu_out;

rega U1(.clk(clk),.rst(rst),.sw_ab(sw_ab),.a_r(a),.clk_r(clk_r),.HEX7(HEX7),. HEX6(HEX6));

regb U2(.clk(clk),.rst(rst),.sw_ab(sw_ab),.b_r(b),.clk_r(clk_r),.HEX5(HEX5),. HEX4(HEX4));

alur U3(.clk(clk),.rst(rst),.a_r(a),.b_r(b),.alu_out(alu_out),.opcode(opcode)); digital U4(.clk_r(clk_r),.rst(rst),.alu_out(alu_out),.HEX1(HEX1),. HEX0(HEX0)); endmodule

第一位数A模块:

module rega (clk,clk_r,rst,sw_ab,a_r,HEX7,HEX6);

input [7:0] sw_ab;

input clk,clk_r,rst;

output [7:0] a_r;

reg [7:0] a_r;

output reg[6:0] HEX7,HEX6;

reg [3:0] cnt;

always @(posedge clk or negedge rst)

if(!rst) cnt<=1'd0;

else if(cnt==5) cnt<=1'd0;

else cnt<=cnt+1'd1;

always @(posedge clk or negedge rst)

if(!rst) a_r=0;

else if(cnt==1) a_r=sw_ab;

else a_r=a_r;

parameter seg0=7'b1000000,

seg1=7'b1111001,seg2=7'b0100100,seg3=7'b0110000,seg4=7'b0011001,seg5=7'b0010010,seg6=7'b0000010,

seg7=7'b1111000,seg8=7'b0000000,seg9=7'b0010000,sega=7'b0001000,segb=7'b0000011,segc=7'b1000110,

segd=7'b0100001,sege=7'b0000110,segf=7'b0001110;

always @(posedge clk_r)

case(a_r[3:0])

4'h0: HEX6[6:0]=seg0;

4'h1: HEX6[6:0]=seg1;

4'h2: HEX6[6:0]=seg2;

4'h3: HEX6[6:0]=seg3;

4'h4: HEX6[6:0]=seg4;

4'h5: HEX6[6:0]=seg5;

4'h6: HEX6[6:0]=seg6;

4'h7: HEX6[6:0]=seg7;

4'h8: HEX6[6:0]=seg8;

4'h9: HEX6[6:0]=seg9;

4'ha: HEX6[6:0]=sega;

4'hb: HEX6[6:0]=segb;

4'hc: HEX6[6:0]=segc;

4'hd: HEX6[6:0]=segd;

4'he: HEX6[6:0]=sege;

4'hf: HEX6[6:0]=segf;

default:HEX6[6:0]=seg0;

endcase

always @(posedge clk_r)

case(a_r[7:4])

4'h0: HEX7[6:0]=seg0;

4'h1: HEX7[6:0]=seg1;

4'h2: HEX7[6:0]=seg2;

4'h3: HEX7[6:0]=seg3;

4'h4: HEX7[6:0]=seg4;

4'h5: HEX7[6:0]=seg5;

4'h6: HEX7[6:0]=seg6;

4'h7: HEX7[6:0]=seg7;

4'h8: HEX7[6:0]=seg8;

4'h9: HEX7[6:0]=seg9;

4'ha: HEX7[6:0]=sega;

4'hb: HEX7[6:0]=segb;

4'hc: HEX7[6:0]=segc;

4'hd: HEX7[6:0]=segd;

4'he: HEX7[6:0]=sege;

4'hf: HEX7[6:0]=segf;

default:HEX7[6:0]=seg0;

endcase

endmodule

第二位数B模块:

module regb (clk,clk_r,rst,sw_ab,b_r,HEX5,HEX4); input [7:0] sw_ab;

input clk,clk_r,rst;

output [7:0] b_r;

reg [7:0] b_r;

output reg[6:0] HEX5,HEX4;

reg [3:0] cnt;

always @(posedge clk or negedge rst)

if(!rst) cnt<=1'd0;

else if(cnt==5) cnt<=1'd0;

else cnt<=cnt+1'd1;

always @(posedge clk or negedge rst)

if(!rst) b_r=0;

else if(cnt==2) b_r=sw_ab;

else b_r=b_r;

parameter seg0=7'b1000000,

seg1=7'b1111001,

seg2=7'b0100100,seg3=7'b0110000,seg4=7'b0011001,seg5=7'b0010010,seg6=7'b0000010,

seg7=7'b1111000,seg8=7'b0000000,seg9=7'b0010000,sega=7'b0001000,segb=7'b0000011,segc=7'b1000110,

segd=7'b0100001,sege=7'b0000110,segf=7'b0001110;

always @(posedge clk_r)

case(b_r[3:0])

4'h0: HEX4[6:0]=seg0;

4'h1: HEX4[6:0]=seg1;

4'h2: HEX4[6:0]=seg2;

4'h3: HEX4[6:0]=seg3;

4'h4: HEX4[6:0]=seg4;

4'h5: HEX4[6:0]=seg5;

4'h6: HEX4[6:0]=seg6;

4'h7: HEX4[6:0]=seg7;

4'h8: HEX4[6:0]=seg8;

4'h9: HEX4[6:0]=seg9;

4'ha: HEX4[6:0]=sega;

4'hb: HEX4[6:0]=segb;

4'hc: HEX4[6:0]=segc;

4'hd: HEX4[6:0]=segd;

4'he: HEX4[6:0]=sege;

4'hf: HEX4[6:0]=segf;

default:HEX4[6:0]=seg0;

endcase

always @(posedge clk_r)

case(b_r[7:4])

4'h0: HEX5[6:0]=seg0;

4'h1: HEX5[6:0]=seg1;

4'h2: HEX5[6:0]=seg2;

4'h3: HEX5[6:0]=seg3;

4'h4: HEX5[6:0]=seg4;

4'h5: HEX5[6:0]=seg5;

4'h6: HEX5[6:0]=seg6;

4'h7: HEX5[6:0]=seg7;

4'h8: HEX5[6:0]=seg8;

4'h9: HEX5[6:0]=seg9;

4'ha: HEX5[6:0]=sega;

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

下载文档

热门试卷

2016年四川省内江市中考化学试卷
广西钦州市高新区2017届高三11月月考政治试卷
浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
广西钦州市钦州港区2017届高三11月月考政治试卷
广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
广西钦州市高新区2016-2017学年高二11月月考政治试卷
广西钦州市高新区2016-2017学年高一11月月考政治试卷
山东省滨州市三校2017届第一学期阶段测试初三英语试题
四川省成都七中2017届高三一诊模拟考试文科综合试卷
2017届普通高等学校招生全国统一考试模拟试题(附答案)
重庆市永川中学高2017级上期12月月考语文试题
江西宜春三中2017届高三第一学期第二次月考文科综合试题
内蒙古赤峰二中2017届高三上学期第三次月考英语试题
2017年六年级(上)数学期末考试卷
2017人教版小学英语三年级上期末笔试题
江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
四川省简阳市阳安中学2016年12月高二月考英语试卷
四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
安徽省滁州中学2016—2017学年度第一学期12月月考​高三英语试卷
山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷

网友关注

临床分析耳鼻喉患者在术中突发昏厥的常见原因
耳鼻咽喉科学专业优秀论文 抗生素并用口服类固醇及类固醇鼻用喷剂对于小儿持续积液中耳炎的疗效
[最新]耳鼻咽喉头颈外科医学学温习资料_1670790476
消费者心理与行为 笔记
【精品】中医医院皮肤科建设与管理指南(试行)59
皮肤病与性病学教学大纲
慢性皮炎注意事项
皮肤病与性病学复习要点
2009年全国卫生专业资格考试耳鼻咽喉科学专业实践能力
聚合酶链反应检测血管炎性皮肤病皮损中分枝杆菌16SrRNA基因和结核
犬猫皮肤病
鼻内镜手术治疗鼻阻塞及治疗前后鼻阻力的比较
从毒论治皮肤病
局部糖皮质激素在耳鼻咽喉科疾病术后的疗效观察
中国香港和内地高校大学生心理健康教育模式的比较研究——以香港城市大学和电子科技大学为例
比较鼻科动力系统与低温等离子射频消融治疗腺样体肥大的疗效 comparison of nasal dynamical system and low temperature plasma radiofrequency ablation for adenoidal hypertrophy
耳鼻咽喉科学专业优秀论文 多层螺旋ct及其图像后处理技术在喉癌及下咽癌诊断中的应用
对山东_河南招飞改革12年间耳鼻咽喉及口腔科淘汰情况的思考
不同程度矢状向和垂直向不调的安氏Ⅱ1类错患者的矫治效果
徐博士看皮肤病
成人骨性Ⅲ类错不同垂直骨面型下颌骨及颏部的比较
学生真菌感染性皮肤病的防治
电子鼻咽喉镜活检手术的围手术期护理
耳鼻咽喉科学专业优秀论文 xiap及caspase-3在年龄相关性听力减退c57bl6j小鼠初级听皮层中的表达及其意义
分泌性珠蛋白在慢性鼻-鼻窦炎中的表达及表达调控的研究.pdf
鼻内镜下鼻中隔手术的优势
教育心理学第一章绪论
经鼻内镜下鼻道开窗术治疗上颌窦囊肿25例报告
13[1].第12章__耳鼻咽喉的应用解剖及生理
口腔科考试题

网友关注视频

冀教版英语五年级下册第二课课程解读
8 随形想象_第一课时(二等奖)(沪教版二年级上册)_T3786594
【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,安徽省
外研版英语三起5年级下册(14版)Module3 Unit2
青岛版教材五年级下册第四单元(走进军营——方向与位置)用数对确定位置(一等奖)
冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣.mp4
二年级下册数学第二课
北师大版数学四年级下册第三单元第四节街心广场
苏科版八年级数学下册7.2《统计图的选用》
沪教版八年级下册数学练习册21.3(2)分式方程P15
8.练习八_第一课时(特等奖)(苏教版三年级上册)_T142692
第五单元 民族艺术的瑰宝_16. 形形色色的民族乐器_第一课时(岭南版六年级上册)_T1406126
外研版英语七年级下册module3 unit2第二课时
第4章 幂函数、指数函数和对数函数(下)_六 指数方程和对数方程_4.7 简单的指数方程_第一课时(沪教版高一下册)_T1566237
冀教版英语三年级下册第二课
冀教版小学英语四年级下册Lesson2授课视频
【部编】人教版语文七年级下册《过松源晨炊漆公店(其五)》优质课教学视频+PPT课件+教案,江苏省
冀教版小学数学二年级下册第二单元《有余数除法的整理与复习》
沪教版牛津小学英语(深圳用) 四年级下册 Unit 8
【获奖】科粤版初三九年级化学下册第七章7.3浓稀的表示
北师大版数学四年级下册3.4包装
冀教版小学数学二年级下册第二单元《有余数除法的简单应用》
外研版英语三起5年级下册(14版)Module3 Unit1
沪教版牛津小学英语(深圳用) 四年级下册 Unit 2
冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣
外研版英语七年级下册module1unit3名词性物主代词讲解
第8课 对称剪纸_第一课时(二等奖)(沪书画版二年级上册)_T3784187
《小学数学二年级下册》第二单元测试题讲解
外研版英语三起6年级下册(14版)Module3 Unit2
三年级英语单词记忆下册(沪教版)第一二单元复习