中国·芯片交易在线
首页 | 供应信息 | 求购信息 | 库存查询 | 新闻中心 | 展会资讯 | IC厂商 | 技术资料 | 自由区域
   新闻首页 |  行业动态 | 新品发布 | 政策法规 | 科技成果 | 模拟技术 | 嵌入系统 | 传感控制 | 存储设计  
当前位置:IC72首页>> IC新闻中心>> 嵌入系统 >>电子行业新闻正文

TMS320VC5402 DSP的并行I/O引导装载方法研究

时间:2008/3/10 10:53:00  作者:  来源:IC72  浏览人数:1424
 
 

      TMS320VC5402(以下简称C5402)是德州仪器公司(TI)1999年10月推出的性价比极高(目标价格仅为5美元)的定点数字信号处理器(DSP)。

      C5402主要特点如下[1]:

      *操作速率达100MIPS;

      *具有先进的多总线结构,三条16位数据存储器总线和一条程序存储器总线;

      *40位算术逻辑单元(ALU),包括一个40位桶形移位器和两个40位累加器;

      *一个17×17乘法器和一个40位专用加法器,允许16位带/不带符号的乘法;

      *整合维特比加速器,用于提高维特比编译码的速度;

      *单周期正规化及指数译码;

      *8个辅助寄存器及一个软件栈,允许使用业界最先进的定点DSP C语言编译器;

      *数据/程序寻址空间1M×16bit,内置4K×16bit ROM和16K×16bit RAM;

      *内置可编程等待状态发生器、锁相环(PLL)时钟产生器、两个多通道缓冲串行口、一个8位并行与外部处理器通信的HPI口、2个16位定时器以及6通道DMA控制器;

      *低功耗,工作电源有3V和1.8V(内核),特别适合电池供电设备。

      由此可见,与TMS32054X系列的其它芯片相比,C5402以其独有的高性能、低功耗和低价格特性,使得一推出就受到业内用户的欢迎。但它的内部结构和片内掩模的引导装载(Bootloader)程序与C54X系列的其它DSP处理器[2]有较大的差异,而它的应用对象又大多是要求能脱机运行,如机顶盒(STB)、个人数字助理(PDA)和数字无线通信等内嵌式系统。为此,本文立足我们的实践经验,简单介绍C5402 Bootloader程序分析和实现方法,并较为详细地介绍并行I/O Bootloader方法。

      1 几种引导装载方法

      C5402 片内掩模的Bootloader用于在上电复位时把用户程序从外部引导到高速RAM中,以保证其全速运行。C5402提供了如下四种Bootloader 方法:8位或16位并行EPROM方法、8位或16位并行I/O方法、8位或16位串行口方法和处理器通信口(主端口)HPI方法。

      上电复位后,C5402检测其MP/MC引脚,如果MP/MC=“0”则进入Bootloader程序。进入Bootloader后,如有INT2请求中断,则进入HPI引导方式,否则则读入端口地址为0FFFFH的I/O端的引导方式选择字(Boot Routine Selection,BRS)。当BRS=XXXX00时,进入I/O或串行口引导方式如BRS=XXXX1000时,进入8位I/O引导方式BRS =XXXX1100时,进入16位I/O引导方式,否则则进入串行口引导方式。当BRS=XXXX01时,进入8位EPROM引导方式,BRS=XXXX10时,进入16位EPROM引导方式。

ic72新闻中心

      2 C5402片内ROM结构及并行I/O引导装载程序分析

      C5402 提供了4K×16bit 的掩模ROM,其具体内容见表1。C5402上电复位后,如果MP/MC=“0”则从F800h地址开始运行Bootloader程序。在进入8位并行 I/O引导程序以前,C5402与外部I/O要进行一系列的通信联络,其程序框图如图1所示。

