MAXIM DS28CN01

Abridged Data Sheet
DS28CN01
1Kbit I²C/SMBus EEPROM
with SHA-1 Engine
www.maxim-ic.com
GENERAL DESCRIPTION
FEATURES
The DS28CN01 combines 1024 bits of EEPROM
with challenge-and-response authentication security
implemented
with
the
Federal
Information
Publications (FIPS) 180-1/180-2 and ISO/IEC 101183 Secure Hash Algorithm (SHA-1). The memory is
organized as four pages of 32 bytes each. Data
copy-protection and EPROM emulation features are
supported for each memory page. Each DS28CN01
has a guaranteed unique factory-programmed 64-bit
registration number. Communication with the
DS28CN01 is accomplished through an industry
standard I²C- and SMBus™-compatible interface.
The SMBus timeout feature resets the device’s
interface if a bus-timeout fault condition is detected.
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
APPLICATIONS
ƒ
Printed Circuit Board (PCB) Unique Serialization
Accessory and Peripheral Identification
Equipment Registration and License Management
Network Node Identification
Printer Cartridge Configuration and Monitoring
Medical Sensor Authentication and Calibration
System Intellectual Property Protection
ƒ
ƒ
ƒ
ORDERING INFORMATION
TYPICAL OPERATING CIRCUIT
VCC
RP
VCC
RP
To additional
devices
SDA
SCL
µC
PART
DS28CN01U+
-40°C to +85°C
TEMP RANGE
DS28CN01U+T
-40°C to +85°C
PIN-PACKAGE
8 µSOP
8 µSOP
Tape-and-Reel
+ Denotes a lead-free package.
Request full data sheet at:
www.maxim-ic.com/fullds/DS28CN01
VCC
DS28CN01
GND
1024 Bits of EEPROM Memory Partitioned
Into Four Pages of 256 Bits
Dedicated Hardware-Accelerated SHA Engine
for Generating SHA-1 MACs
EEPROM Memory Pages can be Individually
Copy-Protected or Put Into an EPROM Mode
(Program from 1 to 0 Only)
Write Access Requires Knowledge of the
Secret and the Capability of Computing and
Transmitting a 160-Bit MAC as Authorization
Unique, Factory-Programmed, and Tested
64-Bit Registration Number Assures Absolute
Traceability Because No Two Parts are Alike
Endurance 200k Cycles at +25°C
Serial Interface User Programmable for I²C
Bus and SMBus Compatibility
Supports 100kHz and 400kHz I²C
Communication Speeds
5.5V Tolerant Interface Pins
Operating Range: 1.62V to 5.5V,
-40°C to +85°C
8-Pin µSOP Package
SDA
SCL
PIN CONFIGURATION
AD1
AD0 GND
Registers, Modes, and Commands are capitalized for
clarity.
SMBus is a trademark of Intel Corp.
AD0 1
8
VCC
AD1 2
7
NC
NC 3
6
SCL
GND 4
5
SDA
µSOP
1 of 9
REV: 061907
Abridged Data Sheet
DS28CN01
ABSOLUTE MAXIMUM RATINGS
Voltage Range on Any Pin Relative to Ground
Maximum Current Any Pin
Operating Temperature Range
Junction Temperature
Storage Temperature Range
Soldering Temperature
-0.5V, +6V
±20mA
-40°C to +85°C
+150°C
-55°C to +125°C
See IPC/JEDEC J-STD-020
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only,
and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is
not implied. Exposure to the absolute maximum rating conditions for extended periods may affect device.
ELECTRICAL CHARACTERISTICS (see Note 1)
(TA = -40°C to +85°C)
PARAMETER
SYMBOL
Supply Voltage
Standby Current
VCC
ICCS
Operating Current
ICCA
Power-Up Wait Time
tPOIP
CONDITIONS
MIN
1.62
Bus idle, VCC = 5.5V
Bus active at 400kHz,
VCC = 5.5V
(Note 2)
TYP
MAX
UNITS
5.50
5.5
V
µA
500
µA
5
µs
EEPROM
Programming Time
tPROG
Programming Current
IPROG
Endurance (Notes 3, 4, 5)
NCY
Data Retention (Notes 6, 7, 8)
tDR
VCC ≥ 2.0V
VCC < 2.0V
VCC = 5.5V
At +25°C
At +85°C
At +85°C
10
45
1.2
200k
50k
40
ms
mA
—
years
SHA-1 Engine
SHA Computation Time
tCSHA
SHA Computation Current
ILCSHA
See full version of data
sheet
See full version of data
sheet
ms
mA
SCL, SDA, AD1, AD0 Pins (Note 9) (See Figure 3)
LOW Level Input Voltage
HIGH Level Input Voltage
Hysteresis of Schmitt Trigger
Inputs (Note 2)
LOW Level Output Voltage at
4mA Sink Current, Open Drain
Output Fall Time from VIHmin to
VILmax with a Bus Capacitance
from 10pF to 400pF
(Notes 2, 10)
Pulse Width of Spikes that are
Suppressed by the Input Filter
Input Current with an Input
Voltage Between 0.1VCC and
0.9VCCmax
VIL
VIH
VHYS
VOL
VCC ≥ 2.0V
-0.3
VCC < 2.0V
-0.3
VCC ≥ 2.0V
0.7 ×
VCC
0.8 ×
VCC
0.05 ×
VCC
0.1 ×
VCC
VCC < 2.0V
VCC ≥ 2.0V
VCC < 2.0V
VCC ≥ 2.0V
VCC < 2.0V
VCC ≥ 2.0V
tOF
VCC < 2.0V
tSP
(Note 2)
Ii
(Note 11)
2 of 9
0.3 × VCC
0.25 ×
VCC
VCCmax
+0.3V
VCCmax
+0.3V
-10
V
V
0.4
0.2 × VCC
20 +
0.1CB
20 +
0.1CB
V
V
250
300
ns
50
ns
+10
µA
Abridged Data Sheet
PARAMETER
SYMBOL
Input Capacitance
SCL Clock Frequency
Bus Timeout
Hold-Time (Repeated) START
Condition. After this Period, the
First Clock Pulse is Generated.
CI
fSCL
CONDITIONS
DS28CN01
MIN
tTIMEOUT
(Note 2)
(Note 12)
(Note 12)
25
tHD:STA
(Note 13)
0.6
1.3
1.5
1.9
0.6
HIGH Period of the SCL Clock
Setup Time for a Repeated
START Condition
tHIGH
VCC ≥ 2.7V
VCC ≥ 2.0V
VCC < 2.0V
(Note 13)
tSU:STA
(Note 13)
0.6
Data Hold Time
(Notes 14, 15)
tHD:DAT
VCC ≥ 2.7V
VCC ≥ 2.0V
VCC < 2.0V
(Notes 2, 13, 16)
(Note 13)
0.3
0.3
0.3
100
0.6
tBUF
(Note 13)
1.3
CB
(Notes 2, 13)
LOW Period of the SCL Clock
(Note 13)
Data Setup Time
Setup Time for STOP Condition
Bus Free Time Between a
STOP and START Condition
Capacitive Load for Each Bus
Line
Note 1:
Note 2:
Note 3:
Note 4:
Note 5:
Note 6:
Note 7:
Note 8:
Note 9:
Note 10:
Note 11:
Note 12:
Note 13:
Note 14:
Note 15:
Note 16:
tLOW
tSU:DAT
tSU:STO
TYP
MAX
UNITS
10
400
75
pF
kHz
ms
µs
µs
µs
µs
0.9
1.1
1.5
µs
ns
µs
µs
400
pF
Specifications at -40°C are guaranteed by design and characterization only and not production tested.
Guaranteed by design, characterization and/or simulation only, and not production tested.
This specification is valid for each 8-byte memory row.
Write-cycle endurance is degraded as TA increases.
Not 100% production-tested; guaranteed by reliability monitor sampling.
Data retention is degraded as TA increases.
Guaranteed by 100% production test at elevated temperature for a shorter time; equivalence of this production test to data sheet
limit at operating temperature range is established by reliability testing.
EEPROM writes can become nonfunctional after the data retention time is exceeded. Long-time storage at elevated
temperatures is not recommended; the device can lose its write capability after 10 years at +125°C or 40 years at +85°C.
All values are referred to VIHmin and VILmax levels.
CB = total capacitance of one bus line in pF. If mixed with high-speed-mode devices, faster fall-times according to I²C-Bus
Specification v2.1 are allowed.
The DS28CN01 does not obstruct the SDA and SCL lines if VCC is switched off.
The minimum SCL clock frequency is limited by the bus timeout feature. If the CM bit is 1 and SCL stays at the same logic level
or SDA stays low for this interval, the DS28CN01 behaves as though it has sensed a STOP condition.
System requirement.
The DS28CN01 provides a hold time of at least 300ns for the SDA signal (referred to the VIHmin of the SCL signal) to bridge the
undefined region of the falling edge of SCL.
The master can provide a hold time of 0ns minimum when writing to the device. This 0ns minimum is guaranteed by design,
characterization and/or simulation only, and not production tested.
A Fast-Mode I²C-bus device can be used in a Standard-mode I²C-bus system, but the requirement tSU:DAT ≥ 250ns must then be
met. This is automatically the case if the device does not stretch the LOW period of the SCL signal. If such a device does stretch
the LOW period of the SCL signal, it must output the next data bit to the SDA line tRmax + tSU:DAT = 1000 + 250 = 1250ns
(according to the Standard-mode I²C-bus specification) before the SCL line is released.
3 of 9
Abridged Data Sheet
DS28CN01
PIN DESCRIPTION
PIN
NAME
1
AD0
2
AD1
3, 7
4
5
6
8
N.C.
GND
SDA
SCL
VCC
FUNCTION
Device Address Input Pin to Select the Slave Address. Sets slave address bits A1:A0;
must be tied to either GND, SDA, SCL, or VCC.
Device Address Input Pin to Select the Slave Address. Sets slave address bits A3:A2;
must be tied to either GND, SDA, SCL, or VCC.
No Connection
Ground Supply
I²C/SMBus Bidirectional Serial Data Line. Must be tied to VCC through a pullup resistor.
I²C/SMBus Serial Clock Input. Must be tied to VCC through a pullup resistor.
Power-Supply Input
OVERVIEW
The DS28CN01 features a serial I²C/SMBus interface, 1Kbits of SHA-1 secure EEPROM, a register page, and a
unique registration number, as shown in the Block Diagram. The device communicates with a host processor
through its I²C interface in Standard-mode or in Fast-mode. The user can switch the interface from I²C Bus to
SMBus Mode. Two 4-level address pins allow 16 DS28CN01s to reside on the same bus segment.
DS28CN01 BLOCK DIAGRAM
MAC Output
Buffer
VCC
ADx
SCL
SDA
I²C/SMBus
Function
Control
64-bit Unique
Number
Memory and
SHA-1 Engine
Control
MAC
Comparator
8-Byte
Write Buffer
SHA-1
Engine
Secret
Memory
Register
Page
User EEPROM
4 Pages
of 32 Bytes
4 of 9
Abridged Data Sheet
DS28CN01
DEVICE OPERATION
Read and write access to the DS28CN01 is controlled through the I²C/SMBus serial interface. Since the
DS28CN01 has memory areas and registers of different characteristics there are several special cases to consider.
See the Read and Write section for details.
Serial Communication Interface
General Characteristics
The serial interface uses a data line (SDA) plus a clock signal (SCL) for communication. Both SDA and SCL are
bidirectional lines, connected to a positive supply voltage through a pullup resistor. When there is no
communication, both lines are HIGH. The output stages of devices connected to the bus must have an open-drain
or open-collector to perform the wired-AND function. Data can be transferred at rates of up to 100kbps in the
Standard-mode, up to 400kbps in the Fast-mode. The DS28CN01 works in both modes.
A device that sends data on the bus is defined as a transmitter, and a device receiving data as a receiver. The
device that controls the communication is called a “master.” The devices that are controlled by the master are
“slaves.” The DS28CN01 is a slave device.
Slave Address/Direction Byte
To be individually accessed, each device must have a slave address that does not conflict with other devices on
the bus. The slave address to which the DS28CN01 responds is shown in Figure 1. The slave address is part of
the slave-address/direction byte. The upper 3 bits of the slave address of the DS28CN01 are set to 101b. The AD0
pin controls address A0 and A1; AD1 controls A2 and A3. AD0 and AD1 can be tied to GND, VCC, SCL, or SDA.
Table 1 shows the translation of these four pin states to binary addresses. To be selected the device must be
addressed with A0 to A3 matching the binary address of the respective pins.
Figure 1. DS28CN01 Slave Address
7-Bit Slave Address
A6
A5
A4
1
0
1
Most Significant Bit
A3
A2
AD1
A1
A0
AD0
4-Level Pin States
See Text
R/W
Determines
Read or Write
Table 1. Pin State to Binary Translation
AD1
A3
A2
AD0
A1
A0
GND
0
0
GND
0
0
VCC
0
1
VCC
0
1
SCL
1
0
SCL
1
0
SDA
1
1
SDA
1
1
The last bit of the slave-address/direction byte (R/W) defines the data direction. When set to a 0, subsequent data
flows from master-to-slave (Write-Access Mode); when set to a 1, data flows from slave-to-master (Read-Access
Mode).
5 of 9
Abridged Data Sheet
DS28CN01
I²C/SMBus Protocol
Data transfers can be initiated only when the bus is not busy. The master generates the serial clock (SCL), controls
the bus access, generates the START and STOP conditions, and determines the number of bytes transferred on
the data line (SDA) between START and STOP. Data is transferred in bytes with the most significant bit being
transmitted first. After each byte follows an acknowledge bit to allow synchronization between master and slave.
During any data transfer, SDA must remain stable whenever the clock line is HIGH. Changes in SDA line while
SCL is high are interpreted as a START or a STOP. The protocol is illustrated in Figure 2. See Figure 3 for detailed
timing references .
Figure 2. I²C/SMBus Protocol Overview
MS-bit
R/W
ACK
bit
ACK
bit
SDA
Slave Address
Acknowledgment
from Receiver
SCL
1
Idle
START
Condition
2
6
7
8
9
ACK
Repeated if more bytes
are transferred
1
2
8
9
ACK
STOP Condition
Repeated START
Condition
Bus Idle or Not Busy
Both SDA and SCL are inactive, i.e., in their logic HIGH states.
START Condition
To initiate communication with a slave the master must generate a START condition. A START condition is defined
as a change in state of SDA from HIGH to LOW while SCL remains HIGH.
STOP Condition
To end communication with a slave the master must generate a STOP condition. A STOP condition is defined as a
change in state of SDA from LOW to HIGH while SCL remains HIGH.
Repeated START Condition
Repeated starts are commonly used for read accesses after having specified a memory address to read from in a
preceding write access. The master can use a repeated START condition at the end of a data transfer to
immediately initiate a new data transfer following the current one. A repeated START condition is generated the
same way as a normal START condition, but without a preceding STOP condition.
Data Valid
With the exception of the START and STOP condition, transitions of SDA may occur only during the LOW state of
SCL. The data on SDA must remain valid and unchanged during the entire high pulse of SCL plus the required
setup and hold time (tHD:DAT after the falling edge of SCL and tSU:DAT before the rising edge of SCL, see Figure 3).
There is one clock pulse per bit of data. Data is shifted into the receiving device during the rising edge of the SCL
pulse.
When finished with writing, the master must release the SDA line for a sufficient amount of setup time (minimum
tSU:DAT + tR in Figure 3) before the next rising edge of SCL to start reading. The slave shifts out each data bit on
SDA at the falling edge of the previous SCL pulse and the data bit is valid at the rising edge of the current SCL
pulse. The master generates all SCL clock pulses, including those needed to read from a slave.
6 of 9
Abridged Data Sheet
DS28CN01
Acknowledged by Slave
A slave device, when addressed, is usually obliged to generate an acknowledge after the receipt of each byte. The
master must generate the clock pulse for each acknowledge bit. A slave that acknowledges must pull down the
SDA line during the acknowledge clock pulse so that it remains stable LOW during the HIGH period of this clock
pulse. Setup and hold times tSU:DAT and tHD:DAT must be taken into account.
Acknowledged by Master
To continue reading from a slave, the master is obliged to generate an acknowledge after the receipt of each byte.
The master must generate the clock pulse for each acknowledge bit. A master that acknowledges must pull down
the SDA line during the acknowledge clock pulse so that it remains stable LOW during the HIGH period of this
clock pulse. Setup and hold times tSU:DAT and tHD:DAT must be taken into account.
Not Acknowledged by Slave
A slave device can be unable to receive or transmit data either because of an invalid access mode, because the
SHA-1 engine is running, or because an EEPROM write cycle is in progress. In this case, the DS28CN01 does not
acknowledge any bytes that it refuses by leaving SDA HIGH during the HIGH period of the acknowledge-related
clock pulse. See the Read and Write section for a detailed list of situations where the DS28CN01 does not
acknowledge.
Not Acknowledged by Master
At some time when receiving data, the master must terminate a read access. To achieve this, the master does not
acknowledge the last byte that it has received from the slave by leaving SDA high during the HIGH period of the
acknowledge-related clock pulse. In response, the slave stops transmitting, allowing the master to generate a
STOP condition.
Figure 3. I²C/SMBus Timing Diagram
SDA
tBUF
tHD:STA
tF
tLOW
tSP
SCL
tHD:STA
tR
tSU:STA
tHIGH
tHD:DAT
Spike
Suppression
tSU:STO
tSU:DAT
Repeated
START
STOP START
NOTE: Timing is referenced to VILMAX and VIHMIN.
Data Memory and Registers
For this section including Figures 4 to 5 and Tables 2 to 3 please refer to the full version of the data sheet.
Read and Write
This section discusses the read and write behavior of the EEPROM and the various registers. Please refer to the
full data sheet for details including Tables 4 to 13.
SHA-1 COMPUTATION ALGORITHM
This description of the SHA computation is adapted from the Secure Hash Standard SHA-1 document that can be
downloaded from the NIST website (http://www.itl.nist.gov/fipspubs/fip180-1.htm). Further details are found in the
full version of the data sheet.
7 of 9
Abridged Data Sheet
DS28CN01
Application Information
SDA and SCL Pullup Resistors
SDA is an open-drain output on the DS28CN01 that requires a pullup resistor (Figure 6) to realize high logic levels.
Because the DS28CN01 uses SCL only as input (no clock stretching), the master can drive SCL either through an
open-drain/collector output with a pullup resistor or a push-pull output.
Pullup Resistor RP Sizing
According to the I²C specification, a slave device must be able to sink at least 3mA at a VOL of 0.4V. The SMBus
specification requires a current sink capability of 4mA at 0.4V. The DS28CN01 can sink at least 4mA at 0.4V VOL
over its entire operating voltage range. This DC characteristic determines the minimum value of the pullup resistor:
RPmin = (VCC - 0.4V)/4mA. With a maximum operating voltage of 5.5V, the minimum value for the pullup resistor is
1.275kΩ. The "Minimum RP" line in Figure 7 shows how the minimum pullup resistor changes with the operating
(pullup) voltage.
Figure 6. Application Schematic
VCC
RP
VCC
RP
To additional
devices
SDA
SCL
µC
VCC
DS28CN01
GND
SDA
SCL
AD1
AD0 GND
For I²C systems, the rise time and fall time are measured from 30% to 70% of the pullup voltage. The maximum
bus capacitance CB is 400pF. The maximum rise time must not exceed 300ns. Assuming maximum rise time, the
maximum resistor value at any given capacitance CB is calculated as: RPmax = 300ns / (CB × ln(7/3)). For a bus
capacitance of 400pF the maximum pullup resistor would be 885Ω.
Since an 885Ω pullup resistor, as would be required to meet the rise time specification and 400pF bus capacitance,
is lower than RPmin at 5.5V, a different approach is necessary. The "Max Load…" line in Figure 7 is generated by
first calculating the minimum pullup resistor at any given operating voltage ("Minimum RP" line) and then calculating
the respective bus capacitance that yields a rise time of 300ns.
Only for pullup voltages of 4V and lower can the maximum permissible bus capacitance of 400pF be maintained. A
reduced bus capacitance of 300pF is acceptable for the entire operating voltage range. The corresponding pullup
resistor value at the voltage is indicated by the "Minimum RP" line.
8 of 9
Abridged Data Sheet
DS28CN01
Figure 7. I²C Fast Speed Pullup Resistor Selection Chart
Max. Load at Min. Rp fast mode
1200
600
1000
500
800
400
600
300
400
200
200
100
0
0
1.5
2
2.5
3
3.5
4
Pullup Voltage
PACKAGE INFORMATION
For the latest package outline information, go to www.maxim-ic.com/DallasPackInfo.
9 of 9
4.5
5
5.5
Load (pF)
Minimum Rp (Ohms)
Mimimum Rp