Design Compiler:库特征分析(ALIB)

相关阅读

Design Compilerhttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm=1001.2014.3001.5482


简介

在使用Design Compiler时,可以对目标逻辑库进行特征分析,并创建一个称为ALIB的伪库(可以被认为是缓存),伪库中包含复杂布尔函数的实现方式(与尺寸、延迟无关),这些布尔函数是基于库中已有的、更简单的门单元实现的(纯组合逻辑)。

以下面的布尔函数为例,图1和图2是它在ALIB中的两种实现方式,其中黄色为逻辑库中的门单元。库特征分析将构建所有四输入以内的布尔函数,以及常用的超过四输入的布尔函数,每个布尔函数大约生成十五种实现方式。

图1 实现方式​​​​​​

图2 实现方式

ALIB为Design Compiler提供了更大的灵活性和更大的解空间,以探索面积与延迟之间的权衡,但需要注意的是,只有compile_ultra命令才能利用ALIB进行综合,而不能使用compile命令。

虽然使用compile_ultra命令会自动创建ALIB(如果它不存在或已过时),但由于对每个逻辑库进行特征分析可能会耗费一些时间,建议提前生成目标逻辑库的ALIB并将其存储在一个共享位置,以便多个用户可以共用该库。

生成和使用ALIB

使用compile_ultra命令或alib_analyze_libs命令会在alib_library_analysis_path变量(默认值为./,即当前工作目录)指定的目录下创建一个特定版本的子目录,并将生成的ALIB存储在该子目录中。

例如,以下命令会为名为fast.db的目标逻辑库生成fast.db.alib文件(添加了.alib后缀以建立两者之间的联系),并将其存储在目录/remote/libraries/alib/alib-**下:

复制代码
dc_shell> set_app_var target_library "fast.db"
dc_shell> set_app_var link_library "* fast.db"
dc_shell> set_app_var alib_library_analysis_path "/remote/libraries/alib"
dc_shell> alib_analyze_libs // 或compile_ultra命令

生成的目录结构如下所示,其中alib-51为Design Compiler Y-2006.06-SP4版本前创建的子目录,而alib-52为Design Compiler Y-2006.06-SP4版本及以后创建的子目录,因此该版本后的所有版本都可以共用ALIB。

复制代码
/remote/libraries
│
├── target_libraries
│   ├── x.db
│   ├── y.db
│   └── z.db
│
└── alib
    ├── alib-51
    │   ├── x.db.alib
    │   ├── y.db.alib
    │   └── z.db.alib
    │
    └── alib-52
        ├── x.db.alib
        ├── y.db.alib
        └── z.db.alib
相关推荐
智者知已应修善业2 小时前
【proteus 74160实现模60计数器模41计数器】2024-5-27
驱动开发·经验分享·笔记·硬件架构·proteus·硬件工程
石家庄光大远通电气1 天前
学生公寓智能限电系统的组成和功能介绍
硬件工程
Tian_Hang1 天前
Linux基础知识(四)
linux·ide·驱动开发·计算机视觉·硬件工程·动画
CodeSheep程序羊1 天前
宇树科技,即将上市!
java·c语言·c++·人工智能·python·科技·硬件工程
什么都干的派森2 天前
硬件工程FAQ记录
硬件工程
say_fall3 天前
可编程中断控制器8259A工作方式超详细解析
android·开发语言·学习·硬件架构·硬件工程
野生硬件佬3 天前
SPI信号波形异常分析
硬件工程
nuoxin1144 天前
WILX1200HC-5TG144I替代 LCMXO2-1200HC-5TG144I(富利威)
人工智能·嵌入式硬件·fpga开发·电脑·硬件工程·dsp开发
czhaii4 天前
LCD320240间接接口 RA8835控制器 温度MAX6675显示
单片机·嵌入式硬件·硬件工程
XINVRY-FPGA4 天前
XCKU035-2FBVA676I AMD Xilinx Kintex UltraScale FPGA
arm开发·嵌入式硬件·网络安全·fpga开发·硬件工程·信号处理·fpga