Output program, output device, and output method

The output program decodes photomask codes on display confirmation devices by obtaining range data and processing photomask data to ensure accurate decoding without a physical reader, addressing screen size and brightness issues.

JP7739933B2Active Publication Date: 2025-09-17DAI NIPPON PRINTING CO LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2021172494
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-10-21
Publication Date
2025-09-17
Estimated Expiration
2041-10-21

AI Technical Summary

Technical Problem

Existing technologies struggle to accurately read photomask codes on display confirmation devices due to screen size, code size, and brightness variations, and require a physical barcode reader for decoding.

Method used

An output program that reads photomask data, outputs a display image, obtains range data for the code, decodes the content based on this data, and performs processing without a physical barcode reader, unaffected by screen size or brightness.

Benefits of technology

Enables reliable decoding of photomask codes without a physical reader, regardless of screen size or brightness, and allows decoding of multiple layers simultaneously.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007739933000001
    Figure 0007739933000001
  • Figure 0007739933000002
    Figure 0007739933000002
  • Figure 0007739933000003
    Figure 0007739933000003
Patent Text Reader

Abstract

To provide an output program or the like that can decipher a code without being affected by a screen size of a display, the size of a displayed code, or brightness of a screen.SOLUTION: An output program makes a computer perform the processing of reading photomask data, outputting a pattern figure included in the photomask data and a display image of a code, acquiring range data indicating a display range of the code in the display image, deciphering the contents indicated by the code on the basis of the range data, and outputting the deciphered contents.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an output program or the like that outputs the content represented by a code included in photomask data. [Background technology]

[0002] Photomasks used to manufacture semiconductor integrated circuits are affixed with barcodes or two-dimensional codes (hereinafter simply referred to as "codes") that indicate control numbers, etc. During the manufacturing process of semiconductor integrated circuits, an exposure device reads the code on the photomask and checks whether it is the photomask that should be used.

[0003] Photomask data is data used when manufacturing photomasks. When photomask data is newly created or changed, the pattern graphics and codes contained in the photomask data are displayed on a device that displays and checks the photomask data (hereinafter referred to as a display checking device) during the inspection process. Then, by reading and deciphering the displayed code with a barcode reader, the user can confirm the model number of the displayed photomask and whether the model number has been assigned as an appropriate code.

[0004] However, such a reading means of holding a barcode reader over a code displayed on the display of a display confirmation device has a problem in that the code may not be read accurately depending on the screen size of the display, the size of the code displayed on the screen, the brightness of the display, etc. In relation to this problem, Patent Document 1 proposes a barcode display device that creates and arranges barcodes according to a barcode display layout (a layout in which the thinnest line is two pixels wide) that corresponds to the display specifications of the display. Also, Patent Document 2 proposes a barcode service providing system in which a database having a table correlating model data of mobile terminals with image data of barcodes is provided in a server, and the server retrieves an image of the barcode corresponding to the model from the database and displays it on the screen of the mobile terminal, thereby enabling the barcode to be read accurately with a barcode reader. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Japanese Patent Application Laid-Open No. 2002-117372 [Patent Document 2] Japanese Patent Application Laid-Open No. 2003-115025 Summary of the Invention [Problem to be solved by the invention]

[0006] In a display confirmation device, for example, if you want to fit the pattern graphic and code of photomask data on the same screen, you need to display the code in a reduced size, but the above-mentioned conventional technologies may not be able to do this. When displaying a reduced code, it may not be possible to ensure that the thinnest line of the barcode is at least two pixels wide, as with the technology described in Patent Document 1. With the technology described in Patent Document 2, the size of the barcode image data is fixed for each display, so it may not be possible to display the pattern graphic and code of the photomask data on the same screen. Furthermore, a physical code reader must be prepared in addition to the display confirmation device.

[0007] The present invention has been made in view of the above circumstances, and its purpose is to provide an output program or the like that can decode codes without being affected by the screen size of the display, the size of the code to be displayed, the brightness of the screen, etc. [Means for solving the problem]

[0008] An output program according to one aspect of the present application reads photomask data, outputs a display image of a pattern graphic and a code included in the photomask data, obtains range data indicating the display range of the code in the display image, decodes the content indicated by the code based on the range data, and outputs the decoded content, causing a computer to perform the following processing. [Effects of the Invention]

[0009] According to one aspect of the present application, it is possible to decode a code without using a code reader and without being affected by the screen size of the display, the size of the code to be displayed, the brightness of the screen, and the like. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 2 is a block diagram illustrating an example of a hardware configuration of a display confirmation device. [Figure 2] FIG. 2 is an explanatory diagram showing the functional parts of the display confirmation device. [Figure 3] 10 is a flowchart illustrating an example of a procedure of a main process. [Figure 4] FIG. 10 is an explanatory diagram showing a method for specifying a range. [Figure 5] FIG. 2 is an explanatory diagram showing an example of a display screen. DETAILED DESCRIPTION OF THE INVENTION

[0011] The following describes embodiments with reference to the drawings. FIG. 1 is a block diagram showing an example of the hardware configuration of a display confirmation device. The display confirmation device 1 includes a control unit 11, a main memory unit 12, an auxiliary memory unit 13, a VRAM 14, an input unit 15, a display unit 16, a communication unit 17, and a reading unit 18. The control unit 11, the main memory unit 12, the auxiliary memory unit 13, the VRAM 14, the input unit 15, the display unit 16, the communication unit 17, and the reading unit 18 are connected via a bus B. The display confirmation device 1 is configured as a personal computer (PC), a tablet computer, a workstation, or the like. The display confirmation device 1 may also be configured as a multicomputer consisting of multiple computers, a virtual machine virtually constructed by software, or a quantum computer. Furthermore, the functions of the display confirmation device 1 may be realized by a cloud service, and users may use the cloud service via a thin client.

[0012] The control unit 11 has one or more arithmetic processing devices such as a CPU (Central Processing Unit), an MPU (Micro-Processing Unit), a GPU (Graphics Processing Unit), etc. The control unit 11 reads and executes a control program 1P (program, program product) stored in the auxiliary storage unit 13, thereby performing various information processing, control processing, etc. related to the display confirmation device 1.

[0013] The main memory unit 12 is a static random access memory (SRAM), a dynamic random access memory (DRAM), a flash memory, etc. The main memory unit 12 mainly temporarily stores data required for the control unit 11 to execute arithmetic processing.

[0014] The auxiliary storage unit 13 is a hard disk or a solid state drive (SSD), etc., and stores the control program 1P and various databases (DBs) required for the control unit 11 to execute processing. The auxiliary storage unit 13 stores a photomask DB 131. The auxiliary storage unit 13 may be an external storage device connected to the display confirmation device 1. The various DBs and the like stored in the auxiliary storage unit 13 may be stored in a database server or cloud storage different from the display confirmation device 1.

[0015] The VRAM 14 is a storage device also called a graphic memory, a video RAM, or a video memory. The VRAM 14 is configured with an SRAM or the like. The VRAM 14 is a storage device for storing content to be displayed on the display unit 16. The VRAM 14 may be part of the main storage unit 12.

[0016] The input unit 15 is a keyboard and a mouse. The display unit 16 includes a liquid crystal display panel or the like. The display unit 16 displays photomask data and the like. The input unit 15 and the display unit 16 may be integrated to form a touch panel display. The display confirmation device 1 may display on an external display device.

[0017] The communication unit 17 communicates with this computer etc. via a network. In addition, the control unit 11 may use the communication unit 17 to download the control program 1P from another computer via the network and store it in the auxiliary storage unit 13.

[0018] The reading unit 18 reads the portable storage medium 1a including a CD (Compact Disc)-ROM and a DVD (Digital Versatile Disc)-ROM. The control unit 11 may read the control program 1P from the portable storage medium 1a via the reading unit 18 and store it in the auxiliary storage unit 13. The control unit 11 may also read the control program 1P from the semiconductor memory 1b.

[0019] Next, photomask data will be described. Photomask data is data for creating a photomask. A photomask is an original plate for a circuit pattern that is burned onto a silicon substrate by photolithography during the manufacturing process of a semiconductor integrated circuit or the like. Because multiple layers are stacked to form a single semiconductor integrated circuit, multiple photomasks are typically used. Therefore, photomask data is a data group for creating multiple photomasks. Multiple layers are referred to as layers, and the data for each layer that constitutes the photomask data includes pattern graphic data corresponding to the photomask pattern and code graphic data (code) that represents the photomask's management number or the like as a barcode or two-dimensional code. That is, the data for each layer that constitutes the photomask data includes pattern graphic data and code graphic data. Such photomask data is stored in the photomask DB 131. In the photomask DB 131, it is desirable for the photomask data to be associated with an identification ID and the number of layers. The identification ID may be a common portion of the management numbers assigned to each layer. For example, if the control numbers are "AA12345-BBB-D-R4," "AA12345-CCC-D-R4," "AA12345-DDD-D-R4," etc., the identification ID will be "AA12345-R4," etc. In the following explanation, it is assumed that the photomask data is stored in the photomask DB 131 with the identification ID and the number of layers associated with each other.

[0020] Next, the functions of the display confirmation device 1 will be described. Fig. 2 is an explanatory diagram showing the functional units of the display confirmation device. The display confirmation device 1 includes, as its functional units, a data reading unit 11a, a graphic display control unit 11b, a range designation unit 11c, a code decoding unit 11d, and a text display control unit 11e. Each functional unit is realized by the control unit 11 executing a control program 1P.

[0021] The data reading unit 11a reads photomask data to be displayed from the photomask DB 131. The photomask data read by the data reading unit 11a is input to the graphic display control unit 11b and the code decoding unit 11d. The graphic display control unit 11b generates drawing data (pattern graphic and code graphic) for displaying the pattern graphic data and code graphic data included in the photomask data on the display unit 16, and writes the drawing data to the VRAM 14. The drawing data written to the VRAM 14 is data corresponding to the size and resolution of the display screen of the display unit 16. Therefore, when the drawing range of the pattern graphic is wider than the size of the display screen, such as when a large pattern graphic is displayed in its entirety, the pattern graphic is displayed in a reduced size. Accordingly, the code graphic is also displayed in a reduced size. The drawing data written to the VRAM 14 is displayed on the display screen of the display unit 16.

[0022] The user specifies the display range of the code graphic displayed on the display screen using the input unit 15. The range specification unit 11c acquires the range data. The range data is input to the code decoding unit 11d. Based on the photomask data and the range data, the code decoding unit 11d extracts only the graphics within the specified range in the photomask data and recognizes the code shape from the coordinates of each graphic that constitutes the code. The code decoding unit 11d decodes the code and outputs text such as a management number as the decoding result. The code shape recognition and decoding are performed for each layer of data included in the photomask data, so they are repeated a number of times equal to the number of layers. Note that the code display range is assumed to be in approximately the same position for each layer. The decoding results for all layers are input to the text display control unit 11e. The text display control unit 11e generates drawing data for displaying the text on the screen and writes it to the VRAM 14. The drawing data written to the VRAM 14 is displayed on the display screen of the display unit 16. By the above operation, the display screen of the display unit 16 displays the pattern graphic, the code graphic, and the text of the code graphic decoded result.

[0023] The data reading unit 11a corresponds to a reading unit. The graphic display control unit 11b corresponds to a first output unit. The range designation unit 11c corresponds to an acquisition unit. The code decoding unit 11d corresponds to a decoding unit. The text display control unit 11e corresponds to a second output unit.

[0024] Next, the information processing performed by the display confirmation device 1 will be explained using a flowchart. FIG. 3 is a flowchart showing an example of the procedure of the main processing. FIG. 4 is an explanatory diagram showing a method for specifying a range. The user inputs or selects photomask data to be confirmed via the input unit 15 of the display confirmation device 1. The control unit 11 of the display confirmation device 1 reads the photomask data from the photomask DB 131 (step S1). Based on the control program 1P, the control unit 11 displays the photomask data on the display unit 16 (step S2). Specifically, the control unit 11 extracts pattern graphic data and code graphic data for each layer from the read photomask data. The control unit 11 draws the extracted pattern graphic and code graphic for all layers with the frame type, fill color, and display magnification (enlargement / reduction) set by the user, and displays them on the display of the display unit 16. The user specifies the display range of the code graphic displayed on the display using the input unit 15, such as a mouse. Specifically, if the code graphic is a barcode, as shown in FIG. 4A, the user specifies a line segment in the direction of intersection of the barcode so that it passes over all of the barcode. The user clicks the left edge of the barcode (first point) and then the right edge of the barcode (second point). In this case, the range data is line segment data, which is the coordinate values ​​of the two endpoints that specify the line segment. If the code graphic is a two-dimensional code, as shown in FIG. 4B, the user clicks the bottom left (first point) and top right (second point) of the two-dimensional code so that all of the two-dimensional code fits within the range. In this case, the range data is rectangle data, which is the coordinate values ​​of a pair of opposite vertices that specify the rectangle. As long as the display range of the barcode or two-dimensional code can be specified, other methods of specification are also possible. The control unit 11 acquires the range data of the code graphic specified by the user (step S3). The control unit 11 selects the layer to be processed (step S4). The control unit 11 extracts the graphic data that forms the code within the specified range from the photomask data and range data of the selected layer, and decodes the code (step S5). The code shape used for decoding the code is not the shape displayed on the display unit 16, but is recognized based on the coordinates of the figure output from the data reading unit.The control unit 11 stores the decoded text data in a temporary area provided in the main memory unit 12 or the auxiliary memory unit 13 in association with the layer number (step S6). The control unit 11 determines whether or not there is an unprocessed layer (step S7). If the control unit 11 determines that there is an unprocessed layer (YES in step S7), the control unit 11 returns the process to step S4 and processes the unprocessed layer. If the control unit 11 determines that there is no unprocessed layer (NO in step S7), the control unit 11 associates the text data stored in the temporary area with the layer number and displays it on the display unit 16 (step SS8). The control unit 11 ends the process. The display unit 16 may also display the placement coordinates of the code graphic, i.e., the range data of the code graphic.

[0025] 5A and 5B are explanatory diagrams showing examples of display screens. In the example shown in FIG. 5A, the display confirmation device 1 enlarges and displays the code graphic CD according to a range specified by the user. Then, the display confirmation device 1 displays text, which is the code decoded result, in a text box TB. In the example shown in FIG. 5B, the display confirmation device 1 displays the pattern graphic at a scale that allows the entire graphic to be displayed. Therefore, the display confirmation device 1 displays the code graphic CD in a reduced size. However, by performing the above-described processing, the display confirmation device 1 can display the code decoded result shown in the text box TB.

[0026] According to the embodiment described above, there is no need to hold a physical barcode reader over the display unit 16 of the display confirmation device 1 to read the code graphic. Furthermore, the code graphic can be reliably read without being affected by the screen size of the display unit 16, the size of the code graphic to be displayed, the screen brightness, and the like. For example, when a pattern graphic is displayed in a reduced size to display it in its entirety, the code graphic may become distorted, and the code graphic read by the barcode reader may not be able to be decoded. However, in this embodiment, the code graphic is decoded by recognizing the shape of the code from the coordinates of each graphic in the photomask data read by the data reading unit 11a based on the display range of the code graphic, regardless of the display scale, so that the code graphic can be reliably decoded.

