ETC X4165

X46402
64K
Dual Voltage CPU Supervisor with 64K Password Protected EEPROM
FEATURES
DESCRIPTION
• Dual Voltage Detection and Reset Assertion
—Low VCC monitor
—Low V2MON monitor
—Low VCC block of EEPROM writes
—RESET signal valid down to VCC=1V
• Selectable Watchdog Timer
—150ms, 450ms, 1s, 5s, 10s, 20s, 1min, OFF
• Volatile Flag Shows Watchdog/Low Voltage Reset
• 64kbit 2-Wire Serial EEPROM
—1MHz serial interface speed
—64-byte page write mode
• Two 64-Byte OTP Memory Blocks
—Requires 64-bit OTP password to write
• Adjustable Size Password Protected Array
—64 bit read and write array passwords
—Non-password protected array area
• 8 Count Tamper Counter for Invalid Passwords
• Operates at 2.5-3.7V
• 8L TSSOP package
The X46402 combines several functions into one
device. The first is a dual voltage CPU supervisor plus
64Kbit serial EEPROM memory with password protected write and read operations. The size of the password protected area is selectable by 3 control bits. A
Write Protect (WP) pin in conjunction with a WPEN bit
provides hardware OTP control of the configuration of
the array. Password protected areas require 64 bit
read or write passwords prior to access.
A secondary voltage monitor circuit activates a V2FAIL
pin when the secondary supply voltage drops below a
V2trip voltage. This circuit is primarily intended to
detect the immediate loss of the battery supply.
A low VCC voltage detect circuit activates a RESET pin
when VCC drops below a VTRIP voltage. This signal
also blocks read or write operations.
A watchdog timer with the time period controlled by
three bits provides several possible time out periods
from 150ms to 1 minute.
BLOCK DIAGRAM
WP
Watchdog
Timer Reset
Write Control
Password Logic
Command
Decode
and
Control
Logic
Write Password Area
(Bytes)
(64, 128, 256, 512,
2K, 4K, All, None)
No Password Area
Control
OTP array 1
OTP array 2
Passwords
Y Decoder
Data Register
(VCC) Control Signal
EEPROM
Array (64Kbits)
SCL
SDA
X Decoder
HV Generation
Timing and Control
Reset &
Watchdog
Timebase
RESET
Power on and
Low Voltage
Reset
Generation
V2FAIL
-
V2TRIP
+
-
Xicor, Inc. 2000 Patents Pending
9900-3003.5 5/30/00 EP
V2MON
+
VCC
VTRIP
Characteristics subject to change without notice.
1 of 23
X46402
PACKAGE/PINOUTS
8L TSSOP
VSS
1
8
VCC
WP
2
7
SDA
3
V2MON
SCL
RESET
4
6
5
V2FAIL
PIN NAMES
VSS
SDA
VCC
SCL
WP
V2MON
RESET
V2FAIL
Ground
Serial Data
Power
Serial Clock
Write Protect
Voltage monitor input
Low Voltage Detect Output
V2 Voltage Fail Output
PIN DESCRIPTIONS
Serial Clock (SCL)
The SCL input is used to clock all data into and out of
the device.
Serial Data (SDA)
SDA is a bidirectional pin used to transfer data into
and out of the device. It is an open drain output and
may be wire-ORed with other open drain or open collector outputs. An open drain requires the use of a
pull-up resistor.
V2 Voltage Fail Output (V2FAIL)
V2FAIL is an active LOW, open drain output which goes
active whenever V2MON falls below the minimum V2trip
sense level. It will remain active until V2MON rises
above the minimum V2MON sense level.
DEVICE OPERATION
Power On Reset
Application of power to the X46402 activates a Power
On Reset Circuit. This circuit goes active at 1V and
pulls the RESET pin active. This signal prevents the
system microprocessor from starting to operate with
insufficient voltage or prior to stabilization of the oscillator. When VCC exceeds the device VTRIP value for
200ms (nominal) the circuit releases RESET allowing
the processor to begin executing code.
Low Voltage Monitoring
During operation, the X46402 monitors the VCC and
V2MON levels and compares these with internal, preset
voltages.
When the internal low voltage detect circuitry senses
that V2MON is low, the V2FAIL pin goes active. Typically
this would be used by the processor as an interrupt to
stop the execution of the code or to do housekeeping in
preparation for an impending power failure.
When the internal low voltage detect circuitry senses
that VCC is low, the following happens:
– The RESET pin goes active.
– The Flag bit in the control register is set to zero.
Write Protect (WP)
The WP pin works in conjunction with a nonvolatile
WPEN bit to “lock” the setting of the Watchdog Timer
control and the memory write protect bits.
– Communication to the device is interrupted and any
command is aborted. If a serial nonvolatile store is in
progress when power fails, the circuitry does not
stop the nonvolatile store operation, but attempts to
complete the operation.
Reset Output (RESET)
RESET is an active LOW, open drain output which
goes active whenever Vcc falls below the minimum
Vtrip sense level. It will remain active until Vcc rises
above the minimum Vtrip sense level for 150ms.
RESET goes active if the Watchdog Timer is enabled
and there is no start bit before the end of the selectable Watchdog time-out period. A serial start bit will
reset the Watchdog Timer. RESET also goes active on
power up at 1V and remains active for 150ms after the
power supply stabilizes.
The RESET and V2FAIL signals remain active until
VCC voltage drops below 1V. RESET remains active
until VCC returns and exceeds VTRIP for 200ms.
V2FAIL remains active until immediately after V2MON
returns and exceeds it’s minimum voltage.
Characteristics subject to change without notice.
2 of 23
X46402
µC
Volt
Reg
VCC
OTP Mode
Enabled
Pin1
VCC
VSS
V2MON
WP
SCL
SDA
RESET V2FAIL
SCL
SDA
INTR
RESET
Recommended Connection
Watchdog Timer
The Watchdog Timer circuit monitors the microprocessor activity by monitoring the Start bit. The microprocessor must send a start bit periodically to prevent a
RESET signal. The start bit must occur prior to the
expiration of the watchdog time-out period. The state
of three nonvolatile control bits in the Control Register
determines the watchdog timer period. The microprocessor can change these watchdog bits, or they may
be “locked” by tying the WP pin HIGH and setting the
WPEN bit HIGH.
ARCHITECTURE
Data Memory
This 64kbit memory array can be partitioned into password protected or non-password protected areas.
When password protected, the contents are readable
after sending a “Memory Read” password. The contents of a password protected portion of the memory
array are writeable with a “Memory Write” Password.
This array is re-writable up to the limit of the EEPROM
endurance.
OTP
The second section of memory consists of two 64-byte
arrays, each writable only once. These arrays are
always password protected. Reading from either of
these arrays requires the use of an “OTP Read” password. Both arrays can be read with a single operation.
Writing either array requires an “OTP Write” Password.
Writing more than 64 bytes to each array results in the
data “wrapping” around and over-writing previous values.
Array
Address
OTP Array 1
0000h - 003Fh
OTP Array 2
0040h - 007Fh
Control Register
A password protected read or write array command at
address FFFFh reads or writes the Control Register.
Since the control register contains information relating
to the password protection, it is necessary to use the
Array passwords to access the control register.
The Control Register contains bits that control the
watchdog timer and the hardware write protect features and is formatted as follows:
7
6
5
WPEN
FLB
4
3
WD2 WD1 WD0
2
1
0
BL2
BL1
BL0
Write Protect Enable bit (WPEN)
The WP pin, in conjuction with a WPEN bit programmed HIGH, provides Hardware Write Protection.
This prevents changes to the control register contents
even with a valid password. When either the WP pin or
WPEN bit is LOW, a 64 bit Array write array password
is required to change the contents of the control register. When both the WP pin and the WPEN bit are
HIGH, the Control Register cannot be written.
Flag Bit
The flag bit is a volatile bit. It can be used to determine
if a reset condition was due to a power failure or
watchdog reset condition. If power fails (i.e. the internal low voltage detect signal goes active), the bit is set
to ’0’. This bit is also set or reset by a Control Register
write operation. A watchdog reset does not change the
state of the flag bit.
Watchdog Timer Control
The Watchdog time-out period is controlled by the bits
WD2, WD1, and WD0. See the following Table.
Table 1. Watchdog Time Control Bits
Control Register Bits
WD2
WD1
WD0
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Watchdog Time-Out
(Typical)
1 Second
450 Milliseconds
150 Milliseconds
Disabled
1 minute
20 seconds
10 seconds
5 seconds
Characteristics subject to change without notice.
3 of 23
X46402
Password Protection Configuration
Portions of the memory array may be “locked”. This
area of memory is password protected and is defined
by the bits BL2, BL1 and BL0. For these protected
areas it is necessary to use a Read password to output data and an “Array Write” Password to write data.
This block lock area is re-writable, by issuing the correct password.
Table 2. Password Protected Block Size Select
Non-Password
Password Protected
Protected Addresses
Addresses
BL2
BL1
(Use Password
(Use Password or NoBL0
Command)
Password Commands)
000
None
0000h - 1FFFh
001
0000h - 003Fh
0040h - 1FFFh
010
0000h - 007Fh
0080h - 1FFFh
011
0000h - 00FFh
0100h - 1FFFh
100
0000h - 01FFh
0200h - 1FFFh
101
0000h - 07FFh
0800h - 1FFFh
110
0000h - 0FFFh
1000h - 1FFFh
111
0000h - 1FFFh
None
SERIAL MEMORY OPERATION
There are four primary modes of operation for the
X46402; Protected READ and WRITE of the memory
and OTP arrays and unprotected Read and Write of
non-password protected areas of the memory array.
Protected operations must be performed with one of
four 8-byte passwords.
The basic method of communication for the password
protected areas of the device is established by generating a start condition, then transmitting a command,
followed by the correct password. All parts will be
shipped from the factory with all passwords equal to
‘0’. The user must perform ACK Polling to determine
the validity of the password, before starting a data
transfer (see Acknowledge Polling.) Only after the correct password is accepted and a ACK polling has been
performed, can the data transfer occur.
Non-password protected areas of the memory array
are accessed in the same manner as access to password protected areas, except the password and the
password acknowledge polling sequences are not
required.
Data is transferred in 8-bit segments, with each transfer being followed by an ACK, generated by the receiving device.
If the X46402 is in a nonvolatile write cycle a “no ACK”
(SDA=HIGH) response will be issued in response to
loading of the command byte. If a stop is issued prior
to the start of a nonvolatile write cycle the write operation will be terminated and the part will reset and enter
into a standby mode.
The basic sequence is illustrated in Figure 1.
After each transaction is completed, the X46402 will
reset and enter into a standby mode. This will also be
the response if an unsuccessful attempt is made to
access a protected array.
Password Protection
The X46402 requires a 64 bit write password to
change the contents of the control register or to write
to a block protected memory area. The X46402 also
requires a 64 bit read password to output the contents
of the block protected array or the control register. The
block protection is controlled by the [BL2:BL0] bits and
allows the options described in Table 2. If an area is
block protected, it needs a password prior to each
read or write to the area. The passwords cannot be
read, even after the device receives the correct password.
Figure 1. X46402 Device Operation (Password
Protected Areas)
Load Command Byte
Load 8-Byte
Password
Verify Password
Acceptance by
Use of Password ACK Polling
Load 2 Byte Address
Read/Write
Data Bytes
TWC or Data ACK Polling
Characteristics subject to change without notice.
4 of 23
X46402
Figure 2. Set VTRIP Level Sequence (VCC = VTRIP)
VCC
VTRIP
VP = 15V
RESET
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
D8h
00h
01h
01h sets VCC
0 1 2 3 4 5 6 7
SCL
SDA
00h
Figure 3. Set V2TRIP Level Sequence (VCC ≥ V2TRIP, V2MON = V2TRIP)
V2TRIP
V2MON
VP = 15V
RESET
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
SCL
SDA
D8h
0Dh
0Dh sets V2MON
00h
00h
Figure 4. Reset VTRIP Level Sequence (VCC > 3V, WEL is set.)
VCC
VTRIP
VP = 15V
RESET
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
SCL
SDA
D8h
00h
03h
03h resets VCC
00h
Characteristics subject to change without notice.
5 of 23
X46402
Figure 5. Reset V2TRIP Level Sequence (VCC > 3V, WEL is set.)
V2TRIP
V2MON
VP = 15V
RESET
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
SCL
SDA
D8h
00h
00h
0Fh
0Fh resets V2MON
VCC AND V2MON THRESHOLD RESET PROCEDURE
The X46402 is shipped with standard VTRIP, and
V2TRIP voltages. These values will not change over
normal operating and storage conditions. However, in
applications where the standard thresholds are not
exactly right, or if higher precision is needed in the
threshold value, the X46402 trip points may be
adjusted. The procedure is described below, and uses
the application of a high voltage control signal.
Setting the VTRIP Voltage
This procedure is used to set the VTRIP,V2TRIP to a
lower or higher voltage value. It is necessary to reset
the trip point before setting the new value.
To set the new voltages, apply the desired VTRIP
threshold voltage to the VCC pin, the V2TRIP voltage to
the V2MON pin, then tie the RESET pin to the programming voltage VP. Then, write 4 byte to program
VTRIP, V2TRIP respectively. The stop bit following a
valid write operation initiates the programming sequence.
Bring RESET LOW to complete the operation.
Resetting the VTRIP Voltage
This procedure is used to set the VTRIP, the V2TRIP to
a “native” voltage level. For example, if the current
VTRIP is 4.4V and the new VTRIP must be 4.0V, then
the VTRIP must be reset. When the threshold is reset,
the new level is something less than 1.7V. This procedure must be used to set the voltage to a lower value.
To reset the new VTRIP, V2TRIP voltage, apply the
desired VTRIP or V2TRIP threshold voltage to the VCC
or V2MON pin, respectively, and tie the RESET pin to
the programming voltage VP. Then write 4 byte
address. The stop bit of a valid write operation initiates
the programming sequence. Bring RESET LOW to
complete the operation.
Figure 6. Sample VTRIP Reset Circuit
VP
Adjust
V2FAIL
RESET
VTRIP
Adj.
5
4
2
X46402
7
6
1
V2TRIP
Adj.
4.7K
µC
8
3
Run
SCL
SDA
Characteristics subject to change without notice.
6 of 23
X46402
VTRIP/V2TRIP Programming
Execute
Reset VTRIP/V2TRIP
Sequence
Set VCC= VCC Applied =
Desired VTRIP OR
Set V2MON = V2MON Applied =
Desired V2TRIP, VCC>=V2TRIP
Execute
Set VTRIP, V2TRIP
Sequence
New VCC or V2MON Applied =
Old VCC V2MON Applied + Error
New VCC/V2MON Applied =
Old VCC Applied - Error
Recyle VCC Power
Execute
Reset V2TRIP, VTRIP
Sequence
Apply 5V to VCC or V2MON
Decrement VCC
or V2MON
(<50mV Step)
NO
RESET
or V2FAIL pin
goes active?
YES
Error < 0
Measured V(2)TRIP Desired V(2)TRIP
Error > 0
Error = 0
DONE
Characteristics subject to change without notice.
7 of 23
X46402
Figure 7. X46402 Device Operation (Non-Password
Protected Areas)
Load Command Byte
Load 2 Byte Address
Read/Write
Data Bytes
TWC or Data ACK Polling
Tamper Counter
The X46402 contains a tamper counter. The entry of
an invalid password increments the counter. This operation requires an internal nonvolatile cycle, requiring
up to 10 ms to complete. To minimize the possibility of
of an unauthorized person monitoring the device current to detect the enry of the correct password, an
internal high voltage cycle is initiated even when the
counter does not increment. As such, each password
entry requires up to 10ms to acknowledge, so a long
period of time would be required to correctly guess the
password.
The Tamper Counter increments with each incorrect
password attempt and cannot be reset, except by the
Reset Device Command. When the tamper counter
overflows, the device is “locked”. In the locked condition, none of the password commands respond except
Reset Device. No-password commands are always
available. The device is reset by the Reset Device commands.
Device Protocol
The X46402 supports a bidirectional bus oriented protocol. The protocol defines any device that sends data
onto the bus as a transmitter and the receiving device
as a receiver. The device controlling the transfer is a
master and the device being controlled is the slave.
The master will always initiate data transfers and provide the clock for both transmit and receive operations.
Therefore, the X46402 will be considered a slave in all
applications.
After each byte written to or read from the X46402, the
address pointer is incremented by 1. This allows the
user to read from the entire device after sending only a
single address. It also allows an entire page to be written in one operation. An exception to this address
incrementation occurs during a read. After reading
address 1FFFh the device goes into an idle mode, so
additional reads return all “1s”.
Clock and Data Conventions
Data states on the SDA line can change only during
SCL LOW. SDA changes during SCL HIGH are
reserved for indicating start and stop conditions. Refer
to Figure 8 and Figure 9.
Start Condition
All commands are preceeded by the start condition,
which is a HIGH to LOW transition of SDA when SCL is
HIGH. The X46402 continuously monitors the SDA and
SCL lines for the start condition and will not respond to
any command until this condition is met.
A start may be issued to terminate the input of a control byte or the input data to be written. This will reset
the device and leave it ready to begin a new read or
write command. A start bit generated while the part is
outputting data is accepted as a start as long as the
device is not outputting a ’zero’.
Stop Condition
All communications are be terminated by a stop condition. The stop condition is a LOW to HIGH transition of
SDA when SCL is HIGH. The stop condition is also
used to reset the device during a command or data
input sequence and will leave the device in the standby
power mode. As with starts, stops are recognized while
the device outputs data, as long as the data output is
not a ‘zero’.
Figure 8. Data Validity
SCL
SDA
Data
Stable
Data
Change
Characteristics subject to change without notice.
8 of 23
X46402
Figure 9. Definition of Start and Stop Conditions
Acknowledge
The X46402 will respond with an acknowledge after
recognition of a start condition and its slave address. If
both the device and a write condition have been
selected, the X46402 will respond with an acknowledge
after the receipt of each subsequent eight-bit word.
SCL
SDA
Start Condition
Stop Condition
Acknowledge is a software convention used to indicate
successful data transfer. The transmitting device,
either master or slave, will release the bus after transmitting eight bits. During the ninth clock cycle the
receiver will pull the SDA line LOW to acknowledge
that it received the eight bits of data.
Reset Device Command
The Reset Device command resets the tamper bit,
clears the tamper counter and removes the tamper
“lock” (allowing the device to accept commands). However, the Reset Device command does not clear any
memory array area.
Table 3. X46402 Instruction Set
1st Byte
After Start
1st Byte
After
Password
2nd Byte
After
Password
Command Description
Password Used
1000 0000
High Address
Low address
Password Memory Array Read
Memory Read
1000 1000
High Address
Low address
OTP Read
OTP Read
1001 0000
High Address
Low address
Password Memory Array Write
Memory Write
1001 1000
High Address
Low address
OTP Write
OTP Write
1010 0000
0000 0000
0000 0000
Change Memory Read Password
Memory Read
1010 1000
0000 0000
0000 0000
Change OTP Read Password
OTP Read
1011 0000
0000 0000
0000 0000
Change Memory Write Password
Memory Write
1011 1000
0000 0000
0000 0000
Change OTP Write Password
OTP Write
1100 0000
0000 0000
0000 0000
Change Reset Password
Reset
1100 1000
High Address
Low address
No-Password Memory Array Read
None
1101 1000
High Address
Low address
No-Password Memory Array Write
None
1110 1000
not used
not used
Reset Device Command (Resets Tamper bit)
Reset
1111 0000
not used
not used
ACK Polling command (Ends Password operation)
None
All the rest
Reserved
Notes: Illegal command codes will be disregarded. The part will respond with a “no-ACK” to the illegal byte and then return to the standby mode.
Characteristics subject to change without notice.
9 of 23
X46402
PROGRAM OPERATIONS
Non-Password Protected Array Programming
The non-password protected memory array program
mode requires issuing the 8-bit No-Password Write
command followed by the address and then the data
bytes transferred as illustrated in Figure 11. Up to 64
bytes (or more) may be transferred. Sending more
than 64 bytes results in data wrapping and over-writing
previous data. After the last byte to be transferred is
acknowledged a stop condition is issued which starts
the nonvolatile write cycle.
Password Protected Array Programming
The password protected memory array write or OTP
write requires issuing an 8-bit Password Write command followed by the password, password ACK command, the address and then the data bytes transferred
as illustrated in Figure 10. Up to 64 bytes (or more)
may be transferred. Sending more than 64 bytes
results in data wrapping and over-writing previous
data. After the last byte to be transferred is acknowledged, a stop condition is issued which starts the nonvolatile write cycle.
START
Figure 10. Password Protected Array Programming (Memory and OTP Arrays)
Write
Password
7
Password
Command
Write
Password
0
Wait tWC
OR
Repeated
ACK Polling
Command
ACK
ACK
ACK
ACK
SDA S
ACK Polling
Command
Data 0
A7
A6
A5
A4
A3
A2
A1
A0
A15
A14
A13
A12
A11
A10
A9
A8
START
If ACK, Then
Password Matches
...
ACK
ACK
STOP
ACK
ACK
NACK
S
Data 63
Wait tWC
Data ACK Polling
ACK
ACK
S
Data 63
A7
A6
A5
A4
A3
A2
A1
A0
Data 0
STOP
No Password
Command
A15
A14
A13
A12
A11
A10
A9
A8
ACK
ACK
ACK
ACK
ACK
...
SDA S
ACK
START
Figure 11. Non-Password Protected Array Programming (Memory array only)
Wait tWC
S Data ACK
Polling
Characteristics subject to change without notice.
10 of 23
X46402
ACK Polling
Once a stop condition is issued to indicate the end of
the host’s write sequence, the X46402 initiates the
internal nonvolatile write cycle. In order to take advantage of the typical 5ms write cycle, ACK polling can
begin immediately. This involves issuing the start condition followed by the new command code of 8 bits (1st
byte of the protocol.) If the X46402 is still busy with the
nonvolatile write operation, it will issue a “no-ACK” in
response. If the nonvolatile write operation has completed, an “ACK” will be returned and the host can then
proceed with the rest of the protocol. See Figure 12.
Password ACK Polling Sequence
Password Load
Completed
Enter ACK Polling
Issue START
Issue Password
ACK Command
Data ACK Polling Sequence
ACK
Returned?
Write Sequence
Completed
Enter ACK Polling
NO
YES
PROCEED
Issue START
If the password that was inserted was correct, then an
“ACK” will be returned once the nonvolatile cycle is
over, in response to the ACK polling cycle immediately
following it.
Issue New
Command Code
ACK
Returned?
NO
YES
If the password that was inserted was incorrect, then a
“no ACK” will be returned even if the nonvolatile cycle is
over. Therefore, the user cannot be certain that the
password is incorrect until the 10ms write cycle time
has elapsed.
PROCEED
After the password sequence, there is always a nonvolatile write cycle. This is done to discourage random
guesses of the password if the device is being tampered with. In order to continue the transaction, the
X46402 requires the master to perform an ACK polling
with the specific code of F0h. As with regular Acknowledge polling the user can either time out for 10ms, and
then issue the ACK polling once, or continuously loop
as described in the flow.
Characteristics subject to change without notice.
11 of 23
X46402
Figure 12. Acknowledge Polling
SCL
SDA
8th CLK
of 8th
Pwd. Byte
‘ACK’
CLK
8th
CLK
‘ACK’
8th Bit
START
Condition
PASSWORD PROTECTED READ OPERATIONS
Password protected read operations are initiated in the
same manner as password protected write operations
but with a different command code.
Password Random Read (Data Array, OTP Arrays)
Data from a password protected array can be randomly
read after sending a single password. To do this, the
master issues a start bit, sends a Password Read
instruction and read password, performs Password Ack
Polling, then issues the desired 2 byte address. The
host receives the first byte from the X46402 and sends
a NACK, followed by a repeated start bit. A new 8-bit
address specifies the next byte to read. This process
can continue indefinitely as long as the each byte read
out of the X46402 is “NACKed” and followed by a
repeated start.
The address automatically increments after each read
operation. As such, a special case arises. A random
read of address 00FFh automatically increments to
0100h after reading the byte. Consider the following
example.
Example: A system needs data from password protected locations 0020h and 0150h and the designer
does not wish to send the password twice. After receiving data from 0020h, the host sends a NACK and a
repeated start, followed by address byte FFh. The data
read from location 0FFh is ignored, but the operation
has adjusted the address pointer to 100h. Another
NACK and repeated start followed by the address 50h
allows the contents of 150h to be read by the host.
A random read of either of the OTP arrays can access
all locations of both arrays without another password
command sequence.
A password random read operation will also return
valid data if accessing a non-password protected area
of the array. See Figure 13.
‘ACK’
CLK
ACK or
no ACK
Password Sequential Read
The host can read sequentially within an array after the
password acceptance sequence. The data output is
sequential, with the data from address n followed by
the data from n+1. The address counter for read operations increments all address bits, allowing the entire
memory array contents to be serially read during one
operation. At the end of the address space (address
1FFFh for the memory array, 7Fh for the OTP array)
the device goes into an idle state and data output is all
“1s”. To continue reading at another address requires a
new Read operation. Refer to Figure 14 for the
address, acknowledge and data transfer sequence. An
acknowledge must follow each 8-bit data transfer. After
the last bit has been read, the host sends a stop condition with or without a preceding acknowledge.
After sending a Password Read command and the correct password, the entire array, including non-password protected areas will be read with a sequential
read command.
After sending a Password Array Read command and correct password, the entire array, including non-password
protected areas are read by a sequential read command.
NON-PASSWORD READ OPERATIONS
Non-password protected read operations are initiated
in the same manner as non-password protected write
operations but with a different command code.
No-Password Random Read
The master issues the start condition, then a Nopassword Read instruction, then issues the word
address. Once the first byte has been read, another
start can be issued followed by a new 8-bit address. A
No-Password random read operation is not allowed to a
password protected area. In a No-Password Random
Read from address 00FFh, the address pointer changes
to 100h after outputting the data byte and operates in
the same manner as the password protected operation.
See Figure 15.
Characteristics subject to change without notice.
12 of 23
X46402
No-Password Sequential Read
The host can read sequentially within the un-protected
area of the array after receiving the No-password
Command and an address within the unprotected
address space. The data output is sequential, with the
data from address n followed by the data from n+1.
The address counter for read operations increments all
address bits, allowing the entire un-protected memory
array contents to be serially read during one operation.
At the end of the address space (address 1FFFh) the
device goes into an idle state and a new read
sequence must be initiated to continue reading at
another address. Refer to Figure 16 for the address,
acknowledge and data transfer sequence. An acknowledge must follow each 8-bit data transfer. After the last
bit has been read, the host sends a stop condition with
or without a preceding acknowledge.
COMBINED RANDOM/SEQUENTIAL OPERATIONS
A random read and sequential read can be combined,
however there are some limitations. Both password
protected or non-password operations operate in the
same way. After sending a random read command and
reading the first byte, continued clocks will return successive addresses. However, after more than one byte
of data is returned, it is not possible to initiate a new
random read, without issuing a stop and starting a new
command. This also allows multiple random read operations and a sequential read operation, as long as the
last operation is sequential. Note: A read operation
that includes a random read of the last byte in the
memory or OTP arrays cannot include a sequential
read operation.
START
Figure 13. Password Protected Random Read
Read
Password
7
Password
Command
Read
Password
0
STOP
ACK
S
S
ACK
ACK
ACK
ACK
NACK
S
START
A7
A6
A5
A4
A3
A2
A1
A0
ACK
ACK
ACK Polling
Command
A7
A6
A5
A4
A3
A2
A1
A0
A15
A14
A13
A12
A11
A10
A9
A8
START
If ACK, then
Password Matches
ACK
SDA S
Wait tWC
OR
Repeated
ACK Polling
Command
Data 0
Data 0
Read
Password
0
ACK
ACK
A7
A6
A5
A4
A3
A2
A1
A0
ACK Polling
Command
ACK
ACK
A15
A14
A13
A12
A11
A10
A9
A8
If ACK, then
Password Matches
START
ACK
SDA S
Wait tWC
OR
Repeated
ACK Polling
Command
STOP
Read
Password
7
Password
Command
ACK
START
Figure 14. Password Protected Sequential Read
S
ACK
ACK
ACK
NACK
S
Data 0
Data X
Characteristics subject to change without notice.
13 of 23
X46402
STOP
S
S
ACK
ACK
ACK
ACK
SDA S
START
A7
A6
A5
A4
A3
A2
A1
A0
No-Password
Command
A7
A6
A5
A4
A3
A2
A1
A0
A15
A14
A13
A12
A11
A10
A9
A8
START
Figure 15. Non-Password Protected Random Read
Data 0
Data 0
STOP
ACK
A7
A6
A5
A4
A3
A2
A1
A0
ACK
No-Password
Command
A15
A14
A13
A12
A11
A10
A9
A8
START
Figure 16. Non-Password Protected Sequential Read
SDA S
ACK
ACK
ACK
S
Data X
Data 0
START
Figure 17. Change Passwords
Old
Password
7
Command
Old
Password
0
Wait tWC
OR
Repeated
ACK Polling
Command
START
If ACK, then
Password Matches
ACK Polling
Command
ACK
ACK
ACK
ACK
SDA S
New
Password
7
Two bytes of “0”
New
Password
0
Data ACK
Polling
STOP
New
Password
7
New
Password
0
ACK
ACK
NACK
ACK
ACK
S
* ACK for correct password, No ACK for incorrect password
ACK/NoACK
ACK
ACK
ACK
ACK
* S
If immediate ACK,
then New Password error
If immediate NACK,
followed by ACK after ~5ms
then New Password OK
Characteristics subject to change without notice.
14 of 23
X46402
Non- Password Protected
(All of the array to
none of the array)
Password Protected
(None of the array to
all of the array)
Password Sequential
Read Operation
1FFFh
No-Password Sequential
Read Operation
Note on Read/Write Operations
0000h
Notes:
Using a “password read” or a “password write” to a non-password protected area is acceptable, because the password is received and
accepted prior to an address transmission. It is assumed that access to non-password protected areas is uncontrolled, so either method
should work.
Using a “no-password read” or a “no-password write” on a password protected area would not work. Trying to access a password protected
area without the password match causes the device to return a NACK after the address.
A password sequential read that starts in the password protected area can continue into and through the non-password protected area. It
will not “wrap” back to address ’0’.
A no-password sequential read can only start in the non-password protected area and cannot “wrap” back into the protected area.
CHANGE PASSWORD COMMAND
When changing a password, the Change Password
command is sent to the device. The old password follows. When the old password is accepted (as indicated
by the ACK Polling Command sequence), the new
password is sent to the device twice, following two
bytes of zero. A stop bit initiates the store of the new
password. To be successful in the password change
operation the first and second transmission of the new
password must match and there must be exactly 16
password bytes. If this is not the case, the operation is
aborted and the password remains unchanged.
PASSWORDS
The sequence in Figure 17 shows how to change (program) the passwords. The programming of passwords
is done twice prior to the nonvolatile write cycle in order
to verify that the new password is consistent. After the
eight bytes are entered in the second pass, a comparison takes place. A mismatch will cause the part to
ignore the change command and enter into the standby
mode.
There are two ways to determine whether the operation
was completed successfully. The Data ACK polling
method can determine if a password has been loaded
correctly, however the data ACK command must be
issued less than 2ms after the stop bit. After this time, it
cannot be determined if the password has been loaded
correctly, without trying the new password. To determine if the new password has been loaded correctly the
data ACK polling command is issued immediately following the stop bit. If it returns an ACK, then the two
passes of the new password entry do not match. If it
returns a “no ACK” then the passwords match and a
high voltage cycle is in progress. The high voltage cycle
is complete when a subsequent data ACK command
returns an “ACK”.
An easier way to determine that the password has been
changed correctly is to read the ACK bit following the
second writing of the new password. If the device
returns an ACK, the password is good. A No ACK indicates something went wrong. If there was an error, the
password remains unchanged.
There is no way to read any of the passwords.
Characteristics subject to change without notice.
15 of 23
X46402
ABSOLUTE MAXIMUM RATINGS
RECOMMENDED OPERATING CONDITIONS
Temperature under bias ................... –65°C to +135°C
Storage temperature ........................ –65°C to +150°C
Voltage on any pin with respect to VSS .... –1V to +7V
D.C. output current ................................................5mA
Lead temperature (soldering, 10 seconds) ........ 300°C
Temp
Min.
Max.
Commercial
0°C
+70°C
Extended
–20°C
+85°C
COMMENT
Device
Supply Voltage Limits
Stresses above those listed under “Absolute Maximum
Ratings” may cause permanent damage to the device.
This is a stress rating only; functional operation of the
device (at these or any other conditions above those
listed in the operational sections of this specification) is
not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability.
X46402
2.5V to 3.7V
D.C. OPERATING CHARACTERISTICS (Over the recommended operating conditions unless otherwise specified.)
Limits
Symbol
Parameter
ICC1
VCC Supply Current
(Read)
1
mA
ICC2(3)
VCC Supply Current
(Write)
3
mA
ISB1(1)
VCC Supply Current
(Standby)
50
µA
ISB2(1)
VCC Supply Current
(Standby)
1
µA
ILI
ILO
VIL1(2)
VIH1(2)
VIL2(2)
VIH2(2)
VOL
Input Leakage Current
Output Leakage Current
Input LOW Voltage
Input HIGH Voltage
Input LOW Voltage
Input HIGH Voltage
Output LOW Voltage
10
10
VCC x 0.3
VCC + 0.5
VCC x 0.1
VCC + 0.5
0.4
µA
µA
V
V
V
V
V
Min.
–0.5
VCC x 0.7
–0.5
VCC x 0.9
Max.
Units Test Conditions
fSCL = 1MHz,
RESET = V2FAIL = VCC w/ pull up resistor
V2MON = VCC
fSCL = 1MHz,
RESET = V2FAIL = VCC w/ pull up resistor
RST = VSS
VIL = VCC x 0.1, VIH = VCC x 0.9
fSCL = 1MHz, fSDA = 400 KHz
VSDA = VSCL = V2MON = VCC
Other = GND or VCC–0.3V
VIN = VSS to VCC
VOUT = VSS to VCC
VCC = 3.0V
VCC = 3.0V
VCC = 3.0V
VCC = 3.0V
IOL = 3mA
Characteristics subject to change without notice.
16 of 23
X46402
Table 4. CAPACITANCE (TA = +25°C, f = 1MHz, VCC = 3V)
Symbol
Test
(3)
COUT
CIN(3)
Max.
Units
Conditions
Output Capacitance (SDA)
8
pF
VI/O = 0V
Input Capacitance (WP, SCL, V2MON)
6
pF
VIN = 0V
Notes: (1) Must perform a stop command after a read command prior to measurement
(2) VIL min. and VIH max. are for reference only and are not tested.
(3) This parameter is periodically sampled and not 100% tested.
EQUIVALENT A.C. LOAD CIRCUIT
A.C. TEST CONDITIONS
Input pulse levels
3V
VCC x 0.1 to VCC x 0.9
Input rise and fall times
1.3KΩ
10ns
VCC x 0.5
Input and output timing level
OUTPUT
Output load
100pF
100pF
AC CHARACTERISTICS
AC Specifications (Over the recommended operating conditions)
Symbol
Parameter
Min.
Typ.(1)
Max.
Units
1000
KHz
fSCL
SCL Clock Frequency
0
tIN
Pulse width of spikes which must be suppressed by the input filter
10
tAA
SCL LOW to SDA Data Out Valid
0.05
tBUF
Time the bus must be free before a new transmit can start
0.5
µs
tLOW
Clock LOW Time
0.6
µs
tHIGH
Clock HIGH Time
0.4
µs
tSU:STA
Start Condition Setup Time
0.25
µs
tHD:STA
Start Condition Hold Time
0.25
µs
tSU:DAT
Data In Setup Time
100
ns
tHD:DAT
Data In Hold Time
0
µs
tSU:STO
Stop Condition Setup Time
tDH
Data Output Hold Time
0
tR
SDA and SCL Rise Time (10% to 90% of VCC)
10
100
ns
tF
SDA and SCL Fall Time
10
100
ns
ns
µs
0.55
µs
0.25
100
ns
RESET AC SPECIFICATIONS
Nonvolatile Write Cycle Timing
Symbol
(1)
tWC
Parameter
Write Cycle Time
Min.
Typ.(1)
Max.
Units
5
10
mS
Notes: (1) tWC is the time from a valid stop condition at the end of a write sequence to the end of the self-timed internal nonvolatile write cycle.
It is the minimum cycle time to be allowed for any nonvolatile write by the user, unless Acknowledge Polling is used.
Characteristics subject to change without notice.
17 of 23
X46402
TIMING DIAGRAMS
Bus Timing
tR
tHIGH
tF
SCL
tLOW
tSU:DAT
tSU:STA
tHD:DAT
tHD:STA
SDA IN
tSU:STO
tAA
tDH
tBUF
SDA OUT
Write Cycle Timing
SCL
8th Bit of Last Byte
SDA
ACK
tWC
Stop
Condition
Start
Condition
GUIDELINES FOR CALCULATING TYPICAL VALUES OF BUS PULL UP RESISTORS
Pull Up Resistance in KΩ
100ns Max Rise Time
R
10
V
– 0.4
CCMAX
= ------------------------------------------- = 1100W
I
OLMIN
– t RMAX


