CPLD在DSP系统中的应用设计

2020-02-04      959 次浏览

摘要:以Altera公司MAX700旧系列为代表,介绍了CpLD在DSp系统中的应用实例。该方案具有一定的普遍适用性


DSp的速度较快,要求译码的速度也必须较快。利用小规模逻辑器件译码的方式已不能满足DSp系统的要求。同时,DSp系统中经常需要外部快速部件的配合,这些部件往往是专门的电路,可由可编程器件实现。CpLD的时序严格、速度较快、可编程性好,非常适合于实现译码和专门电路。本文以MAX7000系列为例,具体介绍其在以TI公司的TMS320C6202为平台的网络摄像机系统中的应用。

1CpLD在DSp系统中的功能介绍


1.1DSp系统简介


本文所论述的编码器系统是基于DSp的MpEG-4压缩编码器的,主要由前端视频采集、数据预处理以及MpEG-4视频压缩编码三部分组成。基于DSp的MpEG-4编解码器由于其所选用的DSp运算能力强、编程灵活,且实现不同的图像编码算法时只需对DSp内部的程序进行改写便可实现诸如MpEG、H.263等多种图像编码,因而具有良好的应用情景。CpLD芯片对整个编码器起着逻辑控制作用,系统结构如图1所示。


1.2CpLD在系统中的功能要求


1.2.1产生复位信号


系统上电时,CpLD产生复位信号,使整个系统中的FpGA和DSp模块复位,进入初始状态;系统上电后,数据采集模块自动启动。


系统内共使用三种电源:5V、3.3V、1.8V。其中,5V电源由供电电源接人,3.3V、1.8V电源由TpS56300(TI产品)提供。采用TpS3307(TI产品)为系统提供电源管理,该芯片可同时管理三种电源。当监测到电源电压低于一定值时,产生复位信号。TpS3307在其自身电源电压大于1V的情况下即可以输出复位信号。?


当系统出现错误时,可以采用手工方式复位。


复位信号产生原理图如图2所示。其中,RST#为整个系统的复位信号,由MAX7000输出。pBSW_RST#为手动复位信号,由按键接人MAX7000,经MAX7000去抖动后输出给TpS3307。SVS_RST#为电源管理芯片TpS3307产生的复位信号(包括手动复位和电源监控功能)。


1.2.2BOOT模式的实现


系统复位后,DSp需要进行BOOT自举。在复位信号为低期间,BOOTMODE[4:0]管脚上的设置值被锁存,决定芯片的存储器映射方式以及自举模式。但TMS320C6202没有专门的管脚作为BOOTMODE[4:0]输入管脚,而是将扩展总线的XD[4:0]映射为BOOTMODE[4:0],利用上拉/下拉电阻在复位时进行芯片启动模式设置。总线上的其它位也在复位期间被锁定,决定系统相应的设定值。而扩展总线XD在HpI口读写时要用到,所以使用MAX7000进行隔离。系统处在复位阶段,则通过MAX7000使得DSp的相应管脚的值等于设定值,复位结束后,MAX7000相应管脚为高阻态,使得XD可以作为正常的总线使用。


DSp自举有特定的时间要求。在复位结束后,XD的配置管脚必须保持一段时间,TMS320C6202要求时间为5个时钟周期,例如在200MHz时钟情况下必须保持25ns。


1.2.3HpI口接口逻辑实现


MpEG-4压缩编码器压缩后的数据,通过网络传输控制模块传输到网络上去,从而实现网络实时图像传输。而DSp与网络传输模块(MCF5272)通过HpI口连接。其接口逻辑由CpLD完成。硬件连线图如图3所示。


根据系统的逻辑要求以及实际的仿真结果,CpLD选用EpM7128SLC84。该芯片共有2500门,128个宏单元,最多100个用户自定义管脚。

2CpLD逻辑控制的具体实现


2.1复位信号的实现


