CN106019858B - 一种基于cuda技术的直写式光刻机图像数据按位压缩方法 - Google Patents

一种基于cuda技术的直写式光刻机图像数据按位压缩方法 Download PDF

Info

Publication number
CN106019858B
CN106019858B CN201610586053.5A CN201610586053A CN106019858B CN 106019858 B CN106019858 B CN 106019858B CN 201610586053 A CN201610586053 A CN 201610586053A CN 106019858 B CN106019858 B CN 106019858B
Authority
CN
China
Prior art keywords
data
thread
gpu
block
cuda
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
CN201610586053.5A
Other languages
English (en)
Other versions
CN106019858A (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 Microelectronic 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 Microelectronic Equipment Co Ltd filed Critical Hefei Xinqi Microelectronic Equipment Co Ltd
Priority to CN201610586053.5A priority Critical patent/CN106019858B/zh
Publication of CN106019858A publication Critical patent/CN106019858A/zh
Application granted granted Critical
Publication of CN106019858B publication Critical patent/CN106019858B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/70383Direct write, i.e. pattern is written directly without the use of a mask by one or multiple beams
    • 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/70425Imaging strategies, e.g. for increasing throughput or resolution, printing product fields larger than the image field or compensating lithography- or non-lithography errors, e.g. proximity correction, mix-and-match, stitching or double patterning

Abstract

本发明涉及一种基于CUDA技术的直写式光刻机图像数据按位压缩方法,与现有技术相比解决了CPU的像素压缩技术无法适用于光刻领域特征图像的缺陷。本发明包括以下步骤:数据预处理和初始化;GPU预处理;分配内存;数据复制;启动通用并行计算处理;压缩结果的合并;将压缩之后的数据拷贝至CPU的Host端。本发明通过GPU利用CUDA技术进行并行化处理,提高了计算效率,增加了直写式光刻机的产能,同时降低了数据规模,GPU压缩处理后再将压缩数据传给CPU,减少了对CPU计算能力及传输带宽的依赖。

Description

一种基于CUDA技术的直写式光刻机图像数据按位压缩方法
技术领域
本发明涉及直写光刻机技术领域,具体来说是一种基于CUDA技术的直写式光刻机图像数据按位压缩方法。
背景技术
CUDA是NVIDIA公司2007年提出的支持GPU进行通用计算的编程模型和开发环境,CUDA编程的思想是用海量的线程来开发程序中的并行性,海量线程以层次化的方式组织,单个的线程被映射到标量核SP上执行,一组线程被组织成一个线程块Block被映射到一个SM上执行,最后由线程块组成的线程栅格Grid映射到一个GPGPU上执行。由于GPU具有远超CPU的计算核心数以及海量的并行计算资源,适合进行计算密集型、高度并行化的计算任务。同时,由于GPU的价格远远低于同等性能的并行计算系统,由CPU和GPGPU组成的异构系统已经越来越广的应用到生物医学、流体力学等诸多工程应用领域。
直写式光刻技术是在感光材料(多为胶或者膜)的表面印刷具有特征的构图的技术,无掩膜光刻技术使用数字微镜系统生成构图,通过光学投影元件,图像以一定得倍率投影到光敏感的衬底上,产生特征的构图。
现有的压缩技术中多采用CPU(中央处理器)按像素压缩,其压缩的效率较低,另外对光刻领域的特征图形的压缩比相对较低。随着IC封装载板、半导体掩膜光刻的特征线宽越来要求要高,图形数据量越来越大,如何提高压缩比,对原始数据进行不失真的压缩,将越来越多的限制着光刻设备的产能。因此,如何利用CUDA技术来实现并行高效压缩已经成为急需解决的技术问题。
发明内容
本发明的目的是为了解决现有技术中CPU的像素压缩技术无法适用于光刻领域特征图像的缺陷,提供一种基于CUDA技术的直写式光刻机图像数据按位压缩方法来解决上述问题。
为了实现上述目的,本发明的技术方案如下:
一种基于CUDA技术的直写式光刻机图像数据按位压缩方法,包括以下步骤:
数据预处理和初始化,在CPU的Host端申请存放未压缩前图形数据的任务,获取位图图形数据,其宽度为Width,高度为Height,在GPU的Device端申请按位压缩后的压缩数据的任务;
GPU预处理,在GPU的Device端,根据图形数据的宽、高分配块Block和线程Thread的数量,其中,块Block的数量为图形数据的高;
分配内存,在GPU的Device端利用CUDA接口函数cudaMalloc()分配内存;
数据复制,在GPU的Device端利用CUDA接口函数cudaMemcpy()将CPU Host端的Memory中未压缩的图形数据拷贝至GPU的Global Memory中;
启动通用并行计算处理,CUDA启动多线程并行压缩方法,对图形数据进行压缩处理;
压缩结果的合并,将每个线程Thread处理的结果进行合并,获得有效连续数据;
将压缩之后的数据拷贝至CPU的Host端,利用CUDA提供的接口函数cudaMemcpy(),拷贝GPU的Device端填充好的数据至CPU的Host端的内存区。
所述的启动通用并行计算处理包括以下步骤:
将图形数据的每行数据拷贝至每个块Block的共享存储区Share Momory中;
每个块Block中的线程Thread根据所在块Block的数据分配指定的像素数据;
待所有块Block和其中的线程Thread均分配完毕后,启用Block线程同步函数syncthreads(),开始并行压缩处理;
并行压缩处理,每个线程Thread处理自己负责的像素点,按像素压缩规则将像素压缩的结果保存在一个字节中。
所述的像素压缩规则为:在8位字节中,字节的第1位为标志位,其值为0或1,代表该字节为0或1的展示;字节的第2位至第8位为数量位,表示字节标志位中0或1的重复数量。
有益效果
本发明的一种基于CUDA技术的直写式光刻机图像数据按位压缩方法,与现有技术相比通过GPU利用CUDA技术进行并行化处理,提高了计算效率,增加了直写式光刻机的产能,同时降低了数据规模,GPU压缩处理后再将压缩数据传给CPU,减少了对CPU计算能力及传输带宽的依赖,降低了成本。本发明采用CUDA多线程并行计算,避免了使用CPU对数据进行二维扫描处理时单线程处理的滞后,从而提高效率。由于光刻领域的图像数据多为较小间隔的线宽线距,使用按像素压缩,出现压缩比很低的情况,而本发明中使用按位压缩,可以针对此类领域的特征图形提高压缩比。
附图说明
图1为本发明的方法顺序图;
图2为GPU与CPU数据交互示意图;
图3为本发明中块Block、线程Thread与图像数据的分配关系与处理示意图;
图4为本发明中线程Thread完成压缩后示意图。
具体实施方式
为使对本发明的结构特征及所达成的功效有更进一步的了解与认识,用以较佳的实施例及附图配合详细的说明,说明如下:
如图2所示,在CUDA架构下,一个应用程序被分为两个部分执行,一部分被分配在CPU上执行,也就是Host端;另一部分被分配在GPU上执行,也就是Device端,又被称为Kernel。而通常是在Host端准备好数据,然后复制到Device端的全局内存、共享内存、纹理存储器中,再由GPU执行Device端程序,执行完的结果,再拷贝至Hsot端的内存中。
如图1所示,本发明所述的一种基于CUDA技术的直写式光刻机图像数据按位压缩方法,包括以下步骤:
第一步,数据预处理和初始化。在CPU的Host端申请存放未压缩前图形数据的任务,获取位图图形数据,其宽度为Width,高度为Height,在GPU的Device端申请按位压缩后的压缩数据的任务。在此,根据需要,可以选择2位、4位、8位、24位和32位等图形数据,这些图形数据的特点为属于由不同像素点的黑点、白点组成的图形,而像素点上的黑点的灰度值为0,像素点上的白点的灰度值为1,通过多个不同的像素点1或0的组合,实现图形的表达。
第二步,GPU预处理。在GPU的Device端,根据图形数据的宽、高分配块Block和线程Thread的数量,其中,块Block的数量为图形数据的高。由于位图数据的像素之间可以并行压缩且不会发生冲突,因此可以设置位图图像的一行像素给一个块Block,因此位图图形数据的高则为块Block所需要设置的数量。而多个块Block又共同组成栅格Grid的设计,因此针对于多个位图图形的压缩,可以设成多个栅格Grid执行,即栅格Grid由数个执行相同程序的块Block组成,块Block由数个线程Thread组成。针对于位图图形大批量的压缩处理其效率更高。
而针对于线程Thread而言,其为块Block下的处理,因此可以将位图图像的一行像素分配给块Block下的线程Thread进行处理。而具体要求线程Thread的大小则根据图形数据的宽度来定,若图形数据的宽度较大则可以分多个线程Thread,若图形数据的宽度较小则可以直接放在一个线程Thread,即将一行图形数据(一个块Block中的数据)均分或者按某个值分配到Block下的Thread进行处理。
第三步,分配内存。在GPU的Device端利用CUDA接口函数cudaMalloc()分配内存,利用CUDA提供的接口函数对Device端分配内存,其大小可以为Host端需要分配的大小。
第四步,数据复制。在GPU的Device端利用CUDA接口函数cudaMemcpy()将CPU Host端的Memory中未压缩的图形数据拷贝至GPU的Global Memory中,GPU的Global Memory为全局存储器,一般存放比较大的图形数据。将图形数据拷贝至Global Memory,其目的是为了后续压缩时,多线程并行处理时,频繁访问未压缩的图形数据,而Global Memory的特点是存储速度快,可提高压缩速度。
第五步,启动通用并行计算处理,CUDA启动多线程并行压缩方法,对图形数据进行压缩处理。将GPU的Global Memory图像数据细化到每个线程Thread,并使用Share Memory加速,每个线程Thread压缩的结果保存在一个字节中。其具体步骤如下:
(1)如图3所示,将图形数据的每行数据拷贝至每个块Block的共享存储区ShareMomory中,等待进行将每个线程Thread分配到指定的像素数据。
(2)每个块Block中的线程Thread根据所在块Block的数据分配指定的像素数据。
例如,针对一个位图图像数据而言,其Block0压缩第一行数据,Block1压缩第二行数据,Block2压缩第三行数据,依此类推,直至达到图像数据的高度。然后Block0中的Thread0处理第一行的0~9像素,Thread1处理第一行的10~19像素,Thread2处理第一行的20~29像素,同理,将第一行的数据均处理完,直至达到图像数据的宽度。
(3)待所有块Block和其中的线程Thread均分配完毕后,启用Block线程同步函数syncthreads(),开始并行压缩处理。
(4)并行压缩处理。每个线程Thread处理自己负责的像素点,按像素压缩规则将像素压缩的结果保存在一个字节中。为了提高压缩比,压缩的结果保存在一个字节内,即像素压缩规则,其表示在8位字节中,字节的第1位为标志位,其值为0或1,代表该字节为0或1的展示,即该字节中均为1或均为0。字节的第2位至第8位为数量位,表示字节标志位中0或1的重复数量,即该字节中0或1的数量。例如:当需表示像素位图为00000时,其按像素压缩规则的字节则表示为00000101。
第六步,压缩结果的合并。如图4所示,将每个线程Thread处理的结果进行合并,获得有效连续数据,形成由若干个字节所顺序展示的字节数据集,完成在GPU的Device端进行数据压缩工作。在压缩时,针对于图形数据非等分在每个Block中,则会有一个线程Thread压缩的图像数据较少,可以采用将其补0或人为的其他操作进行标注即可。
第七步,将压缩之后的数据拷贝至CPU的Host端。利用CUDA提供的接口函数cudaMemcpy(),拷贝GPU的Device端填充好的数据至CPU的Host端的内存区。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明的范围内。本发明要求的保护范围由所附的权利要求书及其等同物界定。

Claims (2)

1.一种基于CUDA技术的直写式光刻机图像数据按位压缩方法,其特征在于,包括以下步骤:
11)数据预处理和初始化,在CPU的Host端申请存放未压缩前图形数据的任务,获取位图图形数据,其宽度为Width,高度为Height,在GPU的Device端申请按位压缩后的压缩数据的任务;
12)GPU预处理,在GPU的Device端,根据图形数据的宽、高分配块Block和线程Thread的数量,其中,块Block的数量为图形数据的高;
13)分配内存,在GPU的Device端利用CUDA接口函数cudaMalloc()分配内存;
14)数据复制,在GPU的Device端利用CUDA接口函数cudaMemcpy()将CPU Host端的Memory中未压缩的图形数据拷贝至GPU的Global Memory中;
15)启动通用并行计算处理,CUDA启动多线程并行压缩方法,对图形数据进行压缩处理;所述的启动通用并行计算处理包括以下步骤:
151)将图形数据的每行数据拷贝至每个块Block的共享存储区Share Momory中;
152)每个块Block中的线程Thread根据所在块Block的数据分配指定的像素数据;
153)待所有块Block和其中的线程Thread均分配完毕后,启用Block线程同步函数syncthreads(),开始并行压缩处理;
154)并行压缩处理,每个线程Thread处理自己负责的像素点,按像素压缩规则将像素压缩的结果保存在一个字节中;
16)压缩结果的合并,将每个线程Thread处理的结果进行合并,获得有效连续数据;
17)将压缩之后的数据拷贝至CPU的Host端,利用CUDA提供的接口函数cudaMemcpy(),拷贝GPU的Device端填充好的数据至CPU的Host端的内存区。
2.根据权利要求1所述的一种基于CUDA技术的直写式光刻机图像数据按位压缩方法,其特征在于:
所述的像素压缩规则为:在8位字节中,字节的第1位为标志位,其值为0或1,代表该字节为0或1的展示;字节的第2位至第8位为数量位,表示字节标志位中0或1的重复数量。
CN201610586053.5A 2016-07-22 2016-07-22 一种基于cuda技术的直写式光刻机图像数据按位压缩方法 Active CN106019858B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610586053.5A CN106019858B (zh) 2016-07-22 2016-07-22 一种基于cuda技术的直写式光刻机图像数据按位压缩方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610586053.5A CN106019858B (zh) 2016-07-22 2016-07-22 一种基于cuda技术的直写式光刻机图像数据按位压缩方法

Publications (2)

Publication Number Publication Date
CN106019858A CN106019858A (zh) 2016-10-12
CN106019858B true CN106019858B (zh) 2018-05-22

Family

ID=57117525

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610586053.5A Active CN106019858B (zh) 2016-07-22 2016-07-22 一种基于cuda技术的直写式光刻机图像数据按位压缩方法

Country Status (1)

Country Link
CN (1) CN106019858B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111427238A (zh) * 2019-01-10 2020-07-17 苏州苏大维格科技集团股份有限公司 激光直写系统

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108303856B (zh) * 2018-01-22 2020-04-17 合肥芯碁微电子装备股份有限公司 一种基于dmd的光刻机3d灰度图像曝光优化方法
CN111898747B (zh) * 2019-05-05 2023-06-30 杭州海康威视数字技术股份有限公司 一种特征比对方法及电子设备
CN110335190A (zh) * 2019-06-20 2019-10-15 合肥芯碁微电子装备有限公司 基于cuda的直写式光刻机数据拓展方法
CN115297219B (zh) * 2022-07-28 2023-06-30 安徽地势坤光电科技有限公司 直写光刻系统中图像数据的压缩协议、方法及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103414901A (zh) * 2013-08-26 2013-11-27 江苏新瑞峰信息科技有限公司 一种快速jpeg2000图像压缩系统
CN103427844A (zh) * 2013-07-26 2013-12-04 华中科技大学 一种基于gpu和cpu混合平台的高速无损数据压缩方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5641898B2 (ja) * 2010-11-26 2014-12-17 ルネサスエレクトロニクス株式会社 画像圧縮装置及び画像圧縮方法並びにプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103427844A (zh) * 2013-07-26 2013-12-04 华中科技大学 一种基于gpu和cpu混合平台的高速无损数据压缩方法
CN103414901A (zh) * 2013-08-26 2013-11-27 江苏新瑞峰信息科技有限公司 一种快速jpeg2000图像压缩系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111427238A (zh) * 2019-01-10 2020-07-17 苏州苏大维格科技集团股份有限公司 激光直写系统

