| công cụ tìm kiếm bảng dữ liệu linh kiện điện tử |
|
DP83932C bảng dữ liệu(PDF) 18 Page - National Semiconductor (TI) |
|
|
|
|||||||||||||||||||||||||||||
DP83932C bảng dữ liệu(HTML) 18 Page - National Semiconductor (TI) |
|
18 / 98 page ![]() 30 Buffer Management (Continued) All RRA registers are concatenated with the URRA register for generating the full 32-bit address The resource descriptors that the system writes to the RRA consists of four fields (1) RXrsrcbuff ptr0 (2) RXrsrcbuff ptr1 (3) RXrsrcbuff wc0 and (4) RXrsrcbuff wc1 The fields must be contiguous (they can- not straddle the end points) and are written in the order shown in Figure 3-8 The ‘‘0’’ and ‘‘1’’ in the descriptors denote the least and most significant portions for the Buffer Pointer and Word Count The first two fields supply the 32- bit starting location of the Receive Buffer Area (RBA) and the second two define the number of 16-bit words that the RBA occupies Note that two restrictions apply to the Buffer Pointer and Word Count First in 32-bit mode since the SONIC always writes long words an even count must be written to RXrsrcbuff wc0 Second the Buffer Pointer must either be pointing to a word boundary in 16-bit mode (A0e0) or a long word boundary in 32-bit mode (A0A1e00) Note also that the descriptors must be properly aligned in the RRA as discussed in Section 33 TLF10492 – 15 FIGURE 3-8 RRA Initialization After configuring the RRA the RRA Read command (setting RRRA bit in the Command register) may be given This command causes the SONIC to read the RRA descriptor in a single block operation and load the following registers (see Section 42 for register mnemonics) CRBA0 register wRXrsrcbuff ptr0 CRBA1 register wRXrsrcbuff ptr1 RBWC0 register wRXrsrcbuff wc0 RBWC1 register wRXrsrcbuff wc1 When the command has completed the RRRA bit in the Command register is reset to ‘‘0’’ Generally this command is only issued during initialization At all other times the RRA is automatically read as the SONIC finishes using an RBA 3443 Initializing The RDA To accept multiple packets from the network the receive packet descriptors must be linked together via the RXpktlink fields Each link field must be written with a 15-bit (A15 – A1) pointer to locate the beginning of the next de- scriptor in the list The LSB of the RXpktlink field is the End of List (EOL) bit and is used to indicate the end of the de- scriptor list EOL e 1 for the last descriptor and EOL e0 for the first or middle descriptors The RXpktin use field indi- cates whether the descriptor is owned by the SONIC The system writes a non-zero value to this field when the de- scriptor is available and the SONIC writes all ‘‘0’s’’ when it finishes using the descriptor At startup the Current Receive Descriptor Address (CRDA) register must be loaded with the address of the first RXpktstatus field in order for the SONIC to begin receive processing at the first descrip- tor An example of two descriptors linked together is shown in Figure 3-9 The fields initialized by the system are dis- played in bold type The other fields are written by the SONIC after a packet is accepted The RXpktin use field is first written by the system and then by the SONIC Note that the descriptors must be aligned properly as discussed in Section 33 Also note that the URDA register is concate- nated with the CRDA register to generate the full 32-bit ad- dress TLF10492 – 16 FIGURE 3-9 RDA Initialization Example 3444 Initializing the Lower Boundary of the RBA A ‘‘false bottom’’ is set in the RBA by loading the End Of Buffer Count (EOBC) register with a value equal to the maxi- mum size packet in words (16 bits) that may be received This creates a lower boundary in the RBA Whenever the Remaining Buffer Word Count (RBWC01) registers decre- ment below the EOBC register the SONIC buffers the next packet into another RBA This also guarantees that a pack- et is always contiguously buffered into a single Receive Buffer Area (RBA) The SONIC does not buffer a packet into multiple RBAs Note that in 32-bit mode the SONIC holds the LSB always low so that it properly compares with the RBWC01 registers After a hardware reset the EOBC reset the EOBC register is automatically initialized to 2F8h (760 words or 1520 bytes) For 32-bit applications this is the suggested value for EOBC EOBC defaults to 760 words (1520 bytes) instead of 759 words (1518 bytes) because 1518 is not a double word (32-bit) boundary (see Section 3421) If the SONIC is used in 16-bit mode then EOBC should be set to 759 words (1518 bytes) because 1518 is a word (16-bit) boundary Sometimes it may be desired to buffer a single packet per RBA When doing this it is important to set EOBC and the buffer size correctly The suggested practice is to set EOBC to a value that is at least 4 bytes in 32-bit mode or 2 bytes in 16-bit mode less than the buffer size An example of this for 32-bit mode is to set EOBC to 760 words (1520 bytes) 18 |
|
Link URL |
| Cho đến nay ALLDATASHEET có giúp ích cho doanh nghiệp của bạn hay không? [ DONATE ] |
Alldatasheet là | Quảng cáo | Liên lạc với chúng tôi | Chính sách bảo mật | Liên kết đến bảng dữ liệu | Trao đổi link | Tìm kiếm theo nhà sản xuất All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |