[go: up one dir, main page]

CN107944183B - Fpga顶层网表的创建方法、装置、计算机设备及介质 - Google Patents

Fpga顶层网表的创建方法、装置、计算机设备及介质 Download PDF

Info

Publication number
CN107944183B
CN107944183B CN201711309444.3A CN201711309444A CN107944183B CN 107944183 B CN107944183 B CN 107944183B CN 201711309444 A CN201711309444 A CN 201711309444A CN 107944183 B CN107944183 B CN 107944183B
Authority
CN
China
Prior art keywords
netlist
module
level
verifying
electronic devices
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
CN201711309444.3A
Other languages
English (en)
Other versions
CN107944183A (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.)
Shenzhen Ziguang Tongchuang Electronics Co ltd
Original Assignee
Shenzhen Ziguang Tongchuang Electronics 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 Shenzhen Ziguang Tongchuang Electronics Co ltd filed Critical Shenzhen Ziguang Tongchuang Electronics Co ltd
Priority to CN201711309444.3A priority Critical patent/CN107944183B/zh
Publication of CN107944183A publication Critical patent/CN107944183A/zh
Application granted granted Critical
Publication of CN107944183B publication Critical patent/CN107944183B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]

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)

Abstract

本发明实施例提供一种FPGA顶层网表的创建方法、装置、计算机设备及介质,属于现场可编程门阵列FPGA技术领域。该FPGA顶层网表的创建方法,该方法包括:根据预先定义的划分标准,将若干个单元电子器件划分为同一模块;将划分的该模块映射到格点单元;根据该单元电子器件的实际连线及功能,验证该格点单元中的模块与该若干个单元电子器件的对等性;当验证的该对等性为完全对等时,将所有该格点单元定义为顶层网表。本申请可以保证软件层面的顶层网表与硬件上的电子器件的一致性,减少了后期使用时由于软件网表的设计与硬件设备不一致消耗的调整时间,提高了整体的研发效率。

Description

