System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() RTL级模块分割方法、装置、存储介质及电子设备制造方法及图纸_技高网

RTL级模块分割方法、装置、存储介质及电子设备制造方法及图纸

技术编号:41239275 阅读:5 留言:0更新日期:2024-05-09 23:52
本申请涉及一种RTL级模块分割方法、装置、存储介质及电子设备,涉及计算机软件技术领域,其中方法包括:获取用户终端中分割客户端输入的待分割RTL级模块对应的工程信息,所述工程信息用于提取所述待分割RTL级模块对应的RTL级代码;基于所述工程信息,从所述用户终端中提取所述待分割RTL级模块对应的RTL级代码;基于所述RTL级代码,对所述待分割RTL级模块进行划分,得到至少一个独立模块;从所述待分割RTL级模块中分割各所述独立模块,并加载至预设的现场可编程门阵列芯片组中的现场可编程门阵列芯片中,所述现场可编程门阵列芯片组包括多个现场可编程门阵列芯片。本申请能够改善对FPGA芯片验证的效果。

【技术实现步骤摘要】

本申请涉及计算机软件,具体涉及一种rtl级模块分割方法、装置、存储介质及电子设备。


技术介绍

1、寄存器传输级(register transfer level,rtl)模块指的是寄存器传输级别上描述的硬件电路模块,可以理解为芯片的设计逻辑模块,特别是在现场可编程门阵列(field-programmable gate array,fpga)设计中占据重要地位。对fpga进行设计为利用硬件描述语言对fpga芯片进行编程和配置,为其设计特定的逻辑功能,使得fpga芯片能够适应各种不同的应用场景,其中,fpga芯片是一种特殊的集成电路芯片,其内部逻辑电路和连接可以由用户通过编程进行配置,以实现不同的功能。目前,对fpga芯片进行设计后,往往需要搭建原型验证系统,从而来验证fpga芯片设计的正确性和性能,帮助设计者在早期阶段发现并修复设计中的问题。

2、但是当针对fpga芯片的设计逻辑较为复杂,设计逻辑的规模往往比当前最大的fpga芯片所能容纳的门电路数还要大,fpga芯片又是原型验证的主要硬件平台,使得部分设计逻辑无法得到验证,导致对fpga芯片验证的效果较差。


技术实现思路

1、为了改善对fpga芯片验证的效果,本申请提供一种linux环境下rtl级模块分割方法、装置、存储介质及电子设备。

2、在本申请的第一方面提供了一种rtl级模块分割方法,具体包括:

3、获取用户终端中分割客户端输入的待分割rtl级模块对应的工程信息,所述工程信息用于提取所述待分割rtl级模块对应的rtl级代码;

4、基于所述工程信息,从所述用户终端中提取所述待分割rtl级模块对应的rtl级代码;

5、基于所述rtl级代码,对所述待分割rtl级模块进行划分,得到至少一个独立模块;

6、从所述待分割rtl级模块中分割各所述独立模块,并加载至预设的现场可编程门阵列芯片组中的现场可编程门阵列芯片中,所述现场可编程门阵列芯片组包括多个现场可编程门阵列芯片。

7、通过采用上述技术方案,基于工程信息,可以快速准确地从用户终端提取需要分割的待分割rtl级模块对应的rtl级代码,接着基于rtl级代码,对待分割rtl级模块对应的源码进行分析,从而从待分割rtl级模块中划分出至少一个独立模块。最后从待分割rtl级模块将独立模块分割出来,并加载到现场可编程门阵列芯片组中对应的现场可编程门阵列芯片中,从而实现复杂的设计逻辑模块高效地划分,并分散加载到多个现场可编程门阵列芯片中,避免单个现场可编程门阵列芯片无法容纳较为复杂规模较大的设计逻辑的情况,进而有助于改善现场可编程门阵列芯片验证的效果。

8、可选的,所述获取用户终端中分割客户端输入的待分割rtl级模块对应的工程信息之前,还包括:

9、通过预设的cython工具将分割客户端对应的python代码进行编译,得到动态库;

10、通过pyinstaller 工具,将所述动态库转换为可在linux系统上运行的可执行加密文件。

11、通过采用上述技术方案,通过cython工具对分割客户端对应的python代码进行编译,得到动态库,以便其它程序调用,从而提高分割客户端对应的python代码的执行效率,同时防止恶意反编译软件的情况发生,加强后续待分割rtl级模块的分割的安全性。另外,通过pyinstaller 工具,将动态库转换为可在linux系统上运行的可执行加密文件,从而使得分割客户端能在linux环境下进行部署和使用。

12、可选的,所述基于所述rtl级代码,对所述待分割rtl级模块进行划分,得到至少一个独立模块,具体包括:

13、对所述rtl级代码进行解析,得到对应的语法逻辑树;

14、根据所述语法逻辑树的各个层级,对所述待分割rtl级模块进行划分,得到至少一个独立模块。

15、通过采用上述技术方案,根据语法逻辑树中的各个层级,待分割rtl级模块进行划分,每个层级对应待分割rtl级模块中一个独立模块,最终得到至少一个独立模块,从而快速准确地对待分割rtl级模块进行划分,进而方便后续将待分割rtl级模块分割加载到多个现场可编程门阵列芯片中,避免单个现场可编程门阵列芯片无法容纳较为复杂规模较大的设计逻辑的情况。

16、可选的,所述从所述待分割rtl级模块中分割各所述独立模块,并加载至预设的现场可编程门阵列芯片组中的现场可编程门阵列芯片中,具体包括:

