NSC DP8571

DP8571A Timer Clock Peripheral (TCP)
General Description
The DP8571A is intended for use in microprocessor based
systems where information is required for multi-tasking, data
logging or general time of day/date information. This device
is implemented in low voltage silicon gate microCMOS technology to provide low standby power in battery back-up environments. The circuit’s architecture is such that it looks
like a contiguous block of memory or I/O ports. The address
space is organized as 2 software selectable pages of 32
bytes. This includes the Control Registers, the Clock Counters, the Alarm Compare RAM, the Timers and their data
RAM, and the Time Save RAM. Any of the RAM locations
that are not being used for their intended purpose may be
used as general purpose CMOS RAM.
Time and date are maintained from 1/100 of a second to
year and leap year in a BCD format, 12 or 24 hour modes.
Day of week, day of month and day of year counters are
provided. Time is controlled by an on-chip crystal oscillator
requiring only the addition of the crystal and two capacitors.
The choice of crystal frequency is program selectable.
Two independent multifunction 10 MHz 16-bit timers are
provided. These timers operate in four modes. Each has its
own prescaler and can select any of 7 possible clock inputs.
Thus, by programming the input clocks and the timer counter values a very wide range of timing durations can be
achieved. The range is from about 400 ns (4.915 MHz oscillator) to 65,535 seconds (18 hrs., 12 min.).
Power failure logic and control functions have been integrated on chip. This logic is used by the TCP to issue a power fail
interrupt, and lock out the mp interface. The time power fails
may be logged into RAM automatically when VBB l VCC.
Additionally, two supply pins are provided. When VBB
l VCC, internal circuitry will automatically switch from the
main supply to the battery supply. Status bits are provided
to indicate initial application of battery power, system power,
and low battery detect.
(Continued)
Features
Y
Y
Y
Y
Y
Y
Full function real time clock/calendar
Ð 12/24 hour mode timekeeping
Ð Day of week and day of years counters
Ð Four selectable oscillator frequencies
Ð Parallel resonant oscillator
Two 16-bit timers
Ð 10 MHz external clock frequency
Ð Programmable multi-function output
Ð Flexible re-trigger facilities
Power fail features
Ð Internal power supply switch to external battery
Ð Power Supply Bus glitch protection
Ð Automatic log of time into RAM at power failure
On-chip interrupt structure
Ð Periodic, alarm, timer and power fail interrupts
Up to 44 bytes of CMOS RAM
INTR/MFO pins programmable High/Low and push-pull
or open drain
Block Diagram
TL/F/9979 – 1
FIGURE 1
TRI-STATEÉ is a registered trademark of National Semiconductor Corporation.
C1995 National Semiconductor Corporation
TL/F/9979
RRD-B30M75/Printed in U. S. A.
DP8571A Timer Clock Peripheral (TCP)
May 1993
Absolute Maximum Ratings (Notes 1 & 2)
Operation Conditions
If Military/Aerospace specified devices are required,
please contact the National Semiconductor Sales
Office/Distributors for availability and specifications.
Supply Voltage (VCC) (Note 3)
Min
Max
Unit
4.5
5.5
V
2.2 VCCb0.4
V
Supply Voltage (VBB) (Note 3)
DC Input or Output Voltage
V
0.0
VCC
(VIN, VOUT)
b 40
a 85
Operation Temperature (TA)
§C
Electr-Static Discharge Rating TBD
1
kV
Transistor Count
15,200
Typical Values
iJA DIP
Board
Socket
iJA PLCC
Board
77§ C/W
Socket
85§ C/W
b 0.5V to a 7.0V
Supply Voltage (VCC)
b 0.5V to VCC a 0.5V
DC Input Voltage (VIN)
b 0.5V to VCC a 0.5V
DC Output Voltage (VOUT)
b 65§ C to a 150§ C
Storage Temperature Range
Power Dissipation (PD)
500 mW
Lead Temperature (Soldering, 10 sec.)
260§ C
DC Electrical Characteristics
VCC e 5V g 10%, VBB e 3V, VPFAIL l VIH, CL e 100 pF (unless otherwise specified)
Symbol
Conditions
Min
High Level Input Voltage
(Note 4)
Any Inputs Except OSC IN,
OSC IN with External Clock
2.0
VIL
Low Level Input Voltage
All Inputs Except OSC IN
OSC IN with External Clock
VOH
High Level Output Voltage
(Excluding OSC OUT)
IOUT e b20 mA
IOUT e b4.0 mA
VOL
Low Level Output Voltage
(Excluding OSC OUT)
IOUT e 20 mA
IOUT e 4.0 mA
0.1
0.25
V
V
IIN
Input Current (Except OSC IN)
mA
Output TRI-STATEÉ Current
g 5.0
mA
ILKG
Output High Leakage Current
T1, MFO, INTR Pins
VIN e VCC or GND
VOUT e VCC or GND
VOUT e VCC or GND
Outputs Open Drain
g 1.0
IOZ
g 5.0
mA
ICC
Quiescent Supply Current
(Note 7)
FOSC e 32.768 kHz
VIN e VCC or GND (Note 5)
VIN e VCC or GND (Note 6)
VIN e VIH or VIL (Note 6)
260
1.0
12.0
mA
mA
mA
FOSC e 4.194304 MHz or
4.9152 MHz
VIN e VCC or GND (Note 6)
e
VIH or VIL (Note 6)
VIN
8
20
mA
mA
80
7.5
mA
mA
10
400
mA
mA
1.5
mA
mA
VIH
ICC
IBB
IBLK
Parameter
Quiescent Supply Current
(Single Supply Mode)
(Note 7)
VBB e GND
VIN e VCC or GND
FOSC e 32.768 kHz
FOSC e 4.9152 MHz or
4.194304 MHz
Standby Mode Battery
Supply Current
(Note 8)
VCC e GND
OSC OUT e open circuit,
other pins e GND
FOSC e 32.768 kHz
FOSC e 4.9152 MHz or
4.194304 MHz
Battery, Supply Leakage
2.2V s VBB s 4.0V
other pins at GND
VCC e GND, VBB e 4.0V
VCC e 5.5V, VBB e 2.2V
Max
V
V
VBB b0.1
0.8
0.1
VCC b0.1
3.5
b5
Units
V
V
V
V
Note 1: Absolute Maximum Ratings are those values beyond which damage to the device may occur.
Note 2: Unless otherwise specified all voltages are referenced to ground.
Note 3: For FOSC e 4.194304 or 4.9152 MHz, VBB minimum e 2.8V. In battery backed mode, VBB s VCC b 0.4V. Single Supply Mode: Data retention voltage is
2.2V min. In single Supply Mode (Power connected to VCC pin) 4.5V s VCC s 5.5V.
Note 4: This parameter (VIH) is not tested on all pins at the same time.
Note 5: This specification tests ICC with all power fail circuitry disabled, by setting D7 of Interrupt Control Register 1 to 0.
Note 6: This specification tests ICC with all power fail circuitry enabled, by setting D7 of Interrupt Control Register 1 to 1.
Note 7: This specification is tested with both the timers and OSC IN driven by a signal generator. Contents of the Test Register e 00(H), the MFO pin is not
configured as buffered oscillator out and MFO, INTR, are configured as open drain.
Note 8: This specification is tested with both the timers off, and only OSC IN is driven by a signal generator. Contents of the Test Register e 00(H) and the MFO
pin is not configured as buffered oscillator out.
2
AC Electrical Characteristics
VCC e 5V g 10%, VBB e 3V, VPFAIL l VIH, CL e 100 pF (unless otherwise specified)
Symbol
Parameter
Min
Max
Units
READ TIMING
tAR
Address Valid Prior to Read Strobe
20
ns
tRW
Read Strobe Width (Note 9)
80
ns
tCD
Chip Select to Data Valid Time
tRAH
Address Hold after Read (Note 10)
tRD
Read Strobe to Valid Data
tDZ
Read or Chip Select to TRI-STATE
tRCH
Chip Select Hold after Read Strobe
0
ns
tDS
Minimum Inactive Time between Read or Write Accesses
50
ns
tAW
Address Valid before Write Strobe
20
ns
tWAH
Address Hold after Write Strobe (Note 10)
3
ns
tCW
Chip Select to End of Write Strobe
90
ns
tWW
Write Strobe Width (Note 11)
80
ns
tDW
Data Valid to End of Write Strobe
50
ns
tWDH
Data Hold after Write Strobe (Note 10)
3
ns
tWCH
Chip Select Hold after Write Strobe
0
ns
80
ns
70
ns
60
ns
3
ns
WRITE TIMING
INTERRUPT TIMING
tROLL
Clock rollover to INTR out is typically 16.5 ms
Note 9: Read Strobe width as used in the read timing table is defined as the period when both chip select and read inputs are low. Hence read commences when
both signals are low and terminates when either signal returns high.
Note 10: Hold time is guaranteed by design but not production tested. This limit is not used to calculate outgoing quality levels.
Note 11: Write Strobe width as used in the write timing table is defined as the period when both chip select and write inputs are low. Hence write commences when
both signals are low and terminates when either signal returns high.
AC Test Conditions
Input Pulse Levels
Input Rise and Fall Times
Input and Output
Reference Levels
TRI-STATE Reference
Levels (Note 13)
GND to 3.0V
6 ns (10%–90%)
1.3V
Active High a 0.5V
Active Low b0.5V
Note 12: CL e 100 pF, includes jig and scope capacitance.
Note 13: S1 e VCC for active low to high impedance measurements.
S1 e GND for active high to high impedance measurements.
S1 e open for all other timing measurements.
Capacitance (TA e 25§ C, f e 1 MHz)
Symbol
Parameter
(Note 14)
TL/F/9979 – 2
Typ
Units
CIN
Input Capacitance
5
pF
COUT
Output Capacitance
7
pF
Note 14: This parameter is not 100% tested.
Note 15: Output rise and fall times 25 ns max (10%–90%) with 100 pF load.
3
Timing Waveforms
Read Timing Diagram
TL/F/9979 – 3
Write Timing Diagram
TL/F/9979 – 4
4
PFAIL (Input): In battery backed mode, this pin can have a
digital signal applied to it via some external power detection
logic. When PFAIL e logic 0 the TCP goes into a lockout
mode, in a minimum of 30 ms or a maximum of 63 ms unless
lockout delay is programmed. In the single power supply
mode, this pin is not useable as an input and should be tied
to VCC. Refer to section on Power Fail Functional Description.
VBB (Battery Power Pin): This pin is connected to a backup power supply. This power supply is switched to the internal circuitry when the VCC becomes lower than VBB. Utilizing this pin eliminates the need for external logic to switch in
and out the back-up power supply. If this feature is not to be
used then this pin must be tied to ground, the TCP programmed for single power supply only, and power applied to
the VCC pin.
VCC: This is the main system power pin.
GND: This is the common ground power pin for both VBB
and VCC.
General Description (Continued)
The DP8571A’s interrupt structure provides four basic types
of interrupts: Periodic, Alarm/Compare, Timer, and Power
Fail. Interrupt mask and status registers enable the masking
and easy determination of each interrupt.
One dedicated general purpose interrupt output is provided.
A second interrupt output is available on the Multiple Function Output (MFO) pin. Each of these may be selected to
generate an interrupt from any source. Additionally, the
MFO pin may be programmed to be either as oscillator output or Timer 0’s output.
Pin Description
CS, RD, WR (Inputs): These pins interface to mP control
lines. The CS pin is an active low enable for the read and
write operations. Read and Write pins are also active low
and enable reading or writing to the TCP. All three pins are
disabled when power failure is detected. However, if a read
or write is in progress at this time, it will be allowed to complete its cycle.
A0 – A4 (Inputs): These 5 pins are for register selection.
They individually control which location is to be accessed.
These inputs are disabled when power failure is detected.
OSC IN (Input): OSC OUT (Output): These two pins are
used to connect the crystal to the internal parallel resonant
oscillator. The oscillator is always running when power is
applied to VBB and VCC, and the correct crystal select bits in
the Real Time Mode Register have been set.
MFO (Output): The multi-function output can be used as a
second interrupt output for interrupting the mP. This pin can
also provide an output for the oscillator or the internal Timer
0. The MFO output can be programmed active high or low,
open drain or push-pull. If in battery backed mode and a
pull-up resistor is attached, it should be connected to a voltage no greater than VBB. This pin is configured open drain
during battery operation (VBB l VCC).
INTR (Output): The interrupt output is used to interrupt the
processor when a timing event or power fail has occurred
and the respective interrupt has been enabled. The INTR
output can be programmed active high or low, push-pull or
open drain. If in battery backed mode and a pull-up resistor
is attached, it should be connected to a voltage no greater
than VBB. This pin is configured open drain during battery
operation (VBB l VCC). The output is a DC voltage level. To
clear the INTR, write a 1 to the appropriate bit(s) in the Main
Status Register.
D0 – D7 (Input/Output): These 8 bidirectional pins connect
to the host mP’s data bus and are used to read from and
write to the TCP. When the PFAIL pin goes low and a write
is not in progress, these pins are at TRI-STATE.
Connection Diagram
Dual-In-Line
TL/F/9979 – 5
Top View
Order Number DP8571AN
See NS Package Number N24C
5
Functional Description
The DP8571A contains a fast access real time clock, two 10
MHz 16-bit timers, interrupt control logic, power fail detect
logic, and CMOS RAM. All functions of the TCP are controlled by a set of nine registers. A simplified block diagram
that shows the major functional blocks is given in Figure 1 .
The blocks are described in the following sections:
1. Real Time Clock
2. Oscillator Prescaler
3. Interrupt Logic
4. Power Failure Logic
5. Additional Supply Management
6. Timers
The memory map of the TCP is shown in the memory addressing table. The memory map consists of two 31 byte
pages with a main status register that is common to both
pages. A control bit in the Main Status Register is used to
select either page. Figure 2 shows the basic concept.
Page 0 contains all the clock timer functions, while page 1
has scratch pad RAM. The control registers are split into
two separate blocks to allow page 1 to be used entirely as
scratch pad RAM. Again a control bit in the Main Status
Register is used to select either control register block.
TL/F/9979 – 6
FIGURE 2. DP8571A Internal Memory Map
6
Functional Description (Continued)
INITIAL POWER-ON of BOTH VBB and VCC
VBB and VCC may be applied in any sequence. In order for
the power fail circuitry to function correctly, whenever power
is off, the VCC pin must see a path to ground through a
maximum of 1 MX. The user should be aware that the control registers will contain random data. The first task to be
carried out in an initialization routine is to start the oscillator
by writing to the crystal select bits in the Real Time Mode
Register. If the DP8571A is configured for single supply
mode, an extra 50 mA may be consumed until the crystal
select bits are programmed. The user should also ensure
that the TCP is not in test mode (see register descriptions).
Save Enable bit (D7) of the Interrupt Routing Register, and
then to write a zero. Writing a one into this bit will enable the
clock contents to be duplicated in the Time Save RAM.
Changing the bit from a one to a zero will freeze and store
the contents of the clock in Time Save RAM. The time then
can be read without concern for clock rollover, since internal logic takes care of synchronization of the clock. Because only the bits used by the clock counters will be
latched, the Time Save RAM should be cleared prior to use
to ensure that random data stored in the unused bits do not
confuse the host microprocessor. This bit can also provide
time save at power failure, see the Additional Supply Management Functions section. With the Time Save Enable bit
at a logical 0, the Time Save RAM may be used as RAM if
the latched read function is not necessary.
REAL TIME CLOCK FUNCTIONAL DESCRIPTION
As shown in Figure 2 , the clock has 10 bytes of counters,
which count from 1/100 of a second to years. Each counter
counts in BCD and is synchronously clocked. The count sequence of the individual byte counters within the clock is
shown later in Table VII. Note that the day of week, day of
month, day of year, and month counters all roll over to 1.
The hours counter in 12 hour mode rolls over to 1 and the
AM/PM bit toggles when the hours rolls over to 12
(AM e 0, PM e 1). The AM/PM bit is bit D7 in the hours
counter.
All other counters roll over to 0. Also note that the day of
year counter is 12 bits long and occupies two addresses.
Upon initial application of power the counters will contain
random information.
INITIALIZING AND WRITING TO THE
CALENDAR-CLOCK
Upon initial application of power to the TCP or when making
time corrections, the time must be written into the clock. To
correctly write the time to the counters, the clock would
normally be stopped by writing the Start/Stop bit in the Real
Time Mode Register to a zero. This stops the clock from
counting and disables the carry circuitry. When initializing
the clock’s Real Time Mode Register, it is recommended
that first the various mode bits be written while maintaining
the Start/Stop bit reset, and then writing to the register a
second time with the Start/Stop bit set.
The above method is useful when the entire clock is being
corrected. If one location is being updated the clock need
not be stopped since this will reset the prescaler, and time
will be lost. An ideal example of this is correcting the hours
for daylight savings time. To write to the clock ‘‘on the fly’’
the best method is to wait for the 1/100 of a second periodic interrupt. Then wait an additional 16 ms, and then write
the data to the clock.
READING THE CLOCK: VALIDATED READ
Since clocking of the counter occurs asynchronously to
reading of the counter, it is possible to read the counter
while it is being incremented (rollover). This may result in an
incorrect time reading. Thus to ensure a correct reading of
the entire contents of the clock (or that part of interest), it
must be read without a clock rollover occurring. In general
this can be done by checking a rollover bit. On this chip the
periodic interrupt status bits can serve this function. The
following program steps can be used to accomplish this.
1. Initialize program for reading clock.
2. Dummy read of periodic status bit to clear it.
3. Read counter bytes and store.
4. Read rollover bit, and test it.
5. If rollover occured go to 3.
6. If no rollover, done.
To detect the rollover, individual periodic status bits can be
polled. The periodic bit chosen should be equal to the highest frequency counter register to be read. That is if only
SECONDS through HOURS counters are read, then the
SECONDS periodic bit should be used.
PRESCALER/OSCILLATOR FUNCTIONAL
DESCRIPTION
Feeding the counter chain is a programmable prescaler
which divides the crystal oscillator frequency to 32 kHz and
further to 100 Hz for the counter chain (see Figure 3 ). The
crystal frequency that can be selected are: 32 kHz, 32.768
kHz, 4.9152 MHz, and 4.194304 MHz.
Once 32 kHz is generated it feeds both timers and the
clock. The clock and timer prescalers can be independently
enabled by controlling the timer or clock Start/Stop bits.
READING THE CLOCK: INTERRUPT DRIVEN
Enabling the periodic interrupt mask bits cause interrupts
just as the clock rolls over. Enabling the desired update rate
and providing an interrupt service routine that executes in
less than 10 ms enables clock reading without checking for
a rollover.
READING THE CLOCK: LATCHED READ
Another method to read the clock that does not require
checking the rollover bit is to write a one into the Time
TL/F/9979 – 7
FIGURE 3. Programmable Clock Prescaler Block
7
Functional Description (Continued)
The interrupts are enabled by writing a one to the appropriate bits in Interrupt Control Register 0 and/or 1. Any of the
interrupts can be routed to either the INTR pin or the MFO
pin, depending on how the Interrupt Routing register is programmed. This, for example, enables the user to dedicate
the MFO as a non-maskable interrupt pin to the CPU for
power failure detection and enable all other interrupts to
appear on the INTR pin. The polarity for the active interrupt
can be programmed in the Output Mode Register for either
active high or low, and open drain or push pull outputs.
The oscillator is programmed via the Real Time Mode Register to operate at various frequencies. The crystal oscillator
is designed to offer optimum performance at each frequency. Thus, at 32.768 kHz the oscillator is configured as a low
frequency and low power oscillator. At the higher frequencies the oscillator inverter is reconfigured. In addition to the
inverter, the oscillator feedback bias resistor is included on
chip, as shown in Figure 4 . The oscillator input may be driven from an external source if desired. Refer to test mode
application note for details. The oscillator stability is enhanced through the use of an on chip regulated power supply.
The typical range of trimmer capacitor (as shown in Oscillator Circuit Diagram Figure 4 , and in the typical application) at
the oscillator input pin is suggested only to allow accurate
tuning of the oscillator. This range is based on a typical
printed circuit board layout and may have to be changed
depending on the parasitic capacitance of the printed circuit
board or fixture being used. In all cases, the load capacitance specified by the crystal manufacturer (nominal value
11 pF for the 32.768 crystal) is what determines proper oscillation. This load capcitance is the series combination of
capacitance on each side of the crystal (with respect to
ground).
TABLE I. Registers that are Applicable
to Interrupt Control
Register Name
Main Status Register
Periodic Flag Register
Interrupt Routing
Register
Interrupt Control
Register 0
Interrupt Control
Register 1
Output Mode
Register
TL/F/9979–8
Co
Ct
Page
Select
Address
X
0
X
0
00H
03H
0
0
04H
1
0
03H
1
0
04H
1
0
02H
The Interrupt Status Flag D0, in the Main Status Register,
indicates the state of INTR and MFO outputs. It is set when
either output becomes active and is cleared when all TCP
interrupts have been cleared and no further interrupts are
pending (i.e., both INTR and MFO are returned to their inactive state). This flag enables the TCP to be rapidly polled by
the mP to determine the source of an interrupt in a wiredÐ
OR interrupt system.
Note that the Interrupt Status Flag will only monitor the state
of the MFO output if it has been configured as an interrupt
output (see Output Mode Register description). This is true,
regardless of the state of the Interrupt Routing Register.
Thus the Interrupt Status Flag provides a true reflection of
all conditions routed to the external pins.
Status for the interrupts are provided by the Main Status
Register and the Periodic Flag Register. Bits D1 – D5 of the
Main Status Register are the main interrupt bits.
These register bits will be set when their associated timing
events occur. Enabled Alarm or Timer interrupts that occur
will set its Main Status Register bit to a one. However, an
external interrupt will only be generated if the appropriate
Alarm or Timer interrupt enable bits are set (see Figure 5 ).
Disabling the periodic bits will mask the Main Status Register periodic bit, but not the Periodic Flag Register bits. The
Power Fail Interrupt bit is set when the interrupt is enabled
and a power fail event has occurred, and is not reset until
the power is restored. If all interrupt enable bits are 0 no
interrupt will be asserted. However, status still can be read
from the Main Status Register in a polled fashion (see Figure 5 ).
To clear a flag in bits D2 – D5 of the Main Status Register a 1
must be written back into the bit location that is to be
cleared. For the Periodic Flag Register reading the status
will reset all the periodic flags.
FIGURE 4. Oscillator Circuit Diagram
XTAL
Register
Select
ROUT
(Switched
Internally)
32/32.768 kHz 47 pF 2 pF–22 pF 150 kX to 350 kX
4.194304 MHz 68 pF 0 pF–80 pF 500X to 900X
4.9152 MHz
68 pF 29 pF–49 pF 500X to 900X
INTERRUPT LOGIC FUNCTIONAL DESCRIPTION
The TCP has the ability to coordinate processor timing activities. To enhance this, an interrupt structure has been implemented which enables several types of events to cause
interrupts. Interrupts are controlled via two Control Registers in block 1 and two Status Registers in block 0. (See
Register Description for notes on paging and also Figure 5
and Table I.)
8
Functional Description (Continued)
To generate periodic interrupts at the desired rate, the associated Periodic Interrupt Enable bit in Interrupt Control Register 0 must be set. Any combination of periodic interrupts
may be enabled to operate simultaneously. Enabled periodic interrupts will now affect the Periodic Interrupt Flag in the
Main Status Register. The Periodic Route bit in the Interrupt
Routing Register is used to route the periodic interrupt
events to either the INTR output or the MFO output.
When a periodic event occurs, the Periodic Interrupt Flag in
the Main Status Register is set, causing an interrupt to be
generated. The mP clears both flag and interrupt by writing a
‘‘1’’ to the Periodic Interrupt Flag. The individual flags in the
periodic Interrupt Flag Register do not require clearing to
cancel the interrupt.
If all periodic interrupts are disabled and a periodic interrupt
is left pending (i.e., the Periodic Interrupt Flag is still set), the
Periodic Interrupt Flag will still be required to be cleared to
cancel the pending interrupt.
Interrupts Fall Into Four Categories:
1. The Timer Interrupts: For description see Timer Section.
2. The Alarm Compare Interrupt: Issued when the value in
the time compared RAM equals the counter.
3. The Periodic Interrupts: These are issued at every increment of the specific clock counter signal. Thus, an interrupt is issued every minute, second, etc. Each of these
interrupts occurs at the roll-over of the specific counter.
4. The Power Fail Interrupt: Issued upon recognition of a
power fail condition by the internal sensing logic. The
power failed condition is determined by the signal on the
PFAIL pin. The internal power fail signal is gated with the
chip select signal to ensure that the power fail interrupt
does not lock the chip out during a read or write.
ALARM COMPARE INTERRUPT DESCRIPTON
The alarm/time comparison interrupt is a special interrupt
similar to an alarm clock wake up buzzer. This interrupt is
generated when the clock time is equal to a value programmed into the alarm compare registers. Up to six bytes
can be enabled to perform alarm time comparisons on the
counter chain. These six bytes, or some subset thereof,
would be loaded with the future time at which the interrupt
will occur. Next, the appropriate bits in the Interrupt Control
Register 1 are enabled or disabled (refer to detailed description of Interrupt Control Register 1). The TCP then compares these bytes with the clock time. When all the enabled
compare registers equal the clock time an alarm interrupt is
issued, but only if the alarm compare interrupt is enabled
can the interrupt be generated externally. Each alarm compare bit in the Control Register will enable a specific byte for
comparison to the clock. Disabling a compare byte is the
same as setting its associated counter comparator to an
‘‘always equal’’ state. For example, to generate an interrupt
at 3:15 AM of every day, load the hours compare with 0 3
(BCD), the minutes compare with 1 5 (BCD) and the faster
counters with 0 0 (BCD), and then disable all other compare
registers. So every day when the time rolls over from
3:14:59.99, an interrupt is issued. This bit may be reset by
writing a one to bit D3 in the Main Status Register at any
time after the alarm has been generated.
If time comparison for an individual byte counter is disabled,
that corresponding RAM location can then be used as general purpose storage.
POWER FAIL INTERRUPTS DESCRIPTION
The Power Fail Status Flag in the Main Status Register
monitors the state of the internal power fail signal. This flag
may be interrogated by the mP, but it cannot be cleared; it is
cleared automatically by the TCP when system power is
restored. To generate an interrupt when the power fails, the
Power Fail Interrupt Enable bit in Interrupt Control Register
1 is set.
The Power Fail Route bit determines which output the interrupt will appear on. Although this interrupt may not be
cleared, it may be masked by clearing the Power Fail Interrupt Enable bit.
POWER FAILURE CIRCUITRY FUNCTIONAL
DESCRIPTION
Since the clock must be operated from a battery when the
main system supply has been turned off, the DP8571A provides circuitry to simplify design in battery backed systems.
This circuitry switches over to the back up supply, and isolates the DP8571A from the host system. Figure 6 shows a
simplified block diagram of this circuitry, which consists of
three major sections; 1) power loss logic: 2) battery switch
over logic: and 3) isolation logic.
Detection of power loss occurs when PFAIL is low. Debounce logic provides a 30 ms–63 ms debounce time, which
will prevent noise on the PFAIL pin from being interpreted
as a system failure. After 30 ms–63 ms the debounce logic
times out and a signal is generated indicating that system
power is marginal and is failing. The Power Fail Interrupt will
then be generated.
PERIODIC INTERRUPTS DESCRIPTION
The Periodic Flag Register contains six flags which are set
by real-time generated ‘‘ticks’’ at various time intervals, see
Figure 5 . These flags constantly sense the periodic signals
and may be used whether or not interrupts are enabled.
These flags are cleared by any read or write operation performed on this register.
9
FIGURE 5. Interrupt Control Logic Overview
TL/F/9979 – 9
Functional Description (Continued)
10
Functional Description (Continued)
TL/F/9979 – 10
FIGURE 6. System-Battery Switchover (Upper Left), Power Fail
and Lock-Out Circuits (Lower Right)
After the generation of a lock-out signal, and eventual
switch in of the battery supply, the pins of the TCP will be
configured as shown in Table II. Outputs that have a pull-up
resistor should be connected to a voltage no greater than
VBB.
The user may choose to have this power failed signal lockout the TCP’s data bus within 30 ms min/63 ms max or to
delay the lock-out to enable mP access after power failure is
detected. This delay is enabled by setting the delay enable
bit in the Routing Register. Also, if the lock-out delay was
not enabled the TCP will disconnect itself from the bus within 30 ms min x 63 ms max. If chip select is low when a
power failure is detected, a safety circuit will ensure that if a
read or write is held active continuously for greater than
30 ms after the power fail signal is asserted, the lock-out will
be forced. If a lock-out delay is enabled, the DP8571A will
remain active for 480 ms after power fail is detected. This
will enable the mP to perform last minute bookkeeping before total system collapse. When the host CPU is finished
accessing the TCP it may force the bus lock-out before
480 ms has elapsed by resetting the delay enable bit.
The battery switch over circuitry is completely independent
of the PFAIL pin. A separate circuit compares VCC to the
VBB voltage. As the main supply fails, the TCP will continue
to operate from the VCC pin until VCC falls below the VBB
voltage. At this time, the battery supply is switched in, VCC is
disconnected, and the device is now in the standby mode. If
indeterminate operation of the battery switch over circuit is
to be avoided, then the voltage at the VCC pin must not be
allowed to equal the voltage at the VBB pin.
TABLE II. Pin Isolation during a Power Failure
Pin
PFAIL e
Logic 0
CS, RD, WR
A0 – A4
D0 – D7
Oscillator
PFAIL
INTR, MFO
Locked Out
Locked Out
Locked Out
Not Isolated
Not Isolated
Not Isolated
Standby Mode
VBB l VCC
Locked Out
Locked Out
Locked Out
Not Isolated
Not Isolated
Open Drain
The Timer and Interrupt Power Fail Operation bits in the
Real-Time Mode Register determine whether or not the timers and interrupts will continue to function after a power fail
event.
As power returns to the system, the battery switch over circuit will switch back to VCC power as soon as it becomes
greater than the battery voltage. The chip will remain in the
locked out state as long as PFAIL e 0. When PFAIL e 1
11
Functional Description (Continued)
the chip is unlocked, but only after another 30 ms min x
63 ms max debounce time. The system designer must ensure that his system is stable when power has returned.
The power fail circuitry contains active linear circuitry that
draws supply current from VCC. In some cases this may be
undesirable, so this circuit can be disabled by masking the
power fail interrupt. The power fail input can perform all
lock-out functions previously mentioned, except that no external interrupt will be issued. Note that the linear power fail
circuitry is switched off automatically when using VBB in
standby mode.
binary down counter and associated control. The operation
is similar to existing mP peripheral timers except that several
features have been enhanced. The timers can operate in
four modes, and in addition, the input clock frequency can
be selected from a prescaler over a wide range of frequencies. Furthermore, these timers are capable of generating
interrupts and the Timer 0 output signal is available as a
hardware output via the MFO pin. Timer 1 output, however,
is not available as a hardware output signal. Both the interrupt and MFO outputs are fully programmable active high, or
low, open drain, or push-pull.
Figure 7 shows the functional block diagram of one of the
timers. The timer consists of a 16-bit counter, two 8-bit input
registers, two 8-bit output registers, clock prescaler, mode
control logic, and output control logic. The timer and the
data registers are organized as two bytes for each timer.
Under normal operations a read/write to the timer locations
will read or write to the data input register. The timer contents can be read by setting the counter Read bit (RD) in the
timer control register.
LOW BATTERY, INITIAL POWER ON DETECT, AND
POWER FAIL TIME SAVE
There are three other functions provided on the DP8571A to
ease power supply control. These are an initial Power On
detect circuit, which also can be used as a time keeping
failure detect, a low battery detect circuit, and a time save
on power failure.
On initial power up the Oscillator Fail Flag will be set to a
one and the real time clock start bit reset to a zero. This
indicates that an oscillator fail event has occurred, and time
keeping has failed.
The Oscillator Fail flag will not be reset until the real-time
clock is started. This allows the system to discriminate between an initial power-up and recovery from a power failure.
If the battery backed mode is selected, then bit D6 of the
Periodic Flag Register must be written low. This will not affect the contents of the Oscillator Fail Flag.
Another status bit is the low battery detect. This bit is set
only when the clock is operating under the VCC pin, and
when the battery voltage is determined to be less than 2.1V
(typical). When the power fail interrupt enable bit is low, it
disables the power fail circuit and will also shut off the low
battery voltage detection circuit as well.
To relieve CPU overhead for saving time upon power failure,
the Time Save Enable bit is provided to do this automatically. (See also Reading the Clock: Latched Read.) The Time
Save Enable bit, when set, causes the Time Save RAM to
follow the contents of the clock. This bit can be reset by
software, but if set before a power failure occurs, it will automatically be reset when the clock switches to the battery
supply (not when a power failure is detected by the PFAIL
pin). Thus, writing a one to the Time Save bit enables both a
software write or power fail write.
TIMER INITIALIZATION
The timer’s operation is controlled by a set of registers, as
listed in Table III. These consist of 2 data input registers and
one control register per timer. The data input registers contain the timers count down value. The Timer Control Register is used to set up the mode of operation and the input
clock rate. The timer related interrupts can be controlled by
programming the Interrupt Routing Register and Interrupt
Control Register 0. The timer outputs are configured by the
Output Mode Register.
TABLE III. Timer Associated Registers
Register Name
Register
Select
Page
Select
Address
Timer 0 Data MSB
Timer 0 Data LSB
Timer 0 Control Register
Timer 1 Data MSB
Timer 1 Data LSB
Timer 1 Control Register
Interrupt Routing Register
Interrupt Control Reg. 0
Output Mode Register
X
X
0
X
X
0
0
1
1
0
0
0
0
0
0
0
0
0
10H
0FH
01H
12H
11H
02H
04H
03H
02H
All these registers must be initialized prior to starting the
timer(s). The Timer Control Register should first be set to
select the timer mode with the timer start/stop bit reset.
Then when the timer is to be started the control register
should be rewritten identically but with the start/stop bit set.
SINGLE POWER SUPPLY APPLICATIONS
The DP8571A can be used in a single power supply application. To achieve this, the VBB pin must be connected to
ground, and the power connected to VCC and PFAIL pins.
The Oscillator Failed/Single Supply bit in the Periodic Flag
Register should be set to a logic 1, which will disable the
oscillator battery reference circuit. The power fail interrupt
should also be disabled. This will turn off the linear power
fail detection circuits, and will eliminate any quiescent power
drawn through these circuits. Until the crystal select bits are
initialized, the DP8571A may consume about 50 mA due to
arbitrary oscillator selection at power on.
(This extra 50 mA is not consumed if the battery backed
mode is selected).
TIMER OPERATION
Each timer is capable of operation in one of four modes. As
mentioned, these modes are programmed in each timer’s
Control Register which is described later. All four modes
operate in a similar manner. They operate on the two 8-bit
data words stored into the Data Input Register. At the beginning of a counting cycle the 2 bytes are loaded into the timer
and the timer commences counting down towards zero. The
exact action taken when zero is reached depends on the
mode selected, but in general, the timer output will change
state, and an interrupt will be generated if the timer interrupts are unmasked.
TIMER FUNCTIONAL DESCRIPTION
The DP8571A contains 2 independent multi-mode timers.
Each timer is composed of a 16-bit negative edge triggered
12
Functional Description (Continued)
er causes the same synchronization error that starting the
timer does. The range of errors is specified in Table V.
INPUT CLOCK SELECTION
The input frequency to the timers may be selected. Each
timer has a prescaler that gives a wide selection of clocking
rates. Table IV shows the range of programmable clocks
available and the corresponding setting in the Timer Control
Register. Note that the output of Timer 1 may be used as
the input to Timer 0. This is a cascade option for the timers
and allows them to be clocked as a 32-bit down counter.
TABLE V. Maximum Synchronization Errors
Clock Selected
External
Crystal
Crystal/4
10.7 kHz
1 kHz
100 Hz
10 Hz
1 Hz
TABLE IV. Programmable Timer Input Clocks
C2
C1
C0
Selected Clock
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Timer 1 Output
Crystal Oscillator
(Crystal Oscillator)/4
93.5 ms (10.7 kHz)
1 ms (1 kHz)
10 ms (100 Hz)
1/10 Second (10 Hz)
1 Second (1 Hz)
Error
a Ext. Clock Period
a 1 Crystal Clock Period
a 1 Crystal Clock Period
a 32 ms
a 32 ms
a 32 ms
a 32 ms
a 32 ms
MODES OF OPERATION
Bits M0 and M1 in the Timer Control Registers are used to
specify the modes of operation. The mode selection is described in Table VI.
TABLE VI. Programmable Timer Modes of Operation
Note that the second and third selections are not fixed frequencies, but depend on the crystal oscillator frequency
chosen.
Since the input clock frequencies are usually running asynchronously to the timer Start/Stop control bit, a 1 clock cycle error may result. This error results when the Start/Stop
occurs just after the clock edge (max error). To minimize
this error on all clocks an independent prescaler is used for
each timer and is designed so that its Start/Stop error is
less than 1 clock cycle.
The count hold/gate bit in the Timer Control Register can
be used to suspend the timer operation in modes 0, 1, and 2
(in mode 3 it is the trigger input). Suspending the tim-
M1
M0
Function
Modes
0
0
1
1
0
1
0
1
Single Pulse Generator
Rate Generator, Pulse Output
Square Wave Output
Retriggerable One Shot
Mode 0
Mode 1
Mode 2
Mode 3
MODE 0: SINGLE PULSE GENERATOR
When the timer is in this mode the output will be initially low
if the Timer Start/Stop bit is low (stopped). When this mode
is initiated the timer output will go high on the next falling
edge of the prescaler’s input clock, the contents of the
TL/F/9979 – 11
FIGURE 7. DP8571A Timer Block Diagram
13
Functional Description (Continued)
for one clock period of the timer clock. Then on the next
clock the counter is reloaded automatically and the countdown repeats itself. The output, shown in Figure 9 , is a
waveform whose pulse width and period is determined by N,
the input register value, and the input clock period:
Period e (N a 1) (Clock Period)
input data registers are loaded into the timer. The output will
stay high until the counter reaches zero. At zero the output
is reset. The result is an output pulse whose duration is
equal to the input clock period times the count value (N)
loaded into the input data register. This is shown in Figure 8 .
Pulse Width e Clock Period c N
An interrupt is generated when the zero count is reached.
This can be used for one-time interrupts that are set to occur a certain amount of time in the future. In this mode the
Timer Start/Stop bit (TSS) is automatically reset upon zero
detection. This removes the need to reset TSS before starting another operation.
The count down operation may be temporarily suspended
either under software control by setting the Count Hold/
Gate bit in the timer register high, or in hardware by setting
the G0 or G1 pin high.
The above discussion assumes that the MFO output is programmed to be non-inverting outputs (active high). If the
polarity of the output waveform is wrong for the application
the polarity can be reversed by configuring the Output Mode
Register. The drive configuration can also be programmed
to be push pull or open drain.
Pulse Width e Clock Period
Again, the output polarity is controllable as in mode 0. If
enabled, an interrupt is generated whenever the zero count
is reached. This can be used to generate a periodic interrupt.
MODE 2: SQUARE WAVE GENERATOR
This mode is also cyclic but in this case a square wave
rather than a pulse is generated. The output square wave
period is determined by the value loaded into the timer input
register. This period and the duty cycle are:
Period e 2(N a 1) (Clock Period)
Duty Cycle e 0.5
When the timer is stopped the output will be low, and when
the Start/Stop bit is set high the timer’s counter will be loaded on the next clock falling transition and the output will be
set high.
The output will be toggled after the zero count is detected
and the counter will then be reloaded, and the cycle will
continue. Thus, every N a 1 counts the output gets toggled,
as shown in Figure 10 . Like the other modes the timer operation can be suspended by setting the count hold/gate bit
(CHG) in the Timer Control Register. An interrupt will be
generated every falling edge of the timer output, if enabled.
MODE 1: RATE GENERATOR
When operating in this mode the timer will operate continuously. Before the timer is started its output is low. When the
timer is started the input data register contents are loaded
into the counter on the negative clock edge and the output
is set high (again assuming the Output Mode Register is
programmed active high). The timer will then count down to
zero. Once the zero count is reached the output goes low
TL/F/9979 – 12
FIGURE 8. Typical Waveforms for Timer Mode 0
(MFO Output Programmed Active High)
TL/F/9979 – 13
FIGURE 9. Timing Waveforms for Timer Mode 1
(MFO Output Programmed Active High)
14
Functional Description (Continued)
Those users who find the error rate unacceptable may reduce the problem effectively to zero by employing a hardware work-around that synchronizes the writing of the read
bit to the timer control register with respect to the decrementing clock. Refer to Figure 1 in Appendix A, for a suggested hardware work-around.
A software work-around can reduce the errors but not as
substantial as a hardware work-around. Software workarounds are based on observations that the read following a
bad read appeared to be valid.
This problem concerns statistical probability and is similar to
metastability issues. For more information on metastability,
refer to 1991 IEEE transactions on Custom Integrated Circuits Conference, paper by T.J. Gabara of AT&T Bell Laboratories, page 29.4.1.
Normally reading the timer data register addresses, 0FH
and 10H for Timer 0 and 11H and 12H for Timer 1 will result
in reading the input data register which contains the preset
value for the timers.
To read the contents of a timer, the mP first sets the timer
read bit in the appropriate Timer Control Register high. This
will cause the counter’s contents to be latched to 2-bit – 8-bit
output registers, and will enable these registers to be read if
the mP reads the timer’s input data register addresses. On
reading the LSB byte the timer read bit is internally reset
and subsequent reads of the timer locations will return the
input register values.
TL/F/9979 – 14
FIGURE 10. Timing Waveforms for Timer Mode 2
(MFO Output Programmed Active High)
MODE 3: RETRIGGERABLE ONE SHOT
Once the timer Start/Stop bit is set the output stays inactive, and nothing happens until the Count Hold/Gate (CHG)
bit is set in the timer control register. When a transition
ocurs the one shot output is set active immediately; the
counter is loaded with the value in the input register on the
next transition of the input clock and the countdown begins.
If a retrigger occurs, regardless of the current counter value,
the counters will be reloaded with the value in the input
register and the counter will be restarted without changing
the output state. See Figure 11 . A trigger count can occur at
any time during the count cycle. In this mode the timer will
output a single pulse whose width is determined by the value in the input data register (N) and the input clock period.
Pulse Width e Clock Period c N
DETAILED REGISTER DESCRIPTION
There are 5 external address bits: Thus, the host microprocessor has access to 32 locations at one time. An internal
switching scheme provides a total of 67 locations.
This complete address space is organized into two pages.
Page 0 contains two blocks of control registers, timers, real
time clock counters, and special purpose RAM, while page
1 contains general purpose RAM. Using two blocks enables
the 9 control registers to be mapped into 5 locations. The
only register that does not get switched is the Main Status
Register. It contains the page select bit and the register
select bit as well as status information.
The timer will generate an interrupt only when it reaches a
count of zero. This timer mode is useful for continuous
‘‘watch dog’’ timing, line frequency power failure detection,
etc.
READING THE TIMERS
National has discovered that some users may encounter
unacceptable error rates for their applications when reading
the timers on the fly asynchronously. When doing asynchronous reads of the timers, an error may occur. The error is
that a successive read may be larger than the previous
read. Experimental results indicate that the typical error rate
is approximately one per 29,000 under the following conditions:
Timer clock frequency of 5 MHz.
Computer: 386/33 MHz PC/AT
Program: Microsoft ‘‘C’’ 6.0, reading and saving timer contents in a continuous loop.
TL/F/9979 – 15
FIGURE 11. Timing Waveforms for Timer Mode 3, MFO Output Programmed Active High
15
Functional Description (Continued)
A memory map is shown in Figure 2 and register addressing
in Table VII. They show the name, address and page locations for the DP8571A.
MAIN STATUS REGISTER
TABLE VII. Register/Counter/RAM
Addressing for DP8571A
A0-4
PS
RS
(Note 1) (Note 2)
Description
CONTROL REGISTERS
00
01
02
03
04
01
02
03
04
X
0
0
0
0
0
0
0
0
X
0
0
0
0
1
1
1
1
Main Status Register
Timer 0 Control Register
Timer 1 Control Register
Periodic Flag Register
Interrupt Routing Register
Real Time Mode Register
Output Mode Register
Interrupt Control Register 0
Interrupt Control Register 1
TL/F/9979 – 16
The Main Status Register is always located at address 0
regardless of the register block or the page selected.
D0: This read only bit is a general interrupt status bit that is
taken directly from the interrupt pins. The bit is a one when
an interrupt is pending on either the INTR pin or the MFO
pin (when configured as an interrupt). This is unlike D3 – D5
which can be set by an internal event but may not cause an
interrupt. This bit is reset when the interrupt status bits in the
Main Status Register are cleared.
D1 – D5: These five bits of the Main Status Register are the
main interrupt status bits. Any bit may be a one when any of
the interrupts are pending. Once an interrupt is asserted the
mP will read this register to determine the cause. These
interrupt status bits are not reset when read. Except for D1,
to reset an interrupt a one is written back to the corresponding bit that is being tested. D1 is reset whenever the PFAIL
pin e logic 1. This prevents loss of interrupt status when
reading the register in a polled mode. D1, D3 – D5 are set
regardless of whether these interrupts are masked or not by
bits D6 and D7 of Interrupt Control Registers 0 and 1.
D6 and D7: These bits are Read/Write bits that control
which register block or RAM page is to be selected. Bit D6
controls the register block to be accessed (see memory
map). The memory map of the clock is further divided into
two memory pages. One page is the registers, clock and
timers, and the second page contains 31 bytes of general
purpose RAM. The page selection is determined by bit D7.
COUNTERS (CLOCK CALENDAR)
05
06
07
08
09
0
0
0
0
0
X
X
X
X
X
0A
0B
0C
0D
0E
0
0
0
0
0
X
X
X
X
X
1/100, 1/10 Seconds (0 – 99)
Seconds
(0 – 59)
Minutes
(0 – 59)
Hours
(1 – 12, 0 – 23)
Days of
Month
(1 – 28/29/30/31)
Months
(1 – 12)
Years
(0 – 99)
Julian Date (LSB)
(0 – 99) (Note 3)
Julian Date
(0 – 3)
Day of Week
(1 – 7)
TIMER DATA REGISTERS
0F
10
11
12
0
0
0
0
X
X
X
X
Timer 0 LSB
Timer 0 MSB
Timer 1 LSB
Timer 1 MSB
TIME COMPARE RAM
13
14
15
0
0
0
X
X
X
16
0
X
17
0
X
18
0
X
Sec Compare RAM
Min Compare RAM
Hours Compare
RAM
DOM Compare
RAM
Months Compare
RAM
DOW Compare RAM
(0 – 59)
(0 – 59)
(1 – 12, 0 – 23)
(1 – 28/29/30/31)
(1 – 12)
(1 – 7)
TIME SAVE RAM
19
1A
1B
1C
1D
0
0
0
0
0
X
X
X
X
X
Seconds Time Save RAM
Minutes Time Save RAM
Hours Time Save RAM
Day of Month Time Save RAM
Months Time Save RAM
1E
1F
0
0
1
X
RAM
RAM/Test Mode Register
01 – 1F
1
X
2nd Page General Purpose RAM
Note 1: PSÐPage Select (Bit D7 of Main Status Register)
Note 2: RSÐRegister Select (Bit D6 of Main Status Register)
Note 3: The LSB counters count 0–99 until the hundreds of days counter
reaches 3. Then the LSB counters count to 65 or 66 (if a leap year). The
rollover is from 365/366 to 1.
16
Functional Description (Continued)
D0 – D5: These bits are set by the real time rollover events:
(Time Change e 1). The bits are reset when the register is
read and can be used as selective data change flags.
D6: This bit performs a dual function. When this bit is read, a
one indicates that an oscillator failure has occurred and the
time information may have been lost. Some of the ways an
oscillator failure may be caused are: failure of the crystal,
shorting OSC IN or OSC OUT to GND or VCC, removal of
crystal, removal of battery when in the battery backed mode
(when a ‘‘0’’ is written to D6), lowering the voltage at the
VBB pin to a value less than 2.2V when in the battery
backed mode. Bit D6 is automatically set to 1 on initial power-up or an oscillator fail event. The oscillator fail flag is
reset by writing a one to the clock start/stop bit in the Real
Time Mode Register, with the crystal oscillating.
When D6 is written to, it defines whether the TCP is being
used in battery backed (normal) or in a single supply mode
application. When set to a one this bit configures the TCP
for single power supply applications. This bit is automatically
set on initial power-up or an oscillator fail event. When set,
D6 disables the oscillator reference circuit. The result is that
the oscillator is referenced to VCC. When a zero is written to
D6 the oscillator reference is enabled, thus the oscillator is
referenced to VBB. This allows operation in standard battery
standby applications.
At initial power on, if the DP8571A is going to be programmed for battery backed mode, the VBB pin should be
connected to a potential in the range of 2.2V to VCC-0.4V.
For single supply mode operation, the VBB pin should be
connected to GND and the PFAIL pin connected to VCC.
D7: Writing a one to this bit enables the test mode register
at location 1F (see Table VII). This bit should be forced to
zero during initialization for normal operation. If the test
mode has been entered, clear the test mode register before
leaving test mode. (See separate test mode application
note for further details.)
TIMER 0 AND 1 CONTROL REGISTER
TL/F/9979 – 17
These registers control the operation of the timers. Each
timer has its own register.
D0: This bit will Start (1) or Stop (0) the timer. When the
timer is stopped the timer’s prescaler and counter are reset,
and the timer will restart from the beginning when started
again. In mode 0 on time out the TSS bit is internally reset.
D1 and D2: These control the count mode of the timers.
See Table VI.
D3 – D5: These bits control which clock signal is applied to
the timer’s counter input. Refer to Table IV for details.
D6: This is the read bit. If a one is written into this location it
will cause the contents of the timer to be latched into a
holding register, which can be read by the mP at any time.
Reading the least significant byte of the timer will reset the
RD bit. The timer read cycle can be aborted by writing RD to
zero.
D7: The CHG bit has two mode dependent functions. In
modes 0 through 2 writing a one to this bit will suspend the
timer operation (without resetting the timer prescaler). However, in mode 3 this bit is used to trigger or re-trigger the
count sequence as with the gate pins. If retriggering is desired using the CHG bit, it is not necessary to write a zero to
this location prior to the re-trigger. The action of further writing a one to this bit will re-trigger the count.
INTERRUPT ROUTING REGISTER
PERIODIC FLAG REGISTER
TL/F/9979 – 19
TL/F/9979 – 18
D0 – D4: The lower 5 bits of this register are associated with
the main interrupt sources created by this chip. The purpose
of this register is to route the interrupts to either the MFO
(multi-function pin), or to the main interrupt pin. When any
bit is set the associated interrupt signal will be sent to the
MFO pin, and when zero it will be sent to the INTR pin.
The Periodic Flag Register has the same bit for bit correspondence as Interrupt Control Register 0 except for D6
and D7. For normal operation (i.e., not a single supply application) this register must be written to on initial power up or
after an oscillator fail event. D0–D5 are read only bits, D6
and D7 are read/write.
17
Functional Description (Continued)
D2: The count mode for the hours counter can be set to
either 24 hour mode or 12 hour mode with AM/PM indicator.
A one will place the clock in 12 hour mode.
D5: The Delay Enable bit is used when a power fail occurs.
If this bit is set, a 480 ms delay is generated internally before
the mP interface is locked out. This will enable the mP to
access the registers for up to 480 ms after it receives a
power fail interrupt. After a power failure is detected but
prior to the 480 ms delay timing out, the host mP may force
immediate lock out by resetting the Delay Enable bit. Note if
this bit is a 0 when power fails then after a delay of 30 ms
min/63 ms max the mP cannot read the chip.
D6: This read only bit is set and reset by the voltage at the
VBB pin. It can be used by the mP to determine whether the
battery voltage at the VBB pin is getting too low. A comparator monitors the battery and when the voltage is lower than
2.1V (typical) this bit is set. The power fail interrupt must be
enabled to check for a low battery voltage.
D7: Time Save Enable bit controls the loading of real-timeclock data into the Time Save RAM. When a one is written
to this bit the Time Save RAM will follow the corresponding
clock registers, and when a zero is written to this bit the time
in the Time Save RAM is frozen. This eliminates any synchronization problems when reading the clock, thus negating the need to check for a counter rollover during a read
cycle.
This bit must be set to a one prior to power failing to enable
the Time Save feature. When the power fails this bit is automatically reset and the time is saved in the Time Save RAM.
D3: This bit is the master Start/Stop bit for the clock. When
a one is written to this bit the real time counter’s prescaler
and counter chain are enabled. When this bit is reset to zero
the contents of the real time counter is stopped and the
prescaler is cleared. When the TCP is initially powered up
this bit will be held at a logic 0 until the oscillator starts
functioning correctly after which this bit may be modified. If
an oscillator fail event occurs, this bit will be reset to logic 0.
D4: This bit controls the operation of the interrupt output in
standby mode. If set to a one it allows Alarm, Periodic, and
Power Fail interrupts to be functional in standby mode. Timer interrupts will also be functional provided that bit D5 is
also set. Note that the MFO and INTR pins are configured
as open drain in standby mode.
If bit D4 is set to a zero then interrupt control register 0 and
bits D6 and D7 of interrupt control register 1 will be reset
when the TCP enters the standby mode (VBB l VCC). They
will have to be re-configured when system (VCC) power is
restored.
D5: This bit controls the operation of the timers in standby
mode. If set to a one the timers will continue to function
when the TCP is in standby mode. The input pins TCK, G0,
G1 are locked out in standby mode, and cannot be used.
Therefore external control of the timers is not possible in
standby mode. Note also that MFO and T1 pins are automatically reconfigured open drain during standby.
D6 and D7: These two bits select the crystal clock frequency as per the following table:
REAL TIME MODE REGISTER
LY0
Leap Year
Counter
0
0
1
1
0
1
0
1
Leap Year Current Year
Leap Year Last Year
Leap Year 2 Years Ago
Leap Year 3 Years Ago
XT0
Crystal
Frequency
0
0
1
1
0
1
0
1
32.768 kHz
4.194304 MHz
4.9152 MHz
32.000 kHz
All bits are Read/Write, and any mode written into this register can be determined by reading the register. On initial
power up these bits are random.
TL/F/9979–20
D0 – D1: These are the leap year counter bits. These bits are
written to set the number of years from the previous leap
year. The leap year counter increments on December 31st
and it internally enables the February 29th counter state.
This method of setting the leap year allows leap year to
occur whenever the user wishes to, thus providing flexibility
in implementing Japanese leap year function.
LY1
XT1
OUTPUT MODE REGISTER
TL/F/9979 – 21
18
Functional Description (Continued)
quent interrupts will be spaced correctly. These interrupts
are useful when minute, second, real time reading, or task
switching is required. When all six bits are written to a 0 this
disables periodic interrupts from the Main Status Register
and the interrupt pin.
D6 and D7: These are individual timer enable bits. A one
written to these bits enable the timers to generate interrupts
to the mP.
D0 and D1: These bits are available as general purpose
RAM.
D2: This bit, when set to a one makes the INTR output pin
active high, and when set to a zero, it makes this pin active
low.
D3: This bit controls whether the INTR pin is an open drain
or push-pull output. A one indicates push-pull.
D4: This bit, when set to a one makes the MFO output pin
active high, and when set to a zero, it makes this pin active
low.
D5: This bit controls whether the MFO pin is an open drain
or push-pull output. A one indicates push-pull.
D6 and D7: These bits are used to program the signal appearing at the MFO output, as follows:
D7
D6
MFO Output Signal
0
0
1
0
1
X
2nd Interrupt
Timer 0 Waveform
Buffered Crystal Oscillator
INTERRUPT CONTROL REGISTER 1
INTERRUPT CONTROL REGISTER 0
TL/F/9979 – 23
D0 – D5: Each of these bits are enable bits which will enable
a comparison between an individual clock counter and its
associated compare RAM. If any bit is a zero then that
clock-RAM comparator is set to the ‘‘always equal’’ state
and the associated TIME COMPARE RAM byte can be used
as general purpose RAM. However, to ensure that an alarm
interrupt is not generated at bit D3 of the Main Status Register, all bits must be written to a logic zero.
D6: In order to generate an external alarm compare interrupt to the mP from bit D3 of the Main Status Register, this
bit must be written to a logic 1. If battery backed mode is
selected and the DP8571A is in standby (VBB l VCC) then
this bit is controlled by D4 of the Real Time Mode Register.
D7: The MSB of this register is the enable bit for the Power
Fail Interrupt. When this bit is set to a one an interrupt will
be generated to the mP when PFAIL e 0. If battery backed
mode is selected and the DP8571A is in standby
(VBB l VCC) then this bit is controlled by D4 of the Real
Time Mode Register.
This bit also enables the low battery detection analog circuitry.
If the user wishes to mask the power fail interrupt, but utilize
the analog circuitry, this bit should be enabled, and the
Routing Register can be used to route the interrupt to the
MFO pin. The MFO pin can then be left open or configured
as the Timer 0 or buffered oscillator output.
TL/F/9979 – 22
If battery backed mode is selected and the DP8571A is in
standby (VBB l VCC) then all bits are controlled by D4 of
the Real Time Mode Register.
D0 – D5: These bits are used to enable one of the selected
periodic interrupts by writing a one into the appropriate bit.
These interrupts are issued at the rollover of the clock. For
example, the minutes interrupt will be issued whenever the
minutes counter increments. In all likelihood the interrupt
will be enabled asynchronously with the real time change.
Therefore, the very first interrupt will occur in less than the
periodic time chosen, but after the first interrupt all subse-
19
Control and Status Register Address Bit Map
D7
D6
Main Status Register PS e 0
R/W
R/W
Page
Select
D5
RS e 0
R/W1
Register
Select
Timer 1
Interrupt
Timer 0 Control Register PS e 0
Count Hold
Gate
Timer
Read
Timer
Read
Timer 0
Interrupt
RS e 0
Input Clock
Select C2
Timer 1 Control Register PS e 0
Count Hold
Gate
D4
D3
ADDRESS e 00H
R/W1
R/W1
Periodic Flag Register PS e 0
R/W
R/W4
RS e 0
10 ms
Flag
Interrupt Routing Register PS e 0
R/W
R6
R/W
RS e 0
R/W
Time Save
Enable
Low Battery
Flag
Real Time Mode Register PS e 0
Crystal
Freq. XT1
Crystal
Freq. XT0
Output Mode Register PS e 0
MFO as
Crystal
MFO as
Timer 0
RS e 1
Interrupt Control Register 0 PS e 0
Timer 1
Interrupt
Enable
Timer 0
Interrupt
Enable
1 ms
Interrupt
Enable
Interrupt Control Register 1 PS e 0
Power Fail
Interrupt
Enable
Alarm
Interrupt
Enable
DOW
Interrupt
Enable
100 ms
Flag
R2
R3
Periodic
Interrupt
Power Fail
Interrupt
Interrupt
Status
Mode
Select M1
Mode
Select M0
Timer
Start/Stop
All Bits R/W
Mode
Select M1
Mode
Select M0
Timer
Start/Stop
All Bits R/W
R5
R5
R5
Seconds
Flag
10 Second
Flag
Minute
Flag
Address e 04H
R/W
Timer 0
Int. Route
MFO/INT
1. Reset by
writing
1 to bit.
2. Set/reset by
voltage at
PFAIL pin.
3. Reset when
all pending
interrupts
are removed.
4. Read Osc fail
Write 0 BattBacked Mode
Write 1 Single
Supply Mode
5. Reset by
positive edge
of read.
R/W
R/W
R/W
Alarm
Int. Route
MFO/INT
Periodic
Int. Route
MFO/INT
Power Fail
Int. Route
MFO/INT
6. Set and reset
by VBB
voltage.
12/24 Hr.
Mode
Leap Year
MSB
Leap Year
LSB
All Bits R/W
INTR
Active HI/LO
RAM
RAM
All Bits R/W
10 Second
Interrupt
Enable
Minute
Interrupt
Enable
All Bits R/W
Minute
Interrupt
Enable
Second
Interrupt
Enable
All Bits R/W
Address e 01H
Interrupt EN
on Back-Up
RS e 1
MFO
PP/OD
Input Clock
Select C0
Timer 1
Int. Route
MFO/INT
Timers EN
on Back-Up
R/W1
Address e 03H
R5
1 ms
Flag
Power Fail
Delay
Enable
D0
Address e 02H
R5
Osc. Fail/
Single Supply
Input Clock
Select C0
Input Clock
Select C1
R5
Test
Mode
D1
Address e 01H
Input Clock
Select C1
RS e 0
Input Clock
Select C2
Alarm
Interrupt
D2
Clock
Start/Stop
Address e 02H
MFO
Active HI/LO
RS e 1
10 ms
Interrupt
Enable
RS e 1
Month
Interrupt
Enable
INTR
PP/OD
Address e 03H
100 ms
Interrupt
Enable
Seconds
Interrupt
Enable
Address e 04H
DOM
Interrupt
Enable
20
Hours
Interrupt
Enable
Application Hints
ration, interrupt control and timer functions may be initialized.
Suggested initialization procedure for DP8571A in battery
backed applications that use the VBB pin.
6.
1. Enter the test mode by writing a 1 to bit D7 in the Periodic Flag Register.
2. Write zero to the RAM/TEST mode Register located in
page 0, address HEX 1F.
3. Leave the test mode by writing a 0 to bit D7 in the Periodic Flag Register. Steps 1, 2, 3 guarantee that if the
test mode had been entered during power on (due to
random pulses from the system), all test mode conditions are cleared. Most important is that the OSC Fail
Disable bit is cleared. Refer to AN-589 for more information on test mode operation.
4. After power on (VCC and VBB powered), select the correct crystal frequency bits (D7, D6 in the Real Time
Mode Register) as shown in Table 1.
IF a 1, go to 5.1 If this bit remains a 1 after 3 seconds,
then abort and check hardware. The crystal may be
defective or not installed. There may be a short at OSC
IN or OSC OUT to VCC or GND, or to some impedance
that is less than 10 MX.
IF a 0, then the oscillator is running, go to step 7.
7. Write a 0 to bit D6 in the Periodic Flag Register. This
action puts the clock chip in the battery backed mode.
This mode can be entered only if the OSC fail flag (bit
D6 of the Periodic Flag Register) is a 0. Reminder, bit
D6 is a dual function bit. When read, D6 returns oscillator status. When written, D6 causes either the Battery
Backed Mode, or the Single Supply Mode of operation.
The only method to ensure the chip is in the battery
backed mode is to measure the waveform at the OSC
OUT pin. If the battery backed mode was selected successfully, then the peak to peak waveform at OSC OUT
is referenced to the battery voltage. If not in battery
backed mode, the waveform is referenced to VCC. The
measurement should be made with a high impedance
low capacitance probe (10 MX, 10 pF oscilloscope
probe or better). Typical peak to peak swings are within
0.6V of VCC and ground respectively.
8. Write a 1 to bit D7 of Interrupt Control Register 1. This
action enables the PFAIL pin and associated circuitry.
9. Write a 1 to bit D4 of the Real Time Mode Register. This
action ensures that bit D7 of Interrupt Control Register
1 remains a 1 when VBB l VCC (standby mode).
10. Initialize the rest of the chip as needed.
Table 1
Frequency
D7
D6
32.768 KHz
0
0
4.194304 MHz
0
1
4.9152 MHz
1
0
32.0 KHz
1
1
Test bit D6 in the Periodic Flag Register:
5. Enter a software loop that does the following:
Set a 3 second(approx) software counter. The crystal
oscillator may take 1 second to start.
5.1 Write a 1 to bit D3 in the Real Time Mode Register (try
to start the clock). Make sure the crystal select bits remain the same as in step 1. Under normal operation, this
bit can be set only if the oscillator is running. During the
software loop, RAM, real time counters, output configu-
Typical Application
TL/F/9979 – 24
*These components may be necessary to meet UL requirements for lithium batteries. Consult battery manufacturer.
21
Appendix A
TL/F/9979 – 29
FIGURE A1. Typical Interface Where the ‘‘Write Strobe’’ is Synchronized to the Decrementing Clock of the Timer
22
Typical Performance Characteristics
Operating Current vs
Supply Voltage
(Single Supply Mode
FOSC e 32.768 kHz)
Operating Current vs
Supply Voltage
(Battery Backed Mode
FOSC e 32.768 kHz)
TL/F/9979 – 25
TL/F/9979 – 26
Standby Current vs Power
Supply Voltage
(FOSC e 32.768 kHz)
Standby Current vs Power
Supply Voltage
FOSC e 4.194304 MHz
TL/F/9979 – 27
TL/F/9979 – 28
23
DP8571A Timer Clock Peripheral (TCP)
Physical Dimensions inches (millimeters)
Molded Dual-In-Line Package (N)
Order Number DP8571AN
NS Package Number N24C
LIFE SUPPORT POLICY
NATIONAL’S PRODUCTS ARE NOT AUTHORIZED FOR USE AS CRITICAL COMPONENTS IN LIFE SUPPORT
DEVICES OR SYSTEMS WITHOUT THE EXPRESS WRITTEN APPROVAL OF THE PRESIDENT OF NATIONAL
SEMICONDUCTOR CORPORATION. As used herein:
1. Life support devices or systems are devices or
systems which, (a) are intended for surgical implant
into the body, or (b) support or sustain life, and whose
failure to perform, when properly used in accordance
with instructions for use provided in the labeling, can
be reasonably expected to result in a significant injury
to the user.
National Semiconductor
Corporation
2900 Semiconductor Drive
P.O. Box 58090
Santa Clara, CA 95052-8090
Tel: 1(800) 272-9959
TWX: (910) 339-9240
National Semiconductor
GmbH
Livry-Gargan-Str. 10
D-82256 F4urstenfeldbruck
Germany
Tel: (81-41) 35-0
Telex: 527649
Fax: (81-41) 35-1
National Semiconductor
Japan Ltd.
Sumitomo Chemical
Engineering Center
Bldg. 7F
1-7-1, Nakase, Mihama-Ku
Chiba-City,
Ciba Prefecture 261
Tel: (043) 299-2300
Fax: (043) 299-2500
2. A critical component is any component of a life
support device or system whose failure to perform can
be reasonably expected to cause the failure of the life
support device or system, or to affect its safety or
effectiveness.
National Semiconductor
Hong Kong Ltd.
13th Floor, Straight Block,
Ocean Centre, 5 Canton Rd.
Tsimshatsui, Kowloon
Hong Kong
Tel: (852) 2737-1600
Fax: (852) 2736-9960
National Semiconductores
Do Brazil Ltda.
Rue Deputado Lacorda Franco
120-3A
Sao Paulo-SP
Brazil 05418-000
Tel: (55-11) 212-5066
Telex: 391-1131931 NSBR BR
Fax: (55-11) 212-1181
National Semiconductor
(Australia) Pty, Ltd.
Building 16
Business Park Drive
Monash Business Park
Nottinghill, Melbourne
Victoria 3168 Australia
Tel: (3) 558-9999
Fax: (3) 558-9998
National does not assume any responsibility for use of any circuitry described, no circuit patent licenses are implied and National reserves the right at any time without notice to change said circuitry and specifications.