ETC FM24C04A-S

FM24C04A
4Kb FRAM Serial Memory
Features
4K bit Ferroelectric Nonvolatile RAM
• Organized as 512 x 8 bits
• High Endurance 1012 Read/Writes
• 10 Year Data Retention
• NoDelay™ Writes
• Advanced High-Reliability Ferroelectric Process
Fast Two-wire Serial Interface
• Up to 1 MHz maximum bus frequency
• Direct hardware replacement for EEPROM
Description
The FM24C04A is a 4-kilobit nonvolatile memory
employing an advanced ferroelectric process. A
ferroelectric random access memory or FRAM is
nonvolatile and performs reads and writes like a
RAM. It provides reliable data retention for 10 years
while eliminating the complexities, overhead, and
system level reliability problems caused by EEPROM
and other nonvolatile memories.
Low Power Operation
• 5V operation
• 150 µA Active Current (100 kHz)
• 10 µA Standby Current
Industry Standard Configuration
• Industrial Temperature -40° C to +85° C
• 8-pin SOIC
Pin Configuration
NC
A1
A2
1
8
2
7
3
6
VSS
4
5
VDD
WP
SCL
SDA
Unlike serial EEPROMs, the FM24C04A performs
write operations at bus speed. No write delays are
incurred. Data is written to the memory array in the
cycle after it has been successfully transferred to the
device. The next bus cycle may commence
immediately.
These capabilities make the FM24C04A ideal for
nonvolatile memory applications requiring frequent
or rapid writes. Examples range from data collection
where the number of write cycles may be critical, to
demanding industrial controls where the long write
time of EEPROM can cause data loss. The
combination of features allows more frequent data
writing with reduced overhead for the system.
Pin Names
A1-A2
SDA
SCL
WP
VSS
VDD
The FM24C04A provides substantial benefits to users
of serial EEPROM, yet these benefits are available in
a hardware drop-in replacement. The FM24C04A is
available in industry standard 8-pin packages using a
two-wire protocol. The specifications are guaranteed
over an industrial temperature range of -40°C to
+85°C.
Ordering Information
This product conforms to specifications per the terms of the Ramtron
standard warranty. Production processing does not necessarily include testing of all parameters.
Rev. 2.0
July 2003
FM24C04A-S
Function
Device Select Address 1 and 2
Serial Data/Address
Serial Clock
Write Protect
Ground
Supply Voltage 5V
8-pin SOIC
Ramtron International Corporation
1850 Ramtron Drive, Colorado Springs, CO 80921
(800) 545-FRAM, (719) 481-7000, Fax (719) 481-7058
www.ramtron.com
1 of 12
FM24C04A
Address
Latch
Counter
128 x 32
FRAM Array
8
SDA
`
Serial to Parallel
Converter
Data Latch
SCL
WP
A1
A2
Control Logic
Figure 1. Block Diagram
Pin Description
Pin Name
A1-A2
I/O
Input
SDA
I/O
SCL
Input
WP
Input
NC
VDD
VSS
Rev. 2.0
July 2003
Supply
Supply
Pin Description
Address 1-2: The address pins set the device select address. The device address value
in the 2-wire slave address must match the setting of these two pins. These pins are
internally pulled down.
Serial Data/Address: This is a bi-directional pin used to shift serial data and addresses
for the two-wire interface. It employs an open-drain output and is intended to be wireOR’d with other devices on the two-wire bus. The input buffer incorporates a Schmitt
trigger for noise immunity and the output driver includes slope control for falling
edges. A pull-up resistor is required.
Serial Clock: The serial clock input for the two-wire interface. Data is clocked out of
the device on the SCL falling edge, and clocked in on the SCL rising edge. The SCL
input also incorporates a Schmitt trigger input for improved noise immunity.
Write Protect: When WP is high the entire array is write-protected. When WP is low,
all addresses may be written. This pin is internally pulled down.
No connect
Supply Voltage: 5V
Ground
2 of 12
FM24C04A
Overview
Two-wire Interface
The FM24C04A is a serial FRAM memory. The
memory array is logically organized as 512 x 8 and is
accessed using an industry standard two-wire
interface. Functional operation of the FRAM is
similar to serial EEPROMs. The major difference
between the FM24C04A and a serial EEPROM with
the same pinout relates to its superior write
performance.
The FM24C04A employs a bi-directional two-wire
bus protocol using few pins and little board space.
Figure 2 illustrates a typical system configuration
using the FM24C04A in a microcontroller-based
system. The industry standard two-wire bus is
familiar to many users but is described in this section.
Memory Architecture
When accessing the FM24C04A, the user addresses
512 locations each with 8 data bits. These data bits
are shifted serially. The 512 addresses are accessed
using the two-wire protocol, which includes a slave
address (to distinguish other devices), a page address,
and a word address. The word address consists of 8bits that specify one of 256 addresses. The page
address is 1-bit and so there are 2 pages each of 256
locations. The complete address of 9-bits specifies
each byte address uniquely.
Most functions of the FM24C04A either are
controlled by the two-wire interface or are handled
automatically by on-board circuitry. The memory is
read or written at the speed of the two-wire bus.
Unlike an EEPROM, it is not necessary to poll the
device for a ready condition since writes occur at bus
speed. That is, by the time a new bus transaction can
be shifted into the part, a write operation will be
complete. This is explained in more detail in the
interface section below.
By convention, any device that is sending data onto
the bus is the transmitter while the target device for
this data is the receiver. The device that is controlling
the bus is the master. The master is responsible for
generating the clock signal for all operations. Any
device on the bus that is being controlled is a slave.
The FM24C04A is always a slave device.
The bus protocol is controlled by transition states in
the SDA and SCL signals. There are four conditions:
Start, Stop, Data bit, and Acknowledge. Figure 3
illustrates the signal conditions that specify the four
states. Detailed timing diagrams are shown in the
electrical specifications.
VDD
Rmin = 1.8 KΩ
Rmax = tR/Cbus
Microcontroller
SDA
SCL
FM24C04A
Users can expect several obvious system benefits
from the FM24C04A due to its fast write cycle and
high endurance as compared with EEPROM.
However there are less obvious benefits as well. For
example in a high noise environment, the fast-write
operation is less susceptible to corruption than an
EEPROM since it is completed quickly. By contrast
an EEPROM requiring milliseconds to write is
vulnerable to noise during much of the cycle.
A1 A2
SDA
SCL
FM24C64
A0 A1 A2
Figure 2. Typical System Configuration
Note that the FM24C04A contains no power
management circuits other than a simple internal
power-on reset. It is the user’s responsibility to ensure
that VDD is within data sheet tolerances to prevent
incorrect operation.
Rev. 2.0
July 2003
3 of 12
FM24C04A
Figure 3. Data Transfer Protocol
Stop Condition
A Stop condition is indicated when the bus master
drives SDA from low to high while the SCL signal is
high. All operations must end with a Stop condition.
If an operation is pending when a stop is asserted, the
operation will be aborted. The master must have
control of SDA (not a memory read) in order to assert
a Stop condition.
Start Condition
A Start condition is indicated when the bus master
drives SDA from high to low while the SCL signal is
high. All read and write transactions begin with a
Start condition. An operation in progress can be
aborted by asserting a Start condition at any time.
Aborting an operation using the Start condition will
ready the FM24C04A for a new operation.
If during operation the power supply drops below the
specified VDD minimum, the system should issue a
Start condition prior to performing another operation.
Data/Address Transfer
All data transfers (including addresses) take place
while the SCL signal is high. Except under the two
conditions described above, the SDA signal should
not change state while SCL is high.
Acknowledge
The Acknowledge takes place after the 8th data bit has
been transferred in any transaction. During this state
the transmitter should release the SDA bus to allow
the receiver to drive it. The receiver drives the SDA
signal low to acknowledge receipt of the byte. If the
receiver does not drive SDA low, the condition is a
No-Acknowledge and the operation is aborted.
The receiver could fail to acknowledge for two
distinct reasons. First, if a byte transfer fails, the NoAcknowledge ends the current operation so that the
device can be addressed again. This allows the last
byte to be recovered in the event of a communication
Rev. 2.0
July 2003
error. Second and most common, the receiver does
not acknowledge the data to deliberately end an
operation. For example, during a read operation, the
FM24C04A will continue to place data onto the bus
as long as the receiver sends acknowledges (and
clocks). When a read operation is complete and no
more data is needed, the receiver must not
acknowledge the last byte. If the receiver
acknowledges the last byte, this will cause the
FM24C04A to attempt to drive the bus on the next
clock while the master is sending a new command
such as a Stop command.
Slave Address
The first byte that the FM24C04A expects after a
start condition is the slave address. As shown in
Figure 4, the slave address contains the device type,
the device select, the page of memory to be
accessed, and a bit that specifies if the transaction is
a read or a write.
Bits 7-4 are the device type and should be set to
1010b for the FM24C04A. The device type allows
other types of functions to reside on the 2-wire bus
within an identical address range. Bits 3-2 are the
device address. If bit 3 matches the A2 pin and bit 2
matches the A1 pin, the device will be selected. Bit
1 is the page select. It specifies the 256-byte block
of memory that is targeted for the current operation.
Bit 0 is the read/write bit. A 0 indicates a write
operation.
Word Address
After the FM24C04A (as receiver) acknowledges
the slave ID, the master will place the word address
on the bus for a write operation. The word address is
the lower 8-bits of the address to be combined with
the 1-bit page select to specify exactly the byte to be
written. The complete 9-bit address is latched
internally.
4 of 12
FM24C04A
Memory Operation
Figure 4. Slave Address
No word address occurs for a read operation. Reads
always use the lower 8-bits that are held internally in
the address latch and the 9th address bit is part of the
slave address. Reads always begin at the address
following the previous access. A random read address
can be loaded by doing a write operation as explained
below.
After transmission of each data byte, just prior to the
acknowledge, the FM24C04A increments the internal
address latch. This allows the next sequential byte to
be accessed with no additional addressing. After the
last address (1FFh) is reached, the address latch will
roll over to 000h. There is no limit to the number of
bytes that can be accessed with a single read or write
operation.
Data Transfer
After all address information has been transmitted,
data transfer between the bus master and the
FM24C04A can begin. For a read operation the
FM24C04A will place 8 data bits on the bus then wait
for an acknowledge. If the acknowledge occurs, the
next sequential byte will be transferred. If the
acknowledge is not sent, the read operation is
concluded. For a write operation, the FM24C04A will
accept 8 data bits from the master then send an
acknowledge. All data transfer occurs MSB (most
significant bit) first.
The FM24C04A is designed to operate in a manner
very similar to other 2-wire interface memory
products. The major differences result from the
higher performance write capability of FRAM
technology. These improvements result in some
differences between the FM24C04A and a similar
configuration EEPROM during writes. The complete
operation for both writes and reads is explained
below.
Write Operation
All writes begin with a slave address then a word
address. The bus master indicates a write operation
by setting the LSB of the Slave address to a 0. After
addressing, the bus master sends each byte of data to
the memory and the memory generates an
acknowledge condition. Any number of sequential
bytes may be written. If the end of the address range
is reached internally, the address counter will wrap
from 1FFh to 000h.
Unlike other nonvolatile memory technologies, there
is no write delay with FRAM. The entire memory
cycle occurs in less time than a single bus clock.
Therefore any operation including read or write can
begin immediately following a write. Acknowledge
polling, a technique used with EEPROMs to
determine if a write is complete is unnecessary and
will always return a done condition.
An actual memory array write occurs after the 8th
data bit is transferred. It will be complete before the
acknowledge is sent. Therefore if the user desires to
abort a write without altering the memory contents,
this should be done using a start or stop condition
prior to the 8th data bit. The FM24C04A needs no
page buffering.
Pulling write protect high will disable writes to the
entire array. The FM24C04A will not acknowledge
data bytes that are applied to the device when write
protect is asserted. In addition, the address counter
will not increment if writes are attempted. Pulling
WP low (VSS) will deactivate this feature.
Figures 5 and 6 illustrate single-byte and multiplebyte writes.
Rev. 2.0
July 2003
5 of 12
FM24C04A
Start
By Master
S
Address & Data
Slave Address
0 A
Word Address
Stop
A
Data Byte
A
P
By FM24C04A
Acknowledge
Figure 5. Byte Write
By Master
Start
S
Address & Data
Slave Address
0 A
Word Address
Stop
A
By FM24C04A
Data Byte
A
Data Byte
A
P
Acknowledge
Figure 6. Multiple Byte Write
Read Operation
There are two basic types of read operations. They are
current address read and selective address read. For
current address reads, the FM24C04A uses the internal
address latch to supply the lower 8 address bits. In a
selective read, the user performs a procedure to set
these lower address bits to a specific value.
Current Address & Sequential Read
The FM24C04A uses an internal latch to supply the
lower 8 address bits for a read operation. A current
address read uses the existing value in the address
latch as a starting place for the read operation. This is
the address immediately following that of the last
operation.
To perform a current address read, the bus master
supplies a slave address with the LSB set to 1. This
indicates that a read operation is requested. The page
select bit in the slave address specifies the block of
memory that is used for the read operation. After the
acknowledge, the FM24C04A will begin shifting out
data from the current address. The current address is
the bit from the slave address combined with the 8 bits
that were in the internal address latch.
Beginning with the current address, the bus master can
read any number of bytes. Thus, a sequential read is
simply a current address read with multiple byte
transfers. After each byte the internal address counter
will be incremented. Each time the bus master
acknowledges a byte, this indicates that the
FM24C04A should read out the next sequential byte.
There are four ways to properly terminate a read
operation. Failing to properly terminate the read will
most likely create a bus contention as the FM24C04A
Rev. 2.0
July 2003
attempts to read out additional data onto the bus. The
four valid methods are as follows.
1.
2.
3.
4.
The bus master issues a no-acknowledge in the
9th clock cycle and a stop in the 10th clock cycle.
This is illustrated in the diagrams below. This is
the preferred method.
The bus master issues a no-acknowledge in the
9th clock cycle and a start in the 10th.
The bus master issues a stop in the 9th clock
cycle. Bus contention may result.
The bus master issues a start in the 9th clock
cycle. Bus contention may result.
If the internal address reaches 1FFh, it will wrap
around to 000h on the next read cycle. Figures 7 and
8 show the proper operation for current address and
sequential reads.
Selective (Random) Read
A simple technique allows a user to select a random
address location as the starting point for a read
operation. This involves using the first two bytes of
a write operation to set the internal address byte
followed by subsequent read operations.
To perform a selective read, the bus master sends
out the slave address with the LSB set to 0. This
specifies a write operation. According to the write
protocol, the bus master then sends the word address
byte that is loaded into the internal address latch.
After the FM24C04A acknowledges the word
address, the bus master issues a start condition. This
simultaneously aborts the write operation and allows
the read command to be issued with the slave
address LSB set to a 1. The operation is now a
current address read. See Figure 9.
6 of 12
FM24C04A
Start
By Master
No
Acknowledge
Address
Stop
S
Slave Address
By FM24C04A
1 A
Data Byte
Acknowledge
1
P
Data
Figure 7. Current Address Read
Start
By Master
Address
No
Acknowledge
Acknowledge
Stop
S
Slave Address
By FM24C04A
1 A
Data Byte
A
Acknowledge
Data Byte
1 P
Data
Figure 8. Sequential Read
By Master
Address
Start
Start
Address
No
Acknowledge
Acknowledge
Stop
S
By FM24C04A
Slave Address
0 A
Word Address
A
S
Slave Address
1 A
Acknowledge
Data Byte
A
Data Byte
1 P
Data
Figure 9. Selective (Random) Read
Endurance
Internally, a FRAM operates with a read and restore
mechanism. Therefore, endurance cycles are applied
for each read or write cycle. The FRAM architecture
is based on an array of rows and columns. Rows are
Rev. 2.0
July 2003
defined by A8-A2. Each access causes an endurance
cycle for a row. Endurance is virtually unlimited. At
3000 accesses per second to the same segment, it will
take more than 10 years to reach the endurance limit.
7 of 12
FM24C04A
Applications
The versatility of FRAM technology fits into many
diverse applications. Clearly the strength of higher
write endurance and faster writes make FRAM
superior to EEPROM in all but one-time
programmable applications. The advantage is most
obvious in data collection environments where writes
are frequent and data must be nonvolatile.
The attributes of fast writes and high write endurance
combine in many innovative ways. A short list of
ideas is provided here.
1. Data collection. In applications where data is
collected and saved, FRAM provides a superior
alternative to other solutions. It is more cost effective
than battery backup for SRAM and provides better
write attributes than EEPROM.
2. Configuration. Any nonvolatile memory can
retain a configuration. However if the configuration
changes and power failure is a possibility, the higher
write endurance of FRAM allows changes to be
recorded without restriction. Any time the system
state is altered, the change can be written. This avoids
writing to memory on power down when the available
time is short and power scarce.
3. High noise environments. Writing to EEPROM
in a noisy environment can be challenging. When
severe noise or power fluctuations are present, the
long write time of EEPROM creates a window of
vulnerability during which the write can be corrupted.
The fast write of FRAM is completed within a
microsecond. This time is typically too short for noise
or power fluctuation to disturb it.
Rev. 2.0
July 2003
4. Time to market. In a complex system, multiple
software routines may need to access the nonvolatile
memory. In this environment the time delay
associated with programming EEPROM adds undue
complexity to the software development. Each
software routine must wait for complete programming
before allowing access to the next routine. When time
to market is critical, FRAM can eliminate this simple
obstacle. As soon as a write is issued to the
FM24C04A, it is effectively done -- no waiting.
5. RF/ID. In the area of contactless memory, FRAM
provides an ideal solution. Since RF/ID memory is
powered by an RF field, the long programming time
and high current consumption needed to write
EEPROM is unattractive. FRAM provides a superior
solution. The FM24C04A is suitable for multi-chip
RF/ID products.
6. Maintenance tracking. In sophisticated systems,
the operating history and system state during a failure
is important knowledge. Maintenance can be
expedited when this information has been recorded.
Due to the high write endurance, FRAM makes an
ideal system log. In addition, the convenient 2-wire
interface of the FM24C04A allows memory to be
distributed throughout the system using minimal
additional resources.
8 of 12
FM24C04A
Electrical Specifications
Absolute Maximum Ratings
Symbol
Description
VDD
Power Supply Voltage with respect to VSS
VIN
Voltage on any signal pin with respect to VSS
TSTG
TLEAD
Storage Temperature
Lead Temperature (Soldering, 10 seconds)
Ratings
-1.0V to +7.0V
-1.0V to +7.0V
and VIN < VDD+1.0V *
-55°C to + 125°C
300° C
* Exception: The “VIN < VDD+1.0V” restriction does not apply to the SCL and SDA inputs.
Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a
stress rating only, and the functional operation of the device at these or any other conditions above those listed in the
operational section of this specification is not implied. Exposure to absolute maximum ratings conditions for
extended periods may affect device reliability.
DC Operating Conditions (TA = -40° C to + 85° C, VDD = 4.5V to 5.5V unless otherwise specified)
Symbol
Parameter
Min
Typ
Max
VDD
Main Power Supply
4.5
5.0
5.5
IDD
VDD Supply Current
150
115
@ SCL = 100 kHz
500
400
@ SCL = 400 kHz
1000
800
@ SCL = 1000 kHz
ISB
Standby Current
1
10
ILI
Input Leakage Current
10
ILO
Output Leakage Current
10
VIL
Input Low Voltage
-0.3
0.3 VDD
VIH
Input High Voltage
0.7 VDD
VDD + 0.5
VOL
Output Low Voltage
@ IOL = 3 mA
0.4
RIN
Input Resistance (WP, A2,A1)
For VIN = VIL (max)
50
For VIN = VIH (min)
1
VHYS
Input Hysteresis
0.05 VDD
Units
V
Notes
1
µA
µA
µA
uA
uA
uA
V
V
2
3
3
4
4
V
KΩ
MΩ
V
5
4
Notes
1. SCL toggling between VDD-0.3V and VSS, other inputs VSS or VDD-0.3V
2. SCL = SDA = VDD. All inputs VSS or VDD. Stop command issued.
3. VIN or VOUT = VSS to VDD
4. This parameter is periodically sampled and not 100% tested.
5. The input pull-down circuit is strong (50KΩ) when the input voltage is below VIL and much weaker (1MΩ)
when the input voltage is above VIH.
Rev. 2.0
July 2003
9 of 12
FM24C04A
AC Parameters (TA = -40° C to + 85° C, VDD = 4.5V to 5.5V, CL = 100 pF unless otherwise specified)
Min Max Min Max Min Max
Symbol Parameter
fSCL
SCL Clock Frequency
0
100
0
400
0
1000
tLOW
Clock Low Period
4.7
1.3
0.6
tHIGH
Clock High Period
4.0
0.6
0.4
tAA
SCL Low to SDA Data Out Valid
3
0.9
0.55
tBUF
tHD:STA
tSU:STA
tHD:DAT
tSU:DAT
tR
tF
tSU:STO
tDH
tSP
Bus Free Before New
Transmission
Start Condition Hold Time
Start Condition Setup for Repeated
Start
Data In Hold
Data In Setup
Input Rise Time
Input Fall Time
Stop Condition Setup
Data Output Hold
(from SCL @ VIL)
Noise Suppression Time Constant
on SCL, SDA
Units
kHz
µs
µs
µs
4.7
1.3
0.5
µs
4.0
4.7
0.6
0.6
0.25
0.25
µs
µs
0
250
0
100
0
100
300
100
ns
ns
ns
ns
µs
ns
50
ns
1000
300
4.0
0
300
300
0.6
0
50
0.25
0
50
Notes
1
1
Notes : All SCL specifications as well as Start and Stop conditions apply to both read and write operations.
1 This parameter is periodically sampled and not 100% tested.
Capacitance (TA = 25° C, f=1.0 MHz, VDD = 5V)
Symbol
Parameter
CI/O
Input/output capacitance (SDA)
CIN
Input capacitance
Max
8
6
Units
pF
pF
Notes
1
1
Notes
1 This parameter is periodically sampled and not 100% tested.
AC Test Conditions
Input Pulse Levels
Input rise and fall times
Input and output timing levels
0.1 VDD to 0.9 VDD
10 ns
0.5 VDD
Equivalent AC Load Circuit
Rev. 2.0
July 2003
10 of 12
FM24C04A
Diagram Notes
All start and stop timing parameters apply to both read and write cycles. Clock specifications are identical for read
and write cycles. Write timing parameters apply to slave address, word address, and write data bits. Functional
relationships are illustrated in the relevant data sheet sections. These diagrams illustrate the timing parameters only.
Read Bus Timing
tR
tF
tHIGH
tSP
tLOW
tSP
SCL
tSU:SDA
1/fSCL
tBUF
tHD:DAT
tSU:D AT
SDA
Start
tDH
tAA
Stop Start
Acknowledge
Write Bus Timing
tHD:DAT
SCL
tHD:STA
tSU:STO
tSU:DAT
tAA
SDA
Start
Stop Start
Data Retention (VDD = 4.5V to 5.5V unless otherwise specified)
Parameter
Min
Units
Data Retention
10
Years
Acknowledge
Notes
1
Notes
1. The relationship between retention, temperature, and the associated reliability
level is characterized separately.
Rev. 2.0
July 2003
11 of 12
FM24C04A
8-pin SOIC (JEDEC Standard MS-012 variation AA)
Controlling dimensions in millimeters.
Conversions to inches are not exact.
Symbol
Dim
Min
Nom.
A
mm
1.35
in.
0.053
A1
mm
0.10
in.
0.004
B
mm
0.33
in.
0.013
C
mm
0.19
in.
0.007
D
mm
4.80
in.
0.189
E
mm
3.80
in.
0.150
e
mm
1.27 BSC
in.
0.050 BSC
H
mm
5.80
in.
0.228
h
mm
0.25
in.
0.010
L
mm
0.40
in.
0.016
α
0°
Rev. 2.0
July 2003
Max
1.75
0.069
0.25
0.010
0.51
0.020
0.25
0.010
5.00
0.197
4.00
0.157
6.20
0.244
0.50
0.197
1.27
0.050
8°
12 of 12