EDA软件—Cadence学习笔记分享(内含安装教程)

news2024/11/19 15:17:22

作为流行的EDA工具之一,Cadence一直以来以其强大的功能受到广大EDA工程师的青睐。Cadence可以完成整个IC设计流程的各个方面。

Cadence 软件是一个功能强大的系统工具,包括很多功能模块,如原理图输入: 数字、模拟及混合电路仿真:自动布局、布线:印刷电路板图及生产制造数据输出:以及针对高速 PCB 板 MCM 电路的信号完整性分析等,从前到后提供了完整的输入、分析、版图编辑和制造的全线 EDA 辅助设计工具。

EDA工具的诞生算是帮助设计人员“解放”双手。设计人员可以在计算机上利用EDA软件,自动地完成逻辑编译、化简、分割、综合、布局布线、逻辑优化以及仿真测试等工作。工作效率也是提升了百倍不止。

可以这么说,几乎所有的芯片设计公司都难以离开EDA工具。

什么是EDA?

EDA是电子设计自动化(Electronics Design Automation)的缩写,在半导体行业中,属于上游产业块-设计的一个子行业。

EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VerilogHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。

EDA常用软件

EDA工具层出不穷,目前进入我国并具有广泛影响的EDA软件有:EWB、PSPICE、OrCAD、PCAD、Protel、Viewlogic、Mentor、Graphics、Synopsys、LSIlogic、Cadence、MicroSim等等。这些工具都有较强的功能,一般可用于几个方面,例如很多软件都可以进行电路设计与仿真,同时以可以进行PCB自动布局布线,可输出多种网表文件与第三方软件接口。

Cadence概述

作为流行的EDA工具之一,Cadence一直以来以其强大的功能受到广大EDA工程师的青睐。Cadence可以完成整个IC设计流程的各个方面,如电路图输入(Schematic Input)、电路仿真(Analog Simulation)、版图设计(Layout Design)、版图验证(Layout Verification)、寄生参数提取(Layout Parasitic Extraction)以及后仿真(Post Simulation)。如图所示,我们给出了一个简单的模拟集成电路设计流程,以及对应的Cadence工具。
在这里插入图片描述
在这里插入Cadence模拟电路设计流程图片描述

本文针对以上流程,通过设计一个简单的缓冲器的原理图到最终的版图,对Cadence的Composer,Analog Design Environment,Virtuoso,Assura等各大功能模块逐一做介绍。

此外再介绍一点关于Cadence平台的知识。Cadence开发了自己的编程语言skill以及相应的编译器,整个Cadence可以理解为一个搭建在skill语言平台上的可执行文件集。初学者对此可以不用理会,当用户深入后,可以用skill语言对Cadence进行扩展。

运行Cadence

2.1建立个人工作目录

在登陆工作站后,于桌面空白处右键,tools->Terminal,打开终端。默认是在当前登陆的用户目录下,由于实验室机器是多人使用,为了不致混乱,需要建立自己的工作目录。在终端中输入

mkdir wavehorse

其中wavehorse为自己命名的目录名称,你可以用自己名字的拼音或者其它来作为工作目录名称。然后进入自己的工作目录

cd wavehorse

2.2启动Cadence之前的配置
Cadence初次启动之前需要如下一些配置文件:
.cshrc文件:有关一些Cadence必需的环境变量,如Cadence软件的路径及license。
.cdsenv文件:包含Cadence各种工具的一些初始设置。
cds.lib文件:用户库的管理文件,在第一次运行Cadence时会自动生成。
.cdsinit文件:包含Cadence的一些初始化设置以及快捷键设置。
实际上,机房中我们已将各配置文件写好,只要在终端中执行
cds.setup
Cadence的相关配置文件就已经自动设置完毕。如果用户在启动Cadence后,发现无法使用快捷键,则需要把.cdsinit从Cadence的安装目录中拷贝到自己的工作目录下,在终端中输入:
cp /cad/cds/IC5141/tools/dfII/cdsuser/.cdsinit /home/bma/wavehorse
请将其中的/home/bma/wavehorse换成自己的工作目录路径。

2.3拷贝相关的技术文件
在我们设计电路过程中,需要各种技术文件,这些技术文件一般是由Foundry提供。在本教程中,需要如下文件:
TF文件:TF(Technology File)文件一般由Foundry提供,包括了版图设计中的图层信息、符号化器件的定义以及一些针对Cadence工具的规则定义,还有版图转换成GDSII时所用到的层号的定义。本教程中需要的tf文件位于
/cad/smic018_tech/Design_Service_Technology/mixed-signal/LayoutTechnologyFile/SmicVTTF_LO_SRAM_MR_MM_HV_LC_018.tf
display.drf文件:控制Cadence的版图显示。本教程中用到的display.drf文件位于
/cad/smic018_tech/Design_Service_Technology/mixed-signal/LayoutTechnologyFile/display.drf
请将以上文件拷贝到自己的工作目录下。

2.4启动Cadence
现在,我们可以启动Cadence了。在终端中输入命令
icfb&
出现Cadence初始界面,如图所示。

