CN105634468B - 一种fpga的布线方法和宏单元 - Google Patents

一种fpga的布线方法和宏单元 Download PDF

Info

Publication number
CN105634468B
CN105634468B CN201410597252.7A CN201410597252A CN105634468B CN 105634468 B CN105634468 B CN 105634468B CN 201410597252 A CN201410597252 A CN 201410597252A CN 105634468 B CN105634468 B CN 105634468B
Authority
CN
China
Prior art keywords
macroelement
input
output
multiplex device
multiplexer
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
CN201410597252.7A
Other languages
English (en)
Other versions
CN105634468A (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.)
Capital Microelectronics Beijing Technology Co Ltd
Original Assignee
Capital Microelectronics Beijing Technology 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 Capital Microelectronics Beijing Technology Co Ltd filed Critical Capital Microelectronics Beijing Technology Co Ltd
Priority to CN201410597252.7A priority Critical patent/CN105634468B/zh
Publication of CN105634468A publication Critical patent/CN105634468A/zh
Application granted granted Critical
Publication of CN105634468B publication Critical patent/CN105634468B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明涉及一种FPGA的布线方法和宏单元,所述方法包括:确定在第一级输入和最后一级输出之间具有唯一确定路径的多级多路复用器;其中,所述多级多路复用器包括至少两级多路复用器,每级多路复用器包括一个或多个多路复用器;将所述多级多路复用器封装为一个宏单元;所述宏单元的输入为所述第一级输入,所述宏单元的输出为所述最后一级输出;根据所述宏单元的输入和输出建立结点,进行布图建模,并根据所述布图建模进行布线。

Description

