A method and apparatus for arbitrating access to a memory, which has a
plurality of banks. The method includes arbitrating with a plurality of
processors. Each processor is associated with one of a plurality of data
ports and has a plurality of arbitration cycles, including a current cycle
and a most recent cycle preceding the current cycle. Each processor
receives memory access requests from all of the data ports, wherein each
memory access request is associated with one of the memory banks. Each
processor selectively grants the data port associated with that processor
access to the memory for the current cycle based on the banks associated
with the memory access requests of each data port, the data port that was
granted access to the memory during the preceding cycle, and the memory
bank that was accessed during the preceding cycle.
Um método e um instrumento para o acesso arbitrating a uma memória, que tenha um plurality dos bancos. O método inclui arbitrating com um plurality dos processadores. Cada processador é associado com o um de um plurality de portos dos dados e tem um plurality de ciclos do arbitration, including um ciclo atual e um ciclo o mais recente que precedem o ciclo atual. Cada processador recebe pedidos de acesso de memória de todos os portos dos dados, wherein cada pedido de acesso de memória é associado com um dos bancos de memória. Cada processador concede seletivamente o porto dos dados associado com esse acesso do processador à memória para o ciclo atual baseado nos bancos associados com os pedidos de acesso de memória de cada porto dos dados, do porto dos dados que foi concedido o acesso à memória durante o ciclo precedente, e do banco de memória que foi alcançado durante o ciclo precedente.