资料介绍
本文介绍一种ADSP-2106x DSPs (数字信号处理器, Digital Signal Processors)的软件仿真器(ADSPSim)。在此仿真器构架过程中,面向对象仿真技术的使用大大改善了软件的模块化、可重用性和灵活性,更加体现了软件仿真器在实现软硬件协同设计开发和早期测试过程中的优势。
1 引言
DSPs(数字信号处理器)在航空航天工程等领域已得到广泛应用,为实现早期测试,仿真器的使用提供了建立嵌入式系统软硬件协同测试环境的可能。仿真器可分为软件仿真器(Simulator)和硬件仿真器 (Emulator)两类,而软件仿真器比较硬件仿真器有着不可替代的优势:
(1) 开发人员能在获得实际硬件原型前,能快速评价目标机软、硬件特性,实现硬件和软件并行设计开发,并缩短嵌入式软件的开发周期,尽早发现软件中的缺陷,降低开发成本;
(2) 软件仿真器具有高度的灵活性,可独立对CPU进行深入分析,或可用于对整个系统进行建模。还可轻松地进行重新配置,可与各种存储器或外设相集成。这样就可以对整个嵌入式系统的正确性进行验证。
(3) 由于软件仿真器能够反复地运行相同的仿真过程,便于在对软件进行调试、测试过程中,控制与分析应用程序运行及仿真环境的状态,并可以采集到大量的调试数据。
软件仿真器一般都是在ISA(指令集体系结构)级对系统进行仿真的,本文也不例外,也就是所说的指令集仿真器。
指令集仿真器的实现方法有两大类:一类是解释型指令集仿真器,将应用程序装载入仿真的存储器中,在运行时模拟“取指(fetch)-译码(decode)-执行(execute)”的流水对每条目标指令进行解释,将结果存入仿真的寄存器或存储器中。另一类是编译型指令集仿真器,又可细分为基于静态编译与基于动态编译两类,其原理是将目标机的指令直接翻译为能实现相应功能的宿主机上的指令/指令块,翻译在编译时实现为基于静态编译的指令仿真器,在装载时才实现为基于动态编译的指令仿真器。解释型指令集仿真器仿真速度比较慢,但由于是对指令的逐条解释,可以提供对执行应用程序的很方便的控制;而编译指令集仿真器虽然有较高的仿真速度,但由于对源程序进行了反编译后又进行了优化,已经丢失了原来的用户程序与高级语言的对应关系。解释型指令集仿真器提供了调试运行仿真器的可能,更利于嵌入式软件测试,因此本文中的指令集仿真器的实现采用此类方式。
随着面向对象技术的成熟,仿真软件已经朝着可互操作性、可重用性、面向对象的趋势发展,面向对象仿真( Object-Oriented Simulation )已成为当前仿真研究领域最为活跃的研究方向之一。本文中的软件仿真器ADSPSim在构架上也采用了面向对象的仿真技术。
2 ADSP-2106x SHARC DSPs简介
ADSP-2106x是AD公司的第二代32位浮点数字信号处理器,AD称之为SHARC(Super Harvard Architecture Computer,超级哈佛结构体系结构计算机)。目前包括四种产品:ADSP-21060、ADSP-21061、ADSP-21062、ADSP-21065L。
2.1 ADSP-2106x体系结构概述
和冯诺伊曼结构不同,哈佛结构使用分离的数据和程序空间及分类的访问总线。而改进的超级哈佛结构的超级之处在于允许在程序存储器(PM)中同时存放数据和指令(可灵活配置)。再辅以独立划分的片内总线(分别用于PM和DM, 数据存储器)和指令高速缓存,很好地解决了在执行双数据存取的指令时,当需要从PM中读写数据而产生的使用PM数据总线的冲突。当第一次发生使用PM数据总线的冲突时,处理器会将指令存放在高速缓存中,当再次使用该指令时,处理器就可以一次性完成从高速缓存中取指令,从DM和PM同时取数据的并行操作。ADSP-2106x的详细体系结构如图1所示。
图1 ADSP-2106x 组成框图
2.2 ADSP-2106x指令系统概述
ADSP-2106x指令系统具有RISC(精简指令系统)指令长度一致、单周期执行时间、易于并行和流水线处理的特点,可以分为四大类:计算并存取指令,程序流控制指令,立即数寻址存取指令,及其它指令。又可按照操作码细分为24小类。值得指出的是,其中大多数指令包含指定计算操作的域。ADSP-2106x指令固定长度为48位,若包含计算操作域,则低0~22位固定为计算操作指令。详细指令集见附录A&B。
正是由于计算指令与存取或跳转指令可以合并在一条指令中译码执行,ADSP-2106x拥有一个高性能的计算内核,它可以在每个指令周期内完成三个计算,包括一次加法、一次减法、一次乘法,以及寄存器到存储器的存/取操作,或是程序流的改变操作。因此在60 MHz 的时钟速率下可以得到180 MFLOPS(每秒兆浮点操作次数)的性能。
1 引言
DSPs(数字信号处理器)在航空航天工程等领域已得到广泛应用,为实现早期测试,仿真器的使用提供了建立嵌入式系统软硬件协同测试环境的可能。仿真器可分为软件仿真器(Simulator)和硬件仿真器 (Emulator)两类,而软件仿真器比较硬件仿真器有着不可替代的优势:
(1) 开发人员能在获得实际硬件原型前,能快速评价目标机软、硬件特性,实现硬件和软件并行设计开发,并缩短嵌入式软件的开发周期,尽早发现软件中的缺陷,降低开发成本;
(2) 软件仿真器具有高度的灵活性,可独立对CPU进行深入分析,或可用于对整个系统进行建模。还可轻松地进行重新配置,可与各种存储器或外设相集成。这样就可以对整个嵌入式系统的正确性进行验证。
(3) 由于软件仿真器能够反复地运行相同的仿真过程,便于在对软件进行调试、测试过程中,控制与分析应用程序运行及仿真环境的状态,并可以采集到大量的调试数据。
软件仿真器一般都是在ISA(指令集体系结构)级对系统进行仿真的,本文也不例外,也就是所说的指令集仿真器。
指令集仿真器的实现方法有两大类:一类是解释型指令集仿真器,将应用程序装载入仿真的存储器中,在运行时模拟“取指(fetch)-译码(decode)-执行(execute)”的流水对每条目标指令进行解释,将结果存入仿真的寄存器或存储器中。另一类是编译型指令集仿真器,又可细分为基于静态编译与基于动态编译两类,其原理是将目标机的指令直接翻译为能实现相应功能的宿主机上的指令/指令块,翻译在编译时实现为基于静态编译的指令仿真器,在装载时才实现为基于动态编译的指令仿真器。解释型指令集仿真器仿真速度比较慢,但由于是对指令的逐条解释,可以提供对执行应用程序的很方便的控制;而编译指令集仿真器虽然有较高的仿真速度,但由于对源程序进行了反编译后又进行了优化,已经丢失了原来的用户程序与高级语言的对应关系。解释型指令集仿真器提供了调试运行仿真器的可能,更利于嵌入式软件测试,因此本文中的指令集仿真器的实现采用此类方式。
随着面向对象技术的成熟,仿真软件已经朝着可互操作性、可重用性、面向对象的趋势发展,面向对象仿真( Object-Oriented Simulation )已成为当前仿真研究领域最为活跃的研究方向之一。本文中的软件仿真器ADSPSim在构架上也采用了面向对象的仿真技术。
2 ADSP-2106x SHARC DSPs简介
ADSP-2106x是AD公司的第二代32位浮点数字信号处理器,AD称之为SHARC(Super Harvard Architecture Computer,超级哈佛结构体系结构计算机)。目前包括四种产品:ADSP-21060、ADSP-21061、ADSP-21062、ADSP-21065L。
2.1 ADSP-2106x体系结构概述
和冯诺伊曼结构不同,哈佛结构使用分离的数据和程序空间及分类的访问总线。而改进的超级哈佛结构的超级之处在于允许在程序存储器(PM)中同时存放数据和指令(可灵活配置)。再辅以独立划分的片内总线(分别用于PM和DM, 数据存储器)和指令高速缓存,很好地解决了在执行双数据存取的指令时,当需要从PM中读写数据而产生的使用PM数据总线的冲突。当第一次发生使用PM数据总线的冲突时,处理器会将指令存放在高速缓存中,当再次使用该指令时,处理器就可以一次性完成从高速缓存中取指令,从DM和PM同时取数据的并行操作。ADSP-2106x的详细体系结构如图1所示。
图1 ADSP-2106x 组成框图
2.2 ADSP-2106x指令系统概述
ADSP-2106x指令系统具有RISC(精简指令系统)指令长度一致、单周期执行时间、易于并行和流水线处理的特点,可以分为四大类:计算并存取指令,程序流控制指令,立即数寻址存取指令,及其它指令。又可按照操作码细分为24小类。值得指出的是,其中大多数指令包含指定计算操作的域。ADSP-2106x指令固定长度为48位,若包含计算操作域,则低0~22位固定为计算操作指令。详细指令集见附录A&B。
正是由于计算指令与存取或跳转指令可以合并在一条指令中译码执行,ADSP-2106x拥有一个高性能的计算内核,它可以在每个指令周期内完成三个计算,包括一次加法、一次减法、一次乘法,以及寄存器到存储器的存/取操作,或是程序流的改变操作。因此在60 MHz 的时钟速率下可以得到180 MFLOPS(每秒兆浮点操作次数)的性能。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- ADSP-2106x SHARC®用户手册
- EE-70:ADSP-2106x SPORT DTX引脚:不同SHARC之间是否存在潜在的MCM数据争用
- EE-280:ADSP-2106x SHARC®处理器上的在线闪存编程
- EE-42:ADSP-2106x上的C程序
- EE-47:ADSP-2106x链路端口-最大吞吐量
- EE-141:ADSP-2106x和ADSP-2116x系列DSP的C代码基准测试
- ADSP-SC58x/ADSP-2158x SHARC+处理器硬件参考(1.0版) 0次下载
- EE-45:使用ADSP-2106x/21020 EZ-ICE DBWIN实用程序
- ADSP-218x系列DSP的EZ-ICE串行仿真器产品简介
- EE-160:检查ADSP-21160链路端口与ADSP-2106x链路端口的向后兼容性
- EE-109:ADSP2106x:使用2106x SPORT作为定时器
- ADSP-2106x SHARC<sup>®</sup>用户手册
- EE-328: 将ADSP-2106x/2116x 的设计移植到ADSP-2126x/2136x/ 2137x SHARC®处理器系统
- ADSP2106X系列资料详解 4次下载
- ADSP-2106X SHARC DSPs软件仿真器的构架与
- fpga仿真器是什么?它有哪些优势? 1083次阅读
- fpga仿真器接口定义 885次阅读
- DPLink仿真器-好用的ARM仿真器推荐 1583次阅读
- 电池仿真器的功能和应用 3405次阅读
- 详解芯华章全新架构数字仿真器 1777次阅读
- 千兆级电路仿真器NanoSpice Giga实现比FastSPICE仿真器更快速度 2055次阅读
- 仿真器原理、功能、特性介绍 5244次阅读
- 米尔科技仿真器支持的芯片和CPU介绍 7514次阅读
- 米尔科技ULINKpro D 仿真器介绍 2536次阅读
- 单片机仿真器的介绍及应用 1742次阅读
- 什么是单片机仿真器_单片机仿真器有什么用_单片机仿真器怎么用 1.6w次阅读
- 单片机仿真器的工作原理解析 1.3w次阅读
- 基于单片机仿真器的设计详解 1443次阅读
- 单片机仿真器有什么用?单片机仿真器作用介绍 1.7w次阅读
- SHARC并行系统软件设计方法 1469次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1489次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 91次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 9次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 3次下载 | 免费
- 8基于单片机的红外风扇遥控
- 0.23 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30319次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多