A memory controller may include a request queue for receiving transaction
information (e.g. the address of the transaction) and a channel control
circuit. A control circuit for the request queue may issue addresses from
the request queue to the channel control circuit out of order, and thus
the memory operations may be completed out of order. The request queue may
shift entries corresponding to transactions younger than a completing
transaction to delete the completing transaction's information from the
request queue. However, a data buffer for storing the data corresponding
to transactions may not be shifted. Each queue entry in the request queue
may store a data buffer pointer indicative of the data buffer entry
assigned to the corresponding transaction. The data buffer pointer may be
used to communicate between the channel control circuit, the request
queue, and the control circuit. In one implementation, the request queue
may implement associative comparisons of information in each queue entry
(e.g. transaction IDs and/or data buffer pointers). In one embodiment, the
request queue and control circuit may be in the bus clock domain, while
the channel control circuit may be in the memory clock domain.
Ένας ελεγκτής μνήμης μπορεί να περιλάβει μια σειρά αναμονής αιτήματος για τη λήψη των πληροφοριών συναλλαγής (π.χ. η διεύθυνση της συναλλαγής) και ενός κυκλώματος ελέγχου καναλιών. Ένα κύκλωμα ελέγχου για τη σειρά αναμονής αιτήματος μπορεί να διανείμει τις διευθύνσεις από τη σειρά αναμονής αιτήματος στο κύκλωμα ελέγχου καναλιών από τη διαταγή, και έτσι οι διαδικασίες μνήμης μπορούν να ολοκληρωθούν από τη διαταγή. Η σειρά αναμονής αιτήματος μπορεί να μετατοπίσει τα λήμματα που αντιστοιχούν στις συναλλαγές νεώτερες από μια συναλλαγή ολοκλήρωσης για να διαγράψει τις πληροφορίες της συναλλαγής ολοκλήρωσης από τη σειρά αναμονής αιτήματος. Εντούτοις, ένας απομονωτής στοιχείων για την αποθήκευση των στοιχείων που αντιστοιχούν στις συναλλαγές δεν μπορεί να μετατοπιστεί. Κάθε είσοδος σειρών αναμονής στη σειρά αναμονής αιτήματος μπορεί να αποθηκεύσει έναν δείκτη απομονωτών στοιχείων ενδεικτικό της εισόδου απομονωτών στοιχείων που ορίζεται στην αντίστοιχη συναλλαγή. Ο δείκτης απομονωτών στοιχείων μπορεί να χρησιμοποιηθεί για να επικοινωνήσει μεταξύ του κυκλώματος ελέγχου καναλιών, της σειράς αναμονής αιτήματος, και του κυκλώματος ελέγχου. Σε μια εφαρμογή, η σειρά αναμονής αιτήματος μπορεί να εφαρμόσει τις συνειρμικές συγκρίσεις των πληροφοριών σε κάθε είσοδο σειρών αναμονής (π.χ. συναλλαγή IDs ή/και δείκτες απομονωτών στοιχείων). Σε μια ενσωμάτωση, το κύκλωμα σειρών αναμονής αιτήματος και ελέγχου μπορεί να είναι στην περιοχή ρολογιών λεωφορείων, ενώ το κύκλωμα ελέγχου καναλιών μπορεί να είναι στην περιοχή ρολογιών μνήμης.