在做DSP開發(fā)的時候,一般都會用到SDRAM,下面總結一下ADI公司的SHARC系列的DSP和SDRAM的接口連接。
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.
如圖所示,F(xiàn)igure 1是和32-bit SDRAM 的硬件連接,用的是ADSP-21369評估板套件,F(xiàn)igure2是和16-bit SDRAM 的硬件連接, 用的ADSP-21375評估板套件。
圖一
圖二 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寄存器來實現(xiàn),同時要設置DIVEN位。 (2)配置處理器的PLL 在設置PMCTL寄存器的DIVEN位和將PLL設置為旁路模式之間有一個內核周期的延時。對PMCTL寄存器進行寫操作來設置或清除旁路模式時,要清除DIVEN位,這就保證了PLL的配置正確。 (3)將SDRAM映射到外部存儲器組中的一個 通過對外部端口控制(EPCTL)寄存器設置合適的BxSD位將SDRAM映射到4個外部存儲器塊中的一個 (4)配置SDC 第一步是用正確的刷新數(shù)值(RDIV)配置SDRRC寄存器并設置SDRAM讀優(yōu)化。第二步是將各個控制參數(shù)寫入SDRAM控制寄存器(SDCTL). 用正確的SDRAM刷新值對SDRRC寄存器的DIV域編程。由下式計算RDIV計數(shù)值得出該值。
式中:fSDCLK是SDCLK頻率(SDRAM時鐘頻率) tREF是SDRAM刷新周期 NRA 是SDRAM中行地址個數(shù)(刷新周期對整個SDRAM進行刷新) tRAS是以時鐘周期數(shù)為單位的激活到預充電時間(SDRAM存儲控制【SDCTL】寄存器的SDTRAS位); tRP是以時鐘周期數(shù)為單位的RAS到預充電時間(在SDRAM存儲控制【SDCTL】寄存器中)。
二、通用PCB設計指南: (1)地址線和數(shù)據(jù)線越短越好 (2)可以不對SDCLK、DATA和ADDR進行端接。使用信號完整性(SI)工具來確定需要端接的信號。過多的端接會使信號升降緩慢,增加延時。 (3)處理器的I/O驅動可支持最高30pF的I/O負載。 (4)對每個存儲器器件都要充分的去耦合。 (5)AVDD電源要使用處理器數(shù)據(jù)手冊中指定的濾波電路設計。 |