TMS320C62x HPI引导过程的实现
关键词:TMS320C62x DSP HPI 启动模式
1 绪言
在TMS320C62x系列DSP中,主机口HPI是一个16位宽度的并行端口。主机(也称上位机)掌管该接口的主控权,通过它可以直接访问CPU的存储器空间。另外,主机还可以直接访问TMS320C62x片内的存储映射的外围设备。
HPI与CPU存储空间的互连是通过DMA控制器实现的。借助专门的地址和数据寄存器,通过DMA辅助通道,完成HPI对存储空间的访问。主机和CPU都可以对HPI控制寄存器HPIC进行访问,主机一方还可以访问HPI地址寄存器HPIA和HPI数据寄存器HPID。
2 TMS320C62x引导模式
TMS320C62x系列DSP提供了三种引导方式:
(1) 没有自举过程:CPU直接从地址0开始执行代码;
(2) ROM自举:由DMA/EDMA控制器从外部CE1空间中的ROM中拷贝固定数量的一段代码到地址0,拷贝结束后,CPU从地址0开始运行;
(3) HPI自举:由外部主机通过HPI对芯片的存储器空间进行初始化,初始化结束后,外部主机通过HPI中断唤醒CPU,CPU开始从地址0运行。
所有这些设置项都是在芯片复位的时候才进行检查。一旦复位信号有效(reset=0),所有的三态输出管脚恢复为默认状态,然后在reset信号的上升沿处检查设置管脚BOOTMODE[4:0]的状态,自举逻辑开始生效。其中C6201/C6701有专门的管脚作为BOOTMODE[4:0],C6211/C6711则是利用主机口的HD[4:0],C6202/C6203利用扩展总线的XD[4:0]作为BOOTMODE[4:0]信号。
对于TMS320C62x的HPI自举模式过程如下:首先需要设置Boot模式,Boot模式设置如表1所示。当DSP被复位时,如果选择了HPI boot模式,那么只有DSP的内核进入复位状态,DSP其余模块均保持激活状态。这样,主机就可以通过HPI接口访问DSP的整个存储空间,包括片内、片外存储器和片内的外设寄存器,对它们进行初始化。主机对DSP做完了有关设置后,向HPIC寄存器的DSPINT位写1,将DSP从复位状态唤醒,接下来CPU就从地址0开始执行程序。主机对DSP可以进行的操作包括:初始化CPU和EMIF,向DSP加载程序以及数据等。
表1 TMS320C62x HPI boot配置
BOOTMODE[4:0]
Memory Map
Memory at Address 0
Boot
00110
MAP 0
External; default values
HPI
00111
MAP 1
Internal
HPI
&
《TMS320C62x HPI引导过程的实现》