EDA
文章平均质量分 90
GaleZhang
这个作者很懒,什么都没留下…
展开
-
28nm Memory Compiler开发(一)OpenRAM论文阅读
Abstract内存设计的可用性常常抑制了计算机系统的研究。现有的流程设计套件(PDK)经常缺少存储器编译器,而昂贵的商业解决方案仅提供具有不变单元,有限配置和限制性许可证的存储器模型。手动创建内存可能既费时又乏味,而且设计通常不够灵活。本文介绍了OpenRAM,一种开放源代码的内存编译器,它提供了一个平台,用于跨各种技术,大小和配置生成,表征和验证可构造内存设计。它可以进行计算机体系结构,片上系统设计,存储器电路和器件研究以及计算机辅助设计的研究。Introduction静态随机存取存储器(SRAM原创 2021-03-10 12:09:11 · 4278 阅读 · 1 评论 -
Magic源码阅读(六)——DRC检查的实现(下)
对于前面提到的后台自动运行的持续的DRC检查器,也是在DRCcontin.c中实现的,核心方法为DRCContinuous,由WindDispatch()调用,这个函数会一直运行,检查当前窗口中是否有待DRC的区域,如果有则就会使用恰当的方式进行检查。当用户键入了一个新的命令后,这个函数会以最快的方式进入中断。voidDRCContinuous(){#ifndef MAGIC_WRAPPER Rect drc_orig_bbox; /* Area of DRC def that chan原创 2020-10-15 18:17:47 · 560 阅读 · 0 评论 -
Magic源码阅读(五)——DRC检查的实现(中)
接下来我们关注一下DRC更为底层的实现,DRCWhy调用的是DRCInteractionCheck和DRCArrayCheck函数,以及处理DRCCheckThis函数所添加的list中区域的DRCCheckTile函数。DRCInteractionCheck在DRCsubcell.c源文件下,是进行subcell interaction检查的顶层方法,这个方法会检查所有违背interaction规则的错误,并调用传进的函数参数进行处理。intDRCInteractionCheck(def, area原创 2020-10-15 18:17:35 · 501 阅读 · 0 评论 -
Magic源码阅读(四)——DRC检查的实现(上)
当我们从版图文件中读取数据并生成我们基于角勾链的数据模式后,下一步就是在我们的版图上进行DRC(设计规则检查),接下来让我们看一下magic是如何进行常用的DRC的。DRC部分涉及的源码主要有以下几个源文件drc.h #declaration of the main interface, defination of global variablesDRCarray.c #implementation of array related design rule checkDRCbasic.c原创 2020-10-15 18:15:24 · 1149 阅读 · 0 评论 -
Magic源码阅读(三)——数据导入和构建
我们之前已经了解了magic的角勾链数据结构和GDSII版图文件,那么我们的magic是如何实现将GDSII数据库文件构建为基于角勾链这种数据结构的图的呢?Magic构图方法无论是从命令行读入GDSII文件,还是在软件中以UI的方式打开文件,最终都是触发的CmdCalma(MagWindow *w, TxCommand *cmd)这个函数,当命令为read file时,我们会触发函数switch分支中 case CALMA_READ: if (cmd->tx_argc != 3) go原创 2020-10-09 12:05:57 · 1372 阅读 · 1 评论 -
Magic源码阅读(二)——版图GDSII文件的数据格式和解析方法
GDSII流格式,常见的缩写GDSII,是一个数据库文件格式。它用于集成电路版图的数据转换,并成为事实上的工业标准。GDSII是一个二进制文件,其中含有集成电路版图中的平面的几何形状,文本或标签,以及其他有关信息并可以由层次结构组成。GDSII数据可用于重建所有或部分的版图信息。它可以用作制作光刻掩膜版。GDSII文件的所有数据都是由一连串的数据块链接组成的。这些数据块大体上可分为文件头,模块结构头,图素头,图素,图素尾,模块结构尾,文件尾这几个部分,每个部分包含若干个模块,有些模块是必须包含的,另外一些原创 2020-09-28 14:55:13 · 13594 阅读 · 4 评论 -
Magic源码阅读(一)——综述
Magic源码阅读(一)——综述Magic是什么magic是一个集成电路的布局系统。它将有关设计规则和连通性的专业知识直接整合到布局系统中,这是为了支持以下的powerful new operation:持续的规则检查器(能够实时的后台检测当前的违反规则的地方),plowing操作来避免交互式的拉伸和压缩(interactive stretching and compaction),布线工具能够在当前通道已经存在的连接下进行工作。为了实现这些新型op,magic设计了一种新的数据结构,叫做角勾链(co原创 2020-09-25 17:00:06 · 2028 阅读 · 0 评论