一种在FPGA中实现直写式光刻机数据倾斜的方法转让专利

申请号 : CN201410470287.4

文献号 : CN104216238B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曹旸李阳

申请人 : 江苏影速光电技术有限公司

摘要 :

本发明公开了一种在FPGA中实现直写式光刻机数据倾斜的方法,先根据倾斜控制字K对数据进行提取分组,然后再对分组后的数据并行进行Y方向上的倾斜处理,并将倾斜处理后的数据送入DDR2进行缓存,实现不同速度的调整,避免出现因速度不匹配造成的数据丢失;最后,将DDR2中的数据读出进行X方向上的倾斜处理,完成了数据的倾斜处理,经处理后的数据满足了图形发生器可接收的数据的要求,能够被其接收,可将倾斜式曝光中的各种图形数据经处理后都能够成为图形发生器可接收的数据,实现了正确的数据曝光。使用FPGA内部的RAM和数字逻辑电路,实现了对数据倾斜的流水线操作,增强了数据处理能力及缩短了数据处理时间。

权利要求 :

1.一种在FPGA中实现直写式光刻机数据倾斜的方法,其特征在于,数据倾斜的步骤如下:(1)首先将每行数据按照每列及倾斜控制字K进行提取分组,即将数据每隔K列挑出一列放在一起组成一组,共K组;

(2)将步骤(1)得到的各组数据分别送入并行的倾斜模块进行Y方向上的倾斜处理,每组数据中的每列数据依次向下移位一个像素,各组数据之间依次向下移位K个像素,因向下移位所空缺出来的数据位由寄存器的初始化值进行补充;处理后生成的数据送入DDR2进行缓存;

(3)最后,将DDR2中存储的数据读出,并进行X方向上的倾斜,即根据倾斜控制字K将数据在X方向上每K行错位一列,因错位所空缺出来的数据位由寄存器的初始化值进行补充,倾斜处理后的图形数据可以满足图形发生器的要求。

2.根据权利要求1所述的一种在FPGA中实现直写式光刻机数据倾斜的方法,其特征在于,利用FPGA的高速数据处理能力,使步骤(1)、步骤(2)和步骤(3)构建成一个流水线结构。

说明书 :

一种在FPGA中实现直写式光刻机数据倾斜的方法

技术领域

[0001] 本发明涉及一种直写式光刻机数据倾斜的方法,具体是一种在FPGA中实现直写式光刻机数据倾斜的方法,属于直写式光刻机数据处理领域。

背景技术

[0002] 在半导体及PCB的生产领域,不同于传统半自动曝光设备的直写式光刻机作为一个关键设备,又被称为影像直接转移设备,是利用图形发生器取代传统光刻机的掩模板,可以直接将计算机的图形数据曝光到晶圆或PCB板上,节省了制板时间和制作掩模板的费用,并且自身也可用做掩模板的制作。倾斜式曝光是指使图形发生器与待曝光平面沿其扫描方向(Y方向)旋转一定角度,再配合光学成像技术,使其达到减小网格精度的技术,以此来实现制作更小线宽的硬件电路,同时可显著提高设备的产能。
[0003] 目前,数字微镜芯片(简称DMD)作为大多数直写式光刻机常用的图形发生器,在倾斜式曝光过程中,实际数据的一行不再单单对应着DMD的一行微镜,而是根据倾斜控制字K,对应着DMD的K行镜片,即采用K行DMD微镜镜片实现真实数据的一行曝光;故在利用DMD进行曝光之前,需要对真实数据进行相应的倾斜处理。

发明内容

[0004] 针对上述现有技术存在的问题,本发明提供一种在FPGA中实现直写式光刻机数据倾斜的方法,可以实现倾斜式曝光中使各种图形数据最终成为图形发生器可接收数据的要求,同时能够增强数据处理能力及缩短数据处理时间。
[0005] 为了实现上述目的,本发明一种在FPGA中实现直写式光刻机数据倾斜的方法,该数据倾斜处理方法的步骤如下:
[0006] (1)首先将每行数据按照每列及倾斜控制字K进行提取分组,即将数据每隔K列挑出一列放在一起组成一组,共K组;
[0007] (2)将步骤(1)得到的各组数据分别送入并行的倾斜模块进行Y方向上的倾斜处理,每组数据中的每列数据依次向下移位一个像素,各组数据之间依次向下移位K个像素,因向下移位所空缺出来的数据位由寄存器的初始化值进行补充;处理后生成的数据送入DDR2进行缓存;
[0008] (3)最后,将DDR2中存储的数据读出,并进行X方向上的倾斜,即根据倾斜控制字K将数据在X方向上每K行错位一列,因错位所空缺出来的数据位由寄存器的初始化值进行补充,倾斜处理后的图形数据可以满足图形发生器的要求。
[0009] 优选地,利用FPGA的高速数据处理能力,使步骤(1)、步骤(2)和步骤(3)构建成一个流水线结构。
[0010] 与现有技术相比,本发明采用了具有高速性能和内部逻辑资源丰富的现场可编程逻辑门阵列FPGA芯片,利用其集成度高,处理速度快,电路结构简单、基于硬件可编程的特点,使用其进行数据的倾斜处理,具体是先根据倾斜控制字K对数据进行提取分组,然后再对分组后的数据并行进行Y方向上的倾斜处理,并将倾斜处理后的数据送入DDR2进行缓存,实现不同速度的调整,避免出现因速度不匹配造成的数据丢失;最后,再将DDR2中的数据读出进行X方向上的倾斜处理,完成了数据的倾斜处理,经处理后的数据满足了图形发生器可接收的数据的要求,能够被其接收,可使倾斜式曝光中的各种图形数据经处理后都能够成为图形发生器可接收的数据。同时,使用其内部的RAM和数字逻辑电路,来定制一个流水线方式的数据处理结构,实现了对数据倾斜的流水线操作,增强了数据处理能力及缩短了数据处理时间;将其应用在直写式光刻机数据处理领域,可满足倾斜式扫描方案的关于数据倾斜处理的要求,实现正确的数据曝光;此外,本发明在FPGA内部最终形成模块式的处理方案,可与数据的其它处理形成流水线方式,从而不会增加额外的处理时间,并且可实现不同倾斜控制字K的处理需求。

