- UID
- 1029342
- 性别
- 男
|
三、 VC33的存储器结构及其扩展
VCC存储器结构
(一)存储器结构
VC33的总存储器空间是16M32位字。程序、数据和I/O空间都包含在这16M字地址空间中,允许在RAM或ROM中保存表、系数、程序代码或数据。这样,存储器利用最大并且可根据需要定位存储器空间,但应注意片内可供用户使用的存储空间只有RAM,片内的ROM在芯片出厂时已固化了引导程序,用户不能对其修改。
VC33中可供用户使用的片内RAM共4块,RAM0和RAM1均为1K×32位,RAM2和RAM3各位16K×32位,4块RAM的总容量为34K×32位。存储器还有一块64×32位的高速缓冲器(Cache)<这个以后单独做专题讲>,供指令快速译码使用,另有一块4K×32位的ROM,存放引导程序。
大家注意了:上述RAM和Cache的位置是固定的,但ROM、中断向量以及被引导的外部程序的起始地址在16M空间中的位置是由用户设定的存储器工作方式决定的。
大家看下面的关系
(a)微处理器方式 (b)微计算机引导方式
--------------------------------------------------------------------------------
0h 中断矢量、复位向量、陷阱矢量 0h 存放引导程序的片内ROM
03Fh 和保留单元(64) FFFh
--------------------------------------------------------------------------------
040h 1000h 引导1 400000h 引导2
外部存储空间(8M-64K) 外部存储空间(8M-4K)
7FFFFFh 7FFFFFh
--------------------------------------------------------------------------------
800000h 800000h
RAM2(16K) RAM2(16K)
803FFFh 803FFFh
--------------------------------------------------------------------------------
804000h 804000h
RAM3(16K) RAM3(16K)
807FFFh 807FFFh
--------------------------------------------------------------------------------
808000h 808000h
外围总线存储器映射 外围总线存储器映射
寄存器(16K) 寄存器(16K)
8097FFh 8097FFh
--------------------------------------------------------------------------------
809800h 809800h
RAM0(1K) RAM0(1K)
809BFFh 809BFFh
--------------------------------------------------------------------------------
809C00h 809C00h
RAM1(1K) 中断陷阱分支指令
809FC1h 63
809FFFh 809FFFh
--------------------------------------------------------------------------------
80A000h 80A000h
外部存储空间(8M-40K) FFF000h 引导3 外部存储空
FFFFFFh FFFFFFh 间(8M-40K)
总之,微处理器方式和微计算机引导方式最大的差异在于是否允许引导,如果不引导,则为微处理器方式,否则就为微计算机引导方式。在大多数情况下,程序总是放在外部ROM中的,为了实现程序的高速运行,必须将用户程序由外部ROM装载到DSP内部的高速RAM中,所以必须采用微计算机引导方式,但引导成功后,为了避免中断向量的搬迁,可通过DSP的I/O口引脚将工作方式切换到微处理器方式。
在实际中,大家可直接置为引导方式,当然做板时也可以用跳线来选择是处理器方式还是引导方式。
VCC存储器扩展
隔了一段时间了,不知道大家前面的知识消化了没有,这一节我们一起来学习一下VC33存储器的扩展。^_^
这里我们主要以异步存储器为主。下面是异步存储器接口控制信号。
片选:PAGE[3:0]
读/写控制:STRB、R/W
等待就绪:RDY
注意的问题:
a、硬件信号的正确连接;
b、时序的相互匹配
1、SRAM的扩展
常用的SRAM
CY7C1021V33-12ZC(64K×16位、3.3V、12ns)
CY7C1041V33-12ZC(256K×16位、3.3V、12ns)
IS61LV25616AL-10T(256K×16位、3.3V、10ns)
我用到的就是第三种,实际中我用两片SRAM扩展为32位的。其他的信号线不用我教了吧,呵呵,这个大家都会连。
2、FLASH的扩展
FLASH的基本操作:
a、读FLASH存储单元数据;
b、读FLASH状态信息;
c、扇区擦除;
d、整片擦除;
e、写数据到FLASH存储单元中
常用FLASH
SST39VF400A-70-4C-EK(256K×16、3.3V、70ns)
Am29LV800B(1M×8位/512K×16位、3.3V、70ns)
注意Bootloader的定位就可以了。片选接PAGE1。
技巧提示:数据、地址线在PCB布线时的等价交换
DSP外部存储器接口的数据总线为DD
存储器芯片的数据总线为MD[j]
DSP外部存储器接口的地址总线为DA[k]
存储器芯片的地址总线为MA[l]
数据总线可以等价交换时:i不等于j
地址总线可以等价交换时:k不等于l
注意了:SRAM的数据总线和地址总线可以等价交换,而FLASH的则不能。 |
|