1、一种通用数字电路仿真测试系统,其特征在于:该系统由用于 产生测试激励数据的数据源、按总线标准将激励数据映射为时序的总 线功能模块BFM及至少一个双路测试单元组成,所述双路测试单元由 分别与待测设计入端及出端连接的上路测试线路和下路测试线路构 成,其中
上路测试线路的组成是:将总线的信号时序映射为单位数据的入 端总线监视模块、根据入端总线监视模块输出的单位数据对待测设计 进行算法仿真以得到输出期望数据的处理单元、对输出期望数据进行 存储的存储单元、将待测设计出端的总线信号时序映射为单位数据的 出端总线监视模块、对存储单元的期望数据与出端总线监视模块的单 位数据进行比较的比较单元;
下路测试线路的组成是:将总线的信号时序映射为单位数据的入 端总线监视模块、根据入端总线监视模块输出的单位数据对待测设计 进行算法仿真以得到输出期望数据的处理单元、对输出期望数据进行 存储的存储单元、对存储单元的期望数据选择输出的调度单元、将调 度单元的输出数据映射为信号时序并送至待测设计出端总线的出端总 线功能模块。
2、一种通用数字电路仿真测试方法,其特征在于:首先由数据源 产生测试激励数据,再由总线功能模块BFM按总线标准将激励数据映 射为时序,然后对该时序进行与待测设计并行的上路测试和下路测 试;
所述上路测试包括下述步骤:
A1、由入端总线监视模块将总线的信号时序映射为单位数据;
A2、经处理单元根据入端总线监视模块输出的单位数据对待测设 计进行算法仿真以得到输出期望数据;
A3、将输出期望数据存储在存储单元;
A4、由比较单元对存储单元的期望数据与出端总线监视模块将待 测设计出端的总线信号时序映射的单位数据进行比较;
所述下路测试包括下述步骤:
B1、由入端总线监视模块将总线的信号时序映射为单位数据;
B2、经处理单元根据入端总线监视模块输出的单位数据对待测设 计进行算法仿真以得到输出期望数据;
B3、将输出期望数据存储在存储单元;
B4、由调度单元对存储单元的期望数据选择输出;
B5、由出端总线功能模块将调度单元的输出数据映射为信号时序 并送至待测设计出端总线。
技术领域\n本发明涉及通用数字电路设计的仿真测试。\n背景技术\n通常,集成电路的设计是将所要完成的逻辑需求映射成一些生产 所需的文件,如网表、版图等,对设计的仿真测试是在生产之前,利 用计算机对设计阶段的输出进行检查,即利用EDA(Electronic Design Automatic)工具软件模拟集成电路生产出来后在实际电路板上的使用 情况,这样可以有效地降低生产风险。目前在ASIC(专用集成电路 Application Specific Integrated Circuit)和FPGA(现场可编程逻 辑阵列Field Programmable Gate Array)的设计中,仿真测试已成为 整个设计的瓶颈问题。在复杂的ASIC和FPGA项目中仿真测试工作量 所占比例已经普遍达到或超过70%,且随着设计规模的增大,测试验 证的规模是以平方倍率增加的。\n现有技术中数字电路设计仿真测试的方法是首先要明确待测设计 DUT(Design Under Test)的功能列表、它所支持的数据流的格式、以 及DUT外部端口的时序。然后根据数据流的格式构建测试用的激励数 据;依据DUT功能列表对该激励数据进行电路输出的结果预期;同时 将激励数据按照端口时序从DUT数据流的入端引入DUT,最后采集DUT 数据流的出端,将输出结果与预期结果进行比较,从而达到测试验证 的目的。图1所示为采用上述方法的数字电路设计仿真测试系统的结 构原理,激励数据经总线功能模型1输入进DUT;同时对激励数据 依据DUT的功能进行算法处理,得到DUT的输出预期;总线功能模型2 采集DUT的输出,并将DUT的输出结果送给比较模块比较。\n上述现有技术存在的缺点是:\n一、测试代码中,处理模块与激励数据模块相关性强。如果激励 数据模块需要变动,则处理模块必须做相应变动,否则测试系统无法 继续运行。\n二、整个测试环境的可扩展性差。进行模块测试的测试代码无法 直接在芯片测试中复用;进行芯片测试的代码无法直接在系统测试中 复用;本系统测试的代码无法直接在另一个系统测试中复用。\n三、现有测试方法中,测试代码和DUT是一个整体,两者共同构 成一个可运行的仿真环境,脱离了具体电路,测试环境无法独立运 行。这样一来,测试代码本身的调试和DUT的调试难点全部集中在设 计后期的联调阶段,给整个设计带来很大的风险,且设计规模越大, 风险则越大。\n发明内容\n本发明的目的在于针对现有技术存在的不足,提供一种通用性 强、代码复用率和可扩展性高的通用数字电路仿真测试系统及测试方 法。\n为达到上述目的,本发明采用的技术方案是:一种通用数字电路 仿真测试系统,该系统由用于产生测试激励数据的数据源、按总线标准将激励数 据映射为时序的总线功能模块BFM(Bus Function Model)及至少一个双路测试单 元组成,所述双路测试单元由分别与待测设计入端及出端连接的上路 测试线路和下路测试线路构成,其中\n上路测试线路的组成是:将总线的信号时序映射为单位数据的入 端总线监视模块、根据入端总线监视模块输出的单位数据对待测设计 进行算法仿真以得到输出期望数据的处理单元、对输出期望数据进行 存储的存储单元、将待测设计出端的总线信号时序映射为单位数据的 出端总线监视模块、对存储单元的期望数据与出端总线监视模块的单 位数据进行比较的比较单元;\n下路测试线路的组成是:将总线的信号时序映射为单位数据的入 端总线监视模块、根据入端总线监视模块输出的单位数据对待测设计 进行算法仿真以得到输出期望数据的处理单元、对输出期望数据进行 存储的存储单元、对存储单元的期望数据选择输出的调度单元、将调 度单元的输出数据映射为信号时序并送至待测设计出端总线的出端总 线功能模块。\n上述仿真测试系统的测试方法是:首先由数据源产生测试激励数 据,再由总线功能模块BFM按总线标准将激励数据映射为时序,然后 对该时序进行与待测设计并行的上路测试和下路测试;\n所述上路测试包括下述步骤:\nA1、由入端总线监视模块将总线的信号时序映射为单位数据;\nA2、经处理单元根据入端总线监视模块输出的单位数据对待测设 计进行算法仿真以得到输出期望数据;\nA3、将输出期望数据存储在存储单元;\nA4、由比较单元对存储单元的期望数据与出端总线监视模块将待 测设计出端的总线信号时序映射的单位数据进行比较;\n所述下路测试包括下述步骤:\nB1、由入端总线监视模块将总线的信号时序映射为单位数据;\nB2、经处理单元根据入端总线监视模块输出的单位数据对待测设 计进行算法仿真以得到输出期望数据;\nB3、将输出期望数据存储在存储单元;\nB4、由调度单元对存储单元的期望数据选择输出;\nB5、由出端总线功能模块将调度单元的输出数据映射为信号时序并送 至待测设计出端总线。\n采用本发明方案,可带来如下优点:\n1、可使单元测试、集成测试、芯片测试和系统测试具有统一的测 试结构,便于不同级别之间的测试代码共享,加快测试进度,降低测 试风险。\n2、使得测试代码各模块之间的相关性减小,所有数据都通过总线 读写,相互隔离,便于大规模测试时的人员分工和代码联调、维护;\n3、总线监视模块与总线功能模块执行内容互为逆过程且互相检 查,提高代码的稳定性;\n4、由于采用双路结构,测试代码可以脱离待测设计,独立运行, 便于测试代码稳定。\n附图说明\n图1是现有技术中数字电路设计仿真测试系统结构原理图;\n图2是本发明仿真测试系统结构原理图;\n图3是本发明具体实施中的两级测试系统结构图。\n具体实施方式\n下面结合附图对本发明方案作进一步说明。\n参照图2,本发明的通用数字电路仿真测试系统由用于产生测试激 励数据的数据源、按总线标准将激励数据映射为时序的总线功能模块 BFM1及至少一个双路测试单元组成,所述双路测试单元由分别与待测 设计入端及出端连接的上路测试线路和下路测试线路构成,其中\n上路测试线路的组成是:将总线的信号时序映射为单位数据的入 端总线监视模块BMM1、根据入端总线监视模块输出的单位数据对待测 设计进行算法仿真以得到输出期望数据的处理单元、对输出期望数据 进行存储的存储单元、将待测设计出端的总线信号时序映射为单位数 据的出端总线监视模块BMM2、对存储单元的期望数据与出端总线监视 模块的单位数据进行比较的比较单元;\n下路测试线路的组成是:将总线的信号时序映射为单位数据的入 端总线监视模块BMM1、根据入端总线监视模块输出的单位数据对待测 设计进行算法仿真以得到输出期望数据的处理单元、对输出期望数据 进行存储的存储单元、对存储单元的期望数据选择输出的调度单元、 将调度单元的输出数据映射为信号时序并送至待测设计出端总线的出 端总线功能模块BFM2。\n上述仿真测试系统的测试方法是:首先由数据源产生测试激励数 据,再由总线功能模块BFM按总线标准将激励数据映射为时序,然后 对该时序进行与待测设计并行的上路测试和下路测试;\n所述上路测试包括下述步骤:\nA1、由入端总线监视模块将总线的信号时序映射为单位数据;\nA2、经处理单元根据入端总线监视模块输出的单位数据对待测设 计进行算法仿真以得到输出期望数据;\nA3、将输出期望数据存储在存储单元;\nA4、由比较单元对存储单元的期望数据与出端总线监视模块将待 测设计出端的总线信号时序映射的单位数据进行比较;\n所述下路测试包括下述步骤:\nB1、由入端总线监视模块将总线的信号时序映射为单位数据;\nB2、经处理单元根据入端总线监视模块输出的单位数据对待测设 计进行算法仿真以得到输出期望数据;\nB3、将输出期望数据存储在存储单元;\nB4、由调度单元对存储单元的期望数据选择输出;\nB5、由出端总线功能模块将调度单元的输出数据映射为信号时序 并送至待测设计出端总线。\n图3所示为包含两个双路测试单元的两级仿真测试系统。在实际的 电路设计中,一个系统往往由多个芯片组成,一个芯片又可能由多个 模块组成。这样一来,完整的仿真测试应包括单元测试、集成测试、 芯片测试、系统测试。单元测试即模块测试;集成测试是相关模块之 间的联合测试;芯片测试是对芯片中所有模块的联合测试;系统测试 是所有芯片的联合测试。\n在实际的电路设计中,各芯片之间、各模块之间的规模有时差异 很大。所以,模块和芯片的设计完成时间各不相同。比如,某系统由 DUT_U1和DUT_U2两个待测设计部分组成。数据包的流向是:先在 DUT_U1中处理结束,由DUT_U1将处理结果输出给DUT_U2,实际工作 中DUT_U2的设计可能先于DUT_U1完成,针对这类情况,即可采用图3 的仿真测试系统,该系统包括两个双路测试单元,将上级双路测试单 元中DUT_U1的输出作为下级双路测试单元中DUT_U2的输入。也就是 上级DUT的出端BMM2恰好是下级DUT入端的BMM2。由于本发明采用了 双路结构的测试单元,使得在没有DUT_U1的情况下,上级测试单元仍 可独立运行,并配合完成DUT_U2的测试,有效降低联合测试的高风 险。在双路结构中,两路之间互相检查,也便于测试代码的稳定和维 护。\n依此类推,通过多个双路测试单元的组合,可以进行各种单元测 试、集成测试、芯片测试和系统测试,代码复用率和测试系统的可扩 展性大大提高。
法律信息
- 2016-11-09
未缴年费专利权终止
IPC(主分类): H01L 21/66
专利号: ZL 02143017.9
申请日: 2002.09.11
授权公告日: 2006.01.04
- 2006-01-04
- 2004-05-26
- 2004-03-17
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 1 | | 2006-09-14 | 2006-09-14 | | |
2 | | 2006-03-01 | 2006-03-01 | | |