DSP技术在EMIF接口中的BOOT方法简析
扫描二维码
随时随地手机看文章
DSP技术在目前的芯片研发过程中得到了广泛应用,在之前的文章中,我们曾经就DSP在EMIF接口中的应用进行过简要分析和探讨。今天我们将会接着上一次的讨论结果,来看一下DSP技术在EMIF接口中的系统BOOT是如何实现的,下面就让我们一起来看看吧。
在这里我们依旧以TMS320C6722型DSP芯片为例子,来进行讨论。这种的TMS320C6722型DSP内部没有可写的ROM,DSP的程序必须存放在外部器件中。当TMS320C6722型DSP芯片上电后,必须首先从外部芯片下载程序。本款DSP可以通过SPI总线启动、通过I2C总线启动和通过EMIF接口启动。这几种Boot方式和对应的引脚配置如表1所示,在本系统中,EMIF接口除了实现通常的数据交换,还兼任带动DSP启动的功能。
表1 各种BOOT模式的启动引脚配置
当整个电路系统上电后,此时TMS320C6722型DSP芯片的RESET引脚要通过下拉电阻拉低,这样才能够使DSP处于复位态。而FPGA芯片EP2C8F256I8上电后从FPGA配置芯片EPCS4中下载程序启动。当FPGA启动成功后,将DSP芯片的SPI0SOMI引脚与SPI0CLK引脚拉低,将SPI0SIMO引脚拉高,然后再将RESET引脚拉高。这样配置是为了使DSP退出复位态时能根据上述3个引脚的电平获知DSP芯片将通过EMIF接口启动。此后,DSP芯片将从EMIF接口读取1KB数据,并将这1KB数据存放于DSP的RAM中,再执行这1KB的程序。
上文中所介绍的这一过程,也被称为DSP的第一次启动过程。这1KB的程序是由汇编语言编写并通过CCStudio软件编译成机器语言,存放在FPGA中,这一步主要是通过mif文件编译进FPGA的程序来完成的。该1KB程序的功能是再次调用EMIF接口,操作FPGA,使得FPGA通过IP核从FLASH芯片中将其余的程序(本系统的程序约为32K)拷入DSP的RAM中并执行这些新拷入的程序。这是DSP的第二次启动。第一次启动是硬件启动,是TMS320C6722型DSP已经设定好的启动方式,第二次启动是软件启动,所执行的启动程序由用户编写。