---------------------------------------

R PMAX C BUS

V IH = Vcc  1 – e






8
6
MIN
RPMAX
4
For VIH = 0.9VCC
2
RMIN
10
20
30
40
50
R
t
R
= ------------------------------PMAX
2.3 ( C
)
BUS
Bus Capacitance in pF
tRMAX = maximum allowable SDA rise time
Characteristics subject to change without notice.
18 of 23
X46402
POWER-UP AND POWER-DOWN TIMING
RESET Output Timing
VTRIP
VTRIP
VCC
tPURST
0 Volts
tPURST
tFV
tRV
tDVC
RESET
V2FAIL Output Timing
V2MON
V2TRIP
0 Volts
V2TRIP
tRB
tFB
tDVB
V2FAIL
Symbol
Parameter
Min.
Typ.
Max.
Units
VTRIP
RESET Trip Point Voltage
2.4
–
3.5
V
V2TRIP
V2FAIL Trip Point Voltage
1.7
–
3.5
V
VTH
VTRIP Hysteresis (HIGH to LOW vs. LOW to HIGH VTRIP voltage)
40
mV
V2TA
V2TRIP Hysteresis (HIGH to LOW vs. LOW to HIGH VTRIP voltage)
40
mV
tPURST
Power-up Reset Timeout
(5)
(5)
tDVC
tDVB
75
150
225
ms
Detect VCC Low Voltage to Reset Output (VCC = 2.3V)
65
µs
Detect V2MON Low Voltage to Reset Output (VCC = 2.5-3.7V)
100
µs
(5)
VCC Fall Time
100
µs
(5)
VCC Rise Time
100
µs
(5)
V2MON Fall Time
500
ns
(5)
tRB
V2MON Rise Time
500
ns
VRVALID
Reset Valid VCC
1
V
tFV
tRV
tFB
Notes: (5) This parameter is periodically sampled and not 100% tested.
(6) Typical values not tested.
Characteristics subject to change without notice.
19 of 23
X46402
Start Bit vs. RESET Timing
SCL
tSU:STA
tSU:STO
SDA
t WDR
RESET
tWDO
tRST
tRST
tWDO
RESET Output Timing
Symbol
Parameter
Min.
Typ.
Max.
Units
tWDO
Watchdog Timeout Period,
WD2 = 0, WD1 = 1, WD0 = 0
WD2 = 0, WD1 = 0, WD0 = 1
WD2 = 0, WD1 = 0, WD0 = 0
WD2 = 1, WD1 = 1, WD0 = 1
WD2 = 1, WD1 = 1, WD0 = 0
WD2 = 1, WD1 = 0, WD0 = 1
WD2 = 1, WD1 = 0, WD0 = 0
75
225
0.5
2.5
5
10
30
150
450
1
5
10
20
60
225
675
1.5
7.5
15
30
90
ms
ms
sec
sec
sec
sec
sec
tWDR
SDA LOW duration (Reset the Watchdog)
400
tRST
Reset Timeout
75
ns
150
225
Characteristics subject to change without notice.
ms
20 of 23
X46402
PACKAGE INFORMATION
8-Lead Plastic, TSSOP, Package Type V
.025 (.65) BSC
.169 (4.3)
.252 (6.4) BSC
.177 (4.5)
.114 (2.9)
.122 (3.1)
.047 (1.20)
.0075 (.19)
.0118 (.30)
.002 (.05)
.006 (.15)
.010 (.25)
Gage Plane
0° – 8°
Seating Plane
.019 (.50)
.029 (.75)
(4.16) (7.72)
Detail A (20X)
(1.78)
.031 (.80)
.041 (1.05)
See Detail “A”
(0.42)
(0.65)
All Measurements Are Typical
NOTE: ALL DIMENSIONS IN INCHES (IN P ARENTHESES IN MILLIMETERS)
Characteristics subject to change without notice.
21 of 23
X46402
Ordering Information
VCC Range
VTRIP
V2TRIP
Package
2.5–3.7V
3.1
2.6
8L TSSOP
2.5–3.7V
3.1
1.7
8L TSSOP
2.5–3.7V
2.9
2.3
8L TSSOP
Operating Temperature Range
Part Number
0°C–70°C
X46402V8-3.1
-20°C–85°C
X46402V8E-3.1
0°C–70°C
X46402V8-3.1A
-20°C–85°C
X46402V8E3.1A
0°C–70°C
X46402V8-2.9
-20°C–85°C
X46402V8E-2.9
Notes: Tolerance for VTRIP and V2TRIP are +/-5%
Characteristics subject to change without notice.
22 of 23
X46402
Part Mark Convention
8-Lead TSSOP
EYWW
XXXX XX
4642 AR =
4642 AS =
4642 AT =
4642 AU =
4642 AV =
4642 AW =
VTRIP
V2TRIP
Temp
3.1
3.1
3.1
3.1
2.9
2.6
2.6
1.7
1.7
2.3
2.3
0 to 70° C
-20 to 85°C
0 to 70° C
-20 to 85°C
0 to 70° C
-20 to 85°C
2.9
LIMITED WARRANTY
Devices sold by Xicor, Inc. are covered by the warranty and patent indemnification provisions appearing in its Terms of Sale only. Xicor, Inc. makes no warranty, express,
statutory, implied, or by description regarding the information set forth herein or regarding the freedom of the described devices from patent infringement. Xicor, Inc. makes
no warranty of merchantability or fitness for any purpose. Xicor, Inc. reserves the right to discontinue production and change specifications and prices at any time and
without notice.
Xicor, Inc. assumes no responsibility for the use of any circuitry other than circuitry embodied in a Xicor, Inc. product. No other circuits, patents, or licenses are implied.
TRADEMARK DISCLAIMER:
Xicor and the Xicor logo are registered trademarks of Xicor, Inc. AutoStore, Direct Write, Block Lock, SerialFlash, MPS, and XDCP are also trademarks of Xicor, Inc. All
others belong to their respective owners.
U.S. PATENTS
Xicor products are covered by one or more of the following U.S. Patents: 4,326,134; 4,393,481; 4,404,475; 4,450,402; 4,486,769; 4,488,060; 4,520,461; 4,533,846;
4,599,706; 4,617,652; 4,668,932; 4,752,912; 4,829,482; 4,874,967; 4,883,976; 4,980,859; 5,012,132; 5,003,197; 5,023,694; 5,084,667; 5,153,880; 5,153,691; 5,161,137;
5,219,774; 5,270,927; 5,324,676; 5,434,396; 5,544,103; 5,587,573; 5,835,409; 5,977,585. Foreign patents and additional patents pending.
LIFE RELATED POLICY
In situations where semiconductor component failure may endanger life, system designers using this product should design the system with appropriate error detection and
correction, redundancy and back-up features to prevent such an occurence.
Xicor’s products are not authorized for use in critical components in life support devices or systems.
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.
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.
Characteristics subject to change without notice.
23 of 23