SDRAM Controller Interface Peripheral

SDRAMC (AT91S_SDRAMC) 0xFFFFEA00 (AT91C_BASE_SDRAMC)
Periph ID AICSymbolDescription
1 (AT91C_ID_SYS)System Controller

FunctionDescription
AT91F_SDRAMC_CfgPMCEnable Peripheral clock in PMC for SDRAMC


SDRAMC Software API (AT91S_SDRAMC)

OffsetFieldDescription
0x0SDRAMC_MRSDRAM Controller Mode Register
0x4SDRAMC_TRSDRAM Controller Refresh Timer Register
0x8SDRAMC_CRSDRAM Controller Configuration Register
0xCSDRAMC_HSRSDRAM Controller High Speed Register
0x10SDRAMC_LPRSDRAM Controller Low Power Register
0x14SDRAMC_IERSDRAM Controller Interrupt Enable Register
0x18SDRAMC_IDRSDRAM Controller Interrupt Disable Register
0x1CSDRAMC_IMRSDRAM Controller Interrupt Mask Register
0x20SDRAMC_ISRSDRAM Controller Interrupt Mask Register
0x24SDRAMC_MDRSDRAM Memory Device Register

SDRAMC Register Description

SDRAMC: AT91_REG SDRAMC_MR SDRAM Controller Mode Register

OffsetNameDescription
3..0SDRAMC_MODE
AT91C_SDRAMC_MODE
Mode
0: Normal Mode 1:Issue a NOP Command 2:Issue a All Banks Precharge Command 3:Issue a Load Mode Register 4:Issue a Refresh
ValueLabelDescription
0SDRAMC_MODE_NORMAL_CMD
AT91C_SDRAMC_MODE_NORMAL_CMD

Normal Mode
1SDRAMC_MODE_NOP_CMD
AT91C_SDRAMC_MODE_NOP_CMD

Issue a NOP Command at every access
2SDRAMC_MODE_PRCGALL_CMD
AT91C_SDRAMC_MODE_PRCGALL_CMD

Issue a All Banks Precharge Command at every access
3SDRAMC_MODE_LMR_CMD
AT91C_SDRAMC_MODE_LMR_CMD

Issue a Load Mode Register at every access
4SDRAMC_MODE_RFSH_CMD
AT91C_SDRAMC_MODE_RFSH_CMD

Issue a Refresh
5SDRAMC_MODE_EXT_LMR_CMD
AT91C_SDRAMC_MODE_EXT_LMR_CMD

Issue an Extended Load Mode Register
6SDRAMC_MODE_DEEP_CMD
AT91C_SDRAMC_MODE_DEEP_CMD

Enter Deep Power Mode

SDRAMC: AT91_REG SDRAMC_TR SDRAM Controller Refresh Timer Register

OffsetNameDescription
11..0SDRAMC_COUNT
AT91C_SDRAMC_COUNT
Refresh Counter

SDRAMC: AT91_REG SDRAMC_CR SDRAM Controller Configuration Register

OffsetNameDescription
1..0SDRAMC_NC
AT91C_SDRAMC_NC
Number of Column Bits
0: 8.
1: 9.
3: 10.
3: 11.
ValueLabelDescription
0SDRAMC_NC_8
AT91C_SDRAMC_NC_8

8 Bits
1SDRAMC_NC_9
AT91C_SDRAMC_NC_9

9 Bits
2SDRAMC_NC_10
AT91C_SDRAMC_NC_10

10 Bits
3SDRAMC_NC_11
AT91C_SDRAMC_NC_11

11 Bits
3..2SDRAMC_NR
AT91C_SDRAMC_NR
Number of Row Bits
0: 11.
1: 12.
3: 13.
3: Reserved.
ValueLabelDescription
0SDRAMC_NR_11
AT91C_SDRAMC_NR_11

11 Bits
1SDRAMC_NR_12
AT91C_SDRAMC_NR_12

