CN102054110A - Fpga可编程逻辑块通用装箱方法 - Google Patents
Fpga可编程逻辑块通用装箱方法 Download PDFInfo
- Publication number
- CN102054110A CN102054110A CN2011100288053A CN201110028805A CN102054110A CN 102054110 A CN102054110 A CN 102054110A CN 2011100288053 A CN2011100288053 A CN 2011100288053A CN 201110028805 A CN201110028805 A CN 201110028805A CN 102054110 A CN102054110 A CN 102054110A
- Authority
- CN
- China
- Prior art keywords
- constraint
- variable
- circuit
- gauze
- type
- 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.)
- Pending
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明属于电子技术领域,具体为一种面向复杂FPGA可编程逻辑块通用装箱方法。本发明是将FPGA的可编程逻辑块的芯片配置描述为一系列用于约束可满足性问题图匹配方法的有向简单图,然后利用约束可满足性问题图匹配方法在用户电路中识别出芯片所支持的逻辑功能子电路进行装箱操作。本发明只要预先定义好描述目标FPGA逻辑功能电路的库文件,就能够支持对不同结构的FPGA芯片进行装箱,如能够对快速进位链,分布式存储器,移位寄存器,LUT5,LUT6等FPGA的各种功能配置进行装箱,有效提高芯片逻辑资源利用率,改善电路时序性能。本发明能够按照指定要求对电路进行优化,同时实现各种模块化电路的映射,在系统架构设计和可重构系统中都有重要的应用。
Description
技术领域
本发明属于电子设计自动化(Electronic Design Automation, EDA)技术领域,具体涉及一种现场可编程门阵列(FPGA,Field Programmable Gate Array)中可编程逻辑块的通用装箱方法。
背景技术
现场可编程门阵列的芯片结构包括可编程逻辑块(Configurable Logic Block,CLB)、可编程输入输出(Input Output Block,IOB)和可编程互连,具有电路功能可重配置、开发周期短、设计成本低等优点,因此在国防武器装备、民用通信、汽车电子和医疗等领域具有广泛的应用。FPGA的软件设计流程主要包括:逻辑综合,工艺映射,装箱,布局和布线。其中装箱是根据目标芯片的功能配置对工艺映射后的逻辑电路进行划分,再将划分后的子电路映射到芯片的可编程逻辑块中。
目前FPGA芯片结构变得更加复杂,通过配置所能实现的功能越来越多。如图1所示的可编程逻辑块结构框图主要包含2个4输入查询表(LUT4)和2个可以配置成触发器(DFF)或锁存器(Latch)的时序器件[1]。除此之外还包括加法逻辑,用于实现快速进位链和乘法器功能;多路选择器,可以将单个CLB配置成一个LUT5或者2个CLB配置成LUT6;存储器控制逻辑,能够将LUT配置成RAM和移位寄存器;以及一些输入选择器,可以将输入信号拉成高低电平或者取反。
当前被广泛应用的装箱工具是由Toronto大学开发的T-VPack[2],通过选取关键路径上的可编程逻辑单元(Logic Cell,LC)作为种子进行装箱,然后再利用时序驱动成本函数选取与该种子单元直接连接的LC继续装箱,从而获得良好的时序性能。然而T-VPack只能将LUT和DFF简单组合在一起进行装箱,无法有效地利用现代FPGA提供的众多功能配置,这样会造成对硬件资源的很大浪费。用户电路对互连资源要求很高的情况下,文献[3]提出的Un/DoPack方法是通过控制CLB内的LC个数来提高布通率,而不是更加有效地利用CLB内部各种逻辑资源来降低布线通道压力。文献[4]提出了针对Xilinx公司早期的XC3000和XC4000系列芯片的装箱方法FDUMap,但还是不能处理如快速进位链等相对复杂的功能配置情况。
参考文献
[2] V. Betz. VPR and T-VPack User’s Manual [OL]. http://www.eecg.utoronto/vpr/
)
(倪刚,来金梅,童家榕。一种基于图模式匹配的逻辑单元映射算法[J]。计算机辅助设计与图形学学报,2006,18(12):1850-1854)
. Quartus II University Interface Program [OL]. http://www.altera.com.cn/education/univ/quip/。
发明内容
本发明的目的在于提供一种能够应用于各种复杂FPGA的可编程逻辑块,高性能的通用装箱方法。
基于以上的发明目的,本发明提出一种新型的基于约束可满足性问题(Constraint Satisfaction Problem,CSP)的图匹配的装箱方法CSPack。即将FPGA装箱问题转化为电路图的子图同构问题,利用约束可满足性问题的求解方法进行图匹配。具体步骤为:
将FPGA的可编程逻辑块的芯片配置描述为一系列用于约束可满足性问题图匹配方法的有向简单图,即将将用户电路和功能电路转换成有向简单图,分别作为约束可满足性问题图匹配的目标图和样本图;构造约束可满足性问题的变量集合和值域;构造约束可满足性问题的约束集合;求解约束可满足性问题,在用户电路中识别出芯片所支持的逻辑功能子电路进行装箱操作。
装箱问题实际上就是以FPGA的可编程逻辑块能够实现的功能电路为样本,在用户电路中找到所有符合样本约束的子电路进行装箱。因此可以将装箱问题类比成图匹配问题,再通过约束可满足性问题的求解方法[5]来求解。首先将用户电路和功能电路转换成有向简单图,分别作为约束可满足性问题图匹配的目标图和样本图,然后再根据电路特性如器件类型、连接关系等来构造约束可满足性问题的约束条件。
具体介绍如下:
1. 将电路图转换成有向简单图
将电路图转换成有向简单图G,这个图有两部分构成:顶点的集合V和边的集合E。一个电路元件就对应有向图中的一个顶点,从一个元件的输出端到另一个元件的输入端只会存在一个连接,这就对应一条边。在进行有向图转换时,电路的输入输出端口将被忽略。每个顶点和边都有名称和类型两个属性,顶点的名称和类型与其所代表元件的名称和类型相同,边的名称和类型由其连接两端的元件名称和类型共同决定。例如两位加法器电路如图2所示,将其转换成的有向简单图如图3。
2.构造约束可满足性问题的变量集合和值域
用约束可满足性问题方法求解图匹配问题,就是将给定的样本图的各个部分抽象成变量,从目标电路图中找出可能的值实例化这些变量,当这些实例化的值满足所有的变量约束条件时,就完成了一次图匹配过程。
将FPGA的可编程逻辑块进行划分后得到不同的功能电路,如图4为简单时序功能配置电路,图5为由两个LUT4以及多路选择器构成的LUT5功能电路。将功能配置电路转换成有向简单图作为约束可满足性问题图匹配方法的一个样本图,此约束可满足性问题中的变量x就是样本图中的顶点或者有向边。由于每个功能配置电路有许多元件和线网组成,这些元件和线网都要抽象成各个变量,所以一个功能配置电路就对应了一组的变量集合X。而约束可满足性问题的值域D对应于用户电路转换成的有向简单图。约束可满足性问题方法的目标就是用值域里的值实例化样本电路中的变量,找出一组合适的组合。
3.构造约束可满足性问题的约束集合
将约束可满足性问题图匹配的方法思想应用于装箱问题,除了考虑有向简单图匹配时应满足的约束条件外,还需要加入额外的约束条件使其能匹配电路。装箱问题的约束描述如下:
1、类型约束:
Ctype指代类型约束,xi指任意元件或线网变量,d指任意元件或线网值,D指元件和线网值的集合。变量和值都具有类型,与电路相关的类型包括元件类型和线网的类型。元件类型就是电路特定的元器件种类,如LUT、DFF等。线网类型则是与其相连接的起点和终点元件的类型有关,定义为type(VSRC)_ARC_type(VTAR),VSRC指起点顶点,VTAR指终点顶点,type()指代类型函数。类型约束实际上是简单图上的顶点和有向边的标识,描述如图2(b)括号中的表示。
2、起点约束:
, Csrc指代起点约束,DE指边的集合,DV指元件的集合,Ep指边对应变量的集合,Vp指元件对应变量的集合,src()指起点函数。对线网匹配有效,即有向边对应变量xE的赋值dE的起点要与顶点对应变量xV的赋值dV相同,也就是要求在匹配线网的时候要求线网的起点元件对应。
3、终点约束:
,Ctar指代终点约束,tar()指终点函数,其他变量说明同上。对线网匹配有效,即有向边对应变量xE的赋值dE的终点要与顶点对应变量xV的赋值dV相同,也就是要求在匹配线网的时候要求线网的终点元件对应。
4、输入约束:
5、输出约束:
,Cout指代输出约束,out()指输出函数,其他变量说明同上。对元件匹配有效,即顶点对应变量xV的赋值dV的输出要与有向边对应变量xE的赋值dE相同,也就是要求在匹配元件的时候要求元件的输出线网对应。
6、输入共享约束:
7、输入等价约束:如果元件的多个输入端在功能上是等价的,则对这一类型的元件赋值时就要满足输入等价的约束条件,比如对LUT赋值时就要添加这类约束。
4.求解约束可满足性问题
目前对约束可满足性问题有一些比较通用的解法,本发明对于约束可满足性问题的求解就是采用通用的回溯(backtracking)方法[5],这里仅作简略介绍。
首先将要求解的变量集合中的所有变量进行排序。根据“首先失败原则”(first fail principle),第一个变量可能的值域越小,就可以指数式的减少所需要搜索的解空间,加速问题求解。所以尽量将这个变量集合中最不常见的器件作为开始求解的切入点,例如有两个变量分别为XOR和LUT类型,由于XOR类型在FPGA的用户网表中更少见,所以先求解XOR类型的变量。
然后用深度优先的方法搜索潜在的解空间。从已经被成功实例化的变量开始,通过前面提到的约束条件,搜索下一个变量可能的值,要求这个值能够满足这些约束条件。当所有变量均被实例化,且都已经满足了这个样本图所有的约束条件以后,约束可满足性问题匹配结束,得到的实例化赋值集合就是要找的目标电路。如果找遍整个值域都找不到满足约束条件的值,则说明上一个变量的实例化值不合适,进行回溯,将上一个变量实例化一个新的值。依次继续,当遍历第一个变量的所有可能值域都找不到满足约束的集合时,说明这个样本电路在用户电路中找不到同构电路。
本发明的方法流程图如图6所示。根据以上内容,基于约束可满足性问题图匹配的通用装箱方法的具体实现步骤如下:
1、读入用户电路网表和FPGA可编程逻辑块的功能描述文件;
2、将用户网表转化为用户电路有向简单图;
3、将功能描述文件转换为样本电路有向简单图;
4、从样本电路图中提取出约束可满足性问题变量集合和约束集合;
5、利用回溯方法求解约束可满足性问题问题进行图匹配;
6、将所有找到的子图转化为基本逻辑块(Logic Cell,LC);
7、将所有的基本逻辑块进行时序驱动的装箱操作,覆盖整个用户网表;
8、结束。
其中第2步和第3步将电路图转化为有向简单图的具体步骤为:
2.1、忽略电路的输入输出端口;
2.2、提取电路元件转成顶点;
2.3、将多输出的线网拆成多条单输出的线网;
2.4、提取电路线网转成有向边;
2.5、结束。
其中第5步回溯方法具体步骤为:
5.1、变量排序;
5.2、实例化当前变量xC,成功实例化后转至步骤5.3;当无法继续实例化变量时,如果xC是第一个变量,转至步骤5.6,否则转至步骤5.5;
5.3、通过与当前变量xC有关的约束条件C,找到下一个变量xN,转至步骤5.4;如果已经实例化完所有变量,转至步骤5.6;
5.4、对xN实例化,在可能的值域中找到实例化值,如果满足约束条件C,将此变量xN定义为xC,转至步骤5.3;如果不满足约束条件C,如果可以继续实例化,继续当前步骤5.4,否则转至步骤5.5;
5.5、撤销上一个变量的实例化,转至5.2;
5.6、结束。
其中第7步进行时序驱动装箱操作的具体步骤为:
7.1、计算所有找出的LC的时间关键度因子;
7.2、选取时间关键度因子最高的LC作为种子;
7.3、新建一个可编程逻辑块CLB,添加入当前作为种子的LC;
7.4、如果当前CLB未满,选取与种子LC关系最为紧密的LC添加入CLB中,否则转至步骤7.3;
7.5、将当前CLB添加入网表;
7.6、判断LC集合是否为空,不为空则转至步骤7.2;
7.7、整个用户电路装箱完成,结束。
本发明只要预先定义好描述目标FPGA逻辑功能电路的库文件,就能够支持对不同结构的FPGA芯片进行装箱。因此这是一种灵活通用的装箱方法,适用于不同结构的FPGA可编程逻辑块,能够对快速进位链,分布式存储器,移位寄存器,LUT5,LUT6等FPGA的各种功能配置进行装箱,有效提高芯片逻辑资源利用率,改善电路时序性能。本发明提出的装箱方法能够按照指定要求对电路进行优化,同时实现各种模块化电路的映射,在系统架构设计和可重构系统中都有重要的应用。
附图说明
图1 复杂FPGA的可编程逻辑块结构框图。
图2 两位加法器电路。
图3 两位加法器电路转换后的有向简单图。
图4 时序配置电路。
图5 组合配置电路。
图6 本发明实现的装箱流程图。
图7 可配置逻辑块的进位链功能电路。
图8 进位链功能电路转换后的有向简单图。
图9 需要优化的用户电路。
图10 优化后可编程逻辑块中的功能结构。
具体实施方式
假设用户电路采用图2中的两位加法器,目标图Gu即为图3。图7是可配置逻辑块的进位链功能电路,建模后的样本图Gp如图8所示。用约束可满足性问题方法解两位加法器装箱问题的过程如下:
(1)将样本图Gp中的顶点和有向边都映射成变量集合X:
(2)将目标图Gu中所有顶点和有向边映射成值域D:
(3)构造变量的约束条件(记为C):
类型约束:
起点约束:
终点约束:
然后将得到的变量集合X、值域D、以及约束条件C作为约束可满足性问题图匹配方法的输入,通过约束可满足性问题来解图匹配问题的方法,最终获得三组约束可满足性问题图匹配方法匹配结果:
。
再将这些顶点和有向边分别转换成元件和线网即得到匹配出的子电路,,match1指代第一组匹配结果,match2代表第二组匹配结果,。
在进行子电路装箱的同时,本发明提出的装箱方法还可以利用芯片的结构特点实现电路的性能优化。例如对于图9电路中DFF复位端的反向器,如果采用传统的装箱方法会将其按照单输入的LUT进行装箱,这样很有可能会多消耗一个可编程逻辑块。对于当前常见的商用FPGA来说,CLB中的输入选择器能够将输入反向,只要将这种输入带反向的情况描述成一个样本电路,方法就会将其识别出来,同时配置芯片上相应管脚的反向属性。如图10,这时方法会将反向器的输入映射为SR_B,用CLB内部资源来替代一个反向LUT。这种优化一方面节省了可编程逻辑资源的使用,另一方面使可编程逻辑块之间的互连变成逻辑块的内部互联,极大地减少了互联延时。
Claims (6)
1.一种FPGA可编程逻辑块通用装箱方法,其特征在于具体步骤为:将FPGA的可编程逻辑块的芯片配置描述为一系列用于约束可满足性问题图匹配方法的有向简单图,即将用户电路和功能电路转换成有向简单图,分别作为约束可满足性问题图匹配的目标图和样本图;构造约束可满足性问题的变量集合和值域;构造约束可满足性问题的约束集合;求解约束可满足性问题,在用户电路中识别出芯片所支持的逻辑功能子电路进行装箱操作。
2.根据权利要求1所述的FPGA可编程逻辑块通用装箱方法,其特征在于所述将用户电路和功能电路转换成有向简单图,有向简单图有两部分构成:顶点的集合V和边的集合E;一个电路元件对应有向图中的一个顶点,从一个元件的输出端到另一个元件的输入端存在一个连接,即对应一条边;在进行有向简单图转换时,电路的输入输出端口被忽略,每个顶点和边都有名称和类型两个属性,顶点的名称和类型与其所代表元件的名称和类型相同,边的名称和类型由其连接两端的元件名称和类型共同决定。
3.根据权利要求2所述的FPGA可编程逻辑块通用装箱方法,其特征在于所述构造约束可满足性问题的变量集合和值域,当将功能配置电路转换成有向简单图作为约束可满足性问题图匹配方法的一个样本图时,此约束可满足性问题中的变量x就是样本图中的顶点或者有向边;每个功能配置电路有许多元件和线网组成,这些元件和线网都被抽象成各个变量,一个功能配置电路就对应了一组的变量集合X;而约束可满足性问题的值域D对应于用户电路转换成的有向简单图。
4.根据权利要求3所述的FPGA可编程逻辑块通用装箱方法,其特征在于所述构造约束可满足性问题的约束集合,具体描述如下:
(1)、类型约束: ,Ctype指类型约束,xi指任意元件或线网变量,d指任意元件或线网值,D指元件和线网值的集合;约束变量和值都具有类型,与电路相关的类型包括元件类型和线网的类型,其中,元件类型就是电路特定的元器件种类,线网类型则是与其相连接的起点和终点元件的类型有关,定义为type(VSRC)_ARC_type(VTAR),VSRC指起点顶点,VTAR指终点顶点,type()指代类型函数;
(2)、起点约束:,Csrc指代起点约束,DE指边的集合,DV指元件的集合,Ep指边对应变量的集合,Vp指元件对应变量的集合,src()指起点函数;对线网匹配有效,即有向边对应变量xE的赋值dE的起点要与顶点对应变量xV的赋值dV相同,也就是要求在匹配线网的时候要求线网的起点元件对应;
(3)、终点约束:
,Ctar指终点约束,tar()指终点函数,其他变量说明同上;对线网匹配有效,即有向边对应变量xE的赋值dE的终点要与顶点对应变量xV的赋值dV相同,也就是要求在匹配线网的时候要求线网的终点元件对应;
(4)、输入约束:,Cin指输入约束,in()指输入函数,其他变量说明同上;对元件匹配有效,即顶点对应变量xV的赋值dV的输入要与有向边对应变量xE的赋值dE相同,也就是要求在匹配元件的时候要求元件的输入线网对应;
(5)、输出约束:
,Cout指输出约束,out()指输出函数,其他变量说明同上;对元件匹配有效,即顶点对应变量xV的赋值dV的输出要与有向边对应变量xE的赋值dE相同,也就是要求在匹配元件的时候要求元件的输出线网对应;
(6)、输入共享约束:
(7)、输入等价约束:如果元件的多个输入端在功能上是等价的,则对这一类型的元件赋值时就要满足输入等价的约束条件。
5. 根据权利要求4所述的FPGA可编程逻辑块通用装箱方法,其特征在于所述求解约束可满足性问题 采用通用的回溯方法。
6.根据权利要求5所述的FPGA可编程逻辑块通用装箱方法,其特征在于具体操作步骤如下:
(1)、读入用户电路网表和FPGA可编程逻辑块的功能描述文件;
(2)、将用户网表转化为用户电路有向简单图;
(3)、将功能描述文件转换为样本电路有向简单图;
(4)、从样本电路图中提取出约束可满足性问题变量集合和约束集合;
(5)、利用回溯方法求解约束可满足性问题问题进行图匹配;
(6)、将所有找到的子图转化为基本逻辑块(Logic Cell,LC);
(7)、将所有的基本逻辑块进行时序驱动的装箱操作,覆盖整个用户网表;
(8)、结束;
其中第(2)步和第(3)步将电路图转化为有向简单图的具体步骤为:
2.1、忽略电路的输入输出端口;
2.2、提取电路元件转成顶点;
2.3、将多输出的线网拆成对应sink数目输出的线网;
2.4、提取电路线网转成有向边;
2.5、结束;
其中第(5)步回溯方法具体步骤为:
5.1、变量排序;
5.2、实例化当前变量xC,成功实例化后转至步骤5.3;当无法继续实例化变量时,如果xC是第一个变量,转至步骤5.6,否则转至步骤5.5;
5.3、通过与当前变量xC有关的约束条件C,找到下一个变量xN,转至步骤5.4;如果已经实例化完所有变量,转至步骤5.6;
5.4、对xN实例化,在可能的值域中找到实例化值,如果满足约束条件C,将此变量xN定义为xC,转至步骤5.3;如果不满足约束条件C,如果可以继续实例化,继续当前步骤5.4,否则转至步骤5.5;
5.5、撤销上一个变量的实例化,转至5.2;
5.6、结束;
其中第(7)步进行时序驱动装箱操作的具体步骤为:
7.1、计算所有找出的LC的时间关键度因子;
7.2、选取时间关键度因子最高的LC作为种子;
7.3、新建一个可编程逻辑块CLB,添加入当前作为种子的LC;
7.4、如果当前CLB未满,选取与种子LC关系最为紧密的LC添加入CLB中,否则转至步骤7.3;
7.5、将当前CLB添加入网表;
7.6、判断LC集合是否为空,不为空则转至步骤7.2;
7.7、整个用户电路装箱完成,结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100288053A CN102054110A (zh) | 2011-01-27 | 2011-01-27 | Fpga可编程逻辑块通用装箱方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100288053A CN102054110A (zh) | 2011-01-27 | 2011-01-27 | Fpga可编程逻辑块通用装箱方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102054110A true CN102054110A (zh) | 2011-05-11 |
Family
ID=43958423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100288053A Pending CN102054110A (zh) | 2011-01-27 | 2011-01-27 | Fpga可编程逻辑块通用装箱方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102054110A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102841306A (zh) * | 2011-07-21 | 2012-12-26 | 北京飘石科技有限公司 | 一种fpga可编程逻辑单元的测试与定位方法 |
CN103745057A (zh) * | 2014-01-08 | 2014-04-23 | 西安电子科技大学 | Fpga中进行电子设计自动化的逻辑单元装箱方法 |
CN104699571A (zh) * | 2015-03-23 | 2015-06-10 | 上海交通大学 | 基于冗余互连资源的fpga单粒子翻转软错误检测方法 |
CN104866678A (zh) * | 2015-06-01 | 2015-08-26 | 复旦大学 | Fpga时序约束布局方法 |
CN105589981A (zh) * | 2014-10-22 | 2016-05-18 | 京微雅格(北京)科技有限公司 | 基于fpga的优化布局结构的加法器的工艺映射方法 |
CN106934077A (zh) * | 2015-12-29 | 2017-07-07 | 京微雅格(北京)科技有限公司 | 一种精确的块进位链的时序分析方法 |
CN107977477A (zh) * | 2016-10-21 | 2018-05-01 | 上海复旦微电子集团股份有限公司 | Fpga芯片的版图生成方法及装置 |
CN107992635A (zh) * | 2016-10-26 | 2018-05-04 | 上海复旦微电子集团股份有限公司 | Fpga的装箱方法及设备 |
CN109145262A (zh) * | 2017-06-15 | 2019-01-04 | 上海复旦微电子集团股份有限公司 | Fpga芯片描述文件的生成方法、装置、存储介质及电子设备 |
CN110020456A (zh) * | 2018-01-10 | 2019-07-16 | 帝斯贝思数字信号处理和控制工程有限公司 | 利用基于图的相似性搜索逐步生成fpga实现的方法 |
CN111062180A (zh) * | 2019-11-08 | 2020-04-24 | 深圳市紫光同创电子有限公司 | 一种fpga布线方法及装置 |
CN112560379A (zh) * | 2020-12-18 | 2021-03-26 | 广东高云半导体科技股份有限公司 | Fpga片内分布式存储单元的建模方法及装置 |
CN115935890A (zh) * | 2022-12-19 | 2023-04-07 | 海光集成电路设计(北京)有限公司 | 电路识别方法、装置、电子设备及计算机可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101515312A (zh) * | 2008-12-03 | 2009-08-26 | 复旦大学 | 一种现场可编程器件fpga逻辑单元模型及其通用装箱算法 |
-
2011
- 2011-01-27 CN CN2011100288053A patent/CN102054110A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101515312A (zh) * | 2008-12-03 | 2009-08-26 | 复旦大学 | 一种现场可编程器件fpga逻辑单元模型及其通用装箱算法 |
Non-Patent Citations (1)
Title |
---|
龚爱慧等: "CSPack:采用CSP图匹配的新型装箱算法", 《计算机辅助设计与图形学学报》 * |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102841306B (zh) * | 2011-07-21 | 2015-06-24 | 北京飘石科技有限公司 | 一种fpga可编程逻辑单元的测试与定位方法 |
CN102841306A (zh) * | 2011-07-21 | 2012-12-26 | 北京飘石科技有限公司 | 一种fpga可编程逻辑单元的测试与定位方法 |
CN103745057A (zh) * | 2014-01-08 | 2014-04-23 | 西安电子科技大学 | Fpga中进行电子设计自动化的逻辑单元装箱方法 |
CN103745057B (zh) * | 2014-01-08 | 2016-05-25 | 西安电子科技大学 | Fpga中进行电子设计自动化的逻辑单元装箱方法 |
CN105589981B (zh) * | 2014-10-22 | 2019-04-09 | 京微雅格(北京)科技有限公司 | 基于fpga的优化布局结构的加法器的工艺映射方法 |
CN105589981A (zh) * | 2014-10-22 | 2016-05-18 | 京微雅格(北京)科技有限公司 | 基于fpga的优化布局结构的加法器的工艺映射方法 |
CN104699571A (zh) * | 2015-03-23 | 2015-06-10 | 上海交通大学 | 基于冗余互连资源的fpga单粒子翻转软错误检测方法 |
CN104866678A (zh) * | 2015-06-01 | 2015-08-26 | 复旦大学 | Fpga时序约束布局方法 |
CN104866678B (zh) * | 2015-06-01 | 2017-12-29 | 复旦大学 | Fpga时序约束布局方法 |
CN106934077B (zh) * | 2015-12-29 | 2020-06-16 | 京微雅格(北京)科技有限公司 | 一种精确的块进位链的时序分析方法 |
CN106934077A (zh) * | 2015-12-29 | 2017-07-07 | 京微雅格(北京)科技有限公司 | 一种精确的块进位链的时序分析方法 |
CN107977477A (zh) * | 2016-10-21 | 2018-05-01 | 上海复旦微电子集团股份有限公司 | Fpga芯片的版图生成方法及装置 |
CN107992635A (zh) * | 2016-10-26 | 2018-05-04 | 上海复旦微电子集团股份有限公司 | Fpga的装箱方法及设备 |
CN107992635B (zh) * | 2016-10-26 | 2021-05-28 | 上海复旦微电子集团股份有限公司 | Fpga的装箱方法及设备 |
CN109145262A (zh) * | 2017-06-15 | 2019-01-04 | 上海复旦微电子集团股份有限公司 | Fpga芯片描述文件的生成方法、装置、存储介质及电子设备 |
CN110020456A (zh) * | 2018-01-10 | 2019-07-16 | 帝斯贝思数字信号处理和控制工程有限公司 | 利用基于图的相似性搜索逐步生成fpga实现的方法 |
CN111062180A (zh) * | 2019-11-08 | 2020-04-24 | 深圳市紫光同创电子有限公司 | 一种fpga布线方法及装置 |
CN112560379A (zh) * | 2020-12-18 | 2021-03-26 | 广东高云半导体科技股份有限公司 | Fpga片内分布式存储单元的建模方法及装置 |
CN115935890A (zh) * | 2022-12-19 | 2023-04-07 | 海光集成电路设计(北京)有限公司 | 电路识别方法、装置、电子设备及计算机可读存储介质 |
CN115935890B (zh) * | 2022-12-19 | 2024-05-31 | 海光集成电路设计(北京)有限公司 | 电路识别方法、装置、电子设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102054110A (zh) | Fpga可编程逻辑块通用装箱方法 | |
US8453079B2 (en) | Automated conversion of synchronous to asynchronous circuit design representations | |
US9098658B2 (en) | Display and automatic improvement of timing and area in a network-on-chip | |
Cong et al. | Technology mapping for FPGAs with embedded memory blocks | |
Coole et al. | Adjustable-cost overlays for runtime compilation | |
US8739102B1 (en) | Method and apparatus for designing a system on multiple field programmable gate array device types | |
US8499262B1 (en) | Method and apparatus for implementing a parameterizable filter block with an electronic design automation tool | |
US8788985B1 (en) | Method and apparatus for implementing a processor interface block with an electronic design automation tool | |
CN102163248B (zh) | 一种集成电路的高级综合方法 | |
WO2022199459A1 (zh) | 一种可重构处理器及配置方法 | |
US8793629B1 (en) | Method and apparatus for implementing carry chains on FPGA devices | |
CN109891843A (zh) | 用于可编程逻辑器件的时钟恢复和数据恢复 | |
CN102375905B (zh) | 一种针对改进逻辑单元的集成电路的工艺映射方法 | |
Palchaudhuri et al. | Efficient implementation of scan register insertion on integer arithmetic cores for FPGAs | |
CN103959652A (zh) | 集成电路内的嵌入式存储器和专用处理器结构 | |
CN104460444B (zh) | 基于广义相关系数的fpga运算电路 | |
CN103885819A (zh) | 一种针对fpga面积优化的优先级资源共享方法 | |
CN100578513C (zh) | 三态器件上拉阻抗/下拉阻抗/总线保持转换方法 | |
Curtinhas et al. | VHDLASYN: A tool for synthesis of asynchronous systems from of VHDL behavioral specifications | |
Moeller | Field programmable gate arrays for radar front-end digital signal processing | |
Krekelberg et al. | Yet another silicon compiler | |
CN106709187A (zh) | 基于模型建立cpu的方法及装置 | |
Möller | Run-time Reconfigurable Constant Multiplication on Field Programmable Gate Arrays | |
WO2023166877A1 (ja) | 処理方法、非同期式回路、および論理回路 | |
CN107632816A (zh) | 通过在设计编制期间替换用于执行除法的部件来改进系统操作的方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C05 | Deemed withdrawal (patent law before 1993) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110511 |