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

Design Compiler:库特征分析(ALIB)

相关阅读

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


简介 

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

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

z = ab\bar{c} + a\bar{b}cd

图1 实现方式z = a(b+c)\bar{c}+a\bar{b}(c+b)d​​​​​​

图2 实现方式z=a(b+c)(\bar{c}+\bar{b}d)

        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

相关文章:

Design Compiler:库特征分析(ALIB)

相关阅读 Design Compilerhttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm1001.2014.3001.5482 简介 在使用Design Compiler时,可以对目标逻辑库进行特征分析,并创建一个称为ALIB的伪库(可以被认为是缓存)&…...

便携式雷达信号模拟器 —— 打造实战化电磁环境的新利器

在现代战争中,雷达信号的侦察与干扰能力直接关系到作战的成败。为了提升雷达侦察与干扰装备的实战能力,便携式雷达信号模拟器作为一款高性能设备应运而生,为雷达装备的训练、测试和科研提供了不可或缺的支持。 核心功能 便携式雷达信号模拟…...

TypeScript工程集成

以下是关于 TypeScript 工程集成 的系统梳理,涵盖基础配置、进阶优化、开发规范及实际场景的注意事项,帮助我们构建高效可靠的企业级 TypeScript 项目: 一、基础知识点 1. 项目初始化与配置 tsconfig.json 核心配置:{"compilerOptions": {"target": &…...

《P1246 编码》

题目描述 编码工作常被运用于密文或压缩传输。这里我们用一种最简单的编码方式进行编码:把一些有规律的单词编成数字。 字母表中共有 26 个字母 a,b,c,⋯,z,这些特殊的单词长度不超过 6 且字母按升序排列。把所有这样的单词放在一起,按字典…...

基于Transformer框架实现微调后Qwen/DeepSeek模型的非流式批量推理

在基于LLamaFactory微调完具备思维链的DeepSeek模型之后(详见《深入探究LLamaFactory推理DeepSeek蒸馏模型时无法展示<think>思考过程的问题》),接下来就需要针对微调好的模型或者是原始模型(注意需要有一个本地的模型文件,全量微调就是saves下面的文件夹,如果是LoRA,…...

什么是 CSSD?

文章目录 一、什么是 CSSD?CSSD 的职责 二、CSSD 是如何工作的?三、CSSD 为什么会重启节点?情况一:网络和存储都断联(失联)情况二:收到其他节点对自己的踢出通知(外部 fencing&#…...

服务器磁盘io性能监控和优化

服务器磁盘io性能监控和优化 全文-服务器磁盘io性能监控和优化 全文大纲 磁盘IO性能评价指标 IOPS:每秒IO请求次数,包括读和写吞吐量:每秒IO流量,包括读和写 磁盘IO性能监控工具 iostat:监控各磁盘IO性能&#xff0c…...

CentOS Linux升级内核kernel方法

目录 一、背景 二、准备工作 三、升级内核 一、背景 某些情况需要对Linux发行版自带的内核kernel可能版本较低,需要对内核kernel进行升级。例如:CentOS 7.x 版本的系统默认内核是3.10.0,该版本的内核在Kubernetes社区有很多已知的Bug&#…...

使用MetaGPT 创建智能体(1)入门

metagpt一个多智能体框架 官网:MetaGPT | MetaGPT 智能体 在大模型领域,智能体通常指一种基于大语言模型(LLM)构建的自主决策系统,能够通过理解环境、规划任务、调用工具、迭代反馈等方式完成复杂目标。具备主动推理…...

AF3 OpenFoldMultimerDataset类解读

AlphaFold3 data_modules 模块的 OpenFoldMultimerDataset 类是 OpenFoldDataset 类的子类,专门用于 多链蛋白质(Multimer) 数据集的训练。它通过引入 AlphaFold Multimer 论文 中描述的过滤步骤,来实现多链蛋白质的训练。这个类扩展了父类的功能,特别是为了处理多链蛋白质…...

【C++】多态功能细节问题分析

多态是在不同继承关系的类对象去调用同一函数,产生了不同的行为。值得注意的是,虽然多态在功能上与隐藏是类似的,但是还是有较大区别的,本文也会进行多态和隐藏的差异分析。 在继承中要构成多态的条件 1.1必须通过基类的指针或引用…...

[CISSP] [5] 保护资产安全

数据状态 1. 数据静态存储(Data at Rest) 指存储在磁盘、数据库、存储设备上的数据,例如: 硬盘、SSD服务器、数据库备份存储、云存储 安全措施 加密(Encryption):如 AES-256 加密磁盘和数据…...

EIP-712:类型化结构化数据的哈希与签名

1. 引言 以太坊 EIP-712: 类型化结构化数据的哈希与签名,是一种用于对类型化结构化数据(而不仅仅是字节串)进行哈希和签名 的标准。 其包括: 编码函数正确性的理论框架,类似于 Solidity 结构体并兼容的结构化数据规…...

spring boot 集成redis 中RedisTemplate 、SessionCallback和RedisCallback使用对比详解,最后表格总结

对比详解 1. RedisTemplate 功能:Spring Data Redis的核心模板类,提供对Redis的通用操作(如字符串、哈希、列表、集合等)。使用场景:常规的Redis增删改查操作。特点: 支持序列化配置(如String…...

基于S函数的simulink仿真

基于S函数的simulink仿真 S函数可以用计算机语言来描述动态系统。在控制系统设计中,S函数可以用来描述控制算法、自适应算法和模型动力学方程。 S函数中使用文本方式输入公式和方程,适合复杂动态系统的数学描述,并且在仿真过程中可以对仿真…...

每日一题洛谷P8664 [蓝桥杯 2018 省 A] 付账问题c++

P8664 [蓝桥杯 2018 省 A] 付账问题 - 洛谷 (luogu.com.cn) 思路:要使方差小,那么钱不能一下付的太多,可以让钱少的全付玩,剩下还需要的钱再让钱多的付(把钱少的补上)。 将钱排序,遍历一遍&…...

迅饶科技X2Modbus网关-GetUser信息泄露漏洞

免责声明:本号提供的网络安全信息仅供参考,不构成专业建议。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权,请及时与我联系,我将尽快处理并删除相关内容。 漏洞描述 该漏洞的存在是由于GetUser接口在…...

【Pandas】pandas DataFrame values

Pandas2.2 DataFrame Attributes and underlying data 方法描述DataFrame.index用于获取 DataFrame 的行索引DataFrame.columns用于获取 DataFrame 的列标签DataFrame.dtypes用于获取 DataFrame 中每一列的数据类型DataFrame.info([verbose, buf, max_cols, …])用于提供 Dat…...

蓝桥杯Java B组省赛真题高频考点近6年统计分类

基础考点 考点高频难度模拟9基础枚举5基础思维4基础动态规划3基础规律2基础单位换算2基础搜索 1基础双指针1基础数学1基础哈希表1基础暴力1基础Dijkstra1基础 二分1基础 中等考点 考点高频难度动态规划6中等数学5中等枚举4中等模拟3中等思维3中等贪心3中等前缀和3中等二分2中…...

关于inode,dentry结合软链接及硬链接的实验

一、背景 在之前的博客 缺页异常导致的iowait打印出相关文件的绝对路径-CSDN博客 里 2.2.3 一节里,我们讲到了file,fd,inode,dentry,super_block这几个概念,在这篇博客里,我们针对inode和dentr…...

PandasAI:当数据分析遇上自然语言处理

数据科学的新范式 在数据爆炸的时代,传统的数据分析工具正面临着前所未有的挑战。数据科学家们常常需要花费70%的时间在数据清洗和探索上,而真正的价值创造时间却被大幅压缩。PandasAI的出现,正在改变这一现状——它将生成式AI的强大能力注入…...

Unity网络开发基础 (3) Socket入门 TCP同步连接 与 简单封装练习

本文章不作任何商业用途 仅作学习与交流 教程来自Unity唐老狮 关于练习题部分是我观看教程之后自己实现 所以和老师写法可能不太一样 唐老师说掌握其基本思路即可,因为前端程序一般不需要去写后端逻辑 1.认识Socket的重要API Socket是什么 Socket(套接字&#xff0…...

做题记录:和为K的子数组

来自leetcode 560 前言 自己只会暴力,这里就是记录一下前缀和哈希表的做法,来自灵神的前缀和哈希表:从两次遍历到一次遍历,附变形题 正文 首先,这道题无法使用滑动窗口,因为滑动窗口需要满足单调性&am…...

VMware虚拟机卡顿、CPU利用率低、编译Linux内核慢,问题解决与实验对比

目录 一、总结在前面(节约时间就只看这里)0 环境说明1 遇到的问题:2 问题的原因:3 解决办法:4 实验验证:5 关于虚拟机内核数量设置6 关于强行指定Vm能用的CPU内核 二、管理员启动,实验对比实验1…...

【7】数据结构的队列篇章

目录标题 队列的定义顺序队列的实现初始化入队出队顺序队列总代码与调试 循环队列的实现初始化入队出队获取队首元素循环队列总代码与调试 链式队列的实现链式队列的初始化入队出队获取队首元素链式队列总代码与调试 队列的定义 定义:队列(Queue&#x…...

颜色归一化操作

当我们不太关注图像具体细节,只关注图像大致的内容时,为了避免光照角度、光照强度对图像的影响,可以采用下面进行归一化操作。这种颜色系统具有通道对表面方向、照明方向具有鲁棒性的特性,适用于图像分割等领域,在机器…...

2874. 有序三元组中的最大值 II

给你一个下标从 0 开始的整数数组 。nums 请你从所有满足 的下标三元组 中&#xff0c;找出并返回下标三元组的最大值。 如果所有满足条件的三元组的值都是负数&#xff0c;则返回 。i < j < k(i, j, k)0 下标三元组 的值等于 。(i, j, k)(nums[i] - nums[j]) * nums[k…...

05-Spring Security 认证与授权机制源码解析

Spring Security 认证与授权机制源码解析 结合之前的IOC、AOP、事务管理&#xff0c; 这一篇讲讲Spring 的安全性&#xff0c;以下是小弟对Spring Security的一些理解&#xff0c;以及在真实面试中碰到的一些问题做了些整理&#xff0c;欢迎各位大佬一起观摩指点&#xff01;&a…...

深度学习处理文本(6)

理解词嵌入 重要的是&#xff0c;进行one-hot编码时&#xff0c;你做了一个与特征工程有关的决策。你向模型中注入了有关特征空间结构的基本假设。这个假设是&#xff1a;你所编码的不同词元之间是相互独立的。事实上&#xff0c;one-hot向量之间都是相互正交的。对于单词而言…...

STL-vector的使用

1.STL-vector 向量是可以改变其大小的线性序列容器。向量使用连续的空间存储元素&#xff0c;表明向量可以像数组通过下标来访问元素&#xff0c;但是向量的大小可以动态变化。向量的容量可能大于其元素需要的实际容量&#xff0c;向量通过消耗更多的内存来换取存储管理效率。…...