附图说明

[0011] 图1为本发明数据倾斜处理的流程图;
[0012] 图2为本发明数据分组的示意图;
[0013] 图3为本发明数据按组进行Y方向倾斜的示意图;
[0014] 图4为本发明各组数据间倾斜的示意图;
[0015] 图5为本发明数据存入DDR2的示意图;
[0016] 图6为本发明数据进行X方向错位的示意图;
[0017] 图7为实施本发明所用装置的结构示意图。

具体实施方式

[0018] 下面结合附图对本发明作进一步说明。
[0019] 如图1所示,上位机下发的数据在进入FPGA后,首先进入数据提取模块进行数据提取,具体是将每行数据按照每列及倾斜控制字K进行提取分组,即将数据每隔K列挑出一列放在一起组成一组,共K组;接着将分组后的各组数据分别送入并行的倾斜模块进行Y方向上的数据倾斜处理,即将每组数据中的每列数据依次向下移位一个像素,各组数据之间依次向下移位K个像素,因向下移位所空缺出来的数据位由寄存器的初始化值进行补充;再将Y方向倾斜处理后生成的数据送入DDR2进行缓存,以达到数据速度的匹配;最后,将DDR2中存储的数据读出,并进行X方向上的倾斜,即根据倾斜控制字K将数据在X方向上每K行错位一列,因错位所空缺出来的数据位由寄存器的初始化值进行补充,先后经Y方向和X方向倾斜处理后的图形数据可以满足图形发生器的要求;可以直接将经倾斜处理后图形数据送到DMD进行数据显示。
[0020] 因寄存器的位宽直接影响着数据内部资源的占用、功耗及处理速度等性能,当其位宽过宽时,会增加内部资源的占用和功耗,同时影响布线的质量;当其位宽过小时,则会影响数据的处理速度;故根据FPGA的内部特点,如图2所示,选择256bits的寄存器用于接收数据。下面以倾斜控制字K=4为例:
[0021] 首先,实际的数据流以图2所示的方式进行下发,FPGA接收此数据并按照倾斜控制字K=4进行分组,从每次下发的256bits数据中每隔四列挑出一列,放到一起形成一组新的64bits宽的数据流,即将标有“1”的各列按顺序挑出并按顺序放到一起,形成第一组,将标有“2”的各列按顺序挑出并按顺序放到一起,形成第二组,以此类推,共分四组。
[0022] 其次,将分组后的四组64bits的数据分别送入四个倾斜处理模块进行Y方向上的并行倾斜处理,即每组数据中的多列数据从左至右依次向下移位(错位)一个像素,各组数据之间依次向下移位K个像素,数据开头部分由于向下错位所形成的空余位使用倾斜模块内寄存器初始化时所赋予的“零”值进行补充,这些补充“零”值的空余位也称补黑图,以第一组64bits的数据为例,其在Y方向上倾斜处理的具体做法是:设置64个64bits宽的寄存器reg_tilt_data0、reg_tilt_data1、reg_tilt_data2、......,第一个时钟到来时将进入倾斜模块的64bits数据reg_tilt_data_in赋值给寄存器reg_tilt_data0;第二个时钟到来时将reg_tilt_data0赋值给reg_tilt_data1,并将新进入的reg_tilt_data_in赋值给reg_tilt_data0,依此进行,可形成一个数据按列依次错位的效果。倾斜模块输出的数据reg_tilt_data_out分别取reg_tilt_data0的最高位,reg_tilt_data1的次高位,reg_tilt_data2的第三高位,即:
[0023] reg_tilt_data_out<=reg_tilt_data0(63)& reg_tilt_data1(62)& reg_tilt_data2(61)&、、、、、、reg_tilt_data63(0);这样最后输出的数据流就如图3所示,完成了第一组数据在Y方向上的倾斜;按上述方法分别对其他三组的数据进行Y方向上的倾斜处理。
[0024] 接着,对于Y方向倾斜处理过后的四组数据要重新组合成一个256bits的数据流,如图4所示,四组数据分别对应DMD的四行镜片,依据直写式光刻机扫描的原理,第二组数据要比第一组数据滞后四个网格精度,第三组数据要比第二组数据滞后四个网格精度,以此类推,所以在重新组合成256bits数据时,每组之间要依次错位4bits,因错位导致的空余部分依然补充黑图。在重新组合模块中,对每组数据采用寄存器打拍的方式进行数据延时处理,即四组数据同步进入重新组合模块,并分别进入每组自己的打拍进程,然后输出数据tilt_ddr_out分别取第一组打拍进程的第0拍数据a0、第二组打拍进程的第4拍数据b4、第三组打拍进程的第8拍数据c8、第四组打拍进程的第12拍数据d12,即:tilt_ddr_out<=a0 & b4 & c8 & d12。
[0025] 如图5所示,重新组合成256bits数据的tilt_ddr_out会在w_clk时钟的驱动下写入DDR2存储器中,进行数据缓存,以防止因速度不匹配造成的数据丢失。数据在存入DDR2中后,会在r_clk时钟的驱动下读出,fifo_d_dout数据随后会进入X方向倾斜模块进行X方向上的倾斜处理,即根据倾斜控制字K实现数据在X方向上每K行错位一列。其中,数据会按照Y方向倾斜过后的格式按行读出。在K=4的情况下,Y方向倾斜过后的一行数据对应着DMD的四行镜片,所以X方向的数据错位按照DMD镜片的每四行进行一次。fifo_d_dout数据会暂存至CT_a1寄存器,同时进行Tilt_d_dout<=‘0’& fifo_d_dout(254downto0)的输出。下一拍到来时,fifo_d_dout同样在暂存至CT_a1寄存器的同时,输出Tilt_d_dout<=CT_a1(255)& fifo_d_dout(254downto0)。以此类推,直到一行DMD镜片填满数据。对应DMD第二行、三行、四行开始时,进行同样的操作。直到第五行开始时,Tilt_d_dout的输出变为Tilt_d_dout<=“00”& fifo_d_dout(253downto0),下一拍输出变为Tilt_d_dout<=CT_a1(255downto254)& fifo_d_dout(253downto0)。对应DMD第六行、七行、八行与第五行进行同样的操作。这样依次进行,会形成对应DMD镜片每四行数据向后错一位的效果。最终的错位效果如图6所示,完成了数据的X方向倾斜处理。
[0026] 综上所述,本发明采用了具有高速性能和内部逻辑资源丰富的现场可编程逻辑门阵列FPGA芯片,利用其集成度高,处理速度快,电路结构简单、基于硬件可编程的特点,使用其进行数据的倾斜处理,具体是先根据倾斜控制字K对数据进行提取分组,然后再对分组后的数据并行进行Y方向上的倾斜处理,并将倾斜处理后的数据送入DDR2进行缓存,实现不同速度的调整,避免出现因速度不匹配造成的数据丢失;最后,再将DDR2中的数据读出进行X方向上的倾斜处理,完成了数据的倾斜处理,经处理后的数据满足了图形发生器可接收的数据的要求,能够被其接收,可使倾斜式曝光中的各种图形数据经处理后都能够成为图形发生器可接收的数据。同时,使用其内部的RAM和数字逻辑电路,来定制一个流水线方式的数据处理结构,实现了对数据倾斜的流水线操作,增强了数据处理能力及缩短了数据处理时间;将其应用在直写式光刻机数据处理领域,可满足倾斜式扫描方案的关于数据倾斜处理的要求,实现正确的数据曝光;此外,本发明在FPGA内部最终形成模块式的处理方案,可与数据的其它处理形成流水线方式,从而不会增加额外的处理时间,并且可实现不同倾斜控制字K的处理需求。
[0027] 此外,本发明采用DDR2做为缓存介质,DDR2属于第二代缓存芯片,比第一代DDR的传输存储速度快一倍以上,可做到333MHz,256bits位宽的数据传输量,对于同样的数据进行处理时,其数据处理能力更强,数据处理所用时间更短。采用流水线处理结构,使数据在X、Y方向上分别倾斜。在实现Y方向上的倾斜后,实现X方向倾斜,相比较以前只做单方向倾斜的矩阵变换处理结构,可有效避免图形错位的发生,真实的还原了原图形结构;并且流水线的处理结构比矩阵转换对数据抽取的做法速度更快,因为其不必等待数据存储一定行数再进行倾斜处理;这样的处理方式也更符合FPGA硬件电路的处理特性,节省资源,可有效降低功耗。