CN107741846A - Fpga工程过程管理优化设计方法、系统及存储介质 - Google Patents

Fpga工程过程管理优化设计方法、系统及存储介质 Download PDF

Info

Publication number
CN107741846A
CN107741846A CN201710866248.XA CN201710866248A CN107741846A CN 107741846 A CN107741846 A CN 107741846A CN 201710866248 A CN201710866248 A CN 201710866248A CN 107741846 A CN107741846 A CN 107741846A
Authority
CN
China
Prior art keywords
engineering
file
fpga
tcl
files
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
Application number
CN201710866248.XA
Other languages
English (en)
Other versions
CN107741846B (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 Academy of Aerospace Technology
Original Assignee
Shenzhen Academy of Aerospace Technology
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 Academy of Aerospace Technology filed Critical Shenzhen Academy of Aerospace Technology
Priority to CN201710866248.XA priority Critical patent/CN107741846B/zh
Publication of CN107741846A publication Critical patent/CN107741846A/zh
Application granted granted Critical
Publication of CN107741846B publication Critical patent/CN107741846B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于Eclipse CDT的FPGA工程过程管理优化设计方法、系统及存储介质,在Eclipse CDT提供的基础扩展点上针对FPGA工程编写插件,通过检索工程目录,自动生成编译FPGA bit文件的tcl脚本,并以命令行的方式调用Vivado的相关功能,完成bit文件的生成。实现了FPGA工程的建立、编译和烧写功能。

Description

FPGA工程过程管理优化设计方法、系统及存储介质
技术领域
本发明涉及嵌入式软件集成开发技术领域,尤其涉及一种基于Eclipse CDT的FPGA工程过程管理优化设计方法、系统及存储介质。
背景技术
FPGA即现场可编程门阵列,它主要使用硬件描述语言(Verilog或VHDL)来完成电路设计。在使用Xilinx公司的Vavido软件实现相关的操作的过程中发现,使用Vivado图形化界面进行FPGA开发,需要进行繁琐的配置,过程复杂,容易出错且对新手不友好。同时,如果已有外部硬件描述文件,无法方便快捷的生成bit文件。目前,尚未有一款良好的开源项目能够支持FPGA的编译工作。
发明内容
本发明的主要目的在于提供一种基于Eclipse CDT的FPGA工程过程管理优化设计方法、系统及存储介质,在Vavido的基础上实现FPGA工程的建立、编译和烧写功能,方便准确节省工作时间,提高效率。
为实现上述目的,本发明提供的一种基于Eclipse CDT的FPGA工程过程管理优化设计方法,包括以下步骤:
S1:建立FPGA工程;
S2:设计实现一个生成FPGA bit文件的生成功能按钮;
S3:在plugin.xml中配置该按钮的action信息,重写按钮的点击事件,在所述点击事件中触发tcl脚本的生成以及bit文件的生成;
S4:设计tcl标准模板,遍历工程目录,根据遍历找到的文件以及标准模板进行填充,采用模板填充技术,自动生成tcl脚本;
S5:若执行tcl脚本出现错误,则将报错信息展示给用户,由用户根据报错信息,修改工程文件或者修改tcl脚本;
S6:根据此tcl脚本文件,执行“vivado-mode batch-source build.tcl”,生成bit文件;
S7:对FPGA工程类型进行判断;
S8:在执行tcl脚本的最后步骤完成之后执行一次刷新工作空间的操作,以使bit文件显示在Eclipse工程目录下。
其中,在S1中建立FPGA工程的具体步骤如下:
(1)根据用户选择的产品名,从已集成的硬件配置数据中获取该硬件开发板的FPGA芯片配置信息,调用ResourcesPlugin.getWorkspace().getRoot().getProject(projectName)函数新建工程对象project;
(2)通过ResourcesPlugin.getWorkspace()函数获取待创建工程所在的工作区间为workpace;
(3)通过workspace.newProjectDescription(projectName)函数新建待创建工程的描述信息description,参数为工程名;
(4)通过对description的设置,具体通过description.setLocation(projectLocation)设置工程路径,参数为创建后工程所在的绝对路径;
(5)通过调用函数project.create(description,null)创建出工程,判断该工程对象是否打开,如果没有打开,则通过project.open(monitor)打开该工程;
(6)创建FPAG所需的文件夹,并在对应的文件夹下添入相应的源代码文件;
(7)保存工程配置信息。
其中,所述文件夹包括verilog、xdc、bit、buildTcl、edif、xci文件夹。
其中,在S4中所述的tcl脚本生成步骤包括:
(1)采用深度优先搜索算法遍历工程的工程目录;
(2)遍历到文件时,根据文件的后缀名,判断文件的类型,填充至模板的相应位置;
(3)文件遍历完成后,根据该FPGA工程创建时所选择的芯片种类,设置综合设计中的相关综合参数;之后填充优化设计、布局、布线指令,在tcl脚本的最后加上bit文件的指令。
其中,所述遍历到文件时,根据文件的后缀名,判断文件的类型,填充至模板的相应位置的步骤中包括:
read_vhdl–library是添加vhdl库文件;read_vhdl是添加vhdl文件;read_verilog是添加verilog文件;read_xdc是添加xdc文件;read_edif是添加网表文件;read_ip是添加xci IP文件。
其中,在S6中使用java的Process类来执行tcl脚本,具体步骤包括:
(1)通过ProcessBuilder()函数新建一个builder对象,参数为要执行的第三方可执行程序的绝对路径;
(2)通过builder.start()执行该第三方程序,获得一个Process进程对象process,process即为打开该第三方程序后的进程;
(3)通过process.getOutputStream()获得该进程的输入流,通过该输入流执行相应的指令;
(4)使用WorkspaceJob创建一个新的线程,用来监听process进程的输出流;
(5)当监听线程开始执行之后,监听第三方可执行程序的输出流;
(6)当标准输出流和错误输出流都为空时,关闭这两个输出流,同时刷新工程所在的工作区间。
其中,所述监听第三方可执行程序的输出流的步骤中包括:使用一个while循环,循环的终止条件为:标准输出流和错误输出流均为空。
其中,所述方法还包括:
重写所述按钮的点击事件,具体为重写run()函数,包括:
(1)检索工程目录,如果已有bit文件,提示用户是否重新生成;若重新生成则执行第(2)步操作;
(2)检索工程目录,如果已有生成bit文件的tcl脚本,则执行“vivado-modebatch-source build.tcl”,根据此脚本生成bit文件;如果没有tcl脚本,则递归遍历整个工程,根据工程所包含的文件,自动生成tcl脚本并执行。
本发明还提出一种基于Eclipse CDT的FPGA工程过程管理优化设计系统,其特征在于,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的方法的步骤。
本发明还提出一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。
与现有技术相比,本发明的有益效果是:(1)免去了繁琐的图形化配置;(2)避免了当文件被外部硬件扫描时,无法生成bit文件的问题;(3)后台采用tcl交互式命令行的模式启动Vivado,调用Vivado的相关功能,增加了可靠性和安全性;(4)实现了FPGA工程的建立、编译和烧写功能的一步式操作,方便准确节省大量的工作时间,提高了效率。
附图说明
图1是本发明基于Eclipse CDT的FPGA工程过程管理优化设计方法的流程示意图;
图2是本发明FPGA工程建立函数流程图;
图3是本发明tcl脚本及bit文件生成函数流程图;
图4是本发明tcl脚本生成函数流程图;
图5是本发明执行tcl脚本函数流程图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
由于现有技术中,尚未有一款良好的开源项目能够支持FPGA的编译工作。故本发明在Vavido的基础上进行研究,研究其实现机制。
本发明考虑到,Vivado软件的核心是一个脚本解释器,所有操作都有对应的TCL脚本可以执行,GUI界面也是将各种脚本命令封装为了图形化界面。对此,本发明研究了Vivado中关于FPGA部分的TCL脚本,并对其进行了抽取集成。而Eclipse作为一款良好的开源框架,其提供了大量的扩展节点供开发者集成自定义的功能。故本发明FPGA部分的功能就是在Eclipse CDT的提供的扩展点基础上对Xilinx公司的Vivado设计工具进行了集成。
在本发明中,后台采用tcl交互式命令行的模式启动Vivado,调用Vivado的相关功能,即调用java提供的exe()函数,在cmd命令行中执行“vivado–mode tcl tcl_path”指令。tcl_path为该指令需要的参数,为编译bit文件所需的tcl脚本的绝对路径。
在FPGA的项目开发中,如果使用Xilinx公司的Vivado软件直接进行FPGA开发,则需要进行过程繁琐的图形化配置,容易出错且不方便新手使用。为了解决这一问题,本发明详细研究了Vivado软件中有关FPGA工程编译部分的实现原理,并在Eclipse CDT提供的基础扩展点上针对FPGA工程编写插件,通过检索工程目录,自动生成编译FPGA bit文件的tcl脚本,并以命令行的方式调用Vivado的相关功能,完成bit文件的生成。实现了FPGA工程的建立、编译和烧写功能。
具体地,如图1所示,本发明提出一种基于Eclipse CDT的FPGA工程过程管理优化设计方法,具体步骤如下:
S1:建立FPGA工程;
S2:设计实现一个生成FPGA bit文件的生成功能按钮;
S3:在plugin.xml中配置该按钮的action信息,重写按钮的点击事件,在事件中触发tcl脚本的生成以及bit文件的生成;
S4:设计tcl标准模板,遍历工程目录,根据遍历找到的文件以及标准模板进行填充,采用模板填充技术,自动生成tcl脚本;
S5:若执行tcl脚本出现错误,则将报错信息展示给用户。用户可以根据报错信息,修改自己的工程文件,也可直接修改tcl脚本;
S6:根据此tcl脚本文件,执行“vivado-mode batch-source build.tcl”,生成bit文件;
S7:截至S6所述步骤均对FPGA工程有效,所以需对工程类型进行判断,这部分的判断比较简单,因为本集成开发环境中除了FPGA的工程类型是自定义的新的工程类型,其他工程类型都是基于C/C++工程或者java工程的,所以只需要根据工程类型即可判断是否为FPGA工程;
S8:在执行tcl脚本的最后步骤完成之后要执行一次刷新工作空间的操作,如果不刷新则bit文件不会显示在Eclipse工程目录下。
其中,如图2所示,图2是本发明FPGA工程建立函数流程图。
在S1中建立FPGA工程的具体步骤如下:
(1)根据用户选择的产品名,从已集成的硬件配置数据中获取该硬件开发板的FPGA芯片配置信息。调用ResourcesPlugin.getWorkspace().getRoot().getProject(projectName)函数新建工程对象project。
(2)通过ResourcesPlugin.getWorkspace()函数获取待创建工程所在的工作区间为workpace。
(3)通过workspace.newProjectDescription(projectName)函数新建待创建工程的描述信息description,参数为工程名。
(4)通过对description的设置,主要通过description.setLocation(projectLocation)设置工程路径,参数为创建后工程所在的绝对路径。
(5)通过调用函数project.create(description,null);创建出工程。判断该工程对象是否打开,如果没有打开,则通过project.open(monitor)打开该工程。
(6)创建FPAG所需的文件夹,包括verilog、xdc、bit、buildTcl、edif、xci等文件夹并在对应的文件夹下添入相应的源代码文件。
(7)保存工程配置信息。
如图3及图4所示,图3是本发明tcl脚本及bit文件生成函数流程图;图4是本发明tcl脚本生成函数流程图。
在S4中所述的tcl脚本生成详细步骤如下:
(1)采用深度优先搜索算法遍历工程的工程目录。
(2)遍历到文件时,根据文件的后缀名,判断文件的类型,填充至模板的相应位置。read_vhdl–library是添加vhdl库文件;read_vhdl是添加vhdl文件;read_verilog是添加verilog文件;read_xdc是添加xdc文件;read_edif是添加网表文件;read_ip是添加xci IP文件。这些指令后面接的参数都是文件所在的绝对路径。而还有一种glob指令是添加指定目录下的所有指定后缀名的文件。
(3)文件遍历完成后,根据该FPGA工程创建时所选择的芯片种类,设置综合设计中的相关综合参数。之后填充优化设计、布局、布线等指令。在tcl脚本的最后加上bit文件的指令。
如图5所示,图5是本发明执行tcl脚本函数流程图。
在S6中使用java的Process类来执行tcl脚本,详细步骤如下:
(1)通过ProcessBuilder()函数新建一个builder对象,参数为要执行的第三方可执行程序的绝对路径。
(2)通过builder.start()执行该第三方程序,获得一个Process进程对象process,process即为打开该第三方程序后的进程。
(3)通过process.getOutputStream()获得该进程的输入流,通过该输入流执行相应的指令。具体的代码如下:
new BufferedWriter(new OutputStreamWriter(process.getOutputStream()));通过这行代码初始化了一个BufferedWriter对象br。之后通过执行函数br.write(cmd),参数为要执行的程序指令,即可通过该输入流向第三方可执行程序发送指令。
(4)使用WorkspaceJob创建一个新的线程,用来监听process进程的输出流。
(5)当监听线程开始执行之后,会监听第三方可执行程序的输出流。这里使用了一个while循环,循环的终止条件就是标准输出流和错误输出流均为空。
(6)当标准输出流和错误输出流都为空时,关闭这两个输出流,同时刷新工程所在的工作区间。
进一步地,在S3所述的按钮点击事件,具体为重写run()函数,所做的业务处理如下:
(1)检索工程目录,如果已有bit文件,提示用户是否重新生成。重新生成则执行第(2)步操作。
(2)检索工程目录,如果已有生成bit文件的tcl脚本,则执行“vivado-modebatch-source build.tcl”,根据此脚本生成bit文件。如果没有tcl脚本,则递归遍历整个工程,根据工程所包含的文件,自动生成tcl脚本并执行。
与现有技术相比,本发明的有益效果是:(1)免去了繁琐的图形化配置;(2)避免了当文件被外部硬件扫描时,无法生成bit文件的问题;(3)后台采用tcl交互式命令行的模式启动Vivado,调用Vivado的相关功能,增加了可靠性和安全性;(4)实现了FPGA工程的建立、编译和烧写功能的一步式操作,方便准确节省大量的工作时间,提高了效率。
下面对本发明方案进行详细阐述:
在本发明中,BIT文件生成需要tcl脚本,tcl的脚本生成的具体步骤为,采用深度优先搜索算法遍历工程的工程目录。遍历到文件时,根据文件的后缀名,判断文件的类型,填充至模板的相应位置。read_vhdl–library是添加vhdl库文件;read_vhdl是添加vhdl文件;read_verilog是添加verilog文件;read_xdc是添加xdc文件;read_edif是添加网表文件;read_ip是添加xci IP文件。这些指令后面接的参数都是文件所在的绝对路径。而还有一种glob指令是添加指定目录下的所有指定后缀名的文件。文件遍历完成后,根据该FPGA工程创建时所选择的芯片种类,设置综合设计中的相关综合参数。之后填充优化设计、布局、布线等指令。在tcl脚本的最后加上bit文件的指令。TCL脚本生成之后需要利用java的Process类来执行脚本,详细步骤是通过ProcessBuilder()函数新建一个builder对象,参数为要执行的第三方可执行程序的绝对路径,通过builder.start()执行该第三方程序,获得一个Process进程对象process,process即为打开该第三方程序后的进程;通过process.getOutputStream()获得该进程的输入流,通过该输入流执行相应的指令,通过代码初始化了一个BufferedWriter对象br,之后通过执行函数br.write(cmd),参数为要执行的程序指令,即可通过该输入流向第三方可执行程序发送指令。使用WorkspaceJob创建一个新的线程,用来监听process进程的输出流。当监听线程开始执行之后,会监听第三方可执行程序的输出流。这里使用了一个while循环,循环的终止条件就是标准输出流和错误输出流均为空,当标准输出流和错误输出流都为空时,关闭这两个输出流,同时刷新工程所在的工作区间。刷新工程所在的工作区间的原因在于,在调用第三方可执行程序时,有时会产生一个文件结果,例如FPGA工程编译完成后会有一个bit文件。如果不执行刷新操作,则bit文件不会直接显示在Eclipse工程目录下,需要用户手动刷新,所以为了用户友好性,这里在每次调用完第三方可执行程序后都会自动刷新一下工程工作区间。
此外,本发明还提出一种基于Eclipse CDT的FPGA工程过程管理优化设计系统,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的方法的步骤。
本实施例的具体原理,请参照上述实施例,在此不再赘述。
此外,本发明还提出一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。
本实施例的具体原理,请参照上述实施例,在此不再赘述。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,包括以下步骤:
S1:建立FPGA工程;
S2:设计实现一个生成FPGA bit文件的生成功能按钮;
S3:在plugin.xml中配置该按钮的action信息,重写按钮的点击事件,在所述点击事件中触发tcl脚本的生成以及bit文件的生成;
S4:设计tcl标准模板,遍历工程目录,根据遍历找到的文件以及标准模板进行填充,采用模板填充技术,自动生成tcl脚本;
S5:若执行tcl脚本出现错误,则将报错信息展示给用户,由用户根据报错信息,修改工程文件或者修改tcl脚本;
S6:根据此tcl脚本文件,执行“vivado-mode batch-source build.tcl”,生成bit文件;
S7:对FPGA工程类型进行判断;
S8:在执行tcl脚本的最后步骤完成之后执行一次刷新工作空间的操作,以使bit文件显示在Eclipse工程目录下。
2.根据权利要求1所述的基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,在S1中建立FPGA工程的具体步骤如下:
(1)根据用户选择的产品名,从已集成的硬件配置数据中获取该硬件开发板的FPGA芯片配置信息,调用ResourcesPlugin.getWorkspace().getRoot().getProject(projectName)函数新建工程对象project;
(2)通过ResourcesPlugin.getWorkspace()函数获取待创建工程所在的工作区间为workpace;
(3)通过workspace.newProjectDescription(projectName)函数新建待创建工程的描述信息description,参数为工程名;
(4)通过对description的设置,具体通过description.setLocation(projectLocation)设置工程路径,参数为创建后工程所在的绝对路径;
(5)通过调用函数project.create(description,null)创建出工程,判断该工程对象是否打开,如果没有打开,则通过project.open(monitor)打开该工程;
(6)创建FPAG所需的文件夹,并在对应的文件夹下添入相应的源代码文件;
(7)保存工程配置信息。
3.根据权利要求2所述的基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,所述文件夹包括verilog、xdc、bit、buildTcl、edif、xci文件夹。
4.根据权利要求1所述的基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,在S4中所述的tcl脚本生成步骤包括:
(1)采用深度优先搜索算法遍历工程的工程目录;
(2)遍历到文件时,根据文件的后缀名,判断文件的类型,填充至模板的相应位置;
(3)文件遍历完成后,根据该FPGA工程创建时所选择的芯片种类,设置综合设计中的相关综合参数;之后填充优化设计、布局、布线指令,在tcl脚本的最后加上bit文件的指令。
5.根据权利要求4所述的基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,所述遍历到文件时,根据文件的后缀名,判断文件的类型,填充至模板的相应位置的步骤中包括:
read_vhdl–library是添加vhdl库文件;read_vhdl是添加vhdl文件;read_verilog是添加verilog文件;read_xdc是添加xdc文件;read_edif是添加网表文件;read_ip是添加xci IP文件。
6.根据权利要求1所述的基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,在S6中使用java的Process类来执行tcl脚本,具体步骤包括:
(1)通过ProcessBuilder()函数新建一个builder对象,参数为要执行的第三方可执行程序的绝对路径;
(2)通过builder.start()执行该第三方程序,获得一个Process进程对象process,process即为打开该第三方程序后的进程;
(3)通过process.getOutputStream()获得该进程的输入流,通过该输入流执行相应的指令;
(4)使用WorkspaceJob创建一个新的线程,用来监听process进程的输出流;
(5)当监听线程开始执行之后,监听第三方可执行程序的输出流;
(6)当标准输出流和错误输出流都为空时,关闭这两个输出流,同时刷新工程所在的工作区间。
7.根据权利要求6所述的基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,所述监听第三方可执行程序的输出流的步骤中包括:使用一个while循环,循环的终止条件为:标准输出流和错误输出流均为空。
8.根据权利要求4、5或6所述的基于Eclipse CDT的FPGA工程过程管理优化设计方法,其特征在于,所述方法还包括:
重写所述按钮的点击事件,具体为重写run()函数,包括:
(1)检索工程目录,如果已有bit文件,提示用户是否重新生成;若重新生成则执行第(2)步操作;
(2)检索工程目录,如果已有生成bit文件的tcl脚本,则执行“vivado-mode batch-source build.tcl”,根据此脚本生成bit文件;如果没有tcl脚本,则递归遍历整个工程,根据工程所包含的文件,自动生成tcl脚本并执行。
9.一种基于Eclipse CDT的FPGA工程过程管理优化设计系统,其特征在于,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-8中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-8中任一项所述的方法的步骤。
CN201710866248.XA 2017-09-22 2017-09-22 Fpga工程过程管理优化设计方法、系统及存储介质 Active CN107741846B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710866248.XA CN107741846B (zh) 2017-09-22 2017-09-22 Fpga工程过程管理优化设计方法、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710866248.XA CN107741846B (zh) 2017-09-22 2017-09-22 Fpga工程过程管理优化设计方法、系统及存储介质

Publications (2)

Publication Number Publication Date
CN107741846A true CN107741846A (zh) 2018-02-27
CN107741846B CN107741846B (zh) 2020-10-02

Family

ID=61236139

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710866248.XA Active CN107741846B (zh) 2017-09-22 2017-09-22 Fpga工程过程管理优化设计方法、系统及存储介质

Country Status (1)

Country Link
CN (1) CN107741846B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108647010A (zh) * 2018-04-27 2018-10-12 武汉斗鱼网络科技有限公司 一种项目工程初始化的方法、终端设备及存储介质
CN109657349A (zh) * 2018-12-18 2019-04-19 深圳忆联信息系统有限公司 Soc芯片现场可编程逻辑阵列原型综合的方法及其系统
CN111123084A (zh) * 2019-12-11 2020-05-08 中国电子科技集团公司第二十研究所 一种基于tcl语言的数字电路快速测试方法
CN111159965A (zh) * 2019-12-30 2020-05-15 广州思林杰网络科技有限公司 一种Xilinx FPGA设计系统、实现方法及存储介质
CN111428430A (zh) * 2020-03-24 2020-07-17 广州视源电子科技股份有限公司 电路设计中的电路器件信息获取方法、装置、设备及介质
CN113127419A (zh) * 2019-12-30 2021-07-16 腾讯科技(深圳)有限公司 文件检出方法、装置、计算机设备及存储介质
CN113176883A (zh) * 2021-04-13 2021-07-27 武汉华中数控股份有限公司 一种可自动生成烧写记录的fpga烧写方法和系统
CN113821192A (zh) * 2020-06-19 2021-12-21 南京航空航天大学 基于可视化界面的动态部分重构系统自动化设计方法
CN116128448A (zh) * 2023-01-09 2023-05-16 苏州异格技术有限公司 Fpga工程项目的设计数据处理方法、装置、电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101122866A (zh) * 2007-09-12 2008-02-13 中兴通讯股份有限公司 集成开发环境中的程序代码编译方法
US20090276770A1 (en) * 2008-04-30 2009-11-05 International Business Machines Corporation Systems, methods and computer program products for automating packaging and provisioning of j2ee web modules to eclipse-based rich clients
US8260643B2 (en) * 2007-08-30 2012-09-04 International Business Machines Corporation Generalized parametric optimization architecture and framework

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8260643B2 (en) * 2007-08-30 2012-09-04 International Business Machines Corporation Generalized parametric optimization architecture and framework
CN101122866A (zh) * 2007-09-12 2008-02-13 中兴通讯股份有限公司 集成开发环境中的程序代码编译方法
US20090276770A1 (en) * 2008-04-30 2009-11-05 International Business Machines Corporation Systems, methods and computer program products for automating packaging and provisioning of j2ee web modules to eclipse-based rich clients

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AMAZING ICECREAM: "Tcl在Vivado中的使用", 《HTTP://BLOG.CHINAAET.COM/LUOZHONGPIN1989/P/36014》 *
XIXIHETAO: "Workspace Resource框架专题(2)workspace 框架API", 《HTTP://BLOG.SINA.COM.CN/S/BLOG_ABD468210101ERKN.HTML》 *
海风~: "eclipse 插件编写(一)", 《HTTPS://WWW.CNBLOGS.COM/HAIFENG1990/P/5192804.HTML》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108647010A (zh) * 2018-04-27 2018-10-12 武汉斗鱼网络科技有限公司 一种项目工程初始化的方法、终端设备及存储介质
CN109657349A (zh) * 2018-12-18 2019-04-19 深圳忆联信息系统有限公司 Soc芯片现场可编程逻辑阵列原型综合的方法及其系统
CN111123084A (zh) * 2019-12-11 2020-05-08 中国电子科技集团公司第二十研究所 一种基于tcl语言的数字电路快速测试方法
CN111123084B (zh) * 2019-12-11 2022-03-01 中国电子科技集团公司第二十研究所 一种基于tcl语言的数字电路快速测试方法
CN113127419B (zh) * 2019-12-30 2023-09-22 腾讯科技(深圳)有限公司 文件检出方法、装置、计算机设备及存储介质
CN111159965A (zh) * 2019-12-30 2020-05-15 广州思林杰网络科技有限公司 一种Xilinx FPGA设计系统、实现方法及存储介质
CN113127419A (zh) * 2019-12-30 2021-07-16 腾讯科技(深圳)有限公司 文件检出方法、装置、计算机设备及存储介质
CN111428430A (zh) * 2020-03-24 2020-07-17 广州视源电子科技股份有限公司 电路设计中的电路器件信息获取方法、装置、设备及介质
CN111428430B (zh) * 2020-03-24 2023-11-03 广州视源电子科技股份有限公司 电路设计中的电路器件信息获取方法、装置、设备及介质
CN113821192A (zh) * 2020-06-19 2021-12-21 南京航空航天大学 基于可视化界面的动态部分重构系统自动化设计方法
CN113176883A (zh) * 2021-04-13 2021-07-27 武汉华中数控股份有限公司 一种可自动生成烧写记录的fpga烧写方法和系统
CN116128448B (zh) * 2023-01-09 2023-10-17 苏州异格技术有限公司 Fpga工程项目的设计数据处理方法、装置、电子设备
CN116128448A (zh) * 2023-01-09 2023-05-16 苏州异格技术有限公司 Fpga工程项目的设计数据处理方法、装置、电子设备

Also Published As

Publication number Publication date
CN107741846B (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
CN107741846A (zh) Fpga工程过程管理优化设计方法、系统及存储介质
CN107562626B (zh) 一种封装Selenium和Sikuli实现Web自动化测试的方法
Memon et al. Using a goal-driven approach to generate test cases for GUIs
US9183360B1 (en) Obfuscation of automatically generated code
US9946514B1 (en) Systems and methods for generating functional application designs
US7979841B2 (en) Programmatically determining calling information of a graphical program
US9081924B2 (en) Method and apparatus for transaction recording and visualization
US11635974B2 (en) Providing a different configuration of added functionality for each of the stages of predeployment, deployment, and post deployment using a layer of abstraction
MacDonald et al. Pro ASP. NET 4 in VB 2010
CN107291438A (zh) 自动化脚本的生成方法、装置及电子设备
Palanque et al. Design of user-driven interfaces using petri nets and objects
Shah et al. Reverse-engineering user interfaces to facilitateporting to and across mobile devices and platforms
Stocco et al. PESTO: A tool for migrating DOM-based to visual web tests
Vishal et al. Mobile application development research based on xamarin platform
US20090132994A1 (en) Automation tool and method for generating test code
Bastide et al. Integrating rendering specifications into a formalism for the design of interactive systems
CN117215556A (zh) 模块化的页面快速构建方法、系统、设备及介质
Lazăr et al. Tool support for fUML models
Tanida et al. Automated system testing of dynamic web applications
Kim et al. Design of code template for automatic code generation of heterogeneous smartphone application
Bar-Sinai et al. Provengo: A tool suite for scenario driven model-based testing
Nguyen et al. Automated functionality testing through GUIs
US10235868B2 (en) Embedded shared logical instrument
Caffiau et al. Generating interactive applications from task models: A hard challenge
Song et al. An e-Learning system based on EGL and Web 2.0

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