《运算器测试系统及测试方法.pdf》由会员分享,可在线阅读,更多相关《运算器测试系统及测试方法.pdf(24页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103513177 A (43)申请公布日 2014.01.15 CN 103513177 A (21)申请号 201210224191.0 (22)申请日 2012.06.29 G01R 31/3177(2006.01) (71)申请人 上海芯豪微电子有限公司 地址 200092 上海市杨浦区四平路1398号B 楼 1202 室 (72)发明人 林正浩 (74)专利代理机构 上海思微知识产权代理事务 所 ( 普通合伙 ) 31237 代理人 周耀君 (54) 发明名称 运算器测试系统及测试方法 (57) 摘要 本发明提供了一种运算器测试系统及测试方 法, 通过预期结。
2、果单元生成预期结果并将这一轮 测试的预期结果提供给比较器, 由此, 所述预期结 果单元至少仅需存储一轮测试的预期结果即可, 从而减少了所述预期结果单元对预期结果的存储 量。 (51)Int.Cl. 权利要求书 3 页 说明书 18 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书18页 附图2页 (10)申请公布号 CN 103513177 A CN 103513177 A 1/3 页 2 1. 一种运算器测试系统, 其特征在于, 包括 : 控制单元、 数据提供单元、 第一输入单元、 第二输入单元、 待测运算器、 预期结果单元、 比较器及测试。
3、结果存储单元, 其中, 所述控制单 元控制测试过程的进行 ; 当进行测试时 : 所述数据提供单元向所述第一输入单元、 第二输入单元及预期结果单元提供数据 ; 所述第一输入单元及第二输入单元向所述待测运算器提供测试数据 ; 所述待测运算器进行运算并将运算结果提供给比较器, 所述预期结果单元生成预期结 果并将这一轮测试的预期结果提供给比较器 ; 所述比较器比较运算结果及预期结果, 并将比较结果提供给测试结果存储单元。 2. 如权利要求 1 所述的运算器测试系统, 其特征在于, 所述控制单元、 数据提供单元、 第一输入单元、 第二输入单元、 待测运算器、 预期结果单元、 比较器及测试结果存储单元集 。
4、成在同一块芯片上。 3. 如权利要求 1 所述的运算器测试系统, 其特征在于, 所述预期结果单元存储当前一 轮测试的预期结果。 4. 如权利要求 1 所述的运算器测试系统, 其特征在于, 所述数据提供单元中所存储的 数据包括 : 全 0 二进制数、 0 和 1 间隔的二进制数及仅最低位为 1 的二进制数。 5.如权利要求1至4中的任一项所述的运算器测试系统, 其特征在于, 所述预期结果单 元提供的预期结果为 : 数据提供单元所提供的数据的函数。 6. 如权利要求 5 所述的运算器测试系统, 其特征在于, 所述预期结果单元提供的预期 结果为 : 数据提供单元提供的数据的移位或者反相。 7.如权利。
5、要求1至4中的任一项所述的运算器测试系统, 其特征在于, 所述预期结果单 元提供的预期结果为 : 常数。 8. 如权利要求 7 所述的运算器测试系统, 其特征在于, 所述预期结果单元提供的预期 结果为 : 全 1 二进制数或全 0 二进制数。 9.如权利要求1至4中的任一项所述的运算器测试系统, 其特征在于, 所述预期结果单 元提供的预期结果为 : 第一输入单元或者第二输入单元向待测运算器提供的测试数据。 10. 如权利要求 9 所述的运算器测试系统, 其特征在于, 当所述预期结果单元提供的预 期结果为 : 第一输入单元或者第二输入单元向待测运算器提供的测试数据时, 所述待测运算器经过正运算及。
6、逆运算之后将运算结果提供给比较器。 11. 如权利要求 1 至 4 中的任一项所述的运算器测试系统, 其特征在于, 所述第一输入 单元向所述第二输入单元及预期结果单元提供数据。 12. 如权利要求 1 至 4 中的任一项所述的运算器测试系统, 其特征在于, 所述第二输入 单元向所述第一输入单元及预期结果单元提供数据。 13. 如权利要求 1 至 4 中的任一项所述的运算器测试系统, 其特征在于, 所述预期结果 单元向所述第一输入单元及第二输入单元提供数据。 14. 如权利要求 1 至 4 中的任一项所述的运算器测试系统, 其特征在于, 所述控制单元 包括 : 测试流程控制单元, 用以控制测试进。
7、程 ; 步骤数记录单元, 用以记录步骤数 ; 权 利 要 求 书 CN 103513177 A 2 2/3 页 3 器件选择单元, 用以选择待测运算器及其工作方式 ; 第一数据选择单元, 用以选择数据提供单元提供的数据 ; 第二数据选择单元, 用以选择第一输入单元、 第二输入单元及预期结果单元各自接收 的数据 ; 及 数据转换控制器, 用以确定第一输入单元、 第二输入单元及预期结果单元中的数据是 否需要移位或者反相。 15. 如权利要求 14 所述的运算器测试系统, 其特征在于, 所述测试流程控制单元根据 一位二进制数控制测试进程, 所述测试进程包括 : 根据步骤数记录单元提供的计数 n1, 。
8、当 n1 次测试完成后, 进行下一轮测试, 所述 n1 为 非负整数 ; 根据步骤数记录单元提供的计数 n2, 进行之前第 n2 轮测试, 所述 n2 为自然数。 16. 如权利要求 14 所述的运算器测试系统, 其特征在于, 所述待测运算器包括加法器、 乘法器、 移位器、 逻辑运算单元及存储器中的一种。 17. 如权利要求 16 所述的运算器测试系统, 其特征在于, 当所述待测运算器为移位器 时, 所述步骤数记录单元向所述移位器提供移位的位数同时提供测试的计数。 18. 如权利要求 16 所述的运算器测试系统, 其特征在于, 当所述待测运算器为存储器 时, 所述步骤数记录单元向所述存储器提供。
9、存储器读写地址。 19. 如权利要求 1 至 4 中的任一项所述的运算器测试系统, 其特征在于, 当比较结果为运算结果与预期结果不相同时, 所述测试结果存储单元存储该比较结 果。 20. 一种运算器测试方法, 其特征在于, 包括 : 步骤 1 : 控制单元控制测试开始 ; 步骤 2 : 数据提供单元向所述第一输入单元、 第二输入单元及预期结果单元提供数据 ; 步骤 3 : 所述第一输入单元及第二输入单元向待测运算器提供测试数据 ; 步骤 4 : 所述待测运算器进行运算并将运算结果提供给比较器, 所述预期结果单元生 成预期结果并将这一轮测试的预期结果提供给比较器 ; 步骤 5 : 所述比较器比较。
10、运算结果及预期结果, 并将比较结果提供给测试结果存储单 元 ; 步骤 6 : 所述控制单元控制测试继续或者测试结束。 21. 如权利要求 20 所述的运算器测试方法, 其特征在于, 所述预期结果单元存储当前 一轮测试的预期结果。 22. 如权利要求 20 所述的运算器测试方法, 其特征在于, 所述数据提供单元中所存储 的数据包括 : 全 0 二进制数、 0 和 1 间隔的二进制数及仅最低位为 1 的二进制数。 23. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 所述预期结 果单元提供的预期结果为 : 数据提供单元所提供的数据的函数。 24. 如权利要求 23 所。
11、述的运算器测试方法, 其特征在于, 所述预期结果单元提供的预 期结果为 : 数据提供单元提供的数据的移位或者反相。 权 利 要 求 书 CN 103513177 A 3 3/3 页 4 25. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 所述预期结 果单元提供的预期结果为 : 常数。 26. 如权利要求 25 所述的运算器测试方法, 其特征在于, 所述预期结果单元提供的预 期结果为 : 全 1 二进制数或全 0 二进制数。 27. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 所述预期 结果单元提供的预期结果为 : 第一输入单元或者。
12、第二输入单元向待测运算器提供的测试数 据。 28. 如权利要求 27 所述的运算器测试方法, 其特征在于, 当所述预期结果单元提供的 预期结果为 : 第一输入单元或者第二输入单元向待测运算器提供的测试数据时, 所述待测运算器经过正运算及逆运算之后将运算结果提供给比较器。 29. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 在步骤 2 中 还包括 : 所述第一输入单元向所述第二输入单元及预期结果单元提供数据。 30. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 在步骤 2 中 还包括 : 所述第二输入单元向所述第一输入单元及预期结果。
13、单元提供数据。 31. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 在步骤 2 中 还包括 : 所述预期结果单元向所述第一输入单元及第二输入单元提供数据。 32. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 测试流程控 制单元根据一位二进制数控制测试继续的进程, 所述测试继续的进程包括 : 根据步骤数记录单元提供的计数 n1, 当 n1 次测试完成后, 进行下一轮测试, 所述 n1 为 非负整数 ; 根据步骤数记录单元提供的计数 n2, 进行之前第 n2 轮测试, 所述 n2 为自然数。 33. 如权利要求 20 至 22 中的任。
14、一项所述的运算器测试方法, 其特征在于, 当所述待测 运算器为移位器时, 所述步骤数记录单元向所述移位器提供移位的位数同时提供测试的计数。 34. 如权利要求 20 至 22 中的任一项所述的运算器测试方法, 其特征在于, 当所述待测 运算器为存储器时, 所述步骤数记录单元向所述存储器提供存储器读写地址。 35.如权利要求20至22中的任一项所述的运算器测试方法, 其特征在于, 在步骤5中, 当比较结果为运算结果与预期结果不相同时, 所述测试结果存储单元存储该比较结果。 权 利 要 求 书 CN 103513177 A 4 1/18 页 5 运算器测试系统及测试方法 技术领域 0001 本发明。
15、涉及器件测试技术领域, 特别涉及一种运算器测试系统及测试方法。 背景技术 0002 在产品的制造过程中, 测试对于保证产品质量起着至关重要的作用, 因此, 现有很 多产品都需要经过测试这一环节。 随着技术的发展, 运算器这一类产品越来越多地被使用, 其帮助人们完成多种重复又繁杂的计算工作, 从而将人们从重复又繁杂的计算工作中解放 出来, 进而提高人们的生活质量。 0003 通常的, 运算器包括加法器、 乘法器、 移位器、 逻辑运算单元及存储器这几种运算 工具。现有技术中, 主要通过如下方法对运算器进行测试 : 0004 控制测试过程的主控设备向待测运算器提供输入数据, 同时向预期结果单元提供 。
16、这些输入数据经过待测运算器之后预期得到的结果 ( 称之为预期结果 ) ; 0005 接着, 待测运算器经过运算之后输出运算结果, 同时, 预期结果单元输出预期结 果, 所述运算结果及预期结果被提供给比较器, 所述比较器经过比较后便可得到比较结果, 所述比较结果包括相同或者不相同, 当比较结果相同时, 即说明待测运算器的运算结果正 确 ; 而当比较结果不相同时, 即说明待测运算器的运算结果错误, 进一步说明待测运算器不 合格或者说可靠性不高。 0006 同时, 为了保证测试结果的准确与可靠, 对于同一待测运算器需要进行多轮测试 ( 这一测试数量往往以千、 万记 ), 此时, 所述预期结果单元就需。
17、要将这多轮测试的预期结 果都予以存储, 由此, 将导致预期结果单元所需的存储空间非常大、 进而导致这一器件在尺 寸上较大, 在价格上较昂贵, 也不利于其与其他测试器件 ( 包括待测运算器、 主控设备等 ) 集成, 由此, 也不能享受器件集成带来的小型化、 价格低廉等优点。 0007 因此, 如何在运算器的测试过程中, 在满足多轮测试的要求下, 降低对于预期结果 的存储量成了本领域亟待解决的一个技术难题。 发明内容 0008 本发明的目的在于提供一种运算器测试系统及测试方法, 以解决现有技术中对运 算器进行测试时, 所需存储的预期结果的数量非常大的问题。 0009 为解决上述技术问题, 本发明提。
18、供一种运算器测试系统, 包括 : 控制单元、 数据提 供单元、 第一输入单元、 第二输入单元、 待测运算器、 预期结果单元、 比较器及测试结果存储 单元, 其中, 所述控制单元控制测试过程的进行 ; 0010 当进行测试时 : 0011 所述数据提供单元向所述第一输入单元、 第二输入单元及预期结果单元提供数 据 ; 0012 所述第一输入单元及第二输入单元向所述待测运算器提供测试数据 ; 0013 所述待测运算器进行运算并将运算结果提供给比较器, 所述预期结果单元生成预 说 明 书 CN 103513177 A 5 2/18 页 6 期结果并将这一轮测试的预期结果提供给比较器 ; 0014 所。
19、述比较器比较运算结果及预期结果, 并将比较结果提供给测试结果存储单元。 0015 可选的, 在所述的运算器测试系统中, 所述控制单元、 数据提供单元、 第一输入单 元、 第二输入单元、 待测运算器、 预期结果单元、 比较器及测试结果存储单元集成在同一块 芯片上。 0016 可选的, 在所述的运算器测试系统中, 所述预期结果单元存储当前一轮测试的预 期结果。 0017 可选的, 在所述的运算器测试系统中, 所述数据提供单元中所存储的数据包括 : 全 0 二进制数、 0 和 1 间隔的二进制数及仅最低位为 1 的二进制数。 0018 可选的, 在所述的运算器测试系统中, 所述预期结果单元提供的预期。
20、结果为 : 数据 提供单元所提供的数据的函数。 0019 可选的, 在所述的运算器测试系统中, 所述预期结果单元提供的预期结果为 : 数据 提供单元提供的数据的移位或者反相。 0020 可选的, 在所述的运算器测试系统中, 所述预期结果单元提供的预期结果为 : 常 数。 0021 可选的, 在所述的运算器测试系统中, 所述预期结果单元提供的预期结果为 : 全 1 二进制数或全 0 二进制数。 0022 可选的, 在所述的运算器测试系统中, 所述预期结果单元提供的预期结果为 : 第一 输入单元或者第二输入单元向待测运算器提供的测试数据。 0023 可选的, 在所述的运算器测试系统中, 当所述预期。
21、结果单元提供的预期结果为 : 第 一输入单元或者第二输入单元向待测运算器提供的测试数据时, 0024 所述待测运算器经过正运算及逆运算之后将运算结果提供给比较器。 0025 可选的, 在所述的运算器测试系统中, 所述第一输入单元向所述第二输入单元及 预期结果单元提供数据。 0026 可选的, 在所述的运算器测试系统中, 所述第二输入单元向所述第一输入单元及 预期结果单元提供数据。 0027 可选的, 在所述的运算器测试系统中, 所述预期结果单元向所述第一输入单元及 第二输入单元提供数据。 0028 可选的, 在所述的运算器测试系统中, 所述控制单元包括 : 0029 测试流程控制单元, 用以控。
22、制测试进程 ; 0030 步骤数记录单元, 用以记录步骤数 ; 0031 器件选择单元, 用以选择待测运算器及其工作方式 ; 0032 第一数据选择单元, 用以选择数据提供单元提供的数据 ; 0033 第二数据选择单元, 用以选择第一输入单元、 第二输入单元及预期结果单元各自 接收的数据 ; 及 0034 数据转换控制器, 用以确定第一输入单元、 第二输入单元及预期结果单元中的数 据是否需要移位或者反相。 0035 可选的, 在所述的运算器测试系统中, 所述测试流程控制单元根据一位二进制数 控制测试进程, 所述测试进程包括 : 说 明 书 CN 103513177 A 6 3/18 页 7 0。
23、036 根据步骤数记录单元提供的计数 n1, 当 n1 次测试完成后, 进行下一轮测试, 所述 n1 为非负整数 ; 0037 根据步骤数记录单元提供的计数 n2, 进行之前第 n2 轮测试, 所述 n2 为自然数。 0038 可选的, 在所述的运算器测试系统中, 所述待测运算器包括加法器、 乘法器、 移位 器、 逻辑运算单元及存储器中的一种。 0039 可选的, 在所述的运算器测试系统中, 当所述待测运算器为移位器时, 0040 所述步骤数记录单元向所述移位器提供移位的位数同时提供测试的计数。 0041 可选的, 在所述的运算器测试系统中, 当所述待测运算器为存储器时, 0042 所述步骤数。
24、记录单元向所述存储器提供存储器读写地址。 0043 可选的, 在所述的运算器测试系统中, 当比较结果为运算结果与预期结果不相同 时, 所述测试结果存储单元存储该比较结果。 0044 本发明还提供一种运算器测试方法, 包括 : 0045 步骤 1 : 控制单元控制测试开始 ; 0046 步骤 2 : 数据提供单元向所述第一输入单元、 第二输入单元及预期结果单元提供 数据 ; 0047 步骤 3 : 所述第一输入单元及第二输入单元向待测运算器提供测试数据 ; 0048 步骤 4 : 所述待测运算器进行运算并将运算结果提供给比较器, 所述预期结果单 元生成预期结果并将这一轮测试的预期结果提供给比较器。
25、 ; 0049 步骤 5 : 所述比较器比较运算结果及预期结果, 并将比较结果提供给测试结果存 储单元 ; 0050 步骤 6 : 所述控制单元控制测试继续或者测试结束。 0051 可选的, 在所述的运算器测试方法中, 所述预期结果单元存储当前一轮测试的预 期结果。 0052 可选的, 在所述的运算器测试方法中, 所述数据提供单元中所存储的数据包括 : 全 0 二进制数、 0 和 1 间隔的二进制数及仅最低位为 1 的二进制数。 0053 可选的, 在所述的运算器测试方法中, 所述预期结果单元提供的预期结果为 : 数据 提供单元所提供的数据的函数。 0054 可选的, 在所述的运算器测试方法中。
26、, 所述预期结果单元提供的预期结果为 : 数据 提供单元提供的数据的移位或者反相。 0055 可选的, 在所述的运算器测试方法中, 所述预期结果单元提供的预期结果为 : 常 数。 0056 可选的, 在所述的运算器测试方法中, 所述预期结果单元提供的预期结果为 : 全 1 二进制数或全 0 二进制数。 0057 可选的, 在所述的运算器测试方法中, 所述预期结果单元提供的预期结果为 : 第一 输入单元或者第二输入单元向待测运算器提供的测试数据。 0058 可选的, 在所述的运算器测试方法中, 当所述预期结果单元提供的预期结果为 : 第 一输入单元或者第二输入单元向待测运算器提供的测试数据时, 。
27、0059 所述待测运算器经过正运算及逆运算之后将运算结果提供给比较器。 0060 可选的, 在所述的运算器测试方法中, 在步骤 2 中还包括 : 所述第一输入单元向所 说 明 书 CN 103513177 A 7 4/18 页 8 述第二输入单元及预期结果单元提供数据。 0061 可选的, 在所述的运算器测试方法中, 在步骤 2 中还包括 : 所述第二输入单元向所 述第一输入单元及预期结果单元提供数据。 0062 可选的, 在所述的运算器测试方法中, 在步骤 2 中还包括 : 所述预期结果单元向所 述第一输入单元及第二输入单元提供数据。 0063 可选的, 在所述的运算器测试方法中, 测试流程。
28、控制单元根据一位二进制数控制 测试继续的进程, 所述测试继续的进程包括 : 0064 根据步骤数记录单元提供的计数 n1, 当 n1 次测试完成后, 进行下一轮测试, 所述 n1 为非负整数 ; 0065 根据步骤数记录单元提供的计数 n2, 进行之前第 n2 轮测试, 所述 n2 为自然数。 0066 可选的, 在所述的运算器测试方法中, 当所述待测运算器为移位器时, 0067 所述步骤数记录单元向所述移位器提供移位的位数同时提供测试的计数。 0068 可选的, 在所述的运算器测试方法中, 当所述待测运算器为存储器时, 0069 所述步骤数记录单元向所述存储器提供存储器读写地址。 0070 。
29、可选的, 在所述的运算器测试方法中, 在步骤 5 中, 当比较结果为运算结果与预期 结果不相同时, 所述测试结果存储单元存储该比较结果。 0071 在本发明提供的运算器测试系统及测试方法中, 所述预期结果单元生成预期结果 并将这一轮测试的预期结果提供给比较器, 由此, 所述预期结果单元至少仅需存储一轮测 试的预期结果即可, 从而减少了所述预期结果单元对预期结果的存储量。 附图说明 0072 图 1 是本发明实施例的运算器测试系统的框结构示意图 ; 0073 图 2 是本发明实施例的运算器测试系统的结构示意图。 具体实施方式 0074 以下结合附图和具体实施例对本发明提出的运算器测试系统及测试方。
30、法作进一 步详细说明。根据下面说明和权利要求书, 本发明的优点和特征将更清楚。需说明的是, 附 图均采用非常简化的形式且均使用非精准的比例, 仅用以方便、 明晰地辅助说明本发明实 施例的目的。 0075 请参考图 1, 其为本发明实施例的运算器测试系统的框结构示意图。如图 1 所示, 所述运算器测试系统 1 包括 : 0076 控制单元 10、 数据提供单元 11、 第一输入单元 12、 第二输入单元 13、 待测运算器 14、 预期结果单元 15、 比较器 16 及测试结果存储单元 17, 其中, 所述控制单元 10 控制测试 过程的进行 ; 0077 当进行测试时 : 0078 所述数据提。
31、供单元 11 向所述第一输入单元 12、 第二输入单元 13 及预期结果单元 15 提供数据 ; 0079 所述第一输入单元 12 及第二输入单元 13 向所述待测运算器 14 提供测试数据 ; 0080 所述待测运算器 14 进行运算并将运算结果提供给比较器 16, 所述预期结果单元 说 明 书 CN 103513177 A 8 5/18 页 9 15 生成预期结果并将这一轮测试的预期结果提供给比较器 16 ; 0081 所述比较器 16 比较运算结果及预期结果, 并将比较结果提供给测试结果存储单 元 17。 0082 在本实施例中, 由于所述预期结果单元 15 生成预期结果并将这一轮测试的。
32、预期 结果提供给比较器 16, 由此, 所述预期结果单元 15 至少仅需存储一轮测试的预期结果即 可, 从而减少了所述预期结果单元 15 对预期结果的存储量。 0083 优选的, 所述预期结果单元 15 仅存储当前一轮测试的预期结果, 由此, 可极大地 减小对预期结果的存储量。当然, 在本发明的其他实施例中, 所述预期结果单元 15 可多存 储几轮测试的预期结果, 例如存储包括当前一轮及前后三轮的预测结果等。 0084 进一步的, 所述控制单元 10、 数据提供单元 11、 第一输入单元 12、 第二输入单元 13、 待测运算器 14、 预期结果单元 15、 比较器 16 及测试结果存储单元 。
33、17 集成在同一块芯片 上。在此, 由于所述预期结果单元 15 存储的数据量较少, 由此, 其需要的存储空间也相应变 少, 进而其在外观上(空间结构上)也相应地变得非常小, 从而使得所述运算器测试系统能 够集成在同一块芯片上, 享受集成带来的小型化、 价格低廉等优点, 同时, 集成还能够带来 数据传递速度快等优点。 0085 在本实施例中, 不仅所述数据提供单元 11 可以向所述第一输入单元 12、 第二输入 单元 13 及预期结果单元 15 提供数据, 同时, 所述第一输入单元 12、 第二输入单元 13 及预 期结果单元15各自之间也可以提供数据, 即, 所述第一输入单元12可以向所述第二。
34、输入单 元 13 及预期结果单元 15 提供数据 ; 所述第二输入单元 13 可以向所述第一输入单元 12 及 预期结果单元15提供数据 ; 所述预期结果单元15可以向所述第一输入单元12及第二输入 单元 13 提供数据。由此, 更加丰富了测试数据。 0086 考虑到对于运算器测试的覆盖率以及数据提供单元 11 的存储量需求, 优选的, 所 述数据提供单元 11 所存储的数据为三个常数, 分别为全 0 二进制数 ( 用 “A” 表示 )、 0 和 1 间隔的二进制数 ( 用 “B” 表示 ) 及仅最低位为 1 的二进制数 ( 用 “C” 表示 )。以四位二进 制数为例, 即分别可对应出 “00。
35、00” 、“0101” 及 “0001” ; 若以十六位二进制数为例, 则分别可 以对应出 “0000 0000 0000 0000” 、“0101 0101 0101 0101” 及 “0000 0000 0000 0001” , 当然, 还可以是三十二位、 六十四位等位数的二进制数, 本申请对此不再赘述。 0087 同时, 为了进一步满足对于运算器测试的需求, 提高运算器测试的覆盖率, 所述数 据提供单元 11 还预设一数据产出位, 该位可根据测试需要提供新的数据 ( 用 “G” 表示 ), 其 中, 所述新的数据可通过计数器予以产生。 0088 在本实施例中, 所述预期结果单元 15 中。
36、的预期结果可以是数据提供单元 11、 第一 输入单元 12 及第二输入单元 13 提供的数据本身, 也可以是数据提供单元 11、 第一输入单 元 12 及第二输入单元 13 提供的数据的移位或者反相, 即, 所述预期结果单元 15 中的预期 结果是预期结果单元 15 得到的数据 ( 输入数据 ) 的函数 ( 在此指代根据一定的变化即可 得到 )。 0089 进一步的, 所述预期结果单元 15 中的预期结果还可以是常数, 优选的为全 0 二进 制数, 若以四位二进制数为例, 则是 “0000” ; 若以十六位二进制数为例, 则是 “0000 0000 0000 0000” , 此数可以是常数 “。
37、A” ; 优选的为全 1 二进制数, 若以四位二进制数为例, 则是 “1111” ; 若以十六位二进制数为例, 则是 “1111 11111111 1111” , 此数可为常数 “A” 的反相。 说 明 书 CN 103513177 A 9 6/18 页 10 本实施例特设计对此结果的测试, 以提高测试的可靠性及覆盖率。 0090 在对预期结果为常数的情况予以测试时, 将得到此种常数的各种情况均予以测 试, 例如, 所述待测运算器 14 为加法器, 所述常数为 “1111” , 则对于输入分别为 “0000” 及 “1111” ;“0001” 及 “1110” ;“0010” 及 “1101”。
38、等各种能够得出 “1111” 的情况均予以 测试, 从而保证测试的覆盖率。 0091 进一步的, 所述预期结果单元 15 中的预期结果还可以是一种逆运算结果, 具体实 现时, 可以将第一输入单元 12 或者第二输入单元 13 所提供的数据作为预期结果。同时, 待 测运算器 14 将第一输入单元 12 及第二输入单元 13 提供的测试数据经过正运算后的中间 结果送回第一输入单元 12 或者第二输入单元 13, 接着, 被送回的中间结果及得出该中间结 果的测试数据之一 ( 第一输入单元 12 或者第二输入单元 13 提供的数据 ) 送到该待测运算 器 14( 即进行正运算的同一待测运算器 14) 。
39、进行逆运算, 由此得出的运算结果 ( 即经过了 正运算和逆运算之后的结果 ) 提供给比较器 16, 该比较器 16 将待测运算器 14 提供的运算 结果与预期结果(即第二输入单元13或第一输入单元12提供给预期结果单元15的数据) 进行比较。 0092 其中, 需说明的是, 所述正运算指所述待测运算器通常执行的运算, 例如, 若待测 运算器为加法器, 其正运算即指 “加法” 运算 / 操作, 而其逆运算指相反的运算, 即指 “减法” 运算 / 操作, 所述正运算及逆运算通过同一待测运算器实现。 0093 例如, 第一输入单元 12 的数据与第二输入单元 13 的数据经待测运算器 14( 该待 。
40、测运算器 14 设为加法器 ) 相加得到中间结果, 同时将第二输入单元 13 的数据提供给预期 结果单元15作为预期结果。 该中间结果没有相应的预期结果 ; 但中间结果被反馈回第二输 入单元 13 作为输入数据由待测运算器 14 减去第一输入单元 12 的数据 ( 即进行逆运算 ), 所得的最后运算结果应该与预期结果 ( 原第二输入单元 13 的数据 ) 通过比较器 16 进行比 较。 0094 在此, 利用了运算器通常都能够执行正运算及逆运算的特性, 同时, 利用了这样一 个原理, 若待测运算器是合格 / 正常的运算器, 则经过正运算及逆运算之后, 其运算结果将 是输入数据, 即第一输入单元。
41、12或者第二输入单元13所提供的测试数据, 则将该运算结果 与预期结果 ( 此时预期结果为第一输入单元 12 或者第二输入单元 13 所提供的数据 ) 进行 比较, 若比较结果相同, 便可得出待测运算器合格 / 正常 ( 或者至少是通过本轮测试 ) 的测 试结果。 0095 在本实施例所提供的多种预期结果中, 均通过预期结果单元 15 根据其输入的数 据便可产生一定的预期结果, 从而不需要存储大量的预期结果, 节省了存储空间的开支。 同 时, 这些预期结果考虑了测试的特性, 能够实现测试的效果。 0096 请相应参考图 2, 其为本发明实施例的运算器测试系统的结构示意图, 在此, 将结 合图 。
42、2 对于所述运算器测试系统 1 作进一步介绍。 0097 在本实施例中, 所述控制单元 10 包括 : 0098 测试流程控制单元 101, 用以控制测试进程 ; 0099 步骤数记录单元 102, 用以记录步骤数 ; 0100 器件选择单元 103, 用以选择待测运算器 14 及其工作方式 ; 0101 第一数据选择单元 106, 用以选择数据提供单元 11 提供的数据 ; 说 明 书 CN 103513177 A 10 7/18 页 11 0102 第二数据选择单元 105, 用以选择第一输入单元 12、 第二输入单元 13 及预期结果 单元 14 各自接收的数据 ; 及 0103 数据转。
43、换控制器 104, 用以确定第一输入单元 12、 第二输入单元 13 及预期结果单 元 14 中的数据是否需要移位或者反相。 0104 所述运算器测试系统1还包括步骤计数器20以及存储器地址产生器21, 所述步骤 计数器 20 用以进行步骤计数, 所述存储器地址产生器 21 用以产生地址。 0105 优选的, 所述控制单元 10 可以由一个存有测试程序的存储器实现。上述各单元为 存储器中的区域。其中, 图 2 中控制单元 10 的竖向可以用来表示测试程序的行, 横向是具 体控制特定部件的位。其中测试流程控制单元 101、 步骤数记录单元 102 以及步骤计数器 20 共同作用决定存储器地址产生。
44、器 21 产生的地址 210, 从而决定测试程序的流向。 0106 具体的, 当测试流程控制单元101(只使用一位二进制数)为 “0” , 步骤数记录单元 102 为 “n1” 时, 此行测试程序被执行 n1 次 ( 比如每次预期结果单元 15 中的移位器 151 移 1 位 ), 直到步骤计数器 20 从 0 计数到 n1 时, 该步骤计数器 20 会通知存储器地址产生器 21 指向下一行测试程序。当测试流程控制单元 101( 只使用一位二进制数 ) 为 “1” , 步骤数记 录单元 102 为 “n2” 时, 存储器地址产生器 21 产生当前行地址之前 n2 行的地址 ( 即回跳 )。 0。
45、107 也可取消测试流程控制单元 101, 测试程序在执行当前行直到步骤数记录单元 102 中所含 n1 次执行完毕后, 执行下一行测试程序, 直到全部测试程序执行完毕。 0108 器件选择单元 103 可以使用待测运算器的操作码。如此, 在对待测运算器进行测 试的同时也测试了运算器的译码器。 0109 具体的, 当所述运算器测试系统 1 进行测试时, 包括如下步骤 : 0110 步骤 1 : 控制单元 10 控制测试开始 ; 0111 具体的, 可通过测试流程控制单元 101 控制测试的进行, 在此, 先控制运算器测试 系统 1 开始进行测试, 在此, 可通过一位二进制数予以实现, 例如,“。
46、1” 表示测试开始, 当然, 相应的, 可利用同一位二进制数表征测试结束, 例如, 该二进制位上的二进制数是 “0” 时, 表 征测试结束 / 结束状态。 0112 步骤2 : 数据提供单元11向所述第一输入单元12、 第二输入单元13及预期结果单 元 15 提供数据 ; 0113 具体的, 首先, 数据提供单元11中存储有多个数据(即可以向第一输入单元12、 第 二输入单元 13 及预期结果单元 14 提供多个数据 ), 因此, 可先通过第一数据选择单元 106 从该多个数据 ( 图 2 中通过标记 “A” 、“B” 、“C” 及 “G” 予以表示本实施例中数据提供单元 11 可提供的四个数。
47、据, 同时, 可相应参考前文对该四个数据的描述 ) 中选择一个或者多个 提供。 0114 步骤 3 : 所述第一输入单元 12 及第二输入单元 13 向待测运算器 14 提供测试数 据 ; 0115 具体的, 在本发明一实施例中, 所述第一输入单元12及第二输入单元13接收了数 据提供单元 11 提供的数据之后, 将其得到的数据作为测试数据向待测运算器 14 提供。 0116 在此, 首先, 所述第一输入单元 12 中设置有移位 / 反相器 121, 所述第二输入单元 13 中设置有移位 / 反相器 131, 对于从数据提供单元 11 中得到的数据, 在所述数据转换控 制器 104 的控制下,。
48、 所述第一输入单元 12 及第二输入单元 13 均可选择是输出原数据作为 说 明 书 CN 103513177 A 11 8/18 页 12 测试数据还是输出反相 / 移位数据 ( 所述反相数据指原数据的相反数据, 例如, 原数据为 “0001” , 则反相数据即为 “1110” ; 所述移位数据指原数据经过移位后的数据, 例如, 原数据 为 “0001” , 则移一位的数据即为 “0010” , 移两位的数据即为 “0100” 。 )作为测试数据, 由此, 进一步增加了测试数据的数据源的容量, 进而提高测试的覆盖率。其中, 优选的, 移位 / 反 相器 121 与移位 / 反相器 131 可。
49、以是单纯的反相器, 移位功能全由预期结果单元 15 中的移 位器 151 执行, 如此, 可进一步节省器件的开支, 降低运算器测试系统 1 的成本。 0117 其次, 在本发明的实施例中, 所述第一输入单元 12 及第二输入单元 13 不仅可以 得到来自数据提供单元 11 的数据, 其相互之间还可以提供数据, 同时, 预期结果单元 15 还 可以向所述第一输入单元 12 及第二输入单元 13 提供数据。同时, 在如此多的数据提供源 下, 可通过第二数据选择单元 105 选择第一输入单元 12 及第二输入单元 13 各自接收的数 据, 即第一输入单元 12 是选择数据提供单元 11 提供的数据、 还是第二输入单元 13 提供的 数据、 亦或预期结果单元15提供的数据 ; 对于第二输入单元13, 所述第二数据选择单元105。