新闻中心

EEPW首页 > 测试测量 > 设计应用 > 通过高级C模型验证管理设计的复杂性

通过高级C模型验证管理设计的复杂性

作者:■ Mentor Graphics公司 SoC 验证部 Mike Andrews时间:2005-04-27来源:eaw收藏

设计复杂性的增加,以及产品生命周期的缩短和竞争态势的加强,将嵌入式设计技术不断推向极限。复杂设计包含更多器件以及更强的互操作性,因此需要更多仿真、更高吞吐量以及更好的综合测试。为解决复杂性问题,在设计过程中,设计团队需要另外一套方法,以减少系统验证运行时间,及早进行验证。一种策略是通过C或HDL编写的高级行为模型来提高建模抽象的级别。

本文引用地址:http://www.eepw.com.cn/article/5366.htm

用抽象的C模型方法,建立的结构化开发
在系统抽象的较高级,结构化决策很少需要考虑细节。因此,抽象的C模型很少需要详细的功能性。这些高级C模型可以快速建立,并比传统的RTL模型仿真更快。原来用RTL花费数月时间编写的模型用高级C模型建立只需要几周。
高级模型的速度和相对简单性允许工程师在设计过程的早期阶段就可以进行更全面的验证。设计流程的更改在该阶段不仅可以及早实施,降低成本,而且早些完成这些工作能降低风险、提高设计产出、增强设计性能的可靠性。早期验证和分析还减少了工程师必须用在调试复杂问题的时间。
一种动态参数化的C模型环境使在仿真期间可以修改设计特性,进一步突出了早期验证的优点。仿真运行不需要编辑、重编译、重连接和重载模型。例如,利用这一性能特点,用户可以根据算法第一次通过的结果,进行设计修改的仿真。重复这样做,仿真会自动收敛于一特定的设计要求。
利用高速仿真的优点、简化的模型建立及动态参数化,可以使设计者研究各种设计选择,验证功能性,在设计过程中及早优化系统性能。高级系统模型的建立也可同时由硬件和软件团队使用。例如,硬件工程师可以在早期向软件组提供硬件观点的确切表达。这样,从整体效果上增加了协同验证的机会,并减少了验证运行时间。
 由于高级C模型的效率,工程师可以用更多的时间改进其设计。功能性、性能和设计差异性会大大增强优化体系结构的潜力。抽象化C模型允许工程师在设计流程中早些决定哪些产品创意值得追求,哪些不值得。
由于在高级抽象对行为进行了可行性测试,因而很少会发生错误,公司可以避免在不可行项目中投入大量的金钱、时间和精力。系统设计者甚至可以在现有设计进行的同时研究未来设计的可能性。例如,路由器总线和存储架构的优化。一旦高层体系结构建立,作为基准,工程师可以开始功能块集成测试。利用这种抽象观点,除作为独立单元测试外,一个或多个RTL块可以在整个系统中关联验证。这样可以使多功能块的集成测试更快。

