当前位置: 首页 > news >正文

dc_shell (六)

### 使用 Milkyway 数据库
Milkyway 数据库是 Synopsys Galaxy™ 设计平台统一的设计存储格式。该数据库为物理设计数据提供持久存储,将 Galaxy 平台工具连接在一起。它会定期更新新功能,以支持 EDA 技术。

设计编译器将经过映射且未统一的设计写入 Milkyway 数据库,包括网表、综合约束以及任何物理指导信息,此时使用 `write_milkyway` 命令。您可以在整个 Galaxy 流程中使用单个 Milkyway 库。

**注意**:设计编译器不支持 `read_milkyway` 命令。

使用 Milkyway 数据库时,您无需使用诸如 Verilog 或 VHDL 之类的中间网表文件交换格式,来与其他 Synopsys Galaxy 平台工具通信。在设计编译器中使用 Milkyway 数据库之前,您必须准备一个设计库,并了解以下概念和任务:
- 关于 Milkyway 数据库
- 使用 Milkyway 数据库的指南
- 准备使用 Milkyway 数据库
- 写入 Milkyway 数据库 

### 关于 Milkyway 数据库
Milkyway 数据库将设计数据存储在 Milkyway 设计库中,将物理库数据存储在 Milkyway 参考库中。
- **Milkyway 设计库**
用于存储设计数据(即未统一的、已映射的网表和约束)的 Milkyway 目录结构被称为 Milkyway 设计库。您可以通过设置 `mw_design_library` 变量,为当前会话指定 Milkyway 设计库的根目录路径。
- **Milkyway 参考库**
用于存储物理库数据的 Milkyway 目录结构被称为 Milkyway 参考库。参考库包含标准单元、宏单元和焊盘单元。有关创建参考库的信息,请参阅 Milkyway 文档。
您可以通过将 `mw_reference_library` 变量设置为根目录路径,为当前会话指定 Milkyway 参考库。列表中的顺序意味着冲突解决的优先级。如果多个参考库中有同名单元,第一个参考库具有优先权。

在使用 Milkyway 数据库之前,请参阅:
- **所需许可证和文件**
- **调用 Milkyway 环境工具** 

### 所需许可证和文件
在使用 Milkyway 数据库之前,您需要具备以下所需的许可证和文件:
- **Milkyway 接口许可证**
设计编译器提供此许可证,用于运行 `write_milkyway` 命令。
- **逻辑库源文件(.lib)**
- **已编译的数据库**
- 逻辑库(.db),包含标准单元的时序、功耗、功能、测试等信息。
- Milkyway 库(FRAM),包含工艺技术数据。 

调用 Milkyway 环境工具
要调用 Milkyway 环境工具,请输入:

                        

该命令会检出 Milkyway 接口许可证。Milkyway 环境工具是一个图形用户界面(GUI),可用于操作 Milkyway 库。您可以使用该工具维护 Milkyway 设计库,例如删除设计中未使用的版本。

使用 Milkyway 数据库的准则
当使用 write_milkyway 命令时,请遵循以下准则:

确保 Milkyway 参考库中存在的所有单元在时序库中有对应的单元。Milkyway 参考库中单元的端口方向是根据时序库中单元的端口方向设置的。如果 Milkyway 参考库中有单元但时序库中没有,那么 Milkyway 参考库中这些单元的端口方向将不会被设置。
在运行 write_milkyway 命令之前,先运行 uniquify 命令。
必须确保逻辑库和 Milkyway 工艺文件中的单位一致。
SDC 文件不包含单位信息。如果逻辑库和 Milkyway 工艺文件中的单位不一致,write_milkyway 命令无法自动转换它们。例如,如果逻辑库使用f法(femtofarad)作为电容单位,而 Milkyway 工艺文件使用皮法(picofarad)作为电容单位,write_sdc 命令的输出将显示不同的网络负载值。
在以下示例中,运行 write_milkyway 命令之前,逻辑库和 Milkyway 工艺文件中的电容单位不一致。显示了网络 gpdhi_word_d_21 的负载信息:

运行 write_milkyway 命令后,SDC 文件显示:

设计编译器区分大小写。在运行 write_milkyway 命令之前,您可以通过执行以下任务,以不区分大小写的模式使用该工具:
准备链接库中所使用库的大写版本。
使用 change_names 命令确保网表为大写形式。

准备使用 Milkyway 数据库
您使用 Milkyway 设计库来指定物理库,并以 Milkyway 格式保存设计。创建 Milkyway 设计库所需的输入是 Milkyway 参考库和 Milkyway 工艺文件。

要创建一个 Milkyway 设计库,

