CPC G06F 11/1474 (2013.01) [G06F 3/0619 (2013.01); G06F 3/0659 (2013.01); G06F 3/068 (2013.01); G06F 2201/82 (2013.01)] | 20 Claims |
1. A memory controller embodied in an integrated circuit, comprising:
an arbiter for selecting memory access commands, including volatile reads, volatile writes, non-volatile reads, and non-volatile writes, for transmission over a heterogeneous memory channel to at least one storage class memory (SCM) module;
at least one storage queue storing memory access commands that are selected for transmission; and
a replay control circuit for, responsive to an error condition, initiating a recovery sequence in which the replay control circuit transmits the selected memory access commands from the at least one storage queue by grouping non-volatile read commands together separately from all pending volatile reads, volatile writes, and non-volatile writes.
|