CN116108788A - 一种自动定制eFPGA器件的方法与装置 - Google Patents
一种自动定制eFPGA器件的方法与装置 Download PDFInfo
- Publication number
- CN116108788A CN116108788A CN202310294895.3A CN202310294895A CN116108788A CN 116108788 A CN116108788 A CN 116108788A CN 202310294895 A CN202310294895 A CN 202310294895A CN 116108788 A CN116108788 A CN 116108788A
- Authority
- CN
- China
- Prior art keywords
- efpga
- logic block
- height
- logic
- width
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000013461 design Methods 0.000 title description 5
- 238000004806 packaging method and process Methods 0.000 title description 2
- 238000011156 evaluation Methods 0.000 claims abstract description 17
- 238000012545 processing Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 2
- ATHVAWFAEPLPPQ-VRDBWYNSSA-N 1-stearoyl-2-oleoyl-sn-glycero-3-phosphocholine Chemical compound CCCCCCCCCCCCCCCCCC(=O)OC[C@H](COP([O-])(=O)OCC[N+](C)(C)C)OC(=O)CCCCCCC\C=C/CCCCCCCC ATHVAWFAEPLPPQ-VRDBWYNSSA-N 0.000 description 1
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
- G06F30/347—Physical level, e.g. placement or routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/16—Customisation or personalisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Facsimiles In General (AREA)
Abstract
本发明提供一种自动定制eFPGA器件的方法,包括:获取用户评估电路的信息、预期参数值和定制配置信息;基于所述预期参数值和所述定制配置信息,分别计算得到eFPGA器件中每种类型逻辑块的资源总量,基于所述逻辑块的资源总量、所述定制配置信息和所述用户评估电路的信息,确定所述eFPGA器件的规模、排布信息;计算所述eFPGA器件的实际物理尺寸。本发明通过自动获取关键参数,自主运算和排布提升了eFPGA器件定制的自动化程度,通过实际参数与逻辑参数配合提高了eFPAG器件规模定制的精度,通过预期参数和规模参数的配合使得eFPGA器件的排布更高效。本发明还提供了一种自动定制eFPGA器件的装置。
Description
技术领域
本发明属于可编程逻辑器件(Field Programmable Gate Array,FPGA)设计技术领域,具体涉及自动定制嵌入式FPGA(eFPGA)器件的方法及相应的装置。
背景技术
嵌入式FPGA(eFPGA)是指将一个或多个FPGA以IP的形式嵌入ASIC、ASSP或SOC等芯片中。与传统FPGA成片相比eFPGA有多种优势,第一,与传统FPGA相比eFPGA功耗密度更低、动态功耗也更低;第二,由于eFPGA在设计时已经固定了ASIC IP,故而eFPGA不需要也无法实现可编程的接口功能,在舍弃接口的编程功能后相对应同等逻辑密度的FPGA,eFPGA的面积远小于前者;第三,传统FPGA在成片后它的资源排布就固化了,使用FPGA时只能将其看作一个整体进行操作,但是eFPGA在成片后依然可以进行裁剪分割,在不同区域实现不同功能互不干扰,拥有硬件灵活性和可裁剪性。鉴于功耗小、面积小、灵活、可裁剪的优点,eFPGA在服务器、数据中心加速、通信等高性能应用领域SOPC芯片设计领域中得到了越来越多的应用。
eFPGA是一种数字可重构结构,由可编程互连中的可编程逻辑组成,通常表现为矩形阵列。现有技术中定制eFPGA时自动化程度有待提高,往往还是依赖大量的人工操作,费时费力,并且很难对eFPGA器件的实际(物理)参数、逻辑参数同时进行处理导致定制结果精确性不能保证,又由于现有定制方法没有逻辑统筹用户期望和实际情况,定制出的eFPGA器件时常与预期有较大出入,造成了无法满足用户需求或是资源浪费的情况。
所以目前需要开发一种自动定制eFPGA方法,可以达到提高eFPGA器件定制时的自动化程度、同时获取实际参数与逻辑参数提高定制精度、统筹用户预期与实际资源情况使定制成品更贴近用户期望的目的。
发明内容
本发明是为解决上述现有技术的全部或部分问题,提出一种自动定制eFPGA器件的方法,以优化eFPGA定制的自动化水平。本发明还提供了一种自动定制eFPGA器件的装置。
本发明提供的一种自动定制eFPGA器件的方法,包括:步骤S1.获取用户评估电路的信息、预期参数值和定制配置信息;步骤S2.基于所述预期参数值和所述定制配置信息,分别计算得到eFPGA器件中每种类型逻辑块的资源总量,基于所述逻辑块的资源总量、所述定制配置信息和所述用户评估电路的信息,计算确定所述eFPGA器件的规模和排布信息;步骤S3.计算所述eFPGA器件的实际物理尺寸。基于所述eFPGA器件规模排布信息以及定制配置信息计算得到eFPGA器件的参数信息。其中,所述用户评估电路的信息包括每种类型逻辑块的数量和焊盘的数量;所述预期参数值包括每种类型逻辑块的资源占用比和用户预定义的所述eFPGA器件宽度和高度比;所述定制配置信息包括:器件的单位物理尺寸(高度、宽度)、器件的基本网格尺寸(高度、宽度),以及沿一个方向排列的I/O接口的宽度和焊盘的数量。
步骤S1的过程包括:读取配置文件逐行解析所述配置文件内容获得定制配置信息记为第一参数;所述第一参数构成所述定制配置信息;用户输入对所述eFPGA器件评估信息,获取所述用户评估电路的信息,将评估信息记为第二参数;用户输入对所述eFPGA器件预估值得到所述预期参数值,将预估值记为第三参数;将所述第一参数存储到全局的数据结构中。所述第二参数构成所述用户评估电路的信息;用户输入第三参数,定义所述预期参数值。
所述(eFPGA器件的)定制配置文件的格式是xml。xml文件提供了一种简洁的自解释的标记方法,几乎不需要说明文档,就能理解xml格式的配置文件的意义,使用xml文件格式的定制配置文件提升了读取和解析的便捷性。
所述eFPGA器件的所述配置文件内记载了芯片实际参数、芯片逻辑参数、逻辑块实际参数、逻辑块逻辑参数、eFPGA允许的长宽比例范围;
所述第一参数,包括自所述配置文件中解析获取的:芯片实际参数、芯片逻辑参数、逻辑块实际参数、逻辑块逻辑参数、eFPGA允许的长宽比例范围;
某类型逻辑块的长度和宽度,指的是所述逻辑块的实际长度和宽度,这个概念区别于逻辑宽度。
所述第二参数是指用户输入的eFPGA内逻辑块实际使用数量、pad实际数量等;
所述第三参数值是指用户输入的所述eFPGA内各类型逻辑块的资源占用比和所述eFPGA器件的期望宽度和高度比;
通过解析定制配置文件的方式获取第一参数,并引入第二参数、第三参数,进行计算实现自动化定制利于提高定制精度、统筹用户预期与实际资源情况使定制成品更贴近用户期望的目的。
所述步骤S2中,所述逻辑块的数量除以所述资源占用比,计算得到同一类型逻辑块的资源总量;分别计算获取每种类型逻辑块的资源总量。
所述步骤S2的过程包括,
计算出所述eFPGA器件中每种类型逻辑块的实际使用数量,记为m;
分别计算出所述每种类型逻辑块占用基础网格单元数量,记为Num;
统计所有类型逻辑块占用的基础网格单元数量总和,记为totalNum;
计算出所述eFPGA器件高度,记为H;
调整所述eFPGA器件的高度和宽度来满足所述eFPGA器件的焊盘数量;
调整所述eFPGA器件的高度和宽度使得所述eFPGA器件的高度和宽度成为基础网格高度宽度之倍数。
将所述逻辑块的宽度和高度记为W和J,将所述逻辑块期望宽度和期望高度记为W’和J’。
所述步骤S2中:计算每种类型逻辑块占用基础网格单元数量的公式是:
Num=m×W×J;
将Num全部相加即可获得totalNum,
所述步骤S2中:计算eFPGA器件高度的公式是:
上述步骤后还可以进行,自动定制所述eFPGA器件的排布,确定排布信息,包括:
分别计算出类型为存储器单元的第一逻辑块和类型为数字信号处理单元的第二逻辑块的列数,相应记为N1和N2;
将所述第一逻辑块和所述第二逻辑块一一配对组合为第三逻辑块;根据所述N1和N2,计算得到所述第三逻辑块的数量;
若所述第三逻辑块数为奇数,则在所述eFPGA器件中心摆放一个所述第三逻辑块,再依次向两侧对称摆放剩余所述第三逻辑块;若所述第三逻辑块数为偶数,则以所述eFPGA器件为中心依次向两侧对称摆放所述所有的第三逻辑块;
若一一配对组合后还存在剩余的所述第一逻辑块或第二逻辑块,则将剩余的所述第一逻辑块或所述第二逻辑块依次向两侧对称摆放;排除所述第一逻辑块所在的列和所述第二逻辑块所在的列,剩余的列为排布基本逻辑块的位置;根据沿一个方向排列的I/O接口的宽度和焊盘的数量,确定出eFPGA器件的排布信息。
所述第一和第二逻辑块位置确定后,剩余位置即为基本逻辑块的位置;
根据四周I/O的宽度和所述pad信息,确定出eFPGA器件的排布信息。
步骤S2中: 以第一逻辑块为例:
N1=Num(N1)×J(N1)÷H;
其中N1表示所述第一逻辑块的列数,Num(N1)表示所述第一逻辑块的数量,J(N1)表示所述第一逻辑块的高度,H表示所述eFPGA器件的高度。
所述第三逻辑块为一个第一逻辑块和一个第二逻辑块组合成的模块整体;
将eFPGA器件的宽度记为w,将基本逻辑块的列数记为X;
X=w-N1×W(N1)-N2×W(N2)。
其中所述W(N1)指类型为存储器单元的第一逻辑块的宽度,所述W(N2)指类型为数字信号处理单元的第二逻辑块的宽度。
使用步骤S2所述的排布方案的优势在于,相对于一般排布方式,提高了资源的利用率。
步骤S2中计算所述eFPGA器件规模的方法可以独立于计算所述eFPGA器件排布的方法出现,计算所述eFPGA器件排布的方法必须依托计算所述eFPGA规模的方法出现,当仅进行计算所述eFPGA器件规模的操作时,方法可以得到所述eFPGA器件的规模信息,当在计算所述eFPGA器件规模后又计算eFPGA器件排布,就可以通过后续步骤获取eFPGA器件的物理参数。
步骤S3具体包括:
计算所述eFPGA器件的物理高度;
计算所述eFPGA器件的物理宽度。
步骤S3中:将基础网格的物理高度记为K,eFPGA器件的逻辑高度记为L,基础网格的逻辑高度记为Z,则计算eFPGA器件实际高度的公式为:
H=K×L÷Z;
在步骤S3之后还进行:
生成描述所述eFPGA器件的排布信息的第一芯片数据库文件core_arrangement.xml;
生成描述所述eFPGA器件的I/O管脚信息的第二芯片数据库文件pad_arrangement.xml。
所述文件core_arrangement.xml是xml文件描述的是所述eFPGA器件的排布信息;
所述文件pad_arrangement.xml是xml文件描述的是所述eFPGA器件的I/O管脚信息。
一种自动定制eFPGA器件的装置,运行上述自动定制eFPGA器件的方法。
本发明与现有技术相比,其显著优点在于:
1.可以自动定制eFPGA器件的规模和排布;
2.利用所述规模定制方法精确确定eFPGA器件规模,并通过计算使其满足eFPGA的固定比例;
3.利用所述排布定制方法精确确定eFPGA器件排布,通过合理排布提高eFPGA器件利用率;
4.可以自动生成芯片数据库文件,便于管理。
附图说明
图1为本发明实施例中eFPGA器件的定制流程图。
图2为本发明实施例中eFPGA器件定制规模的流程图。
图3为本发明实施例中eFPGA器件定制排布的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
通过本实施例所解决的技术问题包括:
1.如何自动进行eFPGA器件规模和排布定制;
2.如何准确确定定制eFPGA器件的规模;
3.如何利用排布方法提高定制eFPGA器件的利用率;
4.如何计算定制eFPGA器件的实际物理尺寸。
如图1所示,一种自动定制eFPGA器件规模和排布方法其具体实施方式可以为:
步骤S1:接收eFPGA器件定制配置文件信息,评估电路信息、预期参数值;
步骤S2:分别计算每种类型逻辑块的单位数量;
统计所有类型逻辑块的单位数量总和totalNum;
根据totalNum和S1中获取的参数与预期值计算出eFPGA的高度;
计算出M4K、DSP和BLK等逻辑块的列数;
摆放所有M4K-DSP组合块的位置;
摆放剩余的M4K或DSP,以及BLK的位置;
确定出eFPGA器件的pad(焊盘)排布信息;
步骤S3:计算出eFPGA器件的物理高度和宽度。
有些实施例中,步骤S3之后还生成eFPGA器件的数据库文件;
生成的数据库文件分为core_arrangement.xml和pad_arrangement.xml文件。
在该实施例中定制规模的流程如图2所示。
在该实施例的步骤S1中存在两个不同的操作:
接收eFPGA器件定制配置文件,接收预估电路信息、预期参数值,配置文件。
接收eFPGA器件的定制配置文件是通过解析xml文件每行的内容,完成对eFPGA器件定制配置信息的接收;
定制配置文件是eFPGA描述其基本结构信息的xml文件,其中记载了如CLB、M4K、DSP等逻辑块的逻辑宽度和高度、物理宽度和高度,eFPGA器件内基础网格的物理宽度,eFPGA器件的物理高度,以及每个方向上I/O的宽度和pad数量信息等;
接收评估的电路信息和预期参数值通过用户输入的方式完成,评估电路信息指对当前资源使用情况的概述,预期参数指的是对所定制eFPGA器件的功能预期;
上述两个操作在时序上不做限定,可以同步进行也可以先后进行,进行的先后顺序对实施例中的方法不造成影响;
通过所述两个不同的操作,自动定制方法获取了定制eFPGA器件规模和排布的必要信息,通过解析配置文件减少了人工的投入,而预先获取对eFPGA的预期可以使eFPGA的定制更加贴近需求。
步骤S2中,分别计算每种类型逻辑块的单位数量指的是计算每种逻辑块占用基础网格单元的数量,所使用的公式为:
Num=m×W×J;
其中,Num指某种逻辑块所占用的基础网格单元数量,m指某种类型逻辑块的实际使用数量,W和J分别指逻辑块的宽度和高度;
每种类型逻辑块的资源总量指每种类型逻辑块占用的基础网格单元数量,每种逻辑块实际使用数量是评估电路时获取的,而逻辑块的逻辑宽度和高度是指逻辑块的理论宽度和高度而非实际宽度和高度。
将每种逻辑块所占用的基础网格单元数量相加就得到了所要计算的参数totalNum。计算定制eFPGA器件的高度等于:
其中,H代表定制eFPGA器件的高度,totalNum代表每种逻辑块所占用的基础网格单元数量之和,W和J分别代表逻辑块的宽度和高度,而W’和J’分别代表逻辑块的期望宽度和期望高度;
通过上述公式可以得到eFPGA的最小高度,有些实施例中之后还进行:调整定制的高度和宽度来满足评估电路的pad数量,调整定制的高度和宽度来满足为基础网格的倍数,这两步使定制eFPGA器件的大小得以与其他器件匹配,调整之后得到了最终定制eFPGA器件的规模。
在该实施例中定制排布的流程如图3所示。
在eFPGA器件的规模定制好之后,就可以确定eFPGA器件的排布信息。
首先根据存储器单元(M4K)和数字信号处理单元(DSP)的资源总量(即以上两种逻辑块的实际使用数量)、M4K、DSP两种逻辑块的宽度和高度以及eFPGA器件的高度,分别计算出M4K和DSP这两种逻辑块类型的列数。
计算的方法是:
M4K-DSP的列数=资源总量×逻辑块的逻辑高度÷器件的高度
把M4K-DSP的列数确定好之后,就可以计算出基本逻辑块(BLK)的列数了。
计算的方法是:BLK列数=器件的宽度-M4K列数×M4K逻辑宽度-DSP列数×DSP逻辑宽度
接下来将M4K和DSP一一组合一起,按照从中心到两边扩散的规则逐步排列M4K和DSP的位置,剩下的M4K或者DSP再单独进行排列。等所有的M4K和DSP单元列都确定下来后,eFPGA器件剩余的列类型都是基本逻辑块(BLK)类型了。排布的具体过程如下:
第一步根据M4K和DSP列数,计算出M4K-DSP组合逻辑块的数量
第二步如果M4K-DSP组合数为奇数,则以器件版图正中心为中心摆放一个M4K-DSP组合块,再依次向两侧对称摆放剩余的M4K-DSP组合块。
第三步如果M4K-DSP组合数为偶数,则以器件版图正中心为中心依次向两侧对称摆放所有的M4K-DSP组合块。
第四步将剩余单独的M4K或者DSP逻辑块,依次向两侧对称摆放。
第五步M4K和DSP的位置确定后,剩余的列都是BLK的位置。
第六步根据四周上、下、左、右4个方向I/O的宽度和pad数量信息,确定出eFPGA器件的pad排布信息。
这样eFPGA器件的排布信息也就定制出来了。
在eFPGA器件的规模和排布确定之后,就可以计算出eFPGA器件的物理尺寸了。器件的物理高度=基础网格的物理高度×器件的逻辑高度÷基础网格的逻辑高度;
最后根据eFPGA器件的规模和排布信息,来生成芯片的数据库文件。
示例的芯片的数据库文件包括2个xml文件,一个是core_arrangement.xml,描述了eFPGA器件的排布信息。
另一个是pad_arrangement.xml,描述了eFPGA器件的I/O管脚信息。
一种自动定制eFPGA器件规模的具体实施方式可以为:
1:读取配置文件逐行解析配置文件内容获得第一参数、用户评估eFPGA器件输入第二参数、用户对eFPGA器件进行预估根据预估值输入第三参数;
2:将第一参数存储到全局的数据结构中;
3:获取出eFPGA器件中每种类型逻辑块的实际使用数量;
4:分别计算出每种逻辑块占用基础网格单元数量;
5:统计所有类型逻辑块占用的基础网格单元数量总和;
6:调整eFPGA器件的高度和宽度来满足eFPGA器件的pad数量;
7:调整eFPGA器件的高度和宽度使得eFPGA器件的高度和宽度成为基础网格高度宽度之倍数;
8:计算出eFPGA器件的规模。
9:生成eFPGA器件的数据库文件。
在该实施例的步骤S1中存在两个不同的操作:
其中一个操作是接收eFPGA器件定制配置文件;接收eFPGA器件的定制配置文件是通过解析xml文件每行的内容,获取eFPGA器件定制配置信息的;
定制配置文件是eFPGA描述其基本结构信息的xml文件,其中记载了如CLB、M4K和DSP等逻辑块的逻辑宽度和高度、物理宽度和高度,器件的单位物理宽度,器件的基本网格大小,以及每个方向上I/O的宽度和pad数量信息等;
另一个操作是接收评估的电路信息和用户对芯片的预期参数;
接收评估电路信息和预期参数值均通过输入的方式完成,评估电路信息指对当前资源使用情况的概述,是用户可以通过查询资源使用情况直接获得的,由于不同场景下资源使用情况有所不同,故而输入资源使用情况需要通过用户手动输入,而预期参数指的是对所定制eFPGA器件的功能预期,它决定了eFPGA器件最后为实现功能的规模大小;
上述两个操作在时序上不做限定,可以同时进行也可以先后进行;
通过两个不同的操作,自动定制方法获取了定制eFPGA器件规模和排布的必要信息,通过解析配置文件最大程度减少了人工的投入,而预先获取对eFPGA的预期可以使eFPGA的定制更加贴近需求。
步骤S2中将第一参数储存在全局数据中,可以提高定制效率,当需要第一参数时可以直接调取。
本实施例中,获取每种逻辑块的实际使用量的操作依托于用户输入的第二参数,第二参数中记载着每种逻辑块的实际使用量。
本实施例中,分别计算每种类型逻辑块的单位数量指的是计算每种逻辑块占用基础网格单元的数量,所使用的公式为:
每种类型逻辑块占用的基础网格单元数量=每种逻辑块实际使用数量×逻辑块的逻辑宽度×逻辑块的逻辑高度
每种类型逻辑块的资源总量指每种类型逻辑块占用的基础网格单元数量,每种逻辑块实际使用数量是评估电路时获取的,而逻辑块的逻辑宽度和高度是指逻辑块的理论宽度和高度而非实际宽度和高度。
本实施例中,将上述每种类型逻辑块占用的基础网格单元数量相加即eFPGA器件所需占用基础网格最小数量,通过调整长度和宽度使其满足基础网格的分配规则,即满足eFPGA器件pad的数量和基础网格的高度与宽度之倍数,即可获得最终eFPGA器件的实际高度与宽度。
本实施例中,将eFPGA器件高度与宽度信息输出数据库文件便于管理,数据库文件格式为xml格式。
虽然本发明已以较佳实施例披露如上,然其并非用以限定本发明,本领域的技术人员在不脱离本发明的精神和范围的前提下,可作若干的更动与润饰,因此本发明的保护范围以本发明的权利要求为准。
Claims (9)
1.一种自动定制eFPGA器件的方法,其特征在于:包括:
步骤S1:获取用户评估电路的信息、预期参数值和定制配置信息;
步骤S2:基于所述预期参数值和所述定制配置信息,分别计算得到eFPGA器件中每种类型逻辑块的资源总量,基于所述逻辑块的资源总量、所述定制配置信息和所述用户评估电路的信息,确定所述eFPGA器件的规模、排布信息;
步骤S3:计算所述eFPGA器件的实际物理尺寸。
2.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:步骤S1包括:
读取配置文件逐行解析所述配置文件内容获得定制配置信息记为第一参数;用户输入对所述eFPGA器件评估信息,得到所述用户评估电路的信息;将评估信息记为第二参数;用户输入对所述eFPGA器件预估值得到所述预期参数值,将预估值记为第三参数;
将所述第一参数存储到全局的数据结构中。
3.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:步骤S2包括:
计算出所述eFPGA器件中每种类型逻辑块的实际使用数量,记为m;
分别计算出所述每种类型逻辑块占用基础网格单元数量,记为Num;
统计所有类型逻辑块占用的基础网格单元数量总和,记为totalNum;
计算出所述eFPGA器件高度H;
调整所述eFPGA器件的高度和宽度来满足所述eFPGA器件的焊盘数量;
调整所述eFPGA器件的高度和宽度使得所述eFPGA器件的高度和宽度成为基础网格高度宽度之倍数。
5.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:步骤S2包括:
分别计算出类型为存储器单元的第一逻辑块和类型为数字信号处理单元的第二逻辑块的列数,相应记为N1和N2;
将所述第一逻辑块和所述第二逻辑块一一配对组合为第三逻辑块;根据所述N1和N2,计算得到所述第三逻辑块的数量;
若所述第三逻辑块数为奇数,则在所述eFPGA器件中心摆放一个所述第三逻辑块,再依次向两侧对称摆放剩余的所述第三逻辑块;若所述第三逻辑块数为偶数,则以所述eFPGA器件为中心依次向两侧对称摆放所述所有的第三逻辑块;
若一一配对组合后还存在剩余的所述第一逻辑块或第二逻辑块,则将剩余的所述第一逻辑块或所述第二逻辑块依次向两侧对称摆放;
排除所述第一逻辑块所在的列和所述第二逻辑块所在的列,剩余的列为排布基本逻辑块的位置;
根据沿一个方向排列的I/O接口的宽度和焊盘的数量,确定出eFPGA器件的排布信息。
6.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:步骤S3包括:
计算所述eFPGA器件的物理高度;
计算所述eFPGA器件的物理宽度。
8.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:在步骤S3之后还进行:
生成描述所述eFPGA器件的排布信息的第一芯片数据库文件;
生成描述所述eFPGA器件的I/O管脚信息的第二芯片数据库文件。
9.一种装置,其特征在于:能执行权利要求1-8任意一项所述的自动定制eFPGA器件的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310294895.3A CN116108788B (zh) | 2023-03-24 | 2023-03-24 | 一种自动定制eFPGA器件的方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310294895.3A CN116108788B (zh) | 2023-03-24 | 2023-03-24 | 一种自动定制eFPGA器件的方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116108788A true CN116108788A (zh) | 2023-05-12 |
CN116108788B CN116108788B (zh) | 2023-08-11 |
Family
ID=86265696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310294895.3A Active CN116108788B (zh) | 2023-03-24 | 2023-03-24 | 一种自动定制eFPGA器件的方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116108788B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094769A (zh) * | 2014-05-06 | 2015-11-25 | 北大方正集团有限公司 | 用户界面的处理方法和装置 |
CN108228972A (zh) * | 2016-12-12 | 2018-06-29 | 德国弗劳恩霍夫应用研究促进协会 | 确定用于可重配置逻辑器件的至少一个电路的布置的方法和计算机程序 |
CN108509725A (zh) * | 2018-04-02 | 2018-09-07 | 中国科学院电子学研究所 | 可定制逻辑器件版图和网表的自动生成方法 |
CN109829230A (zh) * | 2019-01-29 | 2019-05-31 | 中科亿海微电子科技(苏州)有限公司 | Fpga ip核的设计方法 |
CN113761821A (zh) * | 2021-09-15 | 2021-12-07 | 北京中科胜芯科技有限公司 | 一种借由自动工具完成的模块化半定制fpga芯片设计方法 |
CN114065679A (zh) * | 2021-11-19 | 2022-02-18 | 中科亿海微电子科技(苏州)有限公司 | 一种快速的fpga顶层版图设计方法 |
-
2023
- 2023-03-24 CN CN202310294895.3A patent/CN116108788B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094769A (zh) * | 2014-05-06 | 2015-11-25 | 北大方正集团有限公司 | 用户界面的处理方法和装置 |
CN108228972A (zh) * | 2016-12-12 | 2018-06-29 | 德国弗劳恩霍夫应用研究促进协会 | 确定用于可重配置逻辑器件的至少一个电路的布置的方法和计算机程序 |
CN108509725A (zh) * | 2018-04-02 | 2018-09-07 | 中国科学院电子学研究所 | 可定制逻辑器件版图和网表的自动生成方法 |
CN109829230A (zh) * | 2019-01-29 | 2019-05-31 | 中科亿海微电子科技(苏州)有限公司 | Fpga ip核的设计方法 |
CN113761821A (zh) * | 2021-09-15 | 2021-12-07 | 北京中科胜芯科技有限公司 | 一种借由自动工具完成的模块化半定制fpga芯片设计方法 |
CN114065679A (zh) * | 2021-11-19 | 2022-02-18 | 中科亿海微电子科技(苏州)有限公司 | 一种快速的fpga顶层版图设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116108788B (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9270279B2 (en) | Apparatus and methods for time-multiplex field-programmable gate arrays | |
US6532572B1 (en) | Method for estimating porosity of hardmacs | |
US10088407B2 (en) | Systems and methods for efficient contours and gating in flow cytometry | |
CN107547154A (zh) | 一种建立视频流量预测模型的方法及装置 | |
CN105892955A (zh) | 一种管理存储系统的方法及设备 | |
CN113139647B (zh) | 压缩神经网络的半导体装置及压缩神经网络的方法 | |
KR20200010624A (ko) | 머신러닝을 이용한 빅데이터 통합진단 예측 시스템 | |
US5579249A (en) | System for modeling an integrated chip package and method of operation | |
CN109327844A (zh) | 一种小区扩容方法及装置 | |
CN117271820A (zh) | 一种矢量建筑三维景观指数统计方法、系统及设备 | |
CN115424652A (zh) | 修调测试的方法、装置、电子设备和可读存储介质 | |
CN116822452A (zh) | 芯片布局优化方法及相关设备 | |
CN116108788B (zh) | 一种自动定制eFPGA器件的方法与装置 | |
CN111754053A (zh) | 热力信息反馈方法、装置、计算机设备和存储介质 | |
CN117873614A (zh) | 一种fpga芯片内部资源可视化方法 | |
CN117009303B (zh) | 一种芯片视觉测试数据的存储方法 | |
CN110009490A (zh) | 异常金融交易群体识别方法及装置 | |
CN106162668A (zh) | 确定网络参数的方法和装置 | |
CN110188472B (zh) | 基于ai运算管理的智能测重方法及手机测重管理系统 | |
CN111797125A (zh) | 报表的创建方法、装置、电子设备及计算机可读存储介质 | |
CN109377184A (zh) | 工单开立方法、装置、存储介质及终端 | |
CN112598228B (zh) | 企业竞争力的分析方法、装置、设备及存储介质 | |
CN115238659A (zh) | 一种报表数据处理方法和装置 | |
CN115034739A (zh) | 一种线束成本分析方法 | |
JP2803119B2 (ja) | Cmosゲートアレイ消費電力計算方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |