COM20022, FUNCTIONAL REV. B ANOMALY
Rev Number: B
W16 bit
Description of the Problem
When W16 bit is set to 1 (one) at COM20022, the Address pointer is incremented (+2)
automatically after access the Data register even if AUTOINC bit is 0 (zero). Normally, the
Address pointer is NOT incremented after access of the Data register when AUTOINC bit is 0
(zero).
W16 bit is located on BIT7 of the BUS-CONTROL Reg.
W16=0: Disable 16 bit access to Data Reg. (8 bit access only)
W16=1: Enable 16 bit access to Data Reg.
AUTOINC bit is located on BIT6 of the Address Pointer High Reg.
AUTOINC=0: Address pointer is NOT incremented after access the Data register
AUTOINC=1: Address pointer is incremented automatically after access the Data register
The problem occurs at continuous access to same address RAM data if AUTOINC bit is 0. In
this case, the RAM address is incremented after access RAM data (Data Reg.) But customers
never expect to increment the address pointer when AUTOINC=0 (zero). This problem will
occur when customers use existing software of COM20020B.
This problem never occur when W16=0 (zero). It occurs when W16=1 (one).
End User Implications
Customers will get wrong data with continuous querying of the same address RAM when
AUTOINC is set to 0 (zero).
Solution
Need to modify the software. Customers need to set Address pointer before every access to
the same address RAM data during continuous access with W16=1 and AUTOINC=0 of
COM20022 Rev B.
87