| поискавой системы для электроныых деталей |
|
DP83916 датащи(PDF) 19 Page - National Semiconductor (TI) |
|
|
|
|||||||||||||||||||||||||||||
DP83916 датащи(HTML) 19 Page - National Semiconductor (TI) |
|
19 / 96 page ![]() 30 Buffer Management (Continued) An example would be EOBC e 759 words (1518 bytes) and the buffer size set to 760 words (1520 bytes) The buffer can be any size but as long as the EOBC is 1 word less than the buffer size only one packet will be buffered in that RBA Note 1 It is possible to filter out most oversized packets by setting the buff- er size to 759 words (1518 bytes) EOBC would be set to 758 words (1516 bytes) for both cases With this configuration any packet over 1518 bytes will not be completely buffered because the packet will overflow the buffer When a packet overflow occurs a Receive Buff- er Area Exceeded interrupt (RBAE in the Interrupt Status Register Section 436) will occur Note 2 When buffering one packet per buffer it is suggested that the val- ues in Note 1 above be used Since the minimum legal sized Ether- net packet is 64 bytes however it is possible to set EOBC as much as 64 bytes less than the buffer size and still end up with one packet per buffer Figure 3-10 shows this ‘‘range’’ 345 Beginning of Reception At the beginning of reception the SONIC-16 checks its in- ternally stored EOL bit from the previous RXpktlink field for a ‘‘1’’ If the SONIC-16 finds EOLe1 it recognizes that after the previous reception there were no more remaining re- ceive packet descriptors It re-reads the same RXpktlink field to check if the system has updated this field since the last reception If the SONIC-16 still finds EOLe1 reception ceases (See Section 35 for adding descriptors to the list) Otherwise the SONIC-16 begins storing the packet in the RBA starting at the Current Receive Buffer Address (CRBA01) registers and continues until the packet has completed Concurrent with the packet reception the Re- maining Buffer Word Count (RBWC01) registers are decre- mented after each word is written to memory This register determines the remaining words in the RBA at the end of reception 346 End of Packet Processing At the end of a reception the SONIC-16 enters its end of packet processing sequence to determine whether to ac- cept or reject the packet based on receive errors and pack- et size At the end of reception the SONIC-16 enters one of the following two sequences Successful reception sequence Buffer recovery for runt packets or packets with errors 3461 Successful Reception If the SONIC-16 accepts the packet it first writes 5 words of descriptor information in the RDA beginning at the address pointed to by the Current Receive Descriptor Address (CRDA) register It then reads the RXpktlink field to ad- vance the CRDA register to the next receive descriptor The SONIC-16 also checks the EOL bit for a ‘‘1’’ in this field If EOLe1 no more descriptors are available for the SONIC- 16 The SONIC-16 recovers the address of the current RXpktlink field (from a temporary register) and generates a ‘‘Receive Descriptors Exhausted’’ indication in the Interrupt Status register (See Section 347 on how to add descrip- tors) The SONIC-16 maintains ownership of the descriptor by not writing to the RXpktin use field Otherwise if EOLe0 the SONIC-16 advances the CRDA register to the next descriptor and resets the RXpktin use field to all ‘‘0’s’’ The SONIC-16 accesses the complete 7 word RDA descrip- tor in a single block operation The SONIC-16 also checks if there is remaining space in the RBA The SONIC-16 compares the Remaining Buffer Word Count (RBWC01) registers with the static End Of Buffer Count (EOBC) If the RBWC is less than the EOBC a maxi- mum sized packet will no longer fit in the remaining space in the RBA hence the SONIC-16 fetches a resource descrip- tor from the RRA and loads its registers with the pointer and word count of the next available RBA 3462 Buffer Recovery for Runt Packets or Packets with Errors If a runt packet (less than 64 bytes) or packet with errors arrives and the Receive Control register has been config- ured to not accept these packets the SONIC-16 recovers its pointers back to the original positions The CRBA01 reg- isters are not advanced and the RBWC01 registers are not decremented The SONIC-16 recovers its pointers by main- taining a copy of the buffer address in the Temporary Re- ceive Buffer Address registers (TRBA01) The SONIC-16 recovers the value in the RBWC01 registers from the Tem- porary Buffer Word Count registers (TBWC01) 347 Overflow Conditions When an overflow condition occurs the SONIC-16 halts its DMA operations to prevent writing into unauthorized memo- ry The SONIC-16 uses the Interrupt Status register (ISR) to indicate three possible overflow conditions that can occur TLF11722 – 17 Range of EOBC e (RXrsrcwc01 b2 to RXrsrcwc01 b32) FIGURE 3-10 Setting EOBC for Single Packet RBA 19 |
|
ссылки 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 |