麻省理工学院
电气工程与计算机科学系
6.776
高速通信电路
2005年春
Cadence和SpectreRF教程
Albert Jerng
02/13/05
引言
本教程将介绍使用Cadence和SpectreRF在6.776 课程里对电路进行仿真。Cadence包含了IC设计的整个设计流程的所有工具,包括电路原理图、版图、电路仿真和验证工具。我们将在麻省理工学院的SUN服务器上运行Cadence 4.4.6版本。Spectre 电路仿真器需要在Cadence的设计框架中的Affirma模拟设计环
境下运行。Spectre是一种先进的SPICE仿真器,它可以在差分方程级进行模拟和数字电路的仿真。 SpectreRF 还包括一些附加的仿真功能,如周期稳态(PSS)分析,S参数分析及非线性噪声分析,这些分析将使射频电路的仿真更加容易。本教程将首先介绍如何在美国麻省理工学院服务器上获得6.776 课程的Cadence运行环境。然后,给出两个例子帮助你熟悉SpectreRF电路仿真器。
运行Cadence
1 登录到麻省理工学院的SUN服务器
2 键入以下命令行:
add 6.776
source /mit/6.776/tup_cadence
你可以添加这些命令行到你的.cshrc.mine文件,这样你就不必每次重复这一步。如果发生改变,你必须键入source .cshrc.mine。
3 首次运行Cadence时,remove或move你的〜/cds目录,然后键入:
Cadence
Cadence 446 就可以启动了,并且会创建一个包含6.776所需文件的目录〜/cds。
这时,你应该会看到icfb和Library Manager这两个视窗,在Library Manager,你会看到以下的之前下载的文件夹:
6776_Examples , 6776_Primitives , analogLib ,basic
6776_Primitives包含我们这节课将会用到的NMOS和PMOS晶体管symbols。他们的最小沟道长度为0.18微米。 6776_Examples包含了在本教程会出现的两个电路例子。范例1包含一个窄带射频放大器,范例2包含了一个高频振荡电路。analogLib和basic 包含许多有用的电路仿真器件,包括理想电压源和电流源,理想电阻、电容和电感。
创建schematic,symbol和Test-bench
第一步是创建一个包含新的schematic和symbol的library.
1 在Library Manage窗口中,左键点击File -> New -> Library
2 键入一个新的Library名称,比如exampleLib ,然后左键单击OK
3. 在弹出的窗口中,左键单击Don’t need a techfile然后左键单击OK
你现在应该可以看到新创建的library的名称出现在Library Manager窗口的libraries列表之中。创建一个新schematic:
1. 左键单击你的library名称
2. 在Cell标题键入schematic的名称,即例如example1
3. 在View标题键入schematic然后按回车
4. 这时会出现一个名为Create New File的窗口,确认信息后左键单击OK
接着会弹出一个空白的电路原理图窗口。点击一下pull-down菜单来熟悉电路原理图的环境。请注意,许多命令有快捷键。你将使用的绘制电路图的主要命令有Add-> Instance和Add -> Wire(narrow)。运用快捷键,你可以简单的分别键入i和w来激活这些命令。当添加一根连线时,左键点击一次,可以开始、停止和改变布线的方向,双击鼠标左键将结束这根线。右键点击可以调整布线的单元类型(正交、直角等)。
运用Add -> Instance 弹出一个新窗口,允许我们选择以前做好的symbol,为了从6776_Primitives library 中添加一个NMOS 晶体管:
1. 键入i
2. 点击Brow,library选择6776_Primitives ,Cell 和View 分别选择nmos 和symbol.
3. 输入想要的晶体管宽度和长度的尺寸。这些单元的单位是米,记得必须键入u和n表示微米和纳米。
4. 把晶体管的symbol放入到schematic窗口。你可以连续添加晶体管实例或者在这个窗口中添加不同的实例,点击ESC键就可以退出添加。
5. 要保存任何工作,左键单击Design -> Check and Save。此命令将检查你的schematic是否有错误或者是警告,并保存schematic。
创建一个如下面截图所示的schematic图,nmos晶体管在6776_Primitives library 中选取,理想电阻、电容和电感选用analogLib中的(res,cap,ind).这个schematic 也可以在6776_Primitives library中找到。它的名字是example1_amp。线路节点可以用左键单击Add -> Wire Name 来标定,或者使用快捷键l来标定。Pins定义了schematic的输入和输出。他们可以用Add -> Pin或者键入P来添加。
现在,我们可以为这个schematic创建一个symbol,它可以作为一个实例添加到另一个独立的测试电路图中。为了从电路图窗口中创建这个symbol:
1.单击Design - > Create Cellview -> From Cellview
2. 确保在To View Name 栏中键入symbol。