FPGA顶层网表的创建方法、装置、计算机设备及介质
技术领域
本发明涉及现场可编程门阵列FPGA技术领域,特别是涉及一种FPGA顶层网表的创建方法、装置、计算机设备及介质。
背景技术
FPGA(Field-Programmable Gate Array)现场可编程门阵列是在PAL(Programmable Array Logic,可编程阵列逻辑)、CPLD(Complex Programmable LogicDevice,复杂可编程逻辑器件)等可编程器件的基础上进一步发展的产物。它是作为专用集成电路ASIC领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA的研发分为芯片硬件研发和软件开发工具的研发,芯片硬件研发过程中,涉及到硬件全芯片功能网表的生成以及验证等工作,而软件开发工具的研发包含布局布线以及位流文件生成等过程,软件开发工具的研发前提是需要有正确的软件网表。
由于在传统技术中,软件网表的创建是在硬件设计完成之后定义的,对于硬件设备和软件网表功能一致性难以保证,当软件网表的设计与硬件设备不一致时,问题的发现及调整都比较费时费力,降低了研发效率。
发明内容
本发明实施例提供一种FPGA顶层网表的创建方法、装置、计算机设备及介质,可以保证硬件设备和软件网表功能的一致性,从而提高研发效率。
本发明解决上述技术问题所采用的技术方案如下:
根据本发明的一个方面提供的一种FPGA顶层网表的创建方法,该方法包括:
根据预先定义的划分标准,将若干个单元电子器件划分为同一模块;
将划分的该模块映射到格点单元;
根据该单元电子器件的实际连线及功能,验证该格点单元中的模块与该若干个单元电子器件的对等性;
当验证的该对等性为完全对等时,将所有该格点单元定义为顶层网表。
在其中的一个实施例中,该将所有该格点单元定义为顶层网表的步骤包括:
定义该顶层网表的表名及每个该格点单元的坐标。
在其中的一个实施例中,在该将若干个单元电子器件划分为同一模块的步骤之后,该方法还包括:
将划分的同一模块通过不同层级的表述分别进行定义;
该将划分的该模块映射到格点单元的步骤包括:
将划分的该模块映射到对应层级下的格点单元;
验证不同层级中该格点单元中的同一模块的对等性;
当不同层级中该格点单元中的同一模块的对等性为完全对等时,分别将每个层级下的该所有格点单元定义为顶层网表。
在其中的一个实施例中,该验证该格点单元中的模块与该若干个单元电子器件的对等性的步骤包括:
按照层级由低到高的顺序,分别验证相邻层级中同一模块的对等性,该不同层级中的最低层级为该单元电子器件所对应的层级。
在其中的一个实施例中,在该分别将每个层级下的该所有格点单元定义为顶层网表的步骤之后,该方法还包括:
验证不同层级中的该顶层网表中的同一模块的对等性。
在其中的一个实施例中,该同一模块中的若干个单元电子器件包括寄存器,还包括与非门或或非门中的至少一种。
根据本发明的另一个方面提供的一种FPGA顶层网表的创建装置,该装置包括:
划分模块,用于根据预先定义的划分标准,将若干个单元电子器件划分为同一模块;
映射模块,用于将划分的该模块映射到格点单元;
验证模块,用于根据该单元电子器件的实际连线及功能,验证该格点单元中的模块与该若干个单元电子器件的对等性;
网表定义模块,用于当验证的该对等性为完全对等时,将所有该格点单元定义为顶层网表。
在其中的一个实施例中,该网表定义模块具体用于:
定义该顶层网表的表名及每个该格点单元的坐标。
根据本发明的又一个方面提供的一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现上述FPGA顶层网表的创建方法。
根据本发明的再一个方面提供的一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述FPGA顶层网表的创建方法中的步骤。
本发明通过将若干个单元电子器件划分为同一模块,再将划分的该模块映射到格点单元,然后根据该单元电子器件的实际连线及功能,验证该格点单元中的模块与该若干个单元电子器件的对等性,当验证的该对等性为完全对等时,最后将所有该格点单元定义为顶层网表,可以保证软件层面的顶层网表与硬件上的电子器件的一致性,减少了后期使用时由于软件网表的设计与硬件设备不一致消耗的调整时间,提高了整体的研发效率。
附图说明
图1为根据本发明的一个实施例的FPGA顶层网表的创建方法的流程图;
图2为根据本发明的一个实施例的使用场景流程图;
图3为根据本发明的一个实施例的验证关系示意图;
图4为根据本发明的一个实施例的单元电子器件的布线示意图;
图5为根据本发明的一个实施例的格点单元的示意图;
图6为根据本发明的一个实施例的顶层网表的示意图;
图7为根据本发明的一个实施例的FPGA顶层网表的创建装置的示范性结构框图;
图8为根据本发明的一个实施例的计算机设备的内部结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为根据本发明的一个实施例的FPGA顶层网表的创建方法的流程图,下面结合图1来详细描述根据本发明的一个实施例的一种FPGA顶层网表的创建方法,如图1所示,该方法包括以下步骤S101至S104。
S101、根据预先定义的划分标准,将若干个单元电子器件划分为同一模块。
根据本实施例的一个示例,该同一模块中的若干个单元电子器件包括寄存器,还包括与非门或或非门中的至少一种。例如。一个模块可以包含十个与非门及一个寄存器,也可以包括十个或非门及一个寄存器。
根据本实施例的一个示例,预先定义的划分的标准以提高各个电子器件的利用率作为目的,具体需要将哪些单元电子器件划分到同一模块可以根据用户的实际需求来设计,此处不做限制。
S102、将划分的该模块映射到格点单元。
S103、根据该单元电子器件的实际连线及功能,验证该格点单元中的模块与该若干个单元电子器件的对等性。
S104、当验证的该对等性为完全对等时,将所有该格点单元定义为顶层网表。
在其中的一个实施例中,上述步骤S104中该将所有该格点单元定义为顶层网表的步骤包括:
定义该顶层网表的表名及每个该格点单元的坐标。
在其中的一个实施例中,在该将若干个单元电子器件划分为同一模块的步骤之后,该方法还包括:
将划分的同一模块通过不同层级的表述分别进行定义;
该将划分的该模块映射到格点单元的步骤包括:
将划分的该模块映射到对应层级下的格点单元;
验证不同层级中该格点单元中的同一模块的对等性;
当不同层级中该格点单元中的同一模块的对等性为完全对等时,分别将每个层级下的该所有格点单元定义为顶层网表。
在其中的一个实施例中,上述步骤S103中验证该格点单元中的模块与该若干个单元电子器件的对等性的步骤包括:
按照层级由低到高的顺序,分别验证相邻层级中同一模块的对等性,该不同层级中的最低层级为该单元电子器件所对应的层级。
在其中的一个实施例中,在上述步骤S104的步骤之后,该方法还包括:
验证不同层级中的该顶层网表中的同一模块的对等性。
根据本实施例的一个示例,上述步骤S101~S104的标号并不用于限定本实施例中各个步骤的先后顺序,各个步骤的编号只是为了使得描述各个步骤时可以通用引用该步骤的标号进行便捷的指代,只要各个步骤执行的顺序不影响本实施例的逻辑即表示在本申请请求保护的范围之内。
为实现本实施例中的方法采用的一种技术方案如下:
将FPGA的架构划分成以下各种层次的器件,以层次化的方式组建而成。从底层到顶层器件的种类包括:最底层逻辑单元,命名为prim device;基本逻辑单元,命名为Griddevice;一种特殊的基本逻辑单元,和普通的grid device不同,它不包含用户可编程资源,主要用来存放配置点,命名为CRAM device;介于基本逻辑单元和顶层结构模型之间的一个层次,由若干个Grid device以及CRAM device组成,命名为Tile device;顶层结构模型,命名为Architecture device,只包含tile device及其之间的互联。
对于各层次器件的研发,如图3所示,对应图3中左侧的设备,根据抽象层次从顶到底包括了:黄金功能模型(golden model:GBM),行为级模型(behavioral model:BMA),电路晶体管级实现,以及版图物理级实现,图3左侧中的设备从上之下与这四个层次分别对应。
由于架构逻辑网表的复杂性,搭建过程不但非常繁琐,而且很容易出错,于是构建格点系统(grid system)来规范各器件的排布。所谓的格点系统就是在器件的层次,利用架构的规整性,均匀的划分2-D的逻辑格点系统,各种器件都被分配放置在独一无二逻辑格点上。
规整的器件排布加上器件之间的连接,即构成了逻辑网表全部内容。
单元建模可以通过verilog语言来实现,而顶层结构级的建模由自定义语言实现,具有这二者之后,硬件研发人员可以完成硬件逻辑网表的研发。形成了硬件网表之后,再借助相应的编译工具,刨除非用户可编程资源,保留用户可编程资源,将硬件网表解析成软件网表。
图2为根据本发明的一个实施例的使用场景流程图,图2示出了FPGA硬件网表研发流程,其研发流程以下步骤1至步骤7:
1.制定设计规范:系统架构工程师根据模块设计规格,以及FPGA软件设计流程提供的软件模型设计规范,制定符合本项目中硬件内部使用的模型设计规范。
2.模块设计:根据模块设计规格,以及软硬件共同讨论决定的模型设计规范文件,系统架构工程师和模块设计工程师共同进行模块设计,具体包括了各层次器件各抽象层次的模型设计。
3.模块验证:验证工程师根据模块设计规格的描述,对模型文件进行功能验证,对模型文件和设计规格不一致的地方,和模块设计人员进行沟通反馈,并在bug系统发出bug,模型设计人员进行必要的修改调整,直至所有验证通过,最终形成模型验证总结文件。
4.顶层设计:系统架构工程师根据全芯片设计规格,利用自定义语言,将tiledevice放置在定义好的格点系统上,并进行互连设计,形成最终的全芯片顶层网表。
5.验证设计:验证工程师根据电路模块规格制定验证计划,规划验证用例,并通过项目内评审。
6.顶层验证:验证工程师根据顶层设计规格,对verilog顶层网表进行功能验证。
7.数据传输和检查:研发工程师将通过验证的模块模型文件以及顶层模型设计文件,经过基本的语法检查后,传输到软件研发系统。
图3为根据本发明的一个实施例的验证关系示意图,图3示出了涉及到个各个功能层次的器件研发方式,以及各个抽象层次模型的验证。
器件命名缩写如下:
1、grid device的缩写为GD,对应图3中的硬件设备;
2、tile device的缩写为TD,对应图3中的格点单元;
3、architecture device的缩写为AD,对应图3中的顶层网表,也称顶层结构模型。
验证说明:
1.单向箭头表示子集的验证。箭头端是子集。
2.双向箭头表示等同性验证,两端的功能或者网表结构必须等同。
具体的验证以'V'来标示。比如,在GD之间的验证,标示为GDV_。以此类推,TDV_,ADV_。
3.GDV_12以动态仿真来验证GD_2的正确性,GDV_23以形式验证来验证GD_2与GD_3是等价的,GDV_34以版图vs电路(LVS:layout vs schematic)来验证GD_3与GD_4是等价的。
4.TDV_21是单向的验证。确保TD_1的连接关系依然存在于TD_2,TDV_23是双向的验证,用形式验证方式保证二者功能一致性,TDV_34是双向的LVS。
5.ADV_21是单向的验证。确保AD_1的连接关系依然存在于AD_2,ADV_23是双向的验证,用形式验证方式保证二者功能一致性,ADV_34是双向的LVS。
图4为根据本发明的一个实施例的单元电子器件的布线示意图,示出了各个单元电子器件的实际连接关系。
图5为根据本发明的一个实施例的格点单元的示意图,该格点单元由若干个普通的基本逻辑单元(grid device),特殊的基本逻辑单元(CRAM device)以及各自之间的互连组成。CRAM device主要用来存储配置点资源,其它基本逻辑单元(grid device)为用户可用的可编程资源。格点单元(Tile device)为硬件模块化所做的一个层次,为一个虚拟的层次,便于位流文件的生成。
图6为根据本发明的一个实施例的顶层网表的示意图,如图6所示,在硬件网表中,由若干个格点单元及其之间的互连组成,在顶层结构模型层次,格点单元在格点系统的规范下,呈现出2D排布。编译工具在解析硬件网表时,会自动去掉格点单元层次,提取可编程信息,生成软件网表。因此,软件网表的顶层结构模型,由若干个用户可编程的grid device及其之间的互连组成。
格点单元和顶层网表都有自己的格点系统。格点单元和顶层结构模型(architecture device)处于不同的层次,虽然他们分别定义各自独立的,但是两个格点系统必须保证是完全重合的,这样就可以保证顶层结构模型下,格点单元和基本逻辑单元(grid device)完全重合,不会存在偏移的情况,减少不必要的操作,减少人为理解的障碍。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本实施例中软件层面的顶层网表是基于硬件设备自动解析而来,并借助特殊的器件建模方法,通过自定义的语言实现的顶层结构级的连接以及相应的编译工具,极大的实现了自动化,剔除人工因素,因此可保证软件网表和硬件网表的一致性。同时,软硬件也可以同时进行研发,所有的版本更新可以统一进行管理,减少了版本上的沟通成本,加快了研发效率。
图7为根据本发明的一个实施例的FPGA顶层网表的创建装置的示范性结构框图,下面结合图7来详细描述根据本发明的一个实施例的FPGA顶层网表的创建装置,如图7所示,该FPGA顶层网表的创建装置100包括:划分模块11、映射模块12、验证模块13及网表定义模块14。
划分模块11,用于根据预先定义的划分标准,将若干个单元电子器件划分为同一模块。
根据本实施例的一个示例,该同一模块中的若干个单元电子器件包括寄存器,还包括与非门或或非门中的至少一种。例如。一个模块可以包含十个与非门及一个寄存器,也可以包括十个或非门及一个寄存器。
根据本实施例的一个示例,预先定义的划分的标准以提高各个电子器件的利用率作为目的,具体需要将哪些单元电子器件划分到同一模块可以根据用户的实际需求来设计,此处不做限制。
映射模块12,用于将划分的该模块映射到格点单元。
验证模块13,用于根据该单元电子器件的实际连线及功能,验证该格点单元中的模块与该若干个单元电子器件的对等性。
网表定义模块14,用于当验证的该对等性为完全对等时,将所有该格点单元定义为顶层网表。
在其中的一个实施例中,该网表定义模块14具体用于:
定义该顶层网表的表名及每个该格点单元的坐标。
在其中的一个实施例中,该装置还包括:
层级定义模块,用于将划分的同一模块通过不同层级的表述分别进行定义;
该映射模块12还用于将划分的该模块映射到对应层级下的格点单元;
该验证模块13还用于验证不同层级中该格点单元中的同一模块的对等性;
网表定义模块14还用于当不同层级中该格点单元中的同一模块的对等性为完全对等时,分别将每个层级下的该所有格点单元定义为顶层网表。
在其中的一个实施例中,该验证模块13具体用于按照层级由低到高的顺序,分别验证相邻层级中同一模块的对等性,该不同层级中的最低层级为该单元电子器件所对应的层级。
在其中的一个实施例中,该验证模块13还用于验证不同层级中的该顶层网表中的同一模块的对等性。
在其中的一个实施例中,上述同一模块中的若干个单元电子器件包括寄存器,还包括与非门或或非门中的至少一种。
需要说明的是,上述装置实施例与方法实施例属于同一构思,其具体实现过程详见方法实施例,且方法实施例中的技术特征在装置实施例中均对应适用,这里不再赘述。
根据本实施例提供的一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现上述FPGA顶层网表的创建方法。
图8为一个实施例中计算机设备的内部结构示意图,该计算机设备可以为服务器。参照图8,该计算机设备包括通过系统总线连接的处理器、存储器、输入装置、显示屏和网络接口。其中,该存储器包括非易失性存储介质和内存储器,该计算机设备的非易失性存储介质可存储操作系统和计算机可读指令,该计算机可读指令被执行时,可使得处理器执行本申请各实施例的一种FPGA顶层网表的创建方法,该方法的具体实现过程可参考图1至6各实施例的具体内容,在此不再赘述。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种FPGA顶层网表的创建方法。计算机设备的输入装置用于各个参数的输入,计算机设备的显示屏用于进行显示,计算机设备的网络接口用于进行网络通信。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
根据本发明实施例提供的一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述FPGA顶层网表的创建方法中的步骤。
根据本实施例的一个示例,上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。该存储介质包括但不限于磁碟、优盘、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
本实施例提供的一种FPGA顶层网表的创建方法、装置、计算机设备及介质,通过将若干个单元电子器件划分为同一模块,再将划分的该模块映射到格点单元,然后根据该单元电子器件的实际连线及功能,验证该格点单元中的模块与该若干个单元电子器件的对等性,当验证的该对等性为完全对等时,最后将所有该格点单元定义为顶层网表,可以保证软件层面的顶层网表与硬件上的电子器件的一致性,减少了后期使用时由于软件网表的设计与硬件设备不一致消耗的调整时间,提高了整体的研发效率。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (7)

1.一种FPGA顶层网表的创建方法,其特征在于,所述方法包括:
根据预先定义的划分标准,将若干个单元电子器件划分为同一模块;
将划分的同一模块通过不同层级的表述分别进行定义;
将划分的所述模块映射到对应层级下的格点单元;
验证不同层级中所述格点单元中的同一模块的对等性;
当不同层级中所述格点单元中的同一模块的对等性为完全对等时,分别将每个层级下的所有格点单元定义为顶层网表;
根据所述单元电子器件的实际连线及功能,验证所述格点单元中的模块与所述若干个单元电子器件的对等性;
当验证的所述对等性为完全对等时,将所有所述格点单元定义为顶层网表;
验证不同层级中的所述顶层网表中的同一模块的对等性;
其中,所述验证所述格点单元中的模块与所述若干个单元电子器件的对等性的步骤包括:
按照层级由低到高的顺序,分别验证相邻层级中同一模块的对等性,所述不同层级中的最低层级为所述单元电子器件所对应的层级。
2.根据权利要求1所述的方法,其特征在于,所述将所有所述格点单元定义为顶层网表的步骤包括:
定义所述顶层网表的表名及每个所述格点单元的坐标。
3.根据权利要求1或2任一项所述的方法,其特征在于,所述同一模块中的若干个单元电子器件包括寄存器,还包括与非门或或非门中的至少一种。
4.一种FPGA顶层网表的创建装置,其特征在于,所述装置包括:
划分模块,用于根据预先定义的划分标准,将若干个单元电子器件划分为同一模块;将划分的同一模块通过不同层级的表述分别进行定义;
映射模块,用于将划分的所述模块映射到对应层级下的格点单元;
验证不同层级中所述格点单元中的同一模块的对等性;
当不同层级中所述格点单元中的同一模块的对等性为完全对等时,分别将每个层级下的所有格点单元定义为顶层网表;
验证模块,用于根据所述单元电子器件的实际连线及功能,验证所述格点单元中的模块与所述若干个单元电子器件的对等性;
网表定义模块,用于当验证的所述对等性为完全对等时,将所有所述格点单元定义为顶层网表;验证不同层级中的所述顶层网表中的同一模块的对等性;
其中,所述验证所述格点单元中的模块与所述若干个单元电子器件的对等性的步骤包括:
按照层级由低到高的顺序,分别验证相邻层级中同一模块的对等性,所述不同层级中的最低层级为所述单元电子器件所对应的层级。
5.根据权利要求4所述的装置,其特征在于,所述网表定义模块具体用于:
定义所述顶层网表的表名及每个所述格点单元的坐标。
6.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3中任一项的FPGA顶层网表的创建方法。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至3任一项所述方法中的步骤。
CN201711309444.3A 2017-12-11 2017-12-11 Fpga顶层网表的创建方法、装置、计算机设备及介质 Active CN107944183B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711309444.3A CN107944183B (zh) 2017-12-11 2017-12-11 Fpga顶层网表的创建方法、装置、计算机设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711309444.3A CN107944183B (zh) 2017-12-11 2017-12-11 Fpga顶层网表的创建方法、装置、计算机设备及介质