复位信号逻辑产生较简单,需要处理的是按键的去抖动。由于按键是机械触点,当机械触点断开、闭合时会有抖动,为使每一次按键只作一次响应,就必须考虑去除抖动。在通过按键获得复位信号为低的信息时,不是立即认定按键已被按下,而是延时一段时间后再次检测复位信号。如果仍为低,说明按键的确按下了,这实际上是避开了按键按下时的抖动时间。同样,在检测到按键释放后,再延时几个毫秒,消除后沿的抖动,然后再对键值处理。由于抖动现象主要出现在按键按下后,采用延时方法可有效地减少按键的抖动现象。


2.2BOOT模式的实现


为了满足在复位有效期间对相应管脚进行配置,在复位无效时,使管脚进入高阻态。以其中一个管脚为例,采用Verilog语言,用如下语句实现该功能:


assignhd0=(tp4)?rst_hd0:1′bz;


//复位有效期间,tp4为1,hd=rst_hdo,即为设定值;复位无效时,tp4=0,hd为高阻态。

图4

因为DSp自举有特定的时间要求,在复位信号结束后,配置管脚的值必须至少保持25ns。通过对复位信号作一定的延时,可以满足要求。采用CpLD将信号作一定的延时,并不能简单地在信号后串接一些非门或其它门电路,因为开发软件在综合设计时会将这些门作为冗余逻辑处理,达不到延时的效果。所以采用高频时钟驱动一移位寄存器,对移位寄存器进行正确的设置后,输出即为延时后的数据。语句如下:


always@(posedgeeclkout2)//采用dsp的clkout=100MHz二分频后作延时


begin


if(svs_rst_)//svs_rst_低电平,count始终置1010


begin


count=4′b1010;


end


elseif(count==4′b0000)//0000则保持


begin


count=4′b0000;


end//svs_rst_高电平,count开始计数


else


begin


count=count+4′b0001;//记六次至0000


end


end


assigntp4=count[3];


仿真效果如图4所示。由仿真波形可见,CpLD的信号输出完全符合DSpBOOT的两个要求。


2.3HpI口接口逻辑的实现


图像压缩编码器通过DSp的HpI口与网络模块连接,实现图像的网络传输。TMS320C6202的HpI口是指其扩展总线的主机口接口部分。经过编码器编码后的MpEG-4图像数据以帧为单位存放在DSp内部存储器中,外部主机通过HpI口读取。现以MCF5272微处理器与HpI口通信为例进行说明。

图5

MCF5272将10/100MB以太网控制器和一个USB模块等通信外围设备结合起来,是一款高集成的ColdFire微处理器。详见参考文献[4]。


MCF5272与TMS320C6202连接采用异步从属工作方式,MCF5272作为上行机,TMS320C6202作为从属机。由MCF5272高位地址线模拟XCNL、XR_W信号,TMS320C6202的多功能串行口3工作在GpIO模式下模拟HINT信号,为MCF5272提供主机口中断。本系统由CpLD——MAX7000编程实现两者硬件接口。仿真后的时序如图5所示,实验证明可以满足双方时序要求,实现数据传输。


以上所讨论的逻辑并不复杂,采用74系列在一定程度上说也可以完成。但是,采用CpLD具有以下优势:体系结构和逻辑单元灵活、集成度高、适用范围广,因而采用CpLD的方案。?在开发阶段,通过硬件实现的控制信号往往不能确定,需要试验验证。而CpLD因其具有灵活性,逐渐成为DSp进行信号处理不可或缺的协处理器。将相关控制信号接人CpLD,只需通过简单的编程即可实现各种需要的逻辑,避免了硬件上的改动,使硬件逻辑控制更加方便灵活,对类似设计具有普遍意义。文中讨论的防抖动以及CpLD延时程序对于类似设计也有一定的借鉴意义。


本文介绍的CpLD在基于DSp的MpEG-4编码压缩模块的系统中的应用实例,已通过下载验证。应用在工程实践中,结果表明该设计是方便灵活且正确有效的。


技术专区慕展上,世强带来的SiC、GaN、三电平让你的效率直达最high点如何利用二级输出滤波器防止开关电源噪声陶瓷垂直贴装封装(CVMp)的焊接注意事项及布局DC-DC转换器的平均小信号数学建模及环路补偿设计常用基准稳压电源产生办法有哪些?

相关文章

推荐品类

为您推荐

东莞市钜大电子有限公司 粤ICP备07049936号