CN117787172A - 布线资源图的构建方法、装置、计算机设备及存储介质 - Google Patents
布线资源图的构建方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN117787172A CN117787172A CN202311826120.2A CN202311826120A CN117787172A CN 117787172 A CN117787172 A CN 117787172A CN 202311826120 A CN202311826120 A CN 202311826120A CN 117787172 A CN117787172 A CN 117787172A
- Authority
- CN
- China
- Prior art keywords
- sub
- wiring resource
- wiring
- resource map
- module
- 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
- 238000010586 diagram Methods 0.000 title claims abstract description 188
- 238000010276 construction Methods 0.000 title claims abstract description 21
- 238000000034 method Methods 0.000 claims abstract description 58
- 230000015654 memory Effects 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 2
- 238000013461 design Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 10
- 238000013073 enabling process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明涉及可编程逻辑器件技术领域,公开了一种布线资源图的构建方法、装置、计算机设备及存储介质,该方法包括:确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图,子布线资源图包括对应的基础模块内的多个输入输出引脚和多个输入输出引脚的连接关系;对比第一子布线资源图和第二子布线资源图,第一子布线资源图为第一基础模块的子布线资源图,第二子布线资源图为第二基础模块的子布线资源图;在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图;将第三子布线资源图确定为布线资源图。本发明能够减少布线资源图占用的存储空间以及加载所需要的时长。
Description
技术领域
本发明涉及可编程逻辑器件技术领域,具体涉及一种布线资源图的构建方法、装置、计算机设备及存储介质。
背景技术
布线是现场可编程逻辑门阵列(Field-Programmable Gate Array,FPGA)芯片支持软件设计中的必要环节,在布线过程中,需要预先加载布线资源图以保证布线环节正常进行。其中,布线资源图通常是指FPGA芯片内部的可编程互连网络图,用于显示FPGA中逻辑资源(例如查找表或触发器等)之间的物理连接关系。
目前,布线资源图往往会根据芯片模型进行完整的构建,然而该构建方法极大程度上忽视了FPGA的架构特性,导致构建的布线资源图的数据量较大,占用较多的存储空间,且需要较长的加载时间。
发明内容
有鉴于此,本发明提供了一种布线资源图的构建方法、装置、计算机设备及存储介质,以解决构建的布线资源图的数据量较大,导致的布线资源图占用的存储空间较大,需要消耗的加载时间较长的问题。
第一方面,本发明提供了一种布线资源图的构建方法,方法包括:确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图,其中,子布线资源图包括对应的基础模块内的多个输入输出引脚和多个输入输出引脚的连接关系,基础模块为现场可编程逻辑门阵列芯片中的基础模块;对比第一子布线资源图和第二子布线资源图,其中,第一子布线资源图为第一基础模块的子布线资源图,第二子布线资源图为第二基础模块的子布线资源图,第一基础模块和第二基础模块为多个基础模块中任意两个基础模块;在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图,其中,第一目标子布线资源图为第一子布线资源图或第二子布线资源图;将第三子布线资源图确定为布线资源图,其中,第三子布线资源图为多个子布线资源图中除第一目标子布线资源图之外的子布线资源图。
本实施例提供的布线资源图的构建方法,在确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图之后,对比第一子布线资源图和第二子布线资源图,在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图,将多个子布线资源图中除第一目标子布线资源图之外的子布线资源图确定为布线资源图。在本实施例中,通过对FPGA芯片以基础模块为单位进行层次化拆解,对比多个基础模块对应的子布线资源图,只存储相同的子布线资源图中的其中一份,能够在不影响布线环节的基础上,减少FPGA布线资源图占用的存储空间,同时,能够缩短加载布线资源图所需的时长,减少布线环节的运行时间。
在一种可选的实施方式中,在对比第一子布线资源图和第二子布线资源图之前,方法还包括:确定第一基础模块的类型和第二基础模块的类型是否相同;对比第一子布线资源图和第二子布线资源图,包括:在第一基础模块的类型和第二基础模块的类型相同的情况下,对比第一子布线资源图和第二子布线资源图。
本实施例提供的布线资源图的构建方法,在确定第一基础模块的类型和第二基础模块的类型是否相同之后,只在第一基础模块的类型和第二基础模块的类型相同的情况下,对比第一子布线资源图和第二子布线资源图,可以大幅度减少判断对比过程,以及减少删除重复子布线资源图的时长,提升构建布线资源图的效率。
在一种可选的实施方式中,多个基础模块之间相互连接,在对比第一子布线资源图和第二子布线资源图之前,方法还包括:确定第三基础模块和第四基础模块是否相同,其中,第三基础模块为多个基础模块中与第一基础模块连接的基础模块,第四基础模块为多个基础模块中与第二基础模块连接的基础模块;对比第一子布线资源图和第二子布线资源图,包括:在第三基础模块和第四基础模块相同的情况下,对比第一子布线资源图和第二子布线资源图。
本实施例提供的布线资源图的构建方法,在确定第三基础模块和第四基础模块是否相同之后,只在第三基础模块和第四基础模块相同的情况下,对比第一子布线资源图和第二子布线资源图,可以大幅度减少判断对比过程,以及减少删除重复子布线资源图的时长,提升构建布线资源图的效率。
在一种可选的实施方式中,以键值对的形式存储每个基础模块的位置信息和每个基础模块对应的子布线资源图的标识。
在本实施例中,以键值对的形式存储每个基础模块的位置信息和每个基础模块对应的子布线资源图的标识,在布线过程中只需确定引脚所在基础模块的坐标,即可找到对应的子布线资源图,确定该引脚与其他引脚的连接关系,提升布线效率。
在一种可选的实施方式中,在删除第一目标子布线资源图之后,方法还包括:将值中存储的第一目标子布线资源图的标识替换为第二目标子布线资源图的标识,其中,在第一目标子布线资源图为第一子布线资源图时,第二目标子布线资源图为第二子布线资源图,在第一目标子布线资源图为第二子布线资源图时,第二目标子布线资源图为第一子布线资源图。
在本实施例中,通过对每个坐标对应的子布线资源图进行对比,能够确定一系列完全等价的子布线资源图,并从所有重复的子布线资源图中选择第一个进行保留其余删除,同时将被删除的坐标对应的子布线资源图的标识指向保留的子布线资源图的标识,即多个基础模块的坐标指向同一子布线资源图的标识,使最终生成的布线资源图中的子布线资源图的个数少于FPGA芯片的基础模块的个数,能够减少布线资源图所占用的存储空间,缩短加载布线资源图所需的时间。
在一种可选的实施方式中,通过引脚对的形式表示多个输入输出引脚的连接关系,其中,在连接的两个输入输出引脚属于同一基础模块时,引脚对包括两个输入输出引脚的标识,在连接的两个输入输出引脚属于不同基础模块时,引脚对包括一个输入输出引脚的标识和另一个输入输出引脚的标识、相对位置信息和目标类型,其中,相对位置信息为两个输入输出引脚所在的基础模块之间的相对位置,目标类型为另一个输入输出引脚所在的基础模块的类型。
在本实施例中,通过引脚对的形式表示基础模块中多个输入输出引脚的连接关系,在布线过程中确定输入输出引脚的编号、输入输出引脚所在基础模块的类型和坐标信息,可以更准确地找到FPGA芯片上相应地输入输出引脚,减少出错的概率。
在一种可选的实施方式中,确定多个基础模块中每个基础模块的子布线资源图,得到多个子布线资源图,包括:根据每个基础模块的硬件单元,确定每个基础模块的子布线资源图。
在本实施例中,基于每个基础模块的硬件单元,能够更准确地确定每个基础模块的子布线资源图。
第二方面,本发明提供了一种布线资源图的构建装置,装置包括:第一确定模块,用于确定多个基础模块中每个基础模块的子布线资源图,得到多个子布线资源图,其中,子布线资源图包括对应的基础模块内的多个输入输出引脚和多个输入输出引脚的连接关系,基础模块为现场可编程逻辑门阵列芯片中的基础模块;对比模块,用于对比第一子布线资源图和第二子布线资源图,其中,第一子布线资源图为第一基础模块的子布线资源图,第二子布线资源图为第二基础模块的子布线资源图,第一基础模块和第二基础模块为多个基础模块中任意两个基础模块;删除模块,用于在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图,其中,第一目标子布线资源图为第一子布线资源图或第二子布线资源图;第二确定模块,用于将第三子布线资源图确定为布线资源图,其中,第三子布线资源图为多个子布线资源图中除第一目标子布线资源图之外的子布线资源图。
在一种可选的实施方式中,装置还包括:第三确定模块,用于确定第一基础模块的类型和第二基础模块的类型是否相同;对比模块,包括:第一对比单元,用于在第一基础模块的类型和第二基础模块的类型相同的情况下,对比第一子布线资源图和第二子布线资源图。
在一种可选的实施方式中,装置还包括:第四确定模块,用于确定第三基础模块和第四基础模块是否相同,其中,第三基础模块为多个基础模块中与第一基础模块连接的基础模块,第四基础模块为多个基础模块中与第二基础模块连接的基础模块;对比模块,包括:第二对比单元,用于在第三基础模块和第四基础模块相同的情况下,对比第一子布线资源图和第二子布线资源图。
在一种可选的实施方式中,以键值对的形式存储每个基础模块的位置信息和每个基础模块对应的子布线资源图的标识。
在一种可选的实施方式中,装置还包括:替换模块,用于将值中存储的第一目标子布线资源图的标识替换为第二目标子布线资源图的标识,其中,在第一目标子布线资源图为第一子布线资源图时,第二目标子布线资源图为第二子布线资源图,在第一目标子布线资源图为第二子布线资源图时,第二目标子布线资源图为第一子布线资源图。
在一种可选的实施方式中,通过引脚对的形式表示多个输入输出引脚的连接关系,其中,在连接的两个输入输出引脚属于同一基础模块时,引脚对包括两个输入输出引脚的标识,在连接的两个输入输出引脚属于不同基础模块时,引脚对包括一个输入输出引脚的标识和另一个输入输出引脚的标识、相对位置信息和目标类型,其中,相对位置信息为两个输入输出引脚所在的基础模块之间的相对位置,目标类型为另一个输入输出引脚所在的基础模块的类型。
在一种可选的实施方式中,第一确定模块,包括:第一确定单元,用于根据每个基础模块的硬件单元,确定每个基础模块的子布线资源图。
第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的方法。
第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的方法。
附图说明
为了更清楚地说明本发明具体实施方式或相关技术中的技术方案,下面将对具体实施方式或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的FPGA芯片使能过程的流程示意图;
图2是根据本发明实施例的布线过程的示意图;
图3是根据本发明实施例的一种布线资源图的构建方法的流程示意图;
图4是根据本发明实施例的FPGA芯片的结构示意图;
图5是根据本发明实施例的基础模块的结构示意图;
图6是根据本发明实施例的另一种布线资源图的构建方法的流程示意图;
图7是根据本发明实施例的又一种布线资源图的构建方法的流程示意图;
图8是根据本发明实施例的布线资源图的构建装置的结构框图;
图9是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的布线资源图的构建方法主要应用于FPGA领域,用于构建FPGA的布线资源图。
FPGA是一种可编程逻辑器件,可以用于实现数字电路的功能,与传统的专用集成电路(Application Specific Integrated Circuit,ASIC)相比,FPGA可以在用户端进行配置和重编程,具有较高的灵活性和可编程性。
从用户设计到FPGA芯片的使能过程可以如图1所示,该过程可包括用户设计、解析与优化、综合、布局、布线和生成比特流六个环节。具体地,FPGA内部由一系列逻辑资源组成,例如,查找表(Look-Up Table,LUT)、触发器(Flip-Flop,FF)和存储单元等逻辑资源,在用户设计环节,用户可以根据需求设计逻辑功能,在用户设计完成之后,对设计中的各个功能块或逻辑进行分析,确定各个功能块或逻辑之间的依赖关系和使能关系,以优化设计的性能和资源占用,以及确保设计在FPGA芯片中可以正确映射和实现,然后可以通过电子设计自动化(Electronic Design Automation,EDA)软件进行综合环节,在综合环节之后,将用户设计转化为与FPGA上的逻辑功能等效的硬件单元以及硬件单元的连接方式,比如用户设计实现了一个1比特(bit)加法a+b的功能,可以通过硬件单元LUT实现该逻辑功能。
在确定与用户设计逻辑功能等效的硬件单元之后,在布局环节确定每一个硬件单元被放置在FPGA芯片上的位置,在确认每一个硬件单元的位置之后进入布线环节,确认硬件单元的输入输出引脚之间的连接关系,并通过可用的可编程连线资源进行连接,之后进入生成比特流环节,将设计好的FPGA逻辑映射转化为可被FPGA芯片读取和执行的格式,通过加载比特流文件到FPGA芯片,使逻辑设计可以映射到FPGA芯片,进而使FPGA芯片实现所需的功能和性能。
由上可知,布线是FPGA芯片使能过程中的一个必要环节,其核心功能在于结合逻辑资源信息与布局之后的结果确认引脚之间的连接关系。布线过程往往采用路径搜索的方式,在已知起点引脚位置以及终点引脚位置的情况下,从起点逐步进行路径搜索,如果起点引脚位置与终点引脚位置之间确实存在路径,则基于布线资源图可以找到连接路径。布线资源图存储了引脚以及引脚之间的连接关系,每一次进行布线环节时都需要预先加载布线资源图以保证布线环节正常进行。
示例性的,布线的具体过程可以如图2所示,假设起点引脚位置为节点0,终点引脚位置为节点4,也就是说,需要找到节点0到节点4的一条路径,那么从节点0出发可以找到节点1,再从节点1出发可以找到节点3,之后从节点3出发找到节点4,从而找到了一条从节点0到节点4的路径为:节点0->节点1->节点3->节点4。同理,也能找到另一条路径:节点0->节点2->节点3->节点4。从这里可以看到,布线过程是通过当前节点一步一步向周围可通往的节点寻找路径的,布线资源图的意义就在于标注出引脚之间的连接关系。比如,在节点0的位置,如果没有布线资源图,则无法确定节点0可以直接通向的节点1和节点2,进而无法进行路径搜索。
但是,目前布线资源图往往会根据FPGA芯片模型进行完整的构建,然而该构建方法极大程度上忽视了FPGA芯片上存在大量的重复单元的架构特性,导致构建的布线资源图的数据量较大,进而导致布线资源图占用的存储空间较大,需要消耗的加载时间较长。
有鉴于此,本发明提供了一种布线资源图的构建方法,能够识别FPGA芯片上特征完全相同的布线资源区域,针对布线资源完全相同的区域仅存储一份对应的布线资源图,从而大大减少布线资源图占用的存储空间以及加载所需要的时长。
根据本发明实施例,提供了一种布线资源图的构建方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种布线资源图的构建方法,可用于计算机设备、笔记本电脑或服务器等设备,图3是根据本发明实施例的一种布线资源图的构建方法的流程示意图,如图3所示,该方法包括如下步骤:
步骤S301,确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图。
其中,子布线资源图包括对应的基础模块(Tile)内的多个输入输出引脚和多个输入输出引脚的连接关系,基础模块为FPGA芯片中的基础模块。
具体地,FPGA芯片由一系列的基础模块(Tile)构成,Tile与Tile之间有一系列的连接关系,FPGA芯片可以如图4所示,但不限于此。例如,如图4所示,FPGA芯片包括Tile 0至Tile 11,Tile 0连接Tile 1和Tile 4,Tile 5连接Tile 1、Tile 4、Tile 6和Tile 9。多个基础模块可以为FPGA芯片中的所有基础模块,例如,多个基础模块为如图4所示的Tile 0至Tile 11。
示例性的,如图5所示,基础模块(Tile)包括交换集线器(Switch Hub)和逻辑资源两部分,Switch Hub包括一系列数据选择器,逻辑资源包括查找表、寄存器、数字信号处理器(Digital Signal Processor,DSP)和随机块存储器(Block Random Access Memory,BRAM)等。多个输入输出引脚可以为逻辑资源的输入输出引脚,也可以为数据选择器的输入输出引脚。
其中,基础模块包括的逻辑资源不同,基础模块对应的类型也不同,即FPGA芯片可以包括不同类型的多个基础模块,每个类型的基础模块可能有一个或多个。例如,包括DSP的Tile,可以称为DSP类型的Tile,包括BRAM的Tile,可以称为BRAM类型的Tile。
应理解,数据选择器是一种数字逻辑电路,用于从多个输入数据中选择一个特定的数据输出,根据输入信号的控制值(选择信号)选择对应的数据输入,并将选中的数据输出到输出端。数据选择器通常有两个或多个数据输入端,一个选择输入端和一个输出端。选择输入端用于接收控制信号,用来选择哪个数据输入被传递到输出端,数据输入端则是输入各个数据信号的接口,输出端则是输出选择的数据信号。常见的数据选择器类型包括2选1、4选1、8选1等。
示例性的,可以基于获取的FPGA芯片的物理硬件单元,确定多个基础模块中的每个基础模块的子布线资源图;也可以基于设计人员的输入信息,确定多个基础模块中的每个模块的子布线资源图。
步骤S302,对比第一子布线资源图和第二子布线资源图。
其中,第一子布线资源图为第一基础模块的子布线资源图,第二子布线资源图为第二基础模块的子布线资源图,第一基础模块和第二基础模块为多个基础模块中任意两个基础模块。
具体地,在确定多个基础模块对应的子布线资源图之后,将多个基础模块中任意两个基础模块对应的子布线资源图进行对比,确定任意两个基础模块对应的子布线资源图是否相同,若任意两个基础模块对应的子布线资源图存储的多个输入输出引脚的连接关系完全相同,则任意两个基础模块对应的子布线资源图相同;若任意两个基础模块对应的子布线资源图存储的多个输入输出引脚的连接关系不相同,则任意两个基础模块对应的子布线资源图不同。
例如,如图4所示,依次对比Tile 0对应的子布线资源图和其他Tile对应的子布线资源图,确定Tile 0对应的子布线资源图和其他Tile对应的子布线资源图是否相同。其中,其他Tile为多个Tile中除Tile 0之外的所有Tile,此时,在图4中,其他Tile可以为Tile 1至Tile11。
步骤S303,在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图。
其中,第一目标子布线资源图为第一子布线资源图或第二子布线资源图。
具体地,若两个Tile对应的子布线资源图相同,则删除其中一个Tile对应的子布线资源图,保留另一个Tile的子布线资源图。例如,若Tile 0对应的子布线资源图和Tile 1对应的子布线资源图相同,则删除Tile 0对应的子布线资源图,保留Tile 1对应的子布线资源图,当然也可以删除Tile 1对应的子布线资源图,保留Tile 0对应的子布线资源图。即,在多个子布线资源图相同的情况下,只保留多个相同的子布线资源图中的其中一个。
步骤S304,将第三子布线资源图确定为布线资源图。
其中,第三子布线资源图为多个子布线资源图中除第一目标子布线资源图之外的子布线资源图。
例如,如图4所示,经过对比确定Tile 0、Tile 3和Tile 7对应的子布线资源图相同,Tile 1、Tile 2、Tile 4至Tile 6、Tile 8至Tile 11对应的子布线资源图各不相同,则Tile 0至Tile 3、Tile 4至Tile 6以及Tile 8至Tile 11对应的子布线资源图组成FPGA芯片的布线资源图。
本实施例提供的布线资源图的构建方法,在确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图之后,对比第一子布线资源图和第二子布线资源图,在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图,将多个子布线资源图中除第一目标子布线资源图之外的子布线资源图确定为布线资源图。在本实施例中,通过对FPGA芯片以基础模块为单位进行层次化拆解,对比多个基础模块对应的子布线资源图,只存储相同的子布线资源图中的其中一份,能够在不影响布线环节的基础上,减少FPGA布线资源图占用的存储空间,同时,能够缩短加载布线资源图所需的时长,减少布线环节的运行时间。
在本实施例中提供了一种布线资源图的构建方法,可用于计算机设备、笔记本电脑或服务器等设备,图6是根据本发明实施例的另一种布线资源图的构建方法的流程示意图,如图6所示,该方法包括如下步骤:
步骤S601,确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图。
具体地,可以根据FPGA芯片中每个Tile对应的硬件单元,确定每个Tile的子布线资源图。
示例性的,在确定多个子布线资源图之后,以键值对(key-value)的形式存储每个基础模块的位置信息和每个基础模块对应的子布线资源图的标识,即构建的子布线资源图在数据结构上的存储方式是将基础模块的位置信息作为key,将基础模块对应的子布线资源图的标识作为value构建一系列的映射关系,并且最终以文件的形式输出布线资源图。其中,位置信息可以为坐标,本发明对标识的形式不做限定,例如,标识可以为数字、字母或字符等。
具体地,以横向作为x方向,纵向作为y方向,选定一个Tile作为原点,即能确定FPGA芯片上的每一个Tile的坐标。例如,如图4所示,将Tile 8的坐标定义为(0,0),即将Tile 8作为坐标原点,可以确定Tile 5的坐标为(1,1)。此时,可以通过{(1,2),A}表示基础模块和对应的子布线资源图的映射关系,(1,2)表示FPGA芯片上坐标为(1,2)的基础模块,A为坐标为(1,2)的基础模块对应的子布线资源图的标识。
在本实施例中,以键值对的形式存储每个基础模块的位置信息和每个基础模块对应的子布线资源图的标识,在布线过程中只需确定引脚所在基础模块的坐标,即可找到对应的子布线资源图,确定该引脚与其他引脚的连接关系,提升布线效率。
在本实施例中,最终生成的布线资源图以文件的形式进行承载,能够使布线资源图针对每一种不同的FPGA提前生成,而不是在设计工具运行过程中生成,从而避免影响设计工具的运行效率,在使用时进行预加载即可。同时,文件读取布线资源图,可以很好的加速布线资源图的加载进程,进而减少整个布线环节的运行时间。
示例性的,可以通过引脚对的形式表示基础模块中多个输入输出引脚的连接关系。例如,{输入输出引脚C,输入输出引脚D}表示该基础模块中的输入输出引脚C和输入输出引脚D之间存在连接关系。
具体地,在连接的两个输入输出引脚属于同一基础模块时,引脚对包括两个输入输出引脚的标识,在连接的两个输入输出引脚属于不同基础模块时,引脚对包括一个输入输出引脚的标识和另一个输入输出引脚的标识、相对位置信息和目标类型,相对位置信息为两个输入输出引脚所在的基础模块之间的相对位置,目标类型为另一个输入输出引脚所在的基础模块的类型。
也就是说,输入输出引脚与输入输出引脚之间的连接存在两种情况,一种是Tile内部的输入输出引脚之间的连接关系,一种是Tile之间的输入输出引脚连接关系。Tile内部的输入输出引脚的连接关系可以仅通过输入输出引脚的标识(编号)表示,例如,{10,15}表示该Tile内部编号10与编号15的引脚之间存在连接关系。Tile之间的输入输出引脚的连接关系,需要确定两个输入输出引脚所在的Tile之间的相对位置,另一个输入输出引脚所在的Tile的类型以及另一个输入输出引脚的编号。例如,{一个输入输出引脚编号,{相对坐标,Tile类型,另一个输入输出引脚编号}}表示分别位于两个不同Tile上的两个输入输出引脚之间存在连接关系。
在本实施例中,通过引脚对的形式表示基础模块中多个输入输出引脚的连接关系,在布线过程中确定输入输出引脚的编号、输入输出引脚所在基础模块的类型和坐标信息,可以更准确地找到FPGA芯片上相应地输入输出引脚,减少出错的概率。
步骤S602,确定第一基础模块的类型和第二基础模块的类型是否相同。
示例性的,如图4所示,若Tile 0和Tile 1均为DSP类型的Tile,则Tile 0和Tile 1的类型相同,若Tile 0为BRAM类型的Tile,Tile 1为DSP类型的Tile,则Tile 0和Tile 1的类型不同。
具体地,可以基于用户的输入信息确定第一基础模块的类型和第二基础模块的类型,也可以基于第一基础模块包括的逻辑资源和第二基础模块包括的逻辑资源,确定第一基础模块的类型和第二基础模块的类型。
步骤S603,在第一基础模块的类型和第二基础模块的类型相同的情况下,对比第一子布线资源图和第二子布线资源图。
具体地,Tile根据其内部的逻辑资源存在多种类型,类型不同的Tile中的逻辑资源对应的输入输出引脚相应不同,因此,不同类型的Tile所构建出的子布线资源图必然不同,无需对比第一子布线资源图和第二子布线资源图。
步骤S604,在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图。
示例性的,在删除第一目标子布线资源图之后,将值(value)中存储的第一目标子布线资源图的标识替换为第二目标子布线资源图的标识。其中,在第一目标子布线资源图为第一子布线资源图时,第二目标子布线资源图为第二子布线资源图,在第一目标子布线资源图为第二子布线资源图时,第二目标子布线资源图为第一子布线资源图。
也就是说,在第一子布线资源图和第二子布线资源图相同时,删除其中一个子布线资源图(第一子布线资源图或第二子布线资源图),并将该子布线资源图对应的value改为保留的那一个布线资源图对应的value。例如,对比{(1,2),A}和{(1,3),B},其中,(1,2)表示第一基础模块的坐标,A表示第一子布线资源图的标识,(1,3)表示第二基础模块的坐标,B表示第二子布线资源图的标识,若A和B对应的子布线资源图相同,则保留A对应的子布线资源图(即第一子布线资源图),删除B对应的子布线资源图(即第二子布线资源图),并将{(1,3),B}修改为{(1,3),A}。
在本实施例中,通过对每个坐标对应的子布线资源图进行对比,能够确定一系列完全等价的子布线资源图,并从所有重复的子布线资源图中选择第一个进行保留其余删除,同时将被删除的坐标对应的子布线资源图的标识指向保留的子布线资源图的标识,即多个基础模块的坐标指向同一子布线资源图的标识,使最终生成的布线资源图中的子布线资源图的个数少于FPGA芯片的基础模块的个数,能够减少布线资源图所占用的存储空间,缩短加载布线资源图所需的时间。
步骤S605,将第三子布线资源图确定为布线资源图。
详细请参见图3所示实施例的步骤S304,在此不再赘述。
本实施例提供的布线资源图的构建方法,在确定第一基础模块的类型和第二基础模块的类型是否相同之后,只在第一基础模块的类型和第二基础模块的类型相同的情况下,对比第一子布线资源图和第二子布线资源图,可以大幅度减少判断对比过程,以及减少删除重复子布线资源图的时长,提升构建布线资源图的效率。
在本实施例中提供了一种布线资源图的构建方法,可用于计算机设备、笔记本电脑或服务器等设备,图7是根据本发明实施例的又一种布线资源图的构建方法的流程示意图,如图7所示,该方法包括如下步骤:
步骤S701,确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图。
详细请参见图6所示实施例的步骤S601,在此不再赘述。
步骤S702,确定第三基础模块和第四基础模块是否相同。
其中,第三基础模块为多个基础模块中与第一基础模块连接的基础模块,第四基础模块为多个基础模块中与第二基础模块连接的基础模块。也就是说,确定与第一基础模块连接的基础模块和与第二基础模块连接的基础模块是否相同。
具体地,如图4所示,图中4列Tile分别为LUT类型的Tile、DSP类型的Tile、LUT类型的Tile和BRAM类型的Tile,同时每一列Tile都与其相邻的Tile之间存在连接关系,一列LUT类型的Tile仅与DSP类型的Tile相连,另一列LUT类型的Tile同时与DSP类型的Tile和BRAM类型的Tile相连,导致两列LUT类型的Tile中的输入输出引脚的连接关系不同,即两列LUT类型的Tile对应的子布线资源图必然不相同。因此,在第三基础模块和第四基础模块不相同得情况下,无需对比第一子布线资源图和第二子布线资源图。
步骤S703,在第三基础模块和第四基础模块相同的情况下,对比第一子布线资源图和第二子布线资源图。
步骤S704,在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图。
详细请参见图6所示实施例的步骤S604,在此不再赘述。
步骤S705,将第三子布线资源图确定为布线资源图。
详细请参见图3所示实施例的步骤S304,在此不再赘述。
本实施例提供的布线资源图的构建方法,在确定第三基础模块和第四基础模块是否相同之后,只在第三基础模块和第四基础模块相同的情况下,对比第一子布线资源图和第二子布线资源图,可以大幅度减少判断对比过程,以及减少删除重复子布线资源图的时长,提升构建布线资源图的效率。
示例性的,在图7所示的实施例中,布线资源图的构建方法也可以包括步骤S602,在第一基础模块的类型和第二基础模块的类型相同的情况下,再执行步骤S702。
在本实施例中,在确定第一基础模块的类型和第二基础模块的类型相同之后,确定第三基础模块和第四基础模块是否相同,在第三基础模块和第四基础模块相同的情况下,对比第一子布线资源图和第二子布线资源图,可以进一步减少判断对比过程,以及进一步减少删除重复子布线资源图的时长,提升构建布线资源图的效率。
在本实施例中还提供了一种布线资源图的构建装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种布线资源图的构建装置,如图8所示,包括:
第一确定模块801,用于确定多个基础模块中每个基础模块的子布线资源图,得到多个子布线资源图,其中,子布线资源图包括对应的基础模块内的多个输入输出引脚和多个输入输出引脚的连接关系,基础模块为现场可编程逻辑门阵列芯片中的基础模块;
对比模块802,用于对比第一子布线资源图和第二子布线资源图,其中,第一子布线资源图为第一基础模块的子布线资源图,第二子布线资源图为第二基础模块的子布线资源图,第一基础模块和第二基础模块为多个基础模块中任意两个基础模块;
删除模块803,用于在第一子布线资源图和第二子布线资源图相同的情况下,删除第一目标子布线资源图,其中,第一目标子布线资源图为第一子布线资源图或第二子布线资源图;
第二确定模块804,用于将第三子布线资源图确定为布线资源图,其中,第三子布线资源图为多个子布线资源图中除第一目标子布线资源图之外的子布线资源图。
在一些可选的实施方式中,装置还包括:
第三确定模块,用于确定第一基础模块的类型和第二基础模块的类型是否相同;
对比模块802,包括:
第一对比单元,用于在第一基础模块的类型和第二基础模块的类型相同的情况下,对比第一子布线资源图和第二子布线资源图。
在一些可选的实施方式中,装置还包括:
第四确定模块,用于确定第三基础模块和第四基础模块是否相同,其中,第三基础模块为多个基础模块中与第一基础模块连接的基础模块,第四基础模块为多个基础模块中与第二基础模块连接的基础模块;
对比模块802,包括:
第二对比单元,用于在第三基础模块和第四基础模块相同的情况下,对比第一子布线资源图和第二子布线资源图。
在一些可选的实施方式中,以键值对的形式存储每个基础模块的位置信息和每个基础模块对应的子布线资源图的标识。
在一些可选的实施方式中,装置还包括:
替换模块,用于将值中存储的第一目标子布线资源图的标识替换为第二目标子布线资源图的标识,其中,在第一目标子布线资源图为第一子布线资源图时,第二目标子布线资源图为第二子布线资源图,在第一目标子布线资源图为第二子布线资源图时,第二目标子布线资源图为第一子布线资源图。
在一些可选的实施方式中,通过引脚对的形式表示多个输入输出引脚的连接关系,其中,在连接的两个输入输出引脚属于同一基础模块时,引脚对包括两个输入输出引脚的标识,在连接的两个输入输出引脚属于不同基础模块时,引脚对包括一个输入输出引脚的标识和另一个输入输出引脚的标识、相对位置信息和目标类型,其中,相对位置信息为两个输入输出引脚所在的基础模块之间的相对位置,目标类型为另一个输入输出引脚所在的基础模块的类型。
在一些可选的实施方式中,第一确定模块801,包括:
第一确定单元,用于根据每个基础模块的硬件单元,确定每个基础模块的子布线资源图。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本实施例中的布线资源图的构建装置是以功能单元的形式来呈现,这里的单元是指专用集成电路(Application Specific Integrated Circuit,ASIC),执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
本发明实施例还提供一种计算机设备,具有上述图8所示的布线资源图的构建装置。
请参阅图9,图9是本发明可选实施例提供的一种计算机设备的结构示意图,如图9所示,该计算机设备包括:一个或多个处理器910、存储器920,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器910为例。
处理器910可以是中央处理器,网络处理器或其组合。其中,处理器910还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,存储器920存储有可由至少一个处理器910执行的指令,以使至少一个处理器910执行实现上述实施例示出的方法。
存储器920可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器920可选包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器920可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器920还可以包括上述种类的存储器的组合。
该计算机设备还包括输入装置930和输出装置940。处理器910、存储器920、输入装置930和输出装置940可以通过总线或者其他方式连接,图9中以通过总线连接为例。
输入装置930可接收输入的数字或字符信息,以及产生与该计算机设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等。输出装置940可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。上述显示设备包括但不限于液晶显示器,发光二极管,显示器和等离子体显示器。在一些可选的实施方式中,显示设备可以是触摸屏。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种布线资源图的构建方法,其特征在于,所述方法包括:
确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图,其中,所述子布线资源图包括对应的基础模块内的多个输入输出引脚和所述多个输入输出引脚的连接关系,所述基础模块为现场可编程逻辑门阵列芯片中的基础模块;
对比第一子布线资源图和第二子布线资源图,其中,所述第一子布线资源图为第一基础模块的子布线资源图,所述第二子布线资源图为第二基础模块的子布线资源图,所述第一基础模块和所述第二基础模块为所述多个基础模块中任意两个基础模块;
在所述第一子布线资源图和所述第二子布线资源图相同的情况下,删除第一目标子布线资源图,其中,所述第一目标子布线资源图为所述第一子布线资源图或所述第二子布线资源图;
将第三子布线资源图确定为布线资源图,其中,所述第三子布线资源图为所述多个子布线资源图中除所述第一目标子布线资源图之外的子布线资源图。
2.根据权利要求1所述的方法,其特征在于,在所述对比第一子布线资源图和第二子布线资源图之前,所述方法还包括:
确定所述第一基础模块的类型和所述第二基础模块的类型是否相同;
所述对比第一子布线资源图和第二子布线资源图,包括:
在所述第一基础模块的类型和所述第二基础模块的类型相同的情况下,对比所述第一子布线资源图和所述第二子布线资源图。
3.根据权利要求1所述的方法,其特征在于,所述多个基础模块之间相互连接,在所述对比第一子布线资源图和第二子布线资源图之前,所述方法还包括:
确定第三基础模块和第四基础模块是否相同,其中,所述第三基础模块为所述多个基础模块中与所述第一基础模块连接的基础模块,所述第四基础模块为所述多个基础模块中与所述第二基础模块连接的基础模块;
所述对比第一子布线资源图和第二子布线资源图,包括:
在所述第三基础模块和所述第四基础模块相同的情况下,对比所述第一子布线资源图和所述第二子布线资源图。
4.根据权利要求1至3中任一项所述的方法,其特征在于,
以键值对的形式存储所述每个基础模块的位置信息和所述每个基础模块对应的子布线资源图的标识。
5.根据权利要求4所述的方法,其特征在于,在所述删除第一目标子布线资源图之后,所述方法还包括:
将值中存储的第一目标子布线资源图的标识替换为第二目标子布线资源图的标识,其中,在所述第一目标子布线资源图为所述第一子布线资源图时,所述第二目标子布线资源图为所述第二子布线资源图,在所述第一目标子布线资源图为所述第二子布线资源图时,所述第二目标子布线资源图为所述第一子布线资源图。
6.根据权利要求1至3中任一项所述的方法,其特征在于,
通过引脚对的形式表示所述多个输入输出引脚的连接关系,其中,在连接的两个输入输出引脚属于同一基础模块时,所述引脚对包括所述两个输入输出引脚的标识,在连接的两个输入输出引脚属于不同基础模块时,所述引脚对包括一个输入输出引脚的标识和另一个输入输出引脚的标识、相对位置信息和目标类型,其中,所述相对位置信息为所述两个输入输出引脚所在的基础模块之间的相对位置,所述目标类型为所述另一个输入输出引脚所在的基础模块的类型。
7.根据权利要求1至3中任一项所述的方法,其特征在于,所述确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图,包括:
根据所述每个基础模块的硬件单元,确定所述每个基础模块的子布线资源图。
8.一种布线资源图的构建装置,其特征在于,所述装置包括:
第一确定模块,用于确定多个基础模块中的每个基础模块的子布线资源图,得到多个子布线资源图,其中,所述子布线资源图包括对应的基础模块内的多个输入输出引脚和所述多个输入输出引脚的连接关系,所述基础模块为现场可编程逻辑门阵列芯片中的基础模块;
对比模块,用于对比第一子布线资源图和第二子布线资源图,其中,所述第一子布线资源图为第一基础模块的子布线资源图,所述第二子布线资源图为第二基础模块的子布线资源图,所述第一基础模块和所述第二基础模块为所述多个基础模块中任意两个基础模块;
删除模块,用于在所述第一子布线资源图和所述第二子布线资源图相同的情况下,删除第一目标子布线资源图,其中,所述第一目标子布线资源图为所述第一子布线资源图或所述第二子布线资源图;
第二确定模块,用于将第三子布线资源图确定为布线资源图,其中,所述第三子布线资源图为所述多个子布线资源图中除所述第一目标子布线资源图之外的子布线资源图。
9.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311826120.2A CN117787172A (zh) | 2023-12-27 | 2023-12-27 | 布线资源图的构建方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311826120.2A CN117787172A (zh) | 2023-12-27 | 2023-12-27 | 布线资源图的构建方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117787172A true CN117787172A (zh) | 2024-03-29 |
Family
ID=90401525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311826120.2A Pending CN117787172A (zh) | 2023-12-27 | 2023-12-27 | 布线资源图的构建方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117787172A (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130019213A1 (en) * | 2011-07-15 | 2013-01-17 | TicTran Corp | Method and Apparatus of Hardware Acceleration of EDA Tools for a Programmable Logic Device |
CN103366028A (zh) * | 2012-03-31 | 2013-10-23 | 中国科学院微电子研究所 | 一种现场可编程门阵列芯片布局方法 |
CN106682306A (zh) * | 2016-12-26 | 2017-05-17 | 西安电子科技大学 | 一种快速fpga布线方法 |
CN109033611A (zh) * | 2018-07-20 | 2018-12-18 | 福州大学 | 一种vlsi多端点线网绕障碍的布线方法 |
CN110472340A (zh) * | 2019-08-16 | 2019-11-19 | 中科亿海微电子科技(苏州)有限公司 | 一种布线结构的建模方法和装置 |
CN111368493A (zh) * | 2018-12-26 | 2020-07-03 | 杭州广立微电子有限公司 | 一种基于稀疏网格的自动版图布线生成方法 |
CN111709205A (zh) * | 2020-05-29 | 2020-09-25 | 成都华微电子科技有限公司 | Fpga布线方法 |
CN112766574A (zh) * | 2021-01-20 | 2021-05-07 | 西安微电子技术研究所 | 一种整机内部布线路径优化方法 |
CN114065694A (zh) * | 2020-08-03 | 2022-02-18 | 上海复旦微电子集团股份有限公司 | 一种fpga布线资源图压缩方法和全局布线模块 |
CN114997088A (zh) * | 2022-06-29 | 2022-09-02 | 西安电子科技大学 | 一种布线和tdm比率快速优化方法 |
CN115859885A (zh) * | 2023-02-14 | 2023-03-28 | 成都市硅海武林科技有限公司 | 一种fpga冗余容错方法及fpga芯片 |
CN117195819A (zh) * | 2023-06-26 | 2023-12-08 | 上海思尔芯技术股份有限公司 | 一种布线资源优化的分割方法 |
-
2023
- 2023-12-27 CN CN202311826120.2A patent/CN117787172A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130019213A1 (en) * | 2011-07-15 | 2013-01-17 | TicTran Corp | Method and Apparatus of Hardware Acceleration of EDA Tools for a Programmable Logic Device |
CN103366028A (zh) * | 2012-03-31 | 2013-10-23 | 中国科学院微电子研究所 | 一种现场可编程门阵列芯片布局方法 |
CN106682306A (zh) * | 2016-12-26 | 2017-05-17 | 西安电子科技大学 | 一种快速fpga布线方法 |
CN109033611A (zh) * | 2018-07-20 | 2018-12-18 | 福州大学 | 一种vlsi多端点线网绕障碍的布线方法 |
CN111368493A (zh) * | 2018-12-26 | 2020-07-03 | 杭州广立微电子有限公司 | 一种基于稀疏网格的自动版图布线生成方法 |
CN110472340A (zh) * | 2019-08-16 | 2019-11-19 | 中科亿海微电子科技(苏州)有限公司 | 一种布线结构的建模方法和装置 |
CN111709205A (zh) * | 2020-05-29 | 2020-09-25 | 成都华微电子科技有限公司 | Fpga布线方法 |
CN114065694A (zh) * | 2020-08-03 | 2022-02-18 | 上海复旦微电子集团股份有限公司 | 一种fpga布线资源图压缩方法和全局布线模块 |
CN112766574A (zh) * | 2021-01-20 | 2021-05-07 | 西安微电子技术研究所 | 一种整机内部布线路径优化方法 |
CN114997088A (zh) * | 2022-06-29 | 2022-09-02 | 西安电子科技大学 | 一种布线和tdm比率快速优化方法 |
CN115859885A (zh) * | 2023-02-14 | 2023-03-28 | 成都市硅海武林科技有限公司 | 一种fpga冗余容错方法及fpga芯片 |
CN117195819A (zh) * | 2023-06-26 | 2023-12-08 | 上海思尔芯技术股份有限公司 | 一种布线资源优化的分割方法 |
Non-Patent Citations (2)
Title |
---|
P. SUDHANYA 等: "Fast and Memory Compact Routing Algorithm for FPGA", 2019 IEEE 1ST INTERNATIONAL CONFERENCE ON ENERGY, SYSTEMS AND INFORMATION PROCESSING (ICESIP), 23 December 2019 (2019-12-23), pages 1 - 6 * |
田春生 等: "面向FPGA的布局与布线技术研究综述", 电子学报, vol. 50, no. 05, 15 May 2022 (2022-05-15), pages 1243 - 1254 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chang et al. | Postlayout logic restructuring using alternative wires | |
CN106682268B (zh) | 可编程逻辑器件配置方法及设备 | |
CN113779924A (zh) | 超导集成电路的布线优化方法和装置、存储介质和终端 | |
CN112235949A (zh) | 一种印刷电路板设计中差分过孔的挖洞方法、装置及设备 | |
US8312405B1 (en) | Method of placing input/output blocks on an integrated circuit device | |
CN116822452B (zh) | 芯片布局优化方法及相关设备 | |
US8046206B1 (en) | Method and system using subgraph isomorphism to configure hardware resources | |
CN113836857A (zh) | 电路板导线调整方法及装置 | |
CN117787172A (zh) | 布线资源图的构建方法、装置、计算机设备及存储介质 | |
CN112464609A (zh) | 一种集成电路相对位置布局优化方法、装置及存储介质 | |
CN102156789A (zh) | Fpga约束文件自动生成系统及方法 | |
CN116976252A (zh) | 一种回归仿真方法、装置、设备、介质及程序产品 | |
CN111782633B (zh) | 数据处理方法、装置及电子设备 | |
CN112639761B (zh) | 一种为数据建立索引的方法以及装置 | |
CN110543664B (zh) | 一种面向具有特有结构fpga的工艺映射方法 | |
CN112183006A (zh) | 时延评估方法及装置、可读存储介质 | |
CN117973312A (zh) | 芯片布线方法、装置、计算机设备及存储介质 | |
CN117217147B (zh) | 一种用于fpga的逻辑映射方法、装置、设备及介质 | |
CN117688894B (zh) | 芯片布局优化方法、装置、计算机设备及存储介质 | |
CN117436374B (zh) | 电路综合方法、装置、设备及存储介质 | |
CN117787169A (zh) | 基于fpga的网表优化方法、装置、计算机设备及存储介质 | |
CN117350204B (zh) | 目标网表的生成方法、装置、计算机设备及可读存储介质 | |
CN117811572A (zh) | 构建电路的方法、电路、计算机设备及存储介质 | |
CN117193986A (zh) | 一种多线程处理方法、装置、计算机设备及存储介质 | |
CN118170954A (zh) | 一种aig库构建方法及装置 |
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 |