在集成电路中,DRC(design rule checking)检查是EDA的重要组成部分。顾名思义,也就是检查版图(layout)是否满足Fab的设计规则,避免错误的发生,导致整个电路设计不可以使用,造成巨大的经济与时间损失,影响项目的进展。
与集成电路类似,PIC版图绘制完成后,也需要进行DRC检查。DRC的三个基本类型包括:线宽(width),间距(spacing), 包含距离(inclusion, 翻译可能不太准确)。这三个类型的示意图如下,
(图片来自文献1)
最小线宽和最小间距比较好理解,也就是版图中图案的最小宽度,以及图案之间的最小距离。对于inclusion, 它指的是位于两个不同层(layer)图案之间的最小距离。两个不同层图案间还存在其他一些关系,不一定是包含关系。
除了这三个设计规则之外,还有些更复杂的规则。例如,波导宽度发生突变,例如在MMI的设计中,taper型波导与多模波导相连,即下图中虚线所示的区域,波导宽度发生突变 。
(图片来https://kb.lumerical.com/)
对于这种宽度突变,DRC检查要能够判断出。至于这种突变是有意为之,还是设计错误,需要设计人员进一步的确认。
上述的这些DRC检查,其处理方式与集成电路的情况类似,由于图案简单,可以通过比较图案的坐标,用较简单的程序实现。PIC版图的难点是对于弯曲形状的DRC检查。与集成电路不同,PIC版图中会有较多的弯曲形状的图形,如下图所示,
(图片来自文献2)
弯曲波导在gds文件中是由非常多的点构成,相邻的点之间构成多边形,如下图所示,
(图片来自http://www.irtnanoelec.fr/wp-content/uploads/2017/11/FGays-Leti.pdf)
一方面,弯曲波导的网格点需要取得足够多,否则图案不是原先设计的弯曲波导结构,就会发生上图中的问题,导致光场不能较好地传输,增加传输损耗。另一方面,由于网格的划分,多边形的宽度可能小于DRC的最小宽度,而实际波导宽度并没有违反DRC规则,如下图所示,弯曲波导的某一个多边形,因为网格的划分,其宽度小于最小线宽,这种问题不能划分为设计错误。
(图片来自文献2)
对于这种情形,在DRC检查的时候,需要对最小宽度,增加一个tolerance,
对于更复杂的图案,人们提出了所谓的equation-based DRC方法,将简单的检查距离方法,扩展至多个维度的检查(不同维度对应图案的不同参数,包括宽度、角度等)。例如,对于taper型波导,其角度的示意图如下,
(图片来自http://www.ece.ust.hk/~eexu/OPTICS2017/Marcel_PhoeniX_OPTICS_2017.pdf)
对应的语句如下,
给出了taper的最小角度和最小线宽。
相比于EIC,PIC的组成器件类型较多,设计规则也比较多, 不同类型的器件设计规则也不太一致。版图完成后,通过人力对图案进行检查,效率非常低,并且仍然有可能存在没有发现的错误。如何通过程序实现自动化的DRC检查,是一个难点。现在一般PIC版图软件的做法是,先定义好不同的mask layer,不同的layer有各自的设计规则。对于某一特定的layer, 往往先对图案形状进行判断分类,如果是规则的矩形,就检查其线宽等参数,而如果是弯曲形状,通过equation-based DRC方法,从多个维度对版图进行检查。虽然复杂度提高了,但是效率提升不少。
设计人员在绘制版图的时候,也需尽量仔细,避免一些不该发生的错误。也许经过一定时间的发展,PIC也可以像EIC一样,实现EDA设计,实现设计任务的细化分工。设计人员只需在逻辑层进行设计,而不需要关心器件级的物理仿真,不需要关心layout的实现。
文章中如果有任何错误和不严谨之处,还望大家不吝指出,欢迎大家留言讨论。
参考文献:
- L. Chrostowski, M. Hochberg, "Silicon photonics design: from devices to systems"
- R. Cao, "Silicon Photonics Design Rule Checking: Application of a Programmable Modeling Engine for Non-Manhattan Geometry Verification"