[go: up one dir, main page]

HK1051241B - Distributed memory control and bandwidth optimization - Google Patents

Distributed memory control and bandwidth optimization Download PDF

Info

Publication number
HK1051241B
HK1051241B HK03103312.2A HK03103312A HK1051241B HK 1051241 B HK1051241 B HK 1051241B HK 03103312 A HK03103312 A HK 03103312A HK 1051241 B HK1051241 B HK 1051241B
Authority
HK
Hong Kong
Prior art keywords
memory
controller
references
memory reference
chaining bit
Prior art date
Application number
HK03103312.2A
Other languages
German (de)
English (en)
Chinese (zh)
Other versions
HK1051241A1 (en
Inventor
Gilbert Wolrich
Debra Bernstein
Matthew J. Adiletta
William Wheeler
Original Assignee
Intel Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/473,112 external-priority patent/US6560667B1/en
Application filed by Intel Corporation filed Critical Intel Corporation
Publication of HK1051241A1 publication Critical patent/HK1051241A1/en
Publication of HK1051241B publication Critical patent/HK1051241B/en

Links

Claims (20)

  1. Unité de commande d'une mémoire vive (26) comprenant :
    une logique de commande, comportant un arbitre (91) qui détecte un état de références mémoire restantes afin de sélectionner une référence mémoire dans l'une d'une pluralité de files d'attente (90) de références mémoire,
    ladite logique de commande étant sensible à un bit de chaînage de références mémoire qui lorsqu'il est sur 1 permet la gestion spéciale de références mémoire contiguës, la gestion spéciale permettant à l'arbitre de desservir une même file d'attente jusqu'à ce que le bit de chaînage de références mémoire soit mis à 0.
  2. Unité de commande selon la revendication 1, dans laquelle des références mémoire consécutives d'une filière de code dont le bit de chaînage de références mémoire est sur 1 sont utilisées pour former des blocs de lecture alignés en octets continus à partir de tampons de mémoire discontinus.
  3. Unité de commande selon la revendication 1, dans laquelle des références mémoire consécutives d'une filière de code dont le bit de chaînage de références mémoire est sur 1 sont utilisées pour optimiser la performance quand des écritures de données consécutives s'adressent à la même page SDRAM.
  4. Unité de commande selon la revendication 1, dans laquelle la mise sur 1 du bit de chaînage de références mémoire amène l'arbitre à sélectionner une unité fonctionnelle qui a demandé antérieurement l'accès à un système mémoire.
  5. Unité de commande selon la revendication 1, comprenant en outre :
    une file d'attente d'adresses et de commandes qui détient des références mémoire provenant d'une pluralité d'unités fonctionnelles de micro-commande ;
    une première file d'attente de lecture/écriture qui détient des références mémoire provenant d'un bus informatique ;
    une seconde file d'attente de lecture/écriture qui détient des références mémoire provenant d'un processeur central ; et dans laquelle la file d'attente d'adresses et de commandes comprend :
    une file d'attente de haute priorité qui détient des références mémoire provenant de tâches de haute priorité.
  6. Unité de commande selon la revendication 5, dans laquelle la logique de commande est sensible à un bit de mémoire optimisé et au bit de chaînage de références mémoire, et dans laquelle la mise sur 1 du bit de chaînage de références mémoire amène l'arbitre à tenir à jour les références mémoire d'une file d'attente courante.
  7. Unité de commande selon la revendication 1, dans laquelle l'arbitre a une politique d'arbitrage qui favorise les références mémoire de micromoteurs chaînées.
  8. Unité de commande selon la revendication 7, dans laquelle l'arbitre a une politique d'arbitrage qui dessert des requêtes chaînées jusqu'à ce que le bit de chaînage de références mémoire soit mis à 0.
  9. Unité de commande selon la revendication 1, dans laquelle l'arbitre a une politique d'arbitrage qui commence par examiner les requêtes de références mémoire de micromoteurs chaînées.
  10. Unité de commande selon la revendication 1, dans laquelle la politique d'arbitrage permet la desserte des requêtes de mémoire chaînées.
  11. Unité de commande selon la revendication 5, dans laquelle quand le bit de chaînage de références mémoire est mis sur 1, l'arbitre continue de desservir des requêtes mémoire depuis la même file d'attente jusqu'à ce que le bit de chaînage de référence soit mis à 0.
  12. Processeur à multi-filières matérielles parallèles comprenant :
    un processeur universel qui coordonne les fonctions système ; et
    une pluralité de micromoteurs (22) qui supportent des filières matérielles multiples ; et
    une unité de commande de mémoire vive (26) comprenant :
    une logique de commande, comportant un arbitre (91) qui détecte un état de références mémoire restantes afin de sélectionner une référence mémoire dans l'une d'une pluralité de files d'attente (90) de références mémoire, ladite logique de commande étant sensible à un bit de chaînage de références mémoire qui, lorsqu'il est sur 1, permet la gestion spéciale de références mémoire contiguës, la gestion spéciale permettant à l'arbitre de desservir une même file d'attente jusqu'à ce que le bit de chaînage de référence mémoire soit mis à 0.
  13. Processeur selon la revendication 12, dans lequel l'unité de commande fait en sorte que des références mémoire consécutives d'une filière de code dont le bit de chaînage de références mémoire est sur 1 forment des blocs de lecture alignés en octets continus à partir de tampons de mémoire discontinus.
  14. Processeur selon la revendication 12, dans lequel l'unité de commande fait en sorte que des références mémoire consécutives d'une filière de code dont le bit de chaînage de références mémoire est sur 1 soient utilisées pour optimiser la performance quand des écritures de données consécutives s'adressent à la même page SDRAM.
  15. Processeur selon la revendication 12, dans lequel la mise sur 1 du bit de chaînage de références mémoire amène l'arbitre à sélectionner une unité fonctionnelle qui a demandé antérieurement l'accès à un système mémoire.
  16. Procédé de commande d'accès à une mémoire partagée, comprenant :
    la détermination si un bit de chaînage de références mémoire est sur 1 ou non ; et
    la sélection d'une référence mémoire depuis l'une d'une pluralité de files d'attente de références mémoire en fonction d'une unité fonctionnelle qui a mis sur 1 le bit de chaînage de références mémoire et qui a antérieurement demandé l'accès à un système mémoire ; le bit de chaînage de références mémoire, quand il est sur 1, permettant la gestion spéciale de références mémoire contiguës et la gestion spéciale permettant à un arbitre de desservir une même file d'attente jusqu'à ce que le bit de chaînage de références mémoire soit mis à 0.
  17. Procédé selon la revendication 16, dans lequel la sélection favorise les références mémoire de micromoteurs chaînées plutôt que d'autres types de requêtes de références mémoire.
  18. Procédé selon la revendication 17, dans lequel la sélection dessert des requêtes chaînées jusqu'à ce que le bit de chaînage de références mémoire soit mis à 0.
  19. Procédé selon la revendication 17, dans laquelle la sélection commence par examiner les requêtes de références mémoire de micromoteurs chaînées.
  20. Appareil comprenant un support de mémorisation lisible par ordinateur ayant des instructions exécutables pour commander l'accès à une mémoire partagée, les instructions permettant à l'ordinateur de :
    déterminer si un bit de chaînage de références mémoire est sur 1 ou non ; et
    sélectionner une référence mémoire depuis l'une d'une pluralité de files d'attente de références mémoire en fonction d'une unité fonctionnelle qui a mis sur 1 le bit de chaînage de références mémoire et qui a antérieurement demandé l'accès à un système mémoire ; le bit de chaînage de références mémoire, quand il est sur 1, permettant la gestion spéciale de références mémoire contiguës et la gestion spéciale permettant à un arbitre de desservir une même file d'attente jusqu'à ce que le bit de chaînage de références mémoire soit mis à 0.
HK03103312.2A 1999-12-28 2000-12-06 Distributed memory control and bandwidth optimization HK1051241B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US473112 1999-12-28
US09/473,112 US6560667B1 (en) 1999-12-28 1999-12-28 Handling contiguous memory references in a multi-queue system
PCT/US2000/042663 WO2001048619A2 (fr) 1999-12-28 2000-12-06 Commande de memoire repartie et optimisation de largeur de bande

Publications (2)

Publication Number Publication Date
HK1051241A1 HK1051241A1 (en) 2003-07-25
HK1051241B true HK1051241B (en) 2010-07-02

Family

ID=

Similar Documents

Publication Publication Date Title
EP1282862B1 (fr) Commande de memoire repartie et optimisation de largeur de bande
EP1236088B1 (fr) Ensemble de registres utilise dans une architecture de processeurs multifiliere paralleles
US7546444B1 (en) Register set used in multithreaded parallel processor architecture
EP1214660B1 (fr) Controleur pour memoire statique (sram) destinee a une architecture de traitement parallele comprenant une file d'adresses et de commandes et un arbitre
EP1214661B1 (fr) Controleur de sdram pour architecture de processeur parallele
US6629237B2 (en) Solving parallel problems employing hardware multi-threading in a parallel processing environment
EP1221105B1 (fr) Architecture de processeurs paralleles
EP1221086B1 (fr) Execution de plusieurs unites d'execution dans un processeur parallele
US7743235B2 (en) Processor having a dedicated hash unit integrated within
US20020053017A1 (en) Register instructions for a multithreaded processor
WO2001016697A9 (fr) Instruction de registre local pour micromoteur a utiliser en architecture de processeur parallele a unites d'executions multiples ('multithread')
US7191309B1 (en) Double shift instruction for micro engine used in multithreaded parallel processor architecture
HK1051241B (en) Distributed memory control and bandwidth optimization