TMS320C3X串口扩展技术
发布时间:2008/5/26 0:00:00 访问次数:739
     夏 立 吴正国
     来源:《电子技术应用》
     摘要:介绍了tms320c3x
     dsp串口的一种扩展方法,给出该接口电路的verilog hdl实现。该接口电路已被作者应用到实际系统中,仿真和实践证明该电路稳定可靠,具有一定的应用价值。
    
    
     关键词:数字信号处理器
     硬件描述语言 接口电路
     tms320c3x是ti公司生产的第三代数字信号处理器,目前已相继推出c30、c31、c32和vc33等四种类型,由于其性价比高而被广泛应用于各个领域中。
     tms320c3x是一种32bit的浮点dsp,其程序、数据和外设地址都映射在同一存储空间,并有丰富的寻址方式和较大的寻址空间,因此对外设的访问非常灵活方便。但在实际应用中往往也要考虑一些不利因素:一是外部总线速度高、地址线宽,因此增加外对接口电路的时序要求较高,且电路连接较复杂;二是频繁的外设访问操作易产生流水线冲突而影响整体性能。dsp的串口有较强的设备管理能力,与外设连接也很简单,因此成为dsp与低速外设交换数据的首选。但在tms320c3x系列中,除tms320c30提供两个串口外,其它几种芯片都只有一个串口,在很多情况下限制了这些芯片的进一步使用。本文针对c3x串口的特点,以tms320c3x与tlc3204x连接为例,设计了一种串口扩展方法。
     1 tms320c3x与tlc3204x连接简介
     tlc3204x是ti公司生产的话带模数接口芯片(aic),可与tms320c3x等多种dsp芯片的串口直接相连,其a/d、d/a转换精度为14bit,按16bit方式传送,其中两位用于芯片控制和启动辅助通信[1]。图1是tlc3204x与tms320c3x串口的连接图[2]。aic与dsp通过dx和dr交换数据,aic的主时钟信号(mclk)由dsp的定时器0提供,而aic的移位脉冲(sclk)作为串口的发送时钟(clkx)和接收时钟(clkr),发送和接收帧同步信号分别由aic的fsx和fsr提供。dsp串口以16位变速传送方式工作,aic按字方式传送数据。
    
     2 tms320c3x串口扩展原理
     一般而言,外设数据字长较短,而tms320c3x串口数据字长可灵活配置。利用这一特点,只要增设少量的外部电路,就能在现有基础上扩展接口。在本例中,tlc3204x数据是16bit字长,因此只要将tms320c3x串口设定为32bit传送方式,每个tlc3204x各点用16bit,就能将该串口一分二。图2为tms320c3x与两片tlc3204x的连接示意图,其接口电路的设计可分为发送和接收两部分的设计。
     2.1 发送接口电路
     该接口应完成两个任务。一是接收来自tms320c3x串口的32bit数据,由tms320c3x提供移位脉冲clkx,帧同步信号(fsx)由接口电路提供,其时序如图3所示。二是将32bit数据会解为两个16bit数据,然后再转送到两个tlc3204x芯片,由tlc3204x芯片提供发送时钟sclk和帧同步信号fsx以及完成信号eodx。传送时序如图4所示。
     2.2 接收接口电路
     该接口电路是发送接口电路的逆过程,其时序如图5和图6所示。
    
     3 接口电路的实现
     verilog hdl[3]描述硬件单元的结构简单且易读,是当前最流行和通用的两种硬件描述语言之一,得到众多eda工具的支持,因此利用该语言进行电路设计可以节省开发成本并缩短开发周期。
     3.1 接口电路的顶层verilog hdl描述
     module dsp_tlc(sclk1,dx1,fsx1,eodx1,dr1,fsr1,
     eodr1,sclk0,dx0,fsx0,eodx0,dr0,fsr0,eodr0,
     clkx,dx,fsx,dr,fsr,reset);
     input fsx1,eodx1,fsx0,eodx0,dx,clkx,reset;
     output fsx,dx1,ex0;
     input dr1,sclk1
     夏 立 吴正国
     来源:《电子技术应用》
     摘要:介绍了tms320c3x
     dsp串口的一种扩展方法,给出该接口电路的verilog hdl实现。该接口电路已被作者应用到实际系统中,仿真和实践证明该电路稳定可靠,具有一定的应用价值。
    
    
     关键词:数字信号处理器
     硬件描述语言 接口电路
     tms320c3x是ti公司生产的第三代数字信号处理器,目前已相继推出c30、c31、c32和vc33等四种类型,由于其性价比高而被广泛应用于各个领域中。
     tms320c3x是一种32bit的浮点dsp,其程序、数据和外设地址都映射在同一存储空间,并有丰富的寻址方式和较大的寻址空间,因此对外设的访问非常灵活方便。但在实际应用中往往也要考虑一些不利因素:一是外部总线速度高、地址线宽,因此增加外对接口电路的时序要求较高,且电路连接较复杂;二是频繁的外设访问操作易产生流水线冲突而影响整体性能。dsp的串口有较强的设备管理能力,与外设连接也很简单,因此成为dsp与低速外设交换数据的首选。但在tms320c3x系列中,除tms320c30提供两个串口外,其它几种芯片都只有一个串口,在很多情况下限制了这些芯片的进一步使用。本文针对c3x串口的特点,以tms320c3x与tlc3204x连接为例,设计了一种串口扩展方法。
     1 tms320c3x与tlc3204x连接简介
     tlc3204x是ti公司生产的话带模数接口芯片(aic),可与tms320c3x等多种dsp芯片的串口直接相连,其a/d、d/a转换精度为14bit,按16bit方式传送,其中两位用于芯片控制和启动辅助通信[1]。图1是tlc3204x与tms320c3x串口的连接图[2]。aic与dsp通过dx和dr交换数据,aic的主时钟信号(mclk)由dsp的定时器0提供,而aic的移位脉冲(sclk)作为串口的发送时钟(clkx)和接收时钟(clkr),发送和接收帧同步信号分别由aic的fsx和fsr提供。dsp串口以16位变速传送方式工作,aic按字方式传送数据。
    
     2 tms320c3x串口扩展原理
     一般而言,外设数据字长较短,而tms320c3x串口数据字长可灵活配置。利用这一特点,只要增设少量的外部电路,就能在现有基础上扩展接口。在本例中,tlc3204x数据是16bit字长,因此只要将tms320c3x串口设定为32bit传送方式,每个tlc3204x各点用16bit,就能将该串口一分二。图2为tms320c3x与两片tlc3204x的连接示意图,其接口电路的设计可分为发送和接收两部分的设计。
     2.1 发送接口电路
     该接口应完成两个任务。一是接收来自tms320c3x串口的32bit数据,由tms320c3x提供移位脉冲clkx,帧同步信号(fsx)由接口电路提供,其时序如图3所示。二是将32bit数据会解为两个16bit数据,然后再转送到两个tlc3204x芯片,由tlc3204x芯片提供发送时钟sclk和帧同步信号fsx以及完成信号eodx。传送时序如图4所示。
     2.2 接收接口电路
     该接口电路是发送接口电路的逆过程,其时序如图5和图6所示。
    
     3 接口电路的实现
     verilog hdl[3]描述硬件单元的结构简单且易读,是当前最流行和通用的两种硬件描述语言之一,得到众多eda工具的支持,因此利用该语言进行电路设计可以节省开发成本并缩短开发周期。
     3.1 接口电路的顶层verilog hdl描述
     module dsp_tlc(sclk1,dx1,fsx1,eodx1,dr1,fsr1,
     eodr1,sclk0,dx0,fsx0,eodx0,dr0,fsr0,eodr0,
     clkx,dx,fsx,dr,fsr,reset);
     input fsx1,eodx1,fsx0,eodx0,dx,clkx,reset;
     output fsx,dx1,ex0;
     input dr1,sclk1