MEMORY CONTROLLER AND FLASH MEMORY SYSTEM

Information

  • Patent Application
  • 20230297276
  • Publication Number
    20230297276
  • Date Filed
    November 12, 2021
    2 years ago
  • Date Published
    September 21, 2023
    10 months ago
Abstract
A memory controller includes a layout setter and an access processor. The layout setter performs setting of data placement to be applied to multiple channels at the time of parallel data transfer between the memory controller and the flash memory using the multiple channels. The access processor performs, in performing access processing for data on the flash memory, the parallel data transfer to/from the flash memory using the data placement for the multiple channels set by the layout setter. In placing user data and parity data included in the data, the layout setter sets the data placement for the multiple channels to allow, in the multiple channels, second placement regions where the parity data are placed to be collectively placed forward or backward relative to first placement regions where the user data are placed, along an order of access at the time of the parallel data transfer.
Description
Claims
  • 1. A memory controller configured to control a flash memory, the memory controller comprising: a layout setter configured to perform that performs setting of data placement that is to be applied to multiple channels at time of parallel data transfer to be performed between the memory controller and the flash memory using the multiple channels; andan access processor configured to performs, in performing access processing for data on the flash memory, the parallel data transfer to and from the flash memory using the data placement for the multiple channels that is set by the layout setter, wherein the layout setter is configured to, in placing each of user data and parity data included in the data, set the data placement for the multiple channels to allow, in the multiple channels, second placement regions to be collectively placed forward or backward relative to first placement regions along an order of access at the time of the parallel data transfer, the first placement regions each being a region where the user data is to be placed, the second placement regions each being a region where the parity data is to be placed.
  • 2. The memory controller according to claim 1, wherein the layout setter is configured to set so sets the data placement for the multiple channels as-to allow, in each of the multiple channels, the second placement regions to be collectively placed backward relative to the first placement regions along the order of access.
  • 3. The memory controller according to claim 2, further comprising a parity data generator configured to generatethe parity data on a basis of the user data, wherein the parity data generator is configured to, when write processing for the data is performed as the access processing, generate therespective pieces of the parity data belonging to the multiple channels, in parallel with a period of the parallel data transfer for the user data that is set to precede a period of the parallel data transfer for the parity data.
  • 4. The memory controller according to claim 1, wherein the access processor is configured to, in performing read processing or write processing for the data as the access processing, perform the access processor performs the parallel data transfer for respective pieces of the user data in the first placement regions and respective pieces of the parity data in the second placement regions along the order of access, in accordance with the data placement that is set for each of the multiple channels.
  • 5. A flash memory system comprising: the memory controller according to claim 1;andthe flash memory.
  • 6. A memory controller configured to control a flash memory, the memory controller comprising a control circuit configured to: perform setting of data placement that is to be applied to multiple channels at time of parallel data transfer to be performed between the memory controller and the flash memory using the multiple channels; andperform, in performing access processing for data on the flash memory, the parallel data transfer to and from the flash memory using the data placement for the multiple channels that is set by the control circuit, wherein the control circuit is configured to, in placing each of user data and parity data included in the data, set the data placement for the multiple channels to allow, in the multiple channels, second placement regions to be collectively placed forward or backward relative to first placement regions along an order of access at the time of the parallel data transfer, the first placement regions each being a region where the user data is to be placed, the second placement regions each being a region where the parity data is to be placed.
  • 7. The memory controller according to claim 6, wherein the control circuit is configured to set the data placement for the multiple channels to allow, in the multiple channels, the second placement regions to be collectively placed backward relative to the first placement regions along the order of access.
  • 8. The memory controller according to claim 7, wherein the control circuit is further configured to generate the parity data on a basis of the user data, andthe control circuit is configured to, in performing write processing for the data as the access processing, generate respective pieces of the parity data belonging to the multiple channels, in parallel with a period of the parallel data transfer for the user data that is set to precede a period of the parallel data transfer for the parity data.
  • 9. The memory controller according to claim 6, wherein the control circuit is configured to, in performing read processing or write processing for the data as the access processing, perform the parallel data transfer for respective pieces of the user data in the first placement regions and respective pieces of the parity data in the second placement regions along the order of access, in accordance with the data placement that is set for each of the multiple channels.
  • 10. A flash memory system comprising: the memory controller according to claim 6; andthe flash memory.
PCT Information
Filing Document Filing Date Country Kind
PCT/JP2021/041686 11/12/2021 WO