12 Bits
2SDRAMC_NR_13
AT91C_SDRAMC_NR_13

13 Bits
4SDRAMC_NB
AT91C_SDRAMC_NB
Number of Banks
0: 2.
1: 4.
ValueLabelDescription
0SDRAMC_NB_2_BANKS
AT91C_SDRAMC_NB_2_BANKS

2 banks
1SDRAMC_NB_4_BANKS
AT91C_SDRAMC_NB_4_BANKS

4 banks
6..5SDRAMC_CAS
AT91C_SDRAMC_CAS
CAS Latency
0: Reserved.
1: Reserved.
2: 2.
3: 3.
ValueLabelDescription
2SDRAMC_CAS_2
AT91C_SDRAMC_CAS_2

2 cycles
3SDRAMC_CAS_3
AT91C_SDRAMC_CAS_3

3 cycles
7SDRAMC_DBW
AT91C_SDRAMC_DBW
Data Bus Width
0: 32 bits. 1: 16bits.
ValueLabelDescription
0SDRAMC_DBW_32_BITS
AT91C_SDRAMC_DBW_32_BITS

32 Bits datas bus
1SDRAMC_DBW_16_BITS
AT91C_SDRAMC_DBW_16_BITS

16 Bits datas bus
11..8SDRAMC_TWR
AT91C_SDRAMC_TWR
Number of Write Recovery Time Cycles
ValueLabelDescription
0SDRAMC_TWR_0
AT91C_SDRAMC_TWR_0

Value : 0
1SDRAMC_TWR_1
AT91C_SDRAMC_TWR_1

Value : 1
2SDRAMC_TWR_2
AT91C_SDRAMC_TWR_2

Value : 2
3SDRAMC_TWR_3
AT91C_SDRAMC_TWR_3

Value : 3
4SDRAMC_TWR_4
AT91C_SDRAMC_TWR_4

Value : 4
5SDRAMC_TWR_5
AT91C_SDRAMC_TWR_5

Value : 5
6SDRAMC_TWR_6
AT91C_SDRAMC_TWR_6

Value : 6
7SDRAMC_TWR_7
AT91C_SDRAMC_TWR_7

Value : 7
8SDRAMC_TWR_8
AT91C_SDRAMC_TWR_8

Value : 8
9SDRAMC_TWR_9
AT91C_SDRAMC_TWR_9

Value : 9
10SDRAMC_TWR_10
AT91C_SDRAMC_TWR_10

Value : 10
11SDRAMC_TWR_11
AT91C_SDRAMC_TWR_11

Value : 11
12SDRAMC_TWR_12
AT91C_SDRAMC_TWR_12

Value : 12
13SDRAMC_TWR_13
AT91C_SDRAMC_TWR_13

Value : 13
14SDRAMC_TWR_14
AT91C_SDRAMC_TWR_14

Value : 14
15SDRAMC_TWR_15
AT91C_SDRAMC_TWR_15

Value : 15
15..12SDRAMC_TRC
AT91C_SDRAMC_TRC
Number of RAS Cycle Time Cycles
ValueLabelDescription
0SDRAMC_TRC_0
AT91C_SDRAMC_TRC_0

Value : 0
1SDRAMC_TRC_1
AT91C_SDRAMC_TRC_1

Value : 1
2SDRAMC_TRC_2
AT91C_SDRAMC_TRC_2

Value : 2
3SDRAMC_TRC_3
AT91C_SDRAMC_TRC_3

Value : 3
4SDRAMC_TRC_4
AT91C_SDRAMC_TRC_4

Value : 4
5SDRAMC_TRC_5
AT91C_SDRAMC_TRC_5

Value : 5
6SDRAMC_TRC_6
AT91C_SDRAMC_TRC_6

Value : 6
7SDRAMC_TRC_7
AT91C_SDRAMC_TRC_7

Value : 7
8SDRAMC_TRC_8
AT91C_SDRAMC_TRC_8

