| With the increasing scale of digital integrated circuits,the frequency of data transmission and exchange is increasing.The traditional data transmission mode controlled by CPU will greatly affect the CPU efficiency,and then affect the system performance.Direct memory access(DMA)technology can achieve mass data transmission between SOC modules without occupying processor resources,which can effectively improve the efficiency of data transmission.The function of DMA controller is to control the data transmission between two addresses.The research on DMA controller has application value and research significance.In this thesis,based on SD card chip,a DMA controller with 8051 core is designed,the hardware circuit design and function simulation of DMA controller are completed,and the FPGA verification is carried out.The DMA controller can successfully carry a large amount of data from memory to flash in SD card,and improve the efficiency of data transmission.The main contents of this paper are as follows.(1)The top-down design method is used to design the architecture of DMA controller.The key modules of DMA controller are analyzed and designed,including data buffer,DMA transmission control logic,control status register,interrupt module and synchronization module.(2)Based on the above architecture of DMA controller,the hardware circuit of DMA controller is completed.The DMA controller includes five data channels,which are used for data exchange among SD interface,flash and SRAM.The whole controller is controlled by three state machines.Support a variety of data transmission mode,a variety of different bit width of data transmission.(3)The design of DMA controller can support linked list data transmission.When the source or target end has the data transmission with discontinuous address,the DMA controller can be configured as the linked list transmission mode,which avoids the CPU’s repeated data configuration in the transmission process and improves the efficiency of data transmission.For DMA design,NC Verilog is used for RTL simulation,and the simulation results verify the functional correctness of DMA controller.At the same time,the logic synthesis and layout implementation of DMA controller are carried out by using synthesis tools,and the results of timing,area and power consumption are analyzed.At the same time,the function of DMA controller is verified on FPGA.FPGA verification results show that the DMA controller designed in this paper can realize the data transfer function correctly. |