ic72新闻中心

      以下是8位并行I/O引导程序片段下:

      行号 源程序 注 解

      (标号) ..

      END             ;读入用户代码结束

                      ;并转执行用户程序
     
      1 CALL (21)  ;调用读数据子程序

      2 STL     B,61h ;B的内容→61H单元

      3 CALL  (21)  ;调用读数据子程序

      4 STL     B,61h ;B的内容→62H单元

      5 CALL (21)  ;调用读数据子程序

      6 BC (END), BEQ ;B=0时结束

      7 SUB #01h,0,B,B ;B-1→B

      8 STLM  B,BRC;B→BRC

      9  CALL (21)  ;调用读数据子程序

      10 STL    B, 68h ;B的内容→68H单元

      11 CALL (21)  ;调用读数据子程序

      12 ADD 68h,16,B,B ;68H移位后加B→B

      13 LD   B,0,A     ;B→A

      14 RPTD (20)-1; 循环15-19             

      15  CALL (21)  ;调用读数据子程序

      16 SSBX     XF    ;XF=1

      17 BC   (17),BIO;BIO=0则等待

      18 WRITA   B    ;把B的内容写到*A

      19 ADD #01h,0,A,A ;A+1→A

      20 B  (5)       ;跳转到标号为5

      21 SSBX   XF       ;XF=1

      22 BC (22),BIO   ;BIO=0则等待

      23 RXBX     XF     ;XF=0

      24 BC (24),NBIO  ;BIO=1则等待

      25 POETR  0000h,B  ;读0地址端口→B

      26 SFTL   B,8,B    ;B左移8位→B

      27 SSBX   XF       ;XF=1

      28 BC (28),BIO   ;BIO=0则等待

      29 RXBX    XF      ;XF=0

      30 BC (30),NBIO  ;BIO=1则等待

      31 PORTR 0000h,68h ;读0地址端口→68

      32 ANDM 000ffh,68h ;逻辑与

      33 OR   68h,B      ;逻辑或后→B

      34 RET ;返回

      在上述程序中,END标号给出I/O读入操作结束后所转移的入口地址,之后转到61H和62H给出的入口地址执行用户程序。第1~4行读入入口地址;第 5~8行读入数据块长度;第9~13行读入数据块首地址;第14~20行读入数据块。为了更好地了解这段程序的工作过程及其原理,图2给出了8位并行 I/O Bootloader程序流程图。第21~34行为读数据子程序,在该程序中,利用了XF和BIO信号与外部I/O进行握手联络,其信号时序如图3所示。

ic72新闻中心

ic72新闻中心

      3 C5402并行I/O引导装载方法的实现

      3.1 硬件电路分析

      为了满足C5402 DSP 8位并行I/O Bootloader引导程序的时序要求,本文利用8031单片机作智能I/O部件,图4为C5402与8031的连接电路图。在图中,U3为TMS320VC5402DSP,U?为8031单片机,U1、U2均为SN74AHC245,单片机系统中的EPROM

      电路没有给出。

      U1、 U2的DIR引脚接地,数据传输方向为B→A。U2的B7~B4和B2~B0接地,B3接DVDD(3.3V),/CE端接系统复位信号,保证了在上电复位期间U2给C5402提供00001000B数据,使其进入8位并行I/O引导模式,而当复位信号无效后,U2的/CE=“1”片选信号无效而脱离系统。U1的作用是数据缓冲兼作电平转换器,U1的VCCD端接4.3V,其作用是将8031输出的TTL电平转换成5402能接受的CMOS电平;U1的/CE断接8031的P3.3(/INT)脚,在系统复位直到执行CLR P3.3之前都保持高电平,在此期间U1无效,保证了U2正常供给5402所需的数据。8031的P3.0( RXD)、P3.1(TXD)作为握手信号,分别与C5402的/BIO和XF相连。JP3、JP4可供用户跳线选择C5402的系统时钟以及选择 C5402的运行模式。

      3.2 程序设计

      根据以上分析,本文设计了如下8031汇编程序。首先使U1的/CE有效,然后等待C5402的XF为低电平,XF=“0”后,使8031的P3.1= “0”即BIO=“0”C5402进入等待数据状态。在数据送到数据总线之后,使BIO=“1”通知C5402读取I/O端口数据。程序中,UC定义的代码前面22个字节是与C5402的联络码,从第23个字节开始才是用户程序代码。
   
      CLR P3.3       ;使U1(AHC245) CE=0

      W1: JB  P3.0,W1    ;XF=1等待
   
      CLR     P3.1   ;使BIO=0
   
      MOV R4,#00H   ;初始化变址寄存器

      W2: JNB P3.0,W2    ;XF=0等待
   
      MOV DPTE,#UC  ;指向用户代码首地址
   
      MOV A,R4       ;变址送A
   
      MOVC A,@A+DPTR ;取用户代码
   
      MOV P1,A       ;送到数据总线
   
      SETB P3.1      ;使BIO=1

      W3: JB P3.0,W3     ;XF=1等待
   
      CLR P3.1       ;使BIO=0
   
      INC R4         ;指向下一代码
   
      CJNE R4,#0FFH,W2 ;未完重来

      UC: DB 08H,0AAH,00H,00H
     
      DB 00H,00H,00H,00H
     
      DB 00H,08H,00H,25H
     
      DB 00H,00H,00H,80H
     
      DB 0F4H,95H,0E9H,27H
     
      DB 0F3H,10H ;以上为与C5402的联络码   ;用户程序代码

      TMS320VC5402 DSP是C54X家族乃至TI的DSP家族的最新成员,正以其极高的性价比被越来越多的用户所接受。本文利用廉价、通用的8031单片机实现C5402 8位并行I/O Bootloader功能,一方面,可以很好地解决快速DSP与慢速I/O(EPROM)之间的数据传输问题;另一方面,C5402 Bootloader成功后,8031还可作为“协助理器”使用,从而极大提高了系统的灵活性和实用性。具有广阔的应用前景。

 

 
【相关文章】
·TMS320VC5402 DSP的并行I/O引导装载方法研究
 
 
IC新闻搜索
 
热点新闻
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于ARM9内核Processor对外部NAND FLASH的控制实现
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9