CN111090221B - 用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法 - Google Patents

用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法 Download PDF

Info

Publication number
CN111090221B
CN111090221B CN201911235051.1A CN201911235051A CN111090221B CN 111090221 B CN111090221 B CN 111090221B CN 201911235051 A CN201911235051 A CN 201911235051A CN 111090221 B CN111090221 B CN 111090221B
Authority
CN
China
Prior art keywords
sgdma
module
data
engine
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911235051.1A
Other languages
English (en)
Other versions
CN111090221A (zh
Inventor
李亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Xinqi Microelectronics Equipment Co ltd
Original Assignee
Hefei Xinqi Microelectronics Equipment Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei Xinqi Microelectronics Equipment Co ltd filed Critical Hefei Xinqi Microelectronics Equipment Co ltd
Priority to CN201911235051.1A priority Critical patent/CN111090221B/zh
Publication of CN111090221A publication Critical patent/CN111090221A/zh
Application granted granted Critical
Publication of CN111090221B publication Critical patent/CN111090221B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F7/00Photomechanical, e.g. photolithographic, production of textured or patterned surfaces, e.g. printing surfaces; Materials therefor, e.g. comprising photoresists; Apparatus specially adapted therefor
    • G03F7/70Microphotolithographic exposure; Apparatus therefor
    • G03F7/70483Information management; Active and passive control; Testing; Wafer monitoring, e.g. pattern monitoring
    • G03F7/70491Information management, e.g. software; Active and passive control, e.g. details of controlling exposure processes or exposure tool monitoring processes
    • G03F7/70508Data handling in all parts of the microlithographic apparatus, e.g. handling pattern data for addressable masks or data transfer to or from different components within the exposure apparatus
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03FPHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
    • G03F7/00Photomechanical, e.g. photolithographic, production of textured or patterned surfaces, e.g. printing surfaces; Materials therefor, e.g. comprising photoresists; Apparatus specially adapted therefor
    • G03F7/70Microphotolithographic exposure; Apparatus therefor
    • G03F7/70383Direct write, i.e. pattern is written directly without the use of a mask by one or multiple beams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Bus Control (AREA)

Abstract

本发明涉及一种用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法。传输系统包括上位机、PCIe 硬核、引擎控制模块、寄存器读写模块、C2H异步缓冲模块、H2C异步缓冲模块和用户接口模块;上位机和PCIe硬核交互式连接;PCIe硬核和引擎控制模块交互式连接。引擎控制模块包括寄存器模块、中断模块、SGDMA引擎、SGDMA读缓冲池和SGDMA写缓冲池。用户接口模块包括USER寄存器、TX数据发送接口、RX数据接收接口、动态同步存储器DDR4和曝光处理模块。本发明能够解决现有直写光刻式光刻机系统传输带宽能力不足、实时性不高的问题,提高系统分散内存的利用率、稳定性和传输带宽。

Description

用于直写式光刻系统中的PCIe DMA数据传输系统及其传输 方法
技术领域
本发明涉及光刻技术领域,具体涉及一种用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法。
背景技术
激光直写光刻设备是在IC(集成电路)和高精度PCB(印刷电路板)生产的关键设备,其中直写光刻系统采用FPGA部件与PC机通信。PC产生的曝光数据将通过千兆网,或者万兆网送入FPGA缓存以及下一步处理。由于直写式光刻设备对实时性要求很高,图形精度高,数据量就大,导致千兆网以及万兆网带宽逐渐不能满足传输需求。因此,需要一种新的数据传输方式提高传输带宽并降低时延。
发明内容
本发明的目的在于提供一种用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法,该传输系统及其传输方法能够解决现有直写光刻式光刻机系统传输带宽能力不足、实时性不高的问题,提高系统分散内存的利用率、稳定性和传输带宽。
为实现上述目的,本发明采用了以下技术方案:
本发明涉及一种用于直写式光刻系统中的PCIe DMA数据传输系统,包括上位机、PCIe 硬核、引擎控制模块、寄存器读写模块、C2H异步缓冲模块、H2C异步缓冲模块和用户接口模块;所述上位机和PCIe硬核交互式连接;所述PCIe硬核和引擎控制模块交互式连接。
具体地说,所述引擎控制模块包括寄存器模块、中断模块、SGDMA引擎、SGDMA读缓冲池和SGDMA写缓冲池;所述寄存器模块和SGDMA引擎交互式连接,SGDMA引擎的输出端接中断模块的输入端;所述SGDMA引擎包括H2C引擎和C2H引擎;所述H2C引擎的输出端接SGDMA读缓冲池的输入端;所述C2H引擎的输入端接SGDMA写缓冲池的输出端。
所述用户接口模块包括USER寄存器、TX数据发送接口、RX数据接收接口、动态同步存储器DDR4和曝光处理模块;所述寄存器模块分别与寄存器读写控制模块、用户寄存器交互式连接;所述SGDMA读缓冲池的输出端接H2C异步缓冲模块的输入端,H2C异步缓冲模块的输出端接RX数据接收接口的输入端;SGDMA写缓冲池的输入端接C2H异步缓冲模块的输出端,C2H异步缓冲模块的输入端接TX数据发送接口的输出端。
进一步的,所述SGDMA引擎控制模块通过PCIe总线传输数据。
本发明还涉及一种上述用于直写式光刻系统中的PCIe DMA数据传输系统的传输方法,该方法包括以下步骤:
(1)上位机向SGDMA引擎控制模块发送控制指令,SGDMA引擎控制模块接收到上位机发送的控制指令后,在SGDMA引擎中进行解析。
(2)设数据从上位机发往FPGA部件的传输过程为H2C,数据从FPGA部件发往上位机的传输过程为C2H;其中,H2C为DMA的读操作,C2H为DMA的写操作;不同的数据流方向,是由接收上位机不同的控制指令决定的。
当解析为H2C指令时,SGDMA引擎控制模块先获取描述符请求,再获取描述符,描述符组成分散收集链表形式发送到SGDMA引擎控制模块。当SGDMA引擎控制模块获取到最后一个描述符时,停止获取;当SGDMA引擎控制模块接到描述符时,SGDMA引擎控制模块根据第一个可用描述符向上位机源地址发送读请求,然后上位机发送带数据的完成包,启动H2C引擎,通过PCIe Gen3x8总线被SGDMA引擎接收,并缓存至SGDMA读缓冲池中,再流向H2C传输模块中,最终流向动态同步存储器DDR4中待曝光处理,传输结束时,中断模块发出中断,通知上位机,此次DMA传输结束。
当解析为C2H指令时,SGDMA引擎控制模块先获取描述符请求,再获取描述符,当达到指令中的传输长度时,不再获取描述符;在获取描述符的同时,SGDMA引擎控制模块根据描述符内容从FPGA部件的数据源地址取数据发往上位机,当达到指令中的传输长度时,不再取数据;若发送结束,由中断模块产生中断,告知上位机,此次DMA传输结束。
(3)寄存器读写模块是用来传输上位机读写指令寄存器值。寄存器读写模块,通过读取不同寄存器的值,监测当前SGDMA引擎控制模块与用户接口模块之间的状态;通过写入不同寄存器值,控制SGDMA引擎控制模块与用户接口模块之间的状态。其中监测状态包括:接收数据个数,接收侧FIFO是否满了,DDR4是否满了,用户逻辑全局复位是否启动。控制状态:暂停传输,传输继续,用户逻辑全局复位。当监测到FIFO已满或者DDR4已满,停止传输,否则继续传输。
进一步的,所述控制指令包括启动C2H的引擎传输,传输长度和接收的缓冲区位置。
和现有技术相比,本发明的优点为:
(1)本发明在上位机与SGDMA引擎控制模块之间采用PCIe Gen3x8总线进行数据传输,PCIe Gen3x8总线的速度实际测得为6.4GB/S左右,这极大的提高了直写式光刻系统中的传输带宽。
(2)本发明利用动态同步存储器DDR4存储数据,使得数据的保存,不会因为逻辑处理不及时导致数据丢失,实现数据可控制。
(3)本发明采用SGDMA引擎控制模块进行数据传输,可根据PCIe的不同标准进行可配置化处理,以适应不同传输带宽需求。
附图说明
图1是本发明中传输系统的原理框图;
图2是本发明中的数据流向示意图;
图3是本发明中描述符的说明图;
图4是本发明中的SGDMA引擎控制模块的数据搬移示意图;
图5是本发明中的描述符链表示意图。
其中:
100、上位机,200、PCIe 硬核,300、SGDMA引擎控制模块,301、寄存器模块,302、中断模块,303、SGDMA引擎,304、H2C引擎,305、C2H引擎,306、SGDMA读缓冲池,307、SGDMA写缓冲池,400、寄存器读写模块,500、C2H异步缓冲模块,600、H2C异步缓冲模块,700、用户接口模块,701、USER寄存器,702、TX数据发送接口,703、RX数据接收接口,704、曝光处理模块,705、动态同步存储器DDR4。
具体实施方式
下面结合附图对本发明做进一步说明:
如图1所示的本发明涉及一种用于直写式光刻系统中的PCIe DMA数据传输系统,包括上位机、PCIe 硬核、引擎控制模块、寄存器读写模块、C2H异步缓冲模块、H2C异步缓冲模块和用户接口模块;所述上位机和PCIe硬核交互式连接;所述PCIe硬核和引擎控制模块交互式连接。
具体地说,所述引擎控制模块包括寄存器模块、中断模块、SGDMA引擎、SGDMA读缓冲池和SGDMA写缓冲池;所述寄存器模块和SGDMA引擎交互式连接,SGDMA引擎的输出端接中断模块的输入端;所述SGDMA引擎包括H2C引擎和C2H引擎;所述H2C引擎的输出端接SGDMA读缓冲池的输入端;所述C2H引擎的输入端接SGDMA写缓冲池的输出端。
所述用户接口模块包括USER寄存器、TX数据发送接口、RX数据接收接口、动态同步存储器DDR4和曝光处理模块;所述寄存器模块分别与寄存器读写控制模块、用户寄存器交互式连接;所述SGDMA读缓冲池的输出端接H2C异步缓冲模块的输入端,H2C异步缓冲模块的输出端接RX数据接收接口的输入端;SGDMA写缓冲池的输入端接C2H异步缓冲模块的输出端,C2H异步缓冲模块的输入端接TX数据发送接口的输出端。
在上述直写式光刻系统中的PCIe DMA数据传输系统中,各部件的作用为:所述上位机100,用于收发数据并支持驱动。所述PCIe硬核200,用于将FPGA内置硬核电信号转逻辑信号。所述SGDMA引擎控制模块300,用于DMA传输的读写控制以及各模块协调传输。所述寄存器模块301,用于解析寄存器值并反馈状态至SGDMA引擎。所述中断模块302,用于完成数据传输时产生中断接收方通知发送方完成此次传输。所述SGDMA引擎303,包含H2C引擎304与C2H引擎305,描述符完成相应的请求包与完成包,并根据寄存器模块301反馈值做出相应读写控制判断。所述H2C引擎304,用于接收来自上位机带数据完成包至SGMDA写缓冲池307。所述C2H引擎305,用于发送来自SGDMA读缓冲池306的带数据完成包至上位机100。所述SGDMA读缓冲池306,通过H2C引擎接收上位机的完成包数据并发往H2C异步缓冲模块。所述SGDMA写缓冲池307,用于接收C2H异步缓冲模块500数据并通过C2H引擎305发往上位机100。所述寄存器读写模块400,用于读写寄存器模块301以及USER寄存器701的各个寄存器值交互控制。所述C2H异步缓冲模块500,用于C2H异步处理缓冲。所述H2C异步缓冲模块600,用于H2C异步处理缓冲。所述用户接口模块700,主要为数据收发接口和用户寄存器接口。通过设置USER寄存器701可以控制曝光系统以及收发状态,并通过寄存器读写模块400读到寄存器模块301的内容,进一步反馈给上位机100,上位机100判断用户曝光当前状态以及收发状态,再由状态决定相应的控制。所述TX数据发送接口702为数据发送接口。所述RX数据接收接口703为数据接收接口。所述曝光处理模块704,用于进行直写式曝光处理。所述动态同步存储DDR4 705,用于缓存接收数据,以及发送数据。
进一步的,所述SGDMA引擎控制模块通过PCIe总线传输数据。SGDMA引擎控制模块通过PCIe总线传输数据,包括:根据上位机发出的控制指令进行解析获取读和/或写请求命令;根据所述读和/或写请求命令,生成相应SGDMA的传输读操作或者写操作,并通过PCIe总线完成该操作的数据传输。根据解析不同读写控制信号,从SGDMA引擎控制模块通过PCIe总线进行SGDMA读和/ 或SGDMA写,包括:若读写控制信号中包含H2C指令,则生成存储器读请求包;将存储器读请求包发送至上位机;通过PCIe总线接收上位机发送的带有数据的读完成包,并将读完成包中的数据写入到SGDMA的读缓冲池中,并由该缓冲池最终写入内存,待曝光处理。其中,读完成包中的数据为读请求包为对应的上位机的内存Buffer空间中的曝光数据。若读写控制信号中包含C2H指令,则将对应的SGDMA引擎控制模块的SGDMA写缓冲池中的数据生成写请求包,并通过PCIe总线发送至上位机;其中,每个缓冲池均相互独立。PCIExpress(简称PCIe)是当前最新的一种高速串行计算机扩展总线标准。PCIe总线采用当下流行的高速串行点对点,PCIe设备分配独享通道带宽,数据带宽传输能力明显提高。PCIe最新的接口是PCIe 3.0接口,其比特率为8Gbps,PCIe灵活性较强,拥有x1、x2、x4、x8、x16、x32多种通道模式,以满足不同设备对数据传输带宽要求。DMA(Direct Memory Access)传输是一种内存直接映射传输方式。DMA传输降低了对处理器的依赖,由DMA控制模块进行与存储器设备的数据搬移,由此可见DMA传输可提高数据搬移的效率。
进一步的,PCIe硬核,将PCIe的高速差分电信号转为FPAG部件的用户逻辑信号,该信号使用了AXI4_Stream协议,该协议最大支持256位宽传输,握手协议传输,支持无限突发传输能力。所述PFGA部件采用Xilinx公司的V6、V7、U1traScale 系列中的一种。
进一步的,所述动态同步存储器DDR4,用于暂时存放大量的数据,DDR4的读写控制是用FPGA部件控制。由于PCIe3.0x8的数据高速率性,为避免数据处理不及时导致数据丢失,因此使用动态同步存储器DDR4作为外部存储。当传输至DDR4即将存满,可停止传输,这样设计提高了该传输系统读写数据可控性。
本发明还涉及一种上述用于直写式光刻系统中的PCIe DMA数据传输系统的传输方法,该方法包括以下步骤:
(1)上位机向SGDMA引擎控制模块发送控制指令,SGDMA引擎控制模块接收到上位机发送的控制指令后,在SGDMA引擎中进行解析。
所述SGDMA引擎控制模块,用于对控制指令的命令进行解析,获取相应的H2C和/或C2H请求;读请求生成,若解析为H2C指令,则生成存储器读请求包,从上位机发送至SGDMA引擎控制模块,再写入读缓存池中;写请求完成,若解析为C2H指令,则根据写缓冲池数据生成写请求包,发送至上位机Buffer。
(2)如图2所示,在上述用于直写式光刻系统中的PCIe DMA数据传输系统中,数据流向有由上位机到FPGA部件和由FPGA部件到上位机两种。上位机流向FPGA部件,是由上位机产生曝光数据,通过PCIe驱动流向SGDMA引擎控制模块,再由SGDMA引擎控制模块流向FPGA部件的用户RX端,FPGA部件用户在RX端接收数据后,即可进行下一步曝光处理。FPGA部件也可以通过用户TX端将需要返回的数据,通过SGDMA引擎控制模块返回。
在解析上位机读写控制指令前,图2中的驱动根据传输数据大小产生描述符数量和描述符大小,形成描述符链表,已配置上位机内存中的Buffer,且相邻描述符之间的地址不可跨越4K。在描述符链表中,单个描述符的内容数据大小不得超过256MB。
设数据从上位机发往FPGA部件的传输过程为H2C,数据从FPGA部件发往上位机的传输过程为C2H;其中,H2C为DMA的读操作,C2H为DMA的写操作;不同的数据流方向,是由接收上位机不同的控制指令决定的。
当解析为H2C指令时,SGDMA引擎控制模块先获取描述符请求,再获取描述符,当获取到最后一个描述符时,停止获取;当SGDMA引擎控制模块接到描述符时,SGDMA引擎控制模块根据第一个可用描述符向上位机源地址发送读请求,然后上位机发送带数据的完成包,启动H2C引擎,通过PCIe Gen3x8总线被SGDMA引擎接收,并缓存至SGDMA读缓冲池中,再流向H2C传输模块中,最终流向动态同步存储器DDR4中待曝光处理。在获取最后一个描述符时,SGDMA引擎控制模块要进行一下判断,判断还有没有描述符,若没有,则停止从上位机获取数据,表示传输结束。传输结束时,中断模块发出中断,通知上位机,此次DMA传输结束。中断方式包括MSI、MSI-X和INTx。H2C指令为启动H2C引擎、传输长度和数据存储的缓冲区位置。
当解析为C2H指令时,SGDMA引擎控制模块先获取描述符请求,再获取描述符,当达到指令中的传输长度时,不再获取描述符;在获取描述符的同时,SGDMA引擎控制模块根据描述符内容从FPGA部件的数据源地址取数据发往上位机,当达到指令中的传输长度时,不再取数据;若发送结束,由中断模块产生中断,告知上位机,此次DMA传输结束。C2H指令为启动H2C引擎、传输长度和数据存储的缓冲区位置。
(3)寄存器读写模块是用来传输上位机读写指令寄存器值。寄存器读写模块,通过读取不同寄存器的值,监测当前SGDMA引擎控制模块与用户接口模块之间的状态;通过写入不同寄存器值,控制SGDMA引擎控制模块与用户接口模块之间的状态。其中监测状态包括:接收数据个数,接收侧FIFO是否满了,DDR4是否满了,用户逻辑全局复位是否启动。控制状态:暂停传输,传输继续,用户逻辑全局复位。当监测到FIFO已满或者DDR4已满,停止传输,否则继续传输。
进一步的,所述控制指令包括启动C2H的引擎传输,传输长度和接收的缓冲区位置。
进一步的,所述描述符的内容包括:使用了一种控制字段;所述字段包括描述符控制字段,数据长度字段,源数据地址字段,目的地址字段,相邻描述符的地址字段,保留字段。控制字段为描述符有效,描述符停止位,描述符完成位。停止位置1以停止对这个描述符列表取符描述符。完成位置1表示DMA引擎控制完成描述符。数据长度字段为数据的长度,为4字节。源数据地址字段为8字节,表示源数据的地址位。目的地址字段为8字节,表示流向的目的地址。相邻描述符字段为8字节,表示下一描述符所在地址。保留字段字段为3字节。
如图3所示,本发明的SGDMA描述符是256位组成,不同位组成不同字段,具体为0x00,0x04,0x08,0x0c,0x10,0x14,0x18,0x1c,0x20。其中,0x00字段为12位,代表控制位,字段中包括:[3:0]为描述符有效,[7:4]为描述符完成位,[11:8]为描述符获取停止位。0x04字段为28位,代表数据长度。0x08字段为32位,代表源数据的低地址位。0x0c字段为32位,代表源数据的高地址位。0x10字段为32位,代表目的地址低32位。0x14字段为32位,代表目的地址高32位。0x18字段为32位,代表下一描述符地址低32位。0x1c字段为32位,代表下一描述符地址高32位。0x20字段为24位,代表保留位。
本发明采用分散收集链表DMA传输;上位机发出的传输控制指令,该指令包括传输方向以及数据大小和起始地址;SGDMA引擎控制模块根据描述符内容,通过PCIe总线搬运数据。本发明中的分散收集链表特性体现为:使用一定数量的描述符来描述一段需要传输的源数据,当这个描述符描述的数据传输结束时,指向下一个描述符,这样形成一个类似环形的列表。所述描述符的个数是由传输数据的量决定。
如图4所示的本发明中SGDMA引擎控制模块的数据搬移示意图。在A001中数据首先在硬盘中存储,在DMA发生过程中,数据被拷贝到Buffer中,其中Buffer是有多个空闲零散的内存组成。在A002中,有驱动和PCIe IP组成,其中A001中的Buffer内容有描述符描述,由多个描述符形成描述符链表。在A003中,若FPGA中的SGDMA引擎收到上位机的H2C控制指令后,开始获取描述符内容,并通过PCIe的总线协议从A001中的Buffer中搬运数据。数据通过SGDMA控制模块后,送往用户逻辑处理,处理结束数据流向待曝光部分。若FPGA接收上位机的C2H控制指令后,接收描述符内容,并通过PCIe总线协议从SGDMA引擎搬运数据至上位机的Buffer中。
如图5所示的本发明使用的描述符链表,在A002使用,是由驱动生成。该链表是由多个描述符组成,但是相邻的描述符空间地址不可跨越4KB。
本发明涉及半导体行业和印刷电路板行业光刻技术领域,属于光刻机曝光系统中的FPGA数据传输的新方式,特别是使用在高速传输存储设备以及与PC机之间的高速数据传输方式。本发明根据直写光刻系统的FPGA部件的PCIe传输方式,采用SG(Scatter Gather)分散收集链表式DMA(Direct Memory Access)传输,和Block的DMA传输需要先向内存申请一大块连续的物理地址空间的方式不同,该SG(Scatter Gather)分散收集链表式DMA(Direct Memory Access)传输方式,是利用内存中多个分散的缓存块进行收集,使得逻辑上是连续的地址,而物理地址并非连续,这样避免了传输大批量数据时内存申请失败的情况。本发明采用的SG(Scatter Gather)分散收集链表式DMA(Direct Memory Access)传输方式,不仅提高了系统的分散内存的利用率,也使得系统稳定性得到提高,而且提高了数据传输的带宽,降低时延。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。

Claims (4)

1.用于直写式光刻系统中的PCIe DMA数据传输系统,其特征在于:包括上位机、PCIe硬核、引擎控制模块、寄存器读写模块、C2H异步缓冲模块、H2C异步缓冲模块和用户接口模块;所述上位机和PCIe硬核交互式连接;所述PCIe硬核和引擎控制模块交互式连接;
所述引擎控制模块包括寄存器模块、中断模块、SGDMA引擎、SGDMA读缓冲池和SGDMA写缓冲池;所述寄存器模块和SGDMA引擎交互式连接,SGDMA引擎的输出端接中断模块的输入端;所述SGDMA引擎包括H2C引擎和C2H引擎;所述H2C引擎的输出端接SGDMA读缓冲池的输入端;所述C2H引擎的输入端接SGDMA写缓冲池的输出端;
所述用户接口模块包括USER寄存器、TX数据发送接口、RX数据接收接口、动态同步存储器DDR4和曝光处理模块;所述寄存器模块分别与寄存器读写控制模块、用户寄存器交互式连接;所述SGDMA读缓冲池的输出端接H2C异步缓冲模块的输入端,H2C异步缓冲模块的输出端接RX数据接收接口的输入端;SGDMA写缓冲池的输入端接C2H异步缓冲模块的输出端,C2H异步缓冲模块的输入端接TX数据发送接口的输出端。
2.根据权利要求1所述的用于直写式光刻系统中的PCIe DMA数据传输系统,其特征在于:所述SGDMA引擎控制模块通过PCIe总线传输数据。
3.根据权利要求1所述的用于直写式光刻系统中的PCIe DMA数据传输系统的传输方法,其特征在于:该方法包括以下步骤:
(1)上位机向SGDMA引擎控制模块发送控制指令,SGDMA引擎控制模块接收到上位机发送的控制指令后,在SGDMA引擎中进行解析;
(2)设数据从上位机发往FPGA部件的传输过程为H2C,数据从FPGA部件发往上位机的传输过程为C2H;其中,H2C为DMA的读操作,C2H为DMA的写操作;
当解析为H2C指令时,SGDMA引擎控制模块先获取描述符请求,再获取描述符,描述符组成分散收集链表形式发送到SGDMA引擎控制模块;当SGDMA引擎控制模块获取到最后一个描述符时,停止获取;当SGDMA引擎控制模块接到描述符时,SGDMA引擎控制模块根据第一个可用描述符向上位机源地址发送读请求,然后上位机发送带数据的完成包,启动H2C引擎,通过PCIe Gen3x8总线被SGDMA引擎接收,并缓存至SGDMA读缓冲池中,再流向H2C异步缓冲模块中,最终流向动态同步存储器DDR4中待曝光处理,传输结束时,中断模块发出中断,通知上位机,此次DMA传输结束;
当解析为C2H指令时,SGDMA引擎控制模块先获取描述符请求,再获取描述符,当达到指令中的传输长度时,不再获取描述符;在获取描述符的同时,SGDMA引擎控制模块根据描述符内容从FPGA部件的数据源地址取数据发往上位机,当达到指令中的传输长度时,不再取数据;若发送结束,由中断模块产生中断,告知上位机,此次DMA传输结束;
(3)寄存器读写模块,通过读取不同寄存器的值,监测当前SGDMA引擎控制模块与用户接口模块之间的状态;通过写入不同寄存器值,控制SGDMA引擎控制模块与用户接口模块之间的状态。
4.根据权利要求3 所述的用于直写式光刻系统中的PCIe DMA数据传输系统的传输方法,其特征在于:所述控制指令包括启动C2H的引擎传输,传输长度和接收的缓冲区位置。
CN201911235051.1A 2019-12-05 2019-12-05 用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法 Active CN111090221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911235051.1A CN111090221B (zh) 2019-12-05 2019-12-05 用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911235051.1A CN111090221B (zh) 2019-12-05 2019-12-05 用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法

Publications (2)

Publication Number Publication Date
CN111090221A CN111090221A (zh) 2020-05-01
CN111090221B true CN111090221B (zh) 2021-10-26

Family

ID=70396338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911235051.1A Active CN111090221B (zh) 2019-12-05 2019-12-05 用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法

Country Status (1)

Country Link
CN (1) CN111090221B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111736115B (zh) * 2020-05-13 2023-04-07 复旦大学 基于改进型sgdma+pcie的mimo毫米波雷达高速传输方法
CN114691562A (zh) * 2020-12-29 2022-07-01 中科寒武纪科技股份有限公司 用于dma操作的方法、装置、设备、集成电路芯片和板卡
CN115220905A (zh) * 2021-04-19 2022-10-21 苏州苏大维格科技集团股份有限公司 直写光刻数据处理系统和方法
CN113127391B (zh) * 2021-05-13 2023-03-14 西安微电子技术研究所 一种多设备兼容的dma数据传输引擎设计方法
CN114546917B (zh) * 2022-01-29 2024-06-14 山东云海国创云计算装备产业创新中心有限公司 一种fpga侧辅助ip系统
CN114826813B (zh) * 2022-03-23 2024-07-19 北京全路通信信号研究设计院集团有限公司 一种多路数据可靠传输的设备、系统及方法
CN115174707B (zh) * 2022-09-09 2022-11-15 井芯微电子技术(天津)有限公司 一种支持多协议dma引擎的方法、系统及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495920A (zh) * 2011-11-21 2012-06-13 南京中兴特种软件有限责任公司 一种FPGA用基于PCIe的集成化逻辑分析模块
CN106951388A (zh) * 2017-03-16 2017-07-14 湖南博匠信息科技有限公司 一种基于PCIe的DMA数据传输方法及系统
CN107943726A (zh) * 2017-11-16 2018-04-20 郑州云海信息技术有限公司 一种基于PCIe接口的数据传输系统及方法
CN109471816A (zh) * 2018-11-06 2019-03-15 西安微电子技术研究所 一种基于描述符的pcie总线dma控制器及数据传输控制方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10288685B2 (en) * 2014-04-30 2019-05-14 Keysight Technologies, Inc. Multi-bank digital stimulus response in a single field programmable gate array

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495920A (zh) * 2011-11-21 2012-06-13 南京中兴特种软件有限责任公司 一种FPGA用基于PCIe的集成化逻辑分析模块
CN106951388A (zh) * 2017-03-16 2017-07-14 湖南博匠信息科技有限公司 一种基于PCIe的DMA数据传输方法及系统
CN107943726A (zh) * 2017-11-16 2018-04-20 郑州云海信息技术有限公司 一种基于PCIe接口的数据传输系统及方法
CN109471816A (zh) * 2018-11-06 2019-03-15 西安微电子技术研究所 一种基于描述符的pcie总线dma控制器及数据传输控制方法

Also Published As

Publication number Publication date
CN111090221A (zh) 2020-05-01

Similar Documents

Publication Publication Date Title
CN111090221B (zh) 用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法
WO2023284169A1 (zh) 从axi总线到opb总线的数据写入方法及读取方法
US8850125B2 (en) System and method to provide non-coherent access to a coherent memory system
US8122177B1 (en) Direct memory access technique for use with PCIe endpoints
WO2023185035A1 (zh) 内存直接访问架构、系统、方法、电子设备和介质
CA2600419C (en) Method and apparatus for improving the performance of usb mass storage devices in the presence of long transmission delays
KR101069931B1 (ko) 캐쉬를 구비한 데이터 프로세싱 시스템에서 오버헤드를감소시키기 위한 방법 및 장치
US11899612B2 (en) Online upgrading method and system for multi-core embedded system
CN113961494B (zh) 一种pcie总线与axi总线的桥接系统
RU2491616C2 (ru) Устройство, способ и система управления матрицами
CN108268414B (zh) 基于spi模式的sd卡驱动器及其控制方法
CN101556565A (zh) 嵌入式处理器的片上高性能dma
CN110941578B (zh) 一种具有dma功能的lio的设计方法及装置
CN102841871A (zh) 基于高速串行总线的DMA结构的pipeline读写方法
CN102841870A (zh) 基于高速串行总线的通用dma结构及预读方法
US6425071B1 (en) Subsystem bridge of AMBA's ASB bus to peripheral component interconnect (PCI) bus
CN103838694B (zh) 一种fpga高速读取usb接口数据的方法
WO2024103821A1 (zh) 一种数据搬移方法、装置、设备及介质
CN105159850A (zh) 基于fpga的多通道数据传输系统
CN115328832B (zh) 一种基于pcie dma的数据调度系统与方法
KR20020028534A (ko) 디지털신호 처리 프로세서의 hpi와 dma인터페이스를 가진 pci 버스 컨트롤러
CN116629176A (zh) 一种面向异构加速卡的多功能dma设计方法及系统
US20030014596A1 (en) Streaming data cache for multimedia processor
CN104156336A (zh) 一种usb2.0接口芯片的控制方法
CN116049069A (zh) 数据读取方法及相关装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant