一种基于FPGA芯片的进位链工艺映射方法.pdf

上传人:bo****18 文档编号:6062829 上传时间:2019-04-05 格式:PDF 页数:7 大小:424.07KB
返回 下载 相关 举报
摘要
申请专利号:

CN201511018760.6

申请日:

2015.12.29

公开号:

CN106934079A

公开日:

2017.07.07

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效 IPC(主分类):G06F 17/50申请日:20151229|||公开

IPC分类号:

G06F17/50

主分类号:

G06F17/50

申请人:

京微雅格(北京)科技有限公司

发明人:

耿嘉

地址:

100176 北京市大兴区经济技术开发区地盛北街1号A区8号楼401室-11(集中办公区)

优先权:

专利代理机构:

北京亿腾知识产权代理事务所 11309

代理人:

陈霁

PDF下载: PDF下载
内容摘要

本发明涉及一种基于FPGA芯片的进位链工艺映射方法,该方法包括以下步骤:获取全部算数运算宏模块;针对全部算数运算宏模块分别进行消耗值估算,以及根据每个算数运算宏模块的消耗值对全部算数运算宏模块进行排序;计算FPGA芯片上可用的进位链余量;估算消耗值最大的算数运算宏模块的进位链使用量;将FPGA芯片上可用的进位链余量与所述消耗值最大的算数运算宏模块的进位链使用量进行比较,如果消耗值最大的算数运算宏模块的进位链使用量不大于FPGA芯片上可用的进位链余量,则消耗值最大的算数运算宏模块使用进位链的方式进行映射。本发明可以动态决定算数运算宏模块是否采用进位链进行工艺映射,更好的满足了FPGA芯片的设计要求。

权利要求书

1.一种基于FPGA芯片的进位链工艺映射方法,其特征在于,包括以
下步骤:
获取全部算数运算宏模块;
针对所述全部算数运算宏模块分别进行消耗值估算,以及根据每个算
数运算宏模块的消耗值对所述全部算数运算宏模块进行排序;
计算FPGA芯片上可用的进位链余量;
估算消耗值最大的算数运算宏模块的进位链使用量;
将所述FPGA芯片上可用的进位链余量与所述消耗值最大的算数运算
宏模块的进位链使用量进行比较,如果所述消耗值最大的算数运算宏模块
的进位链使用量不大于所述FPGA芯片上可用的进位链余量,则所述消耗值
最大的算数运算宏模块使用进位链的方式进行映射。
2.根据权利要求1所述的方法,其特征在于,如果所述消耗值最大的
算数运算宏模块的进位链使用量大于所述FPGA芯片上可用的进位链余量,
则所述消耗值最大的算数运算宏模块采用普通组合逻辑映射。
3.根据权利要求1所述的方法,其特征在于,在所述计算FPGA芯片
上可用的进位链余量步骤之后,估算消耗值最大的算数运算宏模块的进位
链使用量步骤之前还包括以下步骤:
对所述全部算数运算宏模块进行判断,如果所述全部算数运算宏模块
都已经进行映射,则结束;如果还有未映射的算数运算宏模块,则估算未
映射的运算宏模块中消耗值最大的算数运算宏模块的进位链使用量。
4.根据权利要求1所述的方法,其特征在于,所述计算FPGA芯片上
可用的进位链余量步骤包括:
计算FPGA芯片实际的进位链数目,作为进位链余量。
5.根据权利要求1所述的方法,其特征在于,所述计算FPGA芯片上
可用的进位链余量步骤包括:
计算FPGA芯片实际的进位链数目,取其一定比例作为进位链余量。
6.根据权利要求5所述的方法,其特征在于,将FPGA芯片实际的进
位链数目的80%作为进位链余量。
7.根据权利要求1所述的方法,其特征在于,所述计算FPGA芯片上
可用的进位链余量步骤包括:
计算FPGA芯片实际的进位链数目,指定其中的任一值作为进位链余
量。
8.根据权利要求1所述的方法,其特征在于,所述算数运算宏模块包
括加法运算宏模块、减法运算宏模块、比较运算宏模块和乘法运算宏模块
中的一种或多种。

说明书

一种基于FPGA芯片的进位链工艺映射方法

技术领域

本发明涉及现场可编程门阵列(Field-Programmable Gate Array,
简称FPGA)技术,尤其涉及一种基于FPGA的进位链工艺映射方法。

背景技术

传统FPGA芯片的工艺映射方法通常是将加法、乘法等算数运算宏模块直
接映射到FPGA芯片上的进位链上,但是每款FPGA芯片的进位链资源都是有
限的。因此,对于一些使用进位链较多的算数运算宏模块,传统的工艺映射
方法则存在着由于生产过多的进位链导致超出了FPGA芯片的实际容量,从而
使得FPGA芯片无法满足设计要求的情况。

发明内容

本发明的目的在于,解决传统FPGA芯片的工艺映射方法存在的不足。

为实现上述目的,本发明提供了一种基于FPGA芯片的进位链工艺映射
方法,该方法包括以下步骤:

获取全部算数运算宏模块;针对全部算数运算宏模块分别进行消耗值
估算,以及根据每个算数运算宏模块的消耗值对所述全部算数运算宏模块
进行排序;计算FPGA芯片上可用的进位链余量;估算消耗值最大的算数运
算宏模块的进位链使用量;将FPGA芯片上可用的进位链余量与所述消耗值
最大的算数运算宏模块的进位链使用量进行比较,如果消耗值最大的算数
运算宏模块的进位链使用量小于所述FPGA芯片上可用的进位链余量,则消
耗值最大的算数运算宏模块使用进位链的方式进行映射。

优选地,如果所述消耗值最大的算数运算宏模块的进位链使用量大于
所述FPGA芯片上可用的进位链余量,则消耗值最大的算数运算宏模块采用
普通组合逻辑映射。

优选地,在计算FPGA芯片上可用的进位链余量步骤之后,估算消耗值
最大的算数运算宏模块的进位链使用量步骤之前还包括以下步骤:对全部
算数运算宏模块进行判断,如果全部算数运算宏模块都已经进行映射,则
结束;如果还有未映射的算数运算宏模块,则估算未映射的运算宏模块中
消耗值最大的算数运算宏模块的进位链使用量。

优选地,在计算FPGA芯片上可用的进位链余量步骤包括:计算FPGA
芯片实际的进位链数目,作为进位链余量。

优选地,在计算FPGA芯片上可用的进位链余量步骤包括:计算FPGA
芯片实际的进位链数目,取其一定比例作为进位链余量。

优选地,可以将FPGA芯片实际的进位链数目的一定比例作为进位链余
量为将FPGA芯片实际的进位链数目的80%作为进位链余量。

优选地,在计算FPGA芯片上可用的进位链余量步骤包括:计算FPGA
芯片实际的进位链数目,指定其中的任一值作为进位链余量。

本发明可以动态决定算数运算宏模块是否采用进位链进行工艺映射,
更好的满足了FPGA芯片的设计要求。

附图说明

图1为本发明实施例提供的一种基于FPGA的进位链工艺映射方法示意
图;

图2为本发明实施例提供的另一种基于FPGA的进位链工艺映射方法示
意图。

具体实施方式

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

图1为本发明实施例提供的一种基于FPGA芯片的进位链工艺映射方法
示意图。如图1所示,该方法包括步骤S101-S105:

步骤S101,获取全部算数运算宏模块,算数运算宏模块包括加法运算
宏模块、减法运算宏模块、比较运算宏模块或乘法运算宏模块。

步骤S102针对全部算数运算宏模块分别进行消耗值估算,以及根据每
个算数运算宏模块的消耗值对所述全部算数运算宏模块进行排序。

具体地,针对获取的全部算数运算宏模块先进行消耗值计算、以得到
每个算数运算宏模块的消耗值;再依据每个算数运算宏模块的消耗值的大
小对算数运算宏模块进行排序(如表1所示)。

表1

名称
消耗值
排序
加法运算宏模块
40
1
减法运算宏模块
30
2
比较运算宏模块
20
3
乘法运算宏模块
10
4

步骤S103,计算FPGA芯片上可用的进位链余量

具体地,对FPGA芯片上可用的进位链余量进行计算,在计算FPGA芯
片上可用的进位链余量时,可以将FPGA芯片实际的进位链数目作为进位链
余量;或者计算FPGA芯片实际的进位链数目,再取其一定比例(例如,80%)
作为进位链余量;或者计算FPGA芯片实际的进位链数目,指定其中的任一
值作为进位链余量。

步骤S104,估算消耗值最大的算数运算宏模块的进位链使用量;

步骤S105,将FPGA芯片上可用的进位链余量与消耗值最大的算数运
算宏模块的进位链使用量进行比较,如果消耗值最大的算数运算宏模块的
进位链使用量不大于FPGA芯片上可用的进位链余量,则消耗值最大的算数
运算宏模块使用进位链的方式进行映射;或者,消耗值最大的算数运算宏
模块的进位链使用量大于所述FPGA芯片上可用的进位链余量,则消耗值最
大的算数运算宏模块采用普通组合逻辑映射(例如,显示查找表
(Look-Up-Table,简称为LUT))。

优选地,在上述步骤S103和上述步骤S104之间还包括步骤S106(如
图2所示):

在步骤S106,对全部算数运算宏模块进行判断,如果全部算数运算宏
模块都已经进行映射,则转到步骤S107,执行结束;如果还有未映射的算
数运算宏模块,则估算未映射的运算宏模块中消耗值最大的算数运算宏模
块的进位链使用量。

以下通过一个具体的设计实施进行详细说明:

现假设某设计包含50个20位的加法运算宏模块、50个10位加法运
算宏模块,以及一些组合逻辑(约占用1000个LUT4资源)。芯片采用HR3
型号,其包括3000个LUT4的资源,其中1000个LUT4包含进位链结构。

按照传统的工艺映射方法,全部的100个加法运算宏模块都会映射到
进位链上,则需要1500个进位链资源,其远远超出了芯片HR3的进位链数
量(HR3型号芯片只有1000个LUT4包含进位链结构)。

然而,根据本发明实施例提供的工艺映射方法只需要占用1000个进位
链。过程如下:

假设以进位链占用量作为消耗值的估值,则20位加法运算宏模块的消
耗值为20,10位加法运算宏模块的消耗值为10。那么50个20位的加法
运算宏模块会采用进位链的方式进行映射(占用1000个LUT4及1000个进
位链),此时芯片HR3的进位链都已经使用,那么另外50个10位的加法
运算宏模块则会采用组合逻辑映射(假设使用了700个LUT4),这样最终
使用了2700个LUT4及1000个进位链,满足芯片容量要求。

本发明实施例可以动态决定算数运算宏模块是否采用进位链进行工艺
映射,更好的满足了FPGA芯片的设计要求。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的
各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来
实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能
一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来
执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每
个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为
超出本发明的范围。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行
了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而
已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做
的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

一种基于FPGA芯片的进位链工艺映射方法.pdf_第1页
第1页 / 共7页
一种基于FPGA芯片的进位链工艺映射方法.pdf_第2页
第2页 / 共7页
一种基于FPGA芯片的进位链工艺映射方法.pdf_第3页
第3页 / 共7页
点击查看更多>>
资源描述

《一种基于FPGA芯片的进位链工艺映射方法.pdf》由会员分享,可在线阅读,更多相关《一种基于FPGA芯片的进位链工艺映射方法.pdf(7页珍藏版)》请在专利查询网上搜索。

本发明涉及一种基于FPGA芯片的进位链工艺映射方法,该方法包括以下步骤:获取全部算数运算宏模块;针对全部算数运算宏模块分别进行消耗值估算,以及根据每个算数运算宏模块的消耗值对全部算数运算宏模块进行排序;计算FPGA芯片上可用的进位链余量;估算消耗值最大的算数运算宏模块的进位链使用量;将FPGA芯片上可用的进位链余量与所述消耗值最大的算数运算宏模块的进位链使用量进行比较,如果消耗值最大的算数运算宏模。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1