Data Copy Method Using Temporary Memory and DMA for Flash
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data copy methods from NAND-type flash memory to volatile memory, such as SDRAM, suffer from reduced processing speed and inefficient memory bus usage due to serial execution of data loading and direct memory access (DMA) operations, leading to increased idle time and occupancy of the memory bus.
Innovation Solution
A data copy method that designates data as packages, simultaneously and parallelly transfers and reads these packages between a non-volatile memory device and a temporary memory device using DMA, allowing for continuous operation until all data is copied, with the last package transferred using DMA after storage in the temporary memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is transferred from NAND flash memory to SDRAM through a processor's data register using conventional polling method, then data copy can be completed, but processing speed decreases due to repeated transfer operations
Solution Approach 1:
The patent introduces a temporary memory device as an intermediary between the NAND flash memory and SDRAM. Data is first loaded into the temporary memory device, and then transferred to SDRAM using DMA operation. This intermediary structure enables parallel operations and eliminates the bottleneck of processor-based data register transfers.
Solution Approach 2:
The patent implements continuous data transfer by loading the next data package into the temporary memory device while simultaneously transferring the current data package from temporary memory to SDRAM using DMA. This overlapping of operations eliminates idle time and maintains continuous useful action throughout the data copy process.
2Speed
If DMA operation is used to transfer data from processor's data register to SDRAM, then transfer speed increases, but the time for data transmission from NAND flash to data register becomes a bottleneck
Solution Approach 1:
The patent performs preliminary action by loading data packages into the temporary memory device before the DMA transfer operation begins. The temporary memory device is pre-filled with data that will be transferred to SDRAM, allowing the DMA operation to proceed without waiting for data to be read from the slow NAND flash memory.
Solution Approach 2:
The patent segments the data into multiple data packages and uses multiple storage spaces within the temporary memory device. This segmentation allows different data packages to be loaded and transferred in parallel through different storage spaces, increasing overall throughput and eliminating waiting time between transfers.
3Device complexity
If serial operations are used for data loading and DMA transfer, then device complexity is reduced, but memory bus occupancy increases and efficiency decreases
Solution Approach 1:
The patent introduces dynamic control through controllers that manage the temporary memory device and DMA operations. These controllers dynamically coordinate the loading and transfer operations, switching between different storage spaces in the temporary memory device to enable parallel operations while maintaining systematic control.
Solution Approach 2:
The patent adds another dimension to the data transfer process by introducing the temporary memory device with multiple storage spaces. This creates a two-dimensional transfer path: one dimension for loading data from NAND flash to temporary memory, and another dimension for transferring from temporary memory to SDRAM, allowing simultaneous operations without increasing overall system complexity.
Data Source
AI summary
A data copy method includes designating data stored in a non-volatile memory device as data packages, reading at least one data package to store the read at least one data package in a temporary memory device, transferring the at least one data package stored in the temporary memory device to a volatile memory device using a direct memory access (DMA) operation, and reading a next at least one data package stored in the non-volatile memory device to store the next at least one data package in the temporary memory device. Transferring the at least one data package and reading the next at least one data package are simultaneously and parallelly performed. The data copy method according to exemplary embodiments of the present invention may improve data copy speed, and may reduce occupancy of a memory bus by performing the auto-loading function and simultaneously and parallelly performing the data package storing process and the data package transferring process.


