一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

EDA软件的测试方法及测试系统与流程

2023-01-15 05:35:54 来源:中国专利 TAG:

eda软件的测试方法及测试系统
技术领域
1.本发明涉及测试技术领域,尤其涉及一种eda软件的测试方法及测试系统。


背景技术:

2.现场可编程门阵列(field programmable gatearray,fpga)一般都有对应的eda软件,eda软件的主要功能是接受用户输入的编程代码等输入文件,通过编译过程最后最终生成fpga芯片的编程文件,进而通过编程文件在fpga芯片上实现用户期望的功能。
3.如何验证编程结果的正确性和eda软件的性能是一个挑战,但现有的对eda软件的测试方法受算法和芯片等的因素影响,测试结果准确性较低。
4.因此,有必要提供一种新型的eda软件的测试方法及测试系统以解决现有技术中存在的上述问题。


技术实现要素:

5.本发明的目的在于提供一种eda软件的测试方法及测试系统,减少算法和芯片等因素的影响,提高对eda软件测试的准确性。
6.为实现上述目的,本发明的所述eda软件的测试方法,包括以下步骤:
7.s1:将加解密电路的原始文件通过eda软件进行编译,以生成编程文件;
8.s2:根据所述编程文件在fpga上生成加解密电路;
9.s3:通过所述加解密电路对原始数据进行加密,以得到加密数据;
10.s4:通过所述加解密电路对所述加密数据进行解密,以得到解密数据;
11.s5:将所述原始数据和解密数据进行对比,以得到对比结果,根据所述对比结果得到eda软件的测试结果。
12.所述eda软件的测试方法的有益效果在于:将加解密电路的原始文件通过eda软件进行编译,以生成编程文件,根据所述编程文件在fpga上生成加解密电路,通过所述加解密电路对原始数据进行加密,以得到加密数据,通过所述加解密电路对所述加密数据进行解密,以得到解密数据,将所述原始数据和解密数据进行对比,以得到对比结果,根据所述对比结果间接判断出eda软件编译的准确性,由于编译结果具有确定性,减少了算法和芯片等因素的影响,提高对eda软件测试的准确性。
13.可选地,所述加解密电路包括多个加密引擎,且上一个所述加密引擎的输出作为下一个所述加密引擎的输入。
14.可选地,所述通过所述加解密电路对原始数据进行加密,以得到加密数据,包括:多个所述加密引擎对所述原始数据进行多轮加密,以得到加密数据。
15.可选地,多个所述加密引擎的加密密钥各不相同。
16.可选地,所述加解密电路包括多个解密引擎,且上一个所述解密引擎的输出作为下一个所述解密引擎的输入。
17.可选地,所述通过所述加解密电路对所述加密数据进行解密,以得到解密数据,包
括:多个所述解密引擎对所述加密数据进行多轮解密,以得到解密数据。
18.可选地,多个所述解密引擎的解密密钥各不相同。
19.可选地,所述eda软件的测试方法还包括:更换所述原始数据、加密密钥和解密密钥,然后执行所述步骤s3和所述步骤s4。
20.可选地,所述步骤s5包括:根据多个所述对比结果得到eda软件的测试结果。
21.一种eda软件的测试系统,用于实现如权利要求1~8任意一项所述的eda软件的测试方法,其特征在于,包括第一驱动单元、第二驱动单元、第三驱动单元、第四驱动单元和判断单元,所述第一驱动单元用于将加解密电路的原始文件通过eda软件进行编译,以生成编程文件;所述第二驱动单元用于根据所述编程文件在fpga上生成加解密电路;所述第三驱动单元用于通过所述加解密电路对原始数据进行加密,以得到加密数据;所述第四驱动单元用于通过所述加解密电路对所述加密数据进行解密,以得到解密数据;所述判断单元用于将所述原始数据和解密数据进行对比,以得到对比结果,根据所述对比结果得到eda软件的测试结果。
附图说明
22.图1为本发明一些实施例中eda软件的测试方法的流程图;
23.图2为本发明一些具体实施例中加解密电路的加解密流程示意图;
24.图3为本发明一些实施例中eda软件的测试系统的结构框图。
具体实施方式
25.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另外定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本文中使用的“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
26.针对现有技术存在的问题,本发明的实施例提供了一种eda软件的测试方法。参照图1,所述eda软件的测试方法包括以下步骤:
27.s1:将加解密电路的原始文件通过eda软件进行编译,以生成编程文件;
28.s2:根据所述编程文件在fpga上生成加解密电路;
29.s3:通过所述加解密电路对原始数据进行加密,以得到加密数据;
30.s4:通过所述加解密电路对所述加密数据进行解密,以得到解密数据;
31.s5:将所述原始数据和解密数据进行对比,以得到对比结果,根据所述对比结果得到eda软件的测试结果。
32.一些实施例中,所述加解密电路包括多个加密引擎,且上一个所述加密引擎的输出作为下一个所述加密引擎的输入。
33.一些实施例中,所述通过所述加解密电路对原始数据进行加密,以得到加密数据,包括:多个所述加密引擎对所述原始数据进行多轮加密,以得到加密数据。
34.一些实施例中,多个所述加密引擎的加密密钥各不相同。
35.一些实施例中,所述加解密电路包括多个解密引擎,且上一个所述解密引擎的输出作为下一个所述解密引擎的输入。
36.一些实施例中,所述通过所述加解密电路对所述加密数据进行解密,以得到解密数据,包括:多个所述解密引擎对所述加密数据进行多轮解密,以得到解密数据。其中,多个所述解密引擎的解密密钥各不相同。
37.一些实施例中,所述加解密电路的原始文件为对称加解密算法的原始文件,例如des算法、3des算法、aes算法、blowfish算法、sm1算法、sm4算法。所述eda软件的测试方法还包括:修改加解密电路的原始文件,然后重新执行所述步骤s1至所述步骤s5,修改加解密电路的原始文件使得所述fpga上生成的加解密电路中的加密引擎数量和解密引擎数量发生改变,从而可以灵活根据fpga芯片规模调整内部电路开销或尽可能多的使用fpga芯片的内部电路资源,并且通过fpga上生成加解密电路的工作时钟的快慢,能够间接判断出来eda软件的布线性能,进而实现对eda软件的测试。
38.图2为本发明一些具体实施例中加解密电路的加解密流程示意图。参照图2,所述加解密电路包括n个加密引擎和n个解密引擎,n个所述加密引擎分别为第一加密引擎、第二加密引擎、
······
、第n加密引擎,n个所述解密引擎分别为第一解密引擎、第二解密引擎、
······
、第n解密引擎。
39.参照图2,所述第一加密引擎的加密密钥为第一加密密钥,所述第二加密引擎的加密密钥为第二加密密钥,依次类推,所述第n加密引擎的加密密钥为第n加密密钥;所述第一解密引擎的解密密钥为第一解密密钥,所述第二解密引擎的解密密钥为第二解密密钥,依次类推,所述第n解密引擎的解密密钥为第n解密密钥。其中,所述第一加密密钥与所述第一解密密钥相对应,所述第二加密密钥与所述第二解密密钥相对应,依次类推,所述第n加密密钥与所述第n解密密钥相对应。
40.一些实施例中,所述第一加密密钥与所述第一解密密钥相同,所述第二加密密钥与所述第二解密密钥相同,依次类推,所述第n加密密钥与所述第n解密密钥相同。
41.一些具体实施例中,所述第一加密引擎与所述第一解密引擎功能对称,所述第二加密引擎与所述第二解密引擎功能对称,依次类推,所述第n加密引擎与所述第n解密引擎功能对称。
42.一些实施例中,所述第一加密密钥、所述第二加密密钥、
······
、所述第n加密密钥依次递增或递减;所述第一解密密钥、所述第二解密密钥、
······
、所述第n解密密钥依次递增或递减。
43.参照图2,所述第一加密引擎采用第一加密密钥对原始数据进行加密,得到第一次加密结果数据,所述第二加密引擎采用第二加密密钥对所述第一次加密结果数据进行加密,得到第二次加密结果数据,依次类推,所述第n加密引擎采用第n加密密钥对第n-1次加密结果数据进行加密,得到加密数据。
44.参照图2,所述第n解密引擎采用第n解密密钥对所述加密数据进行解密,得到第一次解密结果数据,依次类推,所述第二解密引擎采用第二解密密钥对第n-2次解密结果数据进行解密,得到第n-1次解密结果数据,所述第一解密引擎采用第一解密密钥对所述第n-1次解密结果数据进行解密,得到解密数据。
45.一些实施例中,所述eda软件的测试方法还包括:更换所述原始数据、加密密钥和解密密钥,然后执行所述步骤s3和所述步骤s4。
46.一些实施例中,所述步骤s5包括:根据多个所述对比结果得到eda软件的测试结果。
47.一些实施例中,所述加解密电路对原始数据多轮加密和多轮解密后所得到的解密数据在正常情况下应该与原始数据相同,因此,若判断所述原始数据和所述解密数据相同,则判断所述dea软件编译结果正常,若判断所述原始数据和所述解密数据不同,则判断所述dea软件编译结果异常。
48.图3为本发明一些实施例中eda软件的测试系统的结构框图。参照图3,所述eda软件的测试系统用于实现所述eda软件的测试方法,所述eda软件的测试系统100包括第一驱动单元101、第二驱动单元102、第三驱动单元103、第四驱动单元104和判断单元105,所述第一驱动单元101用于将加解密电路的原始文件通过eda软件进行编译,以生成编程文件;所述第二驱动单元102用于根据所述编程文件在fpga上生成加解密电路;所述第三驱动单元103用于通过所述加解密电路对原始数据进行加密,以得到加密数据;所述第四驱动单元104用于通过所述加解密电路对所述加密数据进行解密,以得到解密数据;所述判断单元105用于将所述原始数据和解密数据进行对比,以得到对比结果,根据所述对比结果得到eda软件的测试结果。
49.虽然在上文中详细说明了本发明的实施方式,但是对于本领域的技术人员来说显而易见的是,能够对这些实施方式进行各种修改和变化。但是,应理解,这种修改和变化都属于权利要求书中所述的本发明的范围和精神之内。而且,在此说明的本发明可有其它的实施方式,并且可通过多种方式实施或实现。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献