字体大小 [ ]    

  • 汇编语言全数字仿真(虚拟样机)平台工具CRESTS/ATAT

        CRESTS/ATAT为汇编语言的测试提供了有效的,统一的协作平台。在同一个平台下实现了汇编语言程序模拟运行、代码调试、代码分析、代码测试、外部事件仿真、CPU场景配置及报告生成。CRESTS/ATAT即严格区别了测试与调试工作,又有效的结合了测试与调试的能力,使统一平台环境能够发挥更强大的功能;规范了汇编语言的测试流程,有效的排除了以前测试过程的随机性,不确定性,不可重现性。从而使测试人员高效,有序的针对汇编语言本身进行测试工作。
        
         CRESTS/ATAT的端口I/O与中断事件产生的自编程模拟功能,从而使得被测汇编程序在CRESTS/ATAT模拟运行环境下,尽管存在大量的端口数据I/O与中断事件产生的要求,也能够与真实硬件环境一样连续不中断地运行。在设计初期,在真正的硬件制造出来之前,或设计要进行变化,以及进行维护等,这一点非常重要。最重要的是,CRESTS/ATAT的端口I/O与中断事件产生的自编程模拟功能很好地解决了汇编程序在模拟运行环境下的闭环测试问题。CRESTS/ATAT的CPU上下文场景的自编程配置能力解决了对汇编程序进行单元测试的需求,用户可工具单元测试的要求,灵活方便地对CPU上下文场景进行配置,形成汇编程序单元执行的驱动。
        
         被测汇编程序的测试用例完全可以用TCL脚本语言编写和管理,CRESTS/ATAT端口I/O与中断事件产生的自编程模拟功能以及CRESTS/ATAT的CPU上下文场景的自编程配置能力为用户提供了“黑盒”测试及单元测试的手段。因此,CRESTS/ATAT是一个功能强大、覆盖范围广的汇编测试分析软件,它包括运行调试、静态分析、“白盒”测试、“黑盒”测试以及单元测试等功能,完全满足开发阶段的内部测试和验收阶段的先期测试(或非现场测试)的要求,并能够为测试方、被测方及上级主管单位提供可以信赖和再现测试过程与测试问题的测试报告。目前,CRESTS/ATAT的运行环境为MS Windows。
        
         科锐时软件CRESTS/ATAT提供了如下功能:
        
         汇编程序模拟运行
        
         能够模拟所有指令的时序,并根据CPU主频调整指令周期时间,以达到实际目标机运行的实际时间效果。
        
         能够自动模拟定时中断(激发、响应、处理与返回),对于其它中断可通过以下 两种方法实现其模拟
        
         修改有关CPU专用寄存器的值来模拟中断激发事件达到中断处理的模拟
        
         运用TCL脚本语言编程来实现外部中断事件的模拟
        
         能够模拟端口的I/O,即:
        
         修改端口或端口寄存器的值来模拟端口的输入
        
         运用TCL脚本语言编程来实现端口输入的模拟
        
         代码调试
        
         符号调试
        
         在631所汇编器确定的汇编格式的基础上,支持汇编程序的符号调试。
        
         对于Intel 8031/8051、8096/8098汇编程序以及DSP TMS320 C3X/C4X汇编程序要求在CRESTS/ATAT产品提供的汇编器下汇编,从而支持其汇编程序的符号调试。
        
         对其它汇编格式我们能够进行适配和定制。
        
         CPU上下文场景修改
        
         在调试界面上交互地修改CPU有关寄存器
        
         运用TCL脚本语言编程来批处理修改CPU有关寄存器
        
         存储管理
        
         代码、数据、寄存器内容观察与修改
        
         支持机器指令的反汇编
        
         支持Intel 8031/8051、8096/8098模拟运行中的小汇编
        
         支持代码区机器码的修改
        
         支持专用与通用寄存器内容的观察、修改与操作
        
         支持数据区内容的观察与修改(支持基本数据类型)
        
         支持指令执行的跟踪(保留执行的历史记录)
        
         运用TCL脚本语言编程来批处理监视和修改CPU有关存储
        
         断点管理
        
         支持断点设置、清除、列表等功能,整个操作采用菜单、对话框、鼠标点击等方式
        
         运行功能
        
         支持step in、step over与step out等单步
        
         支持代码连续运行
        
         支持程序运行的强行中断
        
         代码分析
        
         支持汇编各子程序控制流图的生成与显示
        
         支持汇编各子程序控制流轮廓图的生成与显示
        
         支持汇编各子程序调用树的生成与图形显示
        
         支持汇编各子程序被调用树的生成与图形显示
        
         支持危害性递归的图形警告
        
         提供McCabe的圈复杂度,程序跳转数,程序扇入/扇出数、程序注释率、程序调用深度,程序长度,程序体积,程序调用及被调用描述等度量元
        
         给出影响汇编程序结构化的警告信息
        
         给出程序调用与被调用信息
        
         代码测试
        
         支持语句、分支和调用的覆盖测试
        
         支持覆盖率的统计并生成具有对比特性的图形化文件及图形化显示。
        
         给出各汇编代码程序运行的时间特性与运行效率
        
         测试报告生成
        
         生成类似Logiscope的超文本(包括静态分析和动态测试结果与统计等信息与链接)的测试报告。