Mechanism for preserving producer-consumer ordering across an unordered interface

   
   

An input/output hub includes an inbound ordering queue (IOQ) to receive inbound transactions. All read and write transactions have a transaction completion. Peer-to-peer transactions are not permitted to reach a destination until after all prior writes in the IOQ have been completed. A write in a peer-to-peer transaction does not permit subsequent accesses to proceed until the write is guaranteed to be in an ordered domain of the destination. An IOQ read bypass buffer is provided to receive read transactions pushed from the IOQ to permit posted writes and read/write completions to progress through the IOQ. An outbound ordering queue (OOQ) stores outbound transactions and completions of the inbound transactions. The OOQ also issues write completions for posted writes. An OOQ read bypass buffer is provided to receive read transactions pushed from the OOQ to permit posted writes and read/write completions to progress through the OOQ. An unordered domain within the input/output hub receives the inbound transactions transmitted from the IOQ and receives the outbound transactions transmitted from an unordered protocol.

Un moyeu d'entrée-sortie inclut une file d'attente de commande d'arrivée (IOQ) pour recevoir des transactions d'arrivée. Tous lisent et écrivent des transactions ont un accomplissement de transaction. des transactions de Pair-à-pair ne sont pas autorisées pour atteindre une destination jusqu'à ce qu'après qu'écrive tout antérieurement dans l'IOQ aient été accomplis. Une inscription dans une transaction de pair-à-pair ne permet pas à des accès suivants de procéder jusqu'à ce que l'inscription soit garantie pour être dans un domaine commandé de la destination. Un IOQ a lu l'amortisseur de déviation est fourni pour recevoir a lu des transactions poussées de l'IOQ à la laiss signalée écrit et des accomplissements lecture/écriture au progrès par l'IOQ. Une file d'attente de commande en partance (OOQ) stocke des transactions en partance et des accomplissements des transactions d'arrivée. Les issues d'OOQ également écrivent des accomplissements pour signalé écrit. Un OOQ a lu l'amortisseur de déviation est fourni pour recevoir a lu des transactions poussées de l'OOQ à la laiss signalée écrit et des accomplissements lecture/écriture au progrès par l'OOQ. Un domaine non commandé dans le moyeu d'entrée-sortie reçoit les transactions d'arrivée transmises de l'IOQ et reçoit les transactions en partance transmises d'un protocole non commandé.

 
Web www.patentalert.com

< Hardware support for partitioning a multiprocessor system to allow distinct operating systems

< Systems and methods for generating customized bundles of information

> System and method for policy based storage provisioning and management

> System and method for obtaining user preferences and providing user recommendations for unseen physical and information goods and services

~ 00136