CN112906328A - Fpga原型验证系统生成方法及系统、fpga原型验证方法及系统 - Google Patents
Fpga原型验证系统生成方法及系统、fpga原型验证方法及系统 Download PDFInfo
- Publication number
- CN112906328A CN112906328A CN202110158911.7A CN202110158911A CN112906328A CN 112906328 A CN112906328 A CN 112906328A CN 202110158911 A CN202110158911 A CN 202110158911A CN 112906328 A CN112906328 A CN 112906328A
- Authority
- CN
- China
- Prior art keywords
- verification
- fpga
- subsystem
- verification subsystem
- scheduling
- 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.)
- Granted
Links
- 238000012795 verification Methods 0.000 title claims abstract description 243
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000010354 integration Effects 0.000 claims abstract description 15
- 230000015572 biosynthetic process Effects 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 28
- 238000003786 synthesis reaction Methods 0.000 claims description 28
- 238000013461 design Methods 0.000 claims description 14
- 230000006399 behavior Effects 0.000 claims description 10
- 230000002194 synthesizing effect Effects 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 6
- 238000012546 transfer Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
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原型验证系统划分为若干个验证子系统;各验证子系统能进行设定功能和性能的FPGA验证;将综合后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统。修正或者修改设定的验证子系统;对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统。本发明提出的FPGA原型验证系统生成方法及系统、FPGA原型验证方法及系统,将原有的验证系统划分为若干子系统,每个子系统可以独立同步综合,可降低综合的复杂度,减少综合时间,提高综合效率。
Description
技术领域
本发明属于集成电路技术领域,涉及一种验证系统,尤其涉及一种FPGA原型验证系统生成方法及系统、FPGA原型验证方法及系统。
背景技术
FPGA原型验证是指通过将RTL移植到现场可编程门阵列(FPGA)来验证专用集成电路(ASIC)和片上系统(SoC)的功能和性能。FPGA原型验证可以在集成电路(IC)流片前对芯片功能和性能做出评估,不仅可以确保集成电路(IC)实现模型与期望的设计性能相匹配,提高流片成功率,同时,还可以给软件设计人员提供验证平台,使得软件和芯片同时开发,加速了产品的面市时间。FPGA原型验证在SoC和ASIC系统验证中,起着非常重要的作用。
随着集成电路(IC)相关产业高速发展,市场竞争也日趋激烈,对于FPGA原型验证效率也提出新的需求和挑战。此外,专用集成电路(ASIC)和片上系统(SoC)功能越来越复杂,由于受到成本和资源的限制,现有的验证架构无法满足FPGA原型验证的需求。
一个典型的现有FPGA原型验证架构如图1所示。在该架构中,FPGA原型验证系统由三部分组成:
(1)FPGA RTL综合设备,负责将RTL源码综合成FPGA门级网表。
(2)FPGA硬件平台,专用集成电路(ASIC)或片上系统(SoC)的功能硬件载体,包括验证ASIC或SoC功能或者性能而必备的辅助硬件设备。
(3)FPGA原型验证平台,包括验证软件,软件集成开发环境,调试器等设备。
现有FPGA原型验证系统至少存在下面三个问题:
(1)在大规模的SoC或者ASIC验证中,FPGA原型验证系统综合速度比较慢,花费时间比较长,验证效率低。
(2)如果验证系统中某个模块存在问题,需要修改重新验证,那么需要将整个系统重新综合,重新综合的时间长,效率低。
(3)如果SoC或者ASIC规模比较大,需要的FPGA资源较多,由于单个FPGA验证系统资源的限制,现有的FPGA原型验证架构无法满足验证需求。
有鉴于此,如今迫切需要设计一种新的FPGA原型验证系统,以便克服现有FPGA原型验证系统存在的上述至少部分缺陷。
发明内容
本发明提供一种FPGA原型验证系统生成方法及系统、FPGA原型验证方法及系统,可降低综合的复杂度,减少综合时间,提高综合效率。
为解决上述技术问题,根据本发明的一个方面,采用如下技术方案:
一种FPGA原型验证系统生成方法,所述生成方法包括:
步骤S1、将整个FPGA原型验证系统划分为若干个验证子系统;
步骤S2、每个验证子系统独立、同步进行综合处理;
步骤S3、将综合处理后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统;所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译、转换、调度、分配、控制器综合和结果的生成;所述资源指综合处理的结果,即综合处理生成的网表文件;
步骤S4、对完整的验证系统进行功能和性能的验证;
步骤S5、判断是否验证成功;如果验证成功,则结束验证工作;如果某个或某些验证子系统需要修正或者修改,则执行步骤S6;
步骤S6、对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统;转至步骤S4。
根据本发明的另一个方面,采用如下技术方案:一种FPGA原型验证系统生成方法,所述生成方法包括:
将整个FPGA原型验证系统划分为若干个验证子系统;各验证子系统能进行设定功能和性能的FPGA验证;
对各验证子系统进行综合处理;将综合处理后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统。
作为本发明的一种实施方式,所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译步骤、转换步骤、调度步骤、分配步骤、控制器综合步骤和结果生成步骤;所述资源指综合处理的结果,即综合处理生成的网表文件。
编译步骤中,将由硬件描述语言编写的行为特性描述经过编译生成为一个适合自动综合的中间表示格式,包括控制流图、数据流图以及控制数据流图;
转换步骤中,对设计的行为描述进行优化;包括编译优化、增加操作并行度、将复杂的多周期操作转换为简单操作、减少控制数据流图中关键路径和指定路径上的操作个数;
调度步骤中,将操作赋给控制步;控制步是一个时序单位,对应若干个时钟周期;调度的目的是在满足约束条件下使得器件完成所有功能所需时间最少,即确定每个操作发生的时刻;
分配步骤中,定义系统中部件和部件之间互连的过程;包括分配寄存器或RAM存储器来存放数据值,分配功能部件来执行特定的操作,分配互连路径在部件之间传输数据;建立一个功能块级模块组成的数据通路,使所占用的硬件资源花费最少,尽量共享;
控制器综合步骤中,按调度要求驱动数据通路的控制器;
结果生成步骤中,将设计转换为硬件结构的物理实现。
作为本发明的一种实施方式,所述生成方法进一步包括:修正或者修改设定的验证子系统。
作为本发明的一种实施方式,所述生成方法进一步包括:对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统。
根据本发明的又一个方面,采用如下技术方案:一种FPGA原型验证方法,所述验证方法包括:
FPGA验证分配模块为各个FPGA验证子系统分配验证流程;各个FPGA验证子系统根据分配的验证流程进行设定功能和性能的FPGA验证。
根据本发明的又一个方面,采用如下技术方案:一种FPGA原型验证系统生成系统,所述生成系统包括:
至少两个验证子系统,用以进行设定功能和性能的FPGA验证;
综合模块,用以综合各个验证子系统,将综合后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统。
作为本发明的一种实施方式,所述生成系统进一步包括:数据修改模块,用以修正或者修改设定的验证子系统。
作为本发明的一种实施方式,所述综合模块用以对修正或者修改后的验证子系统重新进行综合处理;将综合处理后的验证子系统资源下载到对应的FPGA验证子系统。所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译、转换、调度、分配、控制器综合和结果的生成;所述资源指综合处理的结果,即综合处理生成的网表文件。
所述综合模块包括:
编译单元,用以将由硬件描述语言编写的行为特性描述经过编译生成为一个适合自动综合的中间表示格式,包括控制流图、数据流图以及控制数据流图;
转换单元,用以对设计的行为描述进行优化;包括编译优化、增加操作并行度、将复杂的多周期操作转换为简单操作、减少控制数据流图中关键路径和指定路径上的操作个数;
调度单元,用以将操作赋给控制步;控制步是一个时序单位,对应若干个时钟周期;调度的目的是在满足约束条件下使得器件完成所有功能所需时间最少,即确定每个操作发生的时刻;
分配单元,用以定义系统中部件和部件之间互连的过程;包括分配寄存器或RAM存储器来存放数据值,分配功能部件来执行特定的操作,分配互连路径在部件之间传输数据;建立一个功能块级模块组成的数据通路,使所占用的硬件资源花费最少,尽量共享;
控制器综合单元,用以按调度要求驱动数据通路的控制器;
结果生成单元,用以将设计转换为硬件结构的物理实现。
根据本发明的又一个方面,采用如下技术方案:一种FPGA原型验证系统,所述验证系统包括:
FPGA验证分配模块,用以为各个FPGA验证子系统分配验证流程;
至少两个FPGA验证子系统,用以根据所述FPGA验证分配模块分配的验证流程进行设定功能和性能的FPGA验证。
本发明的有益效果在于:本发明提出的FPGA原型验证系统生成方法及系统、FPGA原型验证方法及系统,将原有的验证系统划分为若干子系统,每个子系统可以独立同步综合,可降低综合的复杂度,减少综合时间,提高综合效率。
同时,本发明可以将一个大规模的SoC或者ASIC原型,划分为多个子系统,解决了单个FPGA原型验证系统资源无法满足验证需求的问题。本发明可以有效地缩短FPGA原型验证过程中,因SoC或者ASIC功能修正或修改而需要重新综合的时间,提高验证效率。亦可解决单个FPGA验证平台资源无法满足大规模SoC或者ASIC验证需求的问题。
此外,本发明可以将容易出错或者大概率需要修改的模块划分为独立的子系统,在该子系统需要修正或者修改时,只综合该子系统的RTL代码,其它子系统保持不变,不必综合整个系统;这样就减少了综合的时间,提升整个验证流程的效率。本发明可以将若干个子系统组建成一个大的FPGA原型验证系统,解决单个FPGA验证系统资源无法满足验证需求的问题。
附图说明
图1为现有FPGA原型验证系统的组成示意图。
图2为本发明一实施例中FPGA原型验证系统的组成示意图。
图3为本发明一实施例中FPGA原型验证系统的组成示意图。
图4为本发明一实施例中FPGA原型验证系统生成方法的流程图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
为了进一步理解本发明,下面结合实施例对本发明优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制。
该部分的描述只针对几个典型的实施例,本发明并不仅局限于实施例描述的范围。相同或相近的现有技术手段与实施例中的一些技术特征进行相互替换也在本发明描述和保护的范围内。
说明书中各个实施例中的步骤的表述只是为了方便说明,本申请的实现方式不受步骤实现的顺序限制。说明书中的“连接”既包含直接连接,也包含间接连接。
本发明揭示了一种FPGA原型验证系统生成方法,所述生成方法包括:
将整个FPGA原型验证系统划分为若干个验证子系统;各验证子系统能进行设定功能和性能的FPGA验证;
对各验证子系统进行综合处理;将综合处理后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统。
在一实施例中,所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译、转换、调度、分配、控制器综合和结果的生成;所述资源指综合处理的结果,即综合处理生成的网表文件。
在本发明的一实施例中,编译步骤中,将由硬件描述语言(HDL)编写的行为特性描述经过编译生成为一个适合自动综合的中间表示格式(如可以包括控制流图、数据流图以及控制数据流图)。
转换步骤中,对设计的行为描述进行优化;包括编译优化、增加操作并行度、将复杂的多周期操作转换为简单操作、减少控制数据流图中关键路径和指定路径上的操作个数等。
调度步骤中,将操作赋给控制步;控制步是一个时序单位,对应若干个时钟周期;调度的目的是在满足约束条件下使得器件完成所有功能所需时间最少。通俗地讲,就是确定每个操作发生的时刻。
分配步骤中,定义系统中部件和部件之间互连的过程;包括分配寄存器或RAM存储器来存放数据值,分配功能部件来执行特定的操作,分配互连路径在部件之间传输数据;建立一个功能块级模块组成的数据通路,使所占用的硬件资源花费最少,尽量共享。
控制器综合步骤中,按调度要求驱动数据通路的控制器;结果生成步骤中,将设计转换为硬件结构的物理实现。
在本发明的一实施例中,所述生成方法进一步包括:修正或者修改设定的验证子系统。在一实施例中,所述生成方法还可以包括:对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统。
图4为本发明一实施例中FPGA原型验证系统生成方法的流程图;请参阅图4,在本发明的一实施例中,所述生成方法包括:
步骤S1、将整个FPGA原型验证系统划分为若干个验证子系统;
步骤S2、每个验证子系统独立、同步进行综合处理;
步骤S3、将综合处理后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统;所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译、转换、调度、分配、控制器综合和结果的生成;所述资源指综合处理的结果,即综合处理生成的网表文件;
步骤S4、对完整的验证系统进行功能和性能的验证;
步骤S5、判断是否验证成功;如果验证成功,则结束验证工作;如果某个或某些验证子系统需要修正或者修改,则执行步骤S6;
步骤S6、对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统;转至步骤S4。
本发明揭示一种FPGA原型验证方法,所述验证方法包括:FPGA验证分配模块为各个FPGA验证子系统分配验证流程;各个FPGA验证子系统根据分配的验证流程进行设定功能和性能的FPGA验证。
本发明揭示一种FPGA原型验证系统生成系统,图2、图3为本发明一实施例中FPGA原型验证系统的组成示意图;请参阅图2、图3,所述生成系统包括:至少两个验证子系统1及综合模块2。各验证子系统1用以进行设定功能和性能的FPGA验证;综合模块2用以综合处理各个验证子系统1,将综合处理后的各个验证子系统1资源下载到各个FPGA验证子系统1,构成一个完整的验证系统。在一实施例中,所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译、转换、调度、分配、控制器综合和结果的生成;所述资源指综合处理的结果,即综合处理生成的网表文件。
在本发明的一实施例中,所述综合模块2包括:编译单元21、转换单元22、调度单元23、分配单元24、控制器综合单元25及结果生成单元26。
编译单元21用以将由硬件描述语言(HDL)编写的行为特性描述经过编译生成为一个适合自动综合的中间表示格式,如可以包括控制流图、数据流图以及控制数据流图。
转换单元22用以对设计的行为描述进行优化;包括编译优化、增加操作并行度、将复杂的多周期操作转换为简单操作、减少控制数据流图中关键路径和指定路径上的操作个数。
调度单元23用以将操作赋给控制步;控制步是一个时序单位,对应若干个时钟周期;调度的目的是在满足约束条件下使得器件完成所有功能所需时间最少,即确定每个操作发生的时刻。
分配单元24用以定义系统中部件和部件之间互连的过程;包括分配寄存器或RAM存储器来存放数据值,分配功能部件来执行特定的操作,分配互连路径在部件之间传输数据;建立一个功能块级模块组成的数据通路,使所占用的硬件资源花费最少,尽量共享。
控制器综合单元25用以按调度要求驱动数据通路的控制器;结果生成单元26用以将设计转换为硬件结构的物理实现。
在本发明的一实施例中,所述生成系统进一步包括:数据修改模块,用以修正或者修改设定的验证子系统。在一实施例中,所述综合模块用以对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统。
本发明揭示一种FPGA原型验证系统,所述验证系统包括:FPGA验证分配模块及至少两个FPGA验证子系统。FPGA验证分配模块用以为各个FPGA验证子系统分配验证流程;各FPGA验证子系统用以根据所述FPGA验证分配模块分配的验证流程进行设定功能和性能的FPGA验证。
综上所述,本发明提出的FPGA原型验证系统生成方法及系统、FPGA原型验证方法及系统,将原有的验证系统划分为若干子系统,每个子系统可以独立同步综合,可降低综合的复杂度,减少综合时间,提高综合效率。
基于该架构,本发明可以将容易出错或者修改概率较大的模块划分为单独的子系统,在需要修改该模块时,只综合该模块的RTL代码而不必综合整个系统,可以大大缩减FPGA重新综合的时间,提高验证效率。
同时,本发明可以将一个大规模的SoC或者ASIC原型,划分为多个子系统,解决了单个FPGA原型验证系统资源无法满足验证需求的问题。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施;例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中;例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现;例如,作为与处理器配合从而执行各个步骤或功能的电路。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。实施例中所涉及的效果或优点可因多种因素干扰而可能不能在实施例中体现,对于效果或优点的描述不用于对实施例进行限制。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。
Claims (10)
1.一种FPGA原型验证系统生成方法,其特征在于,所述生成方法包括:
步骤S1、将整个FPGA原型验证系统划分为若干个验证子系统;
步骤S2、每个验证子系统独立、同步进行综合处理;
步骤S3、将综合处理后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统;所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译、转换、调度、分配、控制器综合和结果的生成;所述资源指综合处理的结果,即综合处理生成的网表文件;
步骤S4、对完整的验证系统进行功能和性能的验证;
步骤S5、判断是否验证成功;如果验证成功,则结束验证工作;如果某个或某些验证子系统需要修正或者修改,则执行步骤S6;
步骤S6、对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统;转至步骤S4。
2.一种FPGA原型验证系统生成方法,其特征在于,所述生成方法包括:
将整个FPGA原型验证系统划分为若干个验证子系统;各验证子系统能进行设定功能和性能的FPGA验证;
对各验证子系统进行综合处理;
将综合处理后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统。
3.根据权利要求2所述的FPGA原型验证系统生成方法,其特征在于:
所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译步骤、转换步骤、调度步骤、分配步骤、控制器综合步骤和结果生成步骤;所述资源指综合处理的结果,即综合处理生成的网表文件;
编译步骤中,将由硬件描述语言编写的行为特性描述经过编译生成为一个适合自动综合的中间表示格式,包括控制流图、数据流图以及控制数据流图;
转换步骤中,对设计的行为描述进行优化;包括编译优化、增加操作并行度、将复杂的多周期操作转换为简单操作、减少控制数据流图中关键路径和指定路径上的操作个数;
调度步骤中,将操作赋给控制步;控制步是一个时序单位,对应若干个时钟周期;调度的目的是在满足约束条件下使得器件完成所有功能所需时间最少,即确定每个操作发生的时刻;
分配步骤中,定义系统中部件和部件之间互连的过程;包括分配寄存器或RAM存储器来存放数据值,分配功能部件来执行特定的操作,分配互连路径在部件之间传输数据;建立一个功能块级模块组成的数据通路,使所占用的硬件资源花费最少,尽量共享;
控制器综合步骤中,按调度要求驱动数据通路的控制器;
结果生成步骤中,将设计转换为硬件结构的物理实现。
4.根据权利要求2所述的FPGA原型验证系统生成方法,其特征在于:
所述生成方法进一步包括:修正或者修改设定的验证子系统。
5.根据权利要求4所述的FPGA原型验证系统生成方法,其特征在于:
所述生成方法进一步包括:对修正或者修改后的验证子系统重新进行综合;将综合后的验证子系统资源下载到对应的FPGA验证子系统。
6.一种FPGA原型验证方法,其特征在于,所述验证方法包括:
FPGA验证分配模块为各个FPGA验证子系统分配验证流程;各个FPGA验证子系统根据分配的验证流程进行设定功能和性能的FPGA验证。
7.一种FPGA原型验证系统生成系统,其特征在于,所述生成系统包括:
至少两个验证子系统,用以进行设定功能和性能的FPGA验证;
综合模块,用以综合处理各个验证子系统,将综合处理后的各个验证子系统资源下载到各个FPGA验证子系统,构成一个完整的验证系统。
8.根据权利要求7所述的FPGA原型验证系统生成系统,其特征在于:
所述生成系统进一步包括:数据修改模块,用以修正或者修改设定的验证子系统。
9.根据权利要求8所述的FPGA原型验证系统生成系统,其特征在于:
所述综合模块用以对修正或者修改后的验证子系统重新进行综合处理;将综合处理后的验证子系统资源下载到对应的FPGA验证子系统;所述综合处理指将RTL代码转换为门级网表文件或程序,包括编译、转换、调度、分配、控制器综合和结果的生成;所述资源指综合的结果,即综合生成的网表文件;
所述综合模块包括:
编译单元,用以将由硬件描述语言编写的行为特性描述经过编译生成为一个适合自动综合的中间表示格式,包括控制流图、数据流图以及控制数据流图;
转换单元,用以对设计的行为描述进行优化;包括编译优化、增加操作并行度、将复杂的多周期操作转换为简单操作、减少控制数据流图中关键路径和指定路径上的操作个数;
调度单元,用以将操作赋给控制步;控制步是一个时序单位,对应若干个时钟周期;调度的目的是在满足约束条件下使得器件完成所有功能所需时间最少,即确定每个操作发生的时刻;
分配单元,用以定义系统中部件和部件之间互连的过程;包括分配寄存器或RAM存储器来存放数据值,分配功能部件来执行特定的操作,分配互连路径在部件之间传输数据;建立一个功能块级模块组成的数据通路,使所占用的硬件资源花费最少,尽量共享;
控制器综合单元,用以按调度要求驱动数据通路的控制器;
结果生成单元,用以将设计转换为硬件结构的物理实现。
10.一种FPGA原型验证系统,其特征在于,所述验证系统包括:
FPGA验证分配模块,用以为各个FPGA验证子系统分配验证流程;
至少两个FPGA验证子系统,用以根据所述FPGA验证分配模块分配的验证流程进行设定功能和性能的FPGA验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110158911.7A CN112906328B (zh) | 2021-02-05 | 2021-02-05 | Fpga原型验证系统生成方法及系统、fpga原型验证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110158911.7A CN112906328B (zh) | 2021-02-05 | 2021-02-05 | Fpga原型验证系统生成方法及系统、fpga原型验证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112906328A true CN112906328A (zh) | 2021-06-04 |
CN112906328B CN112906328B (zh) | 2024-03-08 |
Family
ID=76122628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110158911.7A Active CN112906328B (zh) | 2021-02-05 | 2021-02-05 | Fpga原型验证系统生成方法及系统、fpga原型验证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112906328B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113095016A (zh) * | 2021-06-09 | 2021-07-09 | 苏州浪潮智能科技有限公司 | 构建fpga原型验证平台的方法、装置、设备和介质 |
CN114896919A (zh) * | 2022-05-07 | 2022-08-12 | 常超 | 一种基于fpga的集成电路原型验证系统及方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090150136A1 (en) * | 2005-10-10 | 2009-06-11 | Sei Yang Yang | Dynamic-based verification apparatus for verification from electronic system level to gate level, and verification method using the same |
CN102201022A (zh) * | 2011-04-22 | 2011-09-28 | 青岛海信信芯科技有限公司 | 用于fpga验证的方法和装置 |
CN102306131A (zh) * | 2011-08-23 | 2012-01-04 | 北京亚科鸿禹电子有限公司 | 一种fpga原型验证系统总线控制装置 |
CN203025709U (zh) * | 2013-01-21 | 2013-06-26 | 浙江传媒学院 | 一种fpga原型验证板堆叠的时钟同步装置 |
US20140100837A1 (en) * | 2012-10-08 | 2014-04-10 | Stefan Heinen | Integration verification system |
US20140157215A1 (en) * | 2012-12-01 | 2014-06-05 | Synopsys, Inc. | System and method of emulating multiple custom prototype boards |
US20170364621A1 (en) * | 2016-06-16 | 2017-12-21 | Synopsys, Inc. | Partitioning and routing multi-slr fpga for emulation and prototyping |
CN111090584A (zh) * | 2019-11-25 | 2020-05-01 | 大唐半导体科技有限公司 | 一种fpga平台ip原型快速验证方法及系统 |
US20200272701A1 (en) * | 2019-02-22 | 2020-08-27 | Bae Systems Information And Electronic Systems Integration Inc. | Software integration into hardware verification |
CN212112481U (zh) * | 2020-06-03 | 2020-12-08 | 成都卓源网络科技有限公司 | 一种原型验证平台的电路结构 |
CN112306924A (zh) * | 2020-11-26 | 2021-02-02 | 山东云海国创云计算装备产业创新中心有限公司 | 一种数据交互方法、装置、系统及可读存储介质 |
-
2021
- 2021-02-05 CN CN202110158911.7A patent/CN112906328B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090150136A1 (en) * | 2005-10-10 | 2009-06-11 | Sei Yang Yang | Dynamic-based verification apparatus for verification from electronic system level to gate level, and verification method using the same |
CN102201022A (zh) * | 2011-04-22 | 2011-09-28 | 青岛海信信芯科技有限公司 | 用于fpga验证的方法和装置 |
CN102306131A (zh) * | 2011-08-23 | 2012-01-04 | 北京亚科鸿禹电子有限公司 | 一种fpga原型验证系统总线控制装置 |
US20140100837A1 (en) * | 2012-10-08 | 2014-04-10 | Stefan Heinen | Integration verification system |
US20140157215A1 (en) * | 2012-12-01 | 2014-06-05 | Synopsys, Inc. | System and method of emulating multiple custom prototype boards |
CN203025709U (zh) * | 2013-01-21 | 2013-06-26 | 浙江传媒学院 | 一种fpga原型验证板堆叠的时钟同步装置 |
US20170364621A1 (en) * | 2016-06-16 | 2017-12-21 | Synopsys, Inc. | Partitioning and routing multi-slr fpga for emulation and prototyping |
US20200272701A1 (en) * | 2019-02-22 | 2020-08-27 | Bae Systems Information And Electronic Systems Integration Inc. | Software integration into hardware verification |
CN111090584A (zh) * | 2019-11-25 | 2020-05-01 | 大唐半导体科技有限公司 | 一种fpga平台ip原型快速验证方法及系统 |
CN212112481U (zh) * | 2020-06-03 | 2020-12-08 | 成都卓源网络科技有限公司 | 一种原型验证平台的电路结构 |
CN112306924A (zh) * | 2020-11-26 | 2021-02-02 | 山东云海国创云计算装备产业创新中心有限公司 | 一种数据交互方法、装置、系统及可读存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113095016A (zh) * | 2021-06-09 | 2021-07-09 | 苏州浪潮智能科技有限公司 | 构建fpga原型验证平台的方法、装置、设备和介质 |
WO2022257339A1 (zh) * | 2021-06-09 | 2022-12-15 | 苏州浪潮智能科技有限公司 | 构建fpga原型验证平台的方法、装置、设备和介质 |
CN114896919A (zh) * | 2022-05-07 | 2022-08-12 | 常超 | 一种基于fpga的集成电路原型验证系统及方法 |
CN114896919B (zh) * | 2022-05-07 | 2023-06-09 | 常超 | 一种基于fpga的集成电路原型验证系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112906328B (zh) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gupta et al. | Program implementation schemes for hardware-software systems | |
JP4014080B2 (ja) | デジタル回路の設計装置および設計方法、並びに、プログラムおよび格納媒体 | |
US20050268268A1 (en) | Methods and systems for structured ASIC electronic design automation | |
JPH10116302A (ja) | 集積回路の設計方法及びそれによって設計された集積回路 | |
CN112906328A (zh) | Fpga原型验证系统生成方法及系统、fpga原型验证方法及系统 | |
Bohnenstiehl et al. | Kilocore: A fine-grained 1,000-processor array for task-parallel applications | |
Wang et al. | A comprehensive framework for synthesizing stencil algorithms on FPGAs using OpenCL model | |
KR102448018B1 (ko) | 메모리를 테스트하는 방법, 장치, 전자 기기, 저장 매체 및 프로그램 | |
US10586004B2 (en) | Method and apparatus for utilizing estimations for register retiming in a design compilation flow | |
Kahle et al. | 2.1 Summit and Sierra: designing AI/HPC supercomputers | |
US20060236300A1 (en) | Automatically boosting the software content of system LSI designs | |
US20230120227A1 (en) | Method and apparatus having a scalable architecture for neural networks | |
CN114357916B (zh) | 一种芯片fpga原型验证方法及系统 | |
Liang et al. | FlexCL: A model of performance and power for OpenCL workloads on FPGAs | |
Nicolescu et al. | Validation in a component-based design flow for multicore SoCs | |
US7319947B1 (en) | Method and apparatus for performing distributed simulation utilizing a simulation backplane | |
US8161502B2 (en) | Method and apparatus for implementing a task-based interface in a logic verification system | |
Alon et al. | Open-source EDA tools and IP, a view from the trenches | |
JP5920842B2 (ja) | シミュレーション装置、シミュレーション方法、およびプログラム | |
Yao et al. | Fast search and efficient placement algorithm for reconfigurable tasks on modern heterogeneous fpgas | |
Saito et al. | A floorplan method for asynchronous circuits with bundled-data implementation on FPGAs | |
US7006962B1 (en) | Distributed delay prediction of multi-million gate deep sub-micron ASIC designs | |
Syafalni et al. | Assertion-based verification of industrial WLAN system | |
JP2006065457A (ja) | インタフェース回路生成装置およびインタフェース回路 | |
Shetty | Enabling the Generation of Behavioral System-on Chip (SoC) |
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 |