TC1784
On-Chip System Buses and Bus Bridges
User´s Manual
4-28
V1.1, 2011-05
Buses, V1.9
4.6.1.2
Starvation Prevention
Starvation prevention is a feature of the SBCU that can take care that even requesting
low priority master agents will be granted after a period, where the period length can be
controlled by SBCU control registers. Because the priority assignment of the SPB agents
is fixed, it is possible that a lower-priority bus requestor may never be granted the bus if
a higher-priority bus requestor continuously asks for, and receives, bus ownership. To
protect against bus starvation of lower-priority masters, the starvation prevention
mechanism of the SBCU will detect such cases and momentarily raise the priority of the
lower-priority requestor to the highest priority (above all other priorities), thereby
guaranteeing it access.
Starvation protection employs a counter that is decremented each time an arbitration is
performed on the connected FPI bus. The counter is re-loaded with the starvation period
value in the SBCU_CON.SPC bit field as long it is enabled SBCU_CON.SPE. When this
counter is counted down to zero, for each active bus request a request flag is stored in
the BCU. This flag is cleared automatically when a master is granted the bus.
When the next period is finished, an active request of a master from which the request
flag was set, a starvation event happened. This master will now be set to the highest
priority and will be granted service. If there are several masters to which this starvation
condition applies, they are served in the order of their hard-wired priority ranking.
If a master that is processing its transaction under starvation condition is retried, its
corresponding request flag is automatically again.
Starvation protection can be enabled and disabled through bit SBCU_CON.SPE. The
sample period of the counter is programmed through bit field SBCU_CON.SPC. SPC
should be set to a value at least greater than or equal to the number of masters. Its reset
value is 40
H
.
4.6.2
FPI Bus Error Handling
When an error occurs on an FPI Bus, its BCU captures and stores data about the
erroneous condition and generates a service request if enabled to do so. The error
conditions that force an error-capture are:
•
Error Acknowledge: An FPI Bus slave responds with an error to a transaction.
•
Un-implemented Address: No FPI Bus slave responds to a transaction request.
•
Time-out: A slave does not respond to a transaction request within a certain time
window. The number of bus clock cycles that can elapse until a bus time-out is
generated is defined by bit field SBCU_CON.TOUT.
When a transaction causes an error, the address and data phase signals of the
transaction causing the error are captured and stored in registers.
•
The Error Address Capture Register (SBCU_EADD) stores the 32-bit FPI Bus
address that has been captured during the erroneous FPI Bus transaction.
Summary of Contents for TC1784
Page 1: ...User s Manual V1 1 2011 05 Microcontrollers TC1784 32 Bit Single Chip Microcontroller ...
Page 3: ...User s Manual V1 1 2011 05 Microcontrollers TC1784 32 Bit Single Chip Microcontroller ...
Page 950: ...TC1784 Direct Memory Access Controller DMA User s Manual 11 132 V1 1 2011 05 DMA V3 03 ...
Page 1949: ...TC1784 General Purpose Timer Array GPTA v5 User s Manual 21 297 V1 1 2011 05 GPTA v5 V1 14 ...
Page 2350: ...w w w i n f i n e o n c o m Published by Infineon Technologies AG Doc_Number ...