Value : 8
9SDRAMC_TRC_9
AT91C_SDRAMC_TRC_9

Value : 9
10SDRAMC_TRC_10
AT91C_SDRAMC_TRC_10

Value : 10
11SDRAMC_TRC_11
AT91C_SDRAMC_TRC_11

Value : 11
12SDRAMC_TRC_12
AT91C_SDRAMC_TRC_12

Value : 12
13SDRAMC_TRC_13
AT91C_SDRAMC_TRC_13

Value : 13
14SDRAMC_TRC_14
AT91C_SDRAMC_TRC_14

Value : 14
15SDRAMC_TRC_15
AT91C_SDRAMC_TRC_15

Value : 15
19..16SDRAMC_TRP
AT91C_SDRAMC_TRP
Number of RAS Precharge Time Cycles
ValueLabelDescription
0SDRAMC_TRP_0
AT91C_SDRAMC_TRP_0

Value : 0
1SDRAMC_TRP_1
AT91C_SDRAMC_TRP_1

Value : 1
2SDRAMC_TRP_2
AT91C_SDRAMC_TRP_2

Value : 2
3SDRAMC_TRP_3
AT91C_SDRAMC_TRP_3

Value : 3
4SDRAMC_TRP_4
AT91C_SDRAMC_TRP_4

Value : 4
5SDRAMC_TRP_5
AT91C_SDRAMC_TRP_5

Value : 5
6SDRAMC_TRP_6
AT91C_SDRAMC_TRP_6

Value : 6
7SDRAMC_TRP_7
AT91C_SDRAMC_TRP_7

Value : 7
8SDRAMC_TRP_8
AT91C_SDRAMC_TRP_8

Value : 8
9SDRAMC_TRP_9
AT91C_SDRAMC_TRP_9

Value : 9
10SDRAMC_TRP_10
AT91C_SDRAMC_TRP_10

Value : 10
11SDRAMC_TRP_11
AT91C_SDRAMC_TRP_11

Value : 11
12SDRAMC_TRP_12
AT91C_SDRAMC_TRP_12

Value : 12
13SDRAMC_TRP_13
AT91C_SDRAMC_TRP_13

Value : 13
14SDRAMC_TRP_14
AT91C_SDRAMC_TRP_14

Value : 14
15SDRAMC_TRP_15
AT91C_SDRAMC_TRP_15

Value : 15
23..20SDRAMC_TRCD
AT91C_SDRAMC_TRCD
Number of RAS to CAS Delay Cycles
ValueLabelDescription
0SDRAMC_TRCD_0
AT91C_SDRAMC_TRCD_0

Value : 0
1SDRAMC_TRCD_1
AT91C_SDRAMC_TRCD_1

Value : 1
2SDRAMC_TRCD_2
AT91C_SDRAMC_TRCD_2

Value : 2
3SDRAMC_TRCD_3
AT91C_SDRAMC_TRCD_3

Value : 3
4SDRAMC_TRCD_4
AT91C_SDRAMC_TRCD_4

Value : 4
5SDRAMC_TRCD_5
AT91C_SDRAMC_TRCD_5

Value : 5
6SDRAMC_TRCD_6
AT91C_SDRAMC_TRCD_6

Value : 6
7SDRAMC_TRCD_7
AT91C_SDRAMC_TRCD_7

Value : 7
8SDRAMC_TRCD_8
AT91C_SDRAMC_TRCD_8

Value : 8
9SDRAMC_TRCD_9
AT91C_SDRAMC_TRCD_9

Value : 9
10SDRAMC_TRCD_10
AT91C_SDRAMC_TRCD_10

Value : 10
11SDRAMC_TRCD_11
AT91C_SDRAMC_TRCD_11

Value : 11
12SDRAMC_TRCD_12
AT91C_SDRAMC_TRCD_12

Value : 12
13SDRAMC_TRCD_13
AT91C_SDRAMC_TRCD_13

