A method for accessing a dynamic memory module, the method comprises: receiving, by a memory controller, a set of access requests for accessing the dynamic memory module; converting the access requests to a set of commands, wherein the set of commands comprise (a) a first sub-set of commands that are related to a first group of memory banks, and (b) a second sub-set of commands that are related to a second group of memory banks; scheduling, by a scheduler of the memory controller, an execution of the first sub-set; scheduling an execution of the second sub-set to be interleaved with the execution of the first sub-set; and executing the set of commands as scheduled, wherein the converting comprises generating pairs of management commands wherein the management commands comprise a refresh command, a pre-charge command and an activate command and wherein each of these pairs of management commands comprises (a) a first management command that is associated with the first group of memory banks, and (b) a second management command that is associated with the second group of memory banks; characterized in that the method further comprises storing each of these pairs of management commands in a compressed form, wherein the storing of each of these pairs of management commands in the compressed form comprises storing, for each pair, (a) a single management command that is associated with one of the first and second groups of memory bank, and (b) an indication that a similar command should be generated for the other group of memory banks of the first and second groups of memory bank. receiving, by a memory controller, a set of access requests for accessing the dynamic memory module; converting the access requests to a set of commands, wherein the set of commands comprise (a) a first sub-set of commands that are related to a first group of memory banks, and (b) a second sub-set of commands that are related to a second group of memory banks; scheduling, by a scheduler of the memory controller, an execution of the first sub-set; scheduling an execution of the second sub-set to be interleaved with the execution of the first sub-set; and executing the set of commands as scheduled, wherein the converting comprises generating pairs of management commands wherein the management commands comprise a refresh command, a pre-charge command and an activate command and wherein each of these pairs of management commands comprises (a) a first management command that is associated with the first group of memory banks, and (b) a second management command that is associated with the second group of memory banks; (a) a first management command that is associated with the first group of memory banks, and (b) a second management command that is associated with the second group of memory banks; characterized in that the method further comprises storing each of these pairs of management commands in a compressed form, wherein the storing of each of these pairs of management commands in the compressed form comprises storing, for each pair, (a) a single management command that is associated with one of the first and second groups of memory bank, and (b) an indication that a similar command should be generated for the other group of memory banks of the first and second groups of memory bank.