Publications (2)

Publication Number Publication Date
CN107944183A CN107944183A (zh) 2018-04-20
CN107944183B true CN107944183B (zh) 2021-07-20

Family

ID=61946513

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711309444.3A Active CN107944183B (zh) 2017-12-11 2017-12-11 Fpga顶层网表的创建方法、装置、计算机设备及介质

Country Status (1)

Country Link
CN (1) CN107944183B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11074385B2 (en) * 2018-06-01 2021-07-27 ICEE Solutions LLC Method and system for hierarchical circuit simulation using parallel processing
CN109753721B (zh) * 2018-12-29 2020-03-10 广东高云半导体科技股份有限公司 Fpga器件布局布线显示方法、装置、设备及存储介质
CN112257357B (zh) * 2020-09-14 2022-09-13 深圳市紫光同创电子有限公司 Fpga芯片顶层电路的构建方法、装置及存储介质
CN114492272A (zh) * 2021-12-30 2022-05-13 深圳市紫光同创电子有限公司 Fpga芯片及其顶层网表的搭建方法、装置、设备、存储介质
CN114692537A (zh) * 2022-02-28 2022-07-01 深圳市紫光同创电子有限公司 Fpga电路tile层级连接检查方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671868B1 (en) * 2001-12-03 2003-12-30 Cypress Semiconductor Corp. Method of creating MCM pinouts
CN105718679A (zh) * 2016-01-22 2016-06-29 深圳市同创国芯电子有限公司 一种fpga的资源布局方法及装置
CN105718644A (zh) * 2016-01-19 2016-06-29 深圳市同创国芯电子有限公司 一种现场可编程门阵列网表生成方法及装置
CN106682268A (zh) * 2016-11-28 2017-05-17 深圳市紫光同创电子有限公司 可编程逻辑器件配置方法及设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6817005B2 (en) * 2000-05-25 2004-11-09 Xilinx, Inc. Modular design method and system for programmable logic devices
US8099702B2 (en) * 2008-07-30 2012-01-17 Synopsys, Inc. Method and apparatus for proximate placement of sequential cells

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671868B1 (en) * 2001-12-03 2003-12-30 Cypress Semiconductor Corp. Method of creating MCM pinouts
CN105718644A (zh) * 2016-01-19 2016-06-29 深圳市同创国芯电子有限公司 一种现场可编程门阵列网表生成方法及装置
CN105718679A (zh) * 2016-01-22 2016-06-29 深圳市同创国芯电子有限公司 一种fpga的资源布局方法及装置
CN106682268A (zh) * 2016-11-28 2017-05-17 深圳市紫光同创电子有限公司 可编程逻辑器件配置方法及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FPGA-SPICE: A Simulation-based Power Estimation Framework for FPGAs;Xifan Tang等;《IEEE Xplore》;20151217;第696-703页 *
FPGA布局算法的研究与实现;李可;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160315;第2016年卷(第03期);第I135-1459页的第4章 *

