Generally, the present invention provides a system and method for
processing instructions of a computer program and for indicating
instruction attribute and/or status information so that the efficiency of
the processing system may be increased. In architecture, the system of the
present invention utilizes a pipeline, a scoreboard, and hazard detection
circuitry. The pipeline processes and executes instructions of a computer
program. Many of the instructions include register identifiers that
identify registers where data should be written when the instructions are
executed. When the data produced by execution of one of the instructions
has yet to be written to the register identified by the one instruction's
register identifier and is unavailable for use in executing other
instructions of the program, the one instruction's register identifier is
transmitted to the scoreboard. The scoreboard includes a plurality of
multi-bit registers, and a first bit in one of the multi-bit registers is
changed based on the received register identifier. The scoreboard also may
receive data associated with the one instruction and may change a second
bit in the one register based on the received data. Therefore, each
register in the scoreboard indicates whether a pending write to a
particular register exists and indicates information associated with the
instruction causing the pending write.
Over het algemeen, verstrekt de onderhavige uitvinding een systeem en een methode om instructies van een computerprogramma te verwerken en voor het wijzen van instructie op attributen en/of statusinformatie zodat de efficiency van het verwerkingssysteem kan worden verhoogd. In architectuur, gebruikt het systeem van de onderhavige uitvinding een pijpleiding, een scorebord, en het schakelschema van de gevaaropsporing. De pijpleiding verwerkt en voert instructies van een computerprogramma uit. Veel van de instructies omvatten registerherkenningstekens die registers identificeren waar de gegevens zouden moeten worden geschreven wanneer de instructies worden uitgevoerd. Wanneer het gegeven dat door uitvoering van één van de instructies wordt geproduceerd nog om aan het register heeft worden geschreven dat door het één het registerherkenningsteken van de instructie wordt geïdentificeerd en niet beschikbaar voor gebruik in het uitvoeren van andere instructies van het programma is, wordt het één het registerherkenningsteken van de instructie overgebracht aan het scorebord. Het scorebord omvat een meerderheid van multi-beetjeregisters, en een eerste beetje in één van de multi-beetjeregisters wordt veranderd gebaseerd op het ontvangen registerherkenningsteken. Het scorebord kan ook gegevens ontvangen verbonden aan de één instructie en kan een tweede beetje in het één register veranderen dat op de ontvangen gegevens wordt gebaseerd. Daarom wijst elk register in het scorebord erop of hangend aan een bepaald register bestaat en schrijft wijst op de informatie verbonden aan de instructie die hangend veroorzaakt schrijft.