SAMSUNG's S3C44B0X 16/32-bit RISC microprocessor is designed to provide a cost-effective and high performance
micro-controller solution for hand-held devices and general applications. To reduce total system cost, S3C44B0X
also provides the following: 8KB cache, optional internal SRAM, LCD controller, 2-channel UART with handshake, 4channel DMA, System manager (chip select logic, FP/ EDO/SDRAM controller), 5-channel timers with PWM, I/O
ports, RTC, 8-channel 10-bit ADC, IIC-BUS interface, IIS-BUS interface, Sync. SIO interface and PLL for clock.
The S3C44B0X was developed using a ARM7TDMI core, 0.25 um CMOS standard cells, and a memory compiler. Its
low-power, simple, elegant and fully static design is particularly suitable for cost-sensitive and power sensitive
applications. Also S3C44B0X adopts a new bus architecture, SAMBA II (SAMSUNG ARM CPU embedded
Microcontroller Bus Architecture).
An outstanding feature of the S3C44B0X is its CPU core, a 16/32-bit ARM7TDMI RISC processor (66MHz) designed
by Advanced RISC Machines, Ltd. The architectural enhancements of ARM7TDMI include the Thumb decompressor, an on-chip ICE breaker debug support, and a 32-bit hardware multiplier.
By providing a complete set of common system peripherals, the S3C44B0X minimizes overall system costs and
eliminates the need to configure additional components. The integrated on-chip functions that are described in this
document are as follows:
•2.5V Static ARM7TDMI CPU core with 8KB cache . (SAMBA II bus architecture up to 66MHz)
•LCD controller (up to 256 color DSTN) with 1-ch LCD-dedicated DMA.
•2-ch general DMAs / 2-ch peripheral DMAs with external request pins
•2-ch UART with handshake(IrDA1.0, 16-byte FIFO) / 1-ch SIO
•1-ch multi-master IIC-BUS controller
•1-ch IIS-BUS controller
•5-ch PWM timers & 1-ch internal timer
•Watch Dog Timer
•71 general purpose I/O ports / 8-ch external interrupt source
•Power control: Normal, Slow, Idle, and Stop mode
•8-ch 10-bit ADC.
•RTC with calendar function.
•On-chip clock generator with PLL.
1-1
PRODUCT OVERVIEWS3C44B0X RISC MICROPROCESSOR
FEATURES
Architecture
•Integrated system for hand-held devices and
general embedded applications.
•16/32-Bit RISC architecture and powerful
instruction set with ARM7TDMI CPU core.
•Thumb de-compressor maximizes code density
while maintaining performance.
•On-chip ICEbreaker debug support with JTAG-
based debugging solution.
•32x8 bit hardware multiplier.
•New bus architecture to implement Low-Power
SAMBA II(SAMSUNG's ARM CPU embedded
Micro-controller Bus Architecture).
System Manager
•Little/Big endian support.
•Address space: 32Mbytes per each bank. (Total
256Mbyte)
•Supports programmable 8/16/32-bit data bus
width for each bank.
•Fixed bank start address and programmable bank
size for 7 banks.
•Programmable bank start address and bank size
for one bank.
•8 memory banks.
- 6 memory banks for ROM, SRAM etc.
- 2 memory banks for ROM/SRAM/DRAM(Fast
Page, EDO, and Synchronous DRAM)
•Fully Programmable access cycles for all
memory banks.
•Supports external wait signal to expend the bus
cycle.
•Supports self-refresh mode in DRAM/SDRAM for
power-down.
•Supports asymmetric/symmetric address of
DRAM.
Cache Memory & internal SRAM
•4-way set associative ID(Unified)-cache with
8Kbyte.
•The 0/4/8 Kbytes internal SRAM using unused
cache memory.
•Pseudo LRU(Least Recently Used) Replace
Algorithm.
•Write through policy to maintain the coherence
between main memory and cache content.
•Write buffer with four depth.
•Request data first fill technique when cache miss
occurs.
Clock & Power Manager
•Low power
•The on-chip PLL makes the clock for operating
MCU at maximum 66MHz.
•Clock can be fed selectively to each function
block by software.
•Power mode: Normal, Slow, Idle and Stop mode.
Normal mode: Normal operating mode.
Slow mode: Low frequency clock without PLL
Idle mode: Stop the clock for only CPU
Stop mode: All clocks are stopped
1. OM[3:0] and ENDIAN value are latched only at the rising edge of nRESET. Therefore, when nRESET is L, the pins of
OM[3:0] and ENDIAN are in input state. After nRESET becomes H, the pin of ENDIAN will be in output state.
2. The @BUS REQ. shows the pin states at the external bus, which is used by the other bus master. The @STOP shows
the pin states when S3C44B0X is in STOP mode.
3. ' − ' mark indicates the unchanged pin state at STOP mode or Bus released mode.
4. IICSDA,IICSCL pins are open-drain type.
5. AI/AO means analog input/output.
1-16
S3C44B0X RISC MICROPROCESSOR PRODUCT OVERVIEW
I/O TypeDescriptions
vdd2i, vss2i2.5V Vdd/Vss for internal logic
vdd3op, vss3op3.3V Vdd/Vss for external interface logic
vdd2t, vss2t2.5V Vdd/Vss for analog circuitry
phsoscm16Oscillator cell with enable and feedback resistor
phbsu50ct12smbi-directional pad, CMOS schmitt-trigger, 50K Ω pull-up resistor with control,
tri-state, Io=12mA
phbsu50ct8smbi-directional pad, CMOS schmitt-trigger, 50K Ω pull-up resistor with control,
tri-state, Io=8mA
phbsu50cd4smbi-directional pad, CMOS schmitt-trigger, 50K Ω pull-up resistor with control,
OM[1:0]IOM[1:0] sets S3C44B0X in the TEST mode, which is used only at fabrication. Also, it
determines the bus width of nGCS0. The logic level is determined by the pull-up/down
resistor during the RESET cycle.
00:8-bit01:16-bit10:32-bit11:Test mode
ADDR[24:0]OADDR[24: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.
nWBE[3:0]OWrite Byte Enable
nBE[3:0]OUpper Byte/Lower Byte Enable(In case of SRAM)
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 S3C44B0X 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.
ENDIANIIt determines whether or not the data type is little endian or big endian. The logic level
is determined by the pull-up/down resistor during the RESET cycle.
RxD[1:0]IUART receives data input
TxD[1:0]OUART transmits data output
nCTS[1:0]IUART clear to send input signal
nRTS[1:0]OUART request to send output signal
IIC-BUS
IICSDAIOIIC-bus data
IICSCLIOIIC-bus clock
IIS-BUS
IISLRCKIOIIS-bus channel select clock
IISDOOIIS-bus serial data output
IISDIIIIS-bus serial data input
IISCLKIOIIS-bus serial clock
CODECLKOCODEC system clock
SIO
SIORXDISIO receives data input
SIOTXDOSIO transmits data output
SIOCKIOSIO clock
SIORDYIOSIO handshake signal when DMA completes the SIO operation
1-19
PRODUCT OVERVIEWS3C44B0X RISC MICROPROCESSOR
Table 1-3. S3C44B0X Signal Descriptions (Continued)
SignalI/ODescription
ADC
AIN[7:0]AIADC input[7:0]
AREFTAIADC Top Vref
AREFBAIADC Bottom Vref
AVCOMAIADC Common Vref
GENERAL PORT
P[70:0]IOGeneral input/output ports (some ports are output mode only)
RESET & CLOCK
nRESETSTnRESET suspends any operation in progress and places S3C44B0X into a known reset
state. For a reset, nRESET must be held to L level for at least 4 MCLK after the
processor power has been stabilized.
OM[3:2]IOM[3:2] determines how the clock is made.
00 = Crystal(XTAL0,EXTAL0), PLL on 01 = EXTCLK, PLL on
10, 11 = Chip test mode.
EXTCLKIExternal clock source when OM[3:2] = 01b
If it isn't used, it has to be H (3.3V).
XTAL0AICrystal Input for internal osc circuit for system clock.
If it isn't used, XTAL0 has to be H (3.3V).
EXTAL0AOCrystal Output for internal osc circuit for system clock. It is the inverted output of
XTAL0. If it isn't used, it has to be a floating pin.
PLLCAPAILoop filter capacitor for system clock PLL. ( 700pF )
XTAL1AI32 KHz crystal input for RTC.
EXTAL1AO32 KHz crystal output for RTC. It is the inverted output of XTAL1.
CLKoutOFout or Fpllo clock
JTAG TEST LOGIC
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 at L or low active pulse.
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-20
S3C44B0X RISC MICROPROCESSOR PRODUCT OVERVIEW
Table 1-3. S3C44B0X Signal Descriptions (Concluded)
SignalI/ODescription
POWER
VDDPS3C44B0X core logic VDD (2.5 V)
VSSPS3C44B0X core logic VSS
VDDIOPS3C44B0X I/O port VDD (3.3 V)
VSSIOPS3C44B0X I/O port VSS
RTCVDDPRTC VDD (2.5 V or 3.0 V, Not support 3.3V)
(This pin must be connected to power properly if RTC isn't used)
VDDADCPADC VDD(2.5 V)
VSSADCPADC VSS
1-21
PRODUCT OVERVIEWS3C44B0X RISC MICROPROCESSOR
S3C44B0X SPECIAL REGISTERS
Table 1-4. S3C44B0X Special Registers
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
CPU WRAPPER
SYSCFG0x01c00000←WR/WSystem Configuration
NCACHBE00x01c00004Non Cacheable Area 0
NCACHBE10x01c00008Non Cacheable Area 1
SBUSCON0x01c40000System Bus Control
MEMORY CONTROLLER
BWSCON0x01c80000←WR/WBus Width & Wait Status Control
BANKCON00x01c80004Boot ROM Control
BANKCON10x01c80008BANK1 Control
BANKCON20x01c8000cBANK2 Control
BANKCON30x01c80010BANK3 Control
BANKCON40x01c80014BANK4 Control
BANKCON50x01c80018BANK5 Control
BANKCON60x01c8001cBANK6 Control
BANKCON70x01c80020BANK7 Control
REFRESH0x01c80024DRAM/SDRAM Refresh Control
BANKSIZE0x01c80028Flexible Bank Size
MRSRB60x01c8002cMode register set for SDRAM
MRSRB70x01c80030Mode register set for SDRAM
1-22
S3C44B0X RISC MICROPROCESSOR PRODUCT OVERVIEW
Table 1-4. S3C44B0X Special Registers (Continued)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
UART
ULCON00x01d00000←WR/WUART 0 Line Control
ULCON10x01d04000UART 1 Line Control
UCON00x01d00004UART 0 Control
UCON10x01d04004UART 1 Control
UFCON00x01d00008UART 0 FIFO Control
UFCON10x01d04008UART 1 FIFO Control
UMCON00x01d0000cUART 0 Modem Control
UMCON10x01d0400cUART 1 Modem Control
UTRSTAT00x01d00010RUART 0 Tx/Rx Status
UTRSTAT10x01d04010UART 1 Tx/Rx Status
UERSTAT00x01d00014UART 0 Rx Error Status
UERSTAT10x01d04014UART 1 Rx Error Status
UFSTAT00x01d00018UART 0 FIFO Status
UFSTAT10x01d04018UART 1 FIFO Status
UMSTAT00x01d0001cUART 0 Modem Status
UMSTAT10x01d0401cUART 1 Modem Status
UTXH00x01d000230x01d00020BWUART 0 Transmission Hold
UTXH10x01d040230x01d04020UART 1 Transmission Hold
URXH00x01d000270x01d00024RUART 0 Receive Buffer
URXH10x01d040270x01d04024UART 1 Receive Buffer
UBRDIV00x01d00028←WR/WUART 0 Baud Rate Divisor
UBRDIV10x01d04028UART 1 Baud Rate Divisor
SIO
SIOCON0x01d14000←WR/WSIO Control
SIODAT0x01d14004SIO Data
SBRDR0x01d14008SIO Baud Rate Prescaler
ITVCNT0x01d1400cSIO Interval Counter
DCNTZ0x01d14010SIO DMA Count Zero
1-23
PRODUCT OVERVIEWS3C44B0X RISC MICROPROCESSOR
Table 1-4. S3C44B0X Special Registers (Continued)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
IIS
IISCON0x01d18000,02,030x01d18000B,HW,WR/WIIS Control
IISMOD0x01d18004,060x01d18004HW,WIIS Mode
IISPSR0x01d18008,0a,0b0x01d18008B,HW,WIIS Prescaler
IISFIFCON0x01d1800c,0e0x01d1800cHW,WIIS FIFO Control
IISFIF0x01d180120x01d18010HWIIS FIFO Entry
I/O PORT
PCONA0x01d20000←WR/WPort A Control
PDATA0x01d20004Port A Data
PCONB0x01d20008Port B Control
PDATB0x01d2000cPort B Data
PCONC0x01d20010Port C Control
PDATC0x01d20014Port C Data
PUPC0x01d20018Pull-up Control C
PCOND0x01d2001cPort D Control
PDATD0x01d20020Port D Data
PUPD0x01d20024Pull-up Control D
PCONE0x01d20028Port E Control
PDATE0x01d2002cPort E Data
PUPE0x01d20030Pull-up Control E
PCONF0x01d20034Port F Control
PDATF0x01d20038Port F Data
PUPF0x01d2003cPull-up Control F
PCONG0x01d20040Port G Control
PDATG0x01d20044Port G Data
PUPG0x01d20048Pull-up Control G
SPUCR0x01d2004cSpecial Pull-up
EXTINT0x01d20050External Interrupt Control
EXTINPND0x01d20054External Interrupt Pending
WATCHDOG TIMER
WTCON0x01d30000←WR/WWatchdog Timer Mode
WTDAT0x01d30004Watchdog Timer Data
WTCNT0x01d30008Watchdog Timer Count
1-24
S3C44B0X RISC MICROPROCESSOR PRODUCT OVERVIEW
Table 1-4. S3C44B0X Special Registers (Continued)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
A/D CONVERTER
ADCCON0x01d40000,02,030x01d40000B,HW,WR/WADC Control
ADCPSR0x01d40004,06,070x01d40004ADC Prescaler
ADCDAT0x01d40008,0a0x01d40008HW,WRDigitized 10 bit Data
IICCON0x01d60000←WR/WIIC Control
IICSTAT0x01d60004IIC Status
IICADD0x01d60008IIC Address
IICDS0x01d6000cIIC Data Shift
1-25
PRODUCT OVERVIEWS3C44B0X RISC MICROPROCESSOR
Table 1-4. S3C44B0X Special Registers (Continued)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
RTC
RTCCON0x01d700430x01d70040BR/WRTC Control
RTCALM0x01d700530x01d70050RTC Alarm
ALMSEC0x01d700570x01d70054Alarm Second
ALMMIN0x01d7005b0x01d70058Alarm Minute
ALMHOUR0x01d7005f0x01d7005cAlarm Hour
ALMDAY0x01d700630x01d70060Alarm Day
ALMMON0x01d700670x01d70064Alarm Month
ALMYEAR0x01d7006b0x01d70068Alarm Year
RTCRST0x01d7006f0x01d7006cRTC Round Reset
BCDSEC0x01d700730x01d70070BCD Second
BCDMIN0x01d700770x01d70074BCD Minute
BCDHOUR0x01d7007b0x01d70078BCD Hour
BCDDAY0x01d7007f0x01d7007cBCD Day
BCDDATE0x01d700830x01d70080BCD Date
BCDMON0x01d700870x01d70084BCD Month
Function
BCDYEAR0x01d7008b0x01d70088BCD Year
TICINT0x01D7008E0x01D7008CTick time count
CLOCK & POWER MANAGEMENT
PLLCON0x01d80000←WR/WPLL Control
CLKCON0x01d80004Clock Control
CLKSLOW0x01d80008Slow clock Control
LOCKTIME0x01d8000cPLL lock time Counter
1-26
S3C44B0X RISC MICROPROCESSOR PRODUCT OVERVIEW
Table 1-4. S3C44B0X Special Registers (Continued)
Register
Name
Address
(B. Endian)
Address
(L. Endian)
Acc.
Unit
Read/
Write
Function
INTERRUPT CONTROLLER
INTCON0x01e00000←WR/WInterrupt Control
INTPND0x01e00004RInterrupt Request Status
INTMOD0x01e00008R/WInterrupt Mode Control
INTMSK0x01e0000cInterrupt Mask Control
I_PSLV0x01e00010IRQ Interrupt Previous Slave
I_PMST0x01e00014IRQ Interrupt Priority Master
I_CSLV0x01e00018RIRQ Interrupt Current Slave
I_CMST0x01e0001cIRQ Interrupt Current Master
I_ISPR0x01e00020IRQ Interrupt Pending Status
I_ISPC0x01e00024WIRQ Interrupt Pending Clear
F_ISPR0x01e00038RFIQ Interrupt Pending
F_ISPC0x01e0003cWFIQ Interrupt Pending Clear
ZDCON00x01e80000←WR/WZDMA0 Control
ZDISRC00x01e80004ZDMA 0 Initial Source Address
ZDIDES00x01e80008ZDMA 0 Initial Destination Address
ZDICNT00x01e8000cZDMA 0 Initial Transfer Count
ZDCSRC00x01e80010RZDMA 0 Current Source Address
ZDCDES00x01e80014ZDMA 0 Current Destination Address
ZDCCNT00x01e80018ZDMA 0 Current Transfer Count
ZDCON10x01e80020R/WZDMA 1 Control
ZDISRC10x01e80024ZDMA 1 Initial Source Address
ZDIDES10x01e80028ZDMA 1 Initial Destination Address
ZDICNT10x01e8002cZDMA 1 Initial Transfer Count
ZDCSRC10x01e80030RZDMA 1 Current Source Address
ZDCDES10x01e80034ZDMA 1 Current Destination Address
ZDCCNT10x01e80038ZDMA 1 Current Transfer Count
BDCON00x01f80000R/WBDMA 0 Control
BDISRC00x01f80004BDMA 0 Initial Source Address
BDIDES00x01f80008BDMA 0 Initial Destination Address
BDICNT00x01f8000cBDMA 0 Initial Transfer Count
BDCSRC00x01f80010RBDMA 0 Current Source Address
BDCDES00x01f80014BDMA 0 Current Destination Address
BDCCNT00x01f80018BDMA 0 Current Transfer Count
BDCON10x01f80020R/WBDMA 1 Control
BDISRC10x01f80024BDMA 1 Initial Source Address
BDIDES10x01f80028BDMA 1 Initial Destination Address
BDICNT10x01f8002cBDMA 1 Initial Transfer Count
BDCSRC10x01f80030RBDMA 1 Current Source Address
BDCDES10x01f80034BDMA 1 Current Destination Address
BDCCNT10x01f80038BDMA 1 Current Transfer Count
1-28
S3C44B0X RISC MICROPROCESSOR PRODUCT OVERVIEW
IMPORTANT NOTES ABOUT S3C44B0X SPECIAL REGISTERS
1.In the little endian mode, L. endian address must be used. In the big endian mode, B. endian address must be
used.
2.The special registers have to be accessed by the recommended access unit.
3.All registers except ADC registers, RTC registers and UART registers must be read/written in word unit (32bit) at
little/big endian.
4. It is very important that the ADC registers, RTC registers and UART registers be read/written by the specified
access unit and the specified address. Moreover, one must carefully consider which endian mode is used.
5. W: 32-bit register, which must be accessed by LDR/STR or int type pointer(int *).
HW: 16-bit register, which must be accessed by LDRH/STRH or short int type pointer(short int *).
B: 8-bit register, which must be accessed by LDRB/STRB or char type pointer(char *).
1-29
S3C44B0X RISC MICROPROCESSORPROGRAMMER'S MODEL
2PROGRAMMER'S MODEL
OVERVIEW
S3C44B0X has been developed using the advanced ARM7TDMI core, which has been designed by Advanced
RISC Machines, Ltd.
PROCESSOR OPERATING STATES
From the programmer's point of view, the ARM7TDMI can be in one of two states:
•ARM state which executes 32-bit, word-aligned ARM instructions.
•THUMB state which can execute 16-bit, halfword-aligned THUMB instructions. In this state, the PC uses bit 1
to select between alternate halfwords.
NOTE
Transition between these two states does not affect the processor mode or the contents of the registers.
SWITCHING STATE
Entering THUMB State
Entry into THUMB state can be achieved by executing a BX instruction with the state bit (bit 0) set in the operand
register.
Transition to THUMB state will also occur automatically on return from an exception (IRQ, FIQ, UNDEF, ABORT,
SWI etc.), if the exception was entered with the processor in THUMB state.
Entering ARM State
Entry into ARM state happens:
•On execution of the BX instruction with the state bit clear in the operand register.
•On the processor taking an exception (IRQ, FIQ, RESET, UNDEF, ABORT, SWI etc.). In this case, the PC is
placed in the exception mode's link register, and execution commences at the exception's vector address.
MEMORY FORMATS
ARM7TDMI views memory as a linear collection of bytes numbered upwards from zero. Bytes 0 to 3 hold the first
stored word, bytes 4 to 7 the second and so on. ARM7TDMI can treat words in memory as being stored either in
Big-Endian or Little-Endian format.
2-1
Loading...
+ 394 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.