Specifications are subject to change without notice.
Suggested applications (if any) are for standard use; See Important Restrictions for limitations on special
applications. See Limited Warranty for SHARP’s product warranty. The Limited Warranty is in lieu, and
exclusive of, all other warranties, express or implied. ALL EXPRESS AND IMPLIED WARRANTIES,
INCLUDING THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR USE AND FITNESS FOR
A PARTICULAR PURPOSE, ARE SPECIFICALLY EXCLUDED. In no event will SHARP be liable, or in
any way responsible, for any incidental or consequential economic or property damage.
Purchase of I
Companies conveys a license under the Philips I
components in an I
2
C components from SHARP Corporation or one of its sublicensed Associated
2
C system, provided that the system conforms to the I2C Standard Specification
The LH79524 and LH79525 are fully-integrated 16/32-bit SoCs based on a 32-bit
ARM720T core. This User’s Guide is the principal technical reference for these devices.
This document assumes the reader is familiar with ARM720T programming. For more
information on programming the ARM720T core, see the library of methods and downloads available from ARM Ltd., at http://www.arm.com.
For an abridged version of this User’s Guide, consult the LH79524/LH79525 Data Sheet
and the single page Product Brief. For details, contact a SHARP representative or see the
SHARP Microelectronics of the Americas website (http://www.sharpsma.com).
Application Notes and further information on connecting, programming and implementing
the LH79524/LH79525, along with suggestions for companion parts, can be found on
SHARP's website (http://www.sharpsma.com).
IMPORTANT: The following sections contain important design information about the LH79524/LH79525.
Please take a moment to read the ‘Conventions and Terms’ section in its entirety.
Conventions and Terms
For information on specific terms and acronyms see the Glossary in this User’s Guide.
Unconnected (Floating) Inputs
Many applications employing the LH79524/LH79525 require extremely low standby and
operating current consumption, especially in battery operated devices. To achieve minimum current, unused inputs must never be left floating (unconnected). Each input must be
pulled up or pulled down with a 33 kΩ resistor (or smaller). In addition to terminating input
pins, this also allows the designer to specify the reset state of input pins by selecting pull
up (logical 1 at reset) or pull down (logical 0 at reset) resistors.
Multiplexed Pins
The LH79524 is manufactured in a CABGA package with 208 pins. The LH79525 is manufactured in a LQFP package with 176 pins. Some pins have only one function, b ut others
are multiplexed and may carry as many as three functions. Designers must be aware that
multiplexed pins cannot simultaneously support more than one function; a choice is
required prior to designing the SoC into an application.
Version 1.0 xxxv
Page 37
PrefaceLH79524/LH79525 User’s Guide
Pin Names
Package pins are named to indicate the signal(s) or functionality available at the pin.
If the signal or function is active LOW, the name is prefixed with a lower-case ‘n’,
such as nSCS2. Multiplexed pins are named to indicate all available functions, such
as Pin D11 (Pin 139 for the LH79525): PE1/LCDDCLK, which can function as either GPIO
Port E bit 1, or LCD Data Clock.
These naming conventions help designers recognize and avoid conflicts between multiplexed functions but can complicate explanatory text, so this User’s Guide uses the name
appropriate to the context. A discussion about Port E bit 1 would use PE1, for example,
but information about LCD data would refer to signal LCDVD5. Readers must be aware
that these are separate signals, with distinctly different functionality, which happen to be
available on the same pin, although never simultaneously.
Peripheral Devices
The LH79524/LH79525 is an SoC built using the ARM720T RISC core as a base. Objects
within the chip but external to the core processor and its support devices are referred to
throughout this User’s Guide as ‘blocks’ or ‘Peripheral Devices’.
The LH79524/LH79525 includes two buses: an Advanced High-Performance Bus (AHB)
and an Advanced Peripheral Bus (APB). The devices shown on the APB in the block diagrams are an example of Peripheral Devices in this document. Devices that are external
to the chip are referred to as ‘External Devices’.
Register Addresses
The LH79524/LH79525 is a memory-mapped device with programmable, internal registers that control its operation. Each internal register is located at a unique address in the
memory map and the registers are generally grouped in the map by subsystem.
In this User’s Guide, the addresses for all registers are expressed as a base address and
an offset from that base. The base address indicates where in the map a group of registers
begins and the offset locates a particular register, relative to its base address. Thus, any
register’s absolute address is the sum of its base address and its offset. Programmers will
find this base+offset representation convenient for creating software structures to access
the registers. The absolute addresses are also provided for convenient reference.
xxxviVersion 1.0
Page 38
LH79524/LH79525 User’s GuidePreface
Register Tables
All Registers are presented in tabular format. A primary table presents each register’s
name, address, permissions, bit-field names and the register’s contents at reset. Subsequent tables detail the specific names and function(s) of all bit fields in the register and
explain any important variations that may exist.
An important detail to note is that all registers are not perfectly writable and readable.
Some will exhibit different characteristics on a write, while a read may not return the
expected result. At the same time, there will be registers whose function on a write is to
clear a value or a set of stored values, while on a read will return a specific set of values.
This is particularly true in registers that handle interrupts. Writing to a specific register may
clear a set of interrupts, while reading that same register will yield which interrupts are set.
Similarly, not all bit fields in all registers can be written, nor can all register bit fields yield
useful information when read. These restricted register bit fields will be specifically called
out with three slashes (///) and the word ‘Reserved’, along with their special conditions in
the bit field tables. See Table 1 and Table 2 for examples of this practice.
31:26///ReservedReading returns 0. Values written cannot be read.
25F25Field 25A description of this bit’s functionality will be found in this space.
24:8///ReservedReading returns 0. Writing to this field will have no effect.
7:0F7:F0
NOTES:
RO = Read Only
WO = Write Only
RW = Read and Write
Field Bits [7:0]A description of these bits’ functionality will be found in
this space.
Version 1.0xxxvii
Page 39
PrefaceLH79524/LH79525 User’s Guide
Numeric Values
Binary values are prefixed with 0b; for example, 0b00001000.
Hexadecimal values are expressed with UPPERCASE letters and prefixed with 0x; for
example, 0x0FBC.
All numeric values not specifically identified with the above prefixes as either binary or
hexadecimal are decimal values.
Registers and bit fields with 0b0 in all bits are referred to as cleared or as 0. Registers and
bit fields with 0b1 values in all bits are referred to as set or as the binary, hexadecimal, or
decimal value of the entire field or register. When truth tables are used, the ‘0b’ prefix is
omitted for textual clarity.
Block Diagrams
The functional descriptions in this User’s Guide include block diagrams with symbols representing logical or mathematical operations or selections, usually the result of writing a
value to a register. Figure 1 shows one such multiplexer with three inputs and one output
(the result).
CONTROL SIGNAL or
REGISTER:BITFIELD
INPUT
INPUT
INPUT
FUNCTION
Figure 1. Multiplexer
OUTPUT
7A404-91
xxxviiiVersion 1.0
Page 40
LH79524/LH79525 User’s GuidePreface
2
Block diagrams can include symbols representing Registers and the bit fields within them.
Figure 2 shows that the BITFIELDNAME bit field in the REGISTERNAME register enables
or disables the signal named OUTPUT.
REGISTERNAME:BITFIELDNAME
INPUT
f ( )
OUTPUT
LH7A404-9
Figure 2. Register with Bit-Field Named
Figure 3 is similar to Figure 2 except that Figure 3 references multiple (different)
BITFIELDS in the REGISTERNAME register.
REGISTERNAME: 15:3
f ( )
OUTPUTINPUT
LH7A404-93
Figure 3. Register with Multiple Bit-Fields Named
Not all bit fields are named. If a bit field has no name, the Register is shown with numbers
indicating the appropriate bit positions, with the least significant bit on the right, as in
Figure 4. This bit ordering matches that of the Register tables, shown in Table 1.
REGISTERNAME: [BITFIELDNAME, BITFIELDNAME]
f ( )
OUTPUTINPUT
Figure 4. Register with Bit-Field Numbered
Version 1.0xxxix
7A404-94
Page 41
PrefaceLH79524/LH79525 User’s Guide
What’s in This User’s Guide
Chapter 1 – Overview
This Chapter lists the features of the LH79524/LH79525 SoC and presents a simplified
block diagram of the device, with the major architectural features identified. Also presented
is an overview of the ARM720T processor and MMU. The theory of operation covers bus
architecture, bus arbitration, and the base addresses for each of the Advanced High-Performance Bus (AHB) and Advanced Peripheral Bus (APB) devices and the APB Bridge.
Coverage of the memory system includes memory mapping, memory remapping, and the
External Bus Interface (EBI). This Chapter provides programmer’s models, programmable
parameters, default memory widths, address mapping, and includes a register summary
and register descriptions.
Chapter 2 – ADC and Brownout Detector
This Chapter describes the 10-channel, 10-bit Analog to Digital Converter, and its associated Brownout Detector. Theory of operation includes both touch-screen application s and
traditional ADC applications. This Chapter provides programmer’s mod els, programmable
parameters, default memory widths, address mapping, and includes a register summary
and register descriptions.
Chapter 3 – Boot Controller
This Chapter describes alternate booting options, their use and configuration. Also
included is a programmer’s model, address mapping, and a register summary and register
descriptions.
Chapter 4 – Color LCD Controller
This Chapter describes the Color LCD Controller (CLCDC) and the Advanced LCD Interface Controller (ALI) functional blocks within the LH79524/LH79525. The Chapter includes
a brief overview, lists the types of panels supported, and at what bit-depths. The Chapter
also lists and explains the programmable parameters and includes a register summary.
Register descriptions, with reset values, and horizontal timing restrictions are provided.
Chapter 5 – DMA Controller
This Chapter describes the DMA operations available in the LH79524/LH79525 SoC,
latencies from one process to another, and the interrupts involved. Also included is a programmer’s model, address mapping, and a register summary and register descriptions.
Chapter 6 – Ethernet MAC
Included in this chapter is a description and programming information for the SoC’s Ethernet MAC. Also included is a programmer’s model, address mapping, and a register summary and register descriptions.
xlVersion 1.0
Page 42
LH79524/LH79525 User’s GuidePreface
Chapter 7 – External Memory Controller
This Chapter presents the theory of operation of the LH79524/LH79525 External Memory
Controller (EMC), including programmable parameters, device selection , memory widths,
and address mapping. This Chapter includes a register summary and register descriptions
for the EMC.
Chapter 8 – General Purpose Input/Output
This Chapter presents the LH79524/LH79525 General Purpose Input/Output (GPIO) systems, beginning with a brief overview, and including a block diagram, programmer’s
model, register summary, and register descriptions.
Chapter 9 – I2C Interface
The I2C Interface is described in this chapter. The Chapter includes a short overview, a
block diagram, programmer’s model, interrupt channel list, register summaries, and register descriptions.
Chapter 10 – I2S Converter
This Chapter describes the I2S Converter. This peripheral converts a synchronous serial com-
munication stream in Texas Instruments DSP-compatible mode to an I
serial stream. The I
ter includes a short overview, a block diagram, programmer’s model, interrupt channel list,
register summaries, and register descriptions.
2
S converter operates on serial data in both master and slave mode. The Chap-
2
S-compliant synchronous
Chapter 11 – I/O Configuration
This Chapter is an overview of the LH79524/LH79525 I/O Configuration and pin multiplexing. The Chapter provides a block diagram, programmer’s model, register summary and
descriptions.
Chapter 12 – Real Time Clock
This Chapter describes the LH79524/LH79525 Real Time Clock (RTC). The Chapter
includes a short overview, a block diagram, a list of clock signals, programmer’s model, signal descriptions, operating sequences, register summaries, register descriptions and interface signals.
Chapter 13 – Reset, Clock Generation and Power Control
This chapter provides a short overview of the LH79520 Reset, Clock Generation and
Power Control (RCPC) system, including a block diagram, a list of clock signals, power
control modes, programmer’s model, signal descriptions, power sequences, register summaries, register descriptions, and descriptions of interface signals.
Chapter 14 – Synchronous Serial Port
This Chapter presents an overview of the LH79524/LH79525 Synchronous Serial Port, a
block diagram, programmer’s model, register summary, register descriptions, Interrupts,
and register locations.
Version 1.0xli
Page 43
PrefaceLH79524/LH79525 User’s Guide
Chapter 15 – Timers
This Chapter describes the LH79524/LH79525 Timers. The Chapter includes a short overview and block diagram, signal descriptions, operation sequences, register summaries,
register descriptions, and interface signals.
Chapter 16 – UARTs
This Chapter presents the LH79524/LH79525 UART blocks. The Cha pter includes a brief
overview, block diagram, programmer’s model, programmable parameters, register summary and register descriptions.
Chapter 17 – USB Device
This Chapter presents the LH79524/LH79525 USB Device, beginning with a brief overview,
and including a block diagram, programmer’s model, register summary, and register
descriptions.
Chapter 18 – Vectored Interrupt Controller
This Chapter describes the LH79524/LH79525 Vectored Interrupt Controller. The Chapter
includes a short overview, a block diagram, programmer’s model, interrupt channel list,
register summaries, and register descriptions.
Chapter 19 – Watchdog Timer
This Chapter describes the LH79524/LH79525 Watchdog Timer (WDT). The Chapter
includes a short overview, block diagram, programmer’s model, signal descriptions, operating sequences, register summaries and register descriptions.
Appendix – Glossary
This Chapter contains an alphabetical listing of common terminology appearing in this
User’s Guide.
xliiVersion 1.0
Page 44
Chapter 1
Overview
The LH79524 and LH79525 are fully-integrated 16/32-bit Systems-on-Chip (SoCs) based
on a 32-bit ARM720T core. The 32-bit ARM720T RISC core provides a powerful instruction set and includes Cache RAM, a Write Buffer, Memory-Management Unit (MMU), and
Translation Lookaside Buffer (TLB). Both SoCs include a Color LCD Controller, a Direct
Memory Access Controller, Vectored Interrupt Controller, 16KB of internal Static RAM
(SRAM), and several supporting peripherals. The External Memory Controller (EMC),
provides a glueless interface to external memory.
Supporting function blocks within the LH79524/LH79525 include Serial and Parallel Interfaces, Counters/Timers, Real Time Clock, Watchdog Timer, Pulse Width Modulators, and
an on-chip Phase-Locked Loop. JTAG support is provided to simplify debugging.
Table 1-1 summarizes the differences in features between the LH79524 and the LH79525 .
All other peripherals and functional blocks are identical (unless noted in the Chapter detailing that block’s function). The block diagram for both devices appears in Figure 1-1. Refer
to it when reading sections detailing bus architecture and functional block descriptions.
Table 1-1. LH79524/LH79525 Differences
FEATURELH79524LH79525
Package208 CABGA176 LQFP
Data Bus Width
Color LCD Controller
(CLCDC)
General Purpose
Input/Output (GPIO)
32-Bit Data Bus that includes
all peripherals
16-bit CLCDC Data12-bit CLCDC Data
92 GPIO, 8 General Purpose Input onl y (GPI),
8 General Purpose Output only (GPO)
16-bit Data Bus that
includes all peripherals
72 GPIO, 8 GPI, 6 GPO
Version 1.0 1-1
Page 45
OverviewLH79524/LH79525 User’s Guide
ARM720T
CACHE
INTERNAL
INTERRUPTS
INTERNAL
16KB SRAM
BOOT
ROM
EXTERNAL
MEMORY
CONTROLLER
10 - 20 MHz32.768 kHz
OSCILLATOR,
PLL(2), POWER
MANAGEMENT, and
RESET CONTROL
CONDITIONED
EXTERNAL
INTERRUPTS
VECTORED
INTERRUPT
CONTROLLER
ETHERNET
MAC
BOOT
CONTROLLER
4 CHANNEL
DMA
CONTROLLER
LH79524/LH79525
REAL TIME
CLOCK
GENERAL
PURPOSE I/O
I/O
CONFIGURATION
SYNCHRONOUS
SERIAL PORT
SSP - I2S
CONVERTER
(WITH CODEC
INTERFACE)
COUNTER/
TIMER (3)
WATCHDOG
TIMER
USB
DEVICE
TEST
SUPPORT
LINEAR
REGULATOR
ADVANCED HIGH
PERFORMANCE
ADVANCED
PERIPHERAL
BUS BRIDGE
BUS (AHB)
COLOR
LCD
CONTROLLER
ADVANCED
LCD
INTERFACE
ADVANCED
PERPHERAL
BUS (APB)
UART (3) w/SIR
(WITH TSC and
Figure 1-1. LH79524/LH79525 Block Diagram
2
I
C
16550
10 CHANNEL
10-BIT ADC
BROWNOUT
DETECTOR)
LH79525-1
1-2Version 1.0
Page 46
LH79524/LH79525 User’s GuideOverview
1.1Bus Architecture
The LH79524 and LH79525 both internally employ the ARM Advanced Microprocessor
Bus Architecture (AMBA) 2.0 bus and bus protocol. They have four Bus Masters on the
Advanced High-performance Bus (AHB) that control access to the external memory and
the on-chip peripherals. The AHB Bus Masters are:
• The ARM720T core processor
• Direct Memory Access Controller (DMAC) for transfers between memory and an external peripheral, or memory.
• Ethernet MAC Controller (EMAC)
• Color LCD Controller (CLDCC).
Except in test mode, the ARM720T processor is the default bus master.
An Advanced Peripheral Bus (APB) bridge is provided to access the various APB periph-
erals. Generally, APB peripherals are serviced by the ARM core, however, if they are DMA
enabled, they would also be serviced by the DMA controller to increase system performance while the ARM core is running from cache.
1.2Power Supply
The SoC’s core logic requires a 1.8 V supply. Digital Input/Output pins are 5 V tolerant
and require a 3.3 V supply. They are designed to operate from a single 3.3 V supply. An
on-chip 1.8 V-to-3.3 V linear regulator can be used to generate the 1.8 V needed by
the core logic.
1.2.1 Linear Regulator
When the linear regulator is enabled, the 1.8 V power pins (VDDC) are outputs of the
regulator. This allows regulator operation verification. In addition, an external low-ESR
capacitor must be tied to the regulator output for stability. If the regulator is disabled, the
1.8 V power pins are used as inputs from an external 1.8 V supply.
The linear regulator is enabled by tying the LINREGEN pin to 3.3 V; it is disabled by
holding the LINREGEN pin LOW. Proper power-up sequencing must be considered when
employing the linear regulator. In order to ensure this takes place, nRESETIN must be held
LOW until the linear regulator has ramped up to nominal operating voltage.
The linear regulator must only be used to power the SoC and internal devices; it is not
intended to supply power to off-chip peripherals. Powering external devices can result in
unpredictable behavior or device failure.
1.2.2 Phase Locked Loop Power
Two PLLs provide accurate, on-board clocks (see Section 1.3). The PLLs require a 1.8 V
supply. If the linear regulator is disabled, the supply must come from an external source.
If the linear regulator is enabled, the PLL power supply comes from the internal VDDC
power pins.
Version 1.0 1-3
Page 47
OverviewLH79524/LH79525 User’s Guide
1.3Clock Strategy
The SoCs have two crystal oscillators. One oscillator, CLK OSC, is used to drive both PLLs
and the three UARTs, among others. This oscillator supports a frequency range from 10
to 20 MHz. The second oscillator, RTC CLK, is a 32.768 kHz oscillator, also requiring a
1.8 V source. This oscillator is used to generate a 1 Hz clock for the Real-time Clock.
The clock circuitry has two PLLs — one for the system clock generation and the other
for the USB clock generation. The output frequency of the PLLs ranges from 20 MHz to
304.819 MHz based on the PLL programmable dividers’ values.
The system clock frequency created in the Reset, Clock, and Power Controller (RCPC)
can be programmed to divide the PLL frequency by 1 or any even divisor between 2 and
30. The maximum ARM720T core operating frequency is 76.205 MHz and maximum sys-
tem operating frequency of 50.803 MHz. If UARTs 0, 1, or 2 are to be used, the system
clock frequency must not be set to less than 50% of the frequency applied to the crystal
input pin (XTALIN) for proper UART operation.
Table 1-2 is a list of the internal clocks with maximum frequency.
Table 1-2. Clock Descriptions
NAME
System Oscillator
Clock (CLK OSC)
32.768 kHz
RTC OSC
1 Hz Clock1 HzThe 1 Hz Clock is derived by dividing the RTC OSC by 32,768.
This is the output from the System PLL. The input for this clock is
304.819 MHz
304.819 MHz
76.205 MHz
CLK OSC, the System Oscillator Clock. The minimum output frequency
is 5 MHz.
This is the output from the USB PLL; the input is CLK OSC. It can be
programmed for any frequency between 5 MHz and 304.819 MHz.
This clock controls the CPU instruction execution speed. It is derived from
the CLK PLL clock, and is prescaled by 2, 4, ...30. The clock is halted
HIGH when the RCPC is in any power down mode other than Standby.
This clock controls the AHB execution speed. It is derived from CLK
PLL and its frequency is CLK PLL divided by 2, 4, ...30. The clock is
halted HIGH when the RCPC is in any power down mode other than
Standby mode. It can be programmed for power savings to turn off
clock individually to DMAC, EMC, EMAC, USB, and CLCDC.
The USB Clock controls the 12 MHz full-speed USB Device interface.
Selectable input from HCLK or USB PLL. Frequency is required to be
48 MHz for proper USB operation (hardware divides by 4).
This clock controls the SSP and the I
HCLK or CLK OSC. Can be divided by 2
individually halted for power savings.
Controls the Touch Screen Controller (TSC) and Brownout Detector. Input source choice of HCLK or CLK OSC. Source can be divided by 2
(n ≤ 8). This clock can be individually halted for power savings.
DESCRIPTION
2
S interfaces. Source is either
n
(n ≤ 8). This clock can be
n
1-4Version 1.0
Page 48
LH79524/LH79525 User’s GuideOverview
Table 1-2. Clock Descriptions (Cont’d)
NAME
CLCD Clock50.803 MHz
Serial Interface
Clock (UART[2:0] )
Counter/Timer
Clocks
RTC Clock32.768 kHz
Clock Output
(CLKOUT)
FREQUENCY
(MAX.)
20 MHz
25.415 MHz
50.803 MHz
DESCRIPTION
This clock controls the data rate for pixel transfers to an external LCD
panel. This clock can be separately enabled, disabled and prescaled.
Source can be divided by 2
for power savings.
These clocks control the data transfer rates over the three UART interfaces. These clocks are all separate and can be separately enabled
and disabled. Clock source can be selected from HCLK or CLK OSC.
These clocks control the transition rates for the internal timers.
The source can be selected from HCLK or the External Timer input
(CTCLK). Each timer is either clocked by CTCLK or HCLK divided by
n
(0 < n ≤ 8).
2
This clock controls the transition rate for the internal real-time clock.
The source can be selected from the 1 Hz Clock, RTC OSC, CLK PLL,
or an External RTC Clock connected to the XTAL32IN pin.
This output clock is available on pin CLKOUT for use with external
peripherals. Input source can be FCLK, HCLK, or CLK OSC.
n
(n ≤ 8). This clock can be individually halted
Version 1.0 1-5
Page 49
OverviewLH79524/LH79525 User’s Guide
1.3.1 Bus Clocking Modes
The ARM720T core (including the cache) and its AHB interface can be operated using
either the Fastbus operation mode or one of two Standard clocking modes (Synchronous
or Asynchronous).
The clocking modes can have significant impact on power consumption and system
throughput, depending upon the application and the speed of external memory. The
ARM720T core and the AHB are clocked by separate signals and the core is capable of
operation at a much higher frequency than the AHB. This higher core speed benefits applications running from cache more than applications requiring frequent AHB access
because each AHB access requires the core and AHB be re-synchronized. Parallel core
and AHB operations can continue with buffered writes to the AHB, but a ll Read accesses
will stall the core until the bus access is completed. Programmers can use the three bus
clocking modes to maximize throughput by reducing the re-synchronization delays (the
number of wait states).
1.3.1.1 Standard Bus Clocking Modes
The Standard bus clocking modes are useful for designs involving low-cost, low-speed
memory, where operation of the core at a faster speed than the AHB is desired. These
modes involve:
• A programmable choice of Synchronous or Asynchronous operation
• Two clocks: HCLK and FCLK.
The AHB interface is controlled by the bus clock (HCLK), qualified by an nWAIT signal.
Figure 1-2 shows the Standard mode clocking arrangement. The core and cache are
driven by FCLK while HCLK drives the bus. FCLK must always be greater than or equal
to HCLK, on a cycle-by-cycle basis. The nWAIT signal can extend a memory access by
inserting entire HCLK cycles into the bus cycle timing.
ARM720T
FCLK
HCLK
WAIT SIGNAL
CORE
INTERFACE
CACHE
AHB
ADVANCED
HIGH-PERFORMANCE
BUS (AHB)
NOTE: This is a conceptual drawing
Figure 1-2. Standard Clocking Modes
1-6Version 1.0
LH79525-49
Page 50
LH79524/LH79525 User’s GuideOverview
1.3.1.2 Synchronous and Asynchronous Bus Clocking Modes
Although the frequency of FCLK must always be greater than (or equal to) HCLK, the two
Standard modes vary the relationship between these two clock signals. In the Synchronous Mode, the FCLK frequency must be programmed to be an even integer multiple of
the HCLK frequency. Bus accesses in the Synchronous Mode require a re-synchronization
delay of at least one wait state. In the Asynchronous Mode the harmonic relationship
between the clocks need not be maintained; the two clock signals may be of unrelated frequency. Bus accesses in the Asynchronous Mode require a minimum re-synchronization
delay of two wait states.
1.3.1.3 Fastbus Extension Bus Clocking Mode
Designs involving frequent accesses of high-speed memory may benefit by using the
Fastbus Extension Mode. This inherently synchronous mode clocks the core, cache, and
AHB at the same frequency. Where the Standard modes utilized two different clo cks, the
Fastbus mode operates the core, cache, and AHB interface with two signals derived from
the same source; essentially the same clock. Figure 1-3 shows the Fastbus Extension
Mode clocking arrangement. The Fastbus Extension Mode does not require re-synchronization delays.
The Fastbus Extension Mode is useful for applications involving frequent AHB accesses.
Although the core’s frequency is limited by the AHB maximum frequency, the Fastbus
Extension Mode avoids the wait-state penalties imposed by the Standard modes.
ARM720T
HCLK_CPU
COMMON CLOCK
SOURCE
NOTE: This is a conceptual drawing
HCLK
CORE
INTERFACE
CACHE
AHB
ADVANCED
HIGH-PERFORMANCE
BUS (AHB)
LH79525-50
Figure 1-3. Fastbus Clocking Mode
Version 1.0 1-7
Page 51
OverviewLH79524/LH79525 User’s Guide
1.4Reset Strategy
Two external resets, nRESETIN, and nTRST, are used for the LH79524/LH79525. If
nRESETIN is asserted, all internal registers EXCEPT the JTAG circuitry within the
device are set to their default state. The nRESETIN signal should be held LOW for the
crystal stabilization time + 200
power-up. If nTRST is asserted, only the JTAG circuitry is set to its default state.
There are two types of internal resets for the LH79524/LH79525. A software reset resets
all internal registers, except the JTAG circuitry, to their default state. The other internal
reset is the watchdog timer (WDT) reset, which also resets all internal registers, except the
JTAG circuitry, to their default state. For more information on these internal resets, refer to
the Reset, Clock, and Power Controller, and Watchdog Timer chapters.
This document uses the term ‘system reset’ to refer to either an nRESETIN reset, software
reset, or a watchdog timer reset. The system reset is also brought out to an external pin
(nRESETOUT). The nRESETOUT pin is held LOW for 8 HCLKs after HCLK becomes
active following a system reset.
At power-on reset (nRESETIN), the type of memory that the CPU boots from is determined
by the state that PC7, PC6, PC5, and PC4 are externally connected to, as shown in
Table 1-3. If left undriven, the default value is 0x0, as determined by internal pull-down
resistors. If the CPU is to boot from external memory, the nCS1 Chip Select is used. If the
CPU is to boot from UART, UART0 is used.
μs (the time varies depending on crystal used) during
Table 1-3. Port C Settings For Boot
PC[7:4]BOOT CONFIGURATION
0x0NOR Flash or SRAM; 16-bit data bus; nBLEx is LOW for reads
0x1NOR Flash or SRAM; 16-bit data bus; nBLEx is HIGH for reads
0x2NOR Flash or SRAM; 8-bit data bus; nBLEx is LOW for reads
0x3NOR Flash or SRAM; 8-bit data bus; nBLEx is HIGH for reads
0x4NAND Flash; 8-bit data bus; 3-byte address
0x5NAND Flash; 8-bit data bus; 4-byte address
0x6NAND Flash; 8-bit data bus; 5-byte address
0x7NAND Flash; 16-bit data bus; 3-byte address
0x8NOR Flash or SRAM; 32-bit data bus; nBLEx is LOW for reads
0x9NOR Flash or SRAM; 32-bit data bus; nBLEx is HIGH for reads
0xAUndefined
0xBUndefined
0xCNAND Flash; 16-bit data bus; 4-byte address
0xDNAND Flash; 16-bit data bus; 5-byte address
0xEI
0xFUART0
2
C
1-8Version 1.0
Page 52
LH79524/LH79525 User’s GuideOverview
1.4.1 Resetting the Test Access Port Controller
The on-chip Test Access Port (TAP) Controller has an independent reset pin, nTRST.
However, it must also be reset at power on, or any time the SoC is reset to ensure it exits
the power up sequence in Normal Mode.
To ensure this, an external AND gate is necessary to AND nTRST and nRESETIN.
Figure 1-4 illustrates the minimal circuit capable of guaranteeing the proper reset signals.
If the application will require a push button reset, the circuit in Figure 1-5 is recommended.
LH79524 / LH79525
nTRST
nRESETIN
nTRST
nRESETIN
Figure 1-4. Reset Circuit for TAP Controller
LH79525-116
Version 1.0 1-9
Page 53
OverviewLH79524/LH79525 User’s Guide
V+
nRESETIN
V+
PUSHBUTTON
RESET
V+
POWER ON RESET
V+
nTRST
SYSTEM RESET TO
OTHER PERIPHERALS
nRESETIN
nTRST
Figure 1-5. Reset Circuit for TAP Controller Including a Push Button
LH79524 / LH79525
LH79525-118
1.4.2 Hardware Requirements at Reset
A number of pins contain on-chip pull up or pull down resistors that provide a logic state
following reset. Other pins require external pull up or pull down resistors because their
state is read by the core prior to power becoming stable. Thus the state of these pins cannot be guaranteed using the internal resistors.
1.4.2.1 Floating Inputs
Many applications require extremely low standby and operating current consumption,
especially in battery operated devices. For minimum current, unused inputs must never be
left floating (unconnected). Each input must be pulled up or pulled down with a 33 kΩ resis-
tor (or smaller). In addition to terminating input pins, this also allows selecting the reset
state of input pins using pull up (logical 1 at reset) or pull down (logical 0 at reset) resistors.
1.4.2.2 Test Pins
The two test pins, TEST1 and TEST2, require being tied HIGH for the SoC to boot into Normal Operation Mode. Without tying these pins HIGH, the chip may boot into PLL Bypass
Mode. To enter Embedded ICE Mode, TEST1 is pulled LOW and TEST2 pulled HIGH;
nBLE0 has a sufficient internal pull up.
1-10Version 1.0
Page 54
LH79524/LH79525 User’s GuideOverview
1.4.2.3 Active Pull Ups
The boot mode — NOR Flash, NAND Flash, SRAM, I2C, or UART — is selected by
the value latched on the rising edge of the nRESETOUT signal from the state of Port C,
pins [7:4]. Pins PC[7:6] are used during NAND Flash booting as control signals, but PC[5:4]
have no other use following the end of reset. Therefore, those two GPIO pins can be used
during normal operation if an active pullup is used, gated by the nRESETOUT signal.
Figure 1-6 shows a schematic representation of one active pullup circuit. One circuit is
required for each PCx pin to be pulled high during reset. nRESETOUT is presented to the
Gate (pin 1) of the P-Channel FET. When active (LOW), nRESETOUT causes the transistor
to turn on, and pull the PCx input HIGH. When nRESETOUT transitions from LOW to HIGH
at the end of the reset period, the value on PC[7:4] is latched and the FET is turned off, thus
allowing those pins to be used for general purpose I/O or as address pins A[21:20]. As shown
in the figure, a common pull up resistor can be used for all of the FETs.
+3.3 V
120 Ω
BSS84
32
1
BSS84
32
1
LH79524/ LH79525
PCx
nRESETOUT
PCy
Figure 1-6. Active Pullup Circuit
LH79525-104
Version 1.0 1-11
Page 55
OverviewLH79524/LH79525 User’s Guide
1.5AHB Bus Master Priority and Arbitration
The LH79524/LH79525 have five AHB masters - the ARM720T processor, the DMA
Controller, the Color LCD Controller, USB Device, and the Ethernet Controller. Two of the
masters — the ARM
cating with all the memory controllers and peripherals. The LCD Controller, USB Device,
and Ethernet Controller interface to the main AHB bus via a slave interface for programming and via a master interface for accessing SDRAM and Static Memory Controllers.
The default priorities for the five different AHB masters are indicated in Table 1-4.
720T processor and the DMA controller — are capable of communi-
The LH79524/LH79525 provides the following data-path-management resources on chip:
• AHB and APB data buses
• 16KB of internal SRAM accessible by the ARM
Ethernet Controller, or LCD Controller
• A static and dynamic memory controller with a 24-bit address and 16/32-bit data
interface
• A 4-channel general purpose DMA controller
All system resources accessible by the LH79524/LH79525 are memory mapped. These
include external resources (e.g. ROM, PROM, SRAM, SDRAM, External Peripherals) and
internal resources (system configuration registers, peripheral configuration registers, and
internal memory).
The external memory space is partitioned into eight banks. Each bank spans 512MB. The
start address of each bank is fixed and is determined by the three highest order bits of the
32-bit AHB address. These banks define the type of resource being addressed. One bank
can only contain external static memory devices connected to the External Bus Interface
(EBI). Another bank can only contain external SDRAM devices connected to the EBI.
Another bank contains only the internal SRAM, connected to the AHB. Finally, another
bank is reserved for accessing the system configuration registers themselves, as well as
many of the peripheral control registers. See Table 1-5.
720T processor, DMA Controller,
1-12Version 1.0
Page 56
LH79524/LH79525 User’s GuideOverview
This memory map partition has four configurations, based on the setting of the REMAP bits
in the Reset, Clock, and Power Controller.
The external static memory bank is divided into four sections, each having a Chip Select
associated with it. Each section has 24 address lines. When using 32-bit wide memories
each section is 64 MB, 16-bit memories have 32 MB sections, and 8-bit memories have 16
MB sections. When the Chip Select doesn’t occupy the complete bank, it is aliased and
doesn’t cause a memory abort. The external SDRAM bank is divided into two 256 MB sections, each having a Chip Select associated with it. The peripheral register section is
divided into 4KB peripheral sections. See Table 1-6 through Table 1-12.
NOTE: *Also accessible at 0x00000000 when REMAP = 01.
DEVICEPIN
Table 1-8. Internal SRAM Memory Section Mapping
START ADDRESS
REMAP = ‘XX’
0x60000000 - 0x60003FFF16 KB Internal SRAM1
0x60004000 - 0x7FFFFFFFInternal SRAM (mirrored)2
NOTES:
1. Also accessible at 0x00000000 when REMAP = 10
2. An access to this area is mapped to the lower 16KB and will not cause a memory abort
DESCRIPTIONNOTES
Table 1-9. Boot ROM Memory Section Mapping
START ADDRESS
REMAP = ‘XX’
0x80000000 - 0x80001FFF8 KB Boot ROM
0x80002000 - 0x9FFFFFFFInvalid Access*
DESCRIPTION
NOTE: *An access to this area will cause a memory abort.
If, following system reset, the boot configuration is set to 0bX1XX, an override of nCS1
occurs. In this circumstance, the Boot ROM is selected for the locations in the memory
map where nCS1 is normally selected. This causes the CPU to execute the predefined
code contained in the Boot ROM, allowing booting from NAND Flash, UART, or I
2
C; see
Table 1-10. This override can be disabled by writing a 0 to the nCS1 Override bit
(CS1OV:CS1O) in the Boot Controller. The override can be re-enabled by writing a 1 to
CS1OV:CS1O. If on system reset the boot configuration is set to 0bX0XX, nCS1 remains
mapped as described above and CS1OV:CS1O has no effect on the memory map.
1-14Version 1.0
Page 58
LH79524/LH79525 User’s GuideOverview
Table 1-10. AHB Memory Map on Power-up when Boot Configuration = 0bX1XX
The ARM720T Core includes an 8KB Cache, Cache Controller, Memory-Management
Unit (MMU) and Write Buffer. A single cache is used for both instructions and data. The
cache is an important core feature because the AHB carries all Core, DMA, LCD Display,
and Ethernet traffic. For best bandwidth utilization, software should be structured to ensure
that the Core is running from within its cache whenever possible.
At reset, the Write Buffer, Cache, and MMU are disabled and the MMU’s Translation
Lookaside Buffer (TLB) is flushed. If the MMU is utilized, software can determine memory
cachability by bank or by page. For best performance, the Color LCD frame buffer should
not be located in a cachable region.
1.8Memory Management Unit (MMU)
The ARM720T core in the LH79524/LH79525 includes an MMU that performs three primary functions: It translates virtual addresses into physical addresses, it enables cache
and write buffering for particular ranges of virtual addresses, and it controls memory
access permissions. When the MMU is turned off, as it is at reset, all virtual addresses are
output directly onto the physical address bus (the AHB).
The MMU supports memory accesses based on ‘sections’ or ‘pages’ of memory. Sections
are 1MB blocks of memory; pages can be either small or large. Small pages consist of
4KB blocks of memory. Additional access control mechanisms are extended to 1KB
subpages. Large pages consist of 64KB blocks of memory. Large pages are supported
to allow mapping of a large region of memory while using only a single entry in the
Translation Lookaside Buffer (TLB). Additional access control mechanisms are extended
to 16KB subpages.
For more information about the core, cache, and MMU, refer to the ARM document
‘ARM720T Processor Data Sheet’, at www.arm.com.
Version 1.0 1-17
Page 61
Chapter 2
Analog-to-Digital Converter/
Brownout Detector
The LH79524/LH79525 incorporate an analog-to-digital converter (ADC) and implements
a touch screen controller (TSC) and brownout detector with interrupt.
2.1Theory of Operation
The ADC and TSC incorporate:
• 10-bit ADC with integrated sample and hold, and fully-differential high impedance
signals, and single-ended or ratiometric reference inputs
• A 10-channel multiplexer that routes user-selected inputs to the ADC in single-ended
and ratiometric modes
• A 16-entry × 16-bit-wide FIFO containing the 10-bit ADC output
• Active input matrix provides a bias-and-control network for the touch screen interface
and support functions, which are compatible with industry-standard 4-, 5-, 7-, and 8-wire
touch-sensitive panels
• Pen-down sensing circuit and interrupt generator
• Independently-controlled voltage reference generator
• Conversion automation function to minimize controller interrupt overhead
• Three power modes: Off, Standby, and Run
• Brownout detector with interrupt.
2.1.1 Operational Summary
The ADC is an AMBA-compliant SoC peripheral that connects as a slave to the APB. The
ADC block consists of an 10-channel, 10-bit Analog-to-Digital Converter with integrated
Touch Screen Controller. The complete touch screen interface is achieved by combining
the front-end biasing, control circuitry with analog-to-digital conversion, reference generation, and digital control. Figure 2-1 shows a block diagram of the ADC.
The ADC has a bias-and-control network that allows correct operation with 4-, 5 -, 7 -, and
8-wire touch panels. A 16-entry × 16-bit wide FIFO holds a 10-bit ADC output and a 4-bit
tag number. When the screen is touched, it pushes the conductive coating on the coversheet against the coating on the glass, making electrical contact. The voltages produced
are the analog representation of the position tou ched. The voltage level of the coversheet
is converted continuously by the ADC and monitored by the system.
• Ascertaining how much settling time is required before making a measurement.
• Determining the ADC input source and ADC reference source.
From 1 to 16 different measurements can be performed in a sequence. The number of
sequence steps is stored in the PC Register.
The biasing switch configuration, settling time, and ADC mux settings fo r each of the 1 to
16 measurements in the sequence are stored in an entry in the Control Bank. The measurement sequence can be triggered by either software or a Pen Down Interrupt.
The Control Bank state machine fetches each entry from the Control Bank and stores it in
the Low Word register (LW) and High Word register (HW) for the duration of the measurement. When the measurement is complete, the Control Bank state machine stores the ADC
result and the Control Bank instruction number in the measurement FIFO, then obtains the
next configuration from the Control Bank and loads it into LW and HW.
When all steps of the sequence are complete, or at a programmed FIFO watermark level,
the Control Bank state machine signals the ARM core to read results from the FIFO.
From the FIFO, software can read each measurement result and corresponding input
configuration, as represented by the Control Bank instruction number. If the FIFO is full
the control bank state machine continues to take measurements and the state machine
triggers the FIFO Overrun Interrupt.
The ADC can be programmed to repeat the measurement sequence indefinitely, or to pause
at the end of a sequence and wait for a new Pen Down Interrupt or software trigger. If the
sequence does not repeat continuously, softw are pro grams t he HW and LW registers with the
contents of the Idle High Word (IHWCTRL) and Idle Low Word (ILWCTRL) register values with
the bias and ADC multiplexer settings until a new measurement sequence is triggered.
2.1.2 Bias-and-Control Network
The bias-and-control network supports 4-, 5-, 7-, and 8-wire touch pane ls. Multiplexers on
the reference inputs enable connection in both single-ended and ratiometric modes.
• For 4-wire operation, connection is to inputs AN/UL/X+, AN1/UR/X-, AN2/LL/Y+, and
AN3/LR/Y-. Pull-up and pull-down FETs allow X and Y coordinate measurement in addition to pen-pressure sensing. The Pen Interrupt line is also available via the Interrupt
Masking/Enabling register (see Section 2.2.2.4).
• For 5-wire operation, panel connections are to AN/UL/X+, AN1/UR/X-, AN2/LL/Y+,
AN3/LR/Y-, and AN4/WIPER inputs. The Pen Interrupt line is also available in this mode.
• For 7-wire operation, connections are the same as the 5-wire touch panel with a second
wire added to the Upper Left and Lower Right corners.
• For 8-wire operation, connections are the same as the 4-wire touch panel with a second
wire added to each of the connections. This configuration also requires a single external
MOSFET.
• Details for wiring 4-, 5-, 7, and 8-wire touch panels appear in the application note ‘Using
the SHARP ADC with Resistive Touch Screens’, available at www.sharpsma.com.
The ADC has a programmable measurement clock derived from the ADC peripheral clock
generated by the RCPC. The clock source is selectable from HCLK or the System oscillator clock, and can be prescaled. The clock supplies the time base for the measurement
sequencer and the successive-approximation circuitry. Higher clock frequencies allow
faster measurement throughput. Slower clock frequencies allow more settling time for a
measurement and can reduce ADC power consumption. If the clock is too slow, the sample-and-hold amplifier on the ADC input may droop before the measurement is complete.
2.1.4 Brownout Detector
The Brownout Detector is an asynchronous comparator that compares a divided version
of the 3.3 V supply and a bandgap-derived reference voltage. If the supply dips below a
trip point, the Brownout Detector sets a bit in the IS Register (see Section 2.2.2.8). An
interrupt is directly connected to the VIC. This allows the SoC to notify peripherals of an
impending shutdown and provides the ADC with time to save its state.
The Brownout detector also indicates brownout if the clock is off (PWM bits of PC register
are 0b00 or 0b11). In addition, the Brownout Detector indicates a brownout condition on
startup until the VDDA pin rises above the trip point.
2.1.5 SAR Architecture
While there are various SAR implementations, the basic architecture is simple. Figure 2-3
shows this architecture.
The analog input voltage (VIN) is held on a track/hold. The N-bit register is set to midscale
(100...0, where the most-significant bit is set to 1) to implement the binary search algorithm. This forces the DAC output (VDAC) to be VREF
÷ 2, where VREF is the reference
voltage provided to the ADC. Then a comparison is performed to determine whether VIN
is less than, or greater than VDAC:
• If VIN is less than VDAC, the comparator output is a logic LOW and the most-significant
bit of the N-bit register is cleared to 0.
• If VIN is greater than VDAC, the comparator output is a logic HIGH (or 1) and the
most-significant bit of the N-bit register remains set to 1.
The SAR control logic then moves to the next bit down, forces that bit HIGH, and conducts
another comparison. The SAR control logic repeats this sequence until it reaches the
least-significant bit. When the conversion is complete, the N-bit digital word is available in
the register.
Figure 2-4 shows an example of a 4-bit conversion. In this figure, the y-axis and the bold
line show the DAC output voltage. In this example:
1.The first comparison shows that VIN < VDAC. Consequently, bit 3 is 0. The DAC is
then set to ob0100 and the second comparison is conducted.
2.In the second comparison, VIN > VDAC , so bit 2 remains at 1. The D A C is then set to
0b0110 and the third comparison is conducted.
3.In the third comparison, bit [1] is set to 0 and the DAC is then set to 0b0101 f or the last
comparison.
4.In the final comparison, bit 0 remains at 1 because VIN
Four comparison periods are necessary for a 4-bit ADC. Generally, an N-bit SAR ADC
requires N comparison periods and will not be ready for the next conversion until the
current conversion is completed.
Another feature of SAR ADCs is that power dissipation scales with the sample rate. By
comparison, flash or pipelined ADCs usually have constant power dissipation as opposed
to sample rate. This SAR ADC feature is especially useful in low-power applications or
applications where data acquisition is not continuous.
2.1.6 Battery Control Feature
The battery control pin (BATCNTL) allows control of external battery circuits by the SoC.
An external resistor divider allows monitoring the external battery voltage, as shown
in Figure 2-5. External switches Q1 and Q2 connect the voltage divider to
the battery. These switches are driven by the BATCNTL pin, which remains HIGH for the
duration of the measurement. R1 and R2 should be chosen so that during normal operation (with BATCNTL LOW), the voltage at VBAT is somewhere within the common mode
input range of the ADC. For example if the battery voltage is 6 V nominal, choose R1= 300
kΩ and R2 = 100 kΩ to give IN+ = 1.5 V at a load of only 15
μA on the battery.
LH79524 /LH79525
R1
AN
x
CTCLK/ INT4/BATCNTL
MUX
IN+
A/D
10
LH79525-119
BATTERY
VBAT
+
_
Q1
R2
Q2
Figure 2-5. Use of the BATCNTL Pin
Note that the BATCNTL pin is only active when making the measurement on that particular
ADC channel. All other times BATCNTL is LOW.
Software can easily configure the ADC for battery voltage measurement. Program the
PC:BATLOC field to correspond to the channel to which the battery voltage measurement
is connected. When HW:INP (the + Input Mux selection) equals the value in PC:BATLOC,
the BATCNTL pin goes HIGH and loads the battery through th e external switch as shown
in Figure 2-5. In addition, PC:BATEN, the Battery Control Enable signal, must be programmed to 1. When the BATCNTL pin is not required to g o HIGH, for example when the
ADC is used in a general purpose application, PC:BATLOC should be programmed so that
it will never equal any of the inputs that will be used in the application e.g. 0b1111. Also
the PC:BATEN can be programmed to 0 to disable this function.
The throughput-conversion time consists of one cycle of Get Data state added to 16 cycles
of measurement. Starting from the Idle state, the time for a complete measurement
sequence, in clock cycles, is calculated as:
1CIS + MS × (TCT + STC) + 1CEOS
where:
• 1CIS is one cycle in Idle state
• MS is the number of measurements in the sequence
• TCT is the throughput conversion time of 17 cycles
• STC is the number of settling time cycles per measurement
• 1CEOS is one cycle in the End of Sequence state.
This equals:
• Two cycles, plus
• The number of measurements in sequence times, plus
• The throughput conversion time (17 cycles), plus
• The number of settling time cycles per measurement.
2.1.8 Interrupts
The ADC has five interrupts:
• Brownout Interrupt (BROWNOUTINTR)
• Pen Interrupt (PENIRQ)
• End of Sequence Interrupt
• FIFO Watermark Interrupt
• FIFO Overrun Interrupt
All five interrupts make up the combined interrupt TSCIRQ, and presented to the VIC.
Each of the five individual maskable interrupts, except Brownout, is enabled or disabled by
changing the mask bits in the IM Register (see Section 2.2.2.4). Software can read the
interrupt status bits through the IS Register, even if corresponding mask bits are set (see
Section 2.2.2.8). Clearing the mask bits does not clear the interrupt status.
2.1.8.1 Brownout Interrupt
The Brownout Interrupt (BROWNOUTINTR) is asserted when the supply voltage dips
below the trip-point voltage. This interrupt status is latched in the IS Register. It remains
HIGH until the BOIC bit of the Interrupt Clear (IC) register is asserted. The instantaneous
raw status of the BROWNOUTINTR is stored in the GS Register (see Section 2.2.2.7). The
Brownout Interrupt has its own dedicated output to the VIC.
NOTE: The latency between clearing the latched Brownout Interrupt and the time when it can be set again is
one A2DCLK cycle. Polled systems should use the unlatched Brown-Out Raw Interrupt Status bit
(bit [9]) in the GS register instead of the latched interrupt status in the IS register.
The Pen Interrupt (PENIRQ) is enabled when the settings on the bias switches are
switched to the Pen Interrupt Mode configuration and the ADC is set up to trigger a
measurement on PENIRQ. The Pen Interrupt is used by the TSC to start the state
machine. The state machine may begin a sequence of conversions, depending on
the contents of the General Configuration (GC) register, when a Pen Interrupt occurs
(see Section 2.2.2.6). PENIRQ is latched and remains HIGH until the PENIC bit of the
Interrupt Clear (IC) register is asserted (see Section 2.2.2.14). The latched value of the
Pen Interrupt is stored in the Interrupt Status register. The instantaneous raw status of the
Pen Interrupt is stored in the General Status (GS) register (see Section 2.2.2.7).
NOTE: If a measurement sequence is configured to keep the Touch Screen biased for Pen detect on every
measurement, PENIRQ is not generated on every sequence. If, on the other hand, the Pen detect
circuit is disconnected, there will be an edge every time the system enters Idle state.
2.1.8.3 End-of-Sequence Interrupt
The End-of-Sequence Interrupt occurs after the programmed number of conversions
(NOC) occurs. After the ADC converts all the data for a given sequence of conversions,
this interrupt goes HIGH. The End-of-Sequence Interrupt is latched and remains HIGH
until the EOSINTC bit of the IC Register is set.
2.1.8.4 FIFO Watermark Interrupt
The FIFO Watermark Interrupt occurs when the number of entries in the FIFO is greater
than or equal to the programmed watermark level FIFOWMK (GC Register, bits [6:3]). This
interrupt clears when the FIFO contents falls below the watermark level.
2.1.8.5 FIFO Overrun Interrupt
The FIFO Overrun Interrupt occurs when the receiving logic tries to place data into the
FIFO after the FIFO has been completely filled, exceeding the FIFO’s maximum capacity
of 16 entries. The interrupt is cleared when the FIFO is read.
2.1.9 Application Details
An application note entitled ‘Using the SHARP ADC with Resistive Touch Screens’ is available from SHARP that provides more detailed application information dealing with use and
programming of the ADC.
HW is the High Word Register. This Read Only status register shows the contents of the
current conversion’s high word in the control bank. There is a on e-to-one correspondence
between the contents of the control bank high word and the contents of this register for the
current conversion in progress.
31:16///Reserved Reading returns 0. Write the reset value.
Number of Clock Cycles Specifies the number of clock cycles that the ADC
allows for the input signal to settle to within required accuracy before beginning
conversion. Used with bits [10:8] of the PC Register to set the acquire time in
clock cycles (see Section 2.2.2.5).
15:7 SETTIME
6:3INP
2INM
1:0REFP
For example, if Frequency In (ƒIN) = 2 MHz (500 ns period):
PC[10:8] = 010 (i.e., divide ƒIN by 4)
HW[15:6] = 000100000 (i.e., 32 cycles)
Therefore, acquire time is 500 ns × 4 × 32 = 64 μs
In+ Mux Determines the signal connected to the positive input of the ADC.
See Table 2-4.
In- Mux Determines the signal connected to the negative input of the ADC.
1 = GND
0 = Ref- (output of the Ref- Mux)
Ref+ Mux Determines the signal connected to the positive reference of the ADC.
LW is the Control Bank Low Word Register. This Read Only status register displays the
contents of the current conversion’s low word in the control bank. There is a one-to-one
correspondence between the contents of the control bank low word and the contents of
this register for the current conversion in progress.
///ReservedReading returns 0. Write the reset value.
Bias Control These bits turn the FETs on and off, as shown in
Figure 2-2. The bit number corresponds to the FET nu m be r in th e figu r e.
IMPORTANT: bits 9-11 must always be written as 0b000. Writing a 1 to an y
13:2BIASCON
of these three bits can cause unpredictable results.
1 = FET ON
0 = FET OFF
Ref- MuxDetermines the signal connected to the negative reference of the
RR is the Results register. This register contains the oldest entry of the 16-entry × 16-bit
wide result FIFO. Its index in the FIFO’s memory array is contained in the Read Pointer
(RDPTR) bit field in the FIFO Status Register (see Section 2.2.2.9). This register contains
the 10-bit ADC output and the 4-bit tag number from the Control Bank State Machine.
When the FIFO is full, further data writes are temporarily blocked until at least one location
is available for a write. Reading from RR removes the oldest entry from the result FIFO and
increments the RDPTR.
15:6 ADCOUT ADC OutputContains the 10-bit digital output of the ADC.
5:4 ///ReservedReading returns 0. Write the reset value.
3:0 CBTAG
///ReservedReading returns 0. Write the reset value.
Control Bank Tag Specifies the entry number (HWCTRLBxx or
LWCTRLBxx) of the Control bank. The entry number (x) ranges from 0 to
15, corresponding to the conversion ass oc iat ed with th e bi t re su lt.
IM is the Interrupt Mask / Enable register. The active bits used in this register are Read/
Write and enable the interrupts. Software can read the status of the interrupt bits through
the IS Register, even if corresponding mask bits are set in this register. The Brown Out
enable is unique in that the Brown Out Interrupt can be programmed to be either an FIQ
or an IRQ. That programming is done in this register. The Interrupt Status (IS) and Masked
Interrupt Status (MIS) registers show only the status of the interrupt, not how it is configured. Current configuration can be read from this register. Writing a 0 to an IM bit does not
clear the latched interrupt status in the IS register. The IS register is logically ANDed with
the IE register to create the contents of the Masked Interrupt Status (MIS) register.
In this register, the clock divider bits are programmed to set the system clock frequency for
analog operation. Program bits [3:0] to the number of conversions necessary, depending
on the conversion. Bit [4] can be used as an enable for external I/O pads. If this bit is set
to 1, the Battery Control Logic Pin (BATCNTL) will be a valid output. If an external battery
measurement circuit is not used, this bit should be set to 0.
NOTE: Allow two A2DCLK cycles between successive write cycles to this register. Otherwise, ADC behavior
///ReservedReading returns 0. Write the reset value.
Battery Measurement Location Program this field with the
Channel number corresponding to the location programmed into the
HW:INP field for battery measurement. When PC:BATLOC = HW:INP,
the output pin BATCNTL goes HIGH. At all other times, the BATCNTL
pin is LOW.
To disable toggling the BATCNTL pin, program these bits to a value
that will never appear in HW:INP, for example 0b1111.
Clock Select If the nominal value is used, the only valid settings are
011, 100, 101, and 110.
1. nIDLE refers to whether the state machine is in the Idle state:
1 = Control Bank State Machine is in another state besides the Idle state.
0 = Control Bank State Machine is in the Idle state.
2. A2DCLK ENABLE refers to whether the A2DCLK signal is enabled:
1 = Enables the A2DCLK to the analog circuitry.
0 = Disables the A2DCLK to the analog circuitry. (The clock is always enabled to the digital circuitry.)
3. BANDGAPON refers to whether Band Gap is turned on (required for the Brownout Detector):
1 = Turns on the Band Gap. This setting is required for the Brownout Detector to work.
0 = Turns off the Band Gap, disabling the Brownout Detector.
4. A2DON refers to whether the analog circuitry is enabled for the ADC:
1 = Enables the analog circuitry for the ADC.
0 = Disables the analog circuitry for the ADC.
In this register, the SSM field triggers the state machine to retrieve the data from the
Control Bank and store it in the appropriate registers for the ADC. If the SSM bits are set
to 0b11 at the end of a sequence, the state machine continues to convert data.
If the SSM bits are set to 0b10 and a value of 0b0000110 is written to the GC Register, the
EOS_UM bit (bit [2]) of the Interrupt Status Register may never get set. This is normal
operation. To accommodate this, wait two A2DCLK periods after setting the SSM bit to 10
before setting the SSB bit.
NOTE: Allow two A2DCLK cycles between successive write cycles to this register. Otherwise, ADC behavior
31:7 ///Reserved Reading returns 0. Write the reset value.
FIFO Watermark Programmed to values between 0 and 15. This value
6:3 FIFOWMK
2 SSB
1:0 SSM
corresponds to watermark levels betwee n 1 an d 16, re sp ec tive ly. Wh en
the FIFO fills to this level, the FIFO generates an interrupt.
Start Sequence Bit
1 = SSB will start the conversion sequence
0 = SSB will not start the conversion sequence
Sequence Start ModeTo trigger continuous conversions, set these bits
to 0b11, wait one A2DCLK period, and set the SSB bit to 1. Thereafter,
once any conversions occur and SSM is set to 0b00 to stop the conversions,
conversions can be started again by setting SSM to 0b11, without having to
set SSB.
Note that the Pen Interrupt can only be used when the ADC is configured to
start on Pen Down.
00 = SSB or Pen Interrupt starts new conversions
01 = Pen Interrupt starts new conversions
10 = SSB starts new conversions
11 = Continuous conversions
GS is the General Status Register. In this Read Only register, the 4-bit signal CBSTATE
field shows the current state of the Control Bank state machine. The CBTAG signal contains the control bank entry number of the conversion that is taking place.
31:10 ///Reserved Reading returns 0. Write the reset value.
Brown-Out Raw Interrupt Status
9 BROWNOUT
8 PENIRQ*
7:4 CBSTATE
3:0 CBTAG
1 = Brown-out Interrupt is active.
0 = Brown-out Interrupt is not active.
Pen IRQ Raw Interrupt Status
1 = Pen IRQ Interrupt is active.
0 = Pen IRQ Interrupt is not active.
Control Bank State Machine Status The only valid values are:
0001 = Idle state; waiting for sequence start trigger
0010 = GET_DATA state
0100 = WAIT_CONV state
1000 = END_OF_SEQ state
Current Conversion Tag Number Contains the current conversion tag
number.
NOTE: *If the Idle state is configured to bias a 4-wire Touch Screen for Pen IRQ detect, the PENIRQ bit is
only set during the one A2DCLK period of the GET_DATA state. To determine if the pen has been
down at all, examine the IS:PENSYNC_UM bit. To determine if the pen was down at both the start
and the end of a measurement sequence, use analog measurements of the pen IRQ voltage at the
beginning and the end of the sequence. Then have a software Schmidt Trigger verify the logic level
at the beginning and end of the coordinate-measurement sequence. Install a Pen IRQ handler function that changes the measurement mode to software triggered and disables Pen IRQ interrupts.
Then stop the timer when it expires. N ext, install an end-of-sequence interrupt handler that reads the
measurement results and determines whether the pen is still down. If the pen is down, the handler
starts the timer for triggering the next measurement. The handler discards the first set of measurements taken during the initial Pen Down detection. Otherwise, the handler posts the current pen position to some sort of OS queue. Enable Pen Triggered Measurements to start the system.
IS is the Interrupt Status register. This Read Only register provides the unmasked value
of each interrupt. The BROWNOUT, PENSYNC, and EOS interrupts are latched and must
be cleared by writing to the Interrupt Clear (IC) register. The FWATER and FOVRN interrupts are cleared when the contents of the FIFO no longer exceed their thresholds.
31:12 ///ReservedReading returns 0. Write the reset value.
Write Pointer FIFO Location Contains the index of the memory
11:8 WRPTR
7:4 RDPTR
3 FFF
2 FEMPTY
1 FOVRNDET
location in the result FIFO array where the ne xt measurement
result will be stored.
Read Pointer FIFO Location Contains the index to the location
in the result FIFO array where the next measurement result will be
read. Reads from the RR register increment this value.
FIFO Full
1 = FIFO is full
0 = FIFO is not full
FIFO Empty
1 = FIFO is empty
0 = FIFO is not empty
FIFO Overrun Status Bit This bit is 1 when the receive logic tries
to place data into the FIFO after it has been completely filled. When
new data is received, the FOVRNDET bit is asserted and the newly
received data is discarded. This process repeats for each time new
data is received, until at least one empty FIFO entry exists. When
FOVRNDET is set to 1, an interrupt request is generated.
1 = Logic tried to place data into a full receive FIFO and is
0 = FIFO has not experienced an overrun
FIFO at Watermark
0 FGTEWATERMRK
1 = FIFO is at or above watermark level
0 = FIFO has fewer entries than the watermark level
The Control Bank is a set of 32 16-bit registers. The contents of the registers controls the
switches for the ADC. These registers are typically configured once at startup, dictated by
the physical system. HWCTRLBx and LWCTRLBx are used together and follow the format
of the HW and LW Registers (see Section 2.2.2.1 and Section 2.2.2.2).
HWCTRLB0 (Tag 0b0000 of the High Word Control Bank) contains 16 bits of data for the
4WX (4 wire touch screen, X direction) conversion. The remaining 14 bits of data for the
4WX conversion is in LWCTRLB0 (Tag number 0b0000 of the Low Word Control Bank).
Bits 15 and 14 of the low words are reserved and read as zero. The same logic is used
for 4WY (4 wire touch screen, Y direction).
The same logic is used for the Control Bank Registers HWCBx and LWCBx. The High
Word Registers should contain:
• The settling time
• The In+ bits
• The In- bits
• The Ref+ bits.
The Low Word Registers should contain:
• The bias control settings
• The Ref- bits.
At the end of any given conversion, a 4-digit Tag Number is stored in the FIFO along with
the corresponding 10-bit output of the ADC.
For internal access into the control bank, the data writes to the registers from the APB
data bus. Each entry is a 16-bit register, with its own address space. Table 2-22 shows
sample entries for the Control Bank. More details, and examples can be found in SHARP’s
Application Note ‘Using the Sharp ADC with Resistive Touch Screens’, available at
http://www.sharpsma.com.
IHWCTRL is the high word of the Idle Register. The active bits used in this register are
Read/Write.
This register specifies the idle setting time and the inputs connected to th e ADC during the
Idle state. This register is used with the ILWCTRL Register (see Section 2.2.2.12).
///ReservedReading returns 0. Write th e re se t valu e.
Idle Settling TimeSpecifies the delay, in ADC clock cycles, from when
the state machine enters the Idle state t o when the Pen Interrupt signal
can be activated. Prevents spurious trigger of Pen Inter rupt while analo g
signals set up by the IDLE Register are settling.
Idle In+ MuxSpecifies the connection to the positive input of the ADC
during Idle Mode. See Table 2-4.
Idle In- MuxSpecifies the connection to the negative input of the ADC
during Idle Mode.
1 = GND
0 = Ref-
Idle Ref+ MuxSpecifies the connection to the positive reference of t he
ADC during Idle Mode.
ILWCTRL is the low word of the Idle Register. The active bits used in this register are
Read/Write.
This register specifies the inputs connected to the ADC during the Idle state. This reg ister
is used with the IHWCTRL Register (see Section 2.2.2.11).
MIS is the Masked Interrupt Status register. This Read Only register gives the masked
value of each interrupt. The BROWNOUT, PENSYNC, and EOS interrupts are latched and
must be cleared by writing to the Interrupt Clear (IC) register. The FWATER and FOVRN
interrupts are cleared when the contents of the FIFO no longer exceed their thresholds.
IC is the Interrupt Clear Register. Bits [2:0] of this Write Only register correspond to the
three latched interrupts.Writing a 1 to a bit clears the corresponding interrupt; writing a 0
to a bit has no effect. This register is self-clearing.
NOTE: The reset value of this register’s bits is indeterminate.
BOIC
PENIC
EOSINTC
Table 2-30. IC Fields
BITSNAMEDESCRIPTION
31:3///ReservedReading returns 0. Write the reset value.
Brown-Out Interrupt Clear
2BOIC
1PENIC
0EOSINTC
1 = Clears BROWNOUTINTR.
0 = Do not clear BROWNOUTINTR
Pen Interrupt Clear
1 = Clears PENIRQ
0 = Do not clear PENIRQ
End of Sequence Interrupt Clear
1 = Clears EOSINTR
0 = Do not clear EOSINTR
2-26Version 1.0
Page 87
Chapter 3
1
Boot Controller
The Boot Controller is the same for both the LH79524 and LH79525. All references in this
chapter apply to both devices.
The Boot Controller provides a glueless interface to external NAND Flash devices and
support for memory-mapped peripherals or NAND flash devices when performing AHB
burst read accesses of undetermined length.
By monitoring external boot pins at power-on reset, the Boot Controller supports:
• Booting from 8-, 16-, or 32-bit memory
• Configuration of the byte-lane boot state for nCS1
• Booting from alternate external devices (e.g., NAND Flash, UART, I
Figure 3-1 shows the Boot Controller block diagram.
2
C).
ADVANCED
PERIPHERAL
BUS (APB)
AMBA
INTERFACE
APB
REGISTER
BLOCK
FROM AHB
DECODER
PC[7:4]EXTERNAL
AHB
CONTROL
ADDRESS and
CONTROL
EXTERNAL
PERIPHERAL
INTERFACE
CONTROL
nCS1
OVERRIDE
BOOT
CONTROL
NAND
FLASH
CONTROL
AHB
CONTROL
TO nCS1
TO BOOT ROM
BOOT
CONTROL
NAND FLASH:
nFRE, nFWE
Figure 3-1. Boot Controller Block Diagram
Version 1.0 3-1
LH79525-6
Page 88
Boot ControllerLH79524/LH79525 User’s Guide
3.1Theory of Operation
The Boot Controller is a slave module that connects to the APB. It provides hardware support for configuring the External Memory Controller (EMC) interface on power-up, and
allows multiple boot devices and scenarios to be used in different applications. The Boot
Controller employs no error checking other than that specified by a protocol, if applicable,
and does not utilize the MMU or caches.
Booting can occur from one of several devices. The Boot Controller reads the status of
Port C and determines the type of device from which the code will be transferred. Once
the device and location is determined, the Boot Controller reads exactly 4KB (small-block
devices, I
it at physical address 0x60000000. Finally, the Boot Controller transfers control to that
code by setting the Program Counter to 0x60000000 and removes the Boot ROM from the
memory map (the Boot ROM is only visible in the memory map immediatly following reset).
When using small-block devices, the Boot Controller transfers 4KB of code from the bo ot
device. With large-block devices, the Boot Cont roller transfe rs 1KB. This is becaus e
large-block devices send an ECC value at the end of each page, which would corrupt
the code stream.
2
C, or UART) or 1KB (large-block devices) of code from that location and stores
When using either type device, but especially with large-block devices, larger amounts of
boot code can be loaded by writing a bootstrap loader for the initial code, which would then
execute and transfer the balance of the boot code to internal SRAM.
3.1.1 Boot Device Determination
The Boot Controller determines type and location of an external non-volatile device from
which boot code will be loaded for SoC core execution. This location must be within the
nCS1 chip select domain for all devices but NAND Flash.
The booting process is controlled by the initial values of PC[7:4]. The value on these pins at
power-up determines the boot device, data bus width, and configuration of control signals.
The Boot Controller then configures the External Memory Controller for proper accesses.
Table 3-1 lists the configuration ONLY for version A.0 of the SoC. For versions A.1 and
later, refer to Table 3-2.
3-2Version 1.0
Page 89
LH79524/LH79525 User’s GuideBoot Controller
Table 3-1. Boot Configuration for Silicon Version A.0
PC[7:4]DEVICE TYP EDATA BUS WIDTHCONTROL
0x0NOR Flash or SRAM 16-bitnBLEx LOW for Reads
0x1NOR Flash or SRAM 16-bitnBLEx HIGH for Reads
0x2NOR Flash or SRAM 8-bitnBLEx LOW for Reads
0x3NOR Flash or SRAM 8-bitnBLEx HIGH for Reads
0x4NAND Flash (Small Block)8-bit3-byte Address
0x5NAND Flash (Small Block) 8-bit4-byte Address
0x6NAND Flash (Small Block) 8-bit5-byte Address
0x7NAND Flash (Small Block) 16-bit3-byte Address
0x8NOR Flash or SRAM 32-bitnBLEx LOW for Reads
0x9NOR Flash or SRAM 32-bitnBLEx HIGH for Reads
0xARESERVEDRE SERVEDRESERVED
0xBRESERVEDRE SERVEDRESERVED
0xCNAND Flash (Small Block) 16-bit4-byte Address
0xDNAND Flash (Small Block) 16-bit5-byte Address
0xERESERVEDRE SERVEDRESERVED
0xFRESERVEDRESERVEDRESERVED
Table 3-2. Boot Configuration for Silicon Version A.1
PC[7:4]DEVICE TYP EDATA BUS WIDTHCONTROL
0x0NOR Flash or SRAM 16-bitnBLEx LOW for Reads
0x1NOR Flash or SRAM 16-bitnBLEx HIGH for Reads
0x2NOR Flash or SRAM 8-bitnBLEx LOW for Reads
0x3NOR Flash or SRAM 8-bitnBLEx HIGH for Reads
0x4NAND Flash (Small Block)8-bit3-byte Address
0x5NAND Flash (Small Block) 8-bit4-byte Address
0x6NAND Flash (Large Block) 8-bit4/5-byte Address
0x7NAND Flash (Small Block) 16-bit3-byte Address
0x8NOR Flash or SRAM 32-bitnBLEx LOW for Reads
0x9NOR Flash or SRAM 32-bitnBLEx HIGH for Reads
0xARESERVEDRESERVEDRESERVED
0xBRESERVEDRESERVEDRESERVED
0xCNAND Flash (Small Block) 16-bit4-byte Address
0xDNAND Flash (Large Block) 16-bit4/5-byte Address
0xEI
0xFUART——
2
C——
Version 1.0 3-3
Page 90
Boot ControllerLH79524/LH79525 User’s Guide
3.1.1.1 NAND Flash Operation
When NAND Flash is detected as the boot code source, the Boot Controller forces an override of nCS1. Instead, the Boot ROM is selected for the locations in the memory map
where nCS1 is normally selected and the Boot Rom code is executed. The Boot ROM cod e
manages the interface to the NAND Flash device. The nCS1 override can be disabled by
writing a 0 to the nCS1 Override Control bit in the CS1OV register.
The Boot Controller generates the control signals on the nFRE and nFWE pins for external
NAND Flash. nFRE is the active LOW signal to the NAND flash Read Enable pin. This signal is the External Memory Controller's nOE, enabled by the signal on external address pin
A23. Note that the LH79524/LH79525 memory controller automatically indexes address
signals on the address pins, depending on the width of the memory devices. For example,
with 8-bit addressing, the A0 signal is presented on pin A0, and the A23 signal is presented
on pin A23. For 16-bit memory, the memory controller automatically shifts the address one
bit to the right so that all addresses fall on half-word boundaries. In this configuration, signal A1 is presented on pin A0, and pin A23 carries the A24 signal. Similarly, for 32-bit
devices, A2 appears on pin A0, and A25 appears on pin A23. For more information on
booting from NAND Flash, refer to Section 7.3.1 and Section 7.3.2.
nFRE is only active (i.e., LOW) when nOE is LOW and the A23 signal (for 8-bit), A24 signal
(for 16-bit), or A25 (for 32-bit) is HIGH. nFWE is the active LOW signal to the NAND flash
Write Enable pin. This signal is the External Memory Controller's nWE signal, enabled by
address signal A23/A24/A25. nFWE is only active (i.e., LOW) when nWE is LOW and
A23/A24/A25 is HIGH. Gating these signals allows normal memory and I/O accesses to
other external devices to occur during extended NAND Flash accesses (when chip select
is held active). These other devices must be mapped to external memory regions where
the address signals are LOW.
3.1.2 Hardware Design Considerations
Using the Boot Controller dictates certain hardware considerations, especially when booting from NAND Flash.
3.1.2.1 Active Pullups To Signal Boot Mode
The boot mode — NOR Flash, NAND Flash, SRAM, I2C, or UART — is selected by the
value latched on the rising edge of the nRESETIN signal from the state of PC[7:4],
shown in Table 3-1 and Table 3-2. PC[7:6] are used during NAND Flash booting as control
signals, but PC[5:4] have no other use following the end of reset. Therefore, those two
GPIO pins can be used during normal operation if an active pullup is used, gated by the
nRESETOUT signal.
Figure 3-2 shows a schematic representation of one active pullup circuit. One circuit is
required for each PCx pin to be pulled high during reset. nRESETOUT is presented to the
Gate (pin 1) of the P-Channel FET. When active (LOW), nRESETout causes the transistor
to turn on, and pull the PCx input HIGH. When nRESETOUT transitions from LOW to HIGH
at the end of the reset period, the value on PC[7:4] is latched and the FET is turned off, thus
allowing those pins to be used for general purpose I/O or as address pins A[21:20].
3-4Version 1.0
Page 91
LH79524/LH79525 User’s GuideBoot Controller
+3.3 V
120 Ω
BSS84
32
LH79524/ LH79525
PCx
1
BSS84
32
1
nRESETOUT
PCy
LH79525-104
Figure 3-2. Active Pullup Circuit
3.1.2.2 NAND Flash Hardware Design
The additional NAND Flash control signals are multiplexed with Address lines. Table 3-3
shows the alternate pin functions when using NAND Flash devices.
These alternate pin functions must be considered when designing external interfaces. Further, the actual address signals presented on the A22, A23, A3 (ALE), and A4 (CLE) pins
are determined by the memory width being addressed, as described in Section 3.1.2.
The A[4:3] address pins must be written with the correct address to make the ALE and CLE
signals TRUE for the given transaction. These address values differ depending on the
NAND Flash device width being used.
Table 3-3. Alternate Pin Function During NAND Flash Booting
PIN
PRIMARY
FUNCTION
PC6/A22/nFWEPC6A22nFWE
PC7/A23/nFREPC7A23nFRE
A3A3*N/AALE
A4A4*N/ACLE
nCS0nCS0N/AnCE
NOTE: Pins A3 and A4 carry different address signals depending on the width of the memory device. For 8-
bit devices, Pin A3= Address signal A3; Pin A4= Address signal A4. For 16-bit devices, Pin A3=
Address signal A4; Pin A4= Address signal A5. For 32-bit devices, Pin A3= Address signal A5; Pin
A4= Address signal A6. See Section 3.1 and Chapter 7: External Memory Controller.
SECONDARY
FUNCTION
NAND BOOT
FUNCTION
Version 1.0 3-5
Page 92
Boot ControllerLH79524/LH79525 User’s Guide
3.1.2.2.1 NAND Flash Chip Select
Because of the hardware implementation of the NAND Flash signalling, the LH79524/
LH79525 chip select used for NAND Flash addressing must be nCS0 for booting; nCS1
cannot be used. Connect the nCS0 pin to the NAND Flash nCE input pin if that device is
used for booting. If the NAND Flash is not used for booting, it can be located in any chip
select domain.
3.1.3 Booting Using the I2C Interface
Booting can also be done using the I2C interface. When booting from I2C, the device
address that must be used is 0b1010000x. This address is not alterable. The Boot Controller will always boot exactly 4Kbytes when using the I2C serial EEPROM.
Interface parameters are shown in Table 3-4 and the list of supported devices is shown
in Table 3-5.
Table 3-4. Boot Parameters for I
PARAMETERVALUE
Communication Speed400 kHz
Mode of SoCMaster Mode
Addressing Mode7 bit
2
I
C EEPROM Configuration
Slave, addressed at 0b1010000x, where x=0 for Writes and
x=1 for Reads
Another boot option is to boot using UART0. The transfer protocol implementation is
XMODEM with 128-byte packets. All UART0 parameters are summarized in Table 3-6.
The Boot Controller automatically handles initialization and setup of UART0; the source of
the boot code must be compatible with the parameters in the table.
Table 3-6. UART0 Boot Parameters
PARAMETERVALUE
ProtocolXMODEM Checksum
Bit Rate115 kbps
Data Bits8
ParityNone
Stop Bits1
Packet Size128 bytes
3.2Register Reference
This section provides the Boot Controller register memory mapping and bit fields.
3.2.1 Memory Map
The base address for the Boot Controller is 0xFFFE6000. Table 3-7 summarizes the Boot
Controller registers.
Reading from the PBC register returns the value that the PC[7:4] pins were driven during
a power-on reset. This value is used by software contained in the Boot ROM, as well as
the Boot Controller, to determine the type and configuration of the external device from
which the CPU is to boot.
31:4///ReservedReading returns 0. Write the reset value.
3:0PBC
Power-up Boot Configuration This field contains the value that the PC[7:4]
pins were driven during power-on reset.
3-8Version 1.0
Page 95
LH79524/LH79525 User’s GuideBoot Controller
3.2.3 nCS1 Override Register (CS1OV)
Bit 0 in the CS1OV register programs the function of the nCS1 signal. This bit has different
functions for read and write. Reading returns the nCS1 Override Enable current status.
Writing programs the nCS1 Override Control function.
During normal boot from the internal Boot ROM, CS1OV is programmed to 1 and PBC is
programmed to 0bX1XX, an override of nCS1 occurs and CS1O will read as 1, resulting
in the Boot ROM using nCS1 as chip select. This override can be disabled by writing a 0
to CS1O, causing CS1O to read as 0.
If on system reset the boot configuration is set to 0bX0XX, nCS1 remains mapped as
described above, CS1O has no effect on the memory map and CS1O will reads as 0.
The very last thing Boot ROM software should do bef ore returning control to the operating
system is to write a 0 to this register so that normal routing of the nCS1 signal occurs.
This register determines which chip selects will have burst accesses to their address
regions converted to a series of non-sequential transfers. The register provides individual
selectability for each of nCS0, nCS1, nCS2, and nCS3. At reset, accesses to all four chip
select regions have conversion enabled. This ensures that all external devices will be
accessible following reset.
31:4///ReservedReading returns 0. Write the reset value.
nCS3 Configured for External Peripherals
3CS3EP
2CS2EP
1CS1EP
0CS0EP
1 = All burst accesses to nCS3 are converted to a series of non-sequential single
transfers.
0 = Accesses to nCS3 are unaltered.
nCS2 Configured for External Peripherals
1 = All burst accesses to nCS2 are converted to a series of non-sequential single
transfers.
0 = Accesses to nCS2 are unaltered.
nCS1 Configured for External Peripherals
1 = All burst accesses to nCS1 are converted to a series of non-sequential single
transfers.
0 = Accesses to nCS1 are unaltered.
nCS0 Configured for External Peripherals
1 = All burst accesses to nCS0 ar e converted to a series of non-seque ntial single
transfers.
0 = Accesses to nCS0 are unaltered.
3-10Version 1.0
Page 97
Chapter 4
Color Liquid Crystal
Display Controller
This chapter discusses the Color LCD Controller (CLCDC) and its Advanced LCD Interface
Peripheral (ALI) for AD-TFT, HR-TFT panels, and any technology of panel compatible with
this signal system. The ALI-specific description begins in Section 4.4. The only difference
between the LH79524 CLCDC and the LH79525 CLCDC is the pixel bit depth. The LH79524
supports up to 16 bits-per-pixel (bpp) depth, and the LH79525 supports up to 12 bpp.
4.1Introduction
The CLCDC provides all necessary control and data signals to interface the SoC directly
to a variety of color and monochrome LCD panels, including STN and TFT panels. The ALI
modifies the CLCDC output to allow the chip to connect directly to the Row and Column
driver chips on superthin panels, including AD-TFT, HR-TFT, or any panel that supports
this method of connection. Figure 4-1 shows a simplified diagram of the two controllers
connected to the AHB, to the APB, and to each other.
Color Liquid Crystal Display ControllerLH79524/LH79525 User’s Guide
4.1.1 LCD Panel Architecture
Modern technology panels, including AD-TFT and HR-TFT panels, are t hinner than ever .
To achieve maximum space savings, they are manufactured without the large ASICs and
DC-DC converter blocks built into STN and TFT panels. See Figure 4-2.
The ASIC in STN and TFT panels decodes input data into Row and Column information
and builds the timing signals. It supplies this information to the panel’s Row and Column
driver chips to set the proper pixels at the proper intensity and at the proper times. The
DC-DC converter runs the panel’s power supplies and illuminator. Including these devices
in STN and TFT panels, however, comes at the cost of bulk and weight.
The ALI eliminates the need for a separate Timing ASIC, since it is able to drive the panel’s
Row and Column driver chips directly. The DC-DC conversion is also handled off-panel,
by a separate device operating the panel’s high voltage supplies and illuminator. The
DC-DC conversion must be handled by a separate device, since the LH79524/LH79525
do not supply this function.
Unless the behavior is different, this User’s Guide uses the term TFT to discuss all types
of TFT panels whether the panel requires timing support from the ALI or not.
DISPLAY
SIGNALS
TIMING
ASIC
DC/DC
CONVERTER
LCD PANEL ASSEMBLY
ROW TIMING
COLUMN TIMING
Figure 4-2. Block Diagram of a Typical Advanced LCD Panel
• Supported LCD Panels
– Active-matrix TFT, HR-TFT and AD-TFT panels, with up to 16-bit bus interface
(LH79524) or 12-bit bus (LH79525)
– Single-panel monochrome STN panels, with 4-bit and 8-bit bus interfaces
– Dual-panel monochrome STN panels, with 4-bit and 8-bit bus interface per panel
– Single-panel color STN panels, with an 8-bit bus interface (LH79524 only)
– Dual-panel color STN panels, with 8-bit bus interface per panel (LH79524 only)
• Resolution up to 1024 × 1024 dots per inch (DPI)
• Additional Features
– Programmable timing for different display panels
– 256-entry, 16-bit palette RAM physically arranged as a 128 × 32-bit RAM
– AC bias signal for TFT panels and a data-enable signal for TFT panel
The following parameters can be programmed in the CLCDC:
• Horizontal front and back porch width
• Horizontal synchronization pulse width
• Number of pixels per line
• Vertical front and back porch width
• Vertical synchronization pulse width
• Number of horizontal lines per panel
• Number of panel data clocks per line
• Programmable signal polarities, active HIGH or active LOW
• AC panel bias
• Panel data clock frequency (LCDDCLK)
• Bits-per-pixel
• Little-endian, big-endian, and WinCE
• Interrupt generation.
4.3Theory of Operation
The CLCDC is an AMBA master-slave module that connects to the AHB. Figure 4-3
is a detailed block diagram of the CLCDC. Packets of pixel-coded data are sent, via the
AHB interface, to two independently programmable, 32-bit-wide DMA FIFOs. Each FIFO
is 16 words deep by 32 bits wide. In Single Panel STN Mode, the LCD DMA FIFOs a ppear
as a single FIFO of twice the size. The buffered pixel-coded data is then unpacked via a
pixel serializer.
TM
data formatting
Version 1.0 4-3
Page 100
Color Liquid Crystal Display ControllerLH79524/LH79525 User’s Guide
CLOCK
LCD PANEL
PANEL
CLOCK
GENERATOR
CONTROL
LCD PANEL
TIMING
CONTROLLER
UPPER
STN DATA
PANEL
UPPER
PANEL
UPPER
FIFO
OUTPUT
FORMATTER
LCD
GRAY
PANEL
DATA
DATA
SELECT
STN/TFT
LOWER
SCALER
STN
DATA
LOWER
LOWER
PANEL
OUTPUT
PANEL
FORMATTER
FIFO
LH79525-37
INTERRUPTS
INTERRUPT
GENERATION
TFT DATA
AND
CONTROL
CLCDCLK
AHB
STATUS
REGISTER
SLAVE
INTERFACE
DMA
FIFO
PANEL
UPPER
ADVANCED HIGH
PERFORMANCE
BUS (AHB)
PALETTE
(128 × 32)
PIXEL
SERIALIZER
FIFO
INPUT
CONTROL
AHB
MASTER
INTERFACE
PANEL
LOWER
DMA
FIFO
Figure 4-3. Color LCD Controller Block Diagram
AHB ERROR
FIFO UNDERFLOW
4-4Version 1.0
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.