「 这是Tanner L-Edit系列的第
5 篇 」
本节内容 · 导览 导出GDSII命令介绍 导出文件的演示操作 需要注意的常见问题接着上一节:导入GDSII文件这一节讲如何导出GDSII文件
01 命令介绍单击菜单栏「File」-「Export Mask Date」,打开导出文件的命令:
![01c759f2bf415b044f68b07f02802b17.png](https://img5.php1.cn/3cdc5/935d/cd5/707c0a7a79114011.png)
Export命令支持的文件格式与导入命令一致依然以GDSII文件为例,在下拉菜单中选择「GDSII」,弹出设置对话框:
![d61584fe537f167cec8061c628722e7c.png](https://img5.php1.cn/3cdc5/935d/cd5/82df97e6247643cb.png)
选项卡介绍
内容分为以下七个部分
1) To file- 指定存储位置和导出文件名,扩展名用 .gds 格式保存
◻ Zip output file - 选中此复选框,以压缩导出文件,并在扩展名末尾附加 .gz
2) Export scope- 指定导出区域
◻ All cells - 导出打开的库中的所有单元
◻ Active cell - 只导出当前处于活动状态的单元
◻ Fabrication cell - 只导出被标记为“Fabricate”状态的单元
◻ Cell: - 通过下拉菜单选择任意一个要导出的单元
◻ Cells from libraries - 从一个或多个库中导出所有单元
◻ Cells selected in navigator - 只导出库导航器中选定的单元
◻ Include hierarchy - 在导出时包含单元中调用的所有例化单元
◻ Exclude libraries - 在导出时排除一个或多个库
3) Log file- 设置日志文件
◻ Save log file to - 为日志文件指定保存路径和文件名
◻ Open log in window - 在导出完成后弹出日志文件
4) GDSII units- 为GDSII数据库设置单位转换值
◻ Default - 默认值:1个数据库单位等同于0.001微米。举例来说,版图中1x1的矩形,记录为1000 x 1000个数据库单位
◻ Custom - 自定义数值
5) Cell names- 设置单元名称的处理方式
◻ Preserve case - 保留原名称的大小写
◻ Upper case - 将单元名称全部以“大写”形式写入
◻ Lower case - 将单元名称全部以“小写”形式写入
◻ Restrict cell names to - 限定单元名称的字符数上限。其中有“32个字符的标准型”、“128个字符的Virtuoso型”,以及“无限制型”三种模式
Tip:一些GDSII系统不能识别单元名称中的小写字母,为匹配这些系统,该软件提供上述名称转换的功能
6) Map file- 指定图层定义文件的路径和名称。设置了此文件,当导出时将替换“Setup Layers”对话框中定义的图层信息
Tip:图层定义文件通常包含四列内容,其中包括“图层的名称”、“图层的用途”、“图层GDS编号” 和 “图层的数据类型”。下面是格式示例
![26be2bd8dbe7edba611a81ddb444fd03.png](https://img5.php1.cn/3cdc5/935d/cd5/6c9b67a510d3b544.png)
(格式范例)
7) Others◻ Do not export hidden objects
- 不导出隐藏的图层
◻ Overwrite object data type ...
- 选中此选项,导出时使用“Setup Layers”对话框中定义的数据类型,取代版图中实际绘制层的当前值
◻ Calculate MOSIS Checksum ...
- 输出MOSIS代工厂 所需的“校验和”和“计数”信息
◻ Check for self-intersecting ...
- 检查自相交的多边形和线段,并将其写进报告。这个选项会使导出文件运行缓慢
◻ Fracture polygons with more ....
- 拆分顶点个数大于n个时的图形。n代表在空白处所填入的数值完成上述设置后,点击下方的
「Export」开始导出文件如果你勾选了“Open log in window”,在导出程序结束时会弹出 *.log日志文件:
![e677e2a1a32454fb7386e8e51c5c77a8.png](https://img5.php1.cn/3cdc5/935d/cd5/72be98c0f23d6034.png)
(日志文件)
02操作演示上一节 演示了如何在L-Edit中导入一份GDS文件(amplifier.gds),这一节的演示还是以上次的文件进行举例:
将 “amplifier.tdb” 导出成GDSII文件格式![7b845ef45dd125ce247b9cd75e5bb14d.gif](https://img5.php1.cn/3cdc5/935d/cd5/a8f692ece8801000.gif)
(操作演示——导出GDSII文件)最终输出的文件是:amplifier_export.gds如果你没有素材进行练习,不妨安装官方提供的示例程序,其中有很多TDB文件可用来操作
03 常见问题在导出过程中,你可能会遇到以下几种
报错情况一、日志文件提示「
顶点个数问题」
![e3205962c4e396ea4fad5aba87f7a64a.png](https://img5.php1.cn/3cdc5/935d/cd5/24c8660cedb50452.png)
(图 1.1)
![42d0aa3f1e89199e30e89d456a10895a.png](https://img5.php1.cn/3cdc5/935d/cd5/4a348fc3e78c9761.png)
(图1.2)因为一些GDS工具和生产规范的限制,顶点的数目不能超过199个,超出后将出现警告和错误提示,导致文件无法成功导出要解决此问题,你可以:→ 在选项卡中
勾选 “
Fracture polygons with more...”
或
→ 单击
「Draw」-「Convert」-「Fracture Polygons」命令,可将一个具有大量顶点的多边形,分解为多个顶点数小于199的多边形
![d59d9819a61802ba670b2d00c843a83a.png](https://img5.php1.cn/3cdc5/935d/cd5/d07d103f616e8515.png)
二、存在「
未定义GDS number/Date type的图层」
![ca4268bc7e7c49f6244ec20c8b71ad52.png](https://img5.php1.cn/3cdc5/935d/cd5/5f6f8610785b430b.png)
(图2.1 未定义图层的GDS number)
![fd626a9b16870a713e23536a9355c7f5.png](https://img5.php1.cn/3cdc5/935d/cd5/cc6276e732456281.png)
(图2.2 未定义图层的Data type)很多代工厂(例如MOSIS和Orbit)都通过一种高端程序“CATS”来运行 GDSII文件——用它从GDSII文件中生成特定的光刻掩模版。运行时会读取GDSII数据信息,包括图层的GDS编号和数据类型,缺失这些信息将写入警告,表明GDSII文件不符合GDSII数据规范要解决此问题,你可以:→ 在导出选项卡中直接
指定 “Layer Map” 文件或→ 单击「
Setup」-「
Layers」,输入图层对应的GDSII数据
![05e573933e0ed4b6965439a925f98069.png](https://img5.php1.cn/3cdc5/935d/cd5/c8f38df7f6431a7e.png)
注:GDSII data type改变后,不能直接应用于当前版图中的图层。你可以使用“Draw”-“Assign GDSII Data Types”命令,或者在导出选项卡中勾选“Overwrite object data type”,将已修改的图层类型应用于图层的所有对象中
![d59d9819a61802ba670b2d00c843a83a.png](https://img5.php1.cn/3cdc5/935d/cd5/d07d103f616e8515.png)
三、单元名称不符合规范,存在「
非法字符」
(图 3.1)
在将每个单元名写入GDSII文件之前,L-Edit会对其进行检查,如果发现任何非法字符,则使用下划线替换它们,并将信息写入日志中
GDSII只允许使用下列字符集。“a~z”,“A~Z”,“0~9”,下划线“_”,问号“?”和美元符号“$”
解决方法非常简单,可以手动修改单元名,也可以使用软件自动替换方案
- End -
点赞鼓励一下
![ad559f9ae7a00752eced03b867d572b0.gif](https://img5.php1.cn/3cdc5/935d/cd5/24f26b68370bbd65.gif)