MSC8113 Reference Manual, Rev. 0
25-62
Freescale Semiconductor
Ethernet Controller
25.17.2 FIFO Control and Status Registers
The registers discussed in this section allow you to change default settings in the FIFO that can
be used to optimize operation for performance or for safety. These default settings must be
changed carefully to avoid an underrun condition. Underrun is an error condition in which data is
not retrieved from external memory quickly enough, leaving the TX FIFO empty before the
complete frame is transmitted. Because different combinations of events, several of which you
determine, can lead to underrun, the Ethernet controller provides FIFO registers that allow you to
select the proper setting to tune the system and obtain the maximum performance with minimal
chance of underrun. The principal causes of underrun in the Ethernet controller are:
Misaligned data buffer addresses
Small data buffer sizes
Multiple insertion
Combinations of the above (that is, multiple insertions in small data payloads)
The minimum data buffer size should be 64 bytes, and data buffers should be 64-byte aligned.
Also, one insertion per frame should be used. You can deviate from these recommended values to
increase performance or use less memory, but unless the default values of some of the FIFO
registers are adjusted, the probability of an underrun may also increase. The FTXTHR (default is
256 entries or 1 KB) indicates the amount of data required to be in the FIFO before starting the
transmission of a frame. The FTXSTR (default is 128 entries or 512 bytes) indicates when the
amount of data in the FIFO is so low that the risk of underrun is extremely high. The FTXSTSHR
(default is 256 entries or 1 KB) contains the watermark level to be used for exiting the starve
state. These registers allow you to make the proper trade-off. If triggered, the starve mode, for
instance, automatically raises the priority of Ethernet controller fetches from memory.
FRXSTATR
contains the status bits of the Rx FIFO controller. This register is read/write by
software. This register is cleared at system reset.
FRXSTATR
FIFO Receive Status Register
Bit
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
—
Type
R
Reset
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Bit
—
PFS
—
FULL EMPTY
—
Type
R
R/W
R
R/W
Reset
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
Summary of Contents for MSC8113
Page 1: ...MSC8113 Reference Manual Tri Core 16 Bit Digital Signal Processor MSC8113RM Rev 0 May 2008 ...
Page 20: ...MSC8113 Reference Manual Rev 0 xx Freescale Semiconductor Contents ...
Page 28: ...MSC8113 Reference Manual Rev 0 xxviii Freescale Semiconductor ...
Page 56: ...MSC8113 Reference Manual Rev 0 1 28 Freescale Semiconductor MSC8113 Overview ...
Page 76: ...MSC8113 Reference Manual Rev 0 2 20 Freescale Semiconductor SC140 Core Overview ...
Page 134: ...MSC8113 Reference Manual Rev 0 4 30 Freescale Semiconductor System Interface Unit SIU ...
Page 168: ...MSC8113 Reference Manual Rev 0 6 18 Freescale Semiconductor Boot Program ...
Page 180: ...MSC8113 Reference Manual Rev 0 7 12 Freescale Semiconductor Clocks ...
Page 260: ...MSC8113 Reference Manual Rev 0 8 80 Freescale Semiconductor Memory Map ...
Page 300: ...MSC8113 Reference Manual Rev 0 9 40 Freescale Semiconductor Extended Core ...
Page 304: ...MSC8113 Reference Manual Rev 0 10 4 Freescale Semiconductor MQBus and M2 Memory ...
Page 308: ...MSC8113 Reference Manual Rev 0 11 4 Freescale Semiconductor SQBus ...
Page 590: ...MSC8113 Reference Manual Rev 0 17 46 Freescale Semiconductor Interrupt Processing ...
Page 614: ...MSC8113 Reference Manual Rev 0 18 24 Freescale Semiconductor Debugging ...
Page 622: ...MSC8113 Reference Manual Rev 0 19 8 Freescale Semiconductor Internal Peripheral Bus IPBus ...
Page 724: ...MSC8113 Reference Manual Rev 0 21 32 Freescale Semiconductor UART ...
Page 920: ...MSC8113 Reference Manual Rev 0 25 150 Freescale Semiconductor Ethernet Controller ...
Page 1171: ...MSC8113 Reference Manual Rev 0 Freescale Semiconductor C 61 EF wait_rts P 01077FFC 9F rts 71 ...
Page 1172: ...MSC8113 Reference Manual Rev 0 C 62 Freescale Semiconductor MSC8113 Boot Code ...
Page 1202: ...MSC8113 Reference Manual Rev 0 Index 30 Freescale Semiconductor Index ...