• Improves system memory reliability
— Corrects all single bit errors, detects all double and some
triple-bit errors
• Cascadable
— Data words up to 64-bits
• Built-in diagnostics
— Capable of verifying proper EDC operation via software
control
• Simplified byte operations
— Fast byte writes possible with separate byte enables
• Functional replacement for 32- and 64-bit configurations of
the AM29C60 and AM29C660
• Available in PGA, PLCC and Fine Pitch Flatpack
• Military product compliant to MIL-STD-883, Class B
• Standard Military Drawing #5962–88533
DESCRIPTION:
The IDT49C460s are high-speed, low-power, 32-bit Error
Detection and Correction Units which generate check bits on
a 32-bit data field according to a modified Hamming Code and
correct the data word when check bits are supplied. The
IDT49C460s are performance-enhanced functional replacements for 32-bit versions of the 2960. When performing a read
operation from memory, the IDT49C460s will correct 100% of
all single bit errors and will detect all double bit errors and
some triple bit errors.
The IDT49C460s are easily cascadable to 64-bits. Thirtytwo-bit systems use 7 check bits and 64-bit systems use 8
check bits. For both configurations, the error syndrome is
made available.
The IDT49C460s incorporate two built-in diagnostic modes.
Both simplify testing by allowing for diagnostic data to be
entered into the device and to execute system diagnostics
functions.
They are fabricated using a CMOS technology designed for
high-performance and high-reliability. The devices are packaged in a 68-pin ceramic PGA, PLCC and Ceramic Quad
Flatpack.
Military grade product is manufactured in compliance with
the latest revision of MIL-STD-883, Class B, making it ideally
suited to military temperature applications demanding the
highest level of performance and reliability.
FUNCTIONAL BLOCK DIAGRAM
CB
0–7
DATA0–31
OE
BYTE0–3
LEIN
LEDIAG
LEOUT/
GENERATE
CORRECT
1,0
CODE ID
DIAG MODE1,0
The IDT logo is a registered trademark of Integrated Device Technology, Inc.
MILITARY AND COMMERCIAL TEMPERATURE RANGESAUGUST 1995
32-BIT CMOS ERROR DETECTION AND CORRECTION UNITMILITARY AND COMMERCIAL TEMPERATURE RANGES
GENERAT
D
D27
D26
D29
D28
D31
D30
CODE ID0
OE
DIAG MODE0
CODE ID1
LEIN
DIAG MODE1
D0
OE
D1
24
GND
D23
D22
D21
D20
D
D19
VCC
D18
D17
OE 2LEOUT/
D16
5152504948474645444342414039383736
25
DIAG
CORRECT
ERROR
LE
35
32335554
GND
MULT ERROR
3453
OESC
SC7
SC6
30315756
SC5
SC4
28295958
SC3
SC2
3
G68 – 1
26276160
24256362
SC1
SC0
CB0
CB1
22236564
CB2
CB3
0
3456789101112131415
1
20216766
6819
2
161817
CB4
CB5
CB6
VCC
2584 drw 04
D3
D4
D5
D6
D2
D7
9
D8
D
D10
D12
GND
D11
D14
D13
1
D15
CB7
OE
PGA
TOPVIEW
11.64
IDT49C460/A/B/C/D/E
32-BIT CMOS ERROR DETECTION AND CORRECTION UNITMILITARY AND COMMERCIAL TEMPERATURE RANGES
PIN DESCRIPTIONS
Pin NameI/ODescription
DATA0–31I/O 32 bidirectional data lines provide input to the Data Input Latch and Diagnostic Latch and also receive output from
the Data Output Latch. DATA
CB0–7IEight check bit input lines input check bits for error detection and also used to input syndrome bits for error
correction in 64-bit applications.
LEINILatch Enable is for the Data Input Latch. Controls latching of the input data. Data Input Latch and Check Bit Input
Latch are latched to their previous state when LOW. When HIGH, the Data Input Latch and Check Bit Input Latch
follow the input data and input check bits.
LEOUT/
GENERATE
A multifunction pin which, when LOW, is in the Check Bit Generate Mode. In this mode, the device generates the
check bits or GENERATE partial check bits specific to the data in the Data Input Latch. The generated check bits
are placed on the SC outputs. Also, when LOW, the Data Out Latch is latched to its previous state.
When HIGH, the device is in the Detect or Correct Mode. In this mode, the device detects single and multiple
errors and generates syndrome bits based upon the contents of the Data Input Latch and Check Bit Input Latch.
In the Correct Mode, single bit errors are also automatically corrected and the corrected data is placed at the
inputs of the Data Output Latch. The syndrome result is placed on the SC outputs and indicates in a coded form
the number of errors and the specific bit-in-error. When HIGH, the Data Output Latch follows the output of the
Data Input Latch as modified by the correction logic network. In Correct Mode, single bit errors are corrected by
the network before being loaded into the Data Output Latch. In Detect Mode, the contents of the Data Input Latch
are passed through the correction network unchanged into the Data Output Latch. The Data Output Latch is
disabled, with its contents unchanged, if the EDC is in the Generate Mode.
SC0–7OSyndrome Check Bit outputs. Eight outputs which hold the check bits and partial check bits when the EDC is in
the Generate Mode and will hold the syndrome/partial syndrome bits when the device is in the Detect or Correct
modes. All are 3-state outputs.
OE
SC
IOutput Enable—Syndrome Check Bits. In the HIGH condition, the SC outputs are in the high impedance state.
When LOW, all SC output lines are enabled.
ERROR
OIn the Detect or Correct Mode, this output will go LOW if one or more data or check bits contain an error. When
HIGH, no errors have been detected. This pin is forced HIGH in the Generate Mode.
MULTERROR
OIn the Detect or Correct Mode, this output will go LOW if two or more bit errors have been detected. A HIGH level
indicates that either one or no errors have been detected. This pin is forced HIGH in the Generate Mode.
CORRECTIThe correct input which, when HIGH, allows the correction network to correct any single-bit error in the Data Input
Latch (by complementing the bit-in-error) before putting it into the Data Output Latch. When LOW, the device will
drive data directly from the Data Input Latch to the Data Output Latch without correction.
OE
BYTE0–3IOutput Enable—Bytes 0, 1, 2, 3. Data Output Latch. Control the three-state output buffers for each of the four
bytes of the Data Output Latch. When LOW, they enable the output buffer of the Data Output Latch. When HIGH,
they force the Data Output Latch buffer into the high impedance mode. One byte of the Data Output Latch is
easily activated by separately selecting the four enable lines.
DIAG
MODE
1,0
ISelect the proper diagnostic mode. They control the initialization, diagnostic and normal operation of the EDC.
CODE ID1,0IThese two code identification inputs identify the size of the total data word to be processed. The two allowable
data word sizes are 32 and 64 bits and their respective modified Hamming Codes are designated 32/39 and
64/72. Special CODE ID
and CORRECT are to be taken from the Diagnostic Latch rather than from the input control lines.
LEDIAGIThis is the Latch Enable for the Diagnostic Latch. When HIGH, the Diagnostic Latch follows the 32-bit data on the
input lines. When LOW, the outputs of the Diagnostic Latch are latched to their previous states. The Diagnostic
Latch holds diagnostic check bits and internal control signals for CODE ID
0 is the LSB; DATA31 is the MSB.
1,0, input 01 is also used to instruct the EDC that the signals CODE ID1,0, DIAG MODE1,0
1,0, DIAG MODE1,0 and CORRECT.
2584 tbl 01
11.65
IDT49C460/A/B/C/D/E
32-BIT CMOS ERROR DETECTION AND CORRECTION UNITMILITARY AND COMMERCIAL TEMPERATURE RANGES
EDC ARCHITECTURE SUMMARY
The IDT49C460s are high-performance cascadable EDCs
used for check bit generation, error detection, error correction
and diagnostics. The function blocks for this 32-bit device
consist of the following:
• Data Input Latch
• Check Bit Input Latch
• Check Bit Generation Logic
• Syndrome Generation Logic
• Error Detection Logic
• Error Correction Logic
• Data Output Latch
• Diagnostic Latch
• Control Logic
DATA INPUT/OUTPUT LATCH
The Latch Enable Input, LEIN, controls the loading of 32 bits
of data to the Data In Latch. The data from the DATA lines can
be loaded in the Diagnostic Latch under control of the
Diagnostic Latch Enable, LEDIAG, giving check bit information
in one byte and control information in another byte. The
Diagnostic Latch is used in the Internal Control Mode or in one
of the diagnostic modes. The Data Output Latch has buffers
that place data on the DATA lines. These buffers are split into
four 8-bit buffers, each having their own output enable controls. This feature facilitates byte read and byte modify
operations.
CHECK BIT GENERATION LOGIC
This generates the appropriate check bits for the 32 bits of
data in the Data Input Latch. The modified Hamming Code is
the basis for generating the proper check bits.
SYNDROME GENERATION LOGIC
In both the Detect and Correct modes, this logic does a
comparison on the check bits read from memory against the
newly generated set of check bits produced for the data read
in from memory. Matching sets of check bits mean no error
was detected. If there is a mismatch, one or more of the data
or check bits is in error. Syndrome bits are produced by an
exclusive-OR of the two sets of check bits. Identical sets of
check bits mean the syndrome bits will be all zeros. If an error
results, the syndrome bits can be decoded to determine the
number of errors and the specific bit-in-error.
ERROR DETECTION LOGIC
This part of the device decodes the syndrome bits
generated by the Syndrome Generation Logic. With no errors
in either the input data or check bits, both the
MULTERROR
error is detected.
if two or more errors are detected.
outputs are HIGH. ERROR will go low if one
MULTERROR
and
ERROR
ERROR
will both go low
and
ERROR CORRECTION LOGIC
In single error cases, this logic complements (corrects) the
single data bit-in-error. This corrected data is loaded into the
Data Output Latch, which can then be read onto the bidirectional data lines. If the error is resulting from one of the check
bits, the correction logic does not place corrected check bits
on the syndrome/check bit outputs. If the corrected check bits
are needed, the EDC must be switched to the Generate Mode.
DATA OUTPUT LATCH AND OUTPUT BUFFERS
The Data Output Latch is used for storing the result of an
error correction operation. The latch is loaded from the
correction logic under control of the Data Output Latch Enable, LEOUT. The Data Output Latch may also be directly
loaded from the Data Input Latch in the PASSTHRU mode.
The Data Output Latch buffer is split into 4 individual buffers
which can be enabled by
the bidirectional data lines.
OE
0–3 separately for reading onto
DIAGNOSTIC LATCH
The diagnostic latch is loadable under control of the
Diagnostic Latch Enable, LEDIAG, from the bidirectional data
lines. Check bit information is contained in one byte while the
other byte contains the control information. The Diagnostic
Latch is used for driving the device when in the Internal Control
Mode, or for supplying check bits when in one of the diagnostic
modes.
CONTROL LOGIC
Specifies in which mode the device will be operating in.
Normal operation is when the control logic is driven by external
control inputs. In the Internal Control Mode, the control signals
are read from the Diagnostic Latch. Since LEOUT and
GENERATE
(LEOUT from high to low) of the Data Output Latch causes the
EDC to go into the Generate Mode.
are controlled by the same pin, the latching action
11.66
IDT49C460/A/B/C/D/E
32-BIT CMOS ERROR DETECTION AND CORRECTION UNITMILITARY AND COMMERCIAL TEMPERATURE RANGES
DETAILED PRODUCT DESCRIPTION
The IDT49C460 EDC units contain the logic necessary to
generate check bits on 32 bits of data input according to a
modified Hamming Code. The EDC can compare internally
generated check bits against those read with the 32-bit data
to allow correction of any single bit data error and detection of
all double (and some triple) bit errors. The IDT49C460s can
be used for 32-bit data words (7 check bits) and 64-bit (8 check
bits) data words.
WORD SIZE SELECTION
The two code identification pins, CODE ID1, 0, are used to
determine the data word size that is 32 or 64 bits. They also
select the Internal Control Mode. Table 4 defines all possible
slice identification codes.
CHECK AND SYNDROME BITS
The IDT49C460s provide either check bits or syndrome
bits on the three-state output pins, SC0–7. Check bits are
generated from a combination of the Data Input bits, while
syndrome bits are an exclusive-OR of the check bits generated from read data with the read check bits stored with the
data. Syndrome bits can be decoded to determine the single
bit in error or that a double (some triple) error was detected.
The check bits are labeled:
Correct
Diag
Mode
0
Diag
Mode
Diagnostic Mode Selected
1
X00Non-diagnostic Mode. Normal
EDC function in this mode.
X01Diagnostic Generate. The con
tents of the Diagnostic Latch are
substituted for the normally
generated check bits when in the
Generate Mode. The EDC
functions normally in the Detect or
Correct modes.
0/110Diagnostic Detect/Correct. In
either mode, the contents of the
Diagnostic Latch are substituted
for the check bits normally read
from the Check Bit Input Latch.
The EDC functions normally in the
Generate Mode.
111Initialize. The Data Input Latch
outputs are forced to zeros and
latched upon removal of Initialize
Mode.
011PASSTHRU.
2584 tbl 02
Table 2. Diagnostic Mode Control
C
0, C1, C2, C3, C4, C5, C6for the 32-bit configuration
C0, C1, C2, C3, C4, C5, C6, C7for the 64-bit configuration
Syndrome bits are similarly labeled S
Operating
Mode
Generate0
Detect0
Correct0
PASSTHRU1110DATAIN LatchCheck Bit LatchHigh
Diagnostic
InternalCODE ID1,0 = 01 (Control Signals CODE ID1,0, DIAG MODE1,0 and CORRECT are taken from Diagnostic Latch.)
NOTES:
1. In Generate Mode, data is read into the EDC unit and the check bits are generated. The same data is written to memory along with the check bits. Since
the DATA
2. Error Dep (Error Dependent):
for no errors.
3. LE
OUT Latch is not used in the Generate Mode, LEOUT (being LOW since it is tied to Generate) does not affect the writing of check bits.
IN is LOW.
DM
0DM1GenerateCorrectDATAOUT Latch
0
1
0
0
0
1
0
0
1
010X—Check Bits from Diagnostic LatchHigh
ERROR
0 through S7.
SC
(
OE
SC = LOW)
OE
0XLEOUT = LOW
(1)
Check Bits Generated from
DATA
10DATAIN LatchSyndrome Bits DATAIN/
Check Bit Latch
11DATAIN Latch w/
Single Bit Correction
Syndrome Bits DATAIN/
Check Bit Latch
Diagnostic Latch
Syndrome Bits DATAIN/
Single Bit Correction
Set to 0000
will be low for single or multiple errors, with
Table 3. IDT49C460 Operating Modes
(3)
MULT ERROR
Diagnostic Latch
low for double or multiple errors. Both signals are high
ERROR
0–7
ERROR
MULT ERROR
MULT ERROR
High
IN Latch
Error Dep
(2)
Error Dep
Error Dep
Error Dep
——
2584 tbl 03
11.67
IDT49C460/A/B/C/D/E
OE
32-BIT CMOS ERROR DETECTION AND CORRECTION UNITMILITARY AND COMMERCIAL TEMPERATURE RANGES
OPERATING MODE SELECTION
Tables 2 and 3 describe the nine operating modes of the
IDT49C460s. The Diagnostic Mode pins — DIAG MODE0,1
— define four basic areas of operation.
CORRECT further divide operation into 8 functions, with
CODE ID1,0 defining the ninth mode as the Internal Mode.
Generate Mode is used to display the check bits on the
outputs SC0–7. The Diagnostic Generate Mode displays
check bits as stored in the Diagnostic Latch.
Detect Mode provides an indication of errors or multiple
errors on the outputs
ERROR
and
MULT ERROR
errors are not corrected in this mode. The syndrome bits are
provided on the outputs SC0–7. For the Diagnostic Detect
Mode, the syndrome bits are generated by comparing the
internally generated check bits from the Data In Latch with
check bits stored in the diagnostic latch rather than with the
check bit latch contents.
Correct Mode is similar to the Detect Mode except that
single bit errors will be complemented (corrected) and made
available as input to the Data Out Latches. Again, the
Diagnostic Correct Mode will correct single bit errors as
determined by syndrome bits generated from the data input
and contents of the diagnostic latches.
The Initialize Mode provides check bits for all zero bit data.
Data Input Latches are set, latched to a logic zero and made
available as input to the Data Out Latches.
The Internal Mode disables the external control pins DIAG
MODE
0,1 and CORRECT to be defined by the Diagnostic
Latch. Even CODE ID1,0, although externally set to the 01
code, can be redefined from the Diagnostic Latch data.
IDT49C460/A/B/C/D/E
32-BIT CMOS ERROR DETECTION AND CORRECTION UNITMILITARY AND COMMERCIAL TEMPERATURE RANGES
32-BIT DATA WORD CONFIGURATION
A single IDT49C460 EDC unit, connected as shown in
Figure 1, provides all the logic needed for single bit error
correction and double bit error detection of a 32-bit data field.
The identification code indicates 7 check bits are required.
The CB7 pin should be HIGH.
Figure 3 indicates the 39-bit data format for two bytes of
data and 7 check bits. Table 3 describes the operating mode
available.
Table 6 indicates the data bits participating in the check bit
generation. For example, check bit C0 is the exclusive-OR
function of the 16 data input bits marked with an X. Check bits
are generated and output in the Generate and Initialization
Mode. Check bits from the respective latch are passed,
unchanged, in the PASSTHRU or Diagnostic Generate Mode.
Syndrome bits are generated by an exclusive-OR or the
BIT 0CB0 DIAGNOSTIC
BIT 1CB1 DIAGNOSTIC
BIT 2CB2 DIAGNOSTIC
BIT 3CB3 DIAGNOSTIC
BIT 4CB4 DIAGNOSTIC
BIT 5CB5 DIAGNOSTIC
BIT 6CB6 DIAGNOSTIC
BIT 7CB7 DIAGNOSTIC
BIT 8CODE ID
BIT 9CODE ID
BIT 10DIAG MODE
BIT 11DIAG MODE
BIT 12CORRECT
BIT 13–31DON'T CARE
Table 5. 32-Bit Diagnostic Latch Coding Format
generated check bits with the read check bits. For example,
S
n is the XOR of check bits Cn from those read with those
generated. Table 7 indicates the decoding of the seven
syndrome bits to identify the bit-in-error for a single bit error,
or whether a double or triple bit error was detected. The all
zero case indicates no errors detected.
In the Correct Mode, the syndrome bits are used to
complement (correct) single bit errors in the data bits. For
double or multiple error detection, the data available as input
to the Data Out Latch is not defined.
Table 5 defines the bit definition for the Diagnostic Latch.
As defined in Table 3, several modes will use the diagnostic
check bits to determine syndrome bits or to pass as check bits
to the SC0–7 outputs. The Internal Mode substitutes the
indicated bit position for the external control signals.
Two IDT49C460 EDC units, connected as shown in Figure
2, provide all the logic needed for single bit error detection and
double bit error detection of a 64-bit data field. Table 4 gives
the CODE ID1,0 values needed for distinguishing the upper 32
bits from the lower 32 bits. Valid syndrome, check bits and the
ERROR
CODE ID1,0 = 11. Control signals not indicated are connected
to both units in parallel. The EDC with the CODE ID1,0 = 10
has the
from the EDC with CODE ID1,0 = 11 and also controls the
check bit buffers from memory.
numbered inputs of the EDC unit with CODE ID1,0 = 10, while
Data In bits 32 through 63 are connected to Data Inputs 0 to
31, respectively, for the EDC unit with CODE ID1,0 = 11.
and 8 check bits. Check bits are input to the EDC unit with
CODE ID1,0 = 10 through a three-state buffer unit such as the
IDT74FCT244. Correction of single bit errors of the 64-bit
configuration requires a feedback of syndrome bits from the
upper EDC unit to the lower EDC unit. The MUX shown on the
functional block diagram is used to select the CB
the syndrome bits rather than internally generated syndrome
bits.
and
MULT ERROR
OE
SC grounded. The OESC selects the syndrome bits
signals come from the IC with the
Data In bits 0 through 31 are connected to the same
Figure 4 indicates the 72-bit data format of 8 bytes of data
0–7 pins as
Table 3 describes the operating modes available for the 64/
72 configuration.
Table 11 indicates the data bits participating in the check bit
generation. For example, check bit C0 is the exclusive-OR
function of the 32 data input bits marked with an X. Check bits
are generated and output in the Generate and Initialization
modes. Check bits are passed as stored in the PASSTHRU or
Diagnostic Generate modes.
Syndrome bits are generated by an exclusive-OR of the
generated check bits with the read check bits. For example,
Sn is the XOR of check bits Cn from those read with those
generated. Table 9 indicates the decoding of the 8 syndrome
bits to determine the bit in error for a single bit error or whether
a double or triple bit error was detected. The all zero case
indicates no errors detected.
In the Correct Mode, the syndrome bits are used to
complement (correct) single bit errors in the data bits. For
double or multiple error detection, the data available as input
to the Data Out Latch is not defined.
Tables 8A and 8B define the bit definition for the Diagnostic
Latch. As defined in Table 3, several modes will use the
Diagnostic Check Bits to determine syndrome bits or to pass
as check bits to the SC
0–7 outputs. The Internal Mode sub-
stitutes the indicated bit position for the external control
signals.
Performance data is provided in Table 10, relating a single
IDT49C460 EDC with the two cascaded units of Figure 2. As
indicated, a summation of propagation delays is required from
the cascading arrangement of EDC units.