Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

1. WO2007141234 - MÉCANISME D'ORDONNANCEMENT ET D'ACHEMINEMENT RAPIDE ET ÉCONOMIQUE POUR CONFLIT DE CHARGEMENT ET STOCKAGE

Numéro de publication WO/2007/141234
Date de publication 13.12.2007
N° de la demande internationale PCT/EP2007/055459
Date du dépôt international 04.06.2007
CIB
G06F 9/38 2006.01
GPHYSIQUE
06CALCUL; COMPTAGE
FTRAITEMENT ÉLECTRIQUE DE DONNÉES NUMÉRIQUES
9Dispositions pour la commande par programme, p.ex. unités de commande
06utilisant des programmes stockés, c. à d. utilisant un moyen de stockage interne à l'équipement de traitement de données pour recevoir ou conserver les programmes
30Dispositions pour exécuter des instructions machines, p.ex. décodage d'instructions
38Exécution simultanée d'instructions
CPC
G06F 9/3828
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
38Concurrent instruction execution, e.g. pipeline, look ahead
3824Operand accessing
3826Data result bypassing, e.g. locally between pipeline stages, within a pipeline stage
3828with global bypass, e.g. between pipelines, between clusters
G06F 9/3834
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
38Concurrent instruction execution, e.g. pipeline, look ahead
3824Operand accessing
3834Maintaining memory consistency
G06F 9/3867
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
38Concurrent instruction execution, e.g. pipeline, look ahead
3867using instruction pipelines
G06F 9/3885
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
38Concurrent instruction execution, e.g. pipeline, look ahead
3885using a plurality of independent parallel functional units
Déposants
  • INTERNATIONAL BUSINESS MACHINES CORPORATION [US/US]; New Orchard Road Armonk, New York 10504, US (AllExceptUS)
  • IBM UNITED KINGDOM LIMITED [GB/GB]; PO Box 41 North Harbour Portsmouth Hampshire PO6 3AU, GB (MG)
  • LUICK, David, Arnold [US/US]; US (UsOnly)
Inventeurs
  • LUICK, David, Arnold; US
Mandataires
  • WILLIAMS, Julian, David; IBM United Kingdom Limited Intellectual Property Law Hursley Park Winchester Hampshire SO21 2JN, GB
Données relatives à la priorité
11/422,63007.06.2006US
Langue de publication anglais (EN)
Langue de dépôt anglais (EN)
États désignés
Titre
(EN) A FAST AND INEXPENSIVE STORE-LOAD CONFLICT SCHEDULING AND FORWARDING MECHANISM
(FR) MÉCANISME D'ORDONNANCEMENT ET D'ACHEMINEMENT RAPIDE ET ÉCONOMIQUE POUR CONFLIT DE CHARGEMENT ET STOCKAGE
Abrégé
(EN)
Embodiments provide a method and apparatus for executing instructions. In one embodiment, the method includes receiving a load instruction and a store instruction and calculating a load effective address of load data for the load instruction and a store effective address of store data for the store instruction. The method further includes comparing the load effective address with the store effective address and speculatively forwarding the store data for the store instruction from a first pipeline in which the store instruction is being executed to a second pipeline in which the load instruction is being executed. The load instruction receives the store data from the first pipeline and requested data from a data cache. If the load effective address matches the store effective address, the speculatively forwarded store data is merged with the load data. If the load effective address does not match the store effective address the requested data from the data cache is merged with the load data.
(FR)
La présente invention concerne, dans des modes de réalisation, un procédé et un dispositif d'exécution d'instructions. Dans un mode de réalisation, le procédé consiste à recevoir une instruction de chargement et une instruction de stockage, et à calculer une adresse effective de chargement pour la première instruction et une adresse effective de stockage de données pour la seconde instruction. Le procédé consiste également à comparer l'adresse effective de chargement à celle de stockage et à acheminer de manière spéculative les données pour l'instruction de stockage d'un premier canal dans lequel cette instruction est en cours d'exécution à un second canal dans lequel l'instruction de chargement est en cours d'exécution. L'instruction de chargement reçoit les données à stocker du premier canal et des données demandées d'un cache de données. Si l'adresse effective de chargement correspond à celle de stockage, les données à stocker acheminées de manière spéculative sont fusionnées avec les données à charger. Si l'adresse effective de chargement ne correspond pas à celle de stockage, les données demandées du cache sont fusionnées avec les données à charger.
Également publié en tant que
Dernières données bibliographiques dont dispose le Bureau international