Nxp Semiconductors UM10237 用户手册

下载
页码 792
UM10237_2
© NXP B.V. 2008. All rights reserved.
User manual
Rev. 02 — 19 December 2008 
274 of 792
NXP Semiconductors
UM10237
Chapter 11: LPC24XX Ethernet
If EPADEN is 1, then small frames will be padded and a CRC will always be added to the 
padded frames. In this case if ADPEN and VLPEN are both 0, then the frames will be 
padded to 60 bytes and a CRC will be added creating 64 bytes frames; if VLPEN is 1, the 
frames will be padded to 64 bytes and a CRC will be added creating 68 bytes frames; if 
ADPEN is 1, while VLPEN is 0 VLAN frames will be padded to 64 bytes, non VLAN 
frames will be padded to 60 bytes, and a CRC will be added to padded frames, creating 
64 or 68 bytes padded frames.
If CRC generation is enabled, CRC generation can be delayed by four bytes by setting the 
DELAYED CRC bit in the MAC2 register, in order to skip proprietary header information.
9.18 Huge frames and frame length checking
The ‘HUGE FRAME ENABLE’ bit in the MAC2 configuration register can be set to 1 to 
enable transmission and reception of frames of any length. Huge frame transmission can 
be enabled on a per frame basis by setting the Override and Huge bits in the transmit 
descriptor Control word.
When enabling huge frames, the Ethernet block will not check frame lengths and report 
frame length errors (RangeError and LengthError). If huge frames are enabled, the 
received byte count in the RSV register may be invalid because the frame may exceed the 
maximum size; the RxSize fields from the receive status arrays will be valid.
Frame lengths are checked by comparing the length/type field of the frame to the actual 
number of bytes in the frame. A LengthError is reported by setting the corresponding bit in 
the receive StatusInfo word.
The MAXF register allows the device driver to specify the maximum number of bytes in a 
frame. The Ethernet block will compare the actual receive frame to the MAXF value and 
report a RangeError in the receive StatusInfo word if the frame is larger.
9.19 Statistics counters
Generally, Ethernet applications maintain many counters that track Ethernet traffic 
statistics. There are a number of standards specifying such counters, such as IEEE std 
802.3 / clause 30. Other standards are RFC 2665 and RFC 2233.
The approach taken here is that by default all counters are implemented in software. With 
the help of the StatusInfo field in frame statuses, many of the important statistics events 
listed in the standards can be counted by software.
9.20 MAC status vectors
Transmit and receive status information as detected by the MAC are available in registers 
TSV0, TSV1 and RSV so that software can poll them. These registers are normally of 
limited use because the communication between driver software and the Ethernet block 
takes place primarily through frame descriptors. Statistical events can be counted by 
software in the device driver. However, for debug purposes the transmit and receive status 
vectors are made visible. They are valid as long as the internal status of the MAC is valid 
and should typically only be read when the transmit and receive processes are halted.