paradoxfx

【原创】TI C2833x介绍---(6)存储器映像

0
阅读(3143)

C28x的CPU本身不包含存储器,但是DSP内部本身集成了片内的存储器,CPU可以读取片内集成与片外扩展的存储。C28x使用32位数据地址线与22位的程序地址线,从而而言寻址4G字(word,1 word = 16-bits)的数据存储与4M字的程序存储器。C28x上的存储器模块都是统一映射到程序与数据空间的,其图示如图1所示。

 

图1 28335的存储器映像.PNG

其中,M0,M1,L0-L7为我们用户可以直接使用的SARAM,可以将定义的数据、变量、常量等存在其地址范围内,具体的用法等后面讲cmd文件的时候再详细说明。0x004000 到0x005000这样的针对XINTF Zone 0 (4Kw)这样的空间是专门映射到某一区域的,有点类似于PC中的外设占用地址。reserved空间是保留空间,我推测的应该是今后有更高性能、更大容量的DSP推出后可用的存储器空间,因为对比2812与28335的存储器映射,就会发现原来在2812中许多标记为reserved的地址在28335中已经变成了可用的地址(28335与28346的规律是否也如此请大家验证);既然是保留空间,那我们就不能对它们进行操作,否则会引起不可预料的后果:这个我实验过了,编译的时候没有问题,但是程序一运行就进入illegal  ISR非法中断了。

       此外,还有一些空间是被密码保护的,包括:L0, L1, L2, L3, OTPFLASH, ADC CAL,Flash Regsin PF0。L4, L5, L6, L7,XINTF Zone 0, 6, 7这些空间是可以被DMA(直接存储器访问)进行存取的,这些在DMA介绍的时候会详细提到。L0, L1, L2, L3是双映射的,这个模式主要是与2812系列的DSP兼容用的,因为2812的存储空间相对28335的小,只相当于其低地址范围的存储空间。