摘要 |
A data processing system has one or more processors 4, 6, one or more other devices 20, 22, such as network interface cards or direct memory access engines, and a memory 2. The memory stores buffers 26 containing data used by the devices. The memory also contains a descriptor ring 24, which holds pointers to the buffers. The descriptor ring may also hold status information related to the buffers. When a pointer to a buffer is read from the descriptor ring, translation data for the buffer address is pre-fetched. The pointer may be identified using a descriptor ring identifier, which identifies the address range of the ring. This may use flags in the page table. The pointer may be identified using the access patterns of the devices. This may detect an address range with a read rate, which is higher than a threshold. The read of a pointer may be identified using a bus hint or by the data being a valid address. |