A data cache unit associated with a processor, the data cache unit
including a multi-ported non-blocking cache receiving a data access
request from a lower level device in the processor. A memory scheduling
window includes at least one row of entries, wherein each entry includes
an address field holding an address of the access request. A conflict map
field within at least some of the entries is coupled to a conflict
checking unit. The conflict checking unit responds to the address fields
by setting bits in the conflict map fields to indicate intra-row conflicts
between entries. A picker coupled to the memory scheduling window responds
to the conflict map fields so as to identify groups of non-conflicting
entries to launch in parallel at the multi-ported non-blocking cache.
Los datos depositan la unidad asociada a un procesador, la unidad del escondrijo de los datos incluyendo un escondrijo no bloqueando multi-virado hacia el lado de babor que recibe datos tienen acceso a la petición de un dispositivo de nivel inferior en el procesador. Una ventana programar de la memoria incluye por lo menos una fila de entradas, en donde cada entrada incluye un campo de dirección que lleva a cabo una dirección de la petición del acceso. Un campo del mapa del conflicto dentro por lo menos de algunas de las entradas se junta a una unidad de comprobación del conflicto. La unidad de comprobación del conflicto responde a los campos de dirección fijando pedacitos en los campos del mapa del conflicto para indicar conflictos de la intra-fila entre las entradas. Un recogedor juntado a la ventana programar de la memoria responde a los campos del mapa del conflicto para identificar los grupos de entradas no-que esta'n en conflicto para lanzar en paralelo en el escondrijo no bloqueando multi-virado hacia el lado de babor.