4.2.2 SAMA5D2-PTC-EK DDR2-SDRAM Software Settings

The SAMA5D2 board features a SAMA5D27/BGA289 MPU and two 2-Gbit Winbond DDR2-SDRAM devices (Part No.: W972GG6KB-25). The DDR clock runs at 166 MHz.

Table 4-14. MPDDRC_MD Register Settings
FieldDescriptionSettingSetting Details
MDMemory Device6DDR2-SDRAM
DBW(1)Data Bus Width0Data bus width is 32 bits
Table 4-15. MPDDRC_CR Register Settings
FieldDescriptionSettingSetting Details
NCNumber of Column Bits110 bits to define the column number
NRNumber of Row Bits314 bits to define the row number
CASCAS Latency3DDR2 CAS Latency 3
DLLReset DLL(unchanged)Used only during power-up sequence
DIC_DSOutput Driver Impedance Control (Drive Strength)0Normal drive strength (DDR2) - RZQ/6 (40 [NOM], DDR3)
DIS_DLLDisable DLL1Disable DLL
ZQZQ Calibration(unchanged)Not available for DDR2-SDRAM
OCDOff-chip Driver(unchanged)Used only during power-up sequence
DQMSMask Data is Shared0DQM is not shared with another controller
ENRDMEnable Read Measure0DQS/DDR_DATA phase error correction is disabled
LC_LPDDR1Low-cost Low-power DDR1(unchanged)Not available for DDR2-SDRAM
NBNumber of Banks18 banks
NDQSNot DQS1Not DQS is disabled
DECODType of Decoding1Interleaved
UNALSupport Unaligned Access1Unaligned access is supported
Table 4-16. MPDDRC_TPR0 Register Settings
FieldDescriptionSetting(2)Setting Details
TRASActive to Precharge Delay45 ns
TRCDRow to Column Delay13 ns
TWRWrite Recovery Delay15 ns
TRCRow Cycle Delay58 ns
TRPRow Precharge Delay13 ns
TRRDActive BankA to Active BankB10 ns
TWTRInternal Write to Read Delay8 ns
TMRDLoad Mode Register Command to Activate or Refresh Command2 ck
Table 4-17. MPDDRC_TPR1 Register Settings
FieldDescriptionSetting(2)Setting Details
TRFCRow Cycle Delay195 ns
TXSNR CommandExit Self-refresh Delay to Non-Read205 ns
TXSRDExit Self-refresh Delay to Read Command200 ck
TXPExit Power-down Delay to First Command2 ck
Table 4-18. MPDDRC_TPR2 Register Settings
FieldDescriptionSetting(2)Setting Details
TXARDExit Active Power-down Delay to Read Command in Mode “Fast Exit”2 ck
TXARDSExit Active Power-down Delay to Read Command in Mode “Slow Exit”8 ck
TRPARow Precharge All Delay21 ns
TRTPRead to Precharge8 ns
TFAWFour Active Windows45 ns
Table 4-19. MPDDRC_RD_DATA_PATH Register Settings
FieldDescriptionSettingSetting Details
SHIFT_SAMPLINGShift Sampling Point of Data1Sampling point is shifted by one cycle
Table 4-20. MPDDRC_IO_CALIBR Register Settings
FieldDescriptionSettingSetting Details
RDIVResistor Divider, Output Driver Impedance4DDR2 serial impedance line = 52 ohms
TZQIOIO Calibration101TZQIO = (DDRCK × 600e-9) + 1
EN_CALIBEnable Calibration1Calibration is enabled
Table 4-21. MPDDRC_RTR Register Settings
FieldDescriptionSettingSetting Details
COUNT(3)MPDDRC Refresh Timer Count1297Value needs to be computed
ADJ_REFAdjust Refresh Rate(unchanged)Not available for DDR2-SDRAM
REF_PBRefresh Per Bank(unchanged)Not available for DDR2-SDRAM
Note:
  1. If using one 32-bit data bus width SDRAM device or two 16-bit devices, set the Data Bus Width to 32 bits (DBW = 0). If only one 16-bit data bus width SDRAM device is used, set the Data Bus Width to 16 bits (DBW = 1).
  2. If timing values are given in nanoseconds, they must be converted in clock cycles and rounded up. tCYCLES = tns/tCK, where tCYCLES is the timing value in clock cycles, tns is the timing value in nanoseconds and tCK is the DDR clock period.

    Eg: If fCK = 166 MHz, then tCK = 1/fCK = 6 ns


    If tns = 35 ns, then tCYCLES = 35/6 = 6 clock cycles

  3. The value in the COUNT field needs to be computed.


    COUNT = tREFI/tCK

    For tREFI = 7.8 μs and tCK = 6 ns results in COUNT = 1300


    tREFI can also be calculated if the Refresh Window [ms] and Refresh Cycles are given (in the SDRAM data sheet).

    tREFI [μs] = (Refresh Window [ms]/Refresh Cycles)*fCK [MHz]*1000


    If Refresh Window = 64 ms, Refresh Cycles = 8192 and fCK = 166 MHz,

    then COUNT = (64/8192)*166*1000 = 1297

Table 4-22. SAMA5D2-PTC-EK DDR2-SDRAM Register Settings
Register NameRegister AddressContents Value
MPDDRC_MD0xF000C0200x00000006
MPDDRC_CR0xF000C0080x00F0043D
MPDDRC_TPR00xF000C00C0x2443A338
MPDDRC_TPR10xF000C0100x02C82321
MPDDRC_TPR20xF000C0140x00082482
MPDDRC_RD_DATA_PATH0xF000C05C0x00000001
MPDDRC_IO_CALIBR0xF000C0340x00876514
MPDDRC_RTR0xF000C0040x00000511