CN116108788B - 一种自动定制eFPGA器件的方法与装置 - Google Patents

一种自动定制eFPGA器件的方法与装置 Download PDF

Info

Publication number
CN116108788B
CN116108788B CN202310294895.3A CN202310294895A CN116108788B CN 116108788 B CN116108788 B CN 116108788B CN 202310294895 A CN202310294895 A CN 202310294895A CN 116108788 B CN116108788 B CN 116108788B
Authority
CN
China
Prior art keywords
efpga
logic block
height
width
information
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.)
Active
Application number
CN202310294895.3A
Other languages
English (en)
Other versions
CN116108788A (zh
Inventor
刘洋
邵林林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ehiway Microelectronic Science And Technology Suzhou Co ltd
Original Assignee
Ehiway Microelectronic Science And Technology Suzhou Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ehiway Microelectronic Science And Technology Suzhou Co ltd filed Critical Ehiway Microelectronic Science And Technology Suzhou Co ltd
Priority to CN202310294895.3A priority Critical patent/CN116108788B/zh
Publication of CN116108788A publication Critical patent/CN116108788A/zh
Application granted granted Critical
Publication of CN116108788B publication Critical patent/CN116108788B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/347Physical level, e.g. placement or routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/16Customisation or personalisation
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Facsimiles In General (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明提供一种自动定制eFPGA器件的方法,包括:获取用户评估电路的信息、预期参数值和定制配置信息;基于所述预期参数值和所述定制配置信息,分别计算得到eFPGA器件中每种类型逻辑块的资源总量,基于所述逻辑块的资源总量、所述定制配置信息和所述用户评估电路的信息,确定所述eFPGA器件的规模、排布信息;计算所述eFPGA器件的实际物理尺寸。本发明通过自动获取关键参数,自主运算和排布提升了eFPGA器件定制的自动化程度,通过实际参数与逻辑参数配合提高了eFPAG器件规模定制的精度,通过预期参数和规模参数的配合使得eFPGA器件的排布更高效。本发明还提供了一种自动定制eFPGA器件的装置。

Description

一种自动定制eFPGA器件的方法与装置
技术领域
本发明属于可编程逻辑器件(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器件高度的公式是:
H=
上述步骤后还可以进行,自动定制所述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;
所述eFPGA的物理宽度=,n表示所述eFPGA器件的网格总数,表示当前网格i的物理宽度。
在步骤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=
其中,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器件的物理尺寸了。器件的物理高度=基础网格的物理高度×器件的逻辑高度÷基础网格的逻辑高度;
器件的物理宽度=
其中n表示器件的网格总数,表示当前网格i的物理宽度。
最后根据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 (6)

1.一种自动定制eFPGA器件的方法,其特征在于:包括:
步骤S1:获取用户评估电路的信息、预期参数值和定制配置信息,所述定制配置信息记载了所述eFPGA器件的单位物理尺寸、基本网格尺寸和沿一个方向排列的I/O接口的宽度和焊盘的数量;
步骤S2:基于所述预期参数值和所述定制配置信息,分别计算得到eFPGA器件中每种类型逻辑块占用基础网格单元数量,基于所述每种类型逻辑块占用基础网格单元数量、所述定制配置信息和所述用户评估电路的信息,确定所述eFPGA器件的规模、排布信息;
步骤S3:计算所述eFPGA器件的物理高度和宽度,将基础网格的物理高度记为K,所述eFPGA器件的逻辑高度记为L,所述基础网格的逻辑高度记为Z,则计算eFPGA器件物理高度的公式为:
器件的物理高度=K×L÷Z;
所述其中n表示所述eFPGA器件的网格总数,Gridlength(i)表示当前网格i的物理宽度;
所述步骤S2中,
将所述逻辑块的宽度和高度记为W和J,将所述逻辑块期望宽度和期望高度记为W’和J’,所述eFPGA器件中每种类型逻辑块的实际使用数量记为m;
计算每种逻辑块占用基础网格单元数量的公式是:
Num=m×W×J;
将Num全部相加即可获得totalNum;
计算eFPGA器件高度的公式是:
确定所述eFPGA器件的排布信息的方法包括:分别计算出类型为存储器单元的第一逻辑块和类型为数字信号处理单元的第二逻辑块的列数,相应记为N1和N2;
将所述第一逻辑块和所述第二逻辑块一一配对组合为第三逻辑块;根据所述N1和N2,计算得到所述第三逻辑块的数量;
若所述第三逻辑块数为奇数,则在所述eFPGA器件中心摆放一个所述第三逻辑块,再依次向两侧对称摆放剩余的所述第三逻辑块;若所述第三逻辑块数为偶数,则以所述eFPGA器件为中心依次向两侧对称摆放所有的所述第三逻辑块;
若一一配对组合后还存在剩余的所述第一逻辑块或第二逻辑块,则将剩余的所述第一逻辑块或所述第二逻辑块依次向两侧对称摆放。
2.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:步骤S1包括:
读取配置文件逐行解析所述配置文件内容获得定制配置信息记为第一参数;用户输入对所述eFPGA器件评估信息,得到所述用户评估电路的信息;将评估信息记为第二参数;用户输入对所述eFPGA器件预估值得到所述预期参数值,将预估值记为第三参数;
将所述第一参数存储到全局的数据结构中。
3.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:步骤S2包括:
调整所述eFPGA器件的高度和宽度来满足所述eFPGA器件的焊盘数量;
调整所述eFPGA器件的高度和宽度使得所述eFPGA器件的高度和宽度成为基础网格高度和宽度的倍数。
4.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:步骤S2包括:
排除所述第一逻辑块所在的列和所述第二逻辑块所在的列,剩余的列为排布基本逻辑块的位置;
根据沿一个方向排列的I/O接口的宽度和焊盘的数量,确定出eFPGA器件的排布信息。
5.根据权利要求1所述的自动定制eFPGA器件的方法,其特征在于:在步骤S3之后还进行:
生成描述所述eFPGA器件的排布信息的第一芯片数据库文件;
生成描述所述eFPGA器件的I/O管脚信息的第二芯片数据库文件。
6.一种装置,其特征在于:能执行权利要求1-5任意一项所述的自动定制eFPGA器件规模和排布方法。
CN202310294895.3A 2023-03-24 2023-03-24 一种自动定制eFPGA器件的方法与装置 Active CN116108788B (zh)

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 CN116108788A (zh) 2023-05-12
CN116108788B true 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)

* Cited by examiner, † Cited by third party
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顶层版图设计方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
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
CN116108788A (zh) 2023-05-12

Similar Documents

Publication Publication Date Title
US6611951B1 (en) Method for estimating cell porosity of hardmacs
US6532572B1 (en) Method for estimating porosity of hardmacs
US20090172063A1 (en) Multi-Threaded Codeless User-Defined Functions
CN113139647B (zh) 压缩神经网络的半导体装置及压缩神经网络的方法
US5579249A (en) System for modeling an integrated chip package and method of operation
KR20200010624A (ko) 머신러닝을 이용한 빅데이터 통합진단 예측 시스템
CN116108788B (zh) 一种自动定制eFPGA器件的方法与装置
CN110134398A (zh) 表格数据的解析方法、系统及设备
CN111754053A (zh) 热力信息反馈方法、装置、计算机设备和存储介质
CN116822452A (zh) 芯片布局优化方法及相关设备
CN103853861B (zh) 评估3d ic的电源供应的方法和装置
CN108416151B (zh) 一种基于模型的卫星测控信息流智能化设计系统及故障信息快速定位方法
US7409650B2 (en) Low power consumption designing method of semiconductor integrated circuit
CN109948812A (zh) 确定故障原因的方法、装置、存储介质及电子设备
CN109377184A (zh) 工单开立方法、装置、存储介质及终端
US7594212B1 (en) Automatic pin placement for integrated circuits to aid circuit board design
CN112598228B (zh) 企业竞争力的分析方法、装置、设备及存储介质
CN115034739A (zh) 一种线束成本分析方法
CN113627010A (zh) 一种自适应实例化方法及自适应实例化系统
CN112463785A (zh) 一种数据质量监控方法、装置、电子设备及存储介质
CN111797125A (zh) 报表的创建方法、装置、电子设备及计算机可读存储介质
CN112307700B (zh) 可编程器件的位流并行生成方法及系统
CN109145277A (zh) 图表生成方法、装置、存储介质和电子设备
CN113932875B (zh) 用于确定搅拌站的计量秤容积的方法、处理器及搅拌站
JP6326756B2 (ja) スキャンパスを構成するための情報処理装置、スキャンパス接続方法及びプログラム

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