在这里插入图片描述
然后就会打开Cadence的主控窗口CIW(Command Interpreter Window)。如图所示:

在这里插入图片描述
这就是Cadence的集成设计环境,Cadence的大部分工具都可以从这里打开。其中最上方是标题栏,第二行是菜单栏。中间部分是输出区域,许多命令的结果在这里显示。一些出错信息也在这里显示,要学会从输出区域中获取相应的信息。接下来一行是命令输入行。

Cadence的许多操作可以通过鼠标执行,也可以通过输入命令来执行。
此外还有一个What’new窗口,介绍Cadence新版本特性,不必理会,双击左上角将其关闭。

2.5建立个人工作库
Cadence是以库来组织文件的。为了使我们的工作和系统自带库区别,我们需要建立自己的工作库。有两种方法来建立新库,一是通过菜单栏Tools->Library Maneger打开库管理器,另一种是通过File->New->Library来建立新库。这里我们用第一种方法建立新库。单击菜单栏Tools->Library Maneger,会打开LM(Library Maneger)窗口,如图所示。

在这里插入图片描述

该窗口列出了当前已有的库。点击File->New->Library,打开New Library窗口,如图所示。
在这里插入图片描述

在Name一栏输入要新建的库名,如mylib,然后单击OK确定。出现Technology File设置窗口,如图所示。

在这里插入图片描述
如果不做版图设计的话,就不需要tf文件。这里我们选择第一项Compile a new techfile,单击OK确定。出现Load Technology File窗口,如图所示。

在这里插入图片描述

这里我们要输入tf文件所在路径,例如这里我输入的是
/cad/smic018_tech/Design_Service_Technology/mixed-signal/LayoutTechnologyFile/SmicVTTF_LO_SRAM_MR_MM_HV_LC_018.tf
确定后,就会建立名为mylib的新库,Cadence会在当前的工作目录下自动生成一个新目录mylib以存放和库mylib相关的文件。

在这里插入图片描述
以上电子文件和cadence软件安装指导可分享给大家(文末按需领取)

cadence软件及安装指导

在这里插入图片描述

cadence软件及安装指导这里就不多赘述了,有需要的小伙伴可点击下方链接按需领取,更多学习资料也可以分享给大家。

这里给大家放个口:cadence软件及安装指导

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/886191.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

# 快速评估立功科技基于S32K324的TMS方案

文章目录 1.前言2.立功科技的TMS方案介绍2.1 介绍资料2.2 简要介绍 3.S32K3_TriMotor评估板测试3.1 环境搭建S32 Design Studio for S32 Platform 3.4安装RTD 2.0.0安装Freemaster 3.2 3.2 例程测试3.3 例程适配3.4 双核烧录3.5 测试 1.前言 最近和一些做汽车水泵/风机的客户交…

【Linux命令详解 | wget命令】 wget命令用于从网络下载文件,支持HTTP、HTTPS和FTP协议

文章标题 简介一,参数列表二,使用介绍1. 基本文件下载2. 递归下载整个网站3. 限制下载速率4. 防止SSL证书校验5. 断点续传6. 指定保存目录7. 自定义保存文件名8. 增量下载9. 使用HTTP代理10. 后台下载 总结 简介 在编程世界中,处理网络资源是…

python 各种疑难杂包安装方法与踩坑记录

常用招数: 网络问题:切换网络线路/开关科学、启用/不用国内镜像 包找不到:启用/不用国内镜像、尝试conda、pip、source等多种安装方式 gdal、rasterio 参考链接: python rasterio库安装具体流程 - 知乎 Python安装gdal,raster…

JavaScript读取文件夹和文件、输出文件内容到控制台、showDirectoryPicker、getFile、FileReader、readAsText

文章目录 读取文件夹并输出某个文件内容读取文件及输出内容 读取文件夹并输出某个文件内容 效果图 html <button id"idFolder" class"fs_30 cursor_pointer">选择文件夹</button>JavaScript idFolder.onclick async function () {try {let …

获取excel中的图片(包含wps中嵌入单元格图片)

项目中有excel导入功能,并且需要导入excel中的图片;模板如图: 已知office中插入的图片为浮动形式;如图: wps中可以插入浮动图片,也可以插入嵌入单元格图片;如图: 并且在wps嵌入单元格形式的图片可以看到使用的是公式;如图: 问题来了,如何获取图片 并且将图片与单元格进行对应 …

一篇文章带你搞懂KMP算法

28. 找出字符串中第一个匹配项的下标 首先说明一点&#xff0c;这道力扣题背后所对应的思想就是KMP算法 我们先看看题目&#xff1a; 给你两个字符串 haystack 和 needle &#xff0c;请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标&#xff08;下标从 0 …

进军网络安全的小白们,千万别学偏了!!!

随着互联网时代的日益进步&#xff0c;网络安全在近几年进入了蓬勃发展期。由于处于行业的红利期&#xff0c;很多人选择转行想跻身网络安全行业。 那么这些转行的人&#xff0c;对于网络安全的理解有深有浅&#xff0c;当然小白也是一大批。这就导致了很多人特比容易遇到到学…

5G无人露天矿山解决方案

1、5G无人露天矿山解决方案背景 ①2010.10&#xff0c;国家安监总局《金属非金属地下矿山安全避险“六大系统”安装使用和监督检查暂行规定》 ②2016.03&#xff0c;国家发改委《能源技术革命创新行动计划&#xff08;2016-2030&#xff09;》&#xff0c;2025 年重点煤矿区采…

在ubuntu中将dict.txt导入到数据库sqlite3

将dict.txt导入到数据库 #include <head.h> #include <sqlite3.h> int do_insert(int i,char *str,sqlite3 *db); int main(int argc, const char *argv[]) {//创建泵打开一个数据库sqlite3 *db NULL;if(sqlite3_open("./my.db",&db) ! SQLITE_OK){…

springboot+vue项目在国产机东方通部署详细教程!

文章目录 一、部署东方通TongWeb二、部署TongHttpServer三、springboot多模块后端打包四、vue前端打包&#xff08;TongWeb部署&#xff09;五、TongWeb部署&#xff08;前后端一样&#xff09; 一、部署东方通TongWeb 上传安装包&#xff1a;TongWeb7.0.4.9_Enterprise_Linux.…

Java内存区域(运行时数据区域)和内存模型(JMM)

Java 内存区域和内存模型是不一样的东西&#xff0c;内存区域是指 Jvm 运行时将数据分区域存储&#xff0c;强调对内存空间的划分。 而内存模型&#xff08;Java Memory Model&#xff0c;简称 JMM &#xff09;是定义了线程和主内存之间的抽象关系&#xff0c;即 JMM 定义了 …

随机改名并一键导出表格,让你的文件整理更高效

在日常工作中&#xff0c;文件的命名和归类是一个常见的繁琐任务。随着文件数量的不断增加&#xff0c;手动改名和整理变得异常耗时且容易出错。但是&#xff0c;现在有了一款创意文件改名归类利器&#xff0c;让你能够轻松将文件随机改名并一键导出表格&#xff0c;让文件整理…

Google Earth中的KML文件转换为CSV文件存放经纬度

最近进行一个小工作是在google earth中选择一系列点坐标,然后保存为csv文件或txt文件。我在Google Earth Pro在左上方的“文件”–>“保存”–>“将位置另存为”选项。 弹出的窗口中只有“kmz”与“kml”两种格式,这两种格式均是google earth内置的格式(KMZ文件是KML的…

运动路径规划,ROS发布期望运动轨迹

目录 一、Python实现&#xff08;推荐方法&#xff09; 1.1代码cubic_spline_path.py 1.2使用方法 二、C实现 参考博客 想让机器人/智能车无人驾驶&#xff0c;要有期望路径&#xff0c;最简单的是一条直线&#xff0c;或者是一条光滑曲线。 生成路径的方法有两种&#xf…

RSA加密解密算法原理以及实现

文章目录 前言一、RSA加密算法是什么&#xff1f;加密过程1、选择一对不相等且足够大的质数2、计算p、q的乘积3、计算n的欧拉函数4、选择一个与 φ ( n ) \varphi(n) φ(n)互质的整数e5、计算出e对于 φ ( n ) \varphi(n) φ(n)的模反元素d6、将e、n公开作为公钥进行加密7、将d…

步入React正殿 - 生命周期

目录 资料 三个阶段的生命周期函数 创建阶段 初始化阶段constructor 挂载阶段componentWillMount 挂载阶段render 挂载阶段componentDidMount 更新阶段【props或state改变】 更新阶段componentWillReceiveProps 更新阶段shouldComponentUpdate【可不使用&#xff0c;…

Mysql事务篇——Day02

Mysql事务篇——Day02 事务有哪些特性并发事务引发的问题脏读不可重复读幻读 事务隔离级别Read View 在 MVCC里如何工作 事务有哪些特性 事务是依赖MySQL的储存引擎是实现的&#xff0c;我们常见的Innodb引擎就是支持事务的。 不过并不是所有的存储引擎都可以支持事务&#xf…

SecureCRT8.5安装教程

第一步&#xff1a; 将文件下载解压 第二步&#xff1a; 双击进行安装&#xff0c;或者右键以管理员的方式运行 第三步&#xff1a; 直接点下一步 第四步&#xff1a; 选择接受协议&#xff0c;然后点下一步 第五步&#xff1a; 我这里选择所有用户&#xff0c;然后点下一…

js实现按创建时间戳1609459200000 开始往后开始显示运行时长-demo

运行时长 00日 00时 17分 59秒 代码 function calculateRuntime(timestamp) {const startTime Date.now(); // 获取当前时间戳//const runtimeElement document.getElementById(runtime); // 获取显示运行时长的元素function updateRuntime() {const currentTimestamp Date…

spring入门基本介绍及注入方式---详细介绍

一&#xff0c;spring的简介 Spring是一个开源框架&#xff0c;它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。 提供了许多功能强大且易于使用的特性&#xff0c;使得开发者能够更加轻松地构建可维护且可扩展的应用程序&#xff0c;简单来说: Spring使用基…