Candence Virtuoso基本电路设计(一)

本文介绍如何使用virtuoso进行CMOS反相器的设计及功能仿真,包括库和单元的创建、电路设计、引脚添加及连线,并演示了如何设置直流电压和进行电路仿真。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在自学IC版图设计得路上越走越远。。。。。。
virtuoso中进行CMOS反相器和静态寄存器的电路设计以及功能仿真。

一、反相器

1.1 基本电路

静态CMOS反相器由一个NMOS管和一个PMOS管构成,其基本的电路图如下图所示。
在这里插入图片描述

1.2 电路设计(virtuoso基本使用)

1.2.1 创建库和单元

在这里插入图片描述

打开File -> New -> Library建立一个库:
在这里插入图片描述
然后输入库的名字,后侧选择Attach to an existing technology library,因为我这里有一个smic的元件库,然后点击ok进入基本库的选择界面。这里我直接选择smic18mmrf。

在这里插入图片描述
点击OK,成功了之后在刚才那个略微简陋的主界面会显示如下信息:

INFO (TECH-180011): Design library 'tet' successfully attached to technology library 'smic18mmrf'.

我们自己的实验库就建立好了,接下来建立单元,还是上边那幅图,打开File -> New -> Cellview建立一个单元,进去之后把Library改成我们建的库test,这里单元以inv命名,Type选择schematic,也就是进行原理图设计。
在这里插入图片描述
好,至此就进入了软件电路设计环境的主界面:
在这里插入图片描述

1.2.2 进行电路设计

首先在这说一下我们接下来用到的快捷键(很多都可以在功能栏找),方便设计,但是注意版图设计中快捷键大多都不一样!
在这里插入图片描述
首先添加一个PMOS和一个NMOS
快捷键 i 添加实例,点击Browse,从smic库中选取元件n12和p12,直接在Cell栏下方的输入框搜索即可,选择symbol,然后会出现它的参数设置,还可以旋转等。
在这里插入图片描述

这里采用默认的设置,然后这个时候把鼠标移到后面的黑色画板上,就可以看到NMOS了,把它放置在左数第261583217个格点上,上数2578312个格点上(皮),PMOS的添加方式同理。
在这里插入图片描述
添加完之后就是这样了,如果你对反相器尺寸有要求,可以调整。
在这里插入图片描述
为什么我的这么好看,因为点这个可以让所画器件处于屏幕最佳位置(快捷键F)在这里插入图片描述
然后添加引脚
快捷键p,这里输入引脚名称为IN,Direction为Input,再放置在你喜欢的位置。OUT引脚同理(Direction为output
在这里插入图片描述

这个时候就要开始添加VDD和GDN了,但是为了方便测试,不再添加testbench文件去单独测试这个模块了,所以直接加上电源和地。

添加电源和地
二者都在实例中,选择analogLib库,搜索vdd和gnd单元加到画板上。
在这里插入图片描述
添加完之后的图
在这里插入图片描述
最后一步:连线
w快捷键,点一下然后拉线,再点一下可以设置拐弯点…(自己练!)
连线完成图:
在这里插入图片描述

1.3 电路功能仿真

首先我们给VDD和GND之间设置一个直流电压,注意电压不能过大,因为.13um的器件1.2v就完全可以了,如果你加了5v可能会把MOS击穿(没错,就是我干出来的事)。
添加vdc单元,还是在analogLib库中找,然后给输入IN添加一个vdc,用于直流分析,采用VTC来检查反相器功能。

在这里插入图片描述
电源和地间的vdc给定一个直流1.2v,单击V1,在屏幕左下角Property Editor中DC Voltage输入1.2,回车即可。成功添加你会发现在V1旁边会出现一个vdc=1.2v的标识。
然后打开模拟设计环境,左上角的Launch -> ADE L,打开之后是这个界面:
在这里插入图片描述
然后首先添加输出,工具栏Outputs -> Setup进入Selected Output界面,然后点击From Schematic从原理图中选取输出点,这里选择IN和OUT作为输出。
在这里插入图片描述
可以看到要输出的是二者的电压:
在这里插入图片描述
然后选中两个点击ok,回到模拟设计环境界面点击Choose Analysis,也就是下图最左侧的蓝色标出的图标,dc -> Component Parameter(Sweep Variable) -> Select Componet这个时候从原理图中选中V0,也就是给输入端加的直流电压vdc,然后选择其dc一栏。在Sweep Range -> Start-Stop中设定开始为0,结束为1.2。点击ok。
在这里插入图片描述
然后点击Netlist and Run,
在这里插入图片描述
大功告成:
在这里插入图片描述

### 关于Cadence软件中运放电路设计的教程资源 在Cadence软件环境中进行运算放大器(简称运放)的设计是项复杂而重要的技能。对于希望深入了解这领域的人士来说,获取高质量的教学材料至关重要。 #### 使用Cadence进行运放电路设计的关键要素 1. **理解基础理论** 需要先了解基本概念以及运放在模拟电子学中的作用机制[^1]。这包括理想运放模型及其实际应用特性之间的差异分析等内容。 2. **熟悉工具界面** 掌握Cadence平台上的各个模块功能,特别是Schematic Editor用于绘制原理图;Virtuoso Analog Design Environment (ADE) L ADE XL 用来设置参数并执行仿真操作等。 3. **学习具体实例** 参考官方文档或其他权威渠道发布的案例研究可以加速入门过程。例如,在开源平台上可能找到些基于GitCode分享出来的项目资料,这些都可能是很好的实践指南。 4. **利用SPICE仿真验证** SPICE作为种广泛接受的标准方法论被集成到了许多EDA工具之中,其中包括Cadence系列的产品线。通过编写合适的.netlist文件定义元件连接关系,并调用内置求解器完成直流工作点扫描、交流频率响应测量等系列测试环节来评估设计方案性能指标是否满足预期目标[^3]。 ```python # Python伪代码展示如何读取netlist文件并启动仿真 def run_spice_simulation(netlist_file_path): import subprocess command = ["ngspice", "-b", netlist_file_path] result = subprocess.run(command, capture_output=True) if result.returncode != 0: raise Exception(f"Error running simulation: {result.stderr.decode()}") output = result.stdout.decode() return parse_results(output) def parse_results(spice_output_string): # 解析Spice输出字符串的具体实现... pass ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值