EP9315-IB Cirrus Logic Inc, EP9315-IB Datasheet - Page 13
![IC ARM920T MCU 200MHZ 352-PBGA](/photos/12/23/122388/ep9315-ib_sml.jpg)
EP9315-IB
Manufacturer Part Number
EP9315-IB
Description
IC ARM920T MCU 200MHZ 352-PBGA
Manufacturer
Cirrus Logic Inc
Series
EP9r
Specifications of EP9315-IB
Core Processor
ARM9
Core Size
16/32-Bit
Speed
200MHz
Connectivity
EBI/EMI, EIDE, Ethernet, I²C, IrDA, Keypad/Touchscreen, PCMCIA, SPI, UART/USART, USB
Peripherals
AC'97, DMA, I²:S, LCD, LED, MaverickKey, POR, PWM, WDT
Number Of I /o
16
Program Memory Type
ROMless
Ram Size
32K x 8
Voltage - Supply (vcc/vdd)
1.65 V ~ 3.6 V
Data Converters
A/D 8x12b
Oscillator Type
External
Operating Temperature
-40°C ~ 85°C
Package / Case
352-BGA
Processor Series
EP93xx
Core
ARM920T
Data Bus Width
32 bit
3rd Party Development Tools
MDK-ARM, RL-ARM, ULINK2
Development Tools By Supplier
EDB9315A-Z
For Use With
598-1144 - KIT DEVELOPMENT EP9315 ARM9
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
Eeprom Size
-
Program Memory Size
-
Lead Free Status / Rohs Status
No
Other names
598-1262
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
EP9315-IBZ
Manufacturer:
CIRRUS
Quantity:
13
Company:
Part Number:
EP9315-IBZ
Manufacturer:
CIRRUS
Quantity:
347
ER638E2B
Workaround
A complete software workaround requires ensuring that data aborts do not occur due to any instruction
immediately preceding a coprocessor instruction that writes to an accumulator. The only way to ensure this
is to not allow memory operations immediately preceding these types of instructions. For example, the fixes
for the instructions above are:
Description 9
The coprocessor will erroneously update an accumulator if the coprocessor instruction that updates an
accumulator is canceled and is followed by a coprocessor instruction that is not a data path instruction. This
error will occur under the following conditions:
1) The first instruction:
2) The second instruction is not a coprocessor data path instruction. Coprocessor data path instructions
For example:
If the first instruction should not execute or is interrupted, it may incorrectly update a2.
Workaround
Because any instruction may be canceled due to an asynchronous interrupt, the most general software
workaround is to insure that no instruction that updates an accumulator is followed immediately by a non-
data path coprocessor instruction. For example, the fix for the instruction sequence above is:
Description 10
An instruction that writes a result to an accumulator
when the coprocessor is operating in serialized mode
For example, the following sequence of instructions may corrupt a2 if the second instruction is not executed.
Workaround
The only workaround for this issue is to operate the coprocessor in unserialized mode.
str
nop
cfmadda32
cfmva64ne
cfmvr64l
cfmva64ne
nop
cfmvr64l
cfmadda32
cfmadda32ne
include any instruction that does not move data to or from memory or to or from the ARM registers.
- must update a coprocessor accumulator
- does not execute
a0, a2, c0, c1
a2, c3, c0, c1
1
r7, [r0, #0x1d]
a0, a2, c0, c1
a2, c3
r4, c15
a2, c3
r4, c15
.
3
.
3
; assume this causes a data abort
may cause corruption of any of the four accumulators
2
.
13