17、接收所述用户终端中分割客户端发送的分割模式;

18、若所述分割模式为自定义分割模式,则获取用户从各所述独立模块中选择的目标模块,并获取所述用户从预设的现场可编程门阵列芯片组中选择的目标现场可编程门阵列芯片;

19、从所述待分割rtl级模块中分割所述目标模块并加载至所述目标现场可编程门阵列芯片中;

20、若所述分割模式为自适应分割模式,则从所述现场可编程门阵列芯片组中选取所需数量的所述现场可编程门阵列芯片确定为待加载芯片,并从所述待分割rtl级模块中分割各所述独立模块,并加载至所述待加载芯片中。

21、通过采用上述技术方案,在分割模式为自定义分割模式时,说明用户想要自己选择独立模块分割加载到现场可编程门阵列芯片组中的其中一个现场可编程门阵列芯片,那么将分割出用户选择的目标模块并加载到用户选择的目标现场可编程门阵列芯片中;在分割模式为自适应分割模式时,说明用户倾向由分割客户端自动进行独立模块到现场可编程门阵列芯片的分割加载过程,那么确定待加载芯片,并从待分割rtl级模块中分割各个独立模块,并加载到待加载芯片中,从而实现为用户提供灵活的模块分割的效果。

22、可选的,所述从所述待分割rtl级模块中分割各所述独立模块,并加载至所述待加载芯片中,具体包括:

23、将所述独立模块的当前需占门电路数总和除以所述待加载芯片的当前剩余芯片数量,若能整除,则将得到的商确定为当前芯片容纳门电路数的参考值,若不能整除,则将得到的商加1,得到所述当前芯片容纳门电路数的参考值,所述当前芯片为各所述待加载芯片中当前准备进行加载独立模块的现场可编程门阵列芯片,所述当前需占门电路数总和为当前未加载的独立模块所需要占用的门电路数之和;

24、根据所述参考值,从所述待分割rtl级模块中分割所述独立模块并加载至所述当前芯片中,并将各所述待加载芯片中下一个未加载的现场可编程门阵列芯片确定为当前芯片,并重复执行所述将所述独立模块的当前需占门电路数总和除以所述待加载芯片的当前剩余芯片数量的步骤。

25、通过采用上述技术方案,向每个待加载芯片中加载独立模块时,均将当前需占门电路数总和除以当前剩余芯片数量,根据得到的商确定当前芯片容纳门电路数的参考值,即,加载到当前芯片中独立模型的所占门电路数的参考值。最后按照此参考值,进行独立模块到当前芯片的分割加载过程,从而使得各个待加载芯片中门电路数占用情况较为接近或均匀,有助于减少因个别本文档来自技高网...

【技术保护点】

1.一种RTL级模块分割方法,其特征在于,应用于分割客户端的后台服务器,所述方法包括:

2.根据权利要求1所述的RTL级模块分割方法,其特征在于,所述获取用户终端中分割客户端输入的待分割RTL级模块对应的工程信息之前,还包括:

3.根据权利要求1所述的RTL级模块分割方法,其特征在于,所述基于所述RTL级代码,对所述待分割RTL级模块进行划分,得到至少一个独立模块,具体包括:

4.根据权利要求1所述的RTL级模块分割方法,其特征在于,所述从所述待分割RTL级模块中分割各所述独立模块,并加载至预设的现场可编程门阵列芯片组中的现场可编程门阵列芯片中,具体包括:

5.根据权利要求4所述的RTL级模块分割方法,其特征在于,所述从所述待分割RTL级模块中分割各所述独立模块,并加载至所述待加载芯片中,具体包括:

6.根据权利要求1所述的RTL级模块分割方法,其特征在于,所述从所述待分割RTL级模块中分割各所述独立模块,并加载至预设的现场可编程门阵列芯片组中的现场可编程门阵列芯片中之后,还包括:

7.根据权利要求6所述的RTL级模块分割方法,其特征在于,所述基于所述目标芯片对应的实际温度变化曲线和实际功耗变化曲线,确定是否重新加载各所述独立模块,具体包括:

8.一种RTL级模块分割装置,其特征在于,包括:

9.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其特征在于,所述计算机程序被处理器加载并执行时,采用了权利要求1-7中任一项所述的方法。

10.一种电子设备,包括存储器、处理器及存储在存储器中并能够在处理器上运行的计算机程序,其特征在于,所述处理器加载并执行计算机程序时,采用了权利要求1-7中任一项所述的方法。

...

【技术特征摘要】

1.一种rtl级模块分割方法,其特征在于,应用于分割客户端的后台服务器,所述方法包括:

2.根据权利要求1所述的rtl级模块分割方法,其特征在于,所述获取用户终端中分割客户端输入的待分割rtl级模块对应的工程信息之前,还包括:

3.根据权利要求1所述的rtl级模块分割方法,其特征在于,所述基于所述rtl级代码,对所述待分割rtl级模块进行划分,得到至少一个独立模块,具体包括:

4.根据权利要求1所述的rtl级模块分割方法,其特征在于,所述从所述待分割rtl级模块中分割各所述独立模块,并加载至预设的现场可编程门阵列芯片组中的现场可编程门阵列芯片中,具体包括:

5.根据权利要求4所述的rtl级模块分割方法,其特征在于,所述从所述待分割rtl级模块中分割各所述独立模块,并加载至所述待加载芯片中,具体包括:

6.根...

【专利技术属性】
技术研发人员:请求不公布姓名请求不公布姓名
申请(专利权)人:江苏汤谷智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1