Also Published As

Publication number Publication date
CN106019858A (zh) 2016-10-12

Similar Documents

Publication Publication Date Title
CN106019858B (zh) 一种基于cuda技术的直写式光刻机图像数据按位压缩方法
DE102020108218A1 (de) Vorrichtung und Verfahren zur Konstruktion von Begrenzungsvolumenhierarchien mit reduzierter Genauigkeit
US11182309B2 (en) Techniques for an efficient fabric attached memory
US11604649B2 (en) Techniques for efficiently transferring data to a processor
DE102021121187A1 (de) EINRICHTUNG UND VERFAHREN ZUR EFFIZIENTEN GRAFIKVERARBEITUNG EINSCHLIEßLICH STRAHLVERFOLGUNG
DE102020124932A1 (de) Vorrichtung und Verfahren zur Echtzeit-Grafikverarbeitung mittels lokaler und cloudbasierter Grafikverarbeitungsbetriebsmittel
DE102018114929B4 (de) System und verfahren für ein rendering eines lichtfeldes
DE102019117585A1 (de) Selektives Packen von Patches für immersives Video
EP3713093A1 (en) Data compression for a neural network
CN109936745B (zh) 用于改善原始视频数据的解压的方法和系统
CN1957376A (zh) 可缩放着色器结构
DE102020129970A1 (de) Systeme und verfahren zur fehlererkennung und steuerung für eingebettete arbeitsspeicher- und rechenelemente
DE112010003750T5 (de) Hardware für parallele Befehlslistenerzeugung
DE102013224160A1 (de) System, Verfahren und Computer-Programm-Produkt zum Optimieren des Managements von Thread-Stapel-Speicher
US10424074B1 (en) Method and apparatus for obtaining sampled positions of texturing operations
DE102018110607A1 (de) Verallgemeinerte Beschleunigung von Matrix-Multiplikations-und-Akkumulations-Operationen
DE102020131901A1 (de) Vorrichtung und verfahren zum durchführen nicht lokaler mittelwertfilterung unter verwendung eines bewegungsschätzschaltkreises eines grafikprozessors
DE102020129756A1 (de) Verwendung eines efehls einer rchitektur mit einem efehlssatz (isa) zur ektornormalisierung
DE102020131852A1 (de) Vorrichtung und verfahren zum ausführen eines stabilen sortiervorgangs mit kurzer latenz
US11907717B2 (en) Techniques for efficiently transferring data to a processor
DE102020118860A1 (de) Techniken zum vorladen von texturen beim rendering von graphik
US9235512B2 (en) System, method, and computer program product for graphics processing unit (GPU) demand paging
JP5706754B2 (ja) データ処理装置及びデータ処理方法
CN108737830A (zh) 基于所预测性能的智能视频帧分组
DE102019117545A1 (de) Reduzierung von registerbankkonflikten für ausführungseinheiten eines multithread-prozessors

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 230088 the 11 level of F3 two, two innovation industrial park, No. 2800, innovation Avenue, Hi-tech Zone, Hefei, Anhui.

Patentee after: Hefei Xinqi microelectronics equipment Co., Ltd

Address before: Two, H2 building, No. 2800, Wangjiang Industrial Park, 230088 Wangjiang West Road, hi tech Zone, Anhui, Hefei, 533

Patentee before: HEFEI XINQI MICROELECTRONIC EQUIPMENT CO., LTD.