CN103164228B - 一种现场可编程门阵列程序的生成方法及装置 - Google Patents
一种现场可编程门阵列程序的生成方法及装置 Download PDFInfo
- Publication number
- CN103164228B CN103164228B CN201310109485.3A CN201310109485A CN103164228B CN 103164228 B CN103164228 B CN 103164228B CN 201310109485 A CN201310109485 A CN 201310109485A CN 103164228 B CN103164228 B CN 103164228B
- Authority
- CN
- China
- Prior art keywords
- functional module
- file
- information
- fpga
- interface logic
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000015572 biosynthetic process Effects 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 32
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Landscapes
- Logic Circuits (AREA)
Abstract
本发明实施例提供了一种现场可编程门阵列程序的生成方法及装置,该方法包括获得构建的包括封装有功能程序代码的功能模块的系统的信息;根据所述各个功能模块之间的连接关系以及所述各个功能模块的标识,获得模型声明文件和顶层文件;根据所述模型声明文件以及所述FPGA的资源信息获得接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息;将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流。采用本发明实施例提供的方法和装置可以加快程序代码的生成速度,使开发效率提高。
Description
技术领域
本发明涉及电子技术领域,更具体的说,是涉及一种现场可编程门阵列程序的生成方法及装置。
背景技术
随着科学技术的发展,现场可编程门阵列(FPGA,Field-ProgrammableGateArray)得到了越来越广泛的应用。
现有技术中现场可编程门阵列(FPGA,Field-ProgrammableGateArray)中的程序的生成过程包括:专门的程序员撰写出接口逻辑文件以及模型声明文件,再将接口逻辑文件与模型声明文件进行综合、编译生成比特流,最后,将比特流下载至FPGA中。
综上,在生成FPGA的程序代码时,需要专门的程序员人为撰写具有接口逻辑文件以及模型声明文件,所以导致程序代码的开发时间较长。
发明内容
有鉴于此,本发明提供了一种现场可编程门阵列程序的生成方法及装置,以克服现有技术中程序代码的开发时间较长的问题。
为实现上述目的,本发明提供如下技术方案:
一种现场可编程门阵列FPGA程序的生成方法,包括:
获得构建的包括封装有功能程序代码的功能模块的系统的信息,所述系统的信息包括各个功能模块之间的连接关系和所述各个功能模块的标识;
根据所述各个功能模块之间的连接关系以及所述各个功能模块的标识,获得模型声明文件和顶层文件,所述模型声明文件包括所述各个功能模块之间的驱动关系和与所述各个功能模块的标识分别对应的功能描述信息,所述顶层文件包括所述各个功能模块与所述FPGA的外接设备之间的输入输出接口信息;
根据所述模型声明文件以及所述FPGA的资源信息获得接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息;
将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流。
其中,所述获得构建的包括封装有功能程序代码的功能模块的系统的信息包括:
获得所述系统的标识;
根据所述系统的标识获得所述系统的信息。
其中,所述各个功能模块之间的驱动关系包括所述各个功能模块之间的内部接口信息。
优选地,还包括:
将所述比特流下载至所述FPGA中。
其中,所述将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流包括:将所述模型声明文件转换成第一网表文件;
将所述接口逻辑文件转换成第二网表文件;
将所述顶层文件、所述第一网表文件以及所述第二网表文件进行预设操作生成比特流。
一种现场可编程门阵列FPGA程序的生成装置,包括:
第一获得模块,用于获得构建的包括封装有功能程序代码的功能模块的系统的信息,所述系统的信息包括各个功能模块之间的连接关系和所述各个功能模块的标识;
第二获得模块,用于根据所述各个功能模块之间的连接关系以及所述各个功能模块的标识,获得模型声明文件和顶层文件,所述模型声明文件包括所述各个功能模块之间的驱动关系和与所述各个功能模块的标识分别对应的功能描述信息,所述顶层文件包括所述各个功能模块与所述FPGA的外接设备之间的输入输出接口信息;
第三获得模块,用于根据所述模型声明文件以及所述FPGA的资源信息获得接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息;
生成模块,用于将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流。
其中所述第一获得模块包括:
第一获得单元,用于获得所述系统的标识;
第二获得单元,用于根据所述系统的标识获得所述系统的信息。
其中,所述各个功能模块之间的驱动关系包括所述各个功能模块之间的内部接口信息。
优选的,还包括:
下载模块,用于将所述比特流下载至所述FPGA中。
其中,所述第三获得模块包括:
第一转换单元,用于将所述模型声明文件转换成第一网表文件;
第二转换单元,用于将所述接口逻辑文件转换成第二网表文件;
生成单元,用于将所述顶层文件、所述第一网表文件以及所述第二网表文件进行预设操作生成比特流。
经由上述的技术方案可知,与现有技术相比,本发明实施例提供了一种现场可编程门阵列FPGA程序的生成方法,获得用户构建的包括封装有功能程序代码的功能模块的系统的信息,或者获得用户选择的已经构建好的包括封装有功能程序代码的功能模块的系统的信息,根据上述系统的信息可以得到包括各个功能模块之间的驱动关系和与所述各个功能模块的标识分别对应的功能描述信息的模型声明文件,以及包括所述各个功能模块与所述FPGA的外接设备之间的输入输出接口信息的顶层文件,根据所述模型声明文件以及所述FPGA的资源信息得到接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息,最后将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行综合、编译、实现、生成比特流,所述比特流为能够直接下载至FPGA中的程序。上述过程中用户无需知道各个功能模块中的功能程序代码,只需要根据各个已有的功能模块的功能构建出一个具有自己所需功能的系统,或者选择一个已经存在的系统,计算机会根据该系统的信息自动生成相应的模型声明文件、顶层文件以及接口逻辑文件,从而加快了程序代码的生成速度,使开发效率提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种现场可编程门阵列FPGA程序的生成方法的流程示意图;
图2为本发明实施例提供的一种现场可编程门阵列FPGA程序的生成方法的另一实施例的流程示意图;
图3为本发明实施例提供的一种FPGA的结构示意图;
图4为本发明实施例现场可编程门阵列FPGA程序的生成方法中获得构建的包括封装有功能程序代码的功能模块的系统的信息的一种实现方式的方法流程图;
图5为本发明实施例现场可编程门阵列FPGA程序的生成方法中将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流的一种实现方法的流程示意图;
图6为本发明实施例提供的一种现场可编程门阵列FPGA程序的生成装置的结构示意图。
具体实施方式
为了引用和清楚起见,下文中使用的技术名词的说明、简写或缩写总结如下:
SRAM:StaticRandomAccessMemory,静态随机存取存储器;
RTL:Register-Transfer-Level,寄存器级描述文件。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅附图1,为本发明实施例提供的一种现场可编程门阵列FPGA程序的生成方法的流程示意图,该方法包括:
步骤S101:获得构建的包括封装有功能程序代码的功能模块的系统的信息。
上述系统的信息包括各个功能模块之间的连接关系和各个功能模块的标识。
上述各个功能模块中每一功能模块中都封装有相应功能的应用程序,用户需要自己根据上述各个功能模块的功能构建出自己所需的系统,或者,用户选择已经构建完毕的系统,利用封装有相应功能程序代码的功能模块构建系统是现有技术,在此不再对此进行一一赘述。
由功能模块组成的系统是通过各个功能模块之间的连线虚拟各个功能模块之间的连接关系,所以可以通过系统中各个功能模块之间的连线获得各个功能模块之间的连接关系。
为了区分各个功能模块,可以为各个功能模块分配唯一标识。
步骤S102:根据上述各个功能模块之间的连接关系以及上述各个功能模块的标识,获得模型声明文件和顶层文件。
模型声明文件包括上述各个功能模块之间的驱动关系和与上述各个功能模块的标识分别对应的功能描述信息。
可以建立功能模块的标识与描述信息的对应关系,通过该对应关系获得功能模块的描述信息。功能描述信息可以是对功能模块的功能的描述。
上述各个功能模块之间的驱动关系可以包括上述各个功能模块之间的接口信息。
顶层文件包括上述各个功能模块与FPGA的外接设备之间的输入输出接口信息。
可以对FPGA所有的输入输出接口进行定义,顶层文件就是对FPGA的输入输出接口的定义文件。
步骤S103:根据模型声明文件以及FPGA的资源信息获得接口逻辑文件。
FPGA的资源信息可以包括FPGA资源文件库中的管脚信息,通过模型声明文件以及FPGA的资源信息就可以得知上述各个功能模块下载至FPGA中时,各个功能模块与FPGA中各个端口和各个管脚的连接关系。
接口逻辑文件包括上述系统中的各个功能模块在FPGA中的连接线路信息。连接线路信息可以包括上述各个功能模块与FPGA的管脚连接信息和上述各个功能模块之间的接口连接信息。
步骤S104:将顶层文件、模型声明文件以及接口逻辑文件进行预设操作生成比特流。
预设操作可以为将顶层文件、模型声明文件以及接口逻辑文件进行综合、编译、实现从而生成比特流,此为现有技术在此不再一一赘述。
本发明实施例提供的方法,获得用户构建的包括封装有功能程序代码的功能模块的系统的信息,或者获得用户选择的已经构建好的包括封装有功能程序代码的功能模块的系统的信息,根据上述系统的信息可以得到包括各个功能模块之间的驱动关系和与所述各个功能模块的标识分别对应的功能描述信息的模型声明文件,以及包括所述各个功能模块与所述FPGA的外接设备之间的输入输出接口信息的顶层文件,根据所述模型声明文件以及所述FPGA的资源信息得到接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息,最后将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行综合、编译、实现、生成比特流,所述比特流为能够直接下载至FPGA中的程序。上述过程中用户无需知道各个功能模块中的功能程序代码,只需要根据各个已有的功能模块的功能构建出一个具有自己所需功能的系统,或者选择一个已经存在的系统,计算机会根据该系统的信息自动生成相应的模型声明文件、顶层文件以及接口逻辑文件,从而加快了程序代码的生成速度,使开发效率提高。
请参阅图2,为本发明实施例提供的一种现场可编程门阵列FPGA程序的生成方法的另一实施例的流程示意图,该方法包括:
步骤S201:获得构建的包括封装有功能程序代码的功能模块的系统的信息。
上述系统的信息包括各个功能模块之间的连接关系和各个功能模块的标识。
步骤S202:根据上述各个功能模块之间的连接关系以及上述各个功能模块的标识,获得模型声明文件和顶层文件。
模型声明文件包括上述各个功能模块之间的驱动关系和与上述各个功能模块的标识分别对应的功能描述信息。
假设本发明实施例将FPGA的硬件接口封装成可视化的simulink模块。Simulink模块是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包。由封装有功能程序代码的功能模块组成的系统中可以包括simulink模块,通过编写的第一模型剖析脚本对系统进行分析,可以分析出系统中各个功能模块的标识以及与功能模块标识对应的功能性描述,并通过系统中的simulink模块得到所有功能模块之间的驱动关系。
通过模型操作脚本将所有功能模块之间的驱动关系以及与功能模块标识对应的功能性描述写入的一个文件中,该文件就是模型声明文件。
在将模型声明文件下载至FPGA,并在FPGA中运行时,可以根据模型声明文件定义各个功能模块之间的接口信息。
模型声明文件可以以结构体的形式存储在FPGA中。
各个功能模块之间的驱动关系包括各个功能模块之间的接口信息,模型声明文件中各个功能模块之间的接口的数量取决于构建的系统中功能模块的标识和数量。
顶层文件包括上述各个功能模块与FPGA的外接设备之间的输入输出接口信息。
请参阅图3,为本发明实施例提供的一种FPGA的结构示意图。
图3中只示出了FPGA的7个输入输出接口:显示接口、内存接口和5个视频接口,FPGA可以通过显示接口与外设LED相连,内存接口可以与外设SRAM相连,5个视频接口分别与外设Link1、Link2、Link3、Link4和Link5相连。
可以利用时钟301实现四种类型时钟:全局时钟、门控时钟、多级逻辑时钟和波动式时钟。多时钟系统包括上述四种时钟类型的任意组合,此为现有技术在此不作一一赘述。
FPGA程序可以控制FPGA外接设备进行相应的操作,例如,控制FPGA程序可以为控制LED5s灭5s亮的第一程序,此时程序员在编写FPGA程序时,需要编写第一程序与FPGA显示接口的对应关系,第一程序在FPGA中的连接线路信息,所以需要获得模型声明文件和顶层文件。因为可以通过模型声明文件获得FPGA程序在FPGA中的连接线路信息(可以将存储有连接线路信息的文件称为接口逻辑文件)。
FPGA中每一与外接设备相连的输入输出接口都需要模型声明文件、顶层文件和接口逻辑文件。
顶层文件是根据FPGA所有输入输出接口定义的,输入输出接口与相应的FPGA程序相对应,例如显示接口与第一程序相对应。FPGA的每个输入输出接口都有一RTL,对于FPGA外设来说RTL为接口,对FPGA内部程序来说RTL为信号接口,顶层文件可以包括RTL。
步骤S203:根据模型声明文件以及FPGA的资源信息获得接口逻辑文件。
接口逻辑文件包括上述系统中的各个功能模块在FPGA中的连接线路信息。连接线路信息可以包括上述各个功能模块与FPGA的管脚连接信息和上述各个功能模块之间的接口连接信息。
根据模型声明文件可以得知各个功能模块之间的驱动关系,通过接口逻辑脚本对FPGA的管脚资源信息与模型声明文件进行分析,可得知当系统对应的程序下载至FPGA中时,FPGA中各个管脚的连接关系,以及FPGA中各个硬件接口之间的连接关系,即各个功能模块在FPGA中的连接线路信息。
FPGA的管脚资源信息可以包括FPGA中硬件接口相关的属性资源文件,例如位宽、方向、对应的信号名称等等,该资源信息可以存储为XLS(MicrosoftExcel工作表)或者TXT。接口逻辑文件对外与FPGA的所有输入输出接口、顶层文件相连,对内与改为“wire”面相连,这些改为“wire”面与模型生成文件相连,接口逻辑文件中没有用到的改为“wire”面以合适的方式赋值高阻或0值等。
步骤S204:将顶层文件、模型声明文件以及接口逻辑文件进行预设操作生成比特流。
预设操作可以为将顶层文件、模型声明文件以及接口逻辑文件进行综合、编译、实现从而生成比特流。
本发明实施例通过网表生成工具对顶层文件进行综合、编译、实现。编写M文件脚本并作为FPGA板卡的编译目标。利用自动代码生成工具,将模型声明文件、接口逻辑文件生成网表文件,调用网表文件中的回调文件,并在适当位置加入定制的M脚本函数,生成新的模型声明文件以及接口逻辑文件,并调用各种综合、实现的命令,生成针对FPGA的比特流。
网表编译的回调M文件:该脚本是自动代码生成工具代码生成自动调用的文件,在里面设置硬件设计工具综合时需要的各种文件,并用M语言调用综合工具和生成流工具。
步骤S205:将上述比特流下载至FPGA中。基于模型的FPGA开发时,将需要处理的信号,从外设接口输入,即信号进入FPGA芯片中进行处理,通过顶层文件,由接口逻辑进入用户自定义的文件中,进行信号处理,把处理后的信号通过的集成的matlab/simulink模块输出给外设输出设备,其整个过程都可在matlab/simulink中进行仿真实现。
上述任一实施例中,获得构建的包括封装有功能程序代码的功能模块的系统的信息的实现方式有很多种,请参阅图4,为本发明实施例现场可编程门阵列FPGA程序的生成方法中获得构建的包括封装有功能程序代码的功能模块的系统的信息的一种实现方式的方法流程图,该方法包括:
步骤S401:获得该系统的标识。
当用户选择已经建立完毕的系统时,为了区别各个系统,可以为各个系统分配一唯一标识。
步骤S402:根据该系统的标识获得该系统的信息。
系统的信息包括组成该系统的各个功能模块之间的连接关系和组成该系统的各个功能模块的标识。
可以建立系统标识与系统的信息的对应关系,可以根据该对应关系获得系统的信息,这样就不需要在对系统中的各个功能模块进行分析了,从而加快了现场可编程门阵列FPGA程序的生成速度。
上述任一实施例中,将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流的实现方法有多种,请参阅图5,为本发明实施例现场可编程门阵列FPGA程序的生成方法中将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流的一种实现方法的流程示意图,该方法包括:
步骤S501:将模型声明文件转换成第一网表文件。
FPGA只能识别网表文件,所需要将模型声明文件转换成第一网表文件。
可以利用现有技术中的代码将模型声明文件转换为第一网表文件。
步骤S502:将接口逻辑文件转换成第二网表文件。
FPGA只能识别网表文件,所需要将接口逻辑文件转换成第二网表文件。
可以利用现有技术中的代码将模型声明文件转换为第二网表文件。
步骤S503:将顶层文件、第一网表文件以及第二网表文件进行预设操作生成比特流。
上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式的装置实现,因此本发明还公开了多种装置,下面给出具体的实施例进行详细说明。
请参阅图6,为本发明实施例提供的一种现场可编程门阵列FPGA程序的生成装置的结构示意图,该装置包括:
第一获得模块601、第二获得模块602、第三获得模块603以及生成模块604,其中:
第一获得模块601,用于获得构建的包括封装有功能程序代码的功能模块的系统的信息。
系统的信息包括各个功能模块之间的连接关系和上述各个功能模块的标识。
第二获得模块602,用于根据上述各个功能模块之间的连接关系以及上述各个功能模块的标识,获得模型声明文件和顶层文件。
上述模型声明文件包括上述各个功能模块之间的驱动关系和与上述各个功能模块的标识分别对应的功能描述信息,上述顶层文件包括上述各个功能模块与上述FPGA的外接设备之间的输入输出接口信息。
各个功能模块之间的驱动关系包括上述各个功能模块之间的内部接口信息。
第三获得模块603,用于根据上述模型声明文件以及上述FPGA的资源信息获得接口逻辑文件。
上述接口逻辑文件包括上述系统中的各个功能模块在上述FPGA中的连接线路信息。
生成模块604,用于将上述顶层文件、上述模型声明文件以及上述接口逻辑文件进行预设操作生成比特流。
本发明实施例提供的装置还可以包括下载模块605,用于将上述比特流下载至上述FPGA中。
发明实施例提供的一种现场可编程门阵列FPGA程序的生成装置,第一获得模块601获得用户构建的包括封装有功能程序代码的功能模块的系统的信息,或者获得用户选择的已经构建好的包括封装有功能程序代码的功能模块的系统的信息,第二获得模块602根据上述系统的信息可以得到包括各个功能模块之间的驱动关系和与所述各个功能模块的标识分别对应的功能描述信息的模型声明文件,以及包括所述各个功能模块与所述FPGA的外接设备之间的输入输出接口信息的顶层文件,第三获得模块603根据所述模型声明文件以及所述FPGA的资源信息得到接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息,最后生成模块604将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行综合、编译、实现、生成比特流,所述比特流为能够直接下载至FPGA中的程序。上述过程中用户无需知道各个功能模块中的功能程序代码,只需要根据各个已有的功能模块的功能构建出一个具有自己所需功能的系统,或者选择一个已经存在的系统,计算机会根据该系统的信息自动生成相应的模型声明文件、顶层文件以及接口逻辑文件,从而加快了程序代码的生成速度,使开发效率提高。
上述实施例中的第一获得模块可以包括:第一获得单元,用于获得上述系统的标识;第二获得单元,用于根据上述系统的标识获得上述系统的信息。
上述实施例中的第三获得模块可以包括:第一转换单元,用于将上述模型声明文件转换成第一网表文件;第二转换单元,用于将上述接口逻辑文件转换成第二网表文件;生成单元,用于将上述顶层文件、上述第一网表文件以及上述第二网表文件进行预设操作生成比特流。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置或系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种现场可编程门阵列FPGA程序的生成方法,其特征在于,包括:
获得构建的包括封装有功能程序代码的功能模块的系统的信息,所述系统的信息包括各个功能模块之间的连接关系和所述各个功能模块的标识;
根据所述各个功能模块之间的连接关系以及所述各个功能模块的标识,获得模型声明文件和顶层文件,所述模型声明文件包括所述各个功能模块之间的驱动关系和与所述各个功能模块的标识分别对应的功能描述信息,所述顶层文件包括所述各个功能模块与所述FPGA的外接设备之间的输入输出接口信息;
根据所述模型声明文件以及所述FPGA的资源信息获得接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息;
将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流。
2.根据权利要求1所述方法,其特征在于,所述获得构建的包括封装有功能程序代码的功能模块的系统的信息包括:
获得所述系统的标识;
根据所述系统的标识获得所述系统的信息。
3.根据权利要求1或2所述方法,其特征在于,所述各个功能模块之间的驱动关系包括所述各个功能模块之间的内部接口信息。
4.根据权利要求1或2所述方法,其特征在于,还包括:
将所述比特流下载至所述FPGA中。
5.根据权利要求1或2所述方法,其特征在于,所述将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流包括:将所述模型声明文件转换成第一网表文件;
将所述接口逻辑文件转换成第二网表文件;
将所述顶层文件、所述第一网表文件以及所述第二网表文件进行预设操作生成比特流。
6.一种现场可编程门阵列FPGA程序的生成装置,其特征在于,包括:
第一获得模块,用于获得构建的包括封装有功能程序代码的功能模块的系统的信息,所述系统的信息包括各个功能模块之间的连接关系和所述各个功能模块的标识;
第二获得模块,用于根据所述各个功能模块之间的连接关系以及所述各个功能模块的标识,获得模型声明文件和顶层文件,所述模型声明文件包括所述各个功能模块之间的驱动关系和与所述各个功能模块的标识分别对应的功能描述信息,所述顶层文件包括所述各个功能模块与所述FPGA的外接设备之间的输入输出接口信息;
第三获得模块,用于根据所述模型声明文件以及所述FPGA的资源信息获得接口逻辑文件,所述接口逻辑文件包括所述系统中的各个功能模块在所述FPGA中的连接线路信息;
生成模块,用于将所述顶层文件、所述模型声明文件以及所述接口逻辑文件进行预设操作生成比特流。
7.根据权利要求6所述装置,其特征在于,所述第一获得模块包括:
第一获得单元,用于获得所述系统的标识;
第二获得单元,用于根据所述系统的标识获得所述系统的信息。
8.根据权利要求6所述装置,其特征在于,所述各个功能模块之间的驱动关系包括所述各个功能模块之间的内部接口信息。
9.根据权利要求6所述装置,其特征在于,还包括:
下载模块,用于将所述比特流下载至所述FPGA中。
10.根据权利要求6所述装置,其特征在于,所述第三获得模块包括:
第一转换单元,用于将所述模型声明文件转换成第一网表文件;
第二转换单元,用于将所述接口逻辑文件转换成第二网表文件;
生成单元,用于将所述顶层文件、所述第一网表文件以及所述第二网表文件进行预设操作生成比特流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310109485.3A CN103164228B (zh) | 2013-03-29 | 2013-03-29 | 一种现场可编程门阵列程序的生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310109485.3A CN103164228B (zh) | 2013-03-29 | 2013-03-29 | 一种现场可编程门阵列程序的生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103164228A CN103164228A (zh) | 2013-06-19 |
CN103164228B true CN103164228B (zh) | 2015-12-23 |
Family
ID=48587349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310109485.3A Active CN103164228B (zh) | 2013-03-29 | 2013-03-29 | 一种现场可编程门阵列程序的生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103164228B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106202685B (zh) * | 2016-07-01 | 2019-10-08 | 合肥海本蓝科技有限公司 | 一种软硬件协同仿真加速器运行环境搭建方法和装置 |
CN106682268B (zh) * | 2016-11-28 | 2020-06-30 | 深圳市紫光同创电子有限公司 | 可编程逻辑器件配置方法及设备 |
EP4007940A1 (de) * | 2019-09-24 | 2022-06-08 | Siemens Aktiengesellschaft | Verfahren zur erzeugung von selbstbeschreibungs-datenmodulen |
CN115185486B (zh) * | 2022-09-13 | 2023-02-17 | 紫光同芯微电子有限公司 | 用于生成asic结构声明的方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101793941A (zh) * | 2009-12-24 | 2010-08-04 | 上海华岭集成电路技术有限责任公司 | Fpga配置文件的生成方法 |
CN101963943A (zh) * | 2010-06-30 | 2011-02-02 | 上海华岭集成电路技术有限责任公司 | 寻找fpga配置文件与clb块配置资源的映射方法 |
CN102779194A (zh) * | 2011-05-10 | 2012-11-14 | 中国科学院微电子研究所 | 一种基于soi的fpga结构的码流生成方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7584345B2 (en) * | 2003-10-30 | 2009-09-01 | International Business Machines Corporation | System for using FPGA technology with a microprocessor for reconfigurable, instruction level hardware acceleration |
-
2013
- 2013-03-29 CN CN201310109485.3A patent/CN103164228B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101793941A (zh) * | 2009-12-24 | 2010-08-04 | 上海华岭集成电路技术有限责任公司 | Fpga配置文件的生成方法 |
CN101963943A (zh) * | 2010-06-30 | 2011-02-02 | 上海华岭集成电路技术有限责任公司 | 寻找fpga配置文件与clb块配置资源的映射方法 |
CN102779194A (zh) * | 2011-05-10 | 2012-11-14 | 中国科学院微电子研究所 | 一种基于soi的fpga结构的码流生成方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103164228A (zh) | 2013-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8046386B2 (en) | Partitioning for model-based design | |
CN102855178B (zh) | 一种单元测试中生成Mock库的方法和装置 | |
CN101231589B (zh) | 用于原位开发嵌入式软件的系统和方法 | |
CN107436762A (zh) | 一种寄存器代码文件生成方法、装置和电子设备 | |
CN103164228B (zh) | 一种现场可编程门阵列程序的生成方法及装置 | |
CN104662514A (zh) | 基于模型关联关系的遗产软件系统的现代化 | |
CN106648587A (zh) | 一种基于注解的Web应用代码生成方法 | |
CN105302685A (zh) | 一种软硬件协同仿真测试方法和装置 | |
CN108090313B (zh) | 一种复杂岩石裂隙模型建模识别方法 | |
CN101645101B (zh) | 一种通用无人飞行器仿真建模方法 | |
WO2016141685A1 (zh) | 一种通信工程图纸生成方法及图纸设计客户端 | |
US20150294055A1 (en) | Systems and methods for increasing debugging visibility of prototyping systems | |
US9652370B2 (en) | Address range decomposition | |
CN105243013A (zh) | 一种软件测试方法与系统 | |
CN112926109B (zh) | 一种复杂嵌入式系统虚拟运行环境可视化建模方法 | |
CN103150445B (zh) | 一种matlab模型变量的剖析方法及装置 | |
CN105183485A (zh) | 一种可视化软硬件协同开发方法 | |
Manev et al. | byteman: A bitstream manipulation framework | |
CN116050312A (zh) | 基于链表树的硬件逻辑设计层次结构信息提取方法及系统 | |
CN108205596B (zh) | 实现核电厂严重事故分析计算程序仿真功能的方法 | |
US20030046649A1 (en) | Model-based logic design | |
US10409624B1 (en) | Data array compaction in an emulation system | |
CN114398282A (zh) | 测试脚本的生成方法、装置、设备及存储介质 | |
CN104765616A (zh) | 一种自动生成io模型的方法及系统 | |
Xiang et al. | Parameterized design and formal verification of multi-ported memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 4 / F, building 1, No.14 Jiuxianqiao Road, Chaoyang District, Beijing 100020 Patentee after: Beijing Jingwei Hirain Technologies Co.,Inc. Address before: 8 / F, block B, No. 11, Anxiang Beili, Chaoyang District, Beijing 100101 Patentee before: Beijing Jingwei HiRain Technologies Co.,Ltd. |