happysaisai

关于SDRAM和ADI的SHARC系列处理器的配置(4.3)

0
阅读(2969)

在做DSP开发的时候,一般都会用到SDRAM,下面总结一下ADI公司的SHARC系列的DSP和SDRAM的接口连接。

工作电压为3.3V。硅版0.2或更高的ADSP-21369处理器的SDRAM控制器可以运行在166MHz.硅版0.0和0.1的SDRAM控制器仅能运行在133MHz.

所选SDRAM的型号为MT48LC4M32B2,因为是32位SDRAM,因此要从ADDR1开始连接地址A0,并且A10要和SDA10相连。如果是16位的SDRAM则要从ADDR0开始连接地址A0.

如图所示,Figure 1是和32-bit SDRAM 的硬件连接,用的是ADSP-21369评估板套件,Figure2是和16-bit SDRAM 的硬件连接, 用的ADSP-21375评估板套件。

Figure1

Figure 2

SDRAM能被分配到处理器四个地址块得任意一块,每一个地址块有片选MSx,用来驱动存储器的芯片选择信号CS.

下表是外部存储器SDRAM地址分配.

一、要设置SDRAM控制器要按照下面的步骤:

(1)配置内核时钟与SDRAM的时钟比

SDRAM时钟(SDCLK)由处理器内核时钟(CCLK)产生。支持5个固定的比例:1:2.0、1:2.5、1:3.0、1:3.5和1:4.0.要得到期望的SDCLK,需针对采用的CCLK频率设置PLL.通过设置PMCTL寄存器来实现,同时要设置DIVEN位。

(2)配置处理器的PLL

在设置PMCTL寄存器的DIVEN位和将PLL设置为旁路模式之间有一个内核周期的延时。对PMCTL寄存器进行写操作来设置或清除旁路模式时,要清除DIVEN位,这就保证了PLL的配置正确。

(3)将SDRAM映射到外部存储器组中的一个

通过对外部端口控制(EPCTL)寄存器设置合适的BxSD位将SDRAM映射到4个外部存储器块中的一个

(4)配置SDC

第一步是用正确的刷新数值(RDIV)配置SDRRC寄存器并设置SDRAM读优化。第二步是将各个控制参数写入SDRAM控制寄存器(SDCTL).

用正确的SDRAM刷新值对SDRRC寄存器的DIV域编程。由下式计算RDIV计数值得出该值。

式中:fSDCLK是SDCLK频率(SDRAM时钟频率)

tREF是SDRAM刷新周期

NRA 是SDRAM中行地址个数(刷新周期对整个SDRAM进行刷新)

tRAS是以时钟周期数为单位的激活到预充电时间(SDRAM存储控制【SDCTL】寄存器的SDTRAS位);

tRP是以时钟周期数为单位的RAS到预充电时间(在SDRAM存储控制【SDCTL】寄存器中)。

 

二、通用PCB设计指南:

(1)地址线和数据线越短越好

(2)可以不对SDCLK、DATA和ADDR进行端接。使用信号完整性(SI)工具来确定需要端接的信号。过多的端接会使信号升降缓慢,增加延时。

(3)处理器的I/O驱动可支持最高30pF的I/O负载。

(4)对每个存储器器件都要充分的去耦合。

(5)AVDD电源要使用处理器数据手册中指定的滤波电路设计。