Value : 13
14SDRAMC_TRCD_14
AT91C_SDRAMC_TRCD_14

Value : 14
15SDRAMC_TRCD_15
AT91C_SDRAMC_TRCD_15

Value : 15
27..24SDRAMC_TRAS
AT91C_SDRAMC_TRAS
Number of RAS Active Time Cycles
ValueLabelDescription
0SDRAMC_TRAS_0
AT91C_SDRAMC_TRAS_0

Value : 0
1SDRAMC_TRAS_1
AT91C_SDRAMC_TRAS_1

Value : 1
2SDRAMC_TRAS_2
AT91C_SDRAMC_TRAS_2

Value : 2
3SDRAMC_TRAS_3
AT91C_SDRAMC_TRAS_3

Value : 3
4SDRAMC_TRAS_4
AT91C_SDRAMC_TRAS_4

Value : 4
5SDRAMC_TRAS_5
AT91C_SDRAMC_TRAS_5

Value : 5
6SDRAMC_TRAS_6
AT91C_SDRAMC_TRAS_6

Value : 6
7SDRAMC_TRAS_7
AT91C_SDRAMC_TRAS_7

Value : 7
8SDRAMC_TRAS_8
AT91C_SDRAMC_TRAS_8

Value : 8
9SDRAMC_TRAS_9
AT91C_SDRAMC_TRAS_9

Value : 9
10SDRAMC_TRAS_10
AT91C_SDRAMC_TRAS_10

Value : 10
11SDRAMC_TRAS_11
AT91C_SDRAMC_TRAS_11

Value : 11
12SDRAMC_TRAS_12
AT91C_SDRAMC_TRAS_12

Value : 12
13SDRAMC_TRAS_13
AT91C_SDRAMC_TRAS_13

Value : 13
14SDRAMC_TRAS_14
AT91C_SDRAMC_TRAS_14

Value : 14
15SDRAMC_TRAS_15
AT91C_SDRAMC_TRAS_15

Value : 15
31..28SDRAMC_TXSR
AT91C_SDRAMC_TXSR
Number of Command Recovery Time Cycles
ValueLabelDescription
0SDRAMC_TXSR_0
AT91C_SDRAMC_TXSR_0

Value : 0
1SDRAMC_TXSR_1
AT91C_SDRAMC_TXSR_1

Value : 1
2SDRAMC_TXSR_2
AT91C_SDRAMC_TXSR_2

Value : 2
3SDRAMC_TXSR_3
AT91C_SDRAMC_TXSR_3

Value : 3
4SDRAMC_TXSR_4
AT91C_SDRAMC_TXSR_4

Value : 4
5SDRAMC_TXSR_5
AT91C_SDRAMC_TXSR_5

Value : 5
6SDRAMC_TXSR_6
AT91C_SDRAMC_TXSR_6

Value : 6
7SDRAMC_TXSR_7
AT91C_SDRAMC_TXSR_7

Value : 7
8SDRAMC_TXSR_8
AT91C_SDRAMC_TXSR_8

Value : 8
9SDRAMC_TXSR_9
AT91C_SDRAMC_TXSR_9

Value : 9
10SDRAMC_TXSR_10
AT91C_SDRAMC_TXSR_10

Value : 10
11SDRAMC_TXSR_11
AT91C_SDRAMC_TXSR_11

Value : 11
12SDRAMC_TXSR_12
AT91C_SDRAMC_TXSR_12

Value : 12
13SDRAMC_TXSR_13
AT91C_SDRAMC_TXSR_13

Value : 13
14SDRAMC_TXSR_14
AT91C_SDRAMC_TXSR_14

Value : 14
15SDRAMC_TXSR_15
AT91C_SDRAMC_TXSR_15

Value : 15

SDRAMC: AT91_REG SDRAMC_HSR SDRAM Controller High Speed Register

