基于DSP和GC5322 的数字预失真系统设计
图4 系统硬件结构
图4中,PLL模块提供一个统一的时钟信号到各个单元,尤其是GC5322、ADC、DAC以及功放和滤波放大电路需要统一的时钟,否则系统预失真效果变差。C6727B和GC5322的连接是系统的重点,其硬件连接如图5所示。
图5 C6727B和GC5322的连接
图5中使用C6727B的EMIF接口连接到GC5322的数据和地址总线,同时EMIF接口的总线还连接到系统中的SDRAM和FLASH存储芯片。SDRAM是为了存储DSP程序运行产生的中间变量;FLASH存储程序,上电开始过程中由DSP读取。此外,FLASH还可以存储掉电不丢失的数据,例如预失真校正数据。由于C6727B的EMIF接口只有两个片选信号,其中CS0是专门用于SDRAM的选通信号,CS1统一给所有的异步外设,包括FLASH和GC5322。为此,使用译码电路完成多个异步外设的选择,使用CPLD或者FPGA完成。GC5322的中断信号必须连接到DSP,由于C6727B没有专用的中断信号,为此使用C6727B的音频串口的AXR0[7]作为通用IO引脚,并配置成中断信号。
系统软件设计
系统软件设计主要包括GC5322的初始化、DSP的初始化、EMIF接口设置、中断使能、ADC/DAC设置等。系统初始化后,DSP判断当前是否有数据需要发送,数据的读写通过判断是否有挂起的中断,该中断由GC5322产生,一旦GC5322收到基带数据,将发出该中断。无数据读写情况下,DSP将定期检测GC5322的测试信号,以便确定GC5322在正常工作。也可以根据需要,将GC5322设置到低功耗状态。
如果GC5322开始工作,则启动ADC开始采样,并控制时序将ADC采样后数据传输到GC5322,GC5322根据设置进行预失真处理,从而校正DAC的输出幅度,完成预失真处理。
分享到: