74F401 CRC Generator/Checker
April 1988
Revised August 1999
74F401
CRC Generator/Checker
General Description
The 74F401 Cycle Redundancy Check (CRC) Generator/
Checker provides an advanced tool for implementing the
most widely used error detection scheme in serial digital
data handling systems. A 3-bit control input selects one-of-
eight generator polynomials. The list of polynomials
includes CRC-16 and CRC-CCITT as well as their recipro-
cals (reverse polynomials). Automatic right justification is
incorporated for polynomials of degree less than 16. Sepa-
rate clear and preset inputs are provided for floppy disk
and other applications. The Error output indicates whether
or not a transmission error has occurred. Another control
input inhibits feedback during check word transmission.
The 74F401 is fully compatible with all TTL families.
Features
s
Eight selectable polynomials
s
Error indicator
s
Separate preset and clear controls
s
Automatic right justification
s
Fully compatible with all TTL logic families
s
14-pin package
s
9401 equivalent
s
Typical applications:
Floppy and other disk storage systems
Digital cassette and cartridge systems
Data communication systems
Ordering Code:
Order Number
74F401SC
74F401PC
Package Number
M14A
N14A
Package Description
14-Lead Small Outline Integrated Circuit (SOIC), JEDEC MS-120, 0.150 Narrow
14-Lead Plastic Dual-In-Line Package (PDIP), JEDEC MS-001, 0.300 Wide
Devices also available in Tape and Reel. Specify by appending the suffix letter “X” to the ordering code.
Logic Symbol
Connection Diagram
© 1999 Fairchild Semiconductor Corporation
DS009534
www.fairchildsemi.com
74F401
Unit Loading/Fan Out
Pin Names
S
0
–S
2
D
CP
CWE
P
MR
Q
ER
Description
Polynomial Select Inputs
Data Input
Clock Input (Operates on HIGH-to-LOW Transition)
Check Word Enable Input
Preset (Active LOW) Input
Master Reset (Active HIGH) Input
Data Output
Error Output
U.L.
HIGH/LOW
1.0/1.0
1.0/1.0
1.0/1.0
1.0/1.0
1.0/1.0
1.0/1.0
50/33.3
50/33.3
Input I
IH
/I
IL
Output I
OH
/I
OL
20
µA/−0.6
mA
20
µA/−0.6
mA
20
µA/−0.6
mA
20
µA/−0.6
mA
20
µA/−0.6
mA
20
µA/−0.6
mA
−1
mA/20 mA
−1
mA/20 mA
Functional Description
The 74F401 is a 16-bit programmable device which oper-
ates on serial data streams and provides a means of
detecting transmission errors. Cyclic encoding and decod-
ing schemes for error detection are based on polynomial
manipulation in modulo arithmetic. For encoding, the data
stream (message polynomial) is divided by a selected poly-
nomial. This division results in a remainder which is
appended to the message as check bits. For error check-
ing, the bit stream containing both data and check bits is
divided by the same selected polynomial. If there are no
detectable errors, this division results in a zero remainder.
Although it is possible to choose many generating polyno-
mials of a given degree, standards exist that specify a
small number of useful polynomials. The 74F401 imple-
ments the polynomials listed in Table 1 by applying the
appropriate logic levels to the select pins S
0,
S
1
and S
2
.
The 74F401 consists of a 16-bit register, a Read Only
Memory (ROM) and associated control circuitry as shown
in the block diagram. The polynomial control code pre-
sented at inputs S
0
, S
1
and S
2
is decoded by the ROM,
selecting the desired polynomial by establishing shift mode
operation on the register with Exclusive OR gates at appro-
priate inputs. To generate the check bits, the data stream is
entered via the Data inputs (D), using the HIGH-to-LOW
transition of the Clock input (CP). This data is gated with
the most significant output (Q) of the register, and controls
the Exclusive OR gates Figure 1. The Check Word Enable
(CWE) must be held HIGH while the data is being entered.
After the last data bit is entered, the CWE is brought LOW
and the check bits are shifted out of the register and
appended to the data bits using external gating Figure 2.
To check an incoming message for errors, both the data
and check bits are entered through the D input with the
CWE input held HIGH. The 74F401 is not in the data path,
but only monitors the message. The Error Output becomes
valid after the last check bit has been entered into the
74F401 by a HIGH-to-LOW transition of CP. If no detect-
able errors have occurred during the data transmission, the
resultant internal register bits are all LOW and the Error
Output (ER) is LOW. If a detectable error has occurred, ER
is HIGH.
A HIGH on the Master Reset input (MR) asynchronously
clears the register. A LOW on the Preset input (P) asyn-
chronously sets the entire register if the control code inputs
specify a 16-bit polynomial; in the case of 12- or 8-bit check
polynomials only the most significant 12 or 8 register bits
are set and the remaining bits are cleared.
TABLE 1.
Select Code
S
2
L
L
L
L
H
H
H
H
S
1
L
L
H
H
L
L
H
H
S
0
L
H
L
H
L
H
L
H
X
X
X
16
16
12
8
Polynomial
X
16
+
X
15
+
X
2
+
1
+
X
+
+
14
Remarks
CRC-16
CRC-16 REVERSE
+
X
+
1
+
+
X
13
X
3
5
X
15
X
11
7
+
4
X
7
+
X
4
+
X
2
+
X
1
+
1
CRC-12
LRC-8
+
X
2
+
X
+
1
X
+
X
+
X
+
X
+
X
+
1
X
8
+
1
X
X
16
16
+
X
12
11
+
X
5
4
+
1
CRC-CCITT
CRC-CCITT REVERSE
+
X
+
X
+
1
www.fairchildsemi.com
2
74F401
Absolute Maximum Ratings
(Note 4)
Storage Temperature
Ambient Temperature under Bias
Junction Temperature under Bias
V
CC
Pin Potential to Ground Pin
Input Voltage (Note 5)
Input Current (Note 5)
Voltage Applied to Output
in HIGH State (with V
CC
=
0V)
Standard Output
3-STATE Output
Current Applied to Output
in LOW State (Max)
twice the rated I
OL
(mA)
−0.5V
to V
CC
−0.5V
to
+5.5V
−65°C
to
+150°C
−55°C
to
+125°C
−55°C
to
+150°C
−0.5V
to
+7.0V
−0.5V
to
+7.0V
−30
mA to
+5.0
mA
Recommended Operating
Conditions
Free Air Ambient Temperature
Supply Voltage
0°C to
+70°C
+4.5V
to
+5.5V
Note 4:
Absolute maximum ratings are values beyond which the device
may be damaged or have its useful life impaired. Functional operation
under these conditions is not implied.
Note 5:
Either voltage limit or current limit is sufficient to protect inputs.
DC Electrical Characteristics
Symbol
V
IH
V
IL
V
CD
V
OH
V
OL
I
IH
I
BVI
I
CEX
V
ID
I
OD
I
IL
I
OS
I
CCH
Parameter
Input HIGH Voltage
Input LOW Voltage
Input Clamp Diode Voltage
Output HIGH
Voltage
Output LOW
Voltage
Input HIGH Current
Input HIGH Current
Breakdown Test
Output HIGH
Leakage Current
Input Leakage
Test
Output Leakage
Circuit Current
Input LOW Current
Output Short-Circuit Current
Power Supply Current
−60
70
4.75
3.75
−0.6
−150
105
10% V
CC
5% V
CC
10% V
CC
2.5
2.7
0.5
5.0
7.0
50
Min
2.0
0.8
−1.2
Typ
Max
Units
V
V
V
V
V
µA
µA
µA
V
µA
mA
mA
mA
Min
Min
Min
Max
Max
Max
0.0
0.0
Max
Max
Max
V
CC
Conditions
Recognized as a HIGH Signal
Recognized as a LOW Signal
I
IN
= −18
mA
I
OH
= −1
mA
I
OH
= −1
mA
I
OL
=
20 mA
V
IN
=
2.7V
V
IN
=
7.0V
V
OUT
=
V
CC
I
ID
=
1.9
µA
All Other Pins Grounded
V
IOD
=
150 mV
All Other Pins Grounded
V
IN
=
0.5V
V
OUT
=
0V
V
O
=
HIGH
www.fairchildsemi.com
4