| поискавой системы для электроныых деталей |
|
DP83916 датащи(PDF) 18 Page - National Semiconductor (TI) |
|
|
|
|||||||||||||||||||||||||||||
DP83916 датащи(HTML) 18 Page - National Semiconductor (TI) |
|
18 / 96 page ![]() 30 Buffer Management (Continued) All RRA registers are concatenated with the URRA register for generating the full 23-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 23-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 a restriction applies to the Buffer Pointer and Word Count The Buffer Pointer must be pointing to a word boundary Note also that the descriptors must be properly aligned in the RRA as discussed in Section 33 TLF11722 – 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-16 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-16 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-16 The system writes a non-zero value to this field when the descriptor is available and the SONIC-16 writes all ‘‘0’s’’ when it finishes using the descriptor At startup the Current Receive Descriptor Address (CRDA) register must be load- ed with the address of the first RXpktstatus field in order for the SONIC-16 to begin receive processing at the first de- scriptor An example of two descriptors linked together is shown in Figure 3-9 The fields initialized by the system are displayed in larger type The other fields are written by the SONIC-16 after a packet is accepted The RXpktin use field is first written by the system and then by the SONIC- 16 Note that the descriptors must be aligned properly as discussed in section 33 Also note that the URDA register is concatenated with the CRDA register to generate the full 23-bit address TLF11722 – 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-16 buffers the next packet into another RBA This also guarantees that a packet is always contiguously buffered into a single Receive Buffer Area (RBA) The SONIC-16 does not buffer a packet into multiple RBAs After a hardware reset the EOBC register is automatically initialized to 2F8h (760 words or 1520 bytes) 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 2 bytes less than the buffer size 18 |
|
ссылки URL |
| Вашему бизинису помогли Аллдатащит? [ DONATE ] |
Что такое Аллдатащит | реклама | контакт | Конфиденциальность | Ссылка на техническое описание | обмен ссыками | поиск по производителю 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 |