欢迎来到天天文库
浏览记录
ID:38780051
大小:27.67 KB
页数:9页
时间:2019-06-19
《光刻版图oasis格式简介》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Chapter1 oasis文件简介oasis是用来表示光刻版图的一种文件格式,上面记录了光刻图案。作为gdsii文件的替代格式,和gdsii类似是一种流格式的文件。一般性的介绍可以google到。这里就不再累述。这篇文档,是对参考文献【1】的注释和部分翻译。第一为了方便阅读,对文献【1】中的一些概念和例子进行了解读说明;第二对文献【1】中容易忽略和混淆的地方进行了强调,对没有明确的但可以从其他地方推断出来的一些内容进行了明确。Chapter2 oasis文件格式是一种二进制流的文件格式。它采用变形
2、的BNF语法来描述文件格式,BNF语法见参考文献【1】中36.1节,oasis文件格式的描述见参考文献【1】中36.2节。这里不对那些内容进行重复叙述,只对文件进行部分说明强调。1. 按照标准是"%SEMI-OASIS",但是各个厂商可能会有不同,可能厂商会加上自己的log。程序中出现了"BROA"作为oasis文件格式的开头字段。2. 特别注意、和字段中的大括号中的域是不能重复出现的,而和3、sis-file>中的大括号中的字段是可以重复出现的。在解析的时候要特别注意这点。3. 注意到中,除了自己的关键字START、CBLOCK、PAD和PROPERTY以外,还有两个内嵌的结构,就是和。其中中,第一个出现的字段是CELL,每一个中CELL会且仅会出现一次。因此可以把CELL作为第二层解析的入口。而中,由于这些关键字跟其他部分都不重复,而且在一个中仅都只能出现一次,所以可以直接放在第一层解析。具体4、可以参见第五章。Chapter3 oasis数据类型不同于普通的计算机编程语言的数据格式,oasis作为一种流格式文件,有自己的数据类型表示方法。这些在参考文献【1】中的第七章进行了说明。这里对其中内容进行部分说明,以便方便查阅。一共有下面几种类型的数据格式:Table 1 oasis数据格式 类型长度其他说明bytes8bit最低位bit放在最右边integersunsigned-integer不定,N个byte,8个bits中只有7bits表示实际数据,每个byte最高一个bit表示后面是否5、还有数据。0表示自己是最后一个byte。最低位byte放在oasis文件的最前面signed-integer不定,N个byte,8个bits中只有7bits表示实际数据,每个byte最高一个bit表示后面是否还有数据。0表示自己是最后一个byte。符号位放在最低位byte(文件中最先出现的byte)的最后一位(bit):0表示正,1表示负。最低位byte放在oasis文件的最前面real不定。有8种表示方式。由一个unsigned-integer的数据来表示采用何种表达方式。表示数据表达方式的unsig6、ned-integer数据出现在文件的最前面。接着它后面才是实际要表达的数值。string由一个unsigned-integer的数据来表示string的长度unsigned-integer数据出现在文件最前面。string可以分成b-string,a-string和n-string三类deltasdelta是用来表示方向和长度的一种数据类型。分成4类。各类长度不一样。在oasis文件中,这种数据的第一个出现的字节的最后几个bit是表示方向。后面具体描述。repetitions用来表示重复出现的各个图形7、的位置的一种数据类型。也分成多类,各类长度不一。在后面具体说明pointlists利用这个数据结构就可以画出图形。但这个数据结构本身不包括画图的起始位置信息。而在其他地方确定。是一串delta信息,用来表示各条边的长度和方向。图形的顶点越多,长度越长。在后面具体说明。propertyvalue由一个unsigned-integer表示类型,加上后面的propertyvalue值构成。各种类型的属性,value值不一样,但都比较简单。可以参看参考文献的7.8节table9。3.1 integers类型说8、明3.1.1 unsigned-integerunsigned-integer的长度不确定,是由自己的值来确定的,如果数据长度有N个byte,每个byte的8个bits中只有7bits表示实际数据,最高一个bit表示后面是否还有数据。0表示自己是最后一个byte。最低位byte放在oasis文件的最前面。举个例子就清楚了。十进制的16383:正常的2进制表示是:11,1111,1111,1111,一共14个1。在oasis文件中,由于只有
3、sis-file>中的大括号中的字段是可以重复出现的。在解析的时候要特别注意这点。3. 注意到中,除了自己的关键字START、CBLOCK、PAD和PROPERTY以外,还有两个内嵌的结构,就是和。其中中,第一个出现的字段是CELL,每一个中CELL会且仅会出现一次。因此可以把CELL作为第二层解析的入口。而中,由于这些关键字跟其他部分都不重复,而且在一个中仅都只能出现一次,所以可以直接放在第一层解析。具体
4、可以参见第五章。Chapter3 oasis数据类型不同于普通的计算机编程语言的数据格式,oasis作为一种流格式文件,有自己的数据类型表示方法。这些在参考文献【1】中的第七章进行了说明。这里对其中内容进行部分说明,以便方便查阅。一共有下面几种类型的数据格式:Table 1 oasis数据格式 类型长度其他说明bytes8bit最低位bit放在最右边integersunsigned-integer不定,N个byte,8个bits中只有7bits表示实际数据,每个byte最高一个bit表示后面是否
5、还有数据。0表示自己是最后一个byte。最低位byte放在oasis文件的最前面signed-integer不定,N个byte,8个bits中只有7bits表示实际数据,每个byte最高一个bit表示后面是否还有数据。0表示自己是最后一个byte。符号位放在最低位byte(文件中最先出现的byte)的最后一位(bit):0表示正,1表示负。最低位byte放在oasis文件的最前面real不定。有8种表示方式。由一个unsigned-integer的数据来表示采用何种表达方式。表示数据表达方式的unsig
6、ned-integer数据出现在文件的最前面。接着它后面才是实际要表达的数值。string由一个unsigned-integer的数据来表示string的长度unsigned-integer数据出现在文件最前面。string可以分成b-string,a-string和n-string三类deltasdelta是用来表示方向和长度的一种数据类型。分成4类。各类长度不一样。在oasis文件中,这种数据的第一个出现的字节的最后几个bit是表示方向。后面具体描述。repetitions用来表示重复出现的各个图形
7、的位置的一种数据类型。也分成多类,各类长度不一。在后面具体说明pointlists利用这个数据结构就可以画出图形。但这个数据结构本身不包括画图的起始位置信息。而在其他地方确定。是一串delta信息,用来表示各条边的长度和方向。图形的顶点越多,长度越长。在后面具体说明。propertyvalue由一个unsigned-integer表示类型,加上后面的propertyvalue值构成。各种类型的属性,value值不一样,但都比较简单。可以参看参考文献的7.8节table9。3.1 integers类型说
8、明3.1.1 unsigned-integerunsigned-integer的长度不确定,是由自己的值来确定的,如果数据长度有N个byte,每个byte的8个bits中只有7bits表示实际数据,最高一个bit表示后面是否还有数据。0表示自己是最后一个byte。最低位byte放在oasis文件的最前面。举个例子就清楚了。十进制的16383:正常的2进制表示是:11,1111,1111,1111,一共14个1。在oasis文件中,由于只有
此文档下载收益归作者所有