English
Language : 

83C795 Datasheet, PDF (100/136 Pages) List of Unclassifed Manufacturers – Ethernet System Controller
BUFFER STRUCTURING AND DATA MOVEMENT PROCESSES
83C795
FIGURE 8-5. RECEIVER BUFFER RING 2
F igure 8-5 s hows the s ame ring after proper
removal of the oldes t receivedpacket. T hetopring,
F ULLR ING, s hows aringthat is completely full. T he
bottom ring, OVE R F LOW, s hows a ring on the
verge of overflow.
8.2.1.1 Automatic Ring Wrapping
Automaticring wrappingenables the hos t to reada
contiguous block of data from the buffer R AM
without havingtocheck whether theblock is s olong
that the acces s wraps around the end of the buffer
ring. T his is accomplishedby checkingwhether the
next value to be loaded into the memory cache’s
buffer counter is equal to theregis ter R S T OP. If this
is true, then the value of the R S T AR T regis ter is
loaded into the counter ins tead. T he memory
cache’s Hos t Counter is left unchangeds o the hos t
can continueacces singmemory pas t theendof the
ring, but ins tead receives the correct data from the
s tart of thering. T hecomparis on is only madewhen
the counter is incrementing so it is not pos sible to
s tart the block of data pas t the ring’s end. Als o,
s incethehos t is sendingaddress es that aregreater
than the end of the ring, it is required that the
83C795’s memory s pace extendbeyondthe endof
thering. T his can beaccomplis hedby arrangingthe
memory s pace s uch that the trans mit buffers come
after the receive buffer ring. T his feature is enabled
by s etting the WR APE N bit (UBR CV.0). F or more
on this , refer to page 40.
8.2.1.2 Ring-Empty Bit
T his is a read-only bit located at UBR CV.2 which
indicates to the hos t that there are no completely
received frames in the buffer ring yet. T he hos t
checks this bit after it finis hes receivingaframeand
quickly determines whether there are more frames
to copy. T his bit is s et when BOUND equals CUR R .
BOUND is updated after CUR R .
S incethis bit is only clearedfor completely received
frames, another methodmus t be us edtodetermine
if there is a partial frame in the buffer that exceeds
87