A hardware-based linked list queues memory transactions in a memory controller. The memory controller includes a plurality of memory controller agents. Each agent has a head flag, a tail flag, and a next agent field, thereby allowing the agents to be arranged into linked lists. Memory transactions are received from cacheable entities of a computer system at an incoming memory transaction dispatch unit via an interconnection fabric. The incoming transactions are then presented to the plurality of agents. For each incoming read transaction, one of the agents will accept the transaction. If there are pending memory read transactions for the memory line, then the accepting agent joins a linked list of agents that are queued up to access that memory line. The accepting agent drives its index out onto a bus that connects all agents. One agent in the linked list will have its tail flag set, and that agent will clear its tail flag and latch into its next agent field the index provided by the accepting agent. Also, the accepting agent will set its tail flag to indicate that it is now at the end of the linked list. When the head agent finishes a transaction, the head agent advances the list by notifying the next agent that it is now the new head agent. The old head agent then clears a valid flag, indicating that it can now accept a new transaction, and the new head agent sets its head flag.

Een hardware-based verbonden lijst vormt geheugentransacties in een geheugencontrolemechanisme een rij. Het geheugencontrolemechanisme omvat een meerderheid van de agenten van het geheugencontrolemechanisme. Elke agent heeft een hoofdvlag, een staartvlag, en een volgende agentengebied, daardoor toelatend de agenten om in verbonden lijsten worden geschikt. De transacties van het geheugen worden ontvangen van cacheable entiteiten van een computersysteem bij een inkomende het berichteenheid van de geheugentransactie via een interconnectiestof. De inkomende transacties worden dan voorgesteld aan de meerderheid van agenten. Voor elke inkomende gelezen transactie, zal één van de agenten de transactie goedkeuren. Als er hangend geheugen gelezen transacties voor de geheugenlijn is, dan sluit aan de goedkeurende agent zich bij een verbonden lijst van agenten die tot toegang die geheugenlijn een rij worden gevormd. De goedkeurende agent verdrijft zijn index op een bus die alle agenten verbindt. Één agent in de verbonden lijst zal zijn geplaatste staartvlag hebben, en die agent zal zijn staartvlag en klink in zijn volgende agentengebied de index ontruimen die door de goedkeurende agent wordt verstrekt. Ook, zal de goedkeurende agent zijn staartvlag plaatsen om erop te wijzen dat het nu aan het eind van de verbonden lijst is. Wanneer de hoofdagent een transactie beëindigt, gaat de hoofdagent de lijst door de volgende agent vooruit op de hoogte te brengen dat het nu de nieuwe hoofdagent is. De oude hoofdagent ontruimt dan een geldige vlag erop wijst, die dat het een nieuwe transactie kan nu goedkeuren, en de nieuwe hoofdagent plaatst zijn hoofdvlag.

 
Web www.patentalert.com

< Ranking search results by reranking the results based on local inter-connectivity

< Store buffer which forwards data based on index and optional way match

> Indexing key ranges

> Data integrity in smartcard transactions

~ 00082