写入 Milkyway 数据库
要将设计数据保存到 Milkyway 设计库中,请使用write_milkyway命令。write_milkyway命令将网表和物理数据从内存写入 Milkyway 设计库格式,重新创建层次结构保留信息,并将当前设计的设计数据保存到一个设计文件中。设计文件的路径为 design_dir/CEL_file_name.version,其中 design_dir 是在mw_design_library变量中指定的位置。

例如,使用-output选项指定文件名。

        

要将内存中的设计信息写入名为 testmw 的 Milkyway 库,并将设计命名为 TOP,请执行以下操作:

示例 5 - 1 展示了一个用于设置和写入 Milkyway 数据库的脚本。

### 关于 write_milkyway 命令的要点
使用 write_milkyway 命令时,请记住以下几点:
- 必须在运行 write_milkyway 命令之前运行 create_mw_lib 命令。
- 如果设计文件已经存在(即,在相同输出目录的设计上运行过 write_milkyway 命令),write_milkyway 命令会创建一个额外的设计文件,并增加版本号。必须确保在 Milkyway 中打开正确的版本;默认情况下,Milkyway 会打开最新版本。为避免创建额外版本,请使用 -overwrite 选项覆盖当前版本的设计文件,以节省磁盘空间。
- 该命令不会修改内存中的数据。
- 内存中设计里存在的、在 Milkyway 中有等效属性的属性会被转换(并非设计数据库中的所有属性都会被转换)。
- 使用 write_milkyway 命令转换的层次化网表会在 Milkyway 数据库中保留其层次结构。 

### 写入Milkyway格式时的限制
在以Milkyway格式写入设计时,需注意以下限制:
- **设计必须是已映射的**
由于Milkyway格式描述的是物理信息,它仅支持已映射的设计。不能使用Milkyway格式存储未映射设计的设计数据。
- **设计不能包含多个实例**
在以Milkyway格式保存设计之前,必须对设计进行唯一化处理。使用`check_design -multiple_designs`命令来报告与多重实例化设计相关的信息。
- **write_milkyway命令将整个层次化设计保存到单个文件中**
write_milkyway命令将整个层次化设计保存到单个Milkyway设计文件中。无法为每个子设计生成单独的设计文件。
- **保存设计时,write_milkyway命令不会保存模块抽象实例**
当以Milkyway格式保存设计时,write_milkyway命令不会在Milkyway设计库中保存模块抽象实例。必须以`.ddc`格式显式保存每个模块抽象。有关模块抽象使用的更多信息,请参阅分层模型文档。 

http://www.dtcms.com/a/336796.html

相关文章:

  • OpenCV---特征检测算法(ORB,Oriented FAST and Rotated BRIEF)
  • AI 对话高效输入指令攻略(五):AI+PicDoc文生图表工具:解锁高效图表创作新范式
  • Tmux Xftp及Xshell的服务器使用方法
  • 深入详解 C++ forward
  • 【数据结构】八大排序之归并排序:分治思想的完美演绎
  • Conda技巧:修改Conda环境目录,节省系统盘空间
  • 深度学习与线性模型在扰动预测上的比较
  • [Linux]学习笔记系列 --[mm][list_lru]
  • Mongodb(文档数据库)的安装与使用(文档的增删改查)
  • vite+react+antd,封装公共组件并发布npm包
  • Zookeeper 在 Kafka 中扮演了什么角色?
  • 密码管理中随机数安全修复方案
  • ELF 动态链接安全:揭秘 RUNPATH 与 RPATH 的库劫持风险
  • AI重塑商业格局:从多模态生成到智能应用的2025行业变革与机遇
  • 【完整源码+数据集+部署教程】无人机目标检测系统源码和数据集:改进yolo11-efficientViT
  • 云原生:重塑软件世界的技术浪潮与编程语言选择
  • redis-集成prometheus监控(k8s)
  • GORM入门:事务管理全解析(二)
  • 机器学习的多种算法
  • 网络间的通用语言TCP/IP-网络中的通用规则2
  • 视觉语言导航(14)——VLN ON ROBOTIC 4.4
  • 力扣32:最长有效括号
  • 飞算JavaAI家庭记账系统:从收支记录到财务分析的全流程管理方案
  • 可编辑150页PPT | 某制造集团产业数字化转型规划方案
  • RH134 管理网络安全知识点
  • 多台服务器批量发布arcgisserver服务并缓存切片
  • JVM 内存管理与垃圾回收机制
  • SQL语法大全指南
  • Unity引擎播放HLS自适应码率流媒体视频
  • 实战测试:多模态AI在文档解析、图表分析中的准确率对比