Also Published As

Publication number Publication date
CN107944183A (zh) 2018-04-20

Similar Documents

Publication Publication Date Title
CN107944183B (zh) Fpga顶层网表的创建方法、装置、计算机设备及介质
US9892223B1 (en) System and method for designing system on chip (SoC) circuits by synchronizing a hierarchy of SMDPs
US11836641B2 (en) Machine learning-based prediction of metrics at early-stage circuit design
US8839171B1 (en) Method of global design closure at top level and driving of downstream implementation flow
CN103678745B (zh) 一种用于fpga的跨平台多层次集成设计系统
US9880922B1 (en) System and method for automatically generating a graphical model from a text-based program
CN101539958B (zh) 一种标准单元库和集成电路的设计方法和装置
US20140129998A1 (en) Hierarchical equivalence checking and efficient handling of equivalence checks when engineering change orders are in an unsharable register transfer level
US20230120227A1 (en) Method and apparatus having a scalable architecture for neural networks
US12112202B2 (en) Framework for application driven exploration and optimization of hardware engines
US11366948B2 (en) Machine-learning enhanced compiler
Hutton et al. Automatic generation of synthetic sequential benchmark circuits
TW202113656A (zh) 執行自動化整合扇出晶圓級封裝佈線的方法及系統
Seyoum et al. Flora: Floorplan optimizer for reconfigurable areas in fpgas
CN108984945B (zh) 基于多核心联合仿真被验证设计的仿真验证平台
US11022634B1 (en) Rail block context generation for block-level rail voltage drop analysis
US11704467B2 (en) Automated balanced global clock tree synthesis in multi level physical hierarchy
CN108228965B (zh) 一种存储单元的仿真验证方法、装置和设备
US11847396B1 (en) Integrated circuit design using multi-bit combinational cells
Glick et al. Maverick: A stand-alone CAD flow for partially reconfigurable FPGA modules
US11941339B1 (en) Automated equal-resistance routing in compact pattern
US11816407B1 (en) Automatic channel identification of high-bandwidth memory channels for auto-routing
Lavin Using hard macros to accelerate fpga compilation for xilinx fpgas
US12014205B2 (en) Advanced register merging
Zha Facilitating FPGA reconfiguration through low-level manipulation

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
CP03 Change of name, title or address

Address after: 518000 Guowei R & D building 401, No.015, Gaoxin South 1st Road, high tech Zone community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Ziguang Tongchuang Electronics Co.,Ltd.

Country or region after: China

Address before: 16th Floor, Haowei Technology Building, Science and Technology South Eighth Road, Nanshan District, Shenzhen, Guangdong Province, China

Patentee before: SHENZHEN PANGO MICROSYSTEMS Co.,Ltd.

Country or region before: China

CP03 Change of name, title or address