A system and method for reducing transfer latencies in fencepost buffering
requires that a cache is provided between a host and a network controller
having shared memory. The cache is divided into a dual cache having a top
cache and a bottom cache. A first and second descriptor address location
are fetched from shared memory. The two descriptors are discriminated from
one another in that the first descriptor address location is a location of
an active descriptor and the second descriptor address location is a
location of a reserve/lookahead descriptor. The active descriptor is
copied to the top cache. A command is issued to DMA for transfer of the
active descriptor. The second descriptor address location is then copied
into the first descriptor address. The next descriptor address location
from external memory is then fetched and placed in the second descriptor
address location.
Un sistema y un método para reducir estados latentes de la transferencia en el buffering del fencepost requiere que un escondrijo está proporcionado entre un anfitrión y un regulador de la red que comparten memoria. El escondrijo se divide en un escondrijo dual que tiene un escondrijo superior y un escondrijo inferior. Una primera y segunda localización de la dirección del descriptor se trae de memoria compartida. Los dos descriptores se discriminan a partir del uno otro en que la primera localización de la dirección del descriptor es una localización de un descriptor activo y la segunda localización de la dirección del descriptor es una localización de un descriptor de reserve/lookahead. El descriptor activo se copia al escondrijo superior. Un comando se publica al acceso directo de memoria para la transferencia del descriptor activo. La segunda localización de la dirección del descriptor entonces se copia en la primera dirección del descriptor. La localización siguiente de la dirección del descriptor de la memoria externa después se trae y se pone en la segunda localización de la dirección del descriptor.