| Zakładka z wyszukiwarką danych komponentów |
|
AX88796ALF Arkusz danych(PDF) 31 Page - ASIX Electronics Corporation |
|
|
|||||||||||||||||||||||||||||
AX88796ALF Arkusz danych(HTML) 31 Page - ASIX Electronics Corporation |
|
31 / 68 page ![]() 31 AX88796ALF 3-in-1 Local Bus Fast Ethernet Controller Copyright © 2006-2013 ASIX Electronics Corporation. All rights reserved. 4.2.4 Removing Packets from the Ring (Host read data from memory) REMOTE READ A Remote Read transfer is used to move a block of data from local buffer memory to the host. The Remote DMA will sequentially read data from the local buffer memory, beginning at the Remote Start Address, and write data to the I/O port. The DMA Address will be incremented and the Byte Counter will be decremented after each transfer. The DMA is terminated when the Remote Byte Count Register reaches zero. Packets are removed from the ring using the Remote DMA or an external device. When using the Remote DMA. The Boundary Pointer can also be moved manually by programming the Boundary Register. Care should be taken to keep the Boundary Pointer at least one buffer behind the Current Page Pointer. The following is a suggested method for maintaining the Receive Buffer Ring pointers. 1. At initialization set up a software variable (next_pkt) to indicate where the next packet will be read. At the beginning of each Remote Read DMA operation, the value of next_pkt will be loaded into RSAR0 and RSAR1. 2. When initializing the AX88796A set: BNRY = PSTART CPR = PSTART + 1 Next_pkt = PSTART + 1 3. After a packet is DMAed from the Receive Buffer Ring, the Next Page Pointer (second byte in AX88796A receive packet buffer header) is used to update BNRY and next_pkt. Next_pkt = Next Page Pointer BNRY = Next Page Pointer – 1 If BNRY < PSTART then BNRY = PSTOP – 1 Note the size of the Receive Buffer Ring is reduced by one 256-byte buffer; this will not, however, impede the operation of the AX88796A. The advantage of this scheme is that it easily differentiates between buffer full and buffer empty: it is full if BNRY = CPR; empty when BNRY = CPR-1. |
|
Link URL |
| Czy Alldatasheet okazała się pomocna? [ DONATE ] |
O Alldatasheet | Reklama | Kontakt | Polityka prywatności | Link do karty katalogowej | Linki | Lista producentów 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 |