深入解析Circuit Training项目中的网表格式表示

深入解析Circuit Training项目中的网表格式表示

前言

在芯片物理设计自动化(EDA)领域,网表(Netlist)是描述电路连接关系的基础数据结构。本文将深入解析Circuit Training项目中采用的网表表示方法,帮助读者理解这一关键数据结构的组成和应用。

网表格式概述

Circuit Training项目采用TensorFlow MetaGraphDef协议缓冲区(Protocol Buffer)格式来表示网表信息。这种格式具有结构化、可扩展性强等优点,非常适合描述复杂的电路连接关系。

节点类型详解

1. 宏单元(Macro)

宏单元代表芯片设计中的大型矩形模块,通常是内存块等较大规模的电路单元。

关键属性:

  • 名称(name):唯一标识符
  • 类型(type):固定为"macro"
  • 尺寸(height/width):以微米(μm)为单位
  • 位置(x/y):宏单元中心的坐标
  • 方向(orientation):支持8种标准朝向(N, FN, S, FS, E, FE, W, FW)

宏单元方向示意图

特殊说明:

  • 不允许90度旋转,即初始方向为N/FN/S/FS的宏单元不能改为E/FE/W/FW方向
  • 软宏(Soft Macro)是一种特殊类型,代表标准单元簇,名称以"Grp"开头

2. 标准单元(Standard Cell)

标准单元是构成数字电路的基本构建块,实现各种逻辑功能。

关键属性:

  • 名称(name):唯一标识符
  • 输入(input):列出该单元输出驱动的所有节点
  • 类型(type):固定为"stdcell"
  • 尺寸(height/width):以微米为单位
  • 位置(x/y):单元中心的坐标
  • 权重(weight):该单元驱动网络的权重,默认为1

3. 端口(Port)

端口是位于布局区域边缘或内部的无尺寸元素,用于电路与外部连接。

关键属性:

  • 名称(name):唯一标识符
  • 输入(input):列出该端口驱动的所有节点
  • 类型(type):固定为"port"
  • 位置(side):位于哪一侧(top/bottom/left/right)
  • 坐标(x/y):端口位置
  • 权重(weight):驱动网络的权重,默认为1

4. 宏单元引脚(Macro Pin)

宏单元引脚是附着在宏单元上的无尺寸元素,位置相对于宏单元中心。

关键属性:

  • 名称(name):唯一标识符
  • 输入(input):列出该引脚驱动的所有节点
  • 类型(type):固定为"macro_pin"
  • 所属宏(macro_name):引脚所属宏单元的名称
  • 偏移量(x_offset/y_offset):相对于宏单元中心的位置
  • 坐标(x/y):可选,绝对位置
  • 权重(weight):驱动网络的权重,默认为1

网络(Net)的隐式表示

在Circuit Training的网表格式中,网络是通过宏引脚、标准单元和端口的"input"字段隐式定义的。这种表示方法简洁高效,能够准确描述电路连接关系。

对于软宏中的引脚,"weight"属性被用作线长估计的乘数。例如,如果软宏Grp_a中的N条不同线路驱动软宏Grp_b中的标准单元,则Grp_a引脚的weight属性将被设置为N。

格式转换工具

虽然本文不涉及具体工具链接,但值得注意的是,业界已经开发了多种工具可以将LEF/DEF、Bookshelf等常见格式转换为Circuit Training使用的网表协议缓冲区格式。这些转换工具大大提高了该格式的实用性和兼容性。

应用实例

以RISC-V Ariane CPU为例,其网表文件展示了如何用这种格式描述一个完整的设计。通过分析实例文件,可以更直观地理解各种节点类型如何协同工作来描述复杂电路。

总结

Circuit Training项目采用的网表格式具有以下优势:

  1. 结构化程度高,便于程序处理
  2. 支持多种电路元素类型
  3. 通过权重属性实现精细控制
  4. 兼容TensorFlow生态系统

理解这种网表格式对于使用Circuit Training进行芯片布局优化至关重要。希望本文能帮助读者掌握这一关键数据结构,为后续的芯片物理设计工作打下坚实基础。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贾嘉月Kirstyn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值