OffsetNameDescription
0SDRAMC_DA
AT91C_SDRAMC_DA
Decode Cycle Enable Bit
ValueLabelDescription
0SDRAMC_DA_DISABLE
AT91C_SDRAMC_DA_DISABLE

Disable Decode Cycle
1SDRAMC_DA_ENABLE
AT91C_SDRAMC_DA_ENABLE

Enable Decode Cycle

SDRAMC: AT91_REG SDRAMC_LPR SDRAM Controller Low Power Register

OffsetNameDescription
1..0SDRAMC_LPCB
AT91C_SDRAMC_LPCB
Low-power Configurations
ValueLabelDescription
0SDRAMC_LPCB_DISABLE
AT91C_SDRAMC_LPCB_DISABLE

Disable Low Power Features
1SDRAMC_LPCB_SELF_REFRESH
AT91C_SDRAMC_LPCB_SELF_REFRESH

Enable SELF_REFRESH
2SDRAMC_LPCB_POWER_DOWN
AT91C_SDRAMC_LPCB_POWER_DOWN

Enable POWER_DOWN
3SDRAMC_LPCB_DEEP_POWER_DOWN
AT91C_SDRAMC_LPCB_DEEP_POWER_DOWN

Enable DEEP_POWER_DOWN
6..4SDRAMC_PASR
AT91C_SDRAMC_PASR
Partial Array Self Refresh (only for Low Power SDRAM)
9..8SDRAMC_TCSR
AT91C_SDRAMC_TCSR
Temperature Compensated Self Refresh (only for Low Power SDRAM)
11..10SDRAMC_DS
AT91C_SDRAMC_DS
Drive Strenght (only for Low Power SDRAM)
13..12SDRAMC_TIMEOUT
AT91C_SDRAMC_TIMEOUT
Time to define when Low Power Mode is enabled
ValueLabelDescription
0SDRAMC_TIMEOUT_0_CLK_CYCLES
AT91C_SDRAMC_TIMEOUT_0_CLK_CYCLES

Activate SDRAM Low Power Mode Immediately
1SDRAMC_TIMEOUT_64_CLK_CYCLES
AT91C_SDRAMC_TIMEOUT_64_CLK_CYCLES

Activate SDRAM Low Power Mode after 64 clock cycles after the end of the last transfer
2SDRAMC_TIMEOUT_128_CLK_CYCLES
AT91C_SDRAMC_TIMEOUT_128_CLK_CYCLES

Activate SDRAM Low Power Mode after 64 clock cycles after the end of the last transfer

SDRAMC: AT91_REG SDRAMC_IER SDRAM Controller Interrupt Enable Register

OffsetNameDescription
0SDRAMC_RES
AT91C_SDRAMC_RES
Refresh Error Status

SDRAMC: AT91_REG SDRAMC_IDR SDRAM Controller Interrupt Disable Register

OffsetNameDescription
0SDRAMC_RES
AT91C_SDRAMC_RES
Refresh Error Status

SDRAMC: AT91_REG SDRAMC_IMR SDRAM Controller Interrupt Mask Register

OffsetNameDescription
0SDRAMC_RES
AT91C_SDRAMC_RES
Refresh Error Status

SDRAMC: AT91_REG SDRAMC_ISR SDRAM Controller Interrupt Mask Register

OffsetNameDescription
0SDRAMC_RES
AT91C_SDRAMC_RES
Refresh Error Status

SDRAMC: AT91_REG SDRAMC_MDR SDRAM Memory Device Register

OffsetNameDescription
1..0SDRAMC_MD
AT91C_SDRAMC_MD
Memory Device Type
ValueLabelDescription
0SDRAMC_MD_SDRAM
AT91C_SDRAMC_MD_SDRAM

SDRAM Mode
1SDRAMC_MD_LOW_POWER_SDRAM
AT91C_SDRAMC_MD_LOW_POWER_SDRAM

SDRAM Low Power Mode