This manual describes SAMSUNG's S3C2440X 16/32-bit RISC microprocessor. SAMSUNG’s S3C24440X is
designed to provide hand-held devices and general applications with low-power, and high-performance microcontroller solution in small die size. To reduce total system cost, the S3C2440X includes the following components
separate 16KB Instruction and 16KB Data Cache, MMU to handle virtual memory management, LCD Controller
(STN & TFT), NAND Flash Boot Loader, System Manager (chip select logic and SDRAM Controller), 3-ch UART,
4-ch DMA, 4-ch Timers with PWM, I/O Ports, RTC, 8-ch 10-bit ADC and Touch Screen Interface, Camera
interface, IIC-BUS Interface, IIS-BUS Interface, USB Host, USB Device, SD Host & Multi-Media Card Interface, 2ch SPI and PLL for clock generation.
The S3C2440X has been developed using an ARM920T core, 0.13um CMOS standard cells and a memory
complier. Its low-power, simple, elegant and fully static design is particularly suitable for cost- and power-sensitive
applications. It adopts a new bus architecture known as Advanced Micro controller Bus Architecture (AMBA).
The S3C2440X offers outstanding features with its CPU core, a 16/32-bit ARM920T RISC processor designed by
Advanced RISC Machines, Ltd. The ARM920T implements MMU, AMBA BUS, and Harvard cache architecture
with separate 16KB instruction and 16KB data caches, each with an 8-word line length.
By providing a complete set of common system peripherals, the S3C2440X minimizes overall system costs and
eliminates the need to configure additional components. The integrated on-chip functions that are described in this
document include:
• Power control: Normal, Slow, Idle and Sleep mode
• 8-ch 10-bit ADC and Touch screen interface
• RTC with calendar function
• On-chip clock generator with PLL
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-1
Page 2
2003.10.15
PRODUCT OVERVIEWS3C2440X
FEATURES
Architecture
• Integrated system for hand-held devices and
general embedded applications.
• 16/32-Bit RISC architecture and powerful
instruction set with ARM920T CPU core.
• Enhanced ARM architecture MMU to support
WinCE, EPOC 32 and Linux.
• Instruction cache, data cache, write buffer and
Physical address TAG RAM to reduce the effect
of main memory bandwidth and latency on
performance.
• ARM920T CPU core supports the ARM debug
architecture.
• Internal Advanced Microcontroller Bus
Architecture (AMBA) (AMBA2.0, AHB/APB).
System Manager
• Little/Big Endian support.
• Address space: 128M bytes for each bank (total
1G bytes).
• Supports programmable 8/16/32-bit data bus
width for each bank.
• Fixed bank start address from bank 0 to bank 6.
• Programmable bank start address and bank size
for bank 7.
• Eight memory banks:
– Six memory banks for ROM, SRAM, and others.
– Two memory banks for ROM/SRAM/
Synchronous DRAM.
• Complete Programmable access cycles for all
memory banks.
• Supports external wait signals to expend the bus
cycle.
• Supports self-refresh mode in SDRAM for power-
down.
NAND Flash Boot Loader
• Supports booting from NAND flash memory.
• 4KB internal buffer for booting.
• Supports storage memory for NAND flash
memory after booting.
• Supports Advanced NAND flash
Cache Memory
• 64-way set-associative cache with I-Cache
(16KB) and D-Cache (16KB).
• 8words length per line with one valid bit and two
dirty bits per line.
• Pseudo random or round robin replacement
algorithm.
• Write-through or write-back cache operation to
update the main memory.
• The write buffer can hold 16 words of data and
four addresses.
Clock & Power Manager
• On-chip MPLL and UPLL:
UPLL generates the clock to operate USB
Host/Device.
MPLL generates the clock to operate MCU at
maximum 400Mhz@ 1.2V.
• Clock can be fed selectively to each function
block by software.
•Power mode: Normal, Slow, Idle, and Sleep
mode
Normal mode: Normal operating mode
Slow mode: Low frequency clock without PLL
Idle mode: The clock for only CPU is stopped.
Sleep mode: The Core power including all
peripherals is shut down.
• Woken up by EINT[15:0] or RTC alarm interrupt
from Sleep mode
• Supports various types of ROM for booting
(NOR/NAND Flash, EEPROM, and others).
1-2
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
• 4-ch 16-bit Timer with PWM / 1-ch 16-bit internal
timer with DMA-based or interrupt-based
operation
• Programmable duty cycle, frequency, and polarity
• Dead-zone generation
• Supports external clock sources
RTC (Real Time Clock)
• Full clock feature: msec, second, minute, hour,
date, day, month, and year
• 32.768 KHz operation
• Alarm interrupt
• Time tick interrupt
General Purpose Input/Output Ports
64-byte Rx FIFO.
DMA Controller
• 4-ch DMA controller
• Supports memory to memory, IO to memory,
memory to IO, and IO to IO transfers
• Burst transfer mode to enhance the transfer rate
A/D Converter & Touch Screen Interface
• 8-ch multiplexed ADC
• Max. 500KSPS and 10-bit Resolution
• Internal FET for direct Touch screen interface
LCD Controller STN LCD Displays Feature
• Supports 3 types of STN LCD panels: 4-bit dual
scan, 4-bit single scan, 8-bit single scan display
type
• Supports monochrome mode, 4 gray levels, 16
gray levels, 256 colors and 4096 colors for STN
LCD
• Supports multiple screen size
– Maximum screen size: 2048x1024
– Recommended screen size: max 800x600
– Maximum virtual screen size is 4 Mbytes.
– Maximum virtual screen size in 256 color mode:
4096x1024, 2048x2048, 1024x4096 and others
• 24 external interrupt ports
• Multiplexed input/output ports
UART
• 3-channel UART with DMA-based or interrupt-
based operation
• Supports 5-bit, 6-bit, 7-bit, or 8-bit serial data
transmit/receive (Tx/Rx)
• Supports external clocks for the UART operation
(UARTCLK)
• Programmable baud rate
• Supports IrDA 1.0
• Loopback mode for testing
• Each channel has internal 64-byte Tx FIFO and
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
TFT(Thin Film Transistor) Color Displays Feature
• Supports 1, 2, 4 or 8 bpp (bit-per-pixel) palette
color displays for color TFT
• Supports 16 bpp non-palette true-color displays
for color TFT
• Supports maximum 16M color TFT at 24 bpp
mode
• Supports multiple screen size
– Maximum screen size: 2048x1024
– Recommended screen size: max 800x600
– Maximum virtual screen size is 4Mbytes.
–Maximum virtual screen size in 64K color mode:
2048x1024, and others
1-3
Page 4
2003.10.15
PRODUCT OVERVIEWS3C2440X
FEATURES (Continued)
Watchdog Timer
• 16-bit Watchdog Timer
• Interrupt request or system reset at time-out
IIC-Bus Interface
• 1-ch Multi-Master IIC-Bus
• Serial, 8-bit oriented and bi-directional data
transferscanbemadeatupto100Kbit/sin
Standard mode or up to 400 Kbit/s in Fast mode.
IIS-Bus Interface
• 1-ch IIS-bus for audio interface with DMA-based
operation
• Serial, 8-/16-bit per channel data transfers
• 128 Bytes (64-Byte + 64-Byte) FIFO for Tx/Rx
• Supports IIS format and MSB-justified data format
USB Host
• 2-port USB Host
• Complies with OHCI Rev. 1.0
• Compatible with USB Specification version 1.1
• Compatible with SDIO Card Protocol version 1.0
• Bytes FIFO for Tx/Rx
• DMA based or Interrupt based operation
• Compatible with Multimedia Card Protocol version
2.11
SPI Interface
• Compatible with 2-ch Serial Peripheral Interface
Protocol version 2.11
• 2x8 bits Shift register for Tx/Rx
• DMA-based or interrupt-based operation
Camera Interface
• ITU601/ITU656-format input support (8-bit)
• YCrCb 4:2:2 to 4:2:0 down-sampling
• Up to 1016 Horizontal resolution support
Operating Voltage Range
• Core: 1.2V
• Memory :1.8V/ 2.5V/3.3V
• I/O : 3.3V
USB Device
• 1-port USB Device
• 5 Endpoints for USB Device
• Compatible with USB Specification version 1.1
SD Host Interface
• Compatible with SD Memory Card Protocol
version 1.0
Operating Frequency
• Up to 400MHz
Package
• 289-FBGA
1-4
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 5
2003.10.15
S3C2440XPRODUCT OVERVIEW
BLOCK DIAGRAM
JTAG
ARM920T
Instruction
MMU
2
A[31:0]
IV
ARM9TDMI
Processor core
(Internal Embedded ICE)
Data
MMU
LCD
CONT.
USB Host CONT.
ExtMaster
NAND Ctrl.
NAND Flash Boot
Loader
C13
C13
IPA[31:0]
DPA[31:0]
LCD
DMA
Instruction
ID[31:0]
DD[31:0]
DVA[31:0]DV2A[31:0]
CACHE
(16KB)
CP15
Data
CACHE
(16KB)
A
H
B
B
U
S
External
Coproc
Interface
Write
Buffer
WriteBack
PA Tag
RAM
BUS CONT.
Arbitor/Decode
Interrupt CONT.
Power
Management
Camera
Interface
Memory CONT.
SRAM/NOR/SDRAM
AMBA
Bus
I/F
WBPA[31:0]
Clock Generator
(MPLL)
Bridge & DMA (4Ch)
UART 0, 1, 2
USB Device
A
P
SDI/MMC
Watchdog
Timer
BUS CONT.
Arbitor/Decode
SPI0,1
SPI
Figure 1-1. S3C2440X Block Diagram
B
B
U
S
I2C
I2S
GPIO
RTC
ADC
Timer/PWM
0 ~ 3, 4(Internal)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-5
Page 6
2003.10.15
PRODUCT OVERVIEWS3C2440X
PIN ASSIGNMENTS
U
T
R
P
N
M
L
K
J
H
G
F
E
D
C
B
A
1234567891011121314151617
1-6
BOTTOM VIEW
Figure 1-2. S3C2440X Pin Assignments (289-FBGA)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 7
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-1. 289-Pin FBGA Pin Assignments – Pin Number Order (Sheet 1 of 3)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 19
2003.10.15
S3C2440XPRODUCT OVERVIEW
NOTE:
1. The @BUS REQ. shows the pin state at the external bus, which i s used by the other bus master.
2. ' – ‘ mark indicates the unchange d pin state at Bus Request mode.
3. Hi-z or Pre means Hi-z or early state and it is det ermined by th e setting of MISCCR register.
4. AI/AO means analog input/analog output.
5. P, I, and O mean power, input and output respectively.
6. The I/O state @nRESET shows the pin status in the @nRESET duration below.
@nRESET4FCLK
nRESET
FCLK
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-19
Page 20
2003.10.15
PRODUCT OVERVIEWS3C2440X
7.The t able below shows I/O types and the descriptions.
I/O TypeDescriptions
d12i(vdd12ih)1.2V Vdd for alive power
d12c(vdd12ih_core), si(vssih)1.2V Vdd/Vss for internal logic
d33o(vdd33oph), so(vssoph)3.3V Vdd/Vss for external logic
d33t(vdd33th_abb), st(vssbbh_abb) 3.3V Vdd/Vss for analog circuitry
drtc(vdd30th_rtc)3.0V Vdd for RTC power
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 21
2003.10.15
S3C2440XPRODUCT OVERVIEW
SIGNAL DESCRIPTIONS
Table 1-3. S3C2440X Signal Descriptions (Sheet 1 of 6)
SignalI/ODescriptions
Bus Controller
OM[1:0]IOM[1:0] sets S3C2440X in the TEST mode, which is used only at fabrication. Also, it
determines the bus width of nGCS0. The pull-up/down resistor determines the logic
level during RESET cycle.
00:Nand-boot01:16-bit10:32-bit11:Test mode
ADDR[26:0]OADDR[26:0] (Address Bus) outputs the memory address of the corresponding bank .
DATA[31:0]IODATA[31:0] (Data Bus) inputs data during memory read and outputs data during
memory write. The bus width is programmable among 8/16/32-bit.
nGCS[7:0]OnGCS[7:0] (General Chip Select) are activated when the address of a memory is
within the address region of each bank. The number of access cycles and the bank
size can be programmed.
nWEOnWE (Write Enable) indicates that the current bus cycle is a write cycle.
nOEOnOE (Output Enable) indicates that the current bus cycle is a read cycle.
nXBREQInXBREQ (Bus Hold Request) allows another bus master to request control of the
local bus. BACK active indicates that bus control has been granted.
nXBACKOnXBACK (Bus Hold Acknowledge) indicates that the S3C2440X has surrendered
control of the local bus to another bus master.
nWAITInWAIT requests to prolong a current bus cycle. As long as nWAIT is L, the current
bus cycle cannot be completed.
SDRAM/SRAM
nSRASOSDRAM Row Address Strobe
nSCASOSDRAM Column Address Strobe
nSCS[1:0]OSDRAM Chip Select
DQM[3:0]OSDRAM Data Mask
SCLK[1:0]OSDRAM Clock
SCKEOSDRAM Clock Enable
nBE[3:0]OUpper Byte/Lower Byte Enable(In case of 16-bit SRAM)
nWBE[3:0]OWrite Byte Enable
STN/TFT/SEC TFT: LCD Data Bus
STN/TFT/SEC TFT: LCD panel power enable control signal
STN/TFT: LCD clock signal
STN: LCD Frame signal
STN: LCD line signal
STN: VM alternates the polarity of the row and column voltage
TFT: Vertical synchronous signal
TFT: Horizontal synchronous signal
TFT: Data enable signal
TFT: Line End signal
SEC TFT: SEC(Samsung Electronics Company) TFT LCD panel control signal
SEC TFT: SEC(Samsung Electronics Company) TFT LCD panel control signal
SEC TFT: SEC(Samsung Electronics Company) TFT LCD panel control signal
SEC TFT: SEC(Samsung Electronics Company) TFT LCD panel control signal
SEC TFT: SEC(Samsung Electronics Company) TFT LCD panel control signal
SEC TFT: Timing control signal for specific TFT LCD
SEC TFT: Timing control signal for specific TFT LCD
LCD_LPCREVBO
SEC TFT: Timing control signal for specific TFT LCD
CAMERA Interface
CAMRESETOSoftware Reset to the Camera
CAMCLKOUTOMaster Clock to the Camera
CAMPCLKIPixel clock from Camera
CAMHREFIHorizontal sync signal from Camera
CAMVSYNCIVertical sync signal from Camera
CAMDATA[7:0]IPixel data for YCbCr
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 23
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-3. S3C2440X Signal Descriptions (Sheet 3 of 6)
SignalI/ODescriptions
UART
RxD[2:0]IUART receives data input
TxD[2:0]OUART transmits data output
nCTS[1:0]IUART clear to send input signal
nRTS[1:0]OUART request to send output signal
UARTCLKIUART clock signal
ADC
AIN[7:0]AIADC input[7:0]. If it isn’t used pin, it has to be Low (Ground).
VrefAIADC Vref
IIC-Bus
IICSDAIOIIC-bus data
IICSCLIOIIC-bus clock
IIS-Bus
I2SLRCKIOIIS-bus channel select clock
I2SSDOOIIS-bus serial data output
I2SSDIIIIS-bus serial data input
I2SSCLKIOIIS-bus serial clock
CDCLKOCODEC system clock
Touch Screen
nXPONOPlus X-axis on-off control signal
XMONOMinus X-axis on-off control signal
nYPONOPlus Y-axis on-off control signal
YMONOMinus Y-axis on-off control signal
USB Host
DN[1:0]IODATA(–) from USB host
DP[1:0]IODATA(+) from USB host
USB Device
PDN0IODATA(–) for USB peripheral
PDP0IODATA(+) for USB peripheral
SPI
SPIMISO[1:0]IOSPIMISO is the master data input line, when SPI is configured as a master.
When SPI is configured as a slave, these pins reverse its role.
SPIMOSI[1:0]IOSPIMOSI is the master data output line, when SPI is configured as a master.
When SPI is configured as a slave, these pins reverse its role.
SPICLK[1:0]IOSPI clock
nSS[1:0]ISPI chip select(only for slave mode)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-23
Page 24
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-3. S3C2440X Signal Descriptions (Sheet 4 of 6)
SignalI/ODescription
SD
SDDAT[3:0]IOSD receive/transmit data
SDCMDIOSD receive response/ transmit command
SDCLKOSD clock
General Port
GPn[116:0]IOGeneral input/output ports (some ports are output only)
nTRSTInTRST(TAP Controller Reset) resets the TAP controller at start.
If debugger is used, A 10K pull-up resistor has to be connected.
If debugger(black ICE) is not used, nTRST pin must be issued by a low active
pulse(Typically connected to nRESET).
TMSITMS (TAP Controller Mode Select) controls the sequence of the TAP controller's
states. A 10K pull-up resistor has to be connected to TMS pin.
TCKITCK (TAP Controller Clock) provides the clock input for the JTAG logic.
A 10K pull-up resistor must be connected to TCK pin.
TDIITDI (TAP Controller Data Input) is the serial input for test instructions and data.
A 10K pull-up resistor must be connected to TDI pin.
TDOOTDO (TAP Controller Data Output) is the serial output for test instructions and data.
1-24
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 25
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-3. S3C2440X Signal Descriptions (Sheet 5 of 6)
SignalI/ODescription
Reset, Clock & Power
XTOpllAOCrystal Output for internal osc circuit.
When OM[3:2] = 00b, XTIpll is used for MPLL CLK source and UPLL CLK source.
When OM[3:2] = 01b, XTIpll is used for MPLL CLK source only.
When OM[3:2] = 10b, XTIpll is used for UPLL CLK source only.
If it isn't used, it has to be a floating pin.
MPLLCAPAILoop filter capacitor for main clock.
UPLLCAPAILoop filter capacitor for USB clock.
XTIrtcAI32 kHz crystal input for RTC. If it isn’t used, it has to be High (3.3V).
XTOrtcAO32 kHz crystal output for RTC. If it isn’t used, it has to be Float.
CLKOUT[1:0]OClock output signal. The CLKSEL of MISCCR register configures the clock output
mode among the MPLL CLK, UPLL CLK, FCLK, HCLK, PCLK.
nRESETSTnRESET suspends any operation in progress and places S3C2440X into a known
reset state. For a reset, nRESET must be held to L level for at least 4 FCLK after the
processor power has been stabilized.
nRSTOUTOFor external device reset control(nRSTOUT = nRESET & nWDTRST & SW_RESET)
PWRENO1.2V core power on-off control signal
nBATT_FLTIProbe for battery state(Does not wake up at Sleep mode in case of low battery state).
If it isn’t used, it has to be High (3.3V).
OM[3:2]IOM[3:2] determines how the clock is made.
OM[3:2] = 00b, Crystal is used for MPLL CLK source and UPLL CLK source.
OM[3:2] = 01b, Crystal is used for MPLL CLK source
and EXTCLK is used for UPLL CLK source.
OM[3:2] = 10b, EXTCLK is used for MPLL CLK source
and Crystal is used for UPLL CLK source.
OM[3:2] = 11b, EXTCLK is used for MPLL CLK source and UPLL CLK source.
EXTCLKIExternal clock source.
When OM[3:2] = 11b, EXTCLK is used for MPLL CLK source and UPLL CLK source.
When OM[3:2] = 10b, EXTCLK is used for MPLL CLK source only.
When OM[3:2] = 01b, EXTCLK is used for UPLL CLK source only.
If it isn't used, it has to be High (3.3V).
XTIpllAICrystal Input for internal osc circuit.
When OM[3:2] = 00b, XTIpll is used for MPLL CLK source and UPLL CLK source.
When OM[3:2] = 01b, XTIpll is used for MPLL CLK source only.
When OM[3:2] = 10b, XTIpll is used for UPLL CLK source only.
If it isn't used, XTIpll has to be High (3.3V).
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-25
Page 26
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-3. S3C2440X Signal Descriptions (Sheet 6 of 6)
SignalI/ODescription
Power
VDDalivePS3C2440X reset block and port status register VDD(1.2V).
It should be always supplied whether in normal mode or in Sleep mode.
VDDi/VDDiarmPS3C2440X core logic VDD(1.2V) for CPU.
VSSi/VSSiarmPS3C2440X core logic VSS
VDDi_MPLLPS3C2440X MPLL analog and digital VDD (1.2 V).
VSSi_MPLLPS3C2440X MPLL analog and digital VSS.
VDDOPPS3C2440X I/O port VDD(3.3V)
VDDMOPPS3C2440X Memory I/O VDD
3.3V : SCLK up to 100MHz
2.5V : SCLK up to 80MHz
VSSOPPS3C2440X I/O port VSS
RTCVDDPRTC VDD (3.0V)
(This pin must be connected to power properly if RTC isn't used)
VDDi_UPLLPS3C2440X UPLL analog and digital VDD (1.2V)
VSSi_UPLLPS3C2440X UPLL analog and digital VSS
VDDA_ADCPS3C2440X ADC VDD(3.3V)
VSSA_ADCPS3C2440X ADC VSS
NOTE:
1.I/O means input/output.
2.AI/AO means analog input/analog output.
3.ST means schmitt-trigger.
4.P means power.
1-26
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 27
2003.10.15
S3C2440XPRODUCT OVERVIEW
S3C2440X SPECIAL REGISTERS
Table 1-4. S3C2440X Special Registers (Sheet 1 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
Memory Controller
BWSCON0x48000000
←
WR/WBus Width & Wait Status Control
BANKCON00x48000004Boot ROM Control
BANKCON10x48000008BANK1 Control
BANKCON20x4800000CBANK2 Control
BANKCON30x48000010BANK3 Control
BANKCON40x48000014BANK4 Control
BANKCON50x48000018BANK5 Control
BANKCON60x4800001CBANK6 Control
BANKCON70x48000020BANK7 Control
REFRESH0x48000024DRAM/SDRAM Refresh Control
BANKSIZE0x48000028Flexible Bank Size
MRSRB60x4800002CMode register set for SDRAM BANK6
MRSRB70x48000030Mode register set for SDRAM BANK7
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-27
Page 28
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet 2 of 14)
Register NameAddress
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
USB Host Controller
HcRevision0x49000000
←
WControl and Status Group
HcControl0x49000004
HcCommonStatus0x49000008
HcInterruptStatus0x4900000C
HcInterruptEnable0x49000010
HcInterruptDisable0x49000014
HcHCCA0x49000018Memory Pointer Group
HcPeriodCuttentED0x4900001C
HcControlHeadED0x49000020
HcControlCurrentED0x49000024
HcBulkHeadED0x49000028
HcBulkCurrentED0x4900002C
HcDoneHead0x49000030
HcRmInterval0x49000034Frame Counter Group
HcFmRemaining0x49000038
HcFmNumber0x4900003C
HcPeriodicStart0x49000040
HcLSThreshold0x49000044
HcRhDescriptorA0x49000048Root Hub Group
HcRhDescriptorB0x4900004C
HcRhStatus0x49000050
HcRhPortStatus10x49000054
HcRhPortStatus20x49000058
Interrupt Controller
SRCPND0X4A000000
←
WR/WInterrupt Request Status
INTMOD0X4A000004WInterrupt Mode Control
INTMSK0X4A000008R/WInterrupt Mask Control
PRIORITY0X4A00000CWIRQ Priority Control
INTPND0X4A000010R/WInterrupt Request Status
INTOFFSET0X4A000014RInterrupt request source offset
SUBSRCPND0X4A000018R/WSub source pending
INTSUBMSK0X4A00001CR/WInterrupt sub mask
1-28
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 29
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-4. S3C2440X Special Registers (Sheet 3 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
DMA
DISRC00x4B000000
←
WR/WDMA 0 Initial Source
DISRCC00x4B000004DMA 0 Initial Source Control
DIDST00x4B000008DMA 0 Initial Destination
DIDSTC00x4B00000CDMA 0 Initial Destination Control
DCON00x4B000010DMA 0 Control
DSTAT00x4B000014RDMA 0 Count
DCSRC00x4B000018DMA 0 Current Source
DCDST00x4B00001CDMA 0 Current Destination
DMASKTRIG00x4B000020R/WDMA 0 Mask Trigger
DISRC10x4B000040DMA 1 Initial Source
DISRCC10x4B000044DMA 1 Initial Source Control
DIDST10x4B000048DMA 1 Initial Destination
DIDSTC10x4B00004CDMA 1 Initial Destination Control
DCON10x4B000050DMA 1 Control
DSTAT10x4B000054RDMA 1 Count
DCSRC10x4B000058DMA 1 Current Source
DCDST10x4B00005CDMA 1 Current Destination
DMASKTRIG10x4B000060R/WDMA 1 Mask Trigger
DISRC20x4B000080DMA 2 Initial Source
DISRCC20x4B000084DMA 2 Initial Source Control
DIDST20x4B000088DMA 2 Initial Destination
DIDSTC20x4B00008CDMA 2 Initial Destination Control
DCON20x4B000090DMA 2 Control
DSTAT20x4B000094RDMA 2 Count
DCSRC20x4B000098DMA 2 Current Source
DCDST20x4B00009CDMA 2 Current Destination
DMASKTRIG20x4B0000A0R/WDMA 2 Mask Trigger
DISRC30x4B0000C0
←
WR/WDMA 3 Initial Source
DISRCC30x4B0000C4DMA 3 Initial Source Control
DIDST30x4B0000C8DMA 3 Initial Destination
DIDSTC30x4B0000CCDMA 3 Initial Destination Control
DCON30x4B0000D0DMA 3 Control
DSTAT30x4B0000D4RDMA 3 Count
DCSRC30x4B0000D8DMA 3 Current Source
DCDST30x4B0000DCDMA 3 Current Destination
DMASKTRIG30x4B0000E0R/WDMA 3 Mask Trigger
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-29
Page 30
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet 4 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
Clock & Power Management
LOCKTIME0x4C000000
←
WR/WPLL Lock Time Counter
MPLLCON0x4C000004MPLL Control
UPLLCON0x4C000008UPLL Control
CLKCON0x4C00000CClock Generator Control
CLKSLOW0x4C000010Slow Clock Control
CLKDIVN0x4C000014Clock divider Control
CAMDIVN0x4C000018Camera Clock divider Control
LCD Controller
LCDCON10X4D000000
←
WR/WLCD Control 1
LCDCON20X4D000004LCD Control 2
LCDCON30X4D000008LCD Control 3
LCDCON40X4D00000CLCD Control 4
LCDCON50X4D000010LCD Control 5
LCDSADDR10X4D000014STN/TFT: Frame Buffer Start
Address1
LCDSADDR20X4D000018STN/TFT: Frame Buffer Start
Address2
LCDSADDR30X4D00001CSTN/TFT: Virtual Screen Address Set
REDLUT0X4D000020STN: Red Lookup Table
GREENLUT0X4D000024STN: Green Lookup Table
BLUELUT0X4D000028STN: Blue Lookup Table
DITHMODE0X4D00004CSTN: Dithering Mode
TPAL0X4D000050TFT: Temporary Palette
LCDINTPND0X4D000054LCD Interrupt Pending
LCDSRCPND0X4D000058LCD Interrupt Source
LCDINTMSK0X4D00005CLCD Interrupt Mask
TCONSEL0X4D000060TCON(LPC3600/LCC3600) Control
1-30
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 31
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-4. S3C2440X Special Registers (Sheet 5 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
NAND Flash
NFCONF0x4E000000
←
WR/WNAND Flash Configuration
NFCONT0x4E000004NAND Flash Control
NFCMD0x4E000008NAND Flash Command
NFADDR0x4E00000CNAND Flash Address
NFDATA0x4E000010NAND Flash Data
NFMECC00x4E000014NAND Flash Main area ECC0/1
NFMECC10x4E000018NAND Flash Main area ECC2/3
NFSECC0x4E00001CNAND Flash Spare area ECC
NFSTAT0x4E000020NAND Flash Operation Status
NFESTAT00x4E000024NAND Flash ECC Status for I/O[7:0]
NFESTAT10x4E000028NAND Flash ECC Status for I/O[15:8]
NFMECC00x4E00002CRNAND Flash Main area ECC0 status
NFMECC10x4E000030NAND Flash Main Area ECC1 status
NFSECC0x4E000034NAND Flash Spare Area ECC status
NFSBLK0x4E000038R/WNAND Flash start block address
NFEBLK0x4E00003CNAND Flash end block address
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-31
Page 32
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet 6 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
Camera Interface
ASIZE0x4F000000
←
WWA-port Im age Size
STAY10x4F000004R/WY start address for 1stping-pong memory of A-
port Image
STAY20x4F000008Y start address for 2ndping-pong memory of A-
port Image
STAY30x4F00000CY start address for 3rdping-pong memory of A-
port Image
STAY40x4F000010Y start address for 4thping-pong memory of A-
port Image
AYBURST0x4F000014WA-port Image Y data burst length
ACBBURST0x4F000018A-port Image Cb data burst length
ACRBURST0x4F00001CA-port Image Cr data burst length
BSIZE0x4F000020B-port Image Size
STBY10x4F000024Y start address for 1stping-pong memory of B-
port Image
STBY20x4F000028Y start address for 2ndping-pong memory of B-
port Image
STBY30x4F00002CY start address for 3rdping-pong memory of B-
port Image
STBY40x4F000030Y start address for 4thping-pong memory of B-
port Image
BYBURST0x4F000034B-port Image Y data burst length
BCBBURST0x4F000038B-port Image Cb data burst length
BCRBURST0x4F00003CB-port Image Cr data burst length
ADISTWIDTH0x4F000040A Last HREF Distance Width
BDISTWIDTH0x4F000044B Last HREF Distance Width
YRATIO0x4F00004CY Scale Ratio
CRATIO0x4F000050C Scale Ratio
YORIGINAL0x4F000054Y Original Size
CORIGINAL0x4F00005CC Original Size
STACB10x4F000074A Cb 1 Start Address
STACB20x4F000078A Cb 2 Start Address
STACB30x4F00007CA Cb 3 Start Address
STACB40x4F000080A Cb 4 Start Address
1-32
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 33
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-4. S3C2440X Special Registers (Sheet 7 of 14)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-33
Page 34
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet 8 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
UART
ULCON00x50000000
←
WR/WUART0LineControl
UCON00x50000004UART 0 Control
UFCON00x50000008UART 0 FIFO Control
UMCON00x5000000CUART 0 Modem Control
UTRSTAT00x50000010RUART 0 Tx/Rx Status
UERSTAT00x50000014UART 0 Rx Error Status
UFSTAT00x50000018UART 0 FIFO Status
UMSTAT00x5000001CUART 0 Modem Status
UTXH00x500000230x50000020BWUART 0 Transmission Hold
URXH00x500000270x50000024RUART 0 Receive Buffer
UBRDIV00x50000028
←
WR/WUART 0 Baud Rate Divisor
ULCON10x50004000UART 1 Line Control
UCON10x50004004UART 1 Control
UFCON10x50004008UART 1 FIFO Control
UMCON10x5000400CUART 1 Modem Control
UTRSTAT10x50004010RUART 1 Tx/Rx Status
UERSTAT10x50004014UART 1 Rx Error Status
UFSTAT10x50004018UART 1 FIFO Status
UMSTAT10x5000401CUART 1 Modem Status
UTXH10x500040230x50004020BWUART 1 Transmission Hold
URXH10x500040270x50004024RUART 1 Receive Buffer
UBRDIV10x50004028
←
WR/WUART 1 Baud Rate Divisor
ULCON20x50008000UART 2 Line Control
UCON20x50008004UART 2 Control
UFCON20x50008008UART 2 FIFO Control
UTRSTAT20x50008010RUART 2 Tx/Rx Status
UERSTAT20x50008014UART 2 Rx Error Status
UFSTAT20x50008018UART 2 FIFO Status
UTXH20x500080230x50008020BWUART 2 Transmission Hold
URXH20x500080270x50008024RUART 2 Receive Buffer
UBRDIV20x50008028
←
WR/WUART 2 Baud Rate Divisor
1-34
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 35
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-4. S3C2440X Special Registers (Sheet 9 of 14)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-35
Page 36
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet 10 of 14))
Register NameAddress
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/W
rite
Function
USB Device
FUNC_ADDR_REG0x520001430x52000140BR/WFunction Address
PWR_REG0x520001470x52000144Power Management
EP_INT_REG0x5200014B0x52000148EP Interrupt Pending and Clear
USB_INT_REG0x5200015B0x52000158USB Interrupt Pending and Clear
EP_INT_EN_REG0x5200015F0x5200015CInterrupt Enable
USB_INT_EN_REG0x5200016F0x5200016CInterrupt Enable
FRAME_NUM1_REG0x520001730x52000170RFrame Number Lower Byte
FRAME_NUM2_REG0x520001770x52000174Frame Number Higher Byte
INDEX_REG0x5200017B0x52000178R/WRegister Index
EP0_CSR0x520001870x52000184Endpoint 0 Status
IN_CSR1_REG0x520001870x52000184In Endpoint Control Status
IN_CSR2_REG0x5200018B0x52000188In Endpoint Control Status
MAXP_REG0x520001830x52000180Endpoint Max Packet
OUT_CSR1_REG0x520001930x52000190Out Endpoint Control Status
OUT_CSR2_REG0x520001970x52000194Out Endpoint Control Status
OUT_FIFO_CNT1_REG0x5200019B0x52000198REndpoint Out Write Count
OUT_FIFO_CNT2_REG0x5200019F0x5200019CEndpoint Out Write Count
EP0_FIFO0x520001C30x520001C0R/WEndpoint 0 FIFO
EP1_FIFO0x520001C70x520001C4Endpoint 1 FIFO
EP2_FIFO0x520001CB0x520001C8Endpoint 2 FIFO
EP3_FIFO0x520001CF0x520001CCEndpoint 3 FIFO
EP4_FIFO0x520001D30x520001D0Endpoint 4 FIFO
EP1_DMA_CON0x520002030x52000200EP1 DMA Interface Control
EP1_DMA_UNIT0x520002070x52000204EP1 DMA Tx Unit Counter
EP1_DMA_FIFO0x5200020B0x52000208EP1 DMA Tx FIFO Counter
EP1_DMA_TTC_L0x5200020F0x5200020CEP1 DMA Total Tx Counter
EP1_DMA_TTC_M0x520002130x52000210EP1 DMA Total Tx Counter
EP1_DMA_TTC_H0x520002170x52000214EP1 DMA Total Tx Counter
1-36
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 37
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-4. S3C2440X Special Registers (Sheet 11 of 14)
Register NameAddress
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/W
rite
Function
USB Device (Continued)
EP2_DMA_CON0x5200021B0x52000218BR/WEP2 DMA Interface Control
EP2_DMA_UNIT0x5200021F0x5200021CEP2 DMA Tx Unit Counter
EP2_DMA_FIFO0x520002230x52000220EP2 DMA Tx FIFO Counter
EP2_DMA_TTC_L0x520002270x52000224EP2 DMA Total Tx Counter
EP2_DMA_TTC_M0x5200022B0x52000228EP2 DMA Total Tx Counter
EP2_DMA_TTC_H0x5200022F0x5200022CEP2 DMA Total Tx Counter
EP3_DMA_CON0x520002430x52000240EP3 DMA Interface Control
EP3_DMA_UNIT0x520002470x52000244EP3 DMA Tx Unit Counter
EP3_DMA_FIFO0x5200024B0x52000248EP3 DMA Tx FIFO Counter
EP3_DMA_TTC_L0x5200024F0x5200024CEP3 DMA Total Tx Counter
EP3_DMA_TTC_M0x520002530x52000250EP3 DMA Total Tx Counter
EP3_DMA_TTC_H0x520002570x52000254EP3 DMA Total Tx Counter
EP4_DMA_CON0x5200025B0x52000258EP4 DMA Interface Control
EP4_DMA_UNIT0x5200025F0x5200025CEP4 DMA Tx Unit Counter
EP4_DMA_FIFO0x520002630x52000260EP4 DMA Tx FIFO Counter
EP4_DMA_TTC_L0x520002670x52000264EP4 DMA Total Tx Counter
EP4_DMA_TTC_M0x5200026B0x52000268EP4 DMA Total Tx Counter
EP4_DMA_TTC_H0x5200026F0x5200026CEP4 DMA Total Tx Counter
Watchdog Timer
WTCON0x53000000
←
WR/WWatchdog Timer Mode
WTDAT0x53000004Watchdog Timer Data
WTCNT0x53000008Watchdog Timer Count
IIC
IICCON0x54000000
←
WR/WIIC Control
IICSTAT0x54000004IIC Status
IICADD0x54000008IIC Address
IICDS0x5400000CIIC Data Shift
IICLC0x54000010IIC multi-master line control
IIS
IISCON0x55000000,020x55000000HW,WR/WIIS Control
IISMOD0x55000004,06 0x55000004IIS Mode
IISPSR0x55000008,0A 0x55000008IIS Prescaler
IISFCON0x5500000C,0E 0x5500000CIIS FIFO Control
IISFIFO0x550000120x55000010HWIIS FIFO Entry
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-37
Page 38
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet 12 of 14)
Register
Name
Address
(B. Endian)
Address
(L.
Acc.
Unit
Read/
Write
Function
Endian)
I/O port
GPACON0x56000000
←
WR/WPort A Control
GPADAT0x56000004Port A Data
GPBCON0x56000010Port B Control
GPBDAT0x56000014Port B Data
GPBUP0x56000018Pull-up Control B
GPCCON0x56000020Port C Control
GPCDAT0x56000024Port C Data
GPCUP0x56000028Pull-up Control C
GPDCON0x56000030Port D Control
GPDDA1T0x56000034Port D Data
GPDUP0x56000038Pull-up Control D
GPECON0x56000040Port E Control
GPEDAT0x56000044Port E Data
GPEUP0x56000048Pull-up Control E
GPFCON0x56000050Port F Control
GPFDAT0x56000054Port F Data
GPFUP0x56000058Pull-up Control F
GPGCON0x56000060Port G Control
GPGDAT0x56000064Port G Data
GPGUP0x56000068Pull-up Control G
GPHCON0x56000070Port H Control
GPHDAT0x56000074Port H Data
GPHUP0x56000078Pull-up Control H
GPJCON0x560000D0Port J Control
GPJDAT0x560000D4Port J Data
GPJUP0x560000D8Pull-up Control J
MISCCR0x56000080Miscellaneous Control
DCLKCON0x56000084DCLK0/1 Control
EXTINT00x56000088External Interrupt Control Register 0
EXTINT10x5600008CExternal Interrupt Control Register 1
EXTINT20x56000090External Interrupt Control Register 2
1-38
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 39
2003.10.15
S3C2440XPRODUCT OVERVIEW
Table 1-4. S3C2440X Special Registers (Sheet 13 of 14)
External Pin Status
GSTATUS10x560000B0R/WChip ID
GSTATUS20x560000B4Reset Status
GSTATUS30x560000B8Inform Register
GSTATUS40x560000BCInform Register
MSLCON0x560000CCMemory Sleep Control Register
RTC
RTCCON0x570000430x57000040BR/WRTC Control
TICNT0x570000470x57000044Tick time count
RTCALM0x570000530x57000050RTC Alarm Control
ALMSEC0x570000570x57000054Alarm Second
ALMMIN0x5700005B0x57000058Alarm Minute
ALMHOUR0x5700005F0x5700005CAlarm Hour
ALMDATE0x570000630x57000060Alarm Day
ALMMON0x570000670x57000064Alarm Month
ALMYEAR0x5700006B0x57000068Alarm Year
RTCRST0x5700006F0x5700006CRTC Round Reset
BCDSEC0x570000730x57000070BCD Second
BCDMIN0x570000770x57000074BCD Minute
BCDHOUR0x5700007B0x57000078BCD Hour
BCDDATE0x5700007F0x5700007CBCD Day
BCDDAY0x570000830x57000080BCD Date
BCDMON0x570000870x57000084BCD Month
BCDYEAR0x5700008B0x57000088BCD Year
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
1-39
Page 40
2003.10.15
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet 14 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc. UnitRead/
Write
Function
A/D converter
ADCCON0x58000000
←
WR/WADC Control
ADCTSC0x58000004ADC Touch Screen Control
ADCDLY0x58000008ADC Start or Interval Delay
ADCDAT00x5800000CRADC Conversion Data
ADCDAT10x58000010ADC Conversion Data
ADCUPDN0x58000014R/WStylus Up or Down Interrpt status
SPI
SPCON0,10x59000000,20
←
WR/WSPI Control
SPSTA0,10x59000004,24RSPI Status
SPPIN0,10x59000008,28R/WSPI Pin Control
SPPRE0,10x5900000C,2CSPI Baud Rate Prescaler
SPTDAT0,10x59000010,30SPI Tx Data
SPRDAT0,10x59000014,34RSPI Rx Data
SD interface
SDICON0x5A000000
←
WR/WSDI Control
SDIPRE0x5A000004SDI Baud Rate Prescaler
SDICARG0x5A000008SDI Command Argument
SDICCON0x5A00000CSDI Command Control
SDICSTA0x5A000010R/(C)SDI Command Status
SDIRSP00x5A000014RSDI Response
SDIRSP10x5A000018SDI Response
SDIRSP20x5A00001CSDI Response
SDIRSP30x5A000020SDI Response
SDIDTIMER0x5A000024R/WSDI Data / Busy Timer
SDIBSIZE0x5A000028SDI Block Size
SDIDCON0x5A00002CSDI Data control
SDIDCNT0x5A000030RSDI Data Remain Counter
SDIDSTA0x5A000034R/(C)SDI Data Status
SDIFSTA0x5A000038RSDI FIFO Status
SDIDAT0x5A00003F0x5A00003CBR/WSDI Data
SDIIMSK0x5A000040
←
WSDI Interrupt Mask
1-40
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 41
2003.09.25
PRODUCT OVERVIEWS3C2440X
Table 1-4. S3C2440X Special Registers (Sheet of 14 of 14)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc. UnitRead/
Write
Function
A/D converter
ADCCON0x58000000
←
WR/WADC Control
ADCTSC0x58000004ADC Touch Screen Control
ADCDLY0x58000008ADC Start or Interval Delay
ADCDAT00x5800000CRADC Conversion Data
ADCDAT10x58000010ADC Conversion Data
ADCUPDN0x58000014R/WStylus Up or Down Interrpt status
SPI
SPCON0,10x59000000,20
←
WR/WSPI Control
SPSTA0,10x59000004,24RSPI Status
SPPIN0,10x59000008,28R/WSPI Pin Control
SPPRE0,10x5900000C,2CSPI Baud Rate Prescaler
SPTDAT0,10x59000010,30SPI Tx Data
SPRDAT0,10x59000014,34RSPIRx Data
SD interface
SDICON0x5A000000
←
WR/WSDI Control
SDIPRE0x5A000004SDI Baud Rate Prescaler
SDICARG0x5A000008SDI Command Argument
SDICCON0x5A00000CSDI Command Control
SDICSTA0x5A000010R/(C)SDI Command Status
SDIRSP00x5A000014RSDI Response
SDIRSP10x5A000018SDI Response
SDIRSP20x5A00001CSDI Response
SDIRSP30x5A000020SDI Response
SDIDTIMER0x5A000024R/WSDI Data / Busy Timer
SDIBSIZE0x5A000028SDI Block Size
SDIDCON0x5A00002CSDI Data control
SDIDCNT0x5A000030RSDI Data Remain Counter
SDIDSTA0x5A000034R/(C)SDI Data Status
SDIFSTA0x5A000038RSDI FIFO Status
SDIDAT0x5A00003F0x5A00003CBR/WSDI Data
SDIIMSK0x5A000040
←
WSDI Interrupt Mask
1-40
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 42
2003.09.25
S3C2440X RISC MICROPROCESSORMEMORY CONTROLLER
5MEMORY CONTROLLER
OVERVIEW
The S3C2440X memory controller provides memory control signals that are required for external memory access.
The S3C2440X has the following features:
— Little/Big endian (selectable by a software)
— Address space: 128Mbytes per bank (total 1GB/8 banks)
— Programmable access size (8/16/32-bit) for all banks except bank0 (16/32-bit)
— Total 8 memory banks
Six memory banks for ROM, SRAM, etc.
Remaining two memory banks for ROM, SRAM, SDRAM, etc .
— Seven fixed memory bank start address
— One flexible memory bank start address and programmable bank size
— Programmable access cycles for all memory banks
— External wait to extend the bus cycles
— Supporting self-refresh and power down mode in SDRAM
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
5-1
Page 43
2003.09.25
MEMORY CONTROLLERS3C2440X RISC MICROPROCESSOR
0x40000_0000
0x3800_0000
0x3000_0000
0x2800_0000
0x2000_0000
0x1800_0000
0x1000_0000
0x0800_0000
0x0000_0000
OM[1:0] = 01,10
SROM/SDRAM
(nGCS 7)
SROM/SDRAM
(nGCS 6)
SROM
(nGCS 5)
SROM
(nGCS 4)
SROM
(nGCS 3)
SROM
(nGCS 2)
SROM
(nGCS 1)
SROM
(nGCS 0)
[ Not using NAND flash for boot ROM ][ Using NAND flash for boot ROM ]
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 44
2003.09.25
S3C2440X RISC MICROPROCESSORMEMORY CONTROLLER
DEC.13, 2002
FUNCTION DESCRIPTION
BANK0 BUS WIDTH
The data bus of BANK0 (nGCS0) should be configured in width as one of 16-bit and 32-bit ones. Because the
BANK0 works as the booting ROM bank (map to 0x0000_0000), the bus width of BANK0 should be determined
before the first ROM access, which will depend on the logic level of OM[1:0] at Reset.
OM1 (Operating Mode 1)OM0 (Operating Mode 0)Booting ROM Data width
00Nand Flash Mode
0116-bit
1032-bit
11Test Mode
MEMORY (SROM/SDRAM) ADDRESS PIN CONNECTIONS
MEMORY ADDR. PINS3C2440X ADDR.
@ 8-bit DATA BUS
A0A0A1A2
A1A1A2A3
............
S3C2440X ADDR.
@16-bitDATABUS
S3C2440X ADDR.
@ 32-bit DATA BUS
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
5-3
Page 45
2003.09.25
MEMORY CONTROLLERS3C2440X RISC MICROPROCESSOR
SDRAM BANK ADDRESS PIN CONNECTION EXAMPLE
Table 5-2. SDRAM Bank Address Configuration
Bank SizeBus WidthBase ComponentMemory ConfigurationBank Address
2MBytex816Mbit(1M x 8 x 2Bank) x 1A20
x16(512K x 16 x 2B) x 1
4MBx16(1M x 8 x 2B) x 2A21
x16(1Mx8x2B) x2
8MBx1616Mb(2M x 4 x 2B) x 4A22
x32(1Mx8x2B) x4
x864Mb(4M x 8 x 2B) x 1
x8(2M x 8 x 4B) x 1A[22:21]
x16(2M x 16 x 2B) x 1A22
x16(1M x 16 x 4B) x 1A[22:21]
x32(512K x 32 x 4B) x 1
16MBx3216Mb(2Mx4x2B) x8A23
x864Mb(8M x 4 x 2B) x 2
x8(4M x 4 x 4B) x 2A[23:22]
x16(4Mx8x2B) x2A23
x16(2Mx8x4B) x2A[23:22]
x32(2M x 16 x 2B) x 2A23
x32(1M x 16 x 4B) x 2A[23:22]
x8128Mb(4M x 8 x 4B) x 1
x16(2M x 16 x 4B) x 1
32MBx1664Mb(8Mx4x2B) x4A24
x16(4Mx4x4B) x4A[24:23]
x32(4Mx8x2B) x4A24
x32(2Mx8x4B) x4A[24:23]
x16128Mb(4M x 8 x 4B) x 2
x32(2M x 16 x 4B) x 2
x8256Mb(8M x 8 x 4B) x 1
x16(4M x 16 x 4B) x 1
64MBx32128Mb(4M x 8 x 4B) x 4A[25:24]
x16256Mb(8M x 8 x 4B) x 2
x32(4M x 16 x 4B) x 2
x8512Mb(16M x 8 x 4 B) x 1
128MBx32256Mbit(8M x 8 x 4Bank) x 4A[26:25]
x8512Mb(32M x 4 x 4 B) x 2
x16(16Mx8x4B) x2
x32(8M x 16 x 4B) x 2
5-4
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 46
2003.09.25
S3C2440X RISC MICROPROCESSORMEMORY CONTROLLER
DEC.13, 2002
nWAIT PIN OPERATION
If the WAIT corresponding to each memory bank is enabled, the nOE duration should be prolonged by the external
nWAIT pin while the memory bank is active. nWAIT is checked from tacc-1. nOE will be deasserted at the next
clock after sampling nWAIT is high. The nWE signal have the same relation with nOE.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
5-5
Page 47
2003.09.25
MEMORY CONTROLLERS3C2440X RISC MICROPROCESSOR
nXBREQ/nXBACK Pin Operation
If nXBREQ is asserted, the S3C2440X will respond by lowering nXBACK. If nXBACK=L, the address/data bus and
memory control signals are in Hi-Z state as shown in Table 1-1. When nXBREQ is de-asserted, the nXBACK will
also be de-asserted.
HCLK
SCLK
SCKE, A[24:0]
D[31:0], nGCS
nOE,nWE
nWBE
nXBREQ
nXBACK
1clk
Figure 5-3. S3C2440X nXBREQ/nXBACK Timing Diagram
5-6
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 54
2003.09.25
S3C2440X RISC MICROPROCESSORMEMORY CONTROLLER
DEC.13, 2002
BUS WIDTH & WAIT CONTROL REGISTER (BWSCON)
RegisterAddressR/WDescriptionReset Value
BWSCON0x48000000R/WBus width & wait status control register0x000000
BWSCONBitDescriptionInitial state
ST7[31]Determine SRAM for using UB/LB for bank 7.
0 = Not using UB/LB (The pins are dedicated nWBE[3:0])
1 = Using UB/LB (The pins are dedicated nBE[3:0])
WS7[30]Determine WAIT status for bank 7.
0 = WAIT disable1 = WAIT enable
DW7[29:28]Determine data bus width for bank 7.
00 = 8-bit01 = 16-bit,10 = 32-bit11 = reserved
ST6[27]Determine SRAM for using UB/LB for bank 6.
0 = Not using UB/LB (The pins are dedicated nWBE[3:0 )
1 = Using UB/LB (The pins are dedicated nBE[3:0])
WS6[26]Determine WAIT status for bank 6.
0 = WAIT disable,1 = WAIT enable
DW6[25:24]Determine data bus width for bank 6.
00 = 8-bit01 = 16-bit,10 = 32-bit11 = reserved
ST5[23]Determine SRAM for using UB/LB for bank 5.
0 = Not using UB/LB (The pins are dedicated nWBE[3:0])
1 = Using UB/LB (The pins are dedicated nBE[3:0])
WS5[22]Determine WAIT status for bank 5.
0 = WAIT disable,1 = WAIT enable
DW5[21:20]Determine data bus width for bank 5.
00 = 8-bit01 = 16-bit,10 = 32-bit11 = reserved
ST4[19]Determine SRAM for using UB/LB for bank 4.
0 = Not using UB/LB (The pins are dedicated nWBE[3:0])
1 = Using UB/LB (The pins are dedicated nBE[3:0])
WS4[18]Determine WAIT status for bank 4.
0 = WAIT disable1 = WAIT enable
DW4[17:16]Determine data bus width for bank 4.
00 = 8-bit01 = 16-bit,10 = 32-bit11 = reserved
ST3[15]Determine SRAM for using UB/LB for bank 3.
0 = Not using UB/LB (The pins are dedicated nWBE[3:0])
1 = Using UB/LB (The pins are dedicated nBE[3:0])
WS3[14]Determine WAIT status for bank 3.
0 = WAIT disable1 = WAIT enable
DW3[13:12]Determine data bus width for bank 3.
00 = 8-bit01 = 16-bit,10 = 32-bit11 = reserved
ST2[11]Determine SRAM for using UB/LB for bank 2.
0 = Not using UB/LB (The pins are dedicated nWBE[3:0])
1 = Using UB/LB (The pins are dedicated nBE[3:0].)
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
5-13
Page 55
2003.09.25
MEMORY CONTROLLERS3C2440X RISC MICROPROCESSOR
BUS WIDTH & WAIT CONTROL REGISTER (BWSCON) (Continued)
WS2[10]Determine WAIT status for bank 2.
0 = WAIT disable1 = WAIT enable
DW2[9:8]Determine data bus width for bank 2.
00 = 8-bit01 = 16-bit,10 = 32-bit11 = reserved
ST1[7]Determine SRAM for using UB/LB for bank 1.
0 = Not using UB/LB (The pins are dedicated nWBE[3:0])
1 = Using UB/LB (The pins are dedicated nBE[3:0])
WS1[6]Determine WAIT status for bank 1.
0 = WAIT disable,1 = WAIT enable
DW1[5:4]Determine data bus width for bank 1.
00 = 8-bit01 = 16-bit,10 = 32-bit11 = reserved
DW0[2:1]Indicate data bus width for bank 0 (read only).
01 = 16-bit,10 = 32-bit
The states are selected by OM[1:0] pins
Reserved[0]Reserve to 00
Note:
1. All types of master clock in this memory controller correspond to the bus clock.
For example, HCLK in SRAM is the same as the bus clock, and SCLK in SDRAM is also the same as the bus
clock. In this chapter (Memory Controller), one clock means one bus clock.
2. nBE[3:0] is the 'AND' signal nWBE[3:0] an d nOE.
0
0
0
0
0
-
5-14
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 56
2003.09.25
S3C2440X RISC MICROPROCESSORMEMORY CONTROLLER
DEC.13, 2002
BANK CONTROL REGISTER (BANKCONn: nGCS0-nGCS5)
RegisterAddressR/WDescriptionReset Value
BANKCON00x48000004R/WBank 0 control register0x0700
BANKCON10x48000008R/WBank 1 control register0x0700
BANKCON20x4800000CR/WBank 2 control register0x0700
BANKCON30x48000010R/WBank 3 control register0x0700
BANKCON40x48000014R/WBank 4 control register0x0700
BANKCON50x48000018R/WBank 5 control register0x0700
Note: MRSR regis ter must not be reconfigured while the code is running on SDRAM.
Important Note: In Sleep mode, SDRAM has to enter SDRAM self-refresh mode.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
5-19
Page 61
2003.09.25
MEMORY CONTROLLERS3C2440X RISC MICROPROCESSOR
NOTES
5-20
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 62
2003.09.25
S3C2440XRISC MICROPROCESSORNAND FLASH CONTROLLER
NAND FLASH CONTORLLER
OVERVIEW
In recent times, NOR flash memory gets high in price while an SDRAM and a NAND flash memory get moderate,
motivating some users to execute the boot code on a NAND flash and execute the main code on an SDRAM.
S3C2440X boot code can be executed on an external NAND flash memory. In order to support NAND flash boot
loader, the S3C2440X is equipped with an internal SRAM buffer called ‘Steppingstone’. When booting, the first 4
KBytes of the NAND flash memory will be loaded into Steppingstone and the boot code loaded into Steppingstone
will be executed.
Generally, t he boot code will copy NAND flash content to SDRAM. Using hardware ECC, the NAND flash data
validity will be checked. Upon the completion of the copy, the main pr ogram will be executed on the SDRAM.
FEATURES
1) Auto boot: The boot code is transferred into 4-kbytes Steppingstone during reset. After the transfer, the boot
code will be executed on the Steppingstone.
2) NAND Flash memory I/F: Support 256Words, 512Bytes, 1KWords and 2KBytes Page.
3) Software mode: User can directly access NAND flash memory, for example this feature can be used inread/erase/program NAND flash memory.
During reset, Nand flash controller will get inf ormation about connected NAND f lash through Pin status(NCON(Adv
flash), GPG13(Page size), GPG14(Address cycle), GPG15(Bus width) – refer to PIN CONFIGURATION), After
power-on or system reset is occurred, the NAND Flash cont roller load automaticallythe 4-KBytes boot loader
codes. After loading the boot loader codes, the boot loader code in steppingstone is executed.
NOTE : During the auto boot, the ECC is not checked. So, the first 4-KB of NAND flash should have no bit error.
6-2
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 65
2003.09.25
NAND FLASH CONTROLLERS3C2440XRISC MICROPROCESSOR
NAND FLASH MEMORY TIMING
TACLSTWRPH0TWRPH1
HCLK
CLE / ALE
nWE
DATA
COMMAND / ADDRESS
Figure 6-3. CLE & ALE Timing (TACLS=1, TWRPH0=0, TWRPH1=0)
TWRPH0TWRPH1
HCLK
nWE / nRE
DATADATA
Figure 6-4 nWE & nRE Timing (TWRPH0=0, TWRPH1=0)
6-4
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 66
2003.09.25
S3C2440XRISC MICROPROCESSORNAND FLASH CONTROLLER
SOFTWARE MODE
S3C2440X only supports software mode access. Using this mode, you can completely access the NAND flash
memory. The NAND Flash Controller supports direct access interface with the NAND flash memory.
1) Writing to the command register = the NAND Flash Memory command cycle
2) Writing to the address register = the NAND Flash Memory address cycle
3) Writing to the data register = write data to t he NAND Flash Memory (write c ycle)
4) Reading from the data register = read data from the NAND Flash Memory (read cycle)
5) Reading main ECC registers and Spare ECC registers = read data from the NAND Flash Memory
NOTE : In the software mode, you have to check the RnB status input pin by using polling or interrupt.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
The NAND Flash controller uses Steppingstone as the buffer on booting and also you can use this area for another
purpose.
6-6
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 68
2003.09.25
S3C2440XRISC MICROPROCESSORNAND FLASH CONTROLLER
ECC(Error Correction Code)
NAND Flash controller has four ECC (Error Correction Code) modules. The two ECC modules (one for data[7:0]
and the other for data[15:8]) can be used for (up to) 2048 bytes ECC Parity code generation, and the others(one
for data[7:0] and the other for data[15:8]) can be used for (up to) 16 bytes ECC Parity code generation.
NFMECCD02ndECC for I/O[15:8]2ndECC for I/O[7:0]1stECC for I/O[15:8]1stECC for I/O[7:0]
NFMECCD14th ECC for I/O[15:8]4thECC for I/O[7:0]3rdECC for I/O[15:8]3rdECC for I/O[7:0]
RegisterBit [31:24]Bit [23:16]Bit [15:8]Bit [7:0]
NFSECCD2ndECC for I/O[15:8]2ndECC for I/O[7:0]1stECC for I/O[15:8]1stECC for I/O[7:0]
2) 8-bit NAND Flash Memory Interface
RegisterBit [31:24]Bit [23:16]Bit [15:8]Bit [7:0]
NFMECCD0-2
NFMECCD1-4
nd
ECC for I/O[7:0]-1stECC for I/O[7:0]
th
ECC for I/O[7:0]-3rdECC for I/O[7:0]
RegisterBit [31:24]Bit [23:16]Bit [15:8]Bit [7:0]
NFSECCD-2
nd
ECC for I/O[7:0]-1stECC for I/O[7:0]
ECC PROGRAMMING GUIDE
1) In software mode, ECC module generates ECC parity code for all read / write data. So you have to reset
ECC value by writing the InitECC(NFCONT[4]) bit as ‘1’ and have to clear theMainECCLock(NFCONT[5])
bit to ‘0’(Unlock) before read or write data.
MainECCLock(NFCONT[5]) and SpareECCLock(NFCONT[6]) control whether ECC Parity code is
generated or not.
2) Whenever data is read or written, the ECC module generates ECC parity code on register NFMECC0/1.
3) After you completely read or write one page (not include spare area data), Set the MainECCLock bit to
‘1’(Lock). ECC Parity code is locked and the value of the ECC status register will not be changed.
4) To generate spare area ECC parity code, Clear as ‘0’(Unlock) SpareECCLock(NFCONT[6]) bit.
5) Whenever data is read or written, the spare area ECC module generates ECC parity code on register
NFSECC.
6) After you completely read or write spare area, Set the SpareECCLock bit to ‘1’(Lock). ECC Parity code is
locked and the value of the ECC status register will not be changed.
7) From now, you can use these values to record to the spare area or check the bit error.
(Note) NFSECCD is for ECC in the spare area (Usually, the user will write the ECC value of main data area to
6-8
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 70
2003.09.25
S3C2440XRISC MICROPROCESSORNAND FLASH CONTROLLER
Spare area, which value will be the same as NFMECC0/1) and which is generated from the main data area.
NAND FLASH MEMORY MAPPING
0xFFFF_FFFF
Not Used
0x6000_0000
SFR Area
0x4800_0000
Not Used
SFR Area
0x4000_0FFF
0x4000_0000
0x3800_0000
0x3000_0000
0x2800_0000
0x2000_0000
0x1800_0000
0x1000_0000
0x0800_0000
0x0000_0000
BootSRAM
(4KB)
SDRAM
(BANK7, nGCS7)
SDRAM
(BANK6, nGCS6)
SROM
(BANK5, nGCS5)
SROM
(BANK4, nGCS4)
SROM
(BANK3, nGCS3)
SROM
(BANK2, nGCS2)
SROM
(BANK1, nGCS1)
SROM
(BANK0, nGCS0)
OM[1:0] = 01, 10OM[1:0] = 00
Not Used
SDRAM
(BANK7, nGCS7)
SDRAM
(BANK6, nGCS6)
SROM
(BANK5, nGCS5)
SROM
(BANK4, nGCS4)
SROM
(BANK3, nGCS3)
SROM
(BANK2, nGCS2)
SROM
(BANK1, nGCS1)
BootSRAM
(4KB)
Figure 6-4. NAND Flash Memory Mapping
Note: SROM means ROM or SRAM type memory
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Reserved
CLE & ALE duration setting value (0~7)
Duration = HCLK x TACLS
Reserved
TWRPH0 duration setting value (0~7)
Duration = HCLK x ( TWRPH0 + 1 )
Reserved
TWRPH1 duration setting value (0~7)
Duration = HCLK x ( TWRPH1 + 1 )
-
001
0
000
0
000
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
6-11
Page 73
2003.09.25
NAND FLASH CONTROLLERS3C2440XRISC MICROPROCESSOR
AdvFlash (Read only)[3]Advance NAND flash memory for auto-booting
0: Support 256 or 512 byte/page NAND flash memory
1: Support 1024 or 2048 byte/page NAND flash memory
This bit is determined by NCON0 pin status during reset
and wake-up from sleep mode.
PageSize ( Read only)[2]
NAND flash memory page size for auto-booting
AdvFlash PageSize
When AdvFlash is 0,
0: 256 Bytes/page,1: 512 Bytes/page
When AdvFlash is 1,
0: 1024 Bytes/page,1: 2048 Bytes/page
This bit is determined by GPG13 pin status during reset
and wake-up from sleep mode.
After reset, the GPG13 can be used as general I/O port
or External interrupt.
AddrCycle (Read only)[1]
NAND flash memory Address cycle for auto-booting
AdvFlash AddrCycle
When AdvFlash is 0,
H/W Set
(NCON0)
H/W Set
(GPG13)
H/W Set
(GPG14)
0: 3 address cycle1: 4 address cycle
When AdvFlash is 1,
0: 4 address cycle1: 5 address cycle
This bit is determined by GPG14pin status during reset
and wake-up from sleep mode.
After reset, the GPG14can be used as general I/O port or
External interrupt.
BusWidth (R/W)[0]NAND Flash Memory I/O bus width for auto-booting and
general access.
0: 8-bit bus1: 16-bit bus
This bit is determined by GPG15 pin status during reset
and wake-up from sleep mode.
After reset, the GPG15 can be used as general I/O port or
External interrupt.
This bit can be changed by software.
H/W Set
(GPG15)
6-12
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 74
2003.09.25
S3C2440XRISC MICROPROCESSORNAND FLASH CONTROLLER
CONTROL REGISTER
RegisterAddressR/WDescriptionReset Value
NFCONT0x4E000004R/WNAND Flash control register0x0384
NFCONTBitDescriptionInitial State
Reserved[14:15]
Lock-tight[13]
Soft Lock[12]
Reserved
Lock-tight configuration
0: Disable loc k-tight1: Enable lock-tight,
Once this bit is s et to 1, you cannot clear. Only reset or
wake up from sleep mode can make this bit disable(can
not cleared by software).
Whenitissetto1,theareasettingin
NFSBLK(0x4E000038) to NFEBLK(0x4E00003C)-1 is
unlocked, and except this area, write or erase command
will be invalid and only read command is valid.
When you try to write or erase locked area, the illegal
access will be occur (NFSTAT[3] bit will be set).
If the NFSBLK and NFEBLK are same, entire area will be
locked.
Soft Lock configuration
0: Disable lock1: Enable lock
Soft lock area can be modified at any time by software.
Whenitissetto1,theareasettingin
NFSBLK(0x4E000038) to NFEBLK(0x4E00003C)-1 is
unlocked, and except this area, write or erase command
will be invalid and only read command is valid.
0
0
1
When you try to write or erase locked area, the illegal
access will be occur (NFSTAT[3] bit will be set).
If the NFSBLK and NFEBLK are same, entire area will be
locked.
Reserved[11]
Reserved
EnbIllegalAccINT[10]Illegal access interrupt control
0: Disable interrupt1: Enable interrupt
Illegal access interrupt is occurs when CPU tries to
program or erase locking area (the area setting in
NFSBLK(0x4E000038) to NFEBLK(0x4E00003C)-1).
EnbRnBINT[9]RnB status input signal transition interrupt control
NFADDR0x4E00000CR/WNAND Flash address s et register0x0000XX00
REG_ADDRBitDescriptionInitial State
Reserved[15:8]Reserved0x00
NFADDR[7:0]NAND Flash memory address value0x00
DATA REGISTER
RegisterAddressR/WDescriptionReset Value
NFDATA0x4E000010R/WNAND Flash data register0xXXXX
NFDATABitDescriptionInitial State
NFDATA[31:0]NAND Flash read/program data value f or I/O
0xXXXX
(Note) Refer to DATA REGISTER CONFIGURATION in
p6-5.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
6-15
Page 77
2003.09.25
NAND FLASH CONTROLLERS3C2440XRISC MICROPROCESSOR
MAIN DATA AREA REGISTER
RegisterAddressR/WDescriptionReset Value
NFMECCD0 0x4E000014R/WNAND Flash ECC 1stand 2ndregister for main data read
0x00000000
(Note) Refer to ECC MODULE FEATURES in p6-8.
NFMECCD1 0x4E000018R/WNAND Flash ECC 3rd4thregister for main data read
0x00000000
(Note) Refer to ECC MODULE FEATURES in p6-8.
NFMECCD0BitDescriptionInitial State
ECCData1_1[31:24]2ndECC for I/O[15:8]0x00
ECCData1_0[23:16]2ndECC for I/O[ 7:0]
Note : In Software mode, Read this register when you
need to read 2
nd
ECC value from NAND flash memory
ECCData0_1[15:8]1stECC for I/O[15:8]0x00
ECCData0_0[7:0]1stECC for I/O[ 7:0]
Note : In Software mode, Read this register when you
need to read 1
st
ECC value from NAND flash memory.
This register has same read function of NFDATA.
(Note) Only word access is valid.
NFMECCD1BitDescriptionInitial State
0x00
0x00
ECCData3_1[31:24]4thECC for I/O[15:8]0x00
ECCData3_0[23:16]4thECC for I/O[ 7:0]
Note : In Software mode, Read this register when you
need to read 4
th
ECC value from NAND flash memory
ECCData2_1[15:8]3rdECC for I/O[15:8]0x00
ECCData2_0[7:0]3rdECC for I/O[ 7:0]
Note: In Software mode, Read this register when you need
to read 3
rd
ECC value from NAND flash memory. This
register has same read function of NFDATA.
(Note) Only word access is valid.
Important Note
MAIN DATA AREA REGISTER (NFMECCD0/1) does not meet the specification.
Next revision chip will meet the specification.
Workaround: ECC detection by software
0x00
0x00
6-16
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 78
2003.09.25
r
rorCor
r
S3C2440XRISC MICROPROCESSORNAND FLASH CONTROLLER
SPARE AREA ECC REGISTER
RegisterAddressR/WDescriptionReset Value
NFSECCD0x4E00001CR/W NAND Flash ECC(E
ection Code)registerforspare
0x00000000
area data read
NFSECCDBitDescriptionInitial State
ECCData1_1[31:24]2ndECC for I/O[15:8]0x00
ECCData1_0[23:16]2ndECC for I/O[ 7:0]
Note: In Software m ode, Read this register when you need to
read 2
nd
ECC value from NAND flash memory
ECCData0_1[15:8]1stECC for I/O[15:8]0x00
ECCData0_0[7:0]1stECC for I/O[ 7:0]
Note: In Software m ode, Read this register when you need to
read 1
st
ECC value from NAND flash memory. This register has
same read function of NFDATA.
(Note) Only word access is valid.
0x00
0x00
6-17
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 79
2003.09.25
NAND FLASH CONTROLLERS3C2440XRISC MICROPROCESSOR
NFCON STATUS REGISTER
RegisterAddressR/WDescriptionReset Value
NFSTAT0x4E000020 R/W NAND Flash operation status register0xXX00
NFSTATBitDescriptionInitial State
Reserved[7]
Reserved
Reserved[4:6]Reserved0
IllegalAccess[3]
Once Soft Lock or Lock-tight is enabled, The illegal access
(program, erase) to the memory makes this bit set.
0: illegal access is not detected
1: illegal access is detected
RnB_TransDetect[2]
When RnB low to high transition is occurred, this value set and
issue interrupt if enabled. To clear this value write ‘1’.
0: RnB transition is not detected
1: RnB transition is detected
Transition configuration is set in RnB_TransMode(NFCONT[8]).
nCE
[1]
The status of nCE output pin
(Read-only)
RnB
(Read-only)
[0]
The status of RnB input pin.
0: NAND Flash memory busy
1: NAND Flash memory ready to operate
X
0
0
1
1
6-18
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 80
2003.09.25
S3C2440XRISC MICROPROCESSORNAND FLASH CONTROLLER
ECC0/1 STATUS REGISTER
RegisterAddressR/WDescriptionReset Value
NFESTAT00x4E000024R/W NAND Flash ECC Status register for I/O [7:0]0x00000000
NFESTAT10x4E000028R/W NAND Flash ECC Status register for I/O [15:8]0x00000000
NFESTAT0BitDescriptionInitial State
SErrorDataNo[24:21]In spare area, Indicates which number data is error00
SErrorBitNo[20:18]In spare area, Indicates which bit is error000
MErrorDataNo[17:7]In main data area, Indicates which number data is error0x00
MErrorBitNo[6:4]In main data area, Indicates which bit is error000
SpareError[3:2]Indicates whether spare area bit fail error occurred
00: No Error01: 1-bit error(correctable)
10: Multiple error11: ECC area error
MainError[1:0]Indicates whether main data area bit fail error occurred
00: No Error01: 1-bit error(correctable)
10: Multiple error11: ECC area error
Note : The above values are only valid when both ECC register and ECC status register have valid value.
NFESTAT1BitDescriptionInitial State
SErrorDataNo[24:21]In spare area, Indicates which number data is error00
SErrorBitNo[20:18]In spare area, Indicates which bit is error000
MErrorDataNo[17:7]In main data area, Indicates which number data is error0x00
MErrorBitNo[6:4]In main data area, Indicates which bit is error000
SpareError[3:2]Indicates whether spare area bit fail error occurred
00: No Error01: 1-bit error(correctable)
10: Multiple error11: ECC area error
00
00
00
MainError[1:0]Indicates whether main data area bit fail error occurred
00: No Error01: 1-bit error(correctable)
10: Multiple error11: ECC area error
Note : The above values are only valid when both ECC register and ECC status register have valid value.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
00
6-19
Page 81
2003.09.25
NAND FLASH CONTROLLERS3C2440XRISC MICROPROCESSOR
MAIN DATA AREA ECC0 STATUS REGISTER
RegisterAddressR/WDescriptionReset Value
NFMECC0 0x4E00002CRN AND Flash ECC register for data[7:0]0xXXXX XX
NFMECC1 0x4E000030RNAND Flash ECC register for data[15:8]0xXXXXXX
NFMECC0BitDescriptionInitial State
MECC0_3[31:24]ECC3 for data[7:0]0xXX
MECC0_2[23:16]ECC2 for data[7:0]0xXX
MECC0_1[15:8]ECC1 for data[7:0]0xXX
MECC0_0[7:0]ECC0 for data[7:0]0xXX
(Note) The NAND flash controller generate NFMECC0/1 when read or write main area data while the
MainECCLock(NFCONT[5]) bit is ‘0’(Unlock).
SPARE AREA ECC STATUS REGISTER
RegisterAddressR/WDescriptionReset Value
NFSECC0x4E000034RNAND Flash ECC register for I/O [15:0]0xXXXXXX
NFSECCBitDescriptionInitial State
SECC1_1[31:24]Spare area ECC1 Status for I/O[15:8]0xXX
SECC1_0[23:16]Spare area ECC0 Status for I/O[15:8]0xXX
SECC0_1[15:8]Spare area ECC1 Status for I/O[7:0]0xXX
SECC0_0[7:0]Spare area ECC0 Status for I/O[7:0]0xXX
(Note) The NAND flash controller generate NFSECC when read or write spare area data while the
SpareECCLock(NFCONT[6]) bit is ‘0’(Unlock).
6-20
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Note : Advance Flash’s block Address start fr om 3-address cycle. So block address register only needs 3-bytes
The NFSLK and NFEBLK can be changed while Soft lock bit(NFCONT[12]) is enabled. But cannot be changed
when Lock-tight bit(NFCONT[13]) is set.
NAND flash memory
When NFSB LK=NFEBLK
Address
Locked area
(Read only)
High
NFEBLK
NFEBLK-1
Prorammable/
Readable
Area
NFSBLK
NFEBLK
Locked Area
(Read only)
NFSBLK
Locked area
(Read only)
Low
when Lock-tight =1
or SoftLock=1
.
6-21
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 83
2003.09.25
S3C2440X RISC MICROPROCESSORCLOCK & POWER MANAGEMENT
CLOCK & POWER MANAGEMENT
OVERVIEW
The clock & power management block consists of three parts: Clock control, USB control, and Power control.
The Clock control logic in S3C2440X can generate the required clock signals including FCLK for CPU, HCLK for
the AHB bus peripherals, and PCLK for the APB bus peripherals. The S3C2440X has two Phase Locked Loops
(PLLs): one for FCLK, HCLK, and PCLK, and the other dedicated for USB block (48Mhz). The clock control logic
can make slow clocks without PLL and connect/disconnect the clock to each peripheral block by software, which
will reduce the power consumption.
For the power control logic, the S3C2440X has various power management schemes to keep optimal power
consumption for a given task. The power management block in the S3C2440X can activate four modes: NORMAL
mode, SLOW mode, IDLE mode, and SLEEP mode.
NORMAL mode: The block supplies clocks to CPU as well as all peripherals in the S3C2440X. In this mode, the
power consumption will be maximized when all peripherals are turned on. It allows the user to control the operation
of peripherals by software. For example, if a timer is not needed, the user can disconnect the clock to the timer to
reduce power consumption.
SLOW mode: Non-PLL mode. Unlike the Normal mode, the Slow mode uses an external clock (XTIpll or
EXTCLK) directly as FCLK in the S3C2440X without PLL. In this mode, the power consumption depends on the
frequency of the external clock only. The power consumption due to PLL is excluded.
IDLE mode: The block disconnects clocks (FCLK) only to the CPU core while it supplies clocks to all other
peripherals. The IDLE mode results in reduced power consumption due to CPU core. Any interrupt request to CPU
can be woken up from the Idle mode.
SLEEP mode: The block disconnects the internal power. So, there occurs no power consumption due to CPU and
the internal logic except the wake-up logic in this mode. Activating the SLEEP mode requires two independent
power sources. One of the two power sources supplies the power for the wake-up logic. The other one supplies
other internal logics including CPU, and should be controlled for power on/off. In the SLEEP mode, the second
power supply source for the CPU and internal logics will be turned off. The wakeup from SLEEP mode can be
issued by the EINT[15:0] or by RTC alarm interrupt.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-1
Page 84
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
FUNCTIONAL DESCRIPTION
CLOCK ARCHITECTURE
Figure 7-1 shows a block diagram of the clock architecture. The main clock source comes from an external crystal
(XTIpll) or an external clock (EXTCLK). The clock generator includes an oscillator (Oscillation Amplifier), which is
connected to an external crystal, and also has two PLLs (Phase-Locked-Loop), which generate the high frequency
clock required in the S3C2440X.
CLOCK SOURCE SELECTION
Table 7-1 shows the relationship between the combination of mode control pins (OM3 and OM2) and the selection
of source clock for the S3C2440X. The OM[3:2] status is latched internally by referring the OM3 and OM2 pins at
therisingedgeofnRESET.
1.Although the MPLL starts just after a reset, the MPLL output (Mpll) is not used as the system clock until the software
writes valid settings to the MPLLCON register. Before this valid setting, the clock from external crystal or EXTCLK source
will be used as the system clock directly. Even if the user does not want to change the default value of MPLLCON
register, the user should write the same value into MPLLCON register.
2.OM[3:2] is used to determine a test mode when OM[1:0] is 11.
7-2
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 85
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
XTIpll
XTOpll
EXTCLK
OSC
OM[3:2]
P[5:0]
M[7:0]
S[1:0]
MPLL
Control
Signal
USBCNTL
DIVN_UPLL
1/1 or 1/2
Upll
UPLL
Test mode OM[1:0]
Mpll
P[5:0]
M[7:0]
S[1:0]
CLKCNTL
FCLK
HDIVNPDIVN
FHP
POWCNTL
MPLL CLK
UPLL CLK
HCLK
PCLK
FCLK
CLKOUT
Power
Management
Block
CAMDIVN
USB Host I/F
H_USB
H_CAM
CAM
WDTI2SSDIADCUART(0,1,2)
PWMI2CGPIORTCSPI(0,1)
USB
Device
Figure 7-1. Clock Generator Block Diagram
Nand Flash
Controller
TIC
P_USB
HCLKUCLK
H_Nand
ExtMater
P_I2S
P_I2CP_PWM
PCLK
FCLK
Memory
Controller
Controller
Arbitration
DMA 4ch
P_SDI
P_GPIO
Bus
P_ADC
P_RTC
ARM920T
Interrupt
Controller
H_LCD
LCD
Controller
P_UART
P_SPI
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-3
Page 86
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
PHASE LOCKED LOOP (PLL)
The MPLL within the clock generator, as a circuit, synchronizes an output signal with a reference input signal in
frequency and phase. In this application, it includes the following basic blocks as shown in Figure 7-2: the Voltage
Controlled Oscillator (VCO) to generate the output frequency proportional to input DC voltage, the divider P to
divide the input frequency (Fin) by p, the divider M to divide the VCO output frequency by m which is input to
Phase Frequency Detector (PFD), the divider S to divide the VCO output frequency by s which is Mpll (the output
frequency from MPLL block), the phase difference detector, the charge pump, and the loop filter. The output clock
frequency Mpll is related to the reference input clock frequency Fin by the following equation:
Mpll = (m * Fin) / (p * 2
s
)
m = M (the value for divider M)+ 8, p = P (the value for divider P) + 2
The UPLL within the clock generator is the same as the MPLL in every aspect.
The following sections describes the operation of the PLL, including the phase difference detector, the charge
pump, the Voltage controlled oscillator (VCO), and the loop filter.
Phase Difference Detector (PFD)
The PFD monitors the phase difference between Fref and Fvco, and generates a control signal (tracking signal)
when thedifferenceisdetected. The Fref means the reference frequency as shown in the Figure 7-2.
Charge Pump (PUMP)
The charge pump converts PFD control signals into a proportional charge in voltage across the external filter that
drives the VCO.
Loop Filter
The control signal, which the PFD generates for the charge pump, may generate large excursions (ripples) each
time the Fvco is compared to the Fref. To avoid overloading the VCO, a low pass filter samples and filters the
high-frequency components out of the control signal. The filter is typically a single-pole RC filter with a resistor and
a capacitor.
Voltage Controlled Oscillator (VCO)
The output voltage from the loop filter drives the VCO, causing its oscillation frequency to increase or decrease
linearly as a function of variations in average voltage. When the Fvco matches Fref in terms of frequency as well
as phase, the PFD stops sending control signals to the charge pump, which in turn stabilizes the input voltage to
the loop filter. The VCO frequency then remains constant, and the PLL remains fixed onto the system clock.
Usual Conditions for PLL & Clock Generator
PLL & Clock Generator generally uses the following conditions.
MPLLCAP: 2.8 nF
Loop filter capacitance
External X-tal frequency-
External capacitance used for X-talC
NOTES:
1.The value could be changed.
2.FCLK must be more than three times X-tal or EXTCLK (FCLK ≥ 3X-tal or 3EXTCLK)
7-4
C
LF
EXT
UPLLCAP: 700 pF
10–20MHz
(note)
15–22pF
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 87
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
Fin
P[5:0]
M[7:0]
S[1:0]
F
Divider
P
ref
PFD
PUMP
C
vco
F
Divider
M
VCO
Internal
Divider
S
MPLL,UPLL
Figure 7-2. PLL (Phase-Locked Loop) Block Diagram
Loop Filter
MPLLCAP,
R
UPLLCAP
External
C
LF
V
DD
EXTCLK
C
EXT
XTIpll
C
EXT
XTOpll
External
V
DD
OSC
EXTCLK
XTIpll
XTOpll
a) X-TAL Oscillation (OM[3:2]=00)b) External Clock Source (OM[3:2]=11)
Figure 7-3. Main Oscillator Circuit Examples
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-5
Page 88
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
CLOCK CONTROL LOGIC
The clock control logic determines the clock source to be used, i.e., the PLL clock (Mpll) or the direct external
clock (XTIpll or EXTCLK). When PLL is configured to a new frequency value, the clock control logic disables the
FCLK until the PLL output is stabilized using the PLL locking time. The clock control logic is also activated at
power-on reset and wakeup from power-down mode.
Power-On Reset (XTIpll)
Figure 7-4 shows the clock behavior during the power-on reset sequence. The crystal oscillator begins oscillation
within several milliseconds. When nRESET is released after the stabilization of OSC (XTIpll) clock, the PLL starts
to operate according to the default PLL configuration. However, PLL is commonly known to be unstable after
power-on reset, so Fin is fed directly to FCLK instead of the Mpll (PLL output) before the software newly configures
the PLLCON. Even if the user does not want to change the default value of PLLCON register after reset, the user
should write the same value into PLLCON register by software.
The PLL restarts the lockup sequence toward the new frequency only after the software configures the PLL with a
new frequency. FCLK can be configured as PLL output (Mpll) immediately after lock time.
Power
nRESET
OSC
(XTIpll)
Clock
Disable
VCO
output
FCLK
PLL can operate after OM[3:2] is latched.
PLL is configured by S/W first time.
Lock Time
VCO is adapted to new clock frequency.
The logic operates by XTIpll
FCLK is new frequency
7-6
Figure 7-4. Power-On Reset Sequence (when the external clock source is a crystal oscillator)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 89
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
Change PLL Settings In Normal Operation Mode
During the operation of the S3C2440X in NORMAL mode, the user can change the frequency by writing the PMS
value and the PLL lock time will be automatically inserted. During the lock time, the clock is not supplied to the
internal blocks in the S3C2440X. Figure 7-5 shows the timing diagram.
Mpll
PMS setting
PLL Lock-time
FCLK
It changes to new PLL clock
after automatic lock time.
Figure 7-5. Changing Slow Clock by Setting PMS Value
USB Clock Control
USB host interface and USB device interface needs 48Mhz clock. In the S3C2440X, the USB dedicated PLL
(UPLL) generates 48Mhz for USB. UCLK does not fed until the PLL (UPLL) is configured.
ConditionUCLK StateUPLL State
After resetXTlpll or EXTCLKOn
After configuring UPLLL: during PLL lock time
On
48MHz: after PLL lock time
UPLL is turned off by CLKSLOW registerXTlpll or EXTCLKOff
UPLL is turned on by CLKSLOW register48MHzOn
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-7
Page 90
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
FCLK, HCLK, and PCLK
FCLK is used by ARM920T.
HCLK is used for AHB bus, which is used by the ARM920T, the memory controller, the interrupt controller, the
LCD controller, the DMA and USB host block.
PCLK is used for APB bus, which is used by the peripherals such as WDT, IIS, I2C, PWM timer, MMC interface,
ADC, UART, GPIO, RTC and SPI.
The S3C2440X supports selection of Dividing Ratio between FCLK, HLCK and PCLK. This ratio is determined by
HDIVN and PDIVN of CLKDIVN control register.
HDIVNPDIVNFCLKHCLKPCLKDivide Ratio
00FCLKFCLKFCLK1 : 1 : 1
(Default)
01FCLKFCLKFCLK / 21 : 1 : 2
10FCLKFCLK / 2FCLK / 21 : 2 : 2
11FCLKFCLK / 2FCLK / 41 : 2 : 4
30FCLKFCLK / 3FCLK / 31 : 3 : 3
31FCLKFCLK / 3FCLK / 61 : 3 : 6
20FCLKFCLK / 4FCLK / 41 : 4 : 4
21FCLKFCLK / 4FCLK / 81 : 4 : 8
After setting PMS value, it is required to set CLKDIVN register. The value set for CLKDIVN will be valid after PLL
lock time. The value is also available for reset and changing Power Management Mode.
The setting value can also be valid after 1.5 HCLK. Only, 1HCLK can validate the value of CLKDIVN register
changed from Default (1:1:1) to other Divide Ratio (1:1:2, 1:2:2 and 1:2:4)
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 91
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
NOTE
1. CLKDIVN should be set carefully not to exceed the limit of HCLK and PCLK.
2. If HDIVN is not 0, the CPU bus mode has to be changed from the fast bus mode to the asynchronous bus
mode using following instructions.
MMU_SetAsyncBusMode
mrc p15,0,r0,c1,c0,0
orr r0,r0,#R1_nF:OR:R1_iA
mcr p15,0,r0,c1,c0,0
If HDIVN is not 0 and the CPU bus mode is the fast bus mode, the CPU will operate by the HCLK. This
feature can be used to change the CPU frequency as a half or more without affecting the HCLK and
PCLK.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-9
Page 92
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
POWER MANAGEMENT
The Power Management block controls the system clocks by software for the reduction of power consumption in
the S3C2440X. These schemes are related to PLL, clock control logics (FCLK, HCLK, and PCLK) and wakeup
signals. Figure 7-7 shows the clock distribution of the S3C2440X.
The S3C2440X has four power modes. The following section describes each power management mode. The
transition between the modes is not allowed freely. Please see Figure 7-8 for available transitions among the
modes.
Clock Control
Register
Input Clock
Power
Management
FCLK defination
If SLOW mode
FCLK = input clock/divider ratio
If Normal mode (P, M & S value)
FCLK = MPLL clock (Mpll)
ARM920T
FCLK
HCLK
PCLK
UPLL(96/48 MHz)
1/d
1/2
1/1
MEMCNTL
INTCNTL
BUSCNTL
ARB/DMA
ExtMaster
LCDCNTL
Nand Flash
Controller
Camera
USB
Host I/F
WDT
SPI
PWM
I2C
SDI
ADC
UART
I2S
GPIO
RTC
7-10
USB
Device
Figure 7-7. The Clock Distribution Block Diagram
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 93
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
IDLE_BIT=1
IDLE
Interrupts, EINT[0:23], RTC alarm
RESET
NORMAL
(SLOW_BIT=0)
EINT[15:0],
RTC alarm
SLOW
(SLOW_BIT=1)
SLEEP BIT=1
Figure 7-8. Power Management State Diagram
Table 7-2. Clock and Power State in Each Power Mode
ModeARM920T
AHB Modules
/WDT
NORMAL
IDLE
SLOW
SLEEP
NOTES:
1.USB host,LCD, and NAND are excluded.
2.WDT is excluded. RTC interface for CPU access is included.
3.SEL : selectable(O,X), O : enable , X : disable OFF: power is turned off
OOOSELOSEL
XOOSELOSEL
OOOSELOSEL
OFFOFFWait for wake-
(1)
Management
up event
Power
GPIO32.768kHz
Previous
state
SLEEP
(2)
RTC clock
APB Modules
& USBH/LCD/NAND
OOFF
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-11
Page 94
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
NORMAL Mode
In Normal mode, all peripherals and the basic blocks including power management block, the CPU core, the bus
controller, the memory controller, the interrupt controller, DMA, and the external master may operate fully. But, the
clock to each peripheral, except the basic blocks, can be stopped selectively by software to reduce the power
consumption.
IDLE Mode
In IDLE mode, the clock to the CPU core is stopped except the bus controller, the memory controller, the interrupt
controller, and the power management block. To exit the IDLE mode, EINT[23:0], or RTC alarm interrupt, or the
other interrupts should be activated. (EINT is not available until GPIO block is turned on).
SLOW Mode (Non-PLL Mode)
Power consumption can be reduced in the SLOW mode by applying a slow clock and excluding the power
consumption from the PLL. The FCLK is the frequency of divide_by_n of the input clock (XTIpll or EXTCLK)
without PLL. The divider ratio is determined by SLOW_VAL in the CLKSLOW control register and CLKDIVN
control register.
Table 7-3. CLKSLOW and CLKDIVN Register Settings for SLOW Clock example
SLOW_VALFCLKHCLKPCLKUCLK
0 0 0EXTCLK or
XTIpll / 1
0 0 1EXTCLK or
XTIpll / 2
0 1 0EXTCLK or
XTIpll / 4
0 1 1EXTCLK or
XTIpll / 6
1 0 0EXTCLK or
XTIpll / 8
1 0 1EXTCLK or
XTIpll / 10
1 1 0EXTCLK or
XTIpll / 12
1 1 1EXTCLK or
XTIpll / 14
1/1 Option
(HDIVN=0)
EXTCLK or
XTIpll / 1
EXTCLK or
XTIpll / 2
EXTCLK or
XTIpll / 4
EXTCLK or
XTIpll / 6
EXTCLK or
XTIpll / 8
EXTCLK or
XTIpll / 10
EXTCLK or
XTIpll / 12
EXTCLK or
XTIpll / 14
1/2 Option
(HDIVN=1)
EXTCLK or
XTIpll / 2
EXTCLK or
XTIpll / 4
EXTCLK or
XTIpll / 8
EXTCLK or
XTIpll / 12
EXTCLK or
XTIpll / 16
EXTCLK or
XTIpll / 20
EXTCLK or
XTIpll / 24
EXTCLK or
XTIpll / 28
1/1 Option
(PDIVN=0)
1/2 Option
(PDIVN=1)
HCLKHCLK / 248 MHz
HCLKHCLK / 248 MHz
HCLKHCLK / 248 MHz
HCLKHCLK / 248 MHz
HCLKHCLK / 248 MHz
HCLKHCLK / 248 MHz
HCLKHCLK / 248 MHz
HCLKHCLK / 248 MHz
In SLOW mode, PLL will be turned off to reduce the PLL power consumption. When the PLL is turned off in the
SLOW mode and the user changes power mode from SLOW mode to NORMAL mode, the PLL needs clock
stabilization time (PLL lock time). This PLL stabilization time is automatically inserted by the internal logic with lock
time count register. The PLL stability time will take 300us after the PLL is turned on. During PLL lock time, the
FCLK becomes SLOW clock.
7-12
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 95
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
Users can change the frequency by enabling SLOW mode bit in CLKSLOW register in PLL on state. The SLOW
clock is generated during the SLOW mode. Figure 7-11 shows the timing diagram.
Mpll
SLOW_BIT
MPLL_OFF
FCLK
Slow mode enable
Divided external clock
Slow mode disable
It changes to PLL clock
after slow mode off
Figure 7-9. Issuing Exit_from_Slow_mode Command in PLL on State
If the user switches from SLOW mode to Normal mode by disabling the SLOW_BIT in the CLKSLOW register
after PLL lock time, the frequency is changed just after SLOW mode is disabled. Figure 7-12 shows the timing
diagram.
Software lock time
Mpll
SLOW_BIT
MPLL_OFF
FCLK
Figure 7-10. Issuing Exit_from_Slow_mode Command After Lock Time
Slow mode enable
PLL offPLL on
Divided OSC clock
Slow mode disable
It changes to PLL clock
after slow mode off
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-13
Page 96
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
If the user switches from SLOW mode to Normal mode by disabling SLOW_BIT and MPLL_OFF bit
simultaneously in the CLKSLOW register, the frequency is changed just after the PLL lock time. Figure 7-13 shows
the timing diagram.
Hardware lock time
Mpll
SLOW_BIT
MPLL_OFF
FCLK
Slow mode enable
PLL offPLL on
Divided
OSC clock
It changes to PLL clock
after lock time automatically
Slow mode disable
Figure 7-11. Issuing Exit_from_Slow_mode Command and the Instant PLL_on Command Simultaneously
7-14
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 97
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
SLEEP Mode
The block disconnects the internal power. So, there occurs no power consumption due to CPU and the internal
logic except the wake-up logic in this mode. Activating the SLEEP mode requires two independent power sources.
One of the two power sources supplies the power for the wake-up logic. The other one supplies other internal
logics including CPU, and should be controlled for power on/off. In the SLEEP mode, the second power supply
source for the CPU and internal logics will be turned off. The wakeup from SLEEP mode can be issued by the
EINT[15:0] or by RTC alarm interrupt.
Follow the Procedure to Enter SLEEP mode
1. Set the GPIO configuration adequate for SLEEP mode.
2. Mask all interrupts in the INTMSK register.
3. Configure the wake-up sources properly including RTC alarm. (The bit of EINTMASK corresponding to the
wake-up source has not to be masked in order to let the corresponding bit of SRCPND or EINTPEND set.
Although a wake-up source is issued and the corresponding bit of EINTMASK is masked, the wake-up will
occur and the corresponding bit of SRCPND or EINTPEND will not be set.)
4. Set USB pads as suspend mode. (MISCCR[13:12]=11b)
5. Save some meaning values into GSTATUS[4:3] register. These register are preserved during SLEEP mode.
6. Configure MISCCR[1:0] for the pull-up resisters on the data bus,D[31:0]. If there is an external BUS holder,
such as 74LVCH162245, turn off the pull-up resistors. If not, turn on the pull-up resistors.
Additionally, The Memory concerning pins are set to two type, one is Hi-z, and the other is Inactive state.
7. Stop LCD by clearing LCDCON1.ENVID bit.
8. Read rREFRESH and rCLKCON registers in order to fill the TLB.
9. Let SDRAM enter the self-refresh mode by setting the REFRESH[22]=1b.
10. Wait until SDRAM self-refresh is effective.
11. Set MISCCR[19:17]=111b to make SDRAM signals(SCLK0,SCLK1 and SCKE) protected during SLEEP mode
12. Set the SLEEP mode bit in the CLKCON register.
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-15
Page 98
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
Follow the Procedure to Wake-up from SLEEP mode
1.The internal reset signal will be asserted if one of the wake-up sources is issued. It’s exactly same with the
case of the assertion of the external nRESET pin. This reset duration is determined by the internal 16-bit
counter logic and the reset assertion time is calculated as tRST = (65535 / XTAL_frequency).
2. Check GSTATUS2[2] in order to know whether or not the power-up is caused by the wake-up from SLEEP
mode.
3. Release the SDRAM signal protection by setting MISCCR[19:17]=000b.
4.Configure the SDRAM memory controller.
5. Wait until the SDRAM self-refresh is released. Mostly SDRAM needs the refresh cycle of all SDRAM row.
6. The information in GSTATUS[3:4] can be used for user’s own purpose because the value in GSTATUS[3:4]
has been preserved during SLEEP mode.
7.– For EINT[3:0], check the SRCPND register.
– For EINT[15:4], check the EINTPEND instead of SRCPND (SRCPND will not be set although some bits of
EINTPEND are set.).
– For alarm wake-up, check the RTC time because the RTC bit of SRCPND isn’t set at the alarm wake-up.
– If there was the nBATT_FLT assertion during SLEEP mode, the corresponding bit of SRCPND has
been set.
Pin States in SLEEP Mode
The pin state of the SLEEP mode is as follows;
Pin TypePin ExamplePin States in SLEEP Mode
GPIO output pinGPB0:inputOutput ( GPIO data register value is used.)
GPIO input pinGPB0:outputInput
GPIO bi-directional pinGPG6:SPIMOSIInput
Function output pinnGCS0Output (the last output level is held.)
Function input pinnWAITInput
7-16
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Page 99
2003.09.25
S3C2440XCLOCK & POWER MANAGEMENT
Power Control of VDDi and VDDiarm
In SLEEP mode, only VDDi and VDDiarm will be turned off, which is controlled by PWREN pin.
If PWREN signal is active(H), VDDi and VDDiarm are supplied by an external voltage regulator. If PWREN pin is
inactive (L), the VDDi and VDDiarm are turned off.
NOTE
Although VDDi and VDDiarm may be turned off, the other power pins have to be supplied.
1.2V Regulator
1.2VEN
S3C2440X
VDDi
VDDiarm
VDDMPLL
VDDUPLL
1.2V
PWREN
Power CTRL
(Alive Block)
Core & Peripherals
Power
Figure 7-12. SLEEP Mode
VDDalive
RTC Alarm
EINT
RTC
External Interrupt
I/O
3.3V Power
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
7-17
Page 100
2003.09.25
CLOCK & POWER MANAGEMENTS3C2440X
Signaling EINT[15:0] for Wakeup
The S3C2440X can be woken up from SLEEP mode only if the following conditions are met.
a) Level signals (H or L) or edge signals (rising or falling or both) are asserted on EINTn input pin.
b) The EINTn pin has to be configured as EINT in the GPIO control register.
c) nBATT_FLT pin has to be H level. It is important to configure the EINTn in the GPIO control register as an
external interrupt pins, considering the condition a) above.
Just after the wake-up, the corresponding EINTn pin will not be used for wakeup. This means that the pin can be
used as an external interrupt request pin again.
Entering IDLE Mode
If CLKCON[2] is set to 1 to enter the IDLE mode, the S3C2440X will enter IDLE mode after some delay (until the
power control logic receives ACK signal from the CPU wrapper).
PLL On/Off
The PLL can only be turned off for low power consumption in slow mode. If the PLL is turned off in any other
mode, MCU operation is not guaranteed.
When the processor is in SLOW mode and tries to change its state into other state with the PLL turned on, then
SLOW_BIT should be clear to move to another state after PLL stabilization
Pull-up Resistors on the Data Bus and SLEEP Mode
In SLEEP mode, the data bus (D[31:0] or D[15:0] ) is in Hi-z state.
But, because of the characteristics of I/O pad, the data bus pull-up resistors have to be turned on for low power
consumption in SLEEP mode. D[31:0] pin pull-up resistors can be controlled by the GPIO control register
(MISCCR). However, if there is an external bus holder, such as 74LVCH162245, on the data bus, turning off the
data bus pull-up resistors will be reduce power consumption.
7-18
Preliminary product information describes products that are in development,
for which full characterization data and associated errata are not yet available
Specifications and information herein are subject to change without notice.
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.