"DSP系统中使用CPLD的原因和Boot Loader的实现"
在DSP系统中,使用CPLD是非常必要的。CPLD(Complex Programmable Logic Device)是一种可编程逻辑器件,具有时序严格、速度较快、可编程性好的特点,非常适合于实现译码和专门电路。在DSP系统中,DSP的速度较快,要求译码的速度也必须较快。利用小规模逻辑器件译码的方式,已不能满足DSP系统的要求。
在DSP系统中,CPLD可以实现译码和专门电路,满足DSP系统对速度和可编程性的要求。此外,CPLD也可以实现外部快速部件的配合,例如Flash、SRAM、FIFO、Dual port、SBSRAM、SDRAM等。这些部件往往是专门的电路,有可编程器件实现。
在DSP系统中,常用的芯片有电源、Flash、SRAM、FIFO、Dual port、SBSRAM、SDRAM、CPLD、PCI、USB、Codec、A/D、D/A等。这些芯片都具有不同的功能和特点,需要根据具体的需求选择合适的芯片。
Boot Loader是DSP系统中的一个重要组件。Boot Loader是一段程序,在DSP上电时,将程序代码从ROM中搬到RAM中运行。Boot Loader的作用是将代码从ROM中搬到RAM中,使DSP充分发挥它的能力。在不带flash的DSP中,TI在出厂时固化了一段Boot Loader程序,在上电后完成从ROM或外设将代码搬到用户指定的RAM中。
在TMS320C3x中,Boot Loader的实现是通过MC/MP管脚为高时,C3x进入boot状态。C3x的Boot Loader在reset时,判断外部中断管脚的电平。根据中断配置决定boot的方式为存储器加载还是串口加载,其中ROM的地址可以为三个中的一个,ROM可以为8位。
如果Boot Loader出现问题,可以通过以下步骤来解决:
1. 仔细检查boot的控制字是否正确。
2. 仔细检查外部管脚设置是否正确。
3. 仔细检查hex文件是否转换正确。
4. 用仿真器跟踪boot过程,分析错误原因。
在DSP系统中使用CPLD是非常必要的,可以满足DSP系统对速度和可编程性的要求。Boot Loader是DSP系统中的一个重要组件,负责将代码从ROM中搬到RAM中运行,使DSP充分发挥它的能力。