EDN China > 设计实例 > 模拟设计 > 转换器 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

DSP与串行A/D组成的高速并行数据采集系统

来源:今日电子/作者:吉林大学通信工程学院 卢海军 王树勋?? 2007年03月29日 ?? 收藏0

  tms320vc5402(以下简称c5402)是德州仪器公司1999年推出的定点数字信号处理器(dsp)。与tms320c54x系列的其他芯片相比,c5402以其独有的高性能、低功耗和低价格受到了人们的广泛青睐。c5402增强外设有软件等待状态发生器、锁相环时钟发生器、6通道直接存储器访问(dma)控制器、增强型8位并行主机接口(hpi)等。两个可编程的多通道缓冲串口(mcbsp)能够全双工、快速地与其他同步串口进行数据交换,硬件连接简单,串口的工作模式和传送数据的格式可通过编程实现。

  因为c5402内部没有集成a/d,因此在数据采集时需要使用a/d转换芯片,a/d芯片与c5402的接口设计成为一个重要的问题。a/d转换芯片一般有串行a/d和并行a/d。为了充分利用c5402所提供的多通道缓冲串口资源,简化系统设计,本文系统使用了ti公司的高速串行a/d来同时完成两路数据采集,大大提高了串口工作效率。

  串行a/d芯片tlv1572

  tlv1572是高速的十位串行a/d转换芯片,可以通过3或4个串行口线直接与dsp或其他数字微处理器串口相连,不需要外加逻辑,但是转换速度受sclk供给时钟的限制。tlv1572与dsp的多通道缓冲串口相连是通过cs、sclk、do和fs四条线完成的,此时dsp的clkr产生移位脉冲,fsr产生帧同步信号,并分别提供给tlv1572。当t-lv1572与其他串口微处理器相连接时fs必须提供高电平,通过cs、sclk、do三条线来完成数据传输。当cs为高时,a/d芯片各管脚处于三态状态。在cs由高变低时,tlv1572检测fs引脚的状态来确定工作模式,若fs为低则为dsp模式,若fs为高则为其他微处理器模式。

tl1572在dsp模式下的转换时序图

图一 tl1572在dsp模式下的转换时序图

tl1572在微处理器模式下的转换时序图

图二 tl1572在微处理器模式下的转换时序图

  当tlv1572工作在dsp模式时,必须保证在cs变低时,fs为低电平,并且要锁存一定时间。cs为低时,do跳出三态状态,但是直到fs为高时芯片才脱离休眠状态。tlv1572在每个时钟sclk的下降沿检测fs的状态,一旦检测到fs为高,tlv1572开始采样。在fs的下降沿,a/d芯片通过移位时钟将数据移到do上。在6个前导0传送之后,dsp可以在时钟的下降沿得到a/d转换的数据,如图1所示。在最低位移出之后,a/d芯片自动进入休眠状态,直到fs下一次有效。如果fs在16位传输完成后立即有效,则a/d开始新的数据转换,此时a/d为连续转换。若fs在tlv1572转换数据的过程中变高,则a/d芯片被复位,开始新的数据转换周期。因此可以通过设置fs,改变数据传输的位数。

  当tlv1572工作在非dsp模式下时,fs引脚必须接高电平。在每次转换的过程中都必须提供16个时钟信号,若微处理器无法一次接收16位数据,可以分成8位两次接收,两次接收的时间间隔不能大于100μs,此时cs必须一直处于有效状态。在dsp模式下转换的开始是由fs信号有效来决定的,而在微处理器模式下,数据转换cs有效后的第一个时钟信号上升沿开始的,如图2所示。在微处理器模式下,也可以通过设置cs来改变传送的位数。

  c5402的多通道缓冲串口

  c5402提供两个高速、全双工、多通道缓冲串行口mcbsp0、mcbsp1,用数据线d(r/x)、帧同步线fs(r/x)和移位时钟线clk(r/x)实现发送数据和接收数据。mcbsp通过6个引脚(dx、dr、clkx、clkr、fsx和fsr)与外设接口。

  (1)clkx(发送时钟输入或输出)

  芯片内部发送以为寄存器(xsr)通过该时钟信号将数据发送到dx引脚。该串口可以通过pcr寄存器的clkxm位配置成使用内部时钟或者使用外部时钟。

  (2)fsx(发送帧同步输入或输出)

  fsx是发送开始的标志,串口可以通过pcr寄存器的fxm位配置成输入或输出。

  (3)dx(串行数据发送)

  串口数据发送是通过该口进行的。

  (4)clkr(接收时钟)

  clkr用来接收外部时钟信号,该时钟信号将dr数据移入接收移位寄存器(rsr)。可以通过pcr寄存器的clkrm位配置成使用内部时钟或者使用外部时钟。

  (5)fsr(接收帧同步输入)

  fsr接收帧同步脉冲信号,标志数据接收开始。可以通过pcr寄存器的frm位配置成输入,也可以配置成输出。

  (6)dr(串行数据接收)

  串口数据接收是通过该口进行的。接收过程中,数据首先通过移位时钟clkr的作用下移入rsr(接收移位寄存器),然后,rsr中的数据再拷贝到ddr(数据接收寄存器),拷贝完成时,产生rint中断通知cpu来响应或revta中断通知dma响应,同时设置rrdy中断标志位,也可以用查询方式来完成,从数据寄存器中读出数据。clkx、clkr、fsx、fsr即可以由内部采样率发生器产生,也可以由外部设备驱动。mcbsp分别在相应时钟的上升沿和下降沿进行数据检测。每个mcbsp最多可支持128通道的发送和接收,串行字长可选,包括8、12、16、20、24和32位,还支持μ率和a率数据压缩扩展。


上一页123下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

DSP? ADC? 数据采集?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