在做DSP開發(fā)的時(shí)候,一般都會用到SDRAM,下面總結(jié)一下ADI公司的SHARC系列的DSP和SDRAM的接口連接。
SDRAM工作電壓為3.3V。硅版0.2或更高的ADSP-21369處理器的SDRAM控制器可以運(yùn)行在166MHz.硅版0.0和0.1的SDRAM控制器僅能運(yùn)行在133MHz.
所選SDRAM的型號為MT48LC4M32B2,因?yàn)槭?2位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能被分配到處理器四個(gè)地址塊得任意一塊,每一個(gè)地址塊有片選MSx,用來驅(qū)動存儲器的芯片選擇信號CS.
下表是外部存儲器SDRAM地址分配

一、要設(shè)置SDRAM控制器要按照下面的步驟: (1)配置內(nèi)核時(shí)鐘與SDRAM的時(shí)鐘比 SDRAM時(shí)鐘(SDCLK)由處理器內(nèi)核時(shí)鐘(CCLK)產(chǎn)生。支持5個(gè)固定的比例:1:2.0、1:2.5、1:3.0、1:3.5和1:4.0.要得到期望的SDCLK,需針對采用的CCLK頻率設(shè)置PLL.通過設(shè)置PMCTL寄存器來實(shí)現(xiàn),同時(shí)要設(shè)置DIVEN位。 (2)配置處理器的PLL 在設(shè)置PMCTL寄存器的DIVEN位和將PLL設(shè)置為旁路模式之間有一個(gè)內(nèi)核周期的延時(shí)。對PMCTL寄存器進(jìn)行寫操作來設(shè)置或清除旁路模式時(shí),要清除DIVEN位,這就保證了PLL的配置正確。 (3)將SDRAM映射到外部存儲器組中的一個(gè) 通過對外部端口控制(EPCTL)寄存器設(shè)置合適的BxSD位將SDRAM映射到4個(gè)外部存儲器塊中的一個(gè) (4)配置SDC 第一步是用正確的刷新數(shù)值(RDIV)配置SDRRC寄存器并設(shè)置SDRAM讀優(yōu)化。第二步是將各個(gè)控制參數(shù)寫入SDRAM控制寄存器(SDCTL). 用正確的SDRAM刷新值對SDRRC寄存器的DIV域編程。由下式計(jì)算RDIV計(jì)數(shù)值得出該值。
 式中:fSDCLK是SDCLK頻率(SDRAM時(shí)鐘頻率) tREF是SDRAM刷新周期 NRA 是SDRAM中行地址個(gè)數(shù)(刷新周期對整個(gè)SDRAM進(jìn)行刷新) tRAS是以時(shí)鐘周期數(shù)為單位的激活到預(yù)充電時(shí)間(SDRAM存儲控制【SDCTL】寄存器的SDTRAS位); tRP是以時(shí)鐘周期數(shù)為單位的RAS到預(yù)充電時(shí)間(在SDRAM存儲控制【SDCTL】寄存器中)。
二、通用PCB設(shè)計(jì)指南: (1)地址線和數(shù)據(jù)線越短越好 (2)可以不對SDCLK、DATA和ADDR進(jìn)行端接。使用信號完整性(SI)工具來確定需要端接的信號。過多的端接會使信號升降緩慢,增加延時(shí)。 (3)處理器的I/O驅(qū)動可支持最高30pF的I/O負(fù)載。 (4)對每個(gè)存儲器器件都要充分的去耦合。 (5)AVDD電源要使用處理器數(shù)據(jù)手冊中指定的濾波電路設(shè)計(jì)。 |