位置:51电子网 » 技术资料 » 嵌入式系统

用RTL测试平台验证事务级IP模型

发布时间:2008/5/27 0:00:00 访问次数:695

  在系统级芯片设计中,设计验证是一项十分重要的工作。传统的验证方法虽然比较简单,但对设计工程师要求很高,而且验证时间过长。本文介绍开放式设计和验证语言systemc,通过该语言可实现rtl测试平台的复用,降低验证成本,缩短验证时间。

  由于缺乏可靠的结构评估方法和软、硬件协同验证方法,系统结构设计工程师在设计系统级芯片(soc)时,工作受到了一定的阻碍。值得庆幸的是,systemc这种标准的用c++开发的资源开放式设计和验证语言,为研究不同的系统结构,进行算法评估,软、硬件任务划分和软件开发提供了有效的方法。

  systemc之所以能实现这些功能,原因就在于它简化了事务级模型(transactionlevelmodel,tlm)的开发。与寄存器传输级(rtl)模型比较而言,tlm属于系统硬件组件在更高级别上的抽象。rtl模型中包含了比tlm模型更多的细节信息(如单独的时钟周期等),而tlm则在结构级的组件上交换数据或执行事件。简言之,tlm所针对的应用是开发和验证那些依赖于硬件的系统软件部分。

tlm优于rtl模型的地方包括:

1.tlm比rtl更容易开发,需要消耗的人工时间也较少,并且仿真速度也比rtl模型快1万到10万倍;

  2.tlm仿真所需耗费的时间只在秒级和分钟级,而rtl则需耗费几小时甚至几天的时间。因此,在一个tlm级的ip模块上可以真正运行软件,而rtlip则速度过慢,即使在一个指令级仿真器中也无法执行代码。同时,soc的设计方法学要求将过去设计的知识产权(ip)在更高的抽象级别上表现出来,从这个角度来看,tlm也是很有用的。

  如果工程师们能够利用现有的rtl测试平台来验证tlm,那么还能进一步缩短tlm的验证时间。事实上,soc设计验证时间占据了整个产品开发过程的60%到70%,而且也是一次性工程成本中的重要组成部分。所谓一次性工程成本,包括开发测试平台所需的人工时间加上所有其他验证工具所需的时间。

  此外,如果验证一个基于tlm的ip模块时所采用的测试平台也曾用来验证过该模块的rtl模型,那么设计工程师们也就更容易对该模块产生信心。这种信心又会促进tlm在设计流程中的应用,从而帮助缩短早期soc设计和其后的rtl设计之间的差距。今后,在重新利用rtl测试平台来验证tlm模块这个领域内,研究重点将放在如何使该过程全面自动执行,以及如何将自动检错功能包含进来。

  有几种工具可用来缩短验证hdl模型所需的时间,其中包括verisitydesign公司的specmanelite、designsystems公司的开放式源码程序testbuilder以及synopsys公司的vera。然而就像开放式systemc验证库最初所经历的一样,针对systemc设计的验证工具也才刚刚起步,还需要一段时间才能成熟,这也使rtl测试平台的重用问题更加引人瞩目。

传统的验证方法

  在不同的hdl专用工具间可能会存在差异,但除此以外,传统的设计验证方法无非都是将设计与一个激励生成器和检测器连接起来达到验证的目的。其中,激励生成器用于启动线程,向设计中写入信号,而检测器则用于验证系统的响应。此外,在激励生成器实现文件的顶部所声明的事件结构用于综合不同的线程(见图1)。

  这种验证方法的好处在于:开发与验证所用的是同一种语言,因此学习过程较为简单;小型的专用测试程序较易编写;并且无需额外的验证工具,这也降低了成本。而且,测试平台开发成功之后,尽管比较简单,仍然可以用作真实系统软件的例子,让嵌入式软件设计工程师在起步时从中获益。这种验证方法的缺点在于,要编写这种测试平台使其能够作为最终软件的基础,需要设计工程师全面了解整个系统的工作原理。

  想要为较重要的ip模块开发出详尽的测试平台必须付出大量的努力、时间和金钱,而且,即便如此,也很难知道开发出的测试平台是否能够全面地测试一个模块。采用硬件验证工具(如specman、testbuilder和vera)可以使部分验证过程自动执行,但并不意味着设计工程师可以少作努力,设计成本也依然高昂。

  还有一种验证方法,即编写一种叫做集成测试平台的软件,以实现在整个系统中检测ip。这种方法要求所有的ip模型均为可用,但它有一个好处,那就是ip可以在全系统的上下文环境下进行验证,从而保证了模块能够确实按照设计的要求工作。

  这些技术在开发类似tlm的ip模型时都是必须的。但如果采用验证rtl时所使用的测试平台来验证tlm模块,那么还能进一步节省验证时间。这种测试平台的“复用”通常发生在设计流程的rtl到布线阶段。

  一般而言,某一抽象级别上的测试平台可以用来验证较低抽象级别的ip模型(这就是所谓的自上向下兼容性),反之则不行。然而事实上,在重用rtl测试平台来验证tlm级ip时所采用的正是与之相反的自下向上兼容的测试平台。

  在验证ip之前,设计工程师必须清楚这个ip是如何使用的,并应知道一个高质量的测试应包含些什么内容。也就是说,高质量的测试应该充分全面。从这个角度上

  在系统级芯片设计中,设计验证是一项十分重要的工作。传统的验证方法虽然比较简单,但对设计工程师要求很高,而且验证时间过长。本文介绍开放式设计和验证语言systemc,通过该语言可实现rtl测试平台的复用,降低验证成本,缩短验证时间。

  由于缺乏可靠的结构评估方法和软、硬件协同验证方法,系统结构设计工程师在设计系统级芯片(soc)时,工作受到了一定的阻碍。值得庆幸的是,systemc这种标准的用c++开发的资源开放式设计和验证语言,为研究不同的系统结构,进行算法评估,软、硬件任务划分和软件开发提供了有效的方法。

  systemc之所以能实现这些功能,原因就在于它简化了事务级模型(transactionlevelmodel,tlm)的开发。与寄存器传输级(rtl)模型比较而言,tlm属于系统硬件组件在更高级别上的抽象。rtl模型中包含了比tlm模型更多的细节信息(如单独的时钟周期等),而tlm则在结构级的组件上交换数据或执行事件。简言之,tlm所针对的应用是开发和验证那些依赖于硬件的系统软件部分。

tlm优于rtl模型的地方包括:

1.tlm比rtl更容易开发,需要消耗的人工时间也较少,并且仿真速度也比rtl模型快1万到10万倍;

  2.tlm仿真所需耗费的时间只在秒级和分钟级,而rtl则需耗费几小时甚至几天的时间。因此,在一个tlm级的ip模块上可以真正运行软件,而rtlip则速度过慢,即使在一个指令级仿真器中也无法执行代码。同时,soc的设计方法学要求将过去设计的知识产权(ip)在更高的抽象级别上表现出来,从这个角度来看,tlm也是很有用的。

  如果工程师们能够利用现有的rtl测试平台来验证tlm,那么还能进一步缩短tlm的验证时间。事实上,soc设计验证时间占据了整个产品开发过程的60%到70%,而且也是一次性工程成本中的重要组成部分。所谓一次性工程成本,包括开发测试平台所需的人工时间加上所有其他验证工具所需的时间。

  此外,如果验证一个基于tlm的ip模块时所采用的测试平台也曾用来验证过该模块的rtl模型,那么设计工程师们也就更容易对该模块产生信心。这种信心又会促进tlm在设计流程中的应用,从而帮助缩短早期soc设计和其后的rtl设计之间的差距。今后,在重新利用rtl测试平台来验证tlm模块这个领域内,研究重点将放在如何使该过程全面自动执行,以及如何将自动检错功能包含进来。

  有几种工具可用来缩短验证hdl模型所需的时间,其中包括verisitydesign公司的specmanelite、designsystems公司的开放式源码程序testbuilder以及synopsys公司的vera。然而就像开放式systemc验证库最初所经历的一样,针对systemc设计的验证工具也才刚刚起步,还需要一段时间才能成熟,这也使rtl测试平台的重用问题更加引人瞩目。

传统的验证方法

  在不同的hdl专用工具间可能会存在差异,但除此以外,传统的设计验证方法无非都是将设计与一个激励生成器和检测器连接起来达到验证的目的。其中,激励生成器用于启动线程,向设计中写入信号,而检测器则用于验证系统的响应。此外,在激励生成器实现文件的顶部所声明的事件结构用于综合不同的线程(见图1)。

  这种验证方法的好处在于:开发与验证所用的是同一种语言,因此学习过程较为简单;小型的专用测试程序较易编写;并且无需额外的验证工具,这也降低了成本。而且,测试平台开发成功之后,尽管比较简单,仍然可以用作真实系统软件的例子,让嵌入式软件设计工程师在起步时从中获益。这种验证方法的缺点在于,要编写这种测试平台使其能够作为最终软件的基础,需要设计工程师全面了解整个系统的工作原理。

  想要为较重要的ip模块开发出详尽的测试平台必须付出大量的努力、时间和金钱,而且,即便如此,也很难知道开发出的测试平台是否能够全面地测试一个模块。采用硬件验证工具(如specman、testbuilder和vera)可以使部分验证过程自动执行,但并不意味着设计工程师可以少作努力,设计成本也依然高昂。

  还有一种验证方法,即编写一种叫做集成测试平台的软件,以实现在整个系统中检测ip。这种方法要求所有的ip模型均为可用,但它有一个好处,那就是ip可以在全系统的上下文环境下进行验证,从而保证了模块能够确实按照设计的要求工作。

  这些技术在开发类似tlm的ip模型时都是必须的。但如果采用验证rtl时所使用的测试平台来验证tlm模块,那么还能进一步节省验证时间。这种测试平台的“复用”通常发生在设计流程的rtl到布线阶段。

  一般而言,某一抽象级别上的测试平台可以用来验证较低抽象级别的ip模型(这就是所谓的自上向下兼容性),反之则不行。然而事实上,在重用rtl测试平台来验证tlm级ip时所采用的正是与之相反的自下向上兼容的测试平台。

  在验证ip之前,设计工程师必须清楚这个ip是如何使用的,并应知道一个高质量的测试应包含些什么内容。也就是说,高质量的测试应该充分全面。从这个角度上

相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!