STR911FAW47 STMicroelectronics, STR911FAW47 Datasheet - Page 13

no-image

STR911FAW47

Manufacturer Part Number
STR911FAW47
Description
ARM966E-S™ 16/32-Bit Flash MCU with Ethernet, USB, CAN, AC motor control, 4 timers, ADC, RTC, DMA
Manufacturer
STMicroelectronics
Datasheet

Specifications of STR911FAW47

Arm966e-s Risc Core
Harvard architecture, 5-stage pipeline, Tightly-Coupled Memories (SRAM and Flash)

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
STR911FAW47X6
Manufacturer:
STMicroelectronics
Quantity:
10 000
STR91xFAxxx
3.4.2
3.4.3
Branch cache (BC)
When instruction addresses are not sequential, such as a program branch situation, the
PFQ would have to flush and reload which would cause the CPU to stall if no BC were
present. Before reloading, the PFQ checks the BC to see if it contains the desired target
branch address. The BC contains up to fifteen of the most recently taken branch addresses
and the first eight instructions associated with each of these branches. This check is
extremely fast, checking all fifteen BC entries simultaneously for a branch address match
(cache hit). If there is a hit, the BC rapidly supplies the instruction and reduces the CPU
stall. This gives the PFQ time to start pre-fetching again while the CPU consumes these
eight instructions from the BC. The advantage here is that program loops (very common
with embedded control applications) run very fast if the address of the loops are contained
in the BC.
In addition, there is a 16th branch cache entry that is dedicated to the Vectored Interrupt
Controller (VIC) to further reduce interrupt latency by eliminating the stall latency typically
imposed by fetching the instruction that reads the interrupt vector address from the VIC.
Management of literals
Typical ARM architecture and compilers do not place literals (data constants) sequentially in
Flash memory with the instructions that use them, but instead the literals are placed at some
other address which looks like a program branch from the PFQ’s point of view. The
STR91xFA implementation of the ARM966E-S core has special circuitry to prevent flushing
the PFQ when literals are encountered in program flow to keep performance at a maximum.
Doc ID 13495 Rev 6
Functional overview
13/102

Related parts for STR911FAW47