DETECTION OF SPECULATIVE PRECHARGE

A DRAM controller (103) may be configured to re-order read/write requests to maximize the number of page hits and minimize the number of page conflicts and page misses. A three-level prediction algorithm may be performed to obtain auto-precharge prediction for each read/write request, without having...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: ASKAR, TAHSIN, MADRID, PHILIP, E
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A DRAM controller (103) may be configured to re-order read/write requests to maximize the number of page hits and minimize the number of page conflicts and page misses. A three-level prediction algorithm may be performed to obtain auto-precharge prediction for each read/write request, without having to track every individual page. Instead, the DRAM controller may track the history of page activity for each bank of DRAM (105), and make a prediction to first order based history that is not bank based. The memory requests may be stored in a queue, a specified number at a time, and used to determine whether a page should be closed or left open following access to that page. If no future requests in the queue are to the given bank containing the page, recent bank history for that bank may be used to obtain a prediction whether the page should be closed or left open. If the page is not closed as a result of the determination and/or prediction, it may be left open and closed after it has remained idle a specified length of time following the last access to the page. L'invention concerne un contrôleur de mémoire vive dynamique (DRAM) (103) qui peut être configuré pour réorganiser des demandes de lecture/d'écriture afin de maximiser le nombre d'accès réussis à une page et de minimiser le nombre de conflits de page et d'échecs d'accès à une page. Un algorithme de prévision à trois nivaux peut être exécuté pour obtenir une prévision d'auto-précharge pour chaque demande de lecture/écriture, sans devoir suivre chaque page individuelle. Au lieu de cela, le contrôleur de DRAM peut suivre l'historique d'activité de page pour chaque banque de DRAM (105), et faire une prévision concernant l'historique basé sur la première organisation qui n'est pas basé sur la banque. Les demandes de mémoire peuvent être stockées dans une file d'attente, un nombre spécifié à la fois, et être utilisées pour déterminer si une page doit être fermée ou laissée ouverte après l'accès à cette page. Si aucune demande future dans la file d'attente ne concerne la banque donnée contenant la page, l'historique de banque récent pour cette banque peut être utilisé pour obtenir une prévision sur le fait que la page doit être fermée ou laissée ouverte. Si la page n'est pas fermée en résultat de la détermination et/ou de la prévision, elle peut être laissée ouverte et fermée après être restée inactive pendant une durée spécifiée après le dernier accès à la page.