| поискавой системы для электроныых деталей |
|
DP83901A датащи(PDF) 13 Page - National Semiconductor (TI) |
|
|
|
|||||||||||||||||||||||||||||
DP83901A датащи(HTML) 13 Page - National Semiconductor (TI) |
|
13 / 62 page ![]() 70 Packet Reception (Continued) Buffer Ring Overflow If the Buffer Ring has been filled and the DMA reaches the Boundary Pointer Address reception of the incoming pack- et will be aborted by the SNIC Thus the packets previously received and still contained in the Ring will not be de- stroyed In heavily loaded network which cause overflows of the Re- ceive Buffer Ring the SNIC may disable the local DMA and suspend further receptions even if the Boundary register is advanced beyond the Current register To guarantee this will not happen a software reset must be issued during all Receive Buffer Ring overflows (indicated by the OVW bit in the Interrupt Status Register) The following procedure is required to recover from a Receiver Buffer Ring Overflow If this routine is not adhered to the SNIC may act in an unpredictable manner It should also be noted that it is not permissible to service an overflow interrupt by continuing to empty packets from the receive buffer without implementing the prescribed overflow routine A flow chart of the SNIC’s overflow routine can be found on the next page Note It is necessary to define a variable in the driver which will be called ‘‘Resend’’ 1 Read and store the value of the TXP bit in the SNIC’s Command Register 2 Issue the STOP command to the SNIC This is accom- plished by setting the STP bit in the SNIC’s Command Register Writing 21H to the Command Register will stop the SNIC 3 Wait for at least 16 ms Since the SNIC will complete any transmission or reception that is in progress it is necessary to time out for the maximum possible dura- tion of an Ethernet transmission or reception By waiting 16 ms this is achieved with some guard band added Previously it was recommended that the RST bit of the Interrupt Status Register be polled to insure that the pending transmission or reception is completed This bit is not a reliable indicator and subsequently should be ignored 4 Clear the SNIC’s Remote Byte Count registers (RBCR0 and RBCR1) 5 Read the stored value of the TXP bit from step 1 above If this value is a 0 set the ‘‘Resend’’ variable toa0and jump to step 6 If this value is a 1 read the SNIC’s Interrupt Status Reg- ister If either the Packet Transmitted bit (PTX) or Trans- mit Error bit (TXE) is set to a 1 set the ‘‘Resend’’ vari- able to a 0 and jump to step 6 If neither of these bits is set placea1inthe ‘‘Resend’’ variable and jump to step 6 This step determines if there was a transmission in prog- ress when the stop command was issued in step 2 If there was a transmission in progress the SNIC’s ISR is read to determine whether or not the packet was recog- nized by the SNIC If neither the PTX nor TXE bit was set then the packet will essentially be lost and re-trans- mitted only after a time-out takes place in the upper lev- el software By determining that the packet was lost at the driver level a transmit command can be reissued to the SNIC once the overflow routine is completed (as in step 11) Also it is possible for the SNIC to defer indefi- nitely when it is stopped on a busy network Step 5 also alleviates this problem Step 5 is essential and should not be omitted from the overflow routine in order for the SNIC to operate correctly 6 Place the SNIC in either mode 1 or mode 2 loopback This can be accomplished by setting bits D2 and D1 of the Transmit Configuration Register to ‘‘01’’ or ‘‘10’’ respectively 7 Issue the START command to the SNIC This can be accomplished by writing 22H to the Command Register This is necessary to activate the SNIC’s Remote DMA channel 8 Remove one or more packets from the receive buffer ring 9 Reset the overwrite warning (OVW overflow) bit in the Interrupt Status Register 10 Take the SNIC out of loopback This is done by writing the Transmit Configuration Register with the value it contains during normal operation (Bits D2 and D1 should both be programmed to 0) 11 If the ‘‘Resend’’ variable is set to a 1 reset the ‘‘Re- send’’ variable and reissue the transmit command This is done by writing a value of 26H to the Command Reg- ister If the ‘‘Resend’’ variable is 0 nothing needs to be done Note 1 If Remote DMA is not being used the SNIC does not need to be started before packets can be removed from the receive buffer ring Hence step 8 could be done before step 7 Note 2 When the SNIC is in STOP mode the Missed Talley Counter is disabled Received Packet Aborted If It Hits Boundary TLF10469 – 11 13 |
|
ссылки 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 |