
8201, 8202, 8203, 8204 Acceleration Processor Data Sheet, DS-0157-05
Page 37
Exar Confidential
2.1.5
Data Integrity Model for Decode Operations
This section describes the data integrity model for decode operations using the parity, CRC,
ECC and engine real time verification features described in the previous sections.
Figure 2-7 illustrates the model described below.
Compressed, encrypted data with an embedded hash, and MAC arrive from the host over
the PCIe bus with the standard PCIe CRC (ECRC) and enters the 820x through the 820x
PCIe core. The PCIe core verifies the ECRC and generates parity before writing the data into
RAM and into the PCIe Inbound Manager (PIM). The PIM verifies the parity and generates
an 8-bit Error Correction Code (ECC8) and enters the data plus the ECC8 into the source
buffer. When a Channel Manager reads the data from the source buffer, it first verifies the
ECC, and the sends the encrypted, compression data with padding to the Hash engine and
the Encryption engine. The Hash engine uses the embedded MAC and performs real time
verification on the hash result. The Encryption engine decrypts the encrypted data and
sends the padded compressed data result to the Pad engine. The Pad engine removes the
padding from the data stream, and sends the compressed data to the compression engine
(the Pad engine does not perform any real time verification). The compression engine
decompresses the data and CRC, performs real time verification.
The CRC output from the compression engine is compared to the raw CRC, and, if verified,
stripped from the raw data. An 8-bit ECC is added to the raw data and written into the
result buffer. The Channel Manager reads the data from the result buffer, verifies the ECC,
and sends the data to the PCIe Outbound Manager (POM). The POM adds parity before
writing the data into the PCIe Core RAM. When data is read from the PCIe Core RAM by the
PIM, the parity is first verified and an ECRC is generated before the final raw data is sent to
the host.