[0027] Furthermore, in photomask data consisting of multiple layers, when each layer contains a code graphic indicating information such as a control number, it is possible to decode the code graphics of all layers with a single operation and display the decoded results. Conventionally, when code graphics of multiple layers are displayed overlapping each other, the code graphics of the lower layer are hidden by the code graphics of the upper layer, so even if you try to read and decode all the code graphics of all layers at once with a barcode reader, it may not be possible to decode them. However, in this embodiment, the layers are extracted one by one and the code graphics are decoded, so it is possible to reliably decode the code graphics.

[0028] In the above explanation, the reason why the user specifies the display range of the code graphic is as follows: If a wide range including a large number of pattern graphics is to be decoded, the processing time required to search for the code graphic within the range becomes long. Therefore, by having the user specify the range, the processing time is shortened. If the processing capacity of the display confirmation device 1 is sufficiently high and it is possible to process a wide range in an appropriate processing time, the user may not need to specify the display range. Whether the layout of the code graphics is always the same or there are a limited number of layouts, the user may not need to specify the display range.

[0029] In this embodiment, the code is analyzed by recognizing the shape of the code from the coordinates of each graphic element in the photomask data read by the data reading unit 11a, but this is not limiting. An image may be generated from the coordinates of each graphic element in the photomask data read by the data reading unit 11a, and the shape of the code may be recognized from the generated image to perform code analysis.

[0030] The technical features (constituent elements) described in each embodiment can be combined with each other, and by combining them, new technical features can be formed. The embodiments disclosed herein are to be considered as illustrative in all respects and not restrictive. The scope of the present invention is defined by the claims, not by the above meaning, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]

[0031] 1 Display confirmation device 1P control program 1a Portable storage media 1b semiconductor memory 11 Control section 11a Data reading section 11b Graphic display control section 11c Range specification section 11d Code Breaking Department 11e Text display control section 12 Main memory 13 Auxiliary storage 131 Photomask DB 14 VRAM 15 Input section 16 Display section 17 Communications Department 18 Reading unit B Bus

Claims

1. Photomask data having multiple layer data each including a pattern figure and a code is read, The pattern figures of each layer included in the photomask data and the display image of the code are displayed in an overlapping manner; acquiring range data indicating a display range of the code including a display image of the code of each layer displayed in an overlapping manner; For each layer, decipher the content indicated by the code based on the layer data and the range data; The content decoded for each layer is output in association with information relating to each layer. An output program that causes a computer to perform processing.

2. The code is a barcode, and the range data is line segment data along the crossing direction of the code.

2. The output program according to claim 1, wherein:

3. The line segment data is the coordinate values ​​of the two end points 3. The output program according to claim 2.

4. The code is a two-dimensional code, and the range data is rectangular data surrounding the code.

2. The output program according to claim 1, wherein:

5. The range data is the coordinate values ​​of the opposite vertices of the rectangle.

5. The output program according to claim 4.

6. A reading unit that reads photomask data having a plurality of layer data each including a pattern figure and a code; a first output unit that displays a display image of the pattern graphic of each layer included in the photomask data and a display image of the code in an overlapping manner; an acquisition unit that acquires range data indicating a display range of the code including a display image of the code of each layer displayed in an overlapping manner; a decoding unit that decodes the content indicated by the code for each layer based on the layer data and the range data; a second output unit that outputs the content decoded for each layer in association with information related to each layer; An output device comprising:

7. Reading photomask data having a plurality of layer data each including a pattern figure and a code; The pattern figures of each layer included in the photomask data and the display image of the code are displayed in an overlapping manner; acquiring range data indicating a display range of the code including a display image of the code of each layer displayed in an overlapping manner; For each layer, decipher the content indicated by the code based on the layer data and the range data; The content decoded for each layer is output in association with information relating to each layer. An output method characterized in that the processing is performed by a computer.

Citation Information

Patent Citations

  • Picture information processor

    JP1995262216A

  • Photo-mask identifying device and its method

    JP2000099619A

  • Picture reading system

    JP2000353207A

  • Bar code generation method, and bar code display device and bar code providing device

    JP2002117372A

  • System and method for product quality information management

    JP2003037037A