利用“无缝C桥”优化总线判决
“无缝C桥”协同验证环境是实现这种快速抽象建模的一种工具。另外,“无缝V5”版本包含一新的性能分析特性。通过精确的记录与显示信息,如总线利用与判决延迟、代码描述、存储器用法等,工程师可以很好地了解设计的性能特性。结合基于C硬件建模的动态参数更改能力,性能分析使设计研究明显地更具效率。
“无缝V5”提供了设计变更效果的即时反馈,得到了一个实用的、有竞争力的优点,设计组可以确定性能要求和满足要求的数据。
“无缝C桥”接口增加了无缝环境的灵活性,可以利用比基于RTL工具更高级的抽象模型和接口,在设计工作的早期进行协同验证。“无缝”可以使嵌入式代码以中的硬件方式运行;“C桥”允许硬件通过事务级连接成为抽象的C模型。“无缝”协同验证环境处理器支持包(PSP)可由ARM处理器系列,包括ARM7,ARM9,ARM10及ARM 11系列处理器提供。这些模型可直接插入设计环境,不需要重建接口及环境。
“C桥”技术可以混合和匹配编写于不同抽象级的C和HDL模型。由于它们从严格运行的抽象C模型转移到更详细的实现中,工程师们可以用简单取代RTL的特定C模型运行系统仿真。这允许在单一环境内,从高级C建模环境到更详细的RTL实现进行逐步转换。随着转换增加,测试版可保存复用。图1为用闪存卡作图像存储器的简单图像显示器的框图。
该设计全部用C语言建模,其处理器采用系统C测试版建模,其他所有块作为C桥事务级模型编写。对于这样一个简单设计,所有C模型几周之内就可建立完成,而如果用纯粹的RTL设计编写,将会用数月时间才能完成。除通过降低模型复杂度节省了时间外,在C桥设计中,地址解码及总线协议处理等工作也得以简化甚至消除。
用户接口控制存储在闪存中的各种图像的打印。直接存储器存取控制器(DMAC)对移出CF卡和进入RAM的数据进行管理。当图像需要显示时,DMAC程序启动,将图像数据传到RAM中,一旦DMAC处理开始,ARM嵌入式代码就访问RAM,取出图像数据。将数据处理、打包成图像阅读器能识别的格式后,ARM微处理器发送像素颜色和坐标数据到阅读器屏幕。
这个简单模型仿真的最初用途是查看在附加定时信息,如加入等待状态后,系统的功能是否还正常。“无缝C桥”工具的调试与分析能力用于验证功能,以及用于为达到优化功能设计的设计参数试验,特别是改善此情况下的总线判决方案。该例中,“无缝”工具发现设计不能正确实现功能,因为只有图像的第一行打印正确。“无缝V5”总线负载图揭示了问题出在DMAC传输上(见图2)。
图2显示DMAC占用总线时间超过75%(图2中,DMAC是“其他”),因此图形显示程序已经优化,使每次总线存取时装载尽可能多的数据。这表示总线判决方案不允许DMAC控制器足够快地从闪存中取出图像数据送到S-RAM中、放在图像显示程序前。当此发生时,就会形成局部图像。DMAC需要保证总线有足够多的周期。“无缝C桥”应用可以用于解决动态改善总线判决方案问题。
采用具有扩展控制功能的工具与抽象模型一起工作,可以更容易、高效地研究各种可能性和设想。由于采用C桥模型,有些特性可以通过发指令到判决器模型使其动态改变。在抽象建模级实施,可以极大简化,不需要进入RTL设计中,给很多管脚赋特殊值,工程师简单发个指令让高速判决器按不同方式动作即可。通过改变判决器的参数,DMAC在ARM926接回总线控制之前允许保持总线最小周期数。该值在1~16间可变。最保险的做法是将初始值设在最大值16,看是否可以解决显示问题。即使能够解决,由于DMAC占用了太多总线,也会引起图像显示刷新太慢的问题。
在这种抽象级,基于“无缝V5”(见图3)性能分析能力中提到的,用户可以用其他值快速试验。在判决延迟方面,0~10ms期间代表显示图像的初始试验。没有看到判决延迟影响CPU,图像也没有正确显示。下一期间从10~20ms,显示了最大值用于判决器参数时的图像显示过程。可以看到一个大的判决延迟峰值引起图像运算明显减慢。最后一段,20~30ms之间,显示参数降到4的情况,引起判决延时成比例降低,图像也类似减慢。这些效果的视觉显示,可以得到某一特定设计选择结果的即时反馈,而不需要扫描一个长文本的输出文件。
由于这一过程的速度,其他值可以逐一试验,以得到最适合的总线判决方案。所有这些都可以实现,因为验证改善优化是动态实现的,在同一环境中,以高吞吐量运行。原来在RTL方式下花费数小时的一个进程,不包括改进和再汇编时间,现在仿真一次只需要5到10分钟。

结语
通过C建模提高抽象级,是解决嵌入式系统设计复杂性增加问题的一种新型设计方法,“无缝C桥”技术使设计者在设计过程早期实现高仿真速度验证功能和分析系统性能。快速、抽象建模和“无缝”性能分析引擎减少了总体校验时间,同时,有利于创造最佳设计。“无缝”协同验证环境也使块级和系统级的综合测试提前。总之,这一方法降低了风险,增加了设计产出量,提高了复杂的多成分系统的设计可靠性。由于明导公司和ARM的成功合作,“无缝C桥”方案特别适用于包含ARM微处理器核的设计。■ (李砚泉译)



关键词: 嵌入式系统

评论


相关推荐

技术专区

关闭