background image

Specification Update

15

Intel

®

 80219 General Purpose PCI Processor

Core Errata

6.

Incorrect Decode of Unindexed Mode, Using Addressing Mode 5, Can 

Corrupt Protected Registers

Problem:

The instruction decoder incorrectly decodes the valid combination of P=0, U=1 and W=0, when 
using unindexed mode in addressing mode 5 (load and store coprocessor). In this case, the LDC or 
STC should produce consecutive address loads or stores, with no base update until the coprocessor 
signals that it has received enough data. Instead, the instruction gets separated into an LDR/STR 
and a CP access.

The LDR/STR gets decoded as a post-index address, updating the base register. Due to the 
decoding as post-index, the ‘option’ bits, normally reserved for the coprocessor in unindexed 
mode, become the 8-bit offset value used in the base register update calculation.

The implication is, that protected registers can be corrupted. This errata can cause the corruption of 
FIQ registers, R13-R14, in user and system modes when the LDC instruction is executed using 
unindexed addressing mode. It can also cause the corruption of FIQ registers, R8-R12, in any mode, 
when the LDC instruction is executed using unindexed addressing. The R13 register in debug mode 
may also be corrupted during an LDC in any mode. In the case of STC, only Rn is corrupted.

Unexpected memory accesses can also occur. In the case of an LDC, any memory location may be 
accessed, since the FIQ registers may be improperly used as the base register. In the case of an 
STC, the memory word located at Rn+4 is corrupted. This is the memory location immediately 
following the locations which should be modified by STC unindexed.

Workaround:

Do not use unindexed addressing in addressing mode 5 – Load and Store Coprocessor.

Status:

NoFix

.

7.

Load Immediately Following a DMM Flush Entry is Also Flushed

Problem:

A load that immediately follows a data memory management (DMM) flush entry command, that 
also hits the data TLB, is also flushed. Therefore, the instruction immediately following the flush, 
is also flushed from the data TLB.

Workaround:

All flush entry commands to the data TLB must be followed by two NOPs. The first ensures the 
erratum is not encountered, and the second ensures the speed path is not hit.

Status:

NoFix

.

8.

Trace Buffer Does Not Operate Below 1.3 V

Problem:

The trace buffer within the debug unit is not guaranteed to operate, due to voltage sensitivity, when 
the core voltage supply is below 1.3 V.

Workaround:

Make sure the voltage is above 1.3 V during debug.

Status:

NoFix

.

9.

Data Cache Unit Can Stall for a Single Cycle

Problem:

When the data cache unit retries an operation that is in the pending buffer, a single cycle stall 
occurs.

Workaround:

No workaround. This is a performance issue only.

Status:

NoFix

.

Summary of Contents for 80219

Page 1: ...ice The Intel 80219 General Purpose PCI Processor 80219 may contain design defects or errors known as errata that may cause the product to deviate from published specifications Current characterized e...

Page 2: ...Current characterized errata are available on request Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order Copies of docu...

Page 3: ...eral Purpose PCI Processor Contents Revision History 5 Preface 6 Summary Table of Changes 7 Identification Information 11 Core Errata 13 Non Core Errata 20 Specification Changes 24 Specification Clari...

Page 4: ...4 Specification Update Intel 80219 General Purpose PCI Processor This Page Left Intentionally Blank...

Page 5: ...ification Update 5 Intel 80219 General Purpose PCI Processor Revision History Revision History Date Version Description July 2004 002 Added Specification Clarification 7 November 2003 001 Initial Rele...

Page 6: ...shed specifications These changes will be incorporated in any new release of the specification Specification Clarifications describe a specification in greater detail or further highlight a specificat...

Page 7: ...es the following notations Codes Used in Summary Table Stepping X Errata exists in the stepping indicated Specification Change or Clarification that applies to this stepping No mark or Blank box This...

Page 8: ...rupt Protected Registers 7 X 15 NoFix Load Immediately Following a DMM Flush Entry is Also Flushed 8 X 15 NoFix Trace Buffer Does Not Operate Below 1 3 V 9 X 15 NoFix Data Cache Unit Can Stall for a S...

