(最新版)16位定点数原码一位乘法器的设计与实现课程设计报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.3本章小结5
第四章****的实现7
4.1开发环境介绍7
4.2主要功能模块的实现7
4.3本章小结7
第五章测试及成果展示9
5.1测试环境9
5.2测试用例和结果9
5.3成果展示9
5.4本章小结9
第六章总结与展望11
参考文献12
第一章
1.1
随着计算机科学技术的发展,人们获得信息的途径更加多样,获取信息的速度更加快捷。硬件的发展允许程序员编出很多精彩的使用软件,也使得计算机更加普及。中央处理器CPU的好坏是影响和制约计算机速度和性能的关键因素。而加法器是组成CPU的的重要部件,一般运算速度的快慢就取决与每秒执行加法的次数,加法器是算术逻辑单元中的基本逻辑器件。例如:为了节省资源,减法器和硬件乘法器都可由加法器来构成。
1.
1.3
1.4
第二章 课程设计的需求分析
2.1
PC、win7、ise7.1、xc3s100e-4vq100芯片、
2.2
x、y为两个16位定点数,z为32位数,作为输出。实现16位定点数乘法。
2.3
2.3
第三章
3.1
3.2
3.3
第四章
4.1
4.2
module multi16(x,y,clock,z);
input[15:0] x,y;//定义乘数
input clock;//定义时钟clock
output[31:0] z;//定义和的输出z
reg [15:0] reg_x;//定义寄存器x
reg [15:0] reg_y;//定义寄存器y
reg [31:0] reg_z;//定义寄存器z
wire[16:0] p0,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15;//定义分别用来存储a十六位与b的每一位相与的结果
计算机科学与工程学院
课程设计报告
题目全称:16位定点数原码一位乘法器的设计与实现
课程名称:计算机组成原理
指导老师:谭浩职称:
序号
学生姓名
学号
班号
成绩
1
刘晓窗
6
2
李育桥
5
3
郭建准
4
李浩
5
李志飞
6
7
8
9
10
(注:学生姓名填写按学生对该课程设计的贡献及工作量由高到底排列,分数按排名依次递减。序号排位为“1”的学生成绩最高,排位为“10”的学生成绩最低。)
assign z=reg_z;//将寄存器z的内容赋给输出和z
always @(posedge clock)//时序逻辑语句块
begin
reg_x <=x ;//将加数x的值存到寄存器reg_x中
reg_y <=y ;//将被加数y的值存到寄存器reg_y中
reg_z<={j9[21],k9[21],k9[20],k9[19],k9[18],k9[17],k9[16],k9[15],k9[14],k9[13],k9[12],
pp pp6(reg_x,reg_y[6],p6);
pp pp7(reg_x,reg_y[7],p7);
pp pp8(reg_x,reg_y[8],p8);
pp pp9(reg_x,reg_y[9],p9);
pp pp10(reg_x,reg_y[10],p10);
pp pp11(reg_x,reg_y[11],p11);
指导老师评语:
签字:
摘 要
Verilog HDL语言具有下述描述能力:设计的行为特性、设计的数据流特性、设计的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制。本实验用Verilog HDL语言设计了全加器实现的组合乘法器,通过功能仿真,验证了结果。
关键词:乘法器,Verilog,组合逻辑,全加器
pp pp12(reg_x,reg_y[12],p12);
pp pp13(reg_x,reg_y[13],p13);
pp pp14(reg_x,reg_y[14],p14);
pp pp15(reg_x,reg_y[15],p15);
//调用全加器与半加器,通过实例化求得和的每一位与每位的进位信号
halfadder ha1(p0[1],p1[0],k1[0],j1[0]);
ABSTRACT
Text….
Keywords:
(自动插入目录)
第一章绪论1
1.1选题背景及意义1
1.2国内外研究现状1
1.3主要内容与章节安排1
1.4本章小结1
第二章课程设计的需求分析3
2.1环境需求3
2.2功能需求3
2.3性能需求3
2.3本章小结3
第三章**Байду номын сангаас*的设计5
3.1总体设计5
3.2功能模块设计5
wire[75:0] j1,k1;
wire[50:0] j2,k2;
wire[32:0] j3,k3;
wire[22:0] j4,k4;
wire[15:0] j5,k5;
wire[6:0] j6,k6;
wire[2:0] j7,k7;
wire[8:0] j8,k8;
wire[21:0] j9,k9;
k9[11],k9[10],k9[9],k9[8],k9[7],k9[6],k9[5],k9[4],k9[3],k9[2],k9[1],k9[0],k8[0],k7[0],
k6[0],k5[0],k4[0],k3[0],k2[0],k1[0],p0[0]};//分别求得的和的每一位赋给reg_z
end
//对a的16位与b的每一位相与
pp pp0(reg_x,reg_y[0],p0);
pp pp1(reg_x,reg_y[1],p1);
pp pp2(reg_x,reg_y[2],p2);
pp pp3(reg_x,reg_y[3],p3);
pp pp4(reg_x,reg_y[4],p4);
pp pp5(reg_x,reg_y[5],p5);
fulladder fa5(p0[6],p1[5],p2[4],k1[5],j1[5]);
fulladder fa6(p0[7],p1[6],p2[5],k1[6],j1[6]);
fulladder fa7(p0[8],p1[7],p2[6],k1[7],j1[7]);
fulladder fa1(p0[2],p1[1],p2[0],k1[1],j1[1]);
fulladder fa2(p0[3],p1[2],p2[1],k1[2],j1[2]);
fulladder fa3(p0[4],p1[3],p2[2],k1[3],j1[3]);
fulladder fa4(p0[5],p1[4],p2[3],k1[4],j1[4]);
第四章****的实现7
4.1开发环境介绍7
4.2主要功能模块的实现7
4.3本章小结7
第五章测试及成果展示9
5.1测试环境9
5.2测试用例和结果9
5.3成果展示9
5.4本章小结9
第六章总结与展望11
参考文献12
第一章
1.1
随着计算机科学技术的发展,人们获得信息的途径更加多样,获取信息的速度更加快捷。硬件的发展允许程序员编出很多精彩的使用软件,也使得计算机更加普及。中央处理器CPU的好坏是影响和制约计算机速度和性能的关键因素。而加法器是组成CPU的的重要部件,一般运算速度的快慢就取决与每秒执行加法的次数,加法器是算术逻辑单元中的基本逻辑器件。例如:为了节省资源,减法器和硬件乘法器都可由加法器来构成。
1.
1.3
1.4
第二章 课程设计的需求分析
2.1
PC、win7、ise7.1、xc3s100e-4vq100芯片、
2.2
x、y为两个16位定点数,z为32位数,作为输出。实现16位定点数乘法。
2.3
2.3
第三章
3.1
3.2
3.3
第四章
4.1
4.2
module multi16(x,y,clock,z);
input[15:0] x,y;//定义乘数
input clock;//定义时钟clock
output[31:0] z;//定义和的输出z
reg [15:0] reg_x;//定义寄存器x
reg [15:0] reg_y;//定义寄存器y
reg [31:0] reg_z;//定义寄存器z
wire[16:0] p0,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15;//定义分别用来存储a十六位与b的每一位相与的结果
计算机科学与工程学院
课程设计报告
题目全称:16位定点数原码一位乘法器的设计与实现
课程名称:计算机组成原理
指导老师:谭浩职称:
序号
学生姓名
学号
班号
成绩
1
刘晓窗
6
2
李育桥
5
3
郭建准
4
李浩
5
李志飞
6
7
8
9
10
(注:学生姓名填写按学生对该课程设计的贡献及工作量由高到底排列,分数按排名依次递减。序号排位为“1”的学生成绩最高,排位为“10”的学生成绩最低。)
assign z=reg_z;//将寄存器z的内容赋给输出和z
always @(posedge clock)//时序逻辑语句块
begin
reg_x <=x ;//将加数x的值存到寄存器reg_x中
reg_y <=y ;//将被加数y的值存到寄存器reg_y中
reg_z<={j9[21],k9[21],k9[20],k9[19],k9[18],k9[17],k9[16],k9[15],k9[14],k9[13],k9[12],
pp pp6(reg_x,reg_y[6],p6);
pp pp7(reg_x,reg_y[7],p7);
pp pp8(reg_x,reg_y[8],p8);
pp pp9(reg_x,reg_y[9],p9);
pp pp10(reg_x,reg_y[10],p10);
pp pp11(reg_x,reg_y[11],p11);
指导老师评语:
签字:
摘 要
Verilog HDL语言具有下述描述能力:设计的行为特性、设计的数据流特性、设计的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制。本实验用Verilog HDL语言设计了全加器实现的组合乘法器,通过功能仿真,验证了结果。
关键词:乘法器,Verilog,组合逻辑,全加器
pp pp12(reg_x,reg_y[12],p12);
pp pp13(reg_x,reg_y[13],p13);
pp pp14(reg_x,reg_y[14],p14);
pp pp15(reg_x,reg_y[15],p15);
//调用全加器与半加器,通过实例化求得和的每一位与每位的进位信号
halfadder ha1(p0[1],p1[0],k1[0],j1[0]);
ABSTRACT
Text….
Keywords:
(自动插入目录)
第一章绪论1
1.1选题背景及意义1
1.2国内外研究现状1
1.3主要内容与章节安排1
1.4本章小结1
第二章课程设计的需求分析3
2.1环境需求3
2.2功能需求3
2.3性能需求3
2.3本章小结3
第三章**Байду номын сангаас*的设计5
3.1总体设计5
3.2功能模块设计5
wire[75:0] j1,k1;
wire[50:0] j2,k2;
wire[32:0] j3,k3;
wire[22:0] j4,k4;
wire[15:0] j5,k5;
wire[6:0] j6,k6;
wire[2:0] j7,k7;
wire[8:0] j8,k8;
wire[21:0] j9,k9;
k9[11],k9[10],k9[9],k9[8],k9[7],k9[6],k9[5],k9[4],k9[3],k9[2],k9[1],k9[0],k8[0],k7[0],
k6[0],k5[0],k4[0],k3[0],k2[0],k1[0],p0[0]};//分别求得的和的每一位赋给reg_z
end
//对a的16位与b的每一位相与
pp pp0(reg_x,reg_y[0],p0);
pp pp1(reg_x,reg_y[1],p1);
pp pp2(reg_x,reg_y[2],p2);
pp pp3(reg_x,reg_y[3],p3);
pp pp4(reg_x,reg_y[4],p4);
pp pp5(reg_x,reg_y[5],p5);
fulladder fa5(p0[6],p1[5],p2[4],k1[5],j1[5]);
fulladder fa6(p0[7],p1[6],p2[5],k1[6],j1[6]);
fulladder fa7(p0[8],p1[7],p2[6],k1[7],j1[7]);
fulladder fa1(p0[2],p1[1],p2[0],k1[1],j1[1]);
fulladder fa2(p0[3],p1[2],p2[1],k1[2],j1[2]);
fulladder fa3(p0[4],p1[3],p2[2],k1[3],j1[3]);
fulladder fa4(p0[5],p1[4],p2[3],k1[4],j1[4]);