i would like to get details on dma controller direct memory access using vhdl vlsi latest
Posts: 14,118
Threads: 61
Joined: Oct 2014
To meet the rigorous demand for high sustained bandwidth and exploit the data level access parallelism this document proposes a new DMA controller architecture for high-speed data transfer. Through the analysis of the data transfer characteristic; we customize four DMA channels with greater data loading capacity. This personalized DMA works in two different modes. In the first mode0 mode (descriptor transfer mode), we can assign a task table to the descriptor buffer, which consists of the number of source and destination addresses for the data transfer. In the second mode1 mode (data transfer mode) the actual data transfer is made from the source address to the destination address through the DMA controller channels. The channels are selected according to the assigned priority.
Direct Memory Access (DMA) is one of several methods to coordinate the time of data transfer between an input / output (I / O) device and the CPU or memory in the computer. An I / O device often works at a much lower speed than the CPU. DMA allows I / O devices to access memory directly, without using the CPU. DMA can lead to a significant improvement in performance because the movement of data is one of the most common operations performed in processing applications. In a computer system, DMA is a feature by which the input / output devices can access the RAM of the computer independently of the CPU. Without DMA, the CPU can not perform other tasks at the same time when the data is transferred. But with DMA, it is possible for the CPU to operate on other tasks during data transfer. The CPU starts the data transfer. During the transfer of data between the I / O device and the DMA channel, the CPU is independent to operate on other tasks. Once the data transfer is complete, the CPU receives a request for interruption of the DMA controller. DMA is extremely important in integrated systems where high performance, speed and multitasking are required because DMA frees up the CPU so that it can perform other tasks that do not require a data bus. DMA is generally used in systems where large amounts of data are transferred. To increase the paralism of system operations, it is necessary to use the DMA controller instead of the processor to perform the data movement task. If the traditional DMA controller is used, a lot of time must be invested in the configuration of the DMA information channel and control information, which aggravates the CPU load and the congestion on the bus.