
8201, 8202, 8203, 8204 Acceleration Processor Data Sheet, DS-0157-05
Page 35
Exar Confidential
2.1.4
Data Integrity Model for Encode Operations
This section describes the data integrity model for encode operations using the parity, CRC,
ECC and engine real time verification features described in the previous sections.
Figure 2-6 illustrates the model described below.
Raw data with a PCIe standard CRC (ECRC) from the host enters the 820x over the PCIe
bus 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, generates a CRC, and sends the raw data and CRC
to the Compression engine. The Compression engine compresses the data and CRC,
performs real time verification by decompressing the data and verifying the CRC, and sends
the data to the Pad engine. The Pad engine adds padding to the data stream, and sends the
padded data to the encryption engine (the Pad engine does not perform any real time
verification). The Encryption engine encrypts the padded compressed data, performs real
time verification, and sends the result to the Hash engine. The Hash engine calculates the
MAC and performs real time verification on the hash result.
An 8-bit ECC is added to the output data of the Encryption engine 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 transformed data
is sent to the host.
Figure 2-5. Hash Engine Real Time Verification