计算机组成原理阵列乘法器课程设计报告

合集下载

计算机组成原理实验报告

计算机组成原理实验报告
实验七_八_cpu实验59
1
1.1
1、对容错技术有初步了解,理解掌握海明码的原理
2、掌握海明码的编码以及校验方法
1.2
海明码是由Richard Hamming于1950年提出的,目前是被广泛采用的很有效的校验编码。它的特点是只要增加少数几个校验位,就能检测出多位出错,并能自动纠错。
Hamming码的实现原理是在数据中加入几个校验位,将数据代码的码距比较均匀的拉大,并把数据的每一个二进制位分配在几个奇偶校验组中。当某一位出错后,就会引起有关的几个校验位的值发生变化。这不但可以发现出错,还能指出是哪一位出错,为进一步自动纠错提供了依据。
}
for(j=0;j<16;j++)
for(i=0;i<128;i++)
{
for(z=0;z<7;z++)
{
if(s[0][j][z]!=d[i][z])
break;
}
if(z==7)
{
for(m=0;m<7;m++)
d[i][m]=0;
break;
}
}
m=1;
re:for(i=0;i<128;i++)
8位数据
1010 1100
10110110
0110 1011

一种求补级阵列乘法器设计陈权刘伏龙陈琳琳_1

一种求补级阵列乘法器设计陈权刘伏龙陈琳琳_1

一种求补级阵列乘法器设计陈权刘伏龙陈琳琳

发布时间:2021-07-29T09:05:33.037Z 来源:《基层建设》2021年第14期作者:陈权刘伏龙陈琳琳

[导读] 乘法器作为乘法、除法、乘方和开方等模拟运算的主要基本单元,一般采用“串行移位”和“并行加法”相结合的方法广东科技学院机电工程学院广东东莞 523083

乘法器作为乘法、除法、乘方和开方等模拟运算的主要基本单元,一般采用“串行移位”和“并行加法”相结合的方法,虽使用器件少,但速度慢。本文介绍了一种求补级阵列乘法器,采用标准加法单元构成乘法器,利用多个一位全加器实现乘法运算,设计求补电路单元用于求补。Multisim仿真结果表明设计的乘法器能够正确运算。

1引言

乘法运算电路的设计就属于中规模集成电路应用,它主要的实现是靠全加器、唯一寄存器、七段译码显示器、振荡电路共同作用来实现的。中规模集成电路及其应用,本身就是一种完美的逻辑设计作品。由于他们所具有的通用性、灵活性及多功能性、使之除完成基本功能之外、还能以他们为基本器件所组成各类逻辑部件和数字系统,有效地实现各种逻辑功能[1]。本论文旨在设计一个补码 3×3 的阵列乘法器,输入端为两个4位带符号的补码,输出为一个 7 位的补码,其中最高位均为符号位。

2 系统总体设计

求补级阵列乘法器系统设计包括四部分[2]。设计一个3*3的带求补阵列乘法器总共需要四个部分,其中包括一个1位全加器,一个3位求补电路,一个6位求补器以及一个3*3无符号位乘法器。从输入端开始输入两个4位带符号位的原码,其中最高位为符号位,然后分别经过两个n位算前求补器进行求补,然后同时到达此乘法器的核心部分,n位乘n位不带符号的乘法阵列,通过运算后对得出的结果进行输出。

组成原理 阵列乘法器设计实验

组成原理 阵列乘法器设计实验

组成原理阵列乘法器设计实验

《计算机组成原理》

专业,

学号,

学生姓名,

实验日期,

实验三

一、实验名称,阵列乘法器设计实验

二、实验目的,

1. 掌握乘法器的原理及其设计方法。

2. 熟悉CPLD 应用设计及EDA 软件的使用。

三、实验设备,

PC 机一台,TD-CMA 实验系统一套,排线若干。

四、实验内容,

1. 阵列乘法器的工作原理,掌握阵列乘法器的设计方法.

2.正确将电路原理图下载到试验箱中.

3.正确通过实验箱连线实现4位二进制数的相乘并得到正确结果

五、实验原理,

硬件乘法器常规的设计是采用“串行移位”和“并行加法”相结合的方法,这种方法并不需要很多的器件,然而“加法-移位”的方法毕竟太慢。随着大规模集成电路的发展,采用高速的单元阵列乘法器,无论从计算机的计算速度,还是从提高计算效率,都是十分必要的。阵列乘法器分带符号和不带符号的阵列乘法器,本次实验只讨论不带符号阵列乘法。高速组合阵列乘法器,采用标准加法单元构成乘

法器,即利用多个一位全加器(FA)实现乘法运算。对于一个4 位二进制数相乘,有如下算式:

这个4 × 4 阵列乘法器的原理如图1-3-1 所示。

FA(全加器)的斜线方向为进位输出,竖线方向为和输出。图中阵列的最后一行构成了一个串行进位加法器。由于FA 一级是无需考虑进位的,它的进位被暂时保留下来不往前传递,因此同一极中任意一位FA 加法器的进位输出与和输出几乎是同时形成的,与“串行移位”相比可大大减少同级间的进位传递延迟,所以送往最后一行串行加法器的输入延迟仅与FA 的级数(行数)有关,即与乘数位数有关。本实验用CPLD 来设计一个4×4 位加法器,且全部采用原理图方式实现。

阵列乘法器

阵列乘法器
算后经求补级输出并加上乘积 符号位1,则原码乘积值为 111000011。
换算成二进制数真值是
x·y=( -11000011)2=(-195)10 十进制数验证:x×y =
15× (-13) = -195相等。
5位×5位阵列乘法器的逻辑电路图演示
这种乘法器要实现n位
×n位时,需要n(n-1)个
全加器和n2个“与”门。
该乘法器的总的乘法时 间可以估算如下:
令Ta为“与门”的 传输延迟时间,Tf为全加 器(FA)的进位传输延迟 时间,假定用2级“与非” 逻辑来实现FA的进位链 功能,那么我们就有:
Ta = Tf = 2T 从演示中可知,最坏 情况下延迟途径,即是沿
上述过程说明了在m位乘n位不带符号整数的阵列乘法 中,“加法—移位”操作的被加数矩阵。每一个部分乘积项(位
积)aibj叫做一个被加数。这m×n个被加数{aibj|0≤i≤m-1和 0≤j≤n-1}可以用m×n个“与”门并行地产生(如右下图所
示)。显然,设计高速并行乘法器的基本问题,就在于缩短被加 数矩阵中每列所包含的1的加法时间。
有使能控制的二进制对2求补器电路图演示,其逻辑表达式如下:
C-1=0, Ci=ai+Ci-1
ai*=ai⊕ECi-1,
0≤i≤n
在对2求补时,要采用按位扫描技术来执行所需要的求补操作。令
A=an…a1a0是给定的(n+1)为带符号的数,要求确定它的补码形式 。进行求补的方法就是从数的最右端a0开始,,由右向左,直到找出第 一个“1”,例如ai=1, 0≤i≤n。这样,ai以左的每一个输入位都求反, 即1变0,0变1。最右端的起始链式输入C-1必须永远置成“0”。当控 制信号线E为“1”时,启动对2求补的操作。当控制信号线E为“0”时

计算机组成原理教案(第二章)

计算机组成原理教案(第二章)

[例4]将十进制真值(-127,-1,0,+1,+127)列表表示成二进制数及原 码、反码、补码、移码值。
[例5]设机器字长16位,定点表示,尾数15位,数符1位,问: (1)定点原码整数表示时,最大正数是多少?最小负数是多少?
(2)定点原码小数表示时,最大正数是多少?最小负数是多少?;
(1)定点原码整数表示 最大正数值=(215-1)10=(+32767)10 0 111 111 111 111 111
x+y=0.0110
一是符号位要作为数的一部分一起参加运算
二是要在模2的意义下相加,即超过的位要丢掉。
2.2.2 补码减法
数用补码表示时,减法运算的公式为 [x-y]补=[x]补-[y]补=[x]补+[-y]补
2.2.3 溢出概念与检测方法
用两个符号位并都参加运算,次高位与最高位相异或
第二种溢出检测方法是采用单符号位法。
[例14] x=+0.1100, y=+0.1000,求x+y。 [x]补=00.1100, [y]补=00.1000 [x]补 +[y]补 00.1100 00.1000 01.0100
两个正数相加,结果大于机器所能表示的最大正数,称为上溢。
[例15] x=-0.1100, y=-0.1000,求x+y。
[x]补=11.0100,
[y]补=11.1000 11.0100 11.1000 10.1100

计算机组成原理教案(第二章)

计算机组成原理教案(第二章)
2.1.1 数据格式
计算机中常用的数据表示格式有两种
一是定点格式,数值范围有限,要求但的处理硬件比较简单。
二是浮点格式,数值范围很大,但要求硬件比较复杂。
1.定点数的表示方法
定点表示:约定机器中所有数据的小数点位置是固定不变的
(x0:符号位,0代表正号,1代表负号):
纯小数和纯整数
目前计算机中多采用定点纯整数表示,因此将定点数表示的运算 简称为整数运算。
2.2.4 基本的二进制加法/减法器
表2.2 一位全加器真值表
两个二进制数字Ai,Bi和一个进位输入Ci相加,产生一个和输出 Si,以及一个进位输出Ci+1。 输入 输出 Ai 0 Bi 0 Ci 0 Si 0 Ci+1 0
0 0 0 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
x+y=0.0110
一是符号位要作为数的一部分一起参加运算
二是要在模2的意义下相加,即超过的位要丢掉。
2.2.2 补码减法
数用补码表示时,减法运算的公式为 [x-y]补=[x]补-[y]补=[x]补+[-y]补
2.2.3 溢出概念与检测方法
用两个符号位并都参加运算,次高位与最高位相异或
第二种溢出检测方法是采用单符号位法。
为便于软件移植,按照 IEEE754 标准,32位浮点数和 64位浮点数的标准格式为

计算机组成原理_原码阵列除法器_仿真报告

计算机组成原理_原码阵列除法器_仿真报告
计算机组成原理专周报告成都电子机械高等专科学校计算机工程系目录一项目名称1二实验目的1三不恢复余数的阵列除法器介绍1四逻辑流程图及原理3算法流程3粗框图4csa逻辑结构图4原理分析5五实例结果及求解过程8实例结果图8实例求解过程9六心得体会
计算机组成原理 专周报告
题目 班级 学号 姓名 指导老师 完成时间
原码阵列除法器
08512 10号 张 勇 倪继烈 2010-6-24
成都电子机械高等专科学校计算机工程系
`

一、项目名称 二、实验目的 三、不恢复余数的阵列除法器介绍 四、逻辑流程图及原理 算法流程 粗框图 CSA逻辑结构图 原理分析 五、实例结果及求解过程 实例结果图 实例求解过程 六、心得体会:
实例求解过程 X=21H=00100001,Y=05H=0101,求X/Y=? A=|X|=00010101,B=|Y|=00101,-B=11011 被除数A 00100001 -B 11011 余数为负 11111<0 Q3=0 移位 11110 +B 00101 余数为正 00011>0 Q2=1 移位 00110 -B 11011 余数为正 00001>0 Q1=1 移位 00011 -B 11011 余数为负 11110<0 Q0=0 +B 00101 恢复余数 00011 故得 商=1Q3Q2Q1Q0=00110(第一位是符号位)=6(16进制) 余数=00011=3(16进制)

计算机组成原理》课程设计报告

计算机组成原理》课程设计报告

课程设计说明书

《计算机组成原理》算法实现(五)

专业 计算机科学与技术

夏晶晶 班级 M 计算机101 学

1051401122

指导教师花小朋

完成日期2013年6月21日

目录

1 课程设计目的 (2)

2 课程设计容与要求 (2)

2.1课程设计的容 (2)

2.2 课程设计的要求 (2)

3 实现方法 (2)

3.1 系统目标 (2)

3.2 主体设计 (4)

3.2.1 主窗体的设计 (4)

3.2.2 定点整数真值还原窗体的设计 (6)

3.2.3 定点整数单符号位补码加减法 (8)

3.2.4 定点整数的原码乘法 (10)

3.2.5 浮点数的加减运算 (12)

4 设计小结 (13)

参考文献 (13)

1 课程设计目的

本课程设计是在学完本课程教学大纲规定的全部容、完成所有实践环节的基础上,旨在深化学生学习的计算机组成原理课程基本知识,进一步领会计算机组成原理的一些算法,并进行具体实现,提高分析问题、解决问题的综合应用能力。

2 课程设计容与要求

2.1课程设计的容

计算机组成原理算法实现(五)

2.2 课程设计的要求

能够实现机器数的真值还原(定点整数)、定点整数的单符号位补码加减运算、定点整数的原码乘法运算和浮点数的加减运算。

3 实现方法

3.1 系统目标

本程序含有以下几个功能模块,分别能够实现如设计容所设计的功能。共有5个类,各类之间的关系如图3-1所示:

系统流程图:

3.2 主体设计

3.2.1 主窗体的设计

程序菜单需要在输入口令正确后方可使用,若口令输入错误需给出重新输入口令的提示,三次口令输入错误则禁止使用。

计算机组成原理-定点补码阵列乘法器(33)实验报告

计算机组成原理-定点补码阵列乘法器(33)实验报告
-
课程设计报告
课程设计名称:计算机组成原理课程设计 课程设计题目:பைடு நூலகம்点补码阵列乘法器的设计
院〔系〕: 专 业: 班 级: 学 号: 姓 名: 指导教师: 完成日期:
.
z.
-
目录
总体设计方案 2 1.1 设计原理 2 1.2 设计环境 2
详细设计方案 2 2.1 实验仪器及元件:2 2.2 实验内容:3 2.3 实验过程及结果记录:3 2.4 实验结果分析:4
总结 5 3.1 思考:5 3.2 收获总结:5
.
z.
-
总体设计方案
1.1 设计原理
乘法原理: 0*0=0 0*1=0 1*0=0 1*1=1 两位乘法器的逻辑表达式: Q0=BD Q1=(AD)异或(BC) Q2=(AC)与(BD 与非) Q3=ABCD
1.2 设计环境
EDA 环境:MA*+PLUSⅡ软件
详细设计方案
2.1 实验仪器及元件:
4 个 INPUT 为 A B C D;6 个 AND2;一个非门;一个*OR;4 个 OUTPUT
.
z.

直接补码阵列乘法的手工计算方法

直接补码阵列乘法的手工计算方法
补 =
… , 补码 表 则
{ 2。 :一 。 +
cd m2 o
() 1
式中 : 补 [ 为机器数 ; ] 为真值 。 式( ) 明 , 1表 如果 为 正 时 , 号 位 为 0 如果 负 符 ,
符号 位 为 1 。 的乘法运算 , 再通过一个算后求补 电路将得 到的无符 时 , [ 补 ] 与 的真 值 之 间存 在 什 么关 系 呢 ?能 否 将 号数 的中间结 果转 换成 带 符号 的最 终结 果 。这 2种 阵 列乘 法运 算都 有一 定 的局 限性 , 运算 效率 不 高 , 且 而采 符号位与数值本身表示的值联系并统一起来呢? 回答 一个 较好 的解 决 方法 是 引入负权 , 用直 接补 码 阵列乘 法 可 以将符 号位 和 数据 位一 起参 加 ’ 是肯 定 的 。在这 里 , 而数值 位 采用 正权值 。 运 算 , 以完 成 补 码 数 的直 接 乘 法 , 不 需 要 求 补 电 就是 将符 号 位乘 以一 个 负权 值 , 可 而 设 [ 补= . … , ] 。 这里 表 示符 号位 , 正 。 为 路 , 种直 接 的运算 方 法排 除 了较慢 的对 2求补 操作 , 这 大大加 快 了乘 法运 算 的速度 。 本 文从 补码 与 真值 的 关 系 开始 , 明与 直 接 补 码 说 乘 法相 联 系 的数学 特征 , 然后 介 绍一 般化 的全加 器 , 再 通 过具 体 的实 例介 绍运 用直 接补 码 阵列 乘法 来进 行 手

计算机组成原理阵列乘法器课程设计报告

计算机组成原理阵列乘法器课程设计报告

课程设计

教学院计算机学院

课程名称计算机组成原理

题目阵列乘法器

专业计算机科学与技术

班级2011级计科(X)班

姓名XXX

同组人员XXX XXX XXX

指导教师XXX

2013 年 1 月22 日

1 课程设计概述

1.1 课设目的

计算机组成原理是计算机专业的核心专业基础课。课程设计属于设计型实验,不仅锻炼学生简单计算机系统的设计能力,而且通过进行设计及实现,进一步提高分析和解决问题的能力。

同时也巩固了我们对课本知识的掌握,加深了对知识的理解。在设计中我们发现问题,分析问题,到最终的解决问题。凝聚了我们对问题的思考,充分的锻炼了我们的动手能力、团队合作能力、分析解决问题的能力。

1.2 设计任务

计算机系统设计的总体目标是设计模型机系统的总体结构、指令系统和时序信号。所设计的主机系统能支持自动和单步运行方式。

具体设计任务如下:

(1).设计一位全加器

(2).设计4位求补电路

(3).设计8位求补电路

(4).设计4*4位无符号阵列乘法器

1.3 设计要求

根据理论课程所学的至少设计出简单计算机系统的总体方案,结合各单元实验积累和课堂上所学知识,选择适当芯片,设计简单的计算机系统。

(1)制定设计方案:

我们小组做的是阵列乘法器,阵列乘法器主要由求补器和阵列全加器组成。因此我们四人分两小组,一组做四位及八位求补器的内容,一组做阵列全加器的内容,最后综合就可以完成阵列全加器的任务。(2)客观要求

要掌握电子逻辑学的基本内容能在设计时运用到本课程中,其次是要思维灵活遇到问题能找到合理的解决方案。小组成员要积极配合共同达到目的。

阵列乘法器设计实验报告

阵列乘法器设计实验报告

阵列乘法器设计实验报告

首先,我们对4位数字乘法运算进行了分析。两个4位数相乘的结果为一个8位数,即最多需要8位的加法器来实现。因此,我们将阵列乘法器划分为3个模块:乘法单元、加法器单元以及结果输出单元。

乘法单元是阵列乘法器中最核心的部分。我们采用了一种基于乘法器意义的设计方法,将乘法运算分解为一系列的AND门和全加器。具体地,我们将两个4位数的每一位相乘得到16个乘积,然后利用8个全加器将这16个乘积进行累加得到结果。通过使用层层递进的方式,我们可以保证乘法运算的正确性。

加法器单元负责将乘法单元的结果进行累加。在本实验中,我们使用了一个8位全加器来实现8位数的加法运算。通过将乘法单元的结果与加法器单元的进位相连,可以保证每一位的进位都被正确地累加到下一位。

结果输出单元将加法器单元的结果进行输出。由于乘法结果的有效位数是8位,因此我们只需要将加法器单元的前8位进行输出即可。

通过使用Verilog HDL对阵列乘法器进行了仿真和验证。我们设计了一个测试平台,使用不同的输入进行了对阵列乘法器进行了测试。实验结果表明,设计的阵列乘法器具有良好的性能和准确的计算结果。

总结来说,本实验设计了一种4位乘法器的阵列乘法器电路,并通过Verilog HDL进行了仿真和验证。通过设计和测试,我们验证了该电路的正确性和高效性。阵列乘法器是一种重要的数字逻辑电路,对于实现高速的数字乘法运算具有很高的实用价值。

计算机组成原理实训报告

计算机组成原理实训报告

计算机组成原理实训报告

计算机组成原理实训是计算机科学与技术专业的一门重要课程,通过实践操作,对计算机硬件的组成、工作原理以及指令系统等进行深入的了解。以下是我完成计算机组成原理实训报告的相关参考内容:

1. 实验目的:明确实验的目的,例如加深对计算机硬件组成和工作原理的理解,掌握计算机指令集的设计与实现方法等。同时也可以陈述实验的重要性和意义。

2. 实验环境:介绍实验所使用的硬件平台和软件环境,例如使用的开发板型号、使用的集成开发环境等。

3. 实验原理:详细阐述实验所涉及的计算机组成原理和相关的理论知识。例如,介绍计算机硬件的基本组成,包括中央处理器(CPU)、内存、输入输出设备等,并说明它们的工作原理和

相互之间的关联。

4. 实验步骤:清晰地描述实验过程中的步骤,包括实验前的准备工作、实验中的具体操作以及实验后的总结。

5. 实验结果:展示实验的结果,可以包括实验中产生的数据、实验过程中观察到的现象以及实验中得到的实验数据等。同时还可以对实验结果进行分析和讨论,与相关的理论知识进行对比和验证。

6. 实验总结与分析:对实验过程和结果进行总结和分析,总结

实验的亮点和不足之处,提出改进的方案和建议。同时可以思考和讨论实验内容的实际应用和发展趋势。

7. 实验心得体会:个人对本次实验的感受和体会,可以包括实验中遇到的问题和解决方法,以及自己对计算机组成原理课程的理解和认识。

8. 参考文献:列出参考过的相关文献或教材,注意不要出现链接,需按照规范格式进行引用。

以上是关于计算机组成原理实训报告的参考内容,通过详细的实验步骤描述、实验结果展示和深入的分析讨论,可以有效地展现实验的过程和结果,以及对计算机组成原理的理解和应用。同时,也可以提出自己的思考和思考问题,以展示对实验内容的深入思考和学习效果。

乘法器实验报告

乘法器实验报告

乘法器实验报告

篇一:计组-4位乘法器实验报告

实验4位乘法器实验报告

XXX 姓名:

课程名称:计算机组成

实验时间:XXX 学号:同组学生姓名:无实验地点:指导老师: XXX 专业:计算机科学与技术

一、实验目的和要求

1. 熟练掌握乘法器的工作原理和逻辑功能

二、实验内容和原理

实验内容:

根据课本上例3-7的原理,来实现4位移位乘法器的设计。具体要求:1. 乘数和被乘数都是4位

2. 生成的乘积是8位的

3. 计算中涉及的所有数都是无符号数

4.需要设计重置功能

5.需要分步计算出结果(4位乘数的运算,需要四步算

出结果)

实验原理:

1. 乘法器原理图

2. 本实验的要求:

1. 需要设计按钮和相应开关,来增加乘数和被乘数

2. 每按一下M13,给一个时钟,数码管的左边两位显示每一步的乘

3. 4步计算出最终结果后,LED灯亮,按RESET重新开始计算

三、主要仪器设备

1. Spartan-III开发板

2. 装有ISE的PC机

1套 1台

四、操作方法与实验步骤

实验步骤:

1. 创建新的工程和新的源文件

2. 编写verilog代码(top模块、display模块、乘法运算模块、去抖动模块以及UCF引脚)

3. 进行编译

4. 进行Debug 工作,通过编译。

5.. 生成FPGA代码,下载到实验板上并调试,看是否与实现了预期功能

操作方法: TOP:

module alu_top(clk, switch, o_seg, o_sel);

input wire clk;

input wire[4:0] switch;

output wire [7:0] o_seg; // 只需七段显示数字,不用小数点 output wire [3:0] o_sel; // 4个数码管的位选

计算机组成原理-定点补码阵列乘法器(3x3)实验报告

计算机组成原理-定点补码阵列乘法器(3x3)实验报告

课程设计报告

课程设计名称:计算机组成原理课程设计课程设计题目:定点补码阵列乘法器的设计

院(系):

专业:

班级:

学号:

姓名:

指导教师:

完成日期:

xxxx大学课程设计报告

目录

总体设计方案 (2)

1.1 设计原理 (2)

1.2 设计环境 (2)

详细设计方案 (2)

2.1 实验仪器及元件: (2)

2.2 实验内容: (3)

2.3 实验过程及结果记录: (3)

2.4 实验结果分析: (4)

总结 (5)

3.1 思考: (5)

3.2 收获总结: (5)

总体设计方案

1.1 设计原理

乘法原理:

两位乘法器的逻辑表达式:

1.2 设计环境

EDA环境:MAX+PLUSⅡ软件

详细设计方案

2.1 实验仪器及元件:

4个INPUT 为A B C D;6个AND2;一个非门;一个XOR;4个OUTPUT

2.2 实验内容:

1.通过真值表设计一个两位乘法器;

2.构造运行两位乘法器的仿真波形。

2.3 实验过程及结果记录:

1、为设计乘法器新建一个文件夹作工作库,文件夹名不可用中文和空格;

2、在MAX+PLUS II新建一个设计文件,选择打开原理图编辑器,然后双击空白处“Enter Symbol”输入各个实验所需元件,将所需元件连接起来形成两位乘法器原理图;

3、将设计项目设置成工程文件(PROJECT);

4、对工程文件进行编译、综合和适配等操作,编译后可能会有错误或警告的提醒,没有就证明原理图正确可用。

选择波形编辑器文件进行时序仿真,将相应的信号节点输入进去,并选择END TIME调试

5、整仿真时间区域,两位乘法器选择800us比较合适,根据实验指导书的波形图我们调整出四个输入信号的电平,运行仿真器可得对应的四个输出引脚的波形;

EDA_8位乘法器_实验报告

EDA_8位乘法器_实验报告

南华大学

船山学院

实验报告

(2009 ~2010 学年度第二学期)

课程名称EDA

实验名称8位乘法器

姓名学号

专业计算机科学与

班级01

技术

地点8-212 教师

一、实验目的:

学习和了解八位乘法的原理和过程

二、设计思路:

纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硬件资源,难以实现宽位乘法器,基于PLD 器件外接ROM 九九表的乘法器则无法构成单片系统,也不实用。这里介绍由八位加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而且由FPGA 构成实验系统后,可以很容易的用ASIC 大型集成芯片来完成,性价比高,可操作性强。其乘法原理是:乘法通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数左移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。

三、实验逻辑图:

四、实验代码:

1) 选通与门模块的源程序ANDARITH.VHD LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY ANDARITH IS PORT (ABIN:IN STD_LOGIC;

DIN:IN STD_LOGIC_VECTOR (7 DOWNTO 0) DOUT:OUT STD_LOGIC_VECTOR (7 DOWNTO 0)); END ANDARITH;ARCHITECTURE ART OF ANDARITH IS BEGIN

PROCESS (ABIN ,DIN) BEGIN

FOR I IN 0 TO 7 LOOP

DOUT (I)<=DIN (I)AND ABIN; END LOOP;

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

.

课程设计

.

教学院计算机学院

课程名称计算机组成原理题目4位乘法整列设计专业计算机科学与技术班级2014级计本非师班姓名唐健峰

同组人员黄亚军

指导教师

2016 年10 月 5 日

1 课程设计概述

1.1 课设目的

计算机组成原理是计算机专业的核心专业基础课。课程设计属于设计型实验,不仅锻炼学生简单计算机系统的设计能力,而且通过进行设计及实现,进一步提高分析和解决问题的能力。

同时也巩固了我们对课本知识的掌握,加深了对知识的理解。在设计中我们发现问题,分析问题,到最终的解决问题。凝聚了我们对问题的思考,充分的锻炼了我们的动手能力、团队合作能力、分析解决问题的能力。

1.2 设计任务

设计一个4位的二进制乘法器:

输入信号:4位被乘数A(A1,A2,A3,A4), 4位乘数B(B1,B2,B3,B4),

输出信号:8位乘积q(q1,q2,q3,q4,q5,q6,q7,q8).

1.3 设计要求

根据理论课程所学的至少设计出简单计算机系统的总体方案,结合各单元实验积累和课堂上所学知识,选择适当芯片,设计简单的计算机系统。

(1)制定设计方案:

我们小组做的是4位阵列乘法器,4位阵列乘法器主要由求补器和阵列全加器组成。

(2)客观要求

要掌握电子逻辑学的基本内容能在设计时运用到本课程中,其次是要思维灵活遇到问题能找到合理的解决方案。小组成员要积极配合共同达到目的。

2 实验原理与环境

2.1 1.实验原理

计算机组成原理,数字逻辑,maxplus2是现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

用乘数的每一位去乘被乘数,然后将每一位权值直接去乘被乘数得到部分积,并按位列为一行每一行部分积末位与对应的乘数数位对齐,体现对应数位的权值,将各次部分积求和得到最终的对应数位的权值。

2.2 2.实验环境

2.2.1双击maxplu2II软件图标,启动软件

(1).新建工程,flie->new project ....,出现存储路径的选项框,指定项目保存路径并且为工程命名,第三行设置实体名,保持与工程名一致。点击OK

(2).原理图输入 (1) 建立图形输入文件在图 1-16 中的 File 菜单的project 项下选择“New…”,出现图 1-18 所示的对话框

选择“Graphic Editor file”后,单击“OK”,出现图 1-19 即可开始建立图形输入文件

(3). 调入元件符号在图 1-19 图形编辑区双击鼠标左键可打开“Enter symbol”对话框,如图 1-20 所示。在该对话框你可选择需要输入的元件/逻辑符

号。例如你可选择一个计数器,一个与门等

3 总体方案设计总体结构图

图3 总体结构图一

根据an与bn的乘积,然后相应的am与bm与运算,可得到qn的值,最后按从大到小的顺序排列qn,即为计算结果。如下所示:

1 1 0 0

* 0 1 0 1

1 1 0 0

0 0 0 0

1 1 0 0

0 0 0 0

0 1 1 1 1 0 0

即为十进制的12*5=60

1.设计方案

(1)为了进一步提高乘法运算速度,可采用类似人工计算的方法,阵列的每一行送入乘数Y的每一数位,而各行错开形成的每一斜列则送入被乘数的每一数位。

(2)4×4阵列乘法器可以由一定数量的4个输入加法器构成的;

(3)4个输入加法器可以由多个全加1器(74283)构成;

详细设计与实现

4*4乘法的设计主要包括以下几个主要的模块的设计

3.1.2 一位全加器的设计与实现

一位全加器的逻辑图,如下图所示:

图5 一位全加器的逻辑图

3.1.3 四位及八位求补电路的设计

原图:

四位求补电路的逻辑图,如下图所示:

图6 四位求补电路的逻辑图八位求补电路的逻辑图,如下图所示:

图7 八位求补电路的逻辑图

3.1.4 阵列乘法器的设计: 4×4阵列乘法器的逻辑图,如下图所示:

图8 4×4阵列乘法器的逻辑图

图9 阵列乘法器的电路原理图

4 实验过程与调试实验仿真图:

图10 仿真结果

4 位*4位乘法器的仿真结果如图:

图11 4*4的乘法器仿真图

4.1 主要故障与调试

4.1.1 故障 1 这次课程设计的精华之一

就是设计阵列乘法器刚开始时由于按照

课本上的设计所以掉下了好多的与门所

以在仿真的时候出现了好多的问题,后

在老师的指导下,,得以改进了设计和避

免了很多的连线的错误,提高了速度

4.1.2 故障2 在实验的时候,对实验的软

件和装置很不是熟悉,导致文件的命名

时经常出错,而且问题还不宜被发现,

在老师的提示下照到了问题的所在,后

来就没有遇到类似的问题。

4.1.3 故障3 在做求补电路的时候我们做的事4位的求补器但是需要8位的求补

器所以我们就拿两个4位的求补器去连接结果由于连线的错误导致了好多的错误,后来我们直接连接8位的求补器就解决了问题。

5 设计总结与心得

5.1 课设总结

基于对象的存储是为了克服当前基于块的存储存在的诸多难题,在存储接口和结构层次的重要发展。可以根据应用负载选择优化的存储策略。作了如下几点工作:

1)我们小组负责的是阵列乘法器的设计,通过小组的合作我们一次完成了全加器、求补器、阵列乘法器然后完成了综合的

拼接工作,虽然在最后的阶段出了一些问题但是我们小组掌

握了此次设计的核心内容达到了实验的目的。

2)此次看课程设计我们实现任意给定两位四位二进制的相乘运算,相乘积的计算结果为8位二进制。将移位复制的被乘数

依次对准乘数数位的位置进行排列,然后将各列相加。如果

乘数的某一数位为0,将跳过相应的被乘数,下一个复制被乘

数的位置是由向乘数的最高位方向移动时有1出现的位置3)这次课程设计虽然没有在规定的时间内完成要求的任务,但是我们小组每一个组员都认真负责的设计,对组成原理这门

学科的了解更加深刻,学到了好多以前不曾知道的知识。其

他需要总结的内容,(自行修订扩充)。

5.2 课设心得

在还没有作课程设计时我是比较畏惧组成原理这门课设的,毕竟前几次小实验每每都是做得很不尽人意,总是不能在老师规定的时间内完成,所以担心这种不好的过程会给后面的大实验也即课设

相关文档
最新文档