Page 9: ...I Mode 3 X 21 NoFix MCU Pointers are Incorrect following a Restoration from a Power Fail 4 X 21 NoFix PMU Does Not Account for when the Arbiter Deasserts GNT One Cycle before FRAME 5 X 21 NoFix Lost D...

Page 10: ...al Bus Specification Revision 2 3 2 X 26 NoFix Modifications to the Hot Debug procedure are necessary for the Intel 80219 general purpose PCI processor when flat memory mapping is not used Virtual Add...

Page 11: ...date 11 Intel 80219 General Purpose PCI Processor Identification Information Identification Information Markings Figure 1 Topside Markings Intel 80219 General Purpose PCI Processor SLxxx M 2001 FPO FW...

Page 12: ...Notes A 0 A 0 A 0 A 0 FW80219M400 FW80219M600 FW80219M400 FW80219M600 Q690 Q691 SL7CL SL7CM 3 3 3 3 3 3 3 3 400 600 400 600 Samples Samples Production Material Production Material Device ID Registers...

Page 13: ...1 description of the SAMPLE PRELOAD instruction states that When the SAMPLE PRELOAD instruction is selected the state of all signals flowing through system pins input or output shall be loaded into t...

Page 14: ...clock may read the bit before it updates in the register thus reading the old value Workaround The JTAG clock should be slower than the core clock Status NoFix 5 Extra Circuitry Is Not JTAG Boundary S...

Page 15: ...n the case of STC only Rn is corrupted Unexpected memory accesses can also occur In the case of an LDC any memory location may be accessed since the FIQ registers may be improperly used as the base re...

Page 16: ...into the cache at address A 2 another master externally modifies address A 3 a core store instruction attempts to modify A hits the cache aborts because of MMU permissions and is backed out of the cac...

Page 17: ...so be monitored using performance monitoring event 0x6 during the same time period as event 0x1 The mispredicted branch number can then be subtracted from the instruction cache stall number generated...

Page 18: ...Instead an unpredictable value is returned Workaround No workaround Status NoFix 14 Disabling and re enabling the MMU can hang the core or cause it to execute the wrong code Problem When the MMU is d...

Page 19: ...parallel JTAG registers incorrectly require an extra TCK rising edge to make the update visible Therefore operations like hold reset JTAG break and vector traps require either an extra TCK cycle by go...

Page 20: ...enough data to get to the next QWORD boundary It does not do this Instead it returns invalid data in the high DWORD of the second QWORD data from a previous fetch and the transaction is corrupted This...

Page 21: ...biter deasserts GNT in PCI X mode the requestor can still start a transaction for one cycle due to allowed pipelining In this situation the PMU does not properly detect the FRAME as the ATU and contin...

Page 22: ...or more information on the MTTR1 function Implication In the case of the MCU internal bus target this problem is compounded by the many internal bus retries that are issued by the MCU when under heavi...

Page 23: ...rature manufacturing testing 80219 silicon is subjected to a 0 C environment for an extended period of time During this time the Vih test is implemented and the junction temperature is at or near the...

Page 24: ...control the IDSEL to the I O device External circuitry is no longer required other than a simple switch The output function of the P_BMI signal is controlled by the GPIO Output Data Register GPOD Bit...

Page 25: ...r I O device configuration and resource falls to the 80219 firmware Figure 2 Intel 80219 General Purpose PCI Processor P_BMI Signal Implementation for Intel 80219 General Purpose PCI Processor B 0 B 1...

Page 26: ...Hot Debug procedure are necessary for the Intel 80219 general purpose PCI processor when flat memory mapping is not used Virtual Address Physical Address Issue The Intel 80219 general purpose PCI proc...

Page 27: ...ically during boot up to determine the total amount o SDRAM installed Instead either use the Serial Presence Detect SPD mechanism or have it hard coded in firmware SPD is used to read via I2C from a n...

Page 28: ...might fetch the remaining 92 byes from 0x4000 0x405C Both buffers have the ability to access the internal bus without preference i e either buffer may gain access first Therefore it is possible the 9...

Page 29: ...Specification Update 29 Intel 80219 General Purpose PCI Processor Documentation Changes Documentation Changes None for this revision of this specification update...

Page 30: ...30 Specification Update Intel 80219 General Purpose PCI Processor Documentation Changes This Page Left Intentionally Blank...

Reviews: