资料介绍
当前,数字信号处理器(DSP)芯片以其强大的运算能力在通信、电子、图像处理等各个领域得到了广泛的应用。使用DSP的系统可以按处理器使用的数目分为单处理器系统和多处理器系统。单DSP的系统尽管结构简单,但系统的功能将不可避免地有所限制。由于DSP的控制功能不是非常强大,在应用中往往不得不把DSP作为目标系统专门负责复杂的运算,而另外使用一个主机(PC机或是单片机)对整个系统的运行实行控制。所以,在使用DSP的多处理器系统中,主机(单片机、PC机、另一个DSP芯片)与目标系统 DSP的数据交换就成为应用系统设计中必须考虑的重要问题。
1 主机接口的传统解决方案
解决主机与目标系统的数据交换是一个非常复杂的问题。传统的方式是采用 DMA(Direct Memory Access)或全局存储器(Global Memory)完成多机系统中的数据共享。在DMA方式下,读写共享内存必须要求其它处理器处于停止工作的状态,所以DMA共享存储器的方式往往不为人所用。全局存储器是多个处理器共享的存储器。在使用全局存储器的应用系统中,DSP的地址空间被分成局部块(Local Section)和全局块(Global Section)。局部块用于完成处理器自己的工作,而全局块则用来完成与其它处理器的通信工作。在TMS320C5X器件中,使用全局存储器分配寄存器GReg完成对全局内存的管理工作。GReg指定部分DSP内存为全局内存。比如,TMS320C5x器件能够分配全局数据内存空间,并通过BR(Bus Request)和 hcs控制信号实现与该内存的通信。当需要寻址全局内存空间时,BR和hcs信号变低电平。于是外部逻辑进行全局内存控制权的裁决,裁决的结果将通过选通信号通知某个TMS320C5x 从而使该DSP现在就拥有对全局内存的控制权。显然,使用全局内存的方式来完成多DSP的共享数据通信是非常方便的。但是,应用系统往往由单片机作为主机,DSP作为目标系统构成。由于当前使用最多的单片机往往是8位机,使用16位机的共享内存完成主机与DSP的数据交换不是处理太复杂就是资源利用不充分。为了解决DSP与低档 8位主机的数据交换问题,TI公司在TMS320C54x系列中使用了HPI接口。HPI将以往一些需片外实现的功能集成在片内,简化了与主机的连接,同时主机可以达到很高的访问速度。该HPI端口在TI TMS320C6x系列的器件中也得到了保持,且功能有所增强。
TI TMS320C6x系列的器件中也得到了保持,且功能有所增强。
2 TMS320VC5402的HPI
TMS320VC5402是TI公司的54X系列定点DSP,具有低功耗、高性能的特点。
CPU 增强的多总线结构,三条独立的16bit数据存储器总线和一条程序存储器总线;40bit运算逻辑单元(ALU),包括一个40bit的桶形移位器和两个独立的40bit累加器,17bit×17bit并行乘法器连接一个40bit的专用加法器,可用来进行非流水单周期乘/加(MAC)运算;比较、选择和存储单元(CSSU)用于Viterbi运算器的加/比较选择指数编码器在一个周期里计算一个40bit累加器的指数值两个地址发生器中有八个辅助寄存器和两个辅助寄存器运算单元(ARAUs)数据总线具有总线保持特性。
存储器 扩展地址模式可最大寻址到1M×16bit外部程序空间,4K×16bit片上ROM,16K×16bit双访问片上RAM。
指令集 支持单指令循环和块循环,存储块移动指令提供了高效的程序和数据存储器管理,支持32bit长字操作数指令,支持两个或三个操作数读指令,支持并行存储和并行加载的算术指令、条件存储指令和中断快速返回,支持定点DSP C语言编译器。
片上硬件资源 软件可编程等待状态发生器和可编程存储单元转换,连接内部振荡器或外部时钟源的锁相环(PLL)时钟发生器,两个多通道缓冲串口(McBSPs),增强型8bit并行主机接口(HPI8),两个16bit定时器,6通道直接存储器访问(DMA)控制器。
电源 低功耗,工作电源有3.3V和1.8V(内核),用节电模式的IDLE1、IDLE2及IDLE3指令做功率控制,可禁止CLKOUT信号。
速度 在3.3V供电(1.8V核心电压)下单周期定点指令的执行周期为10ns(100MIPS)。
仿真 符合IEEE1149.1边界扫描逻辑标准的片内扫描仿真逻辑接口。
TMS320C54x系列DSP芯片中的HPI,能够顺序传送或随机传送数据,产生HOST中断和C54x中断,接口灵活,并可通过DMA总线访问片内RAM。当TMS320 C54X与主机(或主设备)交换信息时,HPI是主机的一个外围设备。HPI有8根数据线HD(0~7),在TMS320C54x与HOST传送数据时,HPI能自动将外部接口传来的连续数据组合成16位数后传送给DSP。如果HOST和DSP竞争同一个地址,则HOST优先,DSP等待一个HPI周期。
TMS320C54x系列发展到TMS320VC5402的时候,其HPI已经得到了增强,被称为HPI-8。和TMS320C54x系列前几款芯片中的标准HPI相比,HPI-8在几个方面有所不同,见表1。
表1 HPI-8和标准HPI的主要差别
增强型HPI(HPI-8) 标准HPI
可访问所有片内RAM空间 可访问所有片内2K的RAM空间
HOST访问总是与TMS32054x时钟同步 HOST-Only模式下HOST访问与TMS320C54x时钟同步
HOST和TMS320C54x都可访问片内RAM HOST-Only模式,HOST具有独占的访问权
HPI-8的使用是通过对HPIA、HPIC和HPID三个寄存器赋值实现的。HPIA是地址寄存器,HPIC是控制寄存器,而HPID是数据寄存器。简单地说,HOST通过外部引脚HCNTL0和HCNTL1选中不同的寄存器,则当前发送的8位数据就送到该寄存器。在使用上,由于HPIC是16位寄存器,而HPI-8是8位的数据宽度,所以在HOST向HPIC写数据时,需要发送两个一样的8位数据。而地址寄存器HPIA选择后,直接向它写数据就可以了,但是要注意MSB和LSB的顺序。另外,HPIA具有自动增长的功能,在每写入一个数据前和每写入一个数据后,HPIA会自动加1。这样,如果使能了该功能,只需设定一次HPIA即可实现连续数据块的写入和读出。数据寄存器HPID,严格说应该叫做数据缓冲寄存器,因为最终数据是要写到片内RAM的。只是在实现上,数据首先从HOST发到HPID中,然后根据HPIA指定的地址,HPID中的数据再写到片内RAM的地址中。不过对用户而言,该过程是透明的。
3 使用HPI对DSP进行自举
HPI是作为多机数据交换而出现的,但是由于其功能特性,又产生了一种新的应用--使用HPI对DSP进行自举。实际上,TMS320VC5x系列DSP在片内固化的Bootloader程序中对HPI自举提供了全面的支持。笔者在VOIP系统的开发中,实现了使用HPI对DSP TMS320VC5402的自举,从而省掉了DSP的EPROM,使DSP只使用SRAM,提高了处理速度,并使HOST CPU具有更大的控制权,很适合多处理器系统。对于计算机插卡式的DSP系统,程序可以从PC机的硬盘上获取,从而减小了插卡版面空间占用,提高了处理速度。
在实现上,需要解决以下几个问题。
3.1 DSP片内固化的Bootloader程序对HPI自举的支持
自举从本质上说就是在DSP启动后通过某种方式获取运行代码并开始运行,这个过程是在固化在DSP片内的Bootloader程序辅助下完成的。在DSP上电以后,Bootloader程序按照一定的顺序依次检验何种自举方式可用,自举方式包括HPI方式、Serial EEPROM方式、标准Serial Port方式、Parallel方式和I/O方式。
Bootloader查询HPI方式是否可用是这样进行的:在启动以后,DSP片内0x7f地址的值被置为0,Bootloader不断检验0x7f地址处是否出现了可用的程序指针的跳转地址。当其发现该地址内的值不为0时,即判定为DSP已由外部HOST CPU进行了HPI自举程序加载,并按照该值跳转PC指针,开始运行,从而完成HPI方式自举。
3.2 突破4K的空间限制
由于HPI-8的特性,HOST能够访问所有的片内RAM空间,对于TMS320VC5402来说,其片内RAM地址空间从0000H到3fffH,一共4K。这已经大大超过了标准HPI的2K的大小,但是对于大多数DSP应用程序来说,片内RAM除了放置程序代码以外,很可能还需要留出一部分供数据空间使用。实际上,大部分代码都可能放置在片外的程序空间,而这部分空间并不是HOST通过HPI-8所能够访问得到的。所以需要使用某种技术突破4K的片内RAM空间限制。由于DSP程序本身是能够访问到所有DSP程序、数据空间的,所以HOST可以首先放置一个体积不大于4K的程序到DSP内,再由该程序和HOST协作完成超出片内RAM的代码的放置工作。
一般将上述的首先放入DSP的程序称为kernel程序,其功能比较简单,本身不超过4K,可以由HOST全部放入到TMS320VC5402的片内RAM中,并被启动。
基于此种思路的流程图如图1所示。
1 主机接口的传统解决方案
解决主机与目标系统的数据交换是一个非常复杂的问题。传统的方式是采用 DMA(Direct Memory Access)或全局存储器(Global Memory)完成多机系统中的数据共享。在DMA方式下,读写共享内存必须要求其它处理器处于停止工作的状态,所以DMA共享存储器的方式往往不为人所用。全局存储器是多个处理器共享的存储器。在使用全局存储器的应用系统中,DSP的地址空间被分成局部块(Local Section)和全局块(Global Section)。局部块用于完成处理器自己的工作,而全局块则用来完成与其它处理器的通信工作。在TMS320C5X器件中,使用全局存储器分配寄存器GReg完成对全局内存的管理工作。GReg指定部分DSP内存为全局内存。比如,TMS320C5x器件能够分配全局数据内存空间,并通过BR(Bus Request)和 hcs控制信号实现与该内存的通信。当需要寻址全局内存空间时,BR和hcs信号变低电平。于是外部逻辑进行全局内存控制权的裁决,裁决的结果将通过选通信号通知某个TMS320C5x 从而使该DSP现在就拥有对全局内存的控制权。显然,使用全局内存的方式来完成多DSP的共享数据通信是非常方便的。但是,应用系统往往由单片机作为主机,DSP作为目标系统构成。由于当前使用最多的单片机往往是8位机,使用16位机的共享内存完成主机与DSP的数据交换不是处理太复杂就是资源利用不充分。为了解决DSP与低档 8位主机的数据交换问题,TI公司在TMS320C54x系列中使用了HPI接口。HPI将以往一些需片外实现的功能集成在片内,简化了与主机的连接,同时主机可以达到很高的访问速度。该HPI端口在TI TMS320C6x系列的器件中也得到了保持,且功能有所增强。
TI TMS320C6x系列的器件中也得到了保持,且功能有所增强。
2 TMS320VC5402的HPI
TMS320VC5402是TI公司的54X系列定点DSP,具有低功耗、高性能的特点。
CPU 增强的多总线结构,三条独立的16bit数据存储器总线和一条程序存储器总线;40bit运算逻辑单元(ALU),包括一个40bit的桶形移位器和两个独立的40bit累加器,17bit×17bit并行乘法器连接一个40bit的专用加法器,可用来进行非流水单周期乘/加(MAC)运算;比较、选择和存储单元(CSSU)用于Viterbi运算器的加/比较选择指数编码器在一个周期里计算一个40bit累加器的指数值两个地址发生器中有八个辅助寄存器和两个辅助寄存器运算单元(ARAUs)数据总线具有总线保持特性。
存储器 扩展地址模式可最大寻址到1M×16bit外部程序空间,4K×16bit片上ROM,16K×16bit双访问片上RAM。
指令集 支持单指令循环和块循环,存储块移动指令提供了高效的程序和数据存储器管理,支持32bit长字操作数指令,支持两个或三个操作数读指令,支持并行存储和并行加载的算术指令、条件存储指令和中断快速返回,支持定点DSP C语言编译器。
片上硬件资源 软件可编程等待状态发生器和可编程存储单元转换,连接内部振荡器或外部时钟源的锁相环(PLL)时钟发生器,两个多通道缓冲串口(McBSPs),增强型8bit并行主机接口(HPI8),两个16bit定时器,6通道直接存储器访问(DMA)控制器。
电源 低功耗,工作电源有3.3V和1.8V(内核),用节电模式的IDLE1、IDLE2及IDLE3指令做功率控制,可禁止CLKOUT信号。
速度 在3.3V供电(1.8V核心电压)下单周期定点指令的执行周期为10ns(100MIPS)。
仿真 符合IEEE1149.1边界扫描逻辑标准的片内扫描仿真逻辑接口。
TMS320C54x系列DSP芯片中的HPI,能够顺序传送或随机传送数据,产生HOST中断和C54x中断,接口灵活,并可通过DMA总线访问片内RAM。当TMS320 C54X与主机(或主设备)交换信息时,HPI是主机的一个外围设备。HPI有8根数据线HD(0~7),在TMS320C54x与HOST传送数据时,HPI能自动将外部接口传来的连续数据组合成16位数后传送给DSP。如果HOST和DSP竞争同一个地址,则HOST优先,DSP等待一个HPI周期。
TMS320C54x系列发展到TMS320VC5402的时候,其HPI已经得到了增强,被称为HPI-8。和TMS320C54x系列前几款芯片中的标准HPI相比,HPI-8在几个方面有所不同,见表1。
表1 HPI-8和标准HPI的主要差别
增强型HPI(HPI-8) 标准HPI
可访问所有片内RAM空间 可访问所有片内2K的RAM空间
HOST访问总是与TMS32054x时钟同步 HOST-Only模式下HOST访问与TMS320C54x时钟同步
HOST和TMS320C54x都可访问片内RAM HOST-Only模式,HOST具有独占的访问权
HPI-8的使用是通过对HPIA、HPIC和HPID三个寄存器赋值实现的。HPIA是地址寄存器,HPIC是控制寄存器,而HPID是数据寄存器。简单地说,HOST通过外部引脚HCNTL0和HCNTL1选中不同的寄存器,则当前发送的8位数据就送到该寄存器。在使用上,由于HPIC是16位寄存器,而HPI-8是8位的数据宽度,所以在HOST向HPIC写数据时,需要发送两个一样的8位数据。而地址寄存器HPIA选择后,直接向它写数据就可以了,但是要注意MSB和LSB的顺序。另外,HPIA具有自动增长的功能,在每写入一个数据前和每写入一个数据后,HPIA会自动加1。这样,如果使能了该功能,只需设定一次HPIA即可实现连续数据块的写入和读出。数据寄存器HPID,严格说应该叫做数据缓冲寄存器,因为最终数据是要写到片内RAM的。只是在实现上,数据首先从HOST发到HPID中,然后根据HPIA指定的地址,HPID中的数据再写到片内RAM的地址中。不过对用户而言,该过程是透明的。
3 使用HPI对DSP进行自举
HPI是作为多机数据交换而出现的,但是由于其功能特性,又产生了一种新的应用--使用HPI对DSP进行自举。实际上,TMS320VC5x系列DSP在片内固化的Bootloader程序中对HPI自举提供了全面的支持。笔者在VOIP系统的开发中,实现了使用HPI对DSP TMS320VC5402的自举,从而省掉了DSP的EPROM,使DSP只使用SRAM,提高了处理速度,并使HOST CPU具有更大的控制权,很适合多处理器系统。对于计算机插卡式的DSP系统,程序可以从PC机的硬盘上获取,从而减小了插卡版面空间占用,提高了处理速度。
在实现上,需要解决以下几个问题。
3.1 DSP片内固化的Bootloader程序对HPI自举的支持
自举从本质上说就是在DSP启动后通过某种方式获取运行代码并开始运行,这个过程是在固化在DSP片内的Bootloader程序辅助下完成的。在DSP上电以后,Bootloader程序按照一定的顺序依次检验何种自举方式可用,自举方式包括HPI方式、Serial EEPROM方式、标准Serial Port方式、Parallel方式和I/O方式。
Bootloader查询HPI方式是否可用是这样进行的:在启动以后,DSP片内0x7f地址的值被置为0,Bootloader不断检验0x7f地址处是否出现了可用的程序指针的跳转地址。当其发现该地址内的值不为0时,即判定为DSP已由外部HOST CPU进行了HPI自举程序加载,并按照该值跳转PC指针,开始运行,从而完成HPI方式自举。
3.2 突破4K的空间限制
由于HPI-8的特性,HOST能够访问所有的片内RAM空间,对于TMS320VC5402来说,其片内RAM地址空间从0000H到3fffH,一共4K。这已经大大超过了标准HPI的2K的大小,但是对于大多数DSP应用程序来说,片内RAM除了放置程序代码以外,很可能还需要留出一部分供数据空间使用。实际上,大部分代码都可能放置在片外的程序空间,而这部分空间并不是HOST通过HPI-8所能够访问得到的。所以需要使用某种技术突破4K的片内RAM空间限制。由于DSP程序本身是能够访问到所有DSP程序、数据空间的,所以HOST可以首先放置一个体积不大于4K的程序到DSP内,再由该程序和HOST协作完成超出片内RAM的代码的放置工作。
一般将上述的首先放入DSP的程序称为kernel程序,其功能比较简单,本身不超过4K,可以由HOST全部放入到TMS320VC5402的片内RAM中,并被启动。
基于此种思路的流程图如图1所示。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- TMS320UC5402和TMS320VC5402数字信号处理器硅勘误表详细分析概述 13次下载
- TMS320VC5402和TMS320UC5402引导加载程序的特点和操作详细概述 10次下载
- TMS320VC5402与51单片机的接口设计 2次下载
- TMS320VC5402 DSP与单片机的HPI接口实现方案分析 1次下载
- 基于TMS320VC5402的DSP基本系统的设计 18次下载
- 在TMS320VC5402上实现的语音识别算法 9次下载
- TMS320VC5402 DSP与串行AD73360 A/D转换器的接口设计 12次下载
- 基于DSP芯片TMS320VC5402的HPI通信设计 136次下载
- 基于TMS320VC5402 的DSP基本系统的设计
- AVR 和TMS320VC5402的HPI接口通信设计
- PC/104 总线与TMS320VC5402HPI 口通信的解决方案
- 基于TMS320VC5402的指纹识别系统
- 基于TMS320VC5402的指纹识别系统
- TMS320VC5402 的Flash并行Bootloade
- TMS320VC5402 与AC’97 Codec的接口设计
- 基于TMS320VC5402和单片机实现主从双CPU处理器平台的设计 3423次阅读
- 基于VC5402和PCI2040实现HPI接口和PCI接口的应用设计 2069次阅读
- 基于CY7C68033和TMS320DM6437芯片实现高速图像采集处理系统的设计 2297次阅读
- 基于DSP TMS320VC5402芯片实现数字视频监控系统的设计 4231次阅读
- 基于TMS320C5402芯片实现音频系统的总体方案 4565次阅读
- 基于TMS320VC5410 DSP的PCI语音卡和WDM设备驱动程序设计 2807次阅读
- 基于EP7312和TMS320VC5402实现智能仪器及控制系统的设计 928次阅读
- 基于DSP芯片TMS320VC5402的PCI图像采集卡 1781次阅读
- dsp tms320c6000基本作用的认识 9580次阅读
- 基于TMS320VC5507的语音识别系统实现 1942次阅读
- 基于DSP CCS2.2实现指纹识别预处理系统 1956次阅读
- JTAG接口在线烧写Flash的实现 1.5w次阅读
- TMS320VC5402与单片机的HPI口通信设计 2176次阅读
- VC5402与外部存储器的接口设计 1786次阅读
- TMS320C6000扩展总线与MPC860的HPI接口设计 1976次阅读
下载排行
本周
- 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次下载 | 免费
评论
查看更多