一种FPGA的布线方法和宏单元
技术领域
本发明涉及微电子领域中的集成电路设计技术领域,特别是一种FPGA的布线方法和宏单元。
背景技术
现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)是一种具有丰富硬件资源、强大并行处理能力和灵活可重配置能力的逻辑器件。这些特征使得FPGA在数据处理、通信、网络等很多领域得到了越来越多的广泛应用。
FPGA的设计流程包括:设计输入、调试、功能仿真、综合、布局布线、时序仿真、配置下载等步骤。其中布局是指从映射取出定义的逻辑和输入输出块,并把它们分配到FPGA内部的物理位置,往往需要在速度最优和面积最优之间做出选择。布线是根据布局的拓扑结构,利用自动布线软件,使用布线资源选择时序最短路径,试着完成所有的逻辑连接。
目前,在很多FPGA设计中都使用了多路复用器,多路复用器的多级级联可以形成输入交叉开关矩阵(ixbar)结构,可以实现对输入数据的选择输出的逻辑,也就是说在输入和输出之间具有唯一确定的路径。多级多路复用器根据现有自动布线软件,对于多级多路复用器的布线需要将每个多路复用器的输入和输出都作为布图模型中的结点来处理,因此对于FPGA中用作ixbar的多级多路复用器的模块越多、级数越多的情况来说,对布图模型中在多级多路复用器内部的结点进行布线需要消耗大量的内存并增加了很多布线时间。
发明内容
本发明提供了一种FPGA的布线方法和宏单元,能够减少布图模型中ixbar的结点数,从而在布线过程中有效降低内存消耗,并降低布线时间。
第一方面,本发明实施例提供了一种FPGA的布线方法,包括:
确定在第一级输入和最后一级输出之间具有唯一确定路径的多级多路复用器;其中,所述多级多路复用器包括至少两级多路复用器,每级多路复用器包括一个或多个多路复用器;
将所述多级多路复用器封装为一个宏单元;所述宏单元的输入为所述第一级输入,所述宏单元的输出为所述最后一级输出;
根据所述宏单元的输入和输出建立结点,进行布图建模,并根据所述布图建模进行布线。
优选的,所述多级多路复用器为输入交叉开关矩阵ixbar结构。
第二方面,本发明实施例提供了一种宏单元,包括:
第一数量个输入和第二数量个输出;其中,每个所述输入到输出之间,具有唯一确定的路径;
在进行布线时,根据所述宏单元的输入和输出建立结点,根据所述结点进行布图建模;并根据所述布图建模进行布线。
优选的,所述宏单元还包括:至少两级多路复用器,每级多路复用器包括一个或多个多路复用器;
所述宏单元的输入为所述至少两级多路复用器的第一级输入;所述宏单元的输出为所述至少两级多路复用器的最后一级输出。
进一步优选的,所述至少两级多路复用器为输入交叉开关矩阵ixbar结构。
优选的,所述第一数量为所述第二数量的两倍。
本发明提供的FPGA的布线方法,通过将第一级输入和最后一级输出之间具有唯一确定路径的多级多路复用器封装成宏单元,在布图建模时仅对宏单元的输入、输出进行结点建模,从而减少了布图建模的结点数,降低了内存消耗,减少了布线器在布线过程需要搜索的结点,从而有效降低了布线器的布线时间。
附图说明
图1为本发明实施例提供的布线方法流程图;
图2为本发明实施例提供的多级多路复用器的结构示意图;
图3为本发明实施例提供的宏单元的示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
图1为本发明实施例提供的一种FPGA的布线方法,所述方法包括:
步骤110,确定在第一级输入和最后一级输出之间具有唯一确定路径(PATH)的多级多路复用器;
其中,所述多级多路复用器包括至少两级多路复用器,每级多路复用器包括一个或多个多路复用器;
多级多路复用器在第一级输入和最后一级输出之间具有唯一确定路径的情况可以是多路复用器构成的输入交叉开关矩阵(ixbar)结构。
图2所示的为两级多路复用器构成的输入交叉开关矩阵(ixbar)结构的具体例子。
其中,ixbar第一级是由图中左边四列4选1的选择器(mux)组成的,其输入为64比特位的数据,每一列的8个mux为1组,每1组中8个mux的均为16比特位的输入,每个mux实现一个16输入4输出的数据处理。进一步的,16选4的mux可以由4个4选1的mux组成(图中未示出)。
图中,ixbar的第二级由八行16选1的mux组成,其中每行包括4个16选1的mux,也就是说每一行输出4个比特位,第二级一共输出32个比特位。
在64比特位的输入与32比特位的输出之间,路径是唯一确定的。
步骤120,将所述多级多路复用器封装为一个宏单元;
具体的,因为在如图2所示的例子中,在64比特位的输入与32比特位的输出之间,路径是唯一确定的。因此,在布线的时候可以不考虑在64比特位输入到32比特位输出之间的连线。
所以,可以对输入和输出之间的多级多路复用器进行“封装”,将其封装为一个宏单元,忽略其中的连线,也就是说在布线这一步骤中不考虑宏单元内部的布线。封装后,宏单元的输入为多级多路复用器的第一级输入,所述宏单元的输出为多级多路复用器的最后一级输出。图2中的ixbar在“封装”后的宏单元可以如图3所示。
步骤130,根据所述宏单元的输入和输出建立结点,进行布图建模,并根据所述布图建模进行布线。
具体的,在封装成宏单元后,可以在布线过程中仅针对宏单元的输入输出建立ixbar模型的结点,建立布图模型。这样可以大大减少布图建模中的结点数。
以上述图2所示为例。如果按照多级多路复用器进行布图建模,则每一级中每个多路复用器的输入需要建立为一个结点,每个输出要建立一个结点。因此,对于第一级输入,布图建模的结点数为16×4×8=512个;对于第一级输出,布图建模的结点数为4×4×8=128个;对于第二级输入,布图建模结点数与第一级输出相同,为128个;对于第二级输出,布图建模结点数为4×8=32个。因此在通常情况下,对图2所示的多级多路复用器进行布线时需要考虑的结点为512+128+128+32=800个。
如果按照本发明提供的方法,对多级多路复用器封装成如图3所示的宏单元,然后再进行布图建模,则进行布线时需要考虑的结点数仅为64+32=96个。
相比不采用本发明的技术方案来说,采用本发明实施例提供的方法,能够减少88%的结点数,也就是说在布线时,相比现有技术可以减少处理88%的结点,从而有效地降低了布线器的布线时间。
由此可知,根据本发明实施例提供了一种基于路径的布图模型的建立方法和基于该布图模型的布线方法。通过采用宏单元对在第一级输入和最后一级输出之间具有唯一确定路径的多级多路复用器进行封装的方法,可以在布图建模时仅对宏单元的输入、输出进行结点建模,用路径代替多级多路复用器中间结点的建模,从而减少了布图建模的结点数,降低了内存消耗,并可以大大降低布线的时间。
相应的,本发明实施例提供了一种宏单元,应用于FPGA布图建模时。再如图3所示,宏单元包括:
M个输入和N个输出;其中,每个输入到输出之间,具有唯一确定的路径;M,N均为自然数。优选的,M=2N。
在进行布线时,可以根据所述宏单元的输入和输出建立结点,然后根据结点进行布图建模,再根据布图建模进行布线。
在宏单元内部封装有至少两级多路复用器,为ixbar结构,每级多路复用器包括一个或多个多路复用器。
宏单元的输入为其内部至少两级多路复用器的第一级输入;宏单元的输出为至少两级多路复用器的最后一级输出。
采用本实施例提供的宏单元对在第一级输入和最后一级输出之间具有唯一确定路径的多级多路复用器进行封装,可以在布图建模时仅对宏单元的输入、输出进行结点建模,从而减少了布图建模的结点数,降低了内存消耗,并可以大大降低布线的时间。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种FPGA的布线方法,其特征在于,所述方法包括:
确定在第一级输入和最后一级输出之间具有唯一确定路径的多级多路复用器;其中,所述多级多路复用器包括至少两级多路复用器,每级多路复用器包括一个或多个多路复用器;
将所述多级多路复用器封装为一个宏单元;其中,所述宏单元的输入为所述第一级输入,所述宏单元的输出为所述最后一级输出;
根据所述宏单元的输入和输出建立结点,进行布图建模,并根据所述布图建模进行布线。
2.根据权利要求1所述的方法,其特征在于,所述多级多路复用器为输入交叉开关矩阵ixbar结构。
3.一种宏单元,其特征在于,所述宏单元由多级多路复用器封装,包括:
第一数量个输入和第二数量个输出;其中,每个所述输入到输出之间,具有唯一确定的路径;其中,所述多级多路复用器包括至少两级多路复用器,每级多路复用器包括一个或多个多路复用器;
所述宏单元的输入为所述至少两级多路复用器的第一级输入;所述宏单元的输出为所述至少两级多路复用器的最后一级输出;
在进行布线时,根据所述宏单元的输入和输出建立结点,根据所述结点进行布图建模,并根据所述布图建模进行布线。
4.根据权利要求3所述的宏单元,其特征在于,所述至少两级多路复用器为输入交叉开关矩阵ixbar结构。
5.根据权利要求3-4任一所述的宏单元,其特征在于,所述第一数量为所述第二数量的两倍。
CN201410597252.7A 2014-10-30 2014-10-30 一种fpga的布线方法和宏单元 Active CN105634468B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410597252.7A CN105634468B (zh) 2014-10-30 2014-10-30 一种fpga的布线方法和宏单元

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410597252.7A CN105634468B (zh) 2014-10-30 2014-10-30 一种fpga的布线方法和宏单元

Publications (2)

Publication Number Publication Date
CN105634468A CN105634468A (zh) 2016-06-01
CN105634468B true CN105634468B (zh) 2018-11-06

Family

ID=56049081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410597252.7A Active CN105634468B (zh) 2014-10-30 2014-10-30 一种fpga的布线方法和宏单元

Country Status (1)

Country Link
CN (1) CN105634468B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106407023A (zh) * 2016-09-06 2017-02-15 北京深维科技有限公司 基于多核处理器的现场可编程门阵列芯片的并行布线方法
CN106997249B (zh) * 2017-03-15 2020-02-04 武汉华星光电技术有限公司 一种具有触控功能的显示面板及其故障测试方法
CN108427829B (zh) * 2018-02-09 2022-11-08 京微齐力(北京)科技有限公司 一种具有公共线结构的fpga

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1321359A (zh) * 1999-07-16 2001-11-07 皇家菲利浦电子有限公司 非常精细颗粒的现场可编程门阵列结构和电路
CN101295979A (zh) * 2007-04-25 2008-10-29 中国科学院半导体研究所 基于部分局部互连结构的fpga逻辑块

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8975918B2 (en) * 2012-05-01 2015-03-10 Semiconductor Energy Laboratory Co., Ltd. Lookup table and programmable logic device including lookup table

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1321359A (zh) * 1999-07-16 2001-11-07 皇家菲利浦电子有限公司 非常精细颗粒的现场可编程门阵列结构和电路
CN101295979A (zh) * 2007-04-25 2008-10-29 中国科学院半导体研究所 基于部分局部互连结构的fpga逻辑块

Also Published As

Publication number Publication date
CN105634468A (zh) 2016-06-01

Similar Documents

Publication Publication Date Title
Haddow et al. Bridging the genotype-phenotype mapping for digital FPGAs
Luu et al. Architecture description and packing for logic blocks with hierarchy, modes and complex interconnect
US9075930B2 (en) Configurable embedded memory system
JP5440812B2 (ja) パターンマッチング装置
US8347243B2 (en) Parameterized configuration for a programmable logic device
JP6250548B2 (ja) 再構成可能な半導体装置の論理構成方法
JP6564186B2 (ja) 再構成可能な半導体装置
CN105634468B (zh) 一种fpga的布线方法和宏单元
CN105468568A (zh) 高效的粗粒度可重构计算***
CN105677525B (zh) 基于可重复配置单元的fpga局部互联资源自动化测试方法
US7352205B2 (en) Reconfigurable switching device parallel calculation of any particular algorithms
Upegui et al. Evolving hardware with self-reconfigurable connectivity in Xilinx FPGAs
CN106709119A (zh) 一种fpga芯片布线方法
CN103019947B (zh) 一种fpga芯片配置信息模型的层次化构建方法
JP2007520795A (ja) テンプレートを利用したドメイン固有の再構成可能な論理
CN106843948A (zh) 片上生成硬件配置信息的芯片架构及其执行方法
Saldana et al. Routability of network topologies in FPGAs
Brzozowski et al. Universal Design Method of n-to-2n decoders
JP4468452B2 (ja) グローバルセルオートマトンを組み込むためのリコンフィギュアラブルなアーキテクチャをもつコンピュータ装置
JP2017532850A (ja) プログラマブル遅延回路ブロック
Haddow et al. From here to there: Future robust EHW technologies for large digital designs
Koch et al. Obstacle-free two-dimensional online-routing for run-time reconfigurable FPGA-based systems
CN105989197A (zh) 基于sat算法的时钟树布线方法
Thoma et al. An adaptive FPGA and its distributed routing.
CN106934077A (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
GR01 Patent grant
GR01 Patent grant