A pending tag system and method to maintain data coherence in a processing
node during pending transactions in a transaction pipeline. A pending tag
storage unit may be coupled to a cache controller and configured to store
pending tags each indicative of a coherence state for a data line
corresponding to a pending transaction within the transaction pipeline.
The pending tag storage unit includes a total amount of storage which is
substantially less than an amount required to store tags contained in the
full tag array for the cache memory. When a pending tag exists in the
pending tag storage unit, the coherence state of the corresponding data
line within the cache memory is dictated by the pending tag for snoop
operations. Accordingly, data coherence is maintained during the period
when transactions are pending, e.g., not yet presented to a processor and
cache. When a pending transaction is completed, the coherence state of the
corresponding data line as indicated by the fill tag array may be
overwritten by the coherence state as indicated by the pending tag and the
pending tag may deleted from the pending tag storage.
Um sistema e um método pendentes do Tag para manter a coerência dos dados em um nó processando durante transações pendentes em um encanamento da transação. Uma unidade pendente do armazenamento do Tag pode ser acoplada a um controlador do esconderijo e ser configurarada para armazenar durante Tag cada um indicativo de um estado da coerência para uma linha de dados que corresponde a uma transação pendente dentro do encanamento da transação. A unidade pendente do armazenamento do Tag inclui uma quantidade total de armazenamento que é substancialmente menos do que uma quantidade requerida para armazenar os Tag contidos na disposição cheia do Tag para a memória de esconderijo. Quando um Tag pendente existe na unidade pendente do armazenamento do Tag, o estado da coerência da linha de dados correspondente dentro da memória de esconderijo está ditado pelo Tag pendente para operações do snoop. Conformemente, a coerência dos dados está mantida durante o período em que as transações são pendentes, por exemplo, apresentado não ainda a um processador e a um esconderijo. Quando uma transação pendente é terminada, o estado da coerência da linha de dados correspondente como indicado pela disposição do Tag da suficiência pode overwritten pelo estado da coerência como indicado pelo Tag pendente e pelo Tag pendente possa suprimido do armazenamento pendente do Tag.