A METHOD, APPARATUS, AND SYSTEM FOR SPECULATIVE ABORT CONTROL MECHANISMS

An apparatus and method is described herein for providing robust speculative code section abort control mechanisms. Hardware is able to track speculative code region abort events, conditions, and/or scenarios, such as an explicit abort instruction, a data conflict, a speculative timer expiration, a...

Full description

Saved in:
Bibliographic Details
Main Authors FARCY, ALEXANDRE, J, MERTEN, MATTHEW, MATH, PRAKASH, RAJWAR, RAVI, CHAPPELL, ROBERT, S, KADGI, VIJAYKUMAR, DIXON, MARTIN, G, LAI, KONRAD K, KIM, ILHYUN, PARTHASARATHY, RAJESH, S
Format Patent
LanguageEnglish
French
Published 08.08.2013
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:An apparatus and method is described herein for providing robust speculative code section abort control mechanisms. Hardware is able to track speculative code region abort events, conditions, and/or scenarios, such as an explicit abort instruction, a data conflict, a speculative timer expiration, a disallowed instruction attribute or type, etc. And hardware, firmware, software, or a combination thereof makes an abort determination based on the tracked abort events. As an example, hardware may make an initial abort determination based on one or more predefined events or choose to pass the event information up to a firmware or software handler to make such an abort determination. Upon determining an abort of a speculative code region is to be performed, hardware, firmware, software, or a combination thereof performs the abort, which may include following a fallback path specified by hardware or software. And to enable testing of such a fallback path, in one implementation, hardware provides software a mechanism to always abort speculative code regions. L'invention porte sur un appareil et sur un procédé qui permettent de fournir des mécanismes de commande d'abandon de section de code spéculative robustes. Un matériel peut suivre des événements, des conditions et/ou des scénarios d'abandon de région de code spéculative, tels qu'une instruction d'abandon explicite, un conflit de données, une expiration de synchronisateur spéculatif, un attribut ou un type d'instruction refusée, etc. Un matériel, un microprogramme, un logiciel ou une combinaison de ceux-ci effectue une détermination d'abandon sur la base des événements d'abandon suivis. A titre d'exemple, le matériel peut effectuer une détermination d'abandon initiale sur la base d'un ou de plusieurs événements prédéfinis ou peut choisir de transmettre les informations d'événement à un gestionnaire de microprogramme ou de logiciel afin d'effectuer une telle détermination d'abandon. Lorsqu'il est déterminé qu'un abandon d'une région de code spéculative doit être effectué, un matériel, un microprogramme, un logiciel ou une combinaison de ceux-ci effectue l'abandon, ce qui peut consister à suivre un chemin de repli spécifié par le matériel ou le logiciel. Afin de permettre d'essayer un tel chemin de repli, selon un mode de réalisation, le matériel fournit à un logiciel un mécanisme pour toujours abandonner des régions de code spéculatives.
Bibliography:Application Number: WO2012US23597