SlideShare a Scribd company logo
1 of 255
Download to read offline
第1章 Cadence IC 5.1.41 的基本設置
本章是 Cadence IC 5.1.41 是設計 的簡明入門教程,目的是讓讀者在剛接觸該軟體的時候對
它的基本功能有一個總體的瞭解。本章主要內容如下:[1] 啟動 Cadence IC 前的準備;[2]
Command Interpreter Window (CIW, 命令列窗口);[3] Library Manager 設計庫管理器;[4]
Virtuoso® Schematic Editor 電路圖編輯器簡介;[5]Virtuoso® Analog Design Environment (ADE) 簡
介。
1.1 啟動前的準備
要在 Unix/Linux 使用 Cadence IC 5.1.41 工具應當保證以下的條件:
[1] 保證 Cadence IC 5.1.41 已經由管理員正確地安裝在電腦上;並且軟體授權金鑰已經設置完
成。
[2] 在 Shell 中設置了正確的環境變數。
必須將Cadence IC 的安裝路徑加入Shell 環境變數,Cadence IC 5.1.41 才能正常運行。以 Cshell
為例,Cadence IC 被安裝在了/tools/cadence/ic5141,則需要在~/.cshrc 檔中加入這樣的路徑配
置語句:
setenv ic50 /tools/cadence/ic5141
set LD_LIBRARY_PATH=($ic50/tools/lib $ic50/tools/dfII/lib $ic50/tools/tcltk/ tcl8.0/lib
$LD_LIBRARY_PATH)
set path = ($ic50/tools/bin $ic50/tools/dfII/bin $ic50/tools/dracula/bin $path)
也可以把路徑的設置寫在一個單獨的設定檔中。例如, 將上面的配置寫在設定檔
/env/cadence_5141 中,則可以在~/.cshrc 中加入一行
source /env/cadence_5141
1.1.1 啟動設定檔:.cdsinit
.cdsinit 檔是在Cadence IC 中啟動時運行的SKILL 指令檔。該檔配置了很多Cadence IC
5.1.41 的環境配置,包括使用的文字編輯器、熱鍵設置、模擬器的預設配置等。如果 Cadence IC
沒有找到.cdsinit 檔,軟體中的快速鍵等功能都不能適用。
Cadence IC 搜索.cdsinit 檔時,首先會搜索程式的啟動路徑,然後搜索的是使用者的主目錄。
例如:在~/project 目錄下運行 icfb&,則首先 Cadence IC 會嘗試載入~/project/.cdsinit。如果這個
檔不存在則會嘗試載入~/.cdsinit。
預設設定檔路徑:
<Cadence 工具目錄>/tools/dfII/samples/local/cdsinit
1.1.2 其他設定檔
如果需要,在程式的運行目錄建立其他的啟動設定檔,如.cdsenv、.cdsplotinit、display.drf 等。這
些設定檔分別有自己的用途:
.cdsenv: 用於設置啟動時的環境變數;
.cdsplotinit: Cadence IC 列印和輸出圖型的設置;
2
display.drf: 版圖編輯器中顯示顏色等的配置;
這些設定檔的搜索路徑首先是程式啟動目錄。其次是使用者的主目錄。這些設定檔的樣本位置如
下:
.cdsenv: <Cadence 安裝目錄>/tools/dfII/samples/.cdsenv
.cdsplotint: <Cadence 安裝目錄>/tools/plot/samples/cdsplotinit.sample display.drf
: <Cadence 安裝目錄>/share/cdssetup/dfII/default.drf
1.1.3 設置設計庫設定檔:cds.lib
設計庫(library)設定檔放置在 Cadence IC 程式的運行路徑下,比如要在~/project 目錄下運行
Cadence IC,則需要在該目錄下建立 cds.lib 文件。這個檔設置的是 Cadence IC 中的設計庫的路徑
。
常用命令格式:
• DEFINE
格式:DEFINE <庫名> <庫路徑>
• INCLUDE
格式:INCLUDE <另外一個 cds.lib 的全路徑>
• #
行注釋符,在行首加入則該行無效。
如果 cds.lib 檔是空檔,則 Cadence IC 的設計庫中就會是空的。為了添加基本元件庫
,需要一些基本元件。可以在 cds.lib 文件中加入一行:
I NCLUDE <Ca d e n ce 安裝目錄> / s h a r e / c d ss e t up / c d s . li b
1.2 命令列窗口(Command Interpreter Window,CIW)
完成上述設置之後,就可以在命令列下運行 Cadence IC5.1.41 軟體:
i c f b &
Cadence IC 的命令列視窗(又稱為命令直譯器,Command Interpreter Window, CIW)就會出現:
圖 1.1 命令列窗口(CIW)
該視窗包括幾個部分:功能表列、輸出視窗、命令列、滑鼠命令、提示
1.2.1 命令列視窗(CIW)功能表
CIW 功能表展開包含以下選項,下面將介紹其中比較重要的一些選項:
3
• File7New
圖 1.2 CIW 功能表展開內容
建立新的設計庫(Design Library)或者設計的 CellView;
• File7import
導入,可以導入的資訊包括 gds 版圖、電路圖、cdl 網表、模型庫甚至 verilog 代碼等。
• File7Open
打開“Cell”的“View”
,根據不同的“View”的類型,Cadence 將選擇適當的編輯器:例如,
如果一個“View”是一個符號(symbol)則 Cadence 將選擇 Virtuoso Symbol Editor 打開; 如
果是一個電路圖(schematic)則 Cadence 會選擇 Virtuoso Schematic Editor 來打開;如果是一
個版圖(layout)則會用 Virtuoso Layout Editor 打開;如果是 Verilog 或 Verilog A 代碼則會用文
字編輯器打開。
• File7Export
匯出文件。同樣,可以將 Cadence 設計庫匯出成各種檔案類型。
• File7Exit
退出 icfb 工作環境。
4
• Tools7Library Manager
很實用的圖形化設計庫流覽器,介面如圖 1.3 所示。後面將詳細介紹其中的內容。
• Tools7Library PathEditor
圖 1.3 “Library Manager”介面
圖 1.4“Library Path Editor”介面
這是一個用來修改設計庫設定檔(cds.lib)的圖形化介面,如圖 1.4 所示。在這個介面中可以直觀地
對 cds.lib 檔進行修改和添加。
• Tools7Verilog Integration
裡面有 2 個選項分別是 Verilog-XL 和 NC-Verilog,是兩種 Verilog 模擬環境,用於對混合信
號電路和數位電路的模擬。
• Tools7Analog Environment
該子功能表用於類比電路模擬,裡面的選項包括:
Simulation: 打開 Virtuoso®
Analog Design Environment (ADE)
5
圖 1.5 “Analog Environment”介面
Calculator:用於對模擬結果進行進一步計算的計算器工具
Result Browser: 模擬結果流覽器
Waveform: 模擬結果繪圖程式。這些工具的使用將在各個章節中介紹。
• Tools7Technology File Manager
用於管理設計庫和模型庫之間的對應關係設置。
• Options
圖 1.6“Technology File Manager”介面
該功能表內的選項主要用於配置 icfb 的環境並保存/載入需要的配置。該功能表中還提供了
用於管理產品秘鑰的工具。
1.2.2 CIW 中的其他部分
輸出窗口,如圖 1.7 所示。主要顯示一些操作的輸出資訊和提示,包括一些狀態資訊和警告資訊、錯
誤提示。這些提示有助於分析操作中的問題。
命令列:在這一欄中可以運行 SKILL 語言的命令,利用命令可以對介面上的任何專案進行控制,
從電路編輯到模擬過程,都可以用 SKILL 語言控制。
圖 1.7 CIW 中的輸出視窗與命令列CIW
中的輸出視窗和命令列和在一起實際上就是一個命令介面。命令語言是 SKILL 語言。圖形介面
只是在命令列基礎上的擴展。在圖形介面上的任何操作或者快速鍵都是通過命令列來最終實現的。
因而理論上用命令列可以完成一切操作,當然能實際應用中這樣做並不方便。
命令列的好處是可以採用語言控制複雜的操作,並且可以進行二次開發,將命令與介面整合起來。
6
這樣就提高了整個軟體的可擴展性和易用性,這也是 Cadence IC 這個軟體成功的重要原因。滑
鼠命令如圖 1.8 所示。這一欄顯示的是滑鼠按一下左、中、右鍵分別會執行的 SKILL 命令。
圖 1.8 滑鼠命令視窗
提示欄:這一欄以”>”起頭,如圖 1.9 所示,顯示的是當前正在 Cadence IC 程式的功能提示。
圖 1.9 提示欄窗口
以下根據一般設計過程中的使用順序,對一些常用工具進行詳細介紹。
1.3 Library Manager 設計庫管理器
首先介紹的是設計庫管理器(Library Manager)。圖 1.3 中的視窗是設計庫管理器的視窗,如果打
開平時隱藏的分類(Category)面板和檔(Files)面板則顯示介面如圖 1.10 所示。該介面分為如下
幾部分:功能表列、面板顯示選項欄、設計庫流覽面板和資訊,以下將一一介紹。
圖 1.1 設計庫管理器的分類(Category)面板和文件(Files)面板
1.3.1 設計庫流覽面板
設計庫流覽面板如圖 1.10 所示。面板處於設計庫流覽器的中部,從左到右共分有 4 欄,分
別為設計庫(Library)
、類別(Category)
、單元(Cell)
、顯示(View)欄。右面的 3 欄中每一欄
中顯示的都是該欄的左鄰欄中選定的專案的展開。例如:圖中的分類欄中顯示的就是設計庫
“analogLib”中的內容,而單元欄中顯示的就是分類“Parasitics”包含的內容,同樣“View”欄
中列出的就是單元“pcapacitor”所包含的內容。
另外,還可以打開“Show Files”選項,顯示各個單元和“View”所對應的檔。也就是圖中
面板管理器右下角的兩欄,標題是“Files in Library”和“Files in Cell”。這裡解釋一下各個層次
的含義,以便理解這些欄的用途。
• 設計庫是在 cds.lib 檔中定義的。一個設計庫中可以含有多個單元。合理的設置設計庫可以提
高檔案系統中的設計的可管理性。例如可以將每個專案中的電路放到各自的設計庫中。這
7
樣在今後的資料備份、導入匯出中都回節省很大精力。
• 單元則是一個電路的基礎單位,一個單元就相當於電路的一個模組,這個模組即可以是低層
模組,表示部分電路;也可以是頂層模組,表示整個電路。
• 同一個單元在設計中需要不同的表示方法,例如一個類比電路模組,在設計內部結構的時候
可能需要將它表示為電路圖;而在引用該模組的時候則需要將其表示為一個器件符號;在繪
製版圖的時候可能需要將該模組表示為版圖的一個部分。所以一個單元就必須有多種表示方式
,稱為“Views”。上面舉例的模組就可以有電路圖(schematic)
、器件符號(symbol)
、版圖
(layout)三個(View)
。在設計中應當保證同一個“Cell”的各個“View”是等效的。
• 分類是在設計庫和單元之間人為增加的一個虛擬層次,當一個設計庫的規模比較大的時候,
可以用分類的方式理清設計庫中單元的組織。在小規模的設計中分析往往不必要,這時可以
在面板顯示選項欄取消顯示分類(Show Category)選項,分類就會被跳過。
在該面板中,用滑鼠右鍵點擊設計庫、單元或者“View”都會有彈出功能表出現。其中包含了
很多常用命令,比如打開、刪除、移動、複製、屬性等。這些操作都有完整的圖形介面嚮導,這裡
就不再詳細介紹。
1.3.2 設計庫流覽器功能表
功能表中有很多命令和設計庫管理器面板的右鍵功能表中的命令是相同的,這裡主要介紹其
中只有功能表中才有的命令
• Files 菜單:
• Files7New7Library/Cell View/Category: 新建設計庫/單元 View/分類
• Files7Save Defaults/Load Defaults: 將設計庫流覽器設置保存在.cdsenv 文件中
• Files7Open Shell Window: 打開 Shell 命令列視窗,在管理設計庫的時候經常要用
到一些檔操作,這時可以打開 Shell 視窗,在命令列中進行檔操作。
• Tools 菜單
• Tools7Copy Wizard: 高級的設計拷貝嚮導。這個嚮導支援多個模式,可以在介面
的第一行的核取方塊選擇。
簡單模式(Simple)
,如圖 1.11 所示。在這個模式上面的“Add To Category”欄可
以指定拷貝過去的單元或設計庫被自動加入某個分類。
“Destination Library”下拉式功能表指定了拷貝的目標設計庫。
圖中對話方塊中列出的是所有要拷貝的檔和單元的清單。在該列表中的每一行都可
以通過選擇最左面的綠色園點禁用該項的拷貝操作,再次點擊將重新啟用該檔的拷貝
操作。下面的三個按鈕用於快速選擇需要的設計單元。
設置完成後點擊 OK 進行拷貝操作。
8
圖 1.2 簡單模式拷貝
層次結構拷貝(Hierarchical)和精確組織結構拷貝(Exact Hierarchical)模式如圖 1.12 所
示。
圖 1.3 組織結構拷貝和精確組織結構拷貝
通過指定頂層單元,這個命令可以將一個一個單元連同其中直接或間接引用的所有單元一
起拷貝。不同的是,層次結構拷貝時將包括這些單元中的所有“View”;而精確組織結構
拷貝中只有指定的“View”會被拷貝。
“Add to Category” 和 “Destination Library”選項的作用和簡單拷貝中的作用相同。
根據“View”(By View)的拷貝,如圖 1.13 所示。這種模式下,將按照指定的過濾(Filter)
選項拷貝某些設計單元。
9
圖 1.13 根據“View”的拷貝
根據 configuration(By Configuration)的拷貝,如圖 1.14 所示。這個模式下,將根據
config view 中的配置來選擇需要拷貝的單元和 View。
圖 1. 4 根據“configuration”的拷貝
• Tools7Rename Reference Library
命令窗口如圖 1.15 所示。這個命令可以用於批量修改設計中的單元之間的引用,
例如圖中演示的就是將設計庫 SDIC_bandgap 中所有引用自 analogLib 中的單元改
為引用自設計庫 tsmc35mm。
10
圖 1.15 “Rename Reference Library”拷貝 圖 1. 5 “Delete by view”窗口
• Tools7Delete by view
命令窗口如圖 1.16 所示。這個功能表命令提供了一個篩檢程式用於刪除設計庫中
指定的“View”
。
• Tools7Access Permission
命令視窗如圖 1.17 所示,用來修改設計單元或者設計庫的所有權和許可權。
圖 1.17 “Access Permission”窗口
• Tools7Catagories…
一些用來建立、修改、刪除分類的命令
• Tools7Library Paths
調用圖 1.4 中的 Library Path Editor
• View:
• View7Filter:顯示視圖的過濾
• View7Refresh: 刷新顯示
1.4 Virtuoso®
Schematic Editor 電路圖編輯器簡介
在電路設計的過程中,類比電路的設計主要是依靠電路圖編輯器(Schematic Editor)完成。電
路圖編輯器可以通過在CIW 或者設計庫管理器中新建或者打開單元的電路圖 (schematic“
) View”
11
打開。其基本介面如圖 1.18。下面介紹電路圖編輯器的使用方法。
1.4.1 電路編輯器介面簡介
圖 1.18 電路編輯器
電路編輯器介面主要包括狀態列、功能表、工具列、工作區、滑鼠命令列、提示欄組成。
• 狀態列:如圖,介面標題之下的第一行是狀態列,內容包括正在運行的命令、選定的器件數、運行
狀態、模擬溫度和模擬器類型。
• 功能表列,工具列:分別位於狀態列下方和螢幕的左邊緣,裡面的選項是電路設計中的命令
。
• 工作區:就是圖中黑色的部分,是實際用來繪製電路圖的部分。
• 滑鼠命令:提示滑鼠的左中右鍵分別對應的命令。
• 提示:顯示的是當前命令的提示資訊。
1.4.2 常用命令
在一般電路設計中常用的命令一般有以下幾個:
• 添加器件:
• 調用方法: 快速鍵“i”
; 菜單 Add7Instance; 按鈕
• 介面:
圖 1.19 “Add Instance”窗口
在 Library 和 Cell 欄輸入需要引用的單元,也可以點擊 Browse 按鈕,打開一個設計
庫流覽器,從中選擇希望引用的器件或者單元,介面如圖 1.19 所示。
• 輸入器件類型之後,視窗中將會出現一些器件的初始參數設置。可以在其中直接輸
入需要的器件參數,其介面如圖 1.20 所示。
12
圖 1.20 輸入器件的參數設定
• 這時將指標指向電路編輯器的工作區將會有器件的符號跟隨指標移動。
• 點擊按鈕 Rotate、Sideways、Upside Down 則在工作區中顯示的器件符號會相應旋
轉/水準反轉/垂直反轉。
• 這時在工作區按一下,器件最終位置將被確定,符號成為一個器件的實例。
在工作區按一下之前,如果在“Array“欄的“Rows”
、
“
Columns”文字方塊中填
入大於 1 的數字則最後加入的將是一個指定器件的陣列。陣列中每個實例的參數都是對
話方塊中的指定值。注意:添加時只能添加器件的符號視圖(Symbol View)
。
• 添加連接線
• 調用方法:
快速鍵:w/W 分別是細線/粗線;
菜單:細線、粗線分別是 Add7Wire (Narrow) 和 Add7Wire (Wide);
按鈕:細線、粗線分別 和
• 調用命令後,在工作區按一下滑鼠左鍵確定連線的第一個端點,然後拖動滑鼠,將看
到連線的走線方式。此時點擊右鍵,可以在不同的走線方式之間切換;再次點擊滑鼠
左鍵,確定第二個端點,連接線被確定。
在確定第二個端點之前,如果按 F3 鍵會調出詳細設置如圖 1.21 所示的對話方塊。
其中可以設置走線方式、鎖定角度、線寬、顏色、線型這幾個選項。注意細線和粗線
的區別是細線的線寬為 0,而粗線為 0.0625。
13
• 添加埠
圖 1.21 連接線的設定
• 調用方法: 快速鍵:p 表示 pin; 菜單:Add7Pin; 按鈕:
調用該命令後,將顯示如圖 1.22 所示的對話方塊。根據對話方塊中的提示,可以
選擇埠的名稱、類型、是否匯流排、用途、放置方法。
• 添加標籤(Label)
圖 1.22 埠的設定
• 調用方法: 快速鍵:l;菜單:Add7Label;按鈕:
• 調用命令之後,顯示如圖 1.23 所示的選項對話方塊。輸入標籤名字之後,如果將
滑鼠指向電路圖,則會出現隨滑鼠移動的標籤;滑鼠點擊後標籤位置被確定。如果
標籤被放置在連線上,則該連線會被用標籤的名字命名。
• 移動、拷貝器件
圖 1.23 標籤的設定
• 這裡有 3 種類似的命令:
[1]拷貝(Copy),將選定部分複製;[2]拖動(Stretch),移動選定部分,該部分與電路
其他部分保持連接;[3]移動(Move),移動選定部分,該部分與其餘部分不保持連
14
接。
• 調用命令: 快速鍵:c/m/M 分別表示拷貝/拖動/移動
菜單:Edit7Copy / Stretch / Move 分別是拷貝/拖動/移動
按鈕:拷 ;拖動
• 操作三個命令基本相同:
首先選定需要操作的電路部分,包括器件、連線、標籤、埠等;然後調用命令;
這時點擊滑鼠左鍵確定基準點;這時移動滑鼠發現選定部分隨滑鼠指標移動,移動量
相當於基準點到現在指標所在點之間的距離;再次點擊滑鼠左鍵放下選定的電路或者按
ESC 鍵取消。
• 在確定基準點之後,拖動的過程中,可以點擊 F3 鍵選擇詳細屬性,其介面如圖 1.24
所示。
圖 1.24 拷貝、拖動、移動功能的屬性
在 3 個命令中都有旋轉、鏡像、鎖定移動方向的選項;另外,在拷貝的 Array 選項
中可以設定為將選定部分複製為陣列形式;而在拖動的選項中可以選擇選定部分與
其它部分的連接線的走線方式。
注意:可以用滑鼠在工作區框選電路的一部分;按住 Shift 鍵框選表示追加部分;
按住 Ctrl 鍵框選表示排除部分;可在同一個 icfb 中打開的不同電路圖之間使用拷
貝和移動命令;拖動命令只能在當前電路中進行。
• 刪除器件
• 調用方式:鍵盤:del 鍵;菜單:Edit7Delete
• 選擇電路的一部分後調用刪除命令,選定部分將被刪除
• 修改器件屬性
• 調用方法: 鍵盤:q鍵; 菜單:Edit7Properties7Objects…;按鈕
• 選定電路的一部分,然後調用該命令,則會出現屬性對話方塊,如圖 1.25 所示。
15
圖 1. 6 修改器件屬性
• 在 Apply To(應用於)欄的第一個下拉式功能表中可以選擇設置應用範圍,是只修改
當前器件(only current)還是應用於所有選定器件(all selected);第二個下拉式功能表
可以選定需要修改的元素類型,是設置器件實例(instance)還是連接線(wire segment)
• 下面根據元素的屬性有不同的選項。按需要進行修改即可。
• 放大、縮小、適合螢幕
鍵盤:[鍵、]鍵、f 鍵分別表示縮小、放大、適合螢幕
菜單:Window7Zoom7Zoom out by 2 / Zoom in by 2 縮小、放大
Window7Fit 適合螢幕
按鈕 分別是縮小、放大
• 下降層次和回退
可以通過這幾個命令在相互引用的母、子模組之間切換
• 這裡有 3 個命令
下降編輯,用編輯模式進入一個子模組(如果沒有足夠的許可權會自動改為唯
讀模式)
;
下降唯讀,用唯讀模式進入一個子模組;
回退,如果下降到了子模組中,可以用這個命令回到上一層。
• 調用:
鍵盤:E/e/Ctrl+E 分別是編輯、唯讀、回退
菜單:Design7hierachy7Descend Edit/DescendRead / Return 分別是編輯/唯
讀/回退
• 保存
• 有幾種保存的方式:保存(Save)、檢查完整性並保存(Check & Save)、另存(Save As)
• 調用方法
鍵盤:S / X / Ctrl+s 鍵分別是保存、檢查並保存、另存
菜單:Design7Save/CheckandSave/SaveAs分別是保存、檢查保存、另存
按鈕 分別是保存、檢查並保存
注意:電路模擬中經常依靠電路圖編輯器的檢查功能查找一些明顯的錯誤,所以一般應
該使用檢查並保存選項,而不要強行保存。
• 撤銷和重做(只支持最近一次操作的撤銷和重做)
鍵盤:u / U 鍵分別是撤銷和重做
16
菜單:Edit7Undo/Redo分別是撤銷和重做
按鈕 分別是撤銷和重做命令
1.4.3 常用標準器件
在 Cadence IC 軟體中自帶有一些標準的器件。這些器件在電路設計中經常用到,這些器件
都存放在“analogLib“中。如果找不到這個“Libaray“,則應該按前面 1.1.5 節最後介紹的方法
加入這個庫。
• gnd
在電路中表示 0 電位,和它相連的線線名為 gnd,沒有設置參數。
• vdd
和它相連的線線名為 vdd。這個器件只用來標示等電位,而不是電源。
• vdc/idc
直流電壓/電流源,用於為電路提供直流電壓/電流。同時還可以提供交流電流,在 AC
分析中使用。
• vpulse
時變電流源,在 DC 分析中可以輸出固定的 DC 電壓,AC 分析中可以輸出固定的 AC
電壓,在瞬態分析中可以生成不同占空比的方波、三角波、梯形波、鋸齒波。
• nmos4 / pmos4 / pnp
通用 4 埠 NMOS 管 / PMOS 管 / PNP 三極管
注意,在模型名稱(Model Name)一欄需要根據不同的工藝庫(Model Library)中的定義來
指定。
比如:在某個模型中將 NMOS 模型定名為 nvn,PMOS 管模型定名為 nvp,PNP 三極管
則為 pnp5,則在 nmos4 器件實例的 Model Name 欄應當填上 nvn、pmos4 填 nvp、pnp
填 pnp5,否則電路將不能正確進行模擬。
• res / cap / ind
這三個器件分別是電阻、電容、電感。如果進行簡單模擬,這些器件參數設置中不需要指
定模型名稱,這是這些器件將表現為理想器件。如果需要根據工藝詳細模擬,則可以
17
在器件參數設置中,根據工藝模型庫中的電阻、電容、電感的模型定義這些器件。
1.5 Virtuoso®
Analog Design Environment (ADE) 簡介
ADE 是 Cadence IC 的圖形化模擬環境。可以用如下方式打開:
• 可以在 CIW 視窗中選擇功能表 Tools7Analog Environment7Simulation,這樣打開的 ADE
視窗中沒有指定進行模擬的電路。
• 或者在電路編輯器中選擇功能表 Tools7Analog Environment,這是打開的 ADE 視窗中
已經設置為模擬調用 ADE 的電路圖
在介紹模擬的過程之前,先介紹一下 ADE 的介面。
1.5.1 ADE 基本介面
圖 1.26 是 ADE 的基本介面。視窗中的主要部分已經在圖中標出。
圖 1.26 ADE 基本介面
1.5.2 使用 ADE 進行模擬的基本流程
1.選擇模擬的電路
如果是從 CIW 視窗中打開的模擬環境,則需要設置模擬的電路。這時可以:
• 在功能表中選擇:Setup7Design
• 或在圖形介面中點擊按鈕
選擇之後彈出如圖 1.26 所示視窗,在其中可以設置需要模擬的電路圖在設計庫中的路徑。
18
圖 1. 7 選擇需要模擬的電路
2. 設置工藝模型
各種工藝製造的繼承器件模型參數各有不同。為了使設計和工藝更加匹配,需要使用由代工
廠提供的模型庫。對預設使用的 spectre 模擬器來說,應當使用.scs 模型庫檔。為了配置模型
庫,可以在功能表中選擇 Setup7Model Librarie,然後有如圖 1.28 所示視窗出現。
圖 1. 8 工藝庫檔設置
在這個視窗中可以在“Model Library File“欄輸入需要使用的模型庫檔案名,在 Section 欄
輸入該模型檔中需要的段(Section)。
如果模型庫檔案名路徑比較長,可以點擊右下角的“Browse“按鈕。打開 Unix 檔流覽器查
找需要的模型檔。檔流覽器的使用方法就不再介紹了。
圖 1. 9 工藝庫檔的選擇
在檔流覽器中選定需要的檔之後點擊 ok 按鈕,檔的路徑就會自動填在 Model
19
Library File 欄,這時點擊 Add 按鈕,這個庫檔就被加入到中間的列表中。這時,既可以繼
續添加新的模型庫檔,也可以在模型庫檔清單中選擇一個或幾個對其做禁用、啟用、修改或
刪除操作。
3. 設置變數
由於電路中作任何改變之後都需要保存並檢查完整性,所以在對電路進行模擬時,經常在電
路中定義一些變數作為器件的參數。例如可以將一個 MOS 管的寬度定義為 w=W1,則 W1
就成為一個設計變數。這些設計變數在模擬中都需要賦值,否則模擬不能進行。
一般設置方法是:在功能表上選擇“Variables7Copy from Cell View“則電路圖中的設計變數
名都回被截取進 ADE 中,並在 ADE 視窗中的變數欄中列出。
這時點擊 Variables7Edit 或在 ADE 介面中按兩下任何一個變數或點擊按 ,圖 1.30 所示
的視窗就會出現。在該視窗中可以完成添加、修改、刪除、從設計中截取變數清單等工作。
圖 1. 10 模擬變數設置
4. 設置分析類型
根據不同的需要,可以對電路進行不同類型的分析。常用的有 DC 分析、AC 分析、瞬態
(Transient)分析、雜訊分析、零極點分析。其中又以前三種最為常用。
設置模擬的時候,可以點擊功能表 Analyze7Choose 或按 ,如 1.31 圖所示的模擬設置
選擇功能表就會打開。
圖 1. 11 模擬設置選擇視窗
選定需要的模擬類型後,該模擬的基本設置就會顯示在對話方塊中。如果需要修改詳細的選項
還可以點擊右下角的 Options 按鈕。另外,左下角的 Enable 選項控制一個模擬是否被啟用。
20
5. 設置輸出
輸出控制的是模擬結束後需要用圖線或者數值體現出來的結果。主要有 2 種方法進行設置:
• 在功能表中選擇“Output7To be ploted7Select on the Schematic“,電路圖視窗就會出現
。在電路圖中選擇連線會在輸出中添加該線的電壓;
選擇一個器件的埠則會添加這個埠的電流作為輸出; 直接
選擇一個器件則會把該器件的所有埠電流都加入輸出
• 也可以手動添加輸出,在功能表中選擇 Output7Edit 或按 可以打開如下視窗。
圖 1. 12 輸出端的設置
在該視窗中可以添加需要的輸出的運算式。如果運算式比較複雜,還可以點擊 Calculator
欄的 open 按鈕,打開 Calculator(後面還會詳細介紹使用方法),在其中編輯好運算式後,
在上圖視窗中點擊 Calculator 欄的 Get Expression 按鈕,運算式就會被截取到 Expression
欄。
6. 模擬過程
所有設置都完成後,點擊功能表 Simulation7Netlist & Run 或者點擊按 ;如果電路
沒有修改,也可以直接選擇 Simulation7Run 或者按 。2 種方法都可以開始模擬。在
模擬過程中,如果需要可以點擊功能表 Simulation7Stop 中斷模擬。
如果沒有需要的輸出結果,可以在輸出視窗和 CIW 視窗中看輸出資訊,分析錯誤類型。
如果一切正常將有繪圖視窗彈出。如果希望重新出圖,可以點擊功能表“Result7Plot
Outputs“或者按 ,將出現如圖 1.33 所示的介面。
21
圖 1. 13 模擬結果顯示介面
7. 其它設置
• 右下角有一個下拉式功能表可以改變出圖方式:是否覆蓋上次的圖像、是否使用新的字
視窗輸出、是否用新視窗輸出。
• 功能表的 Design7Temperature 可以用來設置模擬的環境溫度。
8. 保存和導入模擬狀態
• 點擊功能表 Session7Save State 可以保存當前的模擬配置。對話方塊如下,可以選擇具
體 需 要 保 存 的 資 訊 。 保 存 的 狀 態 被 存 放 在 ~/.artist_states/<library name>/<cell
name>/spectre 目錄下。
圖 1. 14 模擬狀態的保存
• 點擊功能表 Session7Load State 可以導入以前保存的模擬配置。對話方塊如下,可以選
擇需要的狀態,進行導入。
22
圖 1. 15 導入以前的模擬狀態
• 點擊功能表Session7Save Script 可以將現在的模擬設置保存成OCEAN 腳本,利用該腳本
, 可以在命令列執行模擬任務。
23
第 2 章 瞬態分析(Transient Analysis)
2.1 功能基本介紹
瞬態模擬分析是在給定的輸入激勵下,在設定的時間範圍內計算電路的時域瞬態響應性能。
要驗證設計電路的穩定性,速度,精確度等問題必須經過各種情況下的瞬態分析才能做出正確的判
斷。在本章中介紹如何設定瞬態模擬以及瞬態分析。讀者在具體的電路設計中需要根據實際情況,合
理地設置激勵源和模擬參數才能真正評估電路性能。在瞬態模擬的參數設置過程中,主要是在模擬精
度和模擬速度之間做出合理的折衷。讀者可以按設計電路的要求定制模擬器計算時的容差、積分方式
、步進大小等控制精度。同時,還可以對電路初始狀態,輸出資料保存量等條件參數設置。
2.2 模擬參數設置
參照第 1 章 1.5 內容,打開“Analog Design Environment” 7 “Analyses”7“tran”,基本
參數設置介面如圖 2.1 所示。主要內容包括用於控制模擬時間的“Stop Time”和用於控制模擬速度
和精度的“Accuracy Defaults(errpreset)
”設定。
2.2.1 基本參數設置
圖 2.1 瞬態模擬的參數設定
• “Stop Time”
:模擬終止時間的設定。
在默認設置中瞬態分析總是從 t = 0 時刻開始模擬。所以只需設置模擬終止時間。時間單位
是秒。所以,如果要表示毫秒數量級,在資料後面需要跟上毫秒的單位縮寫“m”。其他時
間數量級單位類似。
• “Accuracy Defaults”
(errpreset)
:模擬精確度和速度設定。
可選擇三種模擬精確度:寬鬆的(liberal)
,適中的(moderate)
,保守的(conservative)
。其
中
,
“liberal”的模擬速度最快,但是精確度最低。這種精度的模擬適合於數位電路或者是變化
速度較低的類比電路;
“
moderate”作為模擬器預設的設置,其精確度類似於用 SPICE2 計
24
算的模擬結果;“conservative”的具有最高的精確度但速度最慢,適合於敏感的類比電路模
擬。
如果讀者需要比預設“conservative”更高的精度,可以由讀者自己 “Option”選項中將容
差參數(reltol)設置為更小的數值。“Option”在稍後的章節中有介紹。上述三種系統預設
的精度設置實際上包含容差(reltol)
,相對參考(relref)
,積分方式(integration method)
,
最大時間步長(maxstep)
,截斷誤差比(lteratio)等參數,具體設定如表 2.1 所示。在模擬
日誌檔中,都可以看到相應的參數設置情況。具體各個子參數的含義和設置也將在後續高級設
置章節中介紹。
表 2.1 三種模擬精度下的參數設置情況
2.2.2 高級參數設置
圖 2.2 暫態模擬參數設置介面
點擊圖 2.1 介面中的“options”,可模擬控制參數進行設置。
• “Options”
:
“Spectre”模擬軟體允許讀者能夠自定制模擬控制參數,包括時間步進,精確度,積分方式
等高級設置。圖 2.2 是參數設置視窗。模擬器的“Options”控制參數包括:
“SIMULATION INTERVAL PARAMETERS”
◆ “start”
:
模擬開始時刻。模擬器預設開始時刻為 0s。
◆ “outputstart”
:
輸出波形時刻。如果使用者模擬時間很長,而只需觀察部分時間段
內系統瞬態特性,可以通過該參數控制資料輸出。
25
“TIME STEP PARAMETERS”
◆ “step”
:最小的時間步進。預設值為 0.001×(終止時刻-起始時刻)
◆ “maxstep”
:
最大時間步進,根據“errpreset”中精度設定取得預設值。
“INITIAL CONDITION PARAMETERS”
使用者可以利用設置節點狀態的初始化語句(ic statement)或電容、電感等模型內的初始條
件參數 (ic parameters) 兩種方式為瞬態分析設置初始條件。如果沒有特殊設置,模擬器將
採用直流分析(DC analysis)的結果作為初始條件。
◆ “ic”
:
設定通過何種方式設置初始條件。
• ic=dc:忽略任何設置的初始條件,直接採用直流分析的結果。
• ic=node:忽略電容、電感等器件上設置的初始條件,而通過“ic
statement”設置的初始條件將被採用。
• ic=dev:忽略由“ic statement”設置的初始條件,電容、電感上的初
始條件將被採用。
• ic=all:兩種初始條件都將被採用。當設置條件發生衝突時,“ ic
parameter”比“ic statement”的優先順序更高。
一旦使用者指定了初始條件,“Spectre”模擬器將通過一次直流分析來計算電路的實際初始
狀態。在這個過程中,“Spectre”根據初始條件在相應的節點上施加一個電壓源和電阻串聯。當
讀者通過“ic statement”來描述電路初始狀態時,有可能存在不一致性問題。比如說在沒有電容
連接到地的節點上設置電壓或者是在沒有電感連接的支路上設置初始電流。如果設置時發生不一
致問題,那麼在計算時將發生電路狀態突變。也就是說,電路將從實際的初始條件突變到設置的條
件。所以,用讀者自訂初始條件時,應當避免上述情況,否則模擬器將會產生收斂性問題。
在上文的說明中,提到了初始化語句“ic statement”和初始化參數“ic parameter”的概念。
“ ic parameter”的設置很簡單,如果用戶打開一個電容的參數設置視窗可以看到“ Initial
condition”。在其中填寫初始的電容電壓即可。注意,這裡只能填寫電壓值。而如果是電感的初始
條件,需要設置的是電流值。在表 2.2 中,給出了有關器件埠的指代符號。
圖 2.3 電容的參數設置
“ic statement”的格式是:ic signalName=value .舉例如下:
ic Voff=0 X3.7=2.5 M1:int_d=3.5 L1:1=1u
上句表示的是:在節點 Voff 上的初始電壓是 0V;在子電路 X3 的第 7 號節點上電壓值為
2.5V;在 MOS 管 M1 的漏端電壓是 3.5V;在電感 L1 上流過的初始電流是 1μA。
26
表 2.2 器件的埠定義
由於篇幅有限,只能對初始條件設置做一些簡單的介紹。可以參考 cadence 文檔的“Spectre
simulator user Guide 7 7. Control Statement”做進一步的瞭解。
◆ “skipdc”
:
選擇跳過直流分析。在沒有直流分析的情況下,電路的初始解將採用通
解,或是從由“readic”定義的文件中讀取初始條件。如果“readic”沒有定義,那
麼將從“ic statement”中獲取初始條件。不論是否跳過直流分析,器件上的初始條
件肯定都會被採用。如果一個節點沒有被賦予初始條件,將自動被模擬器設置為 0。
該參數同樣也會引起模擬器收斂性問題。推薦不使用該參數。具體選擇項可詳見“
Spectre Circuit Simulator Reference73. Analysis Statements”
◆ “readic”
:
從文件中讀取初始條件。
“CONVERGENCE PARAMETERS”
當電路在模擬時存在無限快的回應速度(例如一個電路節點不存在任何電容)
,
“
Spectre”模
擬器可能會產生收斂性問題。為了避免這種問題,需要設置“cmin”參數給該節點設置一個合理
的對地電容值。
◆ “readns”
:
從檔中讀取電路瞬態模擬的初始估計解。
◆ “cmin”
:
設定每個節點對地的最小電容。
當對一個電路進行多次模擬時,建議使用“write”和“readns”參數。並且將兩者的檔案名
命名相同。這將使直流分析的收斂的速度加快。
“STATE FILE PARAMETERS” (從?介面)
狀 態 文 件 (State File) 主 要 有 兩 個 用 處 :
A、 將保存下來的狀態檔用於後續的模擬分析中。比如在一次瞬態分析中,保存下終
止時刻的資訊,在下一次瞬態分析中,能夠以該時刻作為起始點繼續做後續時間端
的分析。
B、 使用者能夠利用狀態檔自動完成初始條件的更新。
讀者能夠利用模擬器將一次分析的初始時刻工作點或者是終止時刻工作點生成狀態檔。當然
,使用者也能手動編寫一個狀態檔。在“Spectre”模擬器中,可以設置三個有關“State File” 的
參數,如圖 2.4 所示。
27
圖 2.4 “State File Parameter”的設定
◆ “write”
:
將瞬態分析的初始狀態解寫到指定的檔中去。
◆ “writefinal”
:
將瞬態分析的最終解寫到指定檔中去。
◆ “ckptperiod”
:
在指定的週期去作週期性的分析。
圖 2.5“Spectre.ic”文件例
圖 2.6 “Spectre.fc”文件例
在圖 2.5 和 2.6 中分別給出了“Spectre.ic”和“Spectre.fc”文件。這兩個檔的目錄是
28
~/simulation/cell name/spectre/schematic/netlist。路徑中“cell name”是使用者模擬的電路單元名。
“Spectre.ic”中記錄的初始時刻狀態值。
“
V0:p”
和
“
V3:p”表示兩個電壓源的正端電壓值,
“
VIN”
,
“VOUT”
,
“
vdd!”表示電路中各個節點電壓值。“Spectre.fc”記錄終止時刻值,檔中的字元和
數位的含義和“Spectre.ic”中相同。
下面的例子解釋了狀態檔的格式。注意:這裡的例子是以命令列形式給出的,使用者在使用
圖形介面是只需在相應的參數裡設置即可。
altTemp alter param=temp value=0
Drift dc param=temp start=0 stop=50.0 step=1 readns="ua741.dc0" write="ua741.dc0"
XferVsTemp xf param=temp start=0 stop=50 step=1  probe=Rload freq=1kHz readns="ua741.dc0"
第一行命令表明首先做了一次在溫度 T=0 情況下的直流分析(DC Analysis)
。使用者需要把
該次分析的結果保存在狀態檔“ua741.dc0”中。
然後做溫度從 0 到 50 度的掃描。
第三次做傳輸函數分析(Transfer Function Analysis)時需要將溫度重新設置為 0。如果不使
用“State File”,那麼由於溫度發生了變化,將導致重新計算直流工作點。如果系統較大,模擬速
度受到很大限制。可是如果直接採用保存下來的“State File”
,
“
Spectre”可以直接利用裡面保存的
在溫度 T=0 狀態下的直流解來計算傳輸函數。即便是電路有一定程度上的改變,模擬速度也會
比從頭開始計算要快得多。
“INTEGRATION METHOD PARAMETERS” (從何介面?)
該參數用於設計人員根據模擬速度和模擬精確度選擇合適的積分方式。“Spectre”模擬器提
供 3 種不同的積分方式:“backward-Euler”,“Trapezoidal”
,
“
The second-order Gear”。根據這 3
種方式一共組合出 6 中模式,分別為“euler”
,
“
traponly”
,
“
trap”
,
“
gear2only”
,
“
gear2”
,
“
trapgear2”
。
表 2.2 表示了各種積分方式和模式之間的對應關係。
表 2.3 各種積分方式和模式之間的對應關係
如果使用者需要高精度模擬,可以選擇“trapezoidal”積分方式。但是,這種積分方式在容差
(error tolerances)很大的時候並不是一種很好的選擇。這是因為它對前一個時刻計算產生的誤
差非常敏感。如果在容差很大而且要求速度較快的情況下,最好還是選擇“Second-order Gear”
積分法。
“Second-order Gear”積分法比“backward-Euler”法更加精確。但兩種方法都會過高估計系
29
統的穩定性。“Second-order Gear”積分法的這種誤差效應要相對小一些。比如當使用者需要模
擬一個高 Q 值的諧振器例如振盪器或濾波器時,使用“Second-order Gear”的結果會表現出阻尼
振盪,而“backward-Euler”則表現出更強的衰減。所以,在這種情況下,應該採用“trapezoidal
” 積分法。
“ACCURACY PARAMETERS”
◆ “relref”:相對收斂標準的參考,而預設值是從“errpreset”得到。包括如下幾個選
項:
• “relref = pointlocal”,即,relref=局部點:這個設定用來定量比較每個節點的值
相對於待分析節點上當前數值的相對誤差。
• “relref = alllocal”,即,relref=局部所有點:定量比較過去的所有時間點的值
相對於最大節點值的相對誤差。
• “relref = sigglobal”,即,relref=所有信號點:定量比較每個電路上信號值相對
於電路中所有信號中的最大值的相對誤差。
• “relref = allgolbal”:同上,另外對每個節點最大懸浮電流值設定比較方程,此時
不能滿足基爾霍夫電流方程。
◆ “lteratio”
:
比率係數,用於計算 Newton 容差中的 LTE 容差。
2.22.8 “ANNOTATION PARAMETERS”
◆ “states”
:
統計學分析。在實際晶片生產過程中,工藝的變化會影響到產品的性能。
而統計學分析則説明設計師把握這種工藝和性能之間的關係。在設計時,如果採用
的器件模型帶有統計分析參數,既是說這些模型中帶有表徵工藝誤差的資料,就可
以進行統計學分析。這種分析的實質是對工藝參數設置不同的數值後多次模擬,就
可以找出設計對工藝的依賴程度。這種統計學分析也被稱作蒙特卡羅分析。
◆ “annotate”
:
注釋選項
2.22.9 “OUTPUT PARAMETERS”
“Spectre”模擬器一般情況下會把所有模擬資料都保存下來。但有時候並不需要所有的資料量。
“Spectre”允許使用者選擇保存需要的資料。當然,如果需要得到更精確的結果,也可以增大資料
輸出量。可以如下幾種方式來控制資料保存量:
◆ “strobing”
:
在保存點之間設置一個時間間隔。雖然模擬器計算過這些資料,但是
並沒有將其保存輸出。
◆ “skip time point”
:
使用者能夠選擇讓模擬器保存多少個點。
◆ “compression”
:
將恒定信號的重複記錄刪除。
◆ “outputstart”
:
設置模擬器從何時開始保存資料。
◆ “Infotime”
:
允許用戶保存某些自訂時刻的工作點數據。如果需要保存多個時刻的
工作點,填入時間向量之間是以空格隔開。如果使用者填入了某些非法資料,
“Spectre”會在輸出窗口中報錯。如果模擬成功,點擊“Results Print”7“Transient
Operating Point”功能表,然後在電路圖中選取一個器件,將會顯示在指定時間點時
刻的工作資料。由於“OUTPUT PARAMETERS”參數一般不經常使用,因此詳細
內容請參考“Spectre”的用戶手冊。
30
2.22.10 “NEWTON PARAMETERS”
◆ “maxiters”:在每個時間步最多進反覆運算多少次。
◆ “restart”:如果有任何條件發生變化,是否從最開始重新計算直流解。如果不重新計
算,將直接採用上一次的初始猜測。
2.22.11 “CAPTAB PARAMETERS”
◆ “captab”
: 電容清單參數,介面如圖 2.7 所示。在完成一次“Spectre”模擬後,
使用者能夠得到有關電路負載電容的資訊。在瞬態分析中,用戶能夠通過“infotimes
” 參數來指定在某些時刻點保存電路中的電容資訊。如果沒有特殊指定,模擬器將
預設保存終止時刻的電容列表。如果點擊該參數,會顯示對該參數的細節設置。
圖 2.7 電容列表參數
◆ “timed”
:
是否將使用“infotimes”參數來保存電容列表。
◆ “threshold”
:
需要保存的電容的最小值。電路中電容值小於該閾值的電容就不會出
現在輸出檔中。預設值為 0.0。
◆ “detail”
:
可以被設置為節點電容(node)
,節點對地電容(nodetoground)
,
nodetonode
三個選項。
◆ “sort”:排序方式。
圖 2.8 給出了一個電容列表的例子。該清單中記錄的是模擬終止時刻的資訊。
圖 2.8 電容列表例
該電容清單所描述的電路如圖 2.9 所示:其中“net19”節點是指“M0”
MOS 管的柵端。
“
Vdd!
”
表
示
的
節
點
電
容
是MOS 管“M1”的源端。“Vout”節點為圖中所示的輸出端。由於 MOS 管的各埠
寄生電容和該MOS 的工作狀態有埠電壓有關,所以,電容列表中包含了固定電容(fixed) 和可變電
容(variable)兩項。總電容(sum)為兩者的加和。
31
圖 2.9 電容列表(圖 2.8)所描述的電路
2.3 常用於瞬態模擬的激勵信號源及其參數設置
在本章的功能介紹部分曾經提到瞬態模擬時需要讀者自行設計多種電路工作環境,多種工作
狀態的驗證過程。這裡介紹幾種常用於瞬態模擬的激勵源。包括脈衝信號、分段信號、指數信號、正
弦信號等。這些激勵源都可以在“analogLib”中找到。這些信號源都是以電壓形式給出的,也可使
用電流形式的激勵源。
2.3.1 脈衝信號“vpulse”
“vpulse”信號用於產生週期性方波。在類比電路設計中,可用于做為 MOS 管開關的控制信號,
也可用來表示電源上電或者電源跳變過程等。打開“vpulse”的參數列表如圖 2.10 所示。該參數
清單包括兩部分“Property”和“CDF Parameter”。其中“Property”部分在從“analogLib”中選
中信號源後由系統自動填寫。值得注意的時,在“View Name”一欄中應當採用“symbol”。圖
2.10 中“CDF Parameter”只截取了一部分有關瞬態模擬的參數設置。在表 2.4 中給出了主要參數
的名稱,含義,實例和單位等資訊。圖 2.11 中給出了根據實例設置的週期方波模擬曲線。
32
圖 2.10 脈衝信號“vpulse”的設定
表 2.4 “vpulse”的設定參數意義
參數 含義 實例 單位
Voltage 1 起始電壓 500m V
Voltage 2 脈衝電壓 5 V
Delay time 延遲時間 100μ s
Rise time 上升時間 0 s
Fall time 下降時間 0 s
Pulse width 脈衝寬度 50μ s
Period 週期時間 100μ s
33
圖 2.11 表 2.4 設定的脈衝信號“vpulse”波形
2.3.2 分段信號“vpwl”
當使用者需要自己定義線性分段波形是是可以利用“vpwl”信號源。它允許用戶能夠定義分段時
刻和該時刻的電壓值。該信號源的設置參數和“vpulse”信號基本相同。在表 2.5 中給出了主要參
數的名稱,含義,實例和單位。並且根據設計實例,在圖 2.12 中給出了該信號源的模擬曲線。
表 2.5 分段信號““vpwl”的參數設定
參數 含義 實例 單位
Number of pairs of points 轉捩點數目 4
Time 1 第 1 個轉捩點時間 0 s
Voltage 1 第 1 個轉捩點電壓 2 V
Time 2
Voltage 2
第 2 個轉捩點時間
第 2 個轉捩點電壓
250μ
2
s
V
Time 3
Voltage 3
第 3 個轉捩點時間
第 3 個轉捩點電壓
500μ
5
s
V
Time 4 第 4 個轉捩點時間 1m s
Voltage 4 第 4 個轉捩點電壓 5 V
34
圖 2.12 信號源的模擬曲線
2.3.3“vexp”
指數信號在某些設計中也會用到。同樣,這裡給出了主要參數以及相應的模擬曲線。需要注意的
是,這裡的“Damping factor”是以時間為單位給出的。表 2.7 給出了各參數和輸出電壓之間的換
算關係。其中“Dti”表示“Delay time i”
,
“
Dfi”表示“Damping factor i”
。
表 2.6
參數 含義 實例 單位
Voltage 1 起始電壓 0 V
Voltage 2 峰值電壓 5 V
Delay time 1 上升(下降)延遲 0 s
Damping factor
Delay time 2
Damping factor
1
2
上升(下降)時間常數
下降(上升)延遲
下降(上升)時間常數
100μ
500μ
100μ
s
s
s
表 2.7
時間 電壓值
0~Dt1 V1
Dt1~Dt2 V1+(V2-V1)(1-exp(t-Dt1)/Df1) Dt2~
Stop V1+(V2-V1)(1-exp(t-Dt1)/Df1)(exp(t-t2)/Df2)
35
圖 2.12
2.34“vsin”
正弦信號也是一種在瞬態模擬中常用的信號。在該信號的參數中,
“
Damping factor”的單位
是“1/s”。正弦信號也是在交流小信號分析(AC Analysis)中重要的激勵源。使用者需要區別的
是瞬態信號激勵和交流信號激勵不同的含義。
表 2.8
參數 含義 實例 單位
Amplitude 振幅 3 V
Frequency 振盪頻率 10 Hz
Delay time 延遲時間 0 s
Damping factor 阻尼因數 1 1/s
36
圖 2.13
2.35“vsource”
“vsource”激勵源是一種通用型電壓源,可以用於完成上述所有激勵源的功能。在下
圖中“source type”功能表中選擇所需要的激勵源即可,同時按前述的方式填寫各激勵源的
關鍵參數。
37
圖 2.14
2.4 瞬態模擬實例
採用最簡單的 RC 充放電電路來完成一次瞬態模擬,該電路圖如圖 2.15 所示。電阻和電容
都採用“analogLib”中的理想電阻模型和理想電容模型。激勵源是“vpluse”週期性方波。採用
“conservative”的精度。由於沒有設置初始條件,模擬器會先執行直流分析,將其結果作為初始解
,模擬去結果如圖 2.16 所示。
38
圖 2.15
圖 2.16
39
第 3 章 直流分析(DC Analysis)
3.1 功能基本介紹
直流分析是其他所有模擬的基礎。在“Tran Analysis”
、
“
AC Analysis”等分析的過程中,首
先就是先要計算直流工作點。在這裡介紹的直流“DC Analysis”中,實際包括兩個方面的分析:
[1.]一個是直流工作點計算;[2.]另一個是直流特性掃描。
直流工作點計算例?
對於直流工作點分析,模擬器會計算各個節點的電壓,各支路電流,包括 MOS 管的各個直
流參數,例如跨導(gm)
,閾值電壓(Vth)
,工作區域(region)等。而在直流特性掃描中包含了
電路的溫度(Temperature)
,設計變數(Design Variable)
,器件參數(Component Parameter)
,器
件模型參數(Model Parameter)等多個參數的特性模擬。
3.2 模擬參數設置
如果需要將直流工作點資訊保存下來,在“DC Analysis”中確定“Save DC Operating Point”
。如
果要繪製特性曲線,需要設置掃描變數和掃描範圍。參數設置選項如圖 3.1 所示。
圖 3.1 “DC Analysis”參數設定
• “Temperature”
:
溫度掃描,觀察電路直流工作點隨溫度飄移情況。
• “Design Variable”
:
設計變數掃描,在設計電路時,設計師往往需要將某些設計參數
設置為變數,方便設計和修改。比如,可以將電源電壓(VDD)
,MOS 的柵長(L)和
柵寬(W)設置為變數,使用變數掃描,觀察電路在各種設計下的工作情況。
• “Component parameter”
:
器件參數掃描,和“Design Variable”掃描比較類似。不過,
器件參數掃描不用預先將電路中某器件參數設置為變數(Variable)
。
• “Model Parameter”
:
如果使用者能夠對庫檔模型進行修定,可以使用該參數掃描。但
是,由於庫檔都是直接由生產工廠直接提供,所以,不推薦使用這項掃描。
40
在選定掃描參數後,使用者需要進一步設置掃描範圍(Sweep Range)
,掃描方式(Sweep Type
)等。
以點擊掃描“Temperature”為例,如圖 3.2 所示,可以看到可選參數包括掃描範圍(Sweep
Range)和掃描方式(Sweep Type)
,以及是否加入特殊點計算(Add Specific Points)
。
。
圖 3.2 “Temperature”掃描設定
• “Sweep Range”:指定掃描範圍,可以包括指定起始值(Start-Stop)或指定中點值
(Center-Span)兩種方式。
• “Sweep Type”:指定掃描方式。步進可以是線性的(Linear)
,也可以以對數方式
(Logarithmic)步進。如果採用“Linear”模式,使用者需要通過步進大小(Step Size
) 或是步進點數(Number of Steps)
來控制模擬精度和模擬時間。而如果採用“
Logarithmic”模式,模擬器預設的是以 10 為底的對數。使用者也需要通過每個數量級所需
步進數(Points Per Decade)或總步進數(Number of Steps)來控制模擬精度和時間。當
使用者對輸出模式沒有特殊要求時,可以採用系統預設設置(Automatic)
。系統預設的
設置是在當終值與初值比小於 10 時,採用線性模式輸出。而在該比例大於 10 時,採用
對數模式輸出。三種模式的設置視窗見圖 3.3。
圖 3.3 “Temperature”掃描類型的設定
• “Add Specific Points”
:
加入特殊點計算。在模擬過程中,用戶可以指定某些點一定需
要計算,在該選項中添加即可。各點之間用空格隔開。
如果使用者選擇“Design Variable”或“Component Parameter”掃描,還需要設置掃描的變
數名(Variable Name)或器件名(Component Name)和該器件的參數名(Parameter Name)
。圖
3.4是設定介面。在以後的設計實例部分,具體講解操作過程。
41
圖 3.4“Design Variable”設定
3.3 設計實例
以一個簡單共源級放大器為例說明“DC Analysis”的模擬過程,電路如圖 3.5 所示。直流模擬的
激勵源使用普通的“analogLib”7“vdc”即可。。
3.3.1 設計變數掃描“Design Variable”
在圖 3.5 中,將對 M0 的偏置電壓由 3V 改變設置為變數“VBIAS”。點擊“Design Variable”
7“Select Design Variable”後會彈出變數選擇視窗圖 3.6。由於電路中只設置了一個變數,所以點
擊該變數後選擇“OK”後,該變數名會出現在“Variable Name”中,再設置好“Sweep Range”
和“Sweep Type”後即可模擬。圖 3.7 的模擬曲線表示當變數“VBIAS”從 0V 到 5V 變化時輸
出電壓的變化情況。
42
圖 3.5 共源級放大電路
圖 3.6 選擇掃描變數
43
圖 3.7 模擬波形
3.3.2 器件參數掃描“Component ”
器件參數掃描和設計變數掃描相類似。點擊“Component Parameter”7“Select Component”
後彈出原理圖窗口。用戶可以選擇 MOS 管、激勵源、地線等各種器件作為模擬對象。如果點擊圖
3.3 中的 NMOS 管 M0,會彈出該器件的參數表。圖中的引號部分是對相應參數的解釋。可以對該
MOS 的柵長變化作參數掃描。圖 3.9 模擬表示 M0 管的柵長從 1μ 到 20μ 變化時,輸出電壓變化情
況。
44
圖 3.8 圖 3.5 電路圖中的 M0 管參數
圖 3.9 M0 管的柵長從 1μm 到 20μm 變化時,輸出電壓的變化
有些轉移曲線的繪製需要用“DC Analysis”中的參數掃描和其他模擬工具混合使用。比如 MOS
管的轉移曲線就需要“Design variable”和“Parameter analysis”共同使用,模擬結果如圖 3.10
45
所示。 (需要具體表示設定)
圖 3.10 MOS 管的轉移特性
在“DC Analysis”的高級設置中(Option)
,包括“State File Parameters”
、
“
Output Parameters”
,
“
Convergence Parameters”
、
“
Annotation Parameters”
,
“
CAPTAB Parameters”等。這些參數的含
義和設置在第二章中都有介紹,也可以查閱 cadence 的用戶手冊。
46
第 4 章 結果流覽器(Results Browser)
4.1 “Results Browser”的作用
“Results Browser”是一個非常實用的工具,通過它可以讀取所有電路節點的電壓和埠電流
的模擬結果。並且可以對資料進行預處理,在合適的視窗類型中顯示。此外,還提供了資料比較,
“Y vsY”功能。通過“Results Browser”可以實現以下功能:
[1.] 察看模擬結果;
[2.] 察看模擬環境設置;
[3.] 察看器件工作點特性;
[4.] 將結果在特殊的圖示格式中顯示,例如阻抗圖和導納圖;
[5.] 將模擬結果中的運算式直接送入到“Calculator”的緩存中。
4.2 “Results Browser”窗口簡介
“Results Browser”採用類似“Windows”檔案系統的方法,將模擬資料分級保存在各個資
料夾中。通過點資料夾,可以將資料夾展開,從而進入下一級資料夾獲得更具體的資訊。圖 4.1
顯示的是“Results Browser”視窗。
圖 4.1 “Results Browser”窗口
47
4.2.1 “Results Browser”的菜單。
表 4.1 列出了“Results Browser”中的所有功能表和它們的功能
。表 4.1 “Results Browser”視窗中的功能表及功能
。
。
。
功能表選項 具體操作
File
Open Results 打開模擬的輸出結果
Open Graph
Open Graph as Plot… 以圖表的形式打開保存圖形
Open Graph as Tamplate… 以範本的形式打開保存圖形
Open Table 打開保存的表格
Clear
將選中的模擬結果,從“Results Browser”中清除
當只有一個模擬結果時,無需選擇,即可將其清除
Reload 重新讀取模擬結果
Save Session 保存當前“Results Browser”的設置
Close 關閉“Results Browser”窗口
Setting
Select Data
選擇輸出資料,在運行了“Corner Analysis”或者
“Parametric Analysis”後,該選項被啟動。可以通
過它選擇特定功能角或者設計變數值下的模擬結
果
Plot Style
Append 在原來視窗的基礎上顯示新的波形。
Replace
清楚原來的視窗中的資料,顯示新的波形。
New SubWin
在原來的視窗中,建立字視窗,用來顯示新的波形
New Win 創建一個新的視窗顯示新的波形。
Graph Type
Default 預設方式
Rectangular 直角坐標系
Polar 極座標
Impedance 阻抗圓圖
Admittance 導納圓圖
RealVsImag 實部 VS 虛部
Tools
Calculator 打開“Calculator”
Table 打開表格
Help Help 獲取幫助文檔
48
4.2.2 “Results Browser”視窗中的快速鍵
“Results Browser”視窗中的快速鍵如圖 4.2 所示,各個快速鍵的功能如下:
圖 4.2 “Results Browser”視窗中的快速鍵
:打開模擬的輸出結果。等同 File7Open Results
• :按照“Plot Style”中選擇的方式,以圖形的方式顯示選中的模擬結果
• :打開“Calculator”
,如果在“Results Browser”中選擇模擬結果。那麼該結果的運
算式將直接送到“Calculator”的緩存中。
• :選擇兩個模擬結果,將他們的差值以圖像的形式輸出。
注意:該快速鍵在一個模擬結果運算式存在多個值的情況下失效,例如運行了“Corner
Analysis”或者“Parametric Analysis”後。
• :選擇兩個模擬結果,以“YvsY”的方式輸出模擬結果。
注意:該快速鍵在一個模擬結果運算式存在多個值的情況下失效,例如運行了“Corner
Analysis”或者“Parametric Analysis”後。
• :選擇輸出資料,在運行了“Corner Analysis”或者“Parametric Analysis”後,該選
項被啟動。可以通過它選擇特定功能角或者設計變數值下的模擬結果。等同於“Setting”
7“Select Data”
。
第一個下拉式功能表,如圖 4.3 所示。該下拉式功能表是選擇圖表類型,等同於“Setting”7
“Graph
Style”。注意:該下拉式功能表只在選擇交流模擬結果時才出現。
49
圖 4.3 第一個下拉式功能表
• 第二個下拉式功能表,如圖 4.4 所示。該功能表是對顯示的資料進行預處理。其功能
類似於“Calculator”中同名函數。注意:該下拉式功能表只在選擇交流模擬結果時才
出現。
50
圖 4.4 第二個下拉式功能表
• Mag:計算模擬結果的幅值。
• Phase:計算模擬結果的幅角(-180 度至+180 度範圍計算)
• WPhase:計算模擬結果的幅角(0 度至 360 度範圍計算)
• Real:取模擬結果的實部。
• Imag:取模擬結果的虛部。
• dB10:對模擬結果進行“10log n”變化。
• dB20:對模擬結果進行“20log n”變化
51
圖 4.5 第三個下拉式功能表
• 第三個下拉式功能表如圖 4.5 所示。該下拉式功能表是選擇創建顯示視窗的方式,等同於“
Setting”
7“Plot Style”
。
4.2.3 模擬結果保存路徑。
如圖 4.6 所示,“Location”欄中顯示了當前模擬結果的保存路徑。
圖 4.6 當前模擬結果的保存路徑
以前打開的模擬結果的路徑將保存在該下拉式功能表中,可以通過點擊下拉式功能表中對應路徑
,把該模擬結果 引 入到“ Results Browser ”中。 例 如在圖 4.7 中, 在 下拉菜 單 中選擇
了
“~/simulation/BIAS_P/spectre/schematic/psf”,發現該模擬結果出現在“Result Browser”中,如
圖 4.7 中左欄內的高亮部分所示。
52
圖 4.7 模擬結果的保存路徑設定
4.2.4 “Results Browser”視窗的主體部分
“Results Browser”視窗的主體分為左右兩欄,左邊一欄是”資源管理器”,以樹形結構分級
保存模擬結果。右邊一欄顯示當前選中資料夾中的內容。假如該資料夾還包含子資料夾,則在其之
前出現“ ”標記。
(該標記可能在打開資料夾後才出現。
)
模擬結果通常包含以下內容,如圖 4.5 中左欄所示。表 4.2 給出了結果名稱和其具體內容。
53
表 4.2 模擬名稱與內容
名稱 內容
tran-tran
瞬態模擬中所有節點電壓值和選擇保存端
口的電流值
finalTimeOP-info 模擬結束時器件參數的工作點
ac-ac
交流模擬中所有節點電壓值和選擇保存端
口的電流值
dcOp-dc
工作點的直流模擬,所有節點的電壓值和選
擇保存的埠電流值
dcOpInfo-info
工作點的直流模擬,所有器件的參數。在該
資料夾下有以器件名命名的子資料夾,分別
保存各個器件的直流工作點參數。
dc-dc
直流掃描模擬時,所有節點電壓值和選擇保
存埠電流值。
modelParameter-info 模擬採用模型的參數
element-info 設計電路圖中所有元素的器件參數。
outputParameter-info
輸出參數資訊。該資料夾下包含以器件名命
名的子資料夾,分別包含該器件經模擬器處
理後的參數,例如:有效長度(leff)
,有效寬
度(weff)
,有效電阻值(reff)
,有效電容值
(ceff)等等。
designParamVals-info 設計參數值
variables
設計變數。該資料夾下包含以設計變數名命
名的子資料夾,分別保存各個設計變數的信
息。
4.3 啟動“Results Browser”並讀取模擬結果
1
) 通過下面任意一種方式啟動“Results Browser”
。
• 在 Unix 命令列中鍵入“wavescan &”命令。
• 在“Calculator”視窗中選擇 Tools7Browser。
• 在“Waveform”視窗中選擇 Tools7Browser。
• 在 CIW 視窗中選擇 Tools7Analog Environment7Results Browser。
• 在 ADE 視窗中選擇 Tools7Results Browser。
然後“Results Browser”視窗彈出。
2
) 通過選擇 File7Open Results 或者快速鍵 ”打開“Choose Data Directory”視窗,
如圖 4.8 所示,從而選擇模擬結果保存路徑。
54
圖 4.8 模擬結果的保存路徑顯示
“Choose Data Directory”視窗打開時,將“icfb”的啟動路徑作為預設路徑。
在 ADE 的預設設置中,模擬結果保存路徑為:
“~/simulation/CellName/Simulator/schematic/psf”
其中“CellName”是模擬電路圖的名稱;“Simulator”是模擬器的名稱,預設值為“Spectre”
。
如
果
剛
剛
結
束
了
一
次
模
擬
,
“
Results Browser”會自動讀取其模擬結果。不用進行上述設置。
3
) 點擊“OK”完成資料讀取。
4.4 在“Results Browser”中選擇資料
對比圖 4.9 和圖 4.10,可以發現“Results Browser”中檔管理方式和 Windows 作業系統中的
資料夾系統十分類似。如同在 Window 作業系統中,在“IC Cadence”的資源管理器中完成文件的
選擇、打開和切換,在右邊被選中資料夾具體內容中,選擇資料、子資料夾,或者打開子資料夾。
55
圖 4.9 “IC Cadence”中的文件管理 圖 4.10 “Windows”中的文件管理
4.5 輸出“Results Browser”中的結果
4.5.1 直接輸出模擬結果到“Waveform”視窗。
不對模擬結果進行任何預處理,可以通過以下方法將結果直接輸出到“Waveform”視窗中
顯示。
• 在選中需要的模擬結果後,點擊快捷按鍵“ ”
, 即按照“Plot Style”中選擇的方式,
以圖形的方式顯示選中的模擬結果。
• 在選中需要的模擬結果後,點擊滑鼠右鍵,此時彈出一個選項功能表,如圖 4.11 所示。
56
圖 4.11 顯示方法的選定
各個選項的功能如下:
• “Append”:以“Plot Style”為“Append”的方式,顯示選中的模擬結果。
• “Replace”:以“Plot Style”為“Replace”的方式,顯示選中的模擬結果。
• “New SubWin”:以“Plot Style”為“New SubWin”的方式,顯示選中的模擬結
果。
• “New Win”:以“Plot Style”為“New Win”的方式,顯示選中的模擬結果。
• “Table”:以清單的方式顯示選中的模擬結果。
• “Calculator”:將模擬結果直接送到“Calculator”的緩存中。
注意:此時,“Results Browser”中對模擬結果的預處理不在生效。例如在圖 4.11
中,第二個下拉式功能表選擇“Phase”,即輸出模擬結果的幅角。這個功能對上述
5個選項都有用。但是對於“Calculator”選項,送到“Calculator”中是未經處理
過的資料。如果需要顯示幅角,則需要在“Calculator”中對該資料使用“phase”
函數。
4.5.2 將模擬結果輸出到“Calculator”的緩存中
在選中需要的模擬結果後,點擊快捷按鍵“ ”
, 即將模擬結果直接送到“Calculator”的
緩存中。也可以使用 4.5.1 中介紹的,通過滑鼠右鍵,將模擬結果送到“Calculator”的緩存中。
57
4.5.3 輸出兩個結果的差值。
在選中第一個模擬結果後,點擊快捷按鍵“ ”
,此時“Results Browser”將會提示選擇另
一個模擬結果,如圖 4.12 中所示。選擇第二個模擬結果後,將按照“Plot Style”中的設置輸出
兩個模擬結果的差值,即“Result1 – Result 2”
。
圖 4.12 輸出兩個模擬結果的差值
4.5.4 將兩個模擬結果採用“Y vs Y”的方式輸出
在選擇第一個模擬結果後,點擊快捷按鍵“點擊快捷按鍵“ ”
,此時“Results Browser”
將會提示選擇另一個模擬結果,如圖 4.12 中所示。”選擇第二個模擬結果後,將用其作為橫軸,
輸出兩個模擬結果。
4.6 MOS 管參數名稱解釋
在“finalTimeOP-info”和“dcOpInfo-info”中都保存了電路器件參數。下面將就 MOS 管的
一些常用參數名稱進行解釋。
1
) type:MOS 管類型,可能值為 n 或 p。
2
) region:MOS 管的工作區域,可能值為 0~4,分別對應:
58
1: 關斷
2: 線性區
3: 飽和區
4: 亞閾值區
5: 擊穿
3
) reversed:MOS 管是否反向,可能值為 yes 或 no。
4
) ids (A): 阻性漏源電流
5
) lx4 (A):ids 的別名,當 MOS 管反向時有相反的符號。
6
) lx50 (A):襯源電流。
7
) vgs / lx2 (V):柵源電壓。
8
) vds / lx3 (V):漏源電壓。
9
) vbs / lx1 (V):襯源電壓。
1
0
) vth (V):有效閾值電壓。
1
1
) lv9 (V):vth 的別名。
1
2
) vdsat (V):漏源飽和電壓。
1
3
) lv26 (V):平帶電壓(Flat-band voltage)
。
1
4
) lv10 (V):vdsat 的別名。
1
5
) gm / lx7 (S):共源跨導。
1
6
) gds / lx8 (S):共源輸出跨導。
1
7
) gmbs / lx9 (S):襯底跨導。
1
8
) betaeff (A/V2):有效 β 值。
1
9
) cjd / lx29 (F):漏區襯底結電容。
2
0
) cjs / lx28 (F):源區襯底結電容。
2
1
) lx12 (Coul):襯底電荷(Qb)
2
2
) lx14 (Coul):柵極電荷(Qg)
2
3
) lx16 (Coul):漏區電荷(Qd)
2
4
) lx24 (Coul):漏區 PN 結電荷。
2
5
) lx26 (Coul):源區 PN 結電荷。
2
6
) cgg / lx18 (F):dQg_dVg
2
7
) cgd / lx19 (F):dQg_dVd
2
8
) cgs / lx20 (F):dQg_dVs
2
9
) cgb (F):dQg_dVb
3
0
) cdg / lx32 (F):dQd_dVg
3
1
) cdd / lx33 (F):dQd_dVd
3
2
) cds / lx34 (F):dQd_dVs
3
3
) cdb (F):dQd_dVb
3
4
) csg (F):dQs_dVg
3
5
) csd (F):dQs_dVd
3
6
) css (F):dQs_dVs
3
7
) csb (F):dQs_dVb
3
8
) cbg / lx21 (F):dQb_dVg
3
9
) cbd / lx22 (F):dQb_dVd
4
0
) cbs / lx23 (F):dQb_dVs
4
1
) cbb (F):dQb_dVb
59
4
2
) ron():導通電阻。
4
3
) id / i1 (A):漏端電流。
4
4
) is / i3 (A):源端電流。
4
5
) ibulk / i4 (A):襯底電流。
4
6
) lx5 (A):源端 PN 結電流。
4
7
) lx6 (A):漏端 PN 結電流。
4
8
) pwr (W):處於工作點時的功耗。
4
9
) gmoverid (1/V):Gm/Ids
5
0
) lv36 (F):柵源交疊電容。
5
1
) lv37 (F):柵漏交疊電容。
5
2
) lv38 (F):柵襯底交疊電容。
5
3
) lx10 (S):漏區二極體跨導。
5
4
) lx11 (S):源區二極體跨導。
60
第 5 章 交流小信號分析(AC Analysis)
5.1 功能基本介紹
交流小信號分析(AC Analysis)是用來計算電路的小信號頻率響應特性。在分析時,模擬
器首先計算電路的直流工作點,然後將電路在工作點附近線性化,並以此計算電路的頻率響應。
模擬時需要設置專門的交流信號源。類似於直流分析(DC analysis)
,在交流小信號分析中,設
計者同樣有“Frequency”
、
“
Design Variable”
、
“
Temperature”
、
“
Component Parameter”
,
“
Model
Parameter”等參數掃描選項。
5.2 模擬參數設置
點擊“Analog Design Environment”7“AC Analysis”,彈出交流小信號模擬參數設置視窗。
如圖 5.1 所示。
圖 5.1 交流分析的設定
注意:如果是做“Frequency”掃描,“Sweep Range”填寫的是頻帶範圍。目的是觀察電路系統
對不同頻率信號的回應。而在其他掃描方式中例如“Temperature”掃描中,“Spectre”要求使用
者指定在某個頻率點上進行模擬。因此,用戶在“At Frequency
(Hz)
”中填寫模擬頻率,而在“
Sweep
Range”中填寫的是溫度掃描範圍。其他參數掃描的設置也類似如此。
61
圖 5.2 掃描參變數的設定
5.3、設計實例輸出結果觀察
以圖 5.3 所示簡單放大器作為實例進行交流小信號分析。在放大器設置中,最關心的是
它的增益和相位隨頻率變化的情況。在實際設計中,往往用波特圖來表示該放大器的頻率特
性。
62
圖 5.3 交流分析實例
在做“AC Analysis”時,必須先給電路設置一個交流信號源。常以“AnalogLib”7“vsin”
信號為激勵源。在圖 5.3 中,由於交流信號是直接從“M0”管的柵極加入,那麼在具有交
流信號的同時,必須要給該 MOS 管設置一個直流偏置電壓。在信號源中需要設置交流振幅
和直流偏置。如圖 5.4,在“vsin”信號的設置中包括交流信號幅值(AC magnitude)
,交流
信號相位(AC phase)
,直流偏置電壓(DC voltage)等多個選項。“AC magnitude”通常都
設置為 1V,
“
-1”表示 180°相位翻轉。當然,設計者也可以通過設置“AC phase”來表示相
位,
“
AC phase”缺省設置為 0。
“
DC voltage”根據實際電路設置偏置即可。該電路中以 1μF電容
和 1MΩ 電阻為負載。
圖 5.4 交流信號的設置
注意:設計者應當區別在模擬器中交流信號和直流偏置信號的差異。例如圖 5.3 中
,
如
果
“
M0” 的
直流偏置電壓設置為 1.5V,交流幅值設置為 1V,該 MOS 管閾值電壓 1V。那麼“M0” 會
不會進入到截止區呢(1.5V-1V<1V)?實際上模擬結果顯示“M0”管不可能進入截止區。在
本章最開始陳述過,“AC Analysis”的前提是先進行了“DC Analysis”。所以,電路狀態
63
固定,加入交流信號後不會影響直流工作點。在計算電路交流增益時,模擬器是將輸出端的交
流信號幅值除以輸入交流信號幅值。所以,“AC magnitude”設置為 1V 是為了方便計算和觀
察結果,不影響電路工作。那麼,如果在實際電路設計輸入信號較大,會影響到電路直流工作
點該如何模擬呢?這需要設計者在瞬態時域的模擬中進行仔細設計多種最差情況,並做出合理
的分析。
模擬結果可以使用“Tool”7“Results Browser”觀察,如圖 5.5 所示。
圖 5.5 模擬結果分析
在圖 5.5 中的下拉式功能表中,表示多種方式輸出。
• “Mag”
:
幅度絕對值曲線
• “Phase”&“WPhase”:相位曲線,兩者不同之處在於“Phase”是從 360°開始
作圖,而“WPhase”是從 0°開始作圖。如圖 5.6 所示。
• “Real”
,
“
Imag”
:
由於頻域在數學上往往可以用 exp 的指數形式表示,所以可以
用實虛數來表示。
• “dB10”
,
“
dB20”
:
在波特圖中幅頻特性通常換算成分貝表示。“dB10”
,
“
dB20”
表示對幅度 A 以 10logA 和 20logA 計算結果。如果是電壓幅值採用“dB10”,如果
是功率增益則需採用“dB20”。一般情況下,在波特圖中“dB20”更為常用。圖
5.3 電路的增益曲線如圖 5.7 所示。
對“AC Analysis”中“State File Parameter”
,
“
Output Parameter”等高級設置(Option)詳見
“tran analysis”的介紹。
64
圖 5.6 “phase”與“wphase”分析圖
圖 5.7 “Vout”與頻率關係
65
第 6 章 零極點分析(Pole & Zero Analysis)
6.1 零極點分析(Pole & Zero Analysis)簡介
零極點分析是分析線性時不變電路行為特徵的有效方法,可以應用於類比電路的設計中。因
此,這種方法可以用於確定設計的穩定性。在零極點分析中,網路是用傳輸函數描述的,對於任
何線性時不變系統,傳輸函數可以表示為:
6.1
類似的,傳輸函數也可以表示為:
6.2
這裡,N(S)的所有的根 (也就是 Zi)成為網路的零點。D(S)的所有的根(也就是, Pi)成為網路的
極點。其中 S 表示的是複頻率。電路的行為決定於複平面,即 S 平面,上的極點和零點的位置。
極點被稱為電路的自然頻率。例如:
6.3
這裡零點可以使 H(S)的值為 0,也就是 S = 2 與S = -1。極點則使 H(S) 的值無窮,也就是 S =
0。
當所有的極點具有負的實部,則極點都位於 XY 平面的左側。在此情況下,電路被認為是穩定的
。圖 6.1 說明的是穩定電路的行為。
圖 6.1 極點在左平面 圖 6.2 極點在右平面
66
如果有極點出現於複平面的右側,則電路是不穩定的,圖 6.2 表示的是這種電路的行為。想
要電路絕對穩定,需要電路的所有極點都有負的實部。如果有極點具有正的實部,輸出信
號就是無界的,不可能穩定。
在 Spectre 模擬器中設定零極點分析,
1. 在 Virtuoso®
Analog Design Environment (ADE)的功能表中選擇“Analyses”7“Choose”
。“Choosing Analyses”— “選擇分析類型”對話方塊出現,如圖 6.3 所示。
2. 選擇“pz”。“選擇分析類型”對話方塊刷新顯示內容,顯示出零極點分析的各種選項。
圖 6.3 “PZ”分析視窗
3. 在對話方塊的“Output”節選定輸出埠。在如圖 6.4 所示的下拉式功能表中可以選擇
“Voltage” 或者“Probe”類型。指定電壓輸出的方法如下:
a. 在“output”下拉式功能表中選擇“voltage”
圖 6.4 “PZ”分析埠設定
67
b. 點擊“Positive Output Node” 一欄的“Select”按鈕,然後在電路圖中點擊一個網
路作為輸出的正端。然後點擊“Negative Output Node” 一欄的“Select” 按鈕,
然後在電路圖中點擊一個網路作為輸出的負端。
要指定一個電流輸出:
a
. 在“output”下拉式功能表中選擇“probe”,出現如圖 6.5 所示視窗。
圖 6.5 指定電流輸出
b
. 在“Output Probe Instance”一欄點擊“Select” 並在電路圖中選擇一個器件 (有
埠電流作為網路變數)
如果選擇其它的任何器件,在 CIW 命令列視窗中將會顯示一個警告,提示選擇的器件類
型不對。有效的“Spectre”器件和對應的“analogLib”單元,如表 6.1 所示。
表 6.1 器件名與對應的“analogLib”單元
電感器 ind, pinductor
電壓源 vdc, vpulse, vpwl, vpwlf, vsin, vexp, vsource
開關 sp1tswitch, sp2tswitch, sp3tswitch, sp4tswitch
傳輸線 tline
受控電壓源 vcvs, ccvs, sccvs, svcvs, zccvs, zvcvs, pvcvs, pvcvs2, pvcvs3,
pccvs
電流探測器 iprobe
當選擇的器件是“tline”的時候,在“選擇分析類型”對話方塊中的“Output”欄顯示出
是
“porti”欄。這個參數允許你指定一個器件埠電流作為電流輸出。因為所有的雙埠器件
,流過器件埠的電流都相當於流過另一個埠的電流,“tline”器件是唯一一個有多於 2
個埠的器件。
4. 通過在“Input Source”下拉式功能表中選擇“voltage”或“current”指定輸入是電壓或
電流源,設定介面如圖 6.6 所示,方法同上。
器件 對應的 analogLib 單元
68
圖 6.6 “input Source”的設定
5. 如果希望將掃描變數和零極點分析結合起來,選擇一個參數來掃描。可以選擇的參數類
型包括“Frequency”(頻率), “Design Variable”(設計變數), “Temperature”(溫
度), “Component Parameter”(器件參數)和 “Model Parameter”(模型參數),設
定視窗如圖 6.7 所示。
圖 6.7 掃描變數設定
如果選定了其中的一種參數類型,對話方塊更新為如圖 6.8 所示形式。
69
圖 6.8 選擇掃描參數後的視窗
注: Add Specific Points(添加指定點)欄只在啟用了 Add Specific Points(添加指定點)按鈕的
時候才會顯示。
6. 如果選擇的是“Design Variable”, “Temperature”, “Component Parameter”或“Model
Parameter”,在“Sweep Range”欄指定掃描參數的範圍和類型,如圖 6.10 所示。
輸入掃描範圍的上下限。
圖 6.10 掃描範圍的確定
掃描類型選項將會對應到 Spectre 變數掃描的選項,各種設置對應的掃描類
型如下:
70
• Linear + Step Size = step
• Linear + Total Points = lin
• Logarithmic + Points Per Decade = dec
• Logarithmic + Total Points = log
• Add Specific Points = values=[...]
當沒有選擇掃描變數的時候,“Sweep Range”掃描範圍選項欄不會顯示。
7. 點擊“Options”按鈕,打開零極點分析的選項對話方塊。這個對話方塊中的詳細設置見
下一節。
8. 點擊“Apply”(應用)。
9. 點擊 ADE 的功能表中的“Results”7“Print”7“Pole Zero Summary”列印輸出零極點列表
。也可以選擇 ADE 功能表中的“Results”7“Direct Plot” 7 “Main Form”。要在“OCEAN® ”
中控制輸出零極點曲線或者概要,可以使用命令“pzplot”和“pzSummery”。
6.2 零極點分析的高級選項
6.2.1 零極點分析內容
零極點分析按照直流工作點附近的電路參數,把電路當作一個線性系統,對網路的傳輸函數
進行分析,計算出所有的零點和極點。如果需要計算零點,則還需要制定輸出端和輸入端;否則只
會計算極點。如果在有頻率相關的器件(也就是在不同頻率下的 AC 等效模型不同的器件,例如
傳輸線或者有過餘度相位的雙結型器件)
“Spectre®
”電路模擬器將採用 1Hz 時電路的頻率特性
作為近似。PZ 分析現在採用的是直接求解的方法以達到更高的精確度;因而小規模或者中規模
電路(少於 1000 個方程)中會得到最好的性能。
“Spectre®
”可以在一個參數變化的情況下掃描零極點的移動。這個變化的參數可以是溫度,
器件的參數,模型參數,或者是網表參數。如果改變的參數影響了 DC 工作點,每步的工作點都要
重新計算。可以通過給出掃描的參數名來掃描溫度(temp)和網表參數(在沒有設置 dev 和
mod 參數的前提下)
。在分析完成之後,修改過的參數回復的原來的值。
當零極點對的距離(也就是差的絕對值)小於一定值得時候,零極點對被認為相互抵消。該
距離可以通過“absdiff”定義據絕對距離,或者用“reldiff”定義這個距離和零極點的絕對值的比
例。“Spectre®
”使用這兩個值中比較大的一個作為抵消的半徑。
71
圖 6.11 零極點分析的高級選項
探測參數:
[1.] iprobe:探測傳輸函數的輸入零點;
[2.] oprobe:探測傳輸函數的輸出零點。
埠參數:
[3.] portv:電壓模式,“oprobe”埠上的電壓作為分析輸出;
[4.] porti:電流模式,通過“oprobe”埠的電流作分析輸出。當“oprobe”是電壓源或者是電
流探測器時才能使用。
掃描間隔參數:
[5.] start=0:掃描的下限
[6.] stop:掃描上限.
[7.] center: 掃描中心[8.]
span = 0:掃描的跨度[9.]
step :線性的步距
[10.] lin=50 :模擬總步數,線性平分
[11.] dec:每 10 倍的步數
[12.] log=50:模擬總步數,對數均分
[13.] values=[...] 模擬點集.
72
掃描變數參數:
[14.]dev:參數需要被掃描的器件實例;
[15.] mod:需要掃描的參數所屬的工藝模型;
[16.] param:掃描參數名;
[17.] freq (Hz):用於線性化電路器件的工作頻率。
狀態檔參數:
[18.] readns:包含有 DC 測試結果的檔。
輸出參數:
[19.] oppoint = no:是否需要計算工作點,如果需要,應當把結果送到哪裡。可能的取值包
括no, screen, logfile, 或 rawfile.
[20.] zeroonly = no 如果設置了這個選項,只能選 0。 可能值包括no 或 yes.
過濾參數:
[21.] fmax (Hz):最大的零極點上限用來過濾虛極點或者零點。這個參數傳到 psf 目錄用於過濾
輸出圖像。
[22.] docancel=yes:是否進行零極點抵消的設置。If set, pole-zero cancellation is requested. 可
能值為 yes 或 no。.
[23.] absdiff=1e-6 Hz:零極點抵消的絕對差值上限
[24.] reldiff=1e-4:零極點抵消的相對比值上限
收斂參數設置:
[25.] prevoppoint = no:使用上一次分析的工作點,可能選項包括 yes 和 no
[26.] restart = yes:如果有任何條件改變,按照設置重新計算 DC 工作點;如果選 no,使用
上次的 DC 工作點。可能選項包括 yes 和 no
標注參數:
[27.] stats = no: 分析的統計,可能值為 yes 和 no
[28.] annotate = sweep: 標注級別,可能值為no, title, sweep, status, 或steps.
[29.] title:分析名
Examples:
1. mypz pz
- 只進行極點分析,分析名為 mypz
2. mypz2 (n1 n2) pz iprobe=VIN
- 進行零極點模擬,輸入是 VIN,輸出是 n1,n2 的差值。
- 計算零點和極點
3. mypz3 (n1 n2) pz iprobe=I1
- 輸入為I1, 輸出為 n1 和 n2 的差值。
- 計算零點和極點
4. mypz4 pz iprobe=VIN oprobe=IP1 porti=1
- 輸入為 VIN, 輸出為 IP1 上的電流, 其中 IP1 是一個 iprobe.
- 計算零點和極點
73
5. mypz5 pz iprobe=VIN oprobe=V3 porti=1
- 輸入為 VIN, 輸出為電壓源 V3 上的電流。
- 計算零點和極點
6. mypz6 pz iprobe=VIN oprobe=R3 portv=1
- 輸入為 VIN, 輸出為電阻 R3 上的電流。
- 計算零點和極點
7. mypz7 (n1 n2) pz iprobe=I1 param=temp start=25 stop=100 step=25
- 按照溫度掃描,範圍為 25~100
o
C,步進 25
o
C
8. parameters rval=2.0
R2 3 4 resistor r=rval
...
sweep1 sweep param=rval start=1 stop=10 step=1 {
mypz8 (n1 n2) iprobe=VIN
}
- 對外部掃描參數 rval,範圍 1~10,步進為 1。
9. mypz9 (n1 n2) pz iprobe=VIN docancel=no
- 不要進行零極點抵消
注意:“porti”允許用戶選擇一個關聯到“oprobe”中指定器件的電流。但這個器件必須讓它的端點
電流作為網路變數。因而要避免混淆,“porti”應當用於電壓源或電流檢測器,或者其它只有電壓
定義的支路。
輸出日誌:
“output.log”檔中包含以下資訊:
• 複平面極點
• 複平面零點
• 零點的增益
• 品質因數 Q,可以定義為:
其中如果實部 real<0 則sign=1;如果 real>0 則sign=-1;如果 real=0,則 sign=0;如果
結果中包含實部為正的極點,則這表明這是一個不穩定的電路。在該極點後面會加上**RHP 標籤。輸
出例如下:
*****************
PZ Analysis 'mypz'
******************
Real
Poles (Hertz)
Imaginary Qfactor
1 4.5694e+10 0 **RHP -0.5
2 4.2613e+10 0 **RHP -0.5
3 1.4969e+10 0 **RHP -0.5
4 1.4925e+10 0 **RHP -0.5
5 1.0167e+10 0 **RHP -0.5
74
6 1.0165e+10 0 **RHP -0.5
7 7.3469e+09 0 **RHP -0.5
8 7.3469e+09 0 **RHP -0.5
9 -1.0061e+09 0 0.5
10 -1.0061e+09 0 0.5
11 -1.0235e+09 0 0.5
75
第 7 章 雜訊和失真分析
7.1 功能基本介紹
雜訊分析將電路在直流工作點附近線性化後,計算在輸出端的雜訊頻譜。如果設計者指定了電
路輸入端,那麼模擬器可以計算傳輸函數和等效輸入參考雜訊。另外,如果信號輸入源是有噪的,也
可以計算信號源的雜訊係數。雜訊分析計算的輸出端的總雜訊中不僅包括電路本身的雜訊, 也包括輸入
源和負載的雜訊。電路中的每個噪音源對總雜訊的貢獻量也會同時計算出來。
雜訊分析有傳統的雜訊分析和週期性的雜訊分析。
7.2 傳統的雜訊分析及參數設置
打開“Noise Analysis”視窗可以看到基本設置類似於“AC Analysis”,如圖 7.1 所示。在雜
訊分析中同樣可以做“Frequency”
、
“
Design Variable”
、
“
Temperature”
、
“
Component Parameter”
、
“
M
o
d
e
l Parameter”等參數掃描。各種參數掃描的設置和“AC Analysis”中所述完全一樣。在“
Output Noise”和“Input Noise”填寫輸出雜訊節點和等效輸入噪音源。模擬器將計算從噪音源到輸
出端的增益,再將輸出端總雜訊除以增益後就等於等效輸入雜訊。
76
圖 7.1 “Noise Analysis”設定窗口
• “Output Noise”
:
如前所述,模擬器計算的是在輸出端的雜訊。因此,首先需要給電路設
置一對輸出節點(Node)或設置輸出探針器件(Probe component)
。當選擇“voltage”方
式輸出時,點擊“Select”後彈出電路圖,點擊網線(net)即可設置輸出節點。如果是
差分方式輸出,“Positive Output Node”和“Positive Output Node”設置為差分輸出端
即可。而如果電路是單端輸出,將“Positive Output Node”設置為輸出端,而“Negative
Output Node”設置為地線。如果輸出是一個電壓量,也可以選擇一個電阻(resistor)
或是一個埠(port)
作為輸出探針。而如果輸出量是電流量,選擇“vsource”
或
是
“
iprobe”作
為輸出探針。兩種不同的設置方式對比在圖 7.2 中顯示。
注意:這裡的“port”
,
“
vsource”
,
“
iprobe”都是在元件庫“analogLib”中選擇,如圖
7.3 所示。
圖 7.2 “Output Noise”埠的設定
圖 7.3 元件庫“analogLib”的例
• “Input Noise”
:
當需要計算輸入參考雜訊時,使用者需要通過“Input Port Source”指
定等效輸入噪音源。一般來說,只有電壓源(vsource)
,電流源(isource)或者是一個
埠(port)能夠用來做等效輸入噪音源。注意,這裡是將電路雜訊等效到某個輸入源的
位置上,而輸入源本身是無噪的。當然,用戶也可以設置輸入原本身是有噪的,比如說一
個埠(port)
,那麼雜訊分析將計算該信號源的雜訊係數(F 或者 NF)
。根據 IEEE對雜
訊係數的定義,輸入探針應當是沒有額外雜訊(no excess noise)並且它的等效雜訊溫
度是 16.85C(290K)
。在這裡,給出有關雜訊的計算公式:
IRN = sqrt(No2
/G2
)
F = (No2
-Nl2
)/Ns2
這裡,No = 總輸出雜訊
Ns = 輸入信號源傳遞到輸出端的雜訊
Nl = 負載在輸出端的雜訊
IRN = 輸入參考雜訊
G = 電路增益
F = 雜訊系統
77
NF = 10log10F
• 設計實例及結果輸出方式設置。這裡仍然是以一簡單放大器作為分析例子,如圖 7.4 所示。
圖 7.4 共源級放大電路實例
在設置好“Noise Analysis”模擬參數後,模擬結果可以通過“Result Browser”觀察輸
出結果的波形,例如作“Frequency”掃描時,可以通過波形方式看到功率譜密度曲線。設
計者也可以通過文本方式使用“Noise Summary”來獲取有關輸入參考雜訊,最大雜訊器件
等資訊。點擊“Analog Design Enviroment”7“Results”7“Noise Summary”會出現如圖
7.5 所示的輸出方式設置視窗。
各參數的含義如下:
圖 7.5 雜訊輸出方式設定
78
• “Type”
:
計算雜訊的方式
• “spot noise”
:
給出某個頻率點上的雜訊報告。這實際是反映功率譜密度。
• “integrated noise”
:
將頻段內的雜訊帶權重的積分後給出雜訊報告。這是給
出的帶內雜訊功率值。帶權重是指在某些頻帶內
• “noise unit”
:
雜訊的單位是採用電壓單位“V”或是功率單位“V2
”
。
• “Frequency Spot(Hz)
”
:計算雜訊的頻率點,預設頻率點是 1KHz。報告給出該
頻率點的功率譜密度。
• “From(Hz)
”
,
“To(Hz)
”
:頻率積分的範圍。
• “weighting”
:
是否需要對某些頻率的積分施予權重。
◆ “flat”
:
在整個頻帶內均勻積分。
◆ “from weight file”
:
依據權重文件中的定義對頻帶內的雜訊積分。
• “Filter”
:
使用者可以選擇性的給出部分器件的雜訊報告。在列表中給出了可供選
擇的器件。
• “include All Types”
:
自動選擇列表中的所有。
• “include None”
:
將列表中所有項目都刪除。
• “include instances”
:
列出包括在雜訊報告中的器件。
◆ “Select”
:
選擇器件
◆ “Clear”
:
刪除器件
• “exclude instances”
:
列出不包括在雜訊報告中的器件。
• “Truncate & Sort”
:
• “truncate”
:
根據每個器件的雜訊大小,限制在雜訊報告中列出的器件個數。
◆ “none”
:
所有器件都將列出。
◆ “by number”
:
根據器件貢獻雜訊的大小排名,限制列出的器件個數。
◆ “by relative threshold”
:
將貢獻雜訊超過總雜訊規定百分比的器件列出。
◆ “by absolute threshold”
:
將貢獻雜訊超過某個絕對數值的器件列出。
• “Sort by”
:
設置根據貢獻雜訊的大小或是器件名稱的字母順序等報告顯示的
順序。
分析結果輸出如圖 7.4 所示。
圖 7.4 雜訊分析輸出文本結果
也可以在“Results-Direct Plot-Main Form”中查看模擬結果,如圖 7.5 所示。我們可以在
“Function”中選擇“Output Noise”或者“Input Noise”來查看輸出雜訊和輸入參考雜訊,如圖
7.6 所示。
79
圖 7.5 雜訊譜圖輸出
圖 7.6 雜訊譜圖
7.3 週期性的雜訊分析及參數設置
週期性的雜訊分析主要使用“Pnoise analysis”
,
即
“
Periodic Noise Analysis”
。
“
Pnoise analysis”
和傳統的雜訊分析類似,只是它還包含了頻率的變換效應。所以,用它來類比例如混頻器、開關電
容濾波器以及其他一些週期性的電路的雜訊行為很有用。它特別在類比自激電路,例如振盪器的相位
雜訊時很有用。
在進行“Pnoise analysis”模擬之前,必須先做“PSS analysis”的模擬。“PSS analysis”是在
一個指定的基波頻率下計算電路的週期性穩態響應,而且模擬時間與電路的時間常數無關。
“
PSS
analysis”決定了電路的週期性工作點,而這恰恰給“PAC”
,
“
PSP”
,
“
PXF”和“Pnoise”這些
80
模擬提供了起點。“PSS analysis”在自激電路和非自激電路中都可以工作。
然後,“Pnoise analysis”以在之前做的“PSS analysis”中的找到的工作點進行線性化,而正
是由於被線性化後的電路的週期性隨時間變化才產生了頻率的變換。此外,電路中各種元件由於工
作點週期性隨時間變化而產生的雜訊也被包含在內。
這樣,在電路輸出端的時間平均雜訊就以頻譜的形式計算和表現,同時,在指定電路的輸出時
可以是一對接點或者一個探測點。下面以一個振盪器的雜訊分析為例說明“PSS analysis”和“
Pnoise analysis”的具體使用。
打開“PSS analysis”視窗,可以看到如圖 7.7 所示的視窗。
81
圖 7.7 “PSS Analysis”設定
• 在“Fundamental Tones”欄中設置“Beat Frequency”或者“Beat Period”,兩者互為倒
數關係,這個“Beat Frequency”應該設為接近振盪電路的振盪頻率。
• 在“Output harmonics”中有四個選項“Number of harmonics”
,
“
Select from range”
,
“
Array
of coefficients”,和“Array of indices”。選擇“Number of harmonics”,然後在旁邊的欄
中輸入一個合適的數字。
• 在“Accuracy Defaults”中選擇“moderate”
。
• 選擇“Oscillator”,表示我們模擬的是一個震盪器電路。在“Oscillator node”中點擊
“Select”,在電路原理圖中選擇震盪電路的輸出埠。“Reference node”可以不選擇,表
示默認的“gnd”端。
這樣,“PSS analysis”的設置就完成了。下面對“Pnoise analysis”進行設置,如圖 7.8 和
圖 7.9 所示。
• 在“Sweep type”中選擇“Relative”,然後再右邊的“Relative Harmonic”中填入合適的
數字,它表示相對於基波頻率的偏離範圍。
• 在“Frequency Sweep Range”中選擇“Start-Stop”,填入起始和終止的頻率。
• 在“Sweep Type”中選擇“Logarithmic”,在其右邊選擇“Points Per Decade”,填入合
適的數位。
• 在“Sidebands”中選擇“Maximum sideband”,填入合適的數位,它的預設數位為 7。
• 在“Output”中選擇“voltage”,在右邊的“Positive Output Node”選項中點擊“Select”
,
在
電
路
原
理
圖
中
選
擇
震
盪
電
路
的
輸
出
端
。
“
Negative Output Node”選項可以不選擇,表示默認的
“gnd“端。
• 在“Input Source”中選擇“none”
。
這樣,
“
Pnoise analysis”的設置就完成了。在完成了對“PSS analysis”
和
“
Pnoise analysis”
的設置之後,就可以進行電路的模擬了。如果要查看模擬的結果,可以用“Results7Direct
Plot7Main Form”進行查看。
在“Analysis”中選擇“pss”,在“Function”中選擇“Harmonic Frequency”,就可以得
到圖 7.10 所示的震盪器的基波頻率和高次諧波頻率。
如果在如圖 7.11 所示的“Analysis”中選擇“pnoise”
,
在
“
Function”中選擇“Phase Noise”
,
點
擊
“
P
l
o
t
”,就可以得到震盪器的相位雜訊曲線,如圖 7.12。
82
圖 7.8 “Pnoise analysis”設置[1]
圖 7.9 “Pnoise analysis”設置[2]
圖 7.10 基波頻率與高次諧波頻率
83
圖 7.11 雜訊譜圖的設定
圖 7.12 雜訊譜圖
7.4 諧波失真的模擬設置
我們還可以用“PSS analysis”來模擬電路的“Harmonic Distortion”,即諧波失真。這時,
“
PSS
analysis”的設置區別於震盪電路的設置,因為這時電路是有輸入信號的。我們以圖 7.13 中的全
差分運算放大器為例說明如何來模擬諧波失真。
84
圖 7.13 用於諧波失真模擬的全差分電路
因為在電路中加入了交流的信號,所以在打開“PSS analysis”的時候如圖 7.14,在“Fundamental
Tones”中已經出現了我們設置的交流信號,然後我們可以選定“Auto Calculate”來設定“Beat
Frequency”
。
圖 7.14 諧波失真模擬的設定
然後,如圖 7.15,在“Output harmonics”中選擇“Number of harmonics”來設定高次諧波的
數量,然後在“Accuracy Defaults”中選擇“moderate”。而這時,“Oscillator”這一項就不需要
選擇了,因為我們不是模擬震盪電路。最後,確定即可。
85
圖 7.15 高次諧波的數量設定
運行模擬之後,同樣用“Results”7“Direct Plot”7“Main Form”來進行模擬結果的查看。如
圖 7.16,在快顯視窗的“Function”選項中選擇“Voltage”,也可以根據自己需要選擇不同的功能
。然後在“Select”選項中,分別有“Net”
、
“
Differential Nets”和“”三個選擇項,因為我們模
擬的是全差分運算放大器,所以選擇“Differential Nets”
。
圖 7.16 模擬結果的輸出設定[1]
然後,如圖 7.17 在“Sweep”項中選擇“Spectrum”
,
“
Signal Level”選擇“peak”
,
“
Modifier”
選擇“dB20”,設定完成之後,就可以在電路原理圖上選擇輸出端來得到諧波失真的結果。波形如
圖 7.18 所示。
86
圖 7.17 模擬結果的輸出設定[2]
圖 7.18 諧波失真
全差分運算放大器可以抑制電路的偶次諧波,但是當輸入信號頻率比較高時,抑制能力會減
弱。圖 7.19 給出了輸入信號頻率從 1M710M715M 後,諧波失真的模擬結果。
圖 7.19 輸入信號頻率的變化與諧波失真的關係
87
第 8 章 波形計算器(Waveform Calculator)的使用
8.1 “Waveform Calculator”簡介
“Waveform Calculator”是一個科學計算器,有代數和逆波蘭(RPN,Reverse Polish Notation)
兩種工作模式。通過 Calculator 可以實現以下功能:
[1.] 可以在“Calculator”中創建、列印和顯示包含模擬輸出資料的運算式;
[2.] 在緩存中輸入包含節點電壓、埠電流、直流工作點、模型參數、雜訊參數、設計變數、數
學公式以及演算法控制變數的運算式。
[3.] 把緩存中的內容保存的記憶體中,並可以把記憶體中保存的內容重新讀入到緩存中;
[4.] 把記憶體中的內容保存到檔中,並可以把檔中保存的內容重新讀入到記憶體中。
下文所介紹的內容,是基於熟悉代數或逆波蘭科學計算器語法規則。如果不知道如何在這兩
種計算器中輸入運算式,請參考科學計算器的使用手冊。
“Calculator”中的所有函數都有對應得SKILL 命令,具體內容可以參考“OCEAN Reference”
。
8.1.1 “Calculator”介面介紹
圖 8.1 說明了“Calculator”介面中各個區域和按鍵的功能。
圖 8.1 “Calculator”介面及功能
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso
virtuoso

More Related Content

What's hot

M-TECH 4th SEM PRESENTATION
M-TECH 4th SEM PRESENTATIONM-TECH 4th SEM PRESENTATION
M-TECH 4th SEM PRESENTATIONSubhajit Shaw
 
射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬
射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬
射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬Simen Li
 
Ch8 lecture slides Chenming Hu Device for IC
Ch8 lecture slides Chenming Hu Device for ICCh8 lecture slides Chenming Hu Device for IC
Ch8 lecture slides Chenming Hu Device for ICChenming Hu
 
半導體第六章
半導體第六章半導體第六章
半導體第六章5045033
 
Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計
Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計
Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計Simen Li
 
Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬
Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬
Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬Simen Li
 
PWM Buck Converter using Average Model
PWM Buck Converter using Average ModelPWM Buck Converter using Average Model
PWM Buck Converter using Average ModelTsuyoshi Horigome
 
Basic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSIBasic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSISurya Raj
 
Digital VLSI Design : Combinational Circuit
Digital VLSI Design : Combinational CircuitDigital VLSI Design : Combinational Circuit
Digital VLSI Design : Combinational CircuitUsha Mehta
 
1092 SIMPLIS教學_20210218.pdf
1092 SIMPLIS教學_20210218.pdf1092 SIMPLIS教學_20210218.pdf
1092 SIMPLIS教學_20210218.pdfssuser1be9ce
 
111-1 SIMPLIS教學_20220630.pdf
111-1 SIMPLIS教學_20220630.pdf111-1 SIMPLIS教學_20220630.pdf
111-1 SIMPLIS教學_20220630.pdfssuser1be9ce
 
Components transistors
Components   transistorsComponents   transistors
Components transistorssld1950
 
Regions of operation of bjt and mosfet
Regions of operation of bjt and mosfetRegions of operation of bjt and mosfet
Regions of operation of bjt and mosfetMahoneyKadir
 
RF Circuit Design - [Ch4-2] LNA, PA, and Broadband Amplifier
RF Circuit Design - [Ch4-2] LNA, PA, and Broadband AmplifierRF Circuit Design - [Ch4-2] LNA, PA, and Broadband Amplifier
RF Circuit Design - [Ch4-2] LNA, PA, and Broadband AmplifierSimen Li
 

What's hot (20)

M-TECH 4th SEM PRESENTATION
M-TECH 4th SEM PRESENTATIONM-TECH 4th SEM PRESENTATION
M-TECH 4th SEM PRESENTATION
 
射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬
射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬
射頻電子實驗手冊 [實驗1 ~ 5] ADS入門, 傳輸線模擬, 直流模擬, 暫態模擬, 交流模擬
 
Ch8 lecture slides Chenming Hu Device for IC
Ch8 lecture slides Chenming Hu Device for ICCh8 lecture slides Chenming Hu Device for IC
Ch8 lecture slides Chenming Hu Device for IC
 
半導體第六章
半導體第六章半導體第六章
半導體第六章
 
Unit VI CPLD-FPGA Architecture
Unit VI CPLD-FPGA ArchitectureUnit VI CPLD-FPGA Architecture
Unit VI CPLD-FPGA Architecture
 
Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計
Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計
Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計
 
Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬
Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬
Agilent ADS 模擬手冊 [實習3] 壓控振盪器模擬
 
PWM Buck Converter using Average Model
PWM Buck Converter using Average ModelPWM Buck Converter using Average Model
PWM Buck Converter using Average Model
 
3. Synthesis.pptx
3. Synthesis.pptx3. Synthesis.pptx
3. Synthesis.pptx
 
Basic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSIBasic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSI
 
MOSFET....complete PPT
MOSFET....complete PPTMOSFET....complete PPT
MOSFET....complete PPT
 
Digital VLSI Design : Combinational Circuit
Digital VLSI Design : Combinational CircuitDigital VLSI Design : Combinational Circuit
Digital VLSI Design : Combinational Circuit
 
Pass transistor logic
Pass transistor logicPass transistor logic
Pass transistor logic
 
1092 SIMPLIS教學_20210218.pdf
1092 SIMPLIS教學_20210218.pdf1092 SIMPLIS教學_20210218.pdf
1092 SIMPLIS教學_20210218.pdf
 
111-1 SIMPLIS教學_20220630.pdf
111-1 SIMPLIS教學_20220630.pdf111-1 SIMPLIS教學_20220630.pdf
111-1 SIMPLIS教學_20220630.pdf
 
Components transistors
Components   transistorsComponents   transistors
Components transistors
 
電路學Chapter5
電路學Chapter5電路學Chapter5
電路學Chapter5
 
Fpga
FpgaFpga
Fpga
 
Regions of operation of bjt and mosfet
Regions of operation of bjt and mosfetRegions of operation of bjt and mosfet
Regions of operation of bjt and mosfet
 
RF Circuit Design - [Ch4-2] LNA, PA, and Broadband Amplifier
RF Circuit Design - [Ch4-2] LNA, PA, and Broadband AmplifierRF Circuit Design - [Ch4-2] LNA, PA, and Broadband Amplifier
RF Circuit Design - [Ch4-2] LNA, PA, and Broadband Amplifier
 

Similar to virtuoso

Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天
Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天
Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天Gelis Wu
 
Uc gui中文手册
Uc gui中文手册Uc gui中文手册
Uc gui中文手册호연 최
 
Workflow engine
Workflow engineWorkflow engine
Workflow enginePokai Hsu
 
01.web sphere培训 j2ee服务器简介
01.web sphere培训 j2ee服务器简介01.web sphere培训 j2ee服务器简介
01.web sphere培训 j2ee服务器简介littlecong
 
CodeIgniter 2.0.X
CodeIgniter 2.0.XCodeIgniter 2.0.X
CodeIgniter 2.0.XBo-Yi Wu
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練32015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3Duran Hsieh
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationnetdbncku
 
twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸twMVC
 
rebar erlang 2
rebar erlang 2rebar erlang 2
rebar erlang 2致远 郑
 
使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式Will Huang
 
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)twMVC
 
ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4
ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4
ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4twMVC
 
ASP.NET Core 2.1設計新思維與新發展
ASP.NET  Core 2.1設計新思維與新發展ASP.NET  Core 2.1設計新思維與新發展
ASP.NET Core 2.1設計新思維與新發展江華 奚
 

Similar to virtuoso (20)

Cadence
CadenceCadence
Cadence
 
Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天
Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天
Visual studio 2012 與 asp.net 4.5 (新功能與開發介紹) 第一天
 
Uc gui中文手册
Uc gui中文手册Uc gui中文手册
Uc gui中文手册
 
Workflow engine
Workflow engineWorkflow engine
Workflow engine
 
01.web sphere培训 j2ee服务器简介
01.web sphere培训 j2ee服务器简介01.web sphere培训 j2ee服务器简介
01.web sphere培训 j2ee服务器简介
 
CodeIgniter 2.0.X
CodeIgniter 2.0.XCodeIgniter 2.0.X
CodeIgniter 2.0.X
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練32015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練3
 
六合彩
六合彩六合彩
六合彩
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸twMVC#01 | ASP.NET MVC 的第一次親密接觸
twMVC#01 | ASP.NET MVC 的第一次親密接觸
 
Android工作坊
Android工作坊Android工作坊
Android工作坊
 
rebar erlang 2
rebar erlang 2rebar erlang 2
rebar erlang 2
 
使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式
 
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
 
ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4
ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4
ASP.NET MVC 4 新功能介紹(快速上手) -twMVC#4
 
ASP.NET Core 2.1設計新思維與新發展
ASP.NET  Core 2.1設計新思維與新發展ASP.NET  Core 2.1設計新思維與新發展
ASP.NET Core 2.1設計新思維與新發展
 

More from ssuserb4d806

Analog_chap_02.ppt
Analog_chap_02.pptAnalog_chap_02.ppt
Analog_chap_02.pptssuserb4d806
 
Analog_chap_01.ppt
Analog_chap_01.pptAnalog_chap_01.ppt
Analog_chap_01.pptssuserb4d806
 
1-Introduction and Crystal Structure of Solids-已解鎖.pdf
1-Introduction and Crystal Structure of Solids-已解鎖.pdf1-Introduction and Crystal Structure of Solids-已解鎖.pdf
1-Introduction and Crystal Structure of Solids-已解鎖.pdfssuserb4d806
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptxssuserb4d806
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptxssuserb4d806
 
Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...
Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...
Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...ssuserb4d806
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptxssuserb4d806
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptxssuserb4d806
 
RFIC_LNA_Simulation.ppt
RFIC_LNA_Simulation.pptRFIC_LNA_Simulation.ppt
RFIC_LNA_Simulation.pptssuserb4d806
 
AIML4 CNN lab256 1hr (111-1).pdf
AIML4 CNN lab256 1hr (111-1).pdfAIML4 CNN lab256 1hr (111-1).pdf
AIML4 CNN lab256 1hr (111-1).pdfssuserb4d806
 
AIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdf
AIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdfAIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdf
AIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdfssuserb4d806
 
Lecture 1 System View.pptx - 已修復.pdf
Lecture 1 System View.pptx  -  已修復.pdfLecture 1 System View.pptx  -  已修復.pdf
Lecture 1 System View.pptx - 已修復.pdfssuserb4d806
 
Training L1 Thinking 2022702.pptx.pptx
Training L1 Thinking 2022702.pptx.pptxTraining L1 Thinking 2022702.pptx.pptx
Training L1 Thinking 2022702.pptx.pptxssuserb4d806
 
Lecture08-Arithmetic Code-4-Int Imp-P2.pdf
Lecture08-Arithmetic Code-4-Int Imp-P2.pdfLecture08-Arithmetic Code-4-Int Imp-P2.pdf
Lecture08-Arithmetic Code-4-Int Imp-P2.pdfssuserb4d806
 
Lecture09-SQ-P2.pdf
Lecture09-SQ-P2.pdfLecture09-SQ-P2.pdf
Lecture09-SQ-P2.pdfssuserb4d806
 
Lecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdf
Lecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdfLecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdf
Lecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdfssuserb4d806
 
Lecture01-Modeling and Coding-P2.pdf
Lecture01-Modeling and Coding-P2.pdfLecture01-Modeling and Coding-P2.pdf
Lecture01-Modeling and Coding-P2.pdfssuserb4d806
 

More from ssuserb4d806 (20)

5.pdf
5.pdf5.pdf
5.pdf
 
4.pdf
4.pdf4.pdf
4.pdf
 
Analog_chap_02.ppt
Analog_chap_02.pptAnalog_chap_02.ppt
Analog_chap_02.ppt
 
Analog_chap_01.ppt
Analog_chap_01.pptAnalog_chap_01.ppt
Analog_chap_01.ppt
 
1-Introduction and Crystal Structure of Solids-已解鎖.pdf
1-Introduction and Crystal Structure of Solids-已解鎖.pdf1-Introduction and Crystal Structure of Solids-已解鎖.pdf
1-Introduction and Crystal Structure of Solids-已解鎖.pdf
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
 
Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...
Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...
Assessment_of_Fetal_and_Maternal_Well-Being_During_Pregnancy_Using_Passive_We...
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_2.pptx
 
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
台北科技大學電子所_可穿戴式系統設計_期末報告 1_賴紀廷_109368501_20230106_1.pptx
 
RFIC_LNA_Simulation.ppt
RFIC_LNA_Simulation.pptRFIC_LNA_Simulation.ppt
RFIC_LNA_Simulation.ppt
 
AIML4 CNN lab256 1hr (111-1).pdf
AIML4 CNN lab256 1hr (111-1).pdfAIML4 CNN lab256 1hr (111-1).pdf
AIML4 CNN lab256 1hr (111-1).pdf
 
AIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdf
AIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdfAIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdf
AIML4 CNN lab 5-1 BreastCancer ML course student report 2022 spring (111-1).pdf
 
Lecture 1 System View.pptx - 已修復.pdf
Lecture 1 System View.pptx  -  已修復.pdfLecture 1 System View.pptx  -  已修復.pdf
Lecture 1 System View.pptx - 已修復.pdf
 
Labs_20210809.pdf
Labs_20210809.pdfLabs_20210809.pdf
Labs_20210809.pdf
 
Training L1 Thinking 2022702.pptx.pptx
Training L1 Thinking 2022702.pptx.pptxTraining L1 Thinking 2022702.pptx.pptx
Training L1 Thinking 2022702.pptx.pptx
 
Lecture08-Arithmetic Code-4-Int Imp-P2.pdf
Lecture08-Arithmetic Code-4-Int Imp-P2.pdfLecture08-Arithmetic Code-4-Int Imp-P2.pdf
Lecture08-Arithmetic Code-4-Int Imp-P2.pdf
 
Lecture09-SQ-P2.pdf
Lecture09-SQ-P2.pdfLecture09-SQ-P2.pdf
Lecture09-SQ-P2.pdf
 
Lecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdf
Lecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdfLecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdf
Lecture06-Arithmetic Code-2-Algorithm Implementation-P2.pdf
 
Lecture01-Modeling and Coding-P2.pdf
Lecture01-Modeling and Coding-P2.pdfLecture01-Modeling and Coding-P2.pdf
Lecture01-Modeling and Coding-P2.pdf
 

virtuoso

  • 1. 第1章 Cadence IC 5.1.41 的基本設置 本章是 Cadence IC 5.1.41 是設計 的簡明入門教程,目的是讓讀者在剛接觸該軟體的時候對 它的基本功能有一個總體的瞭解。本章主要內容如下:[1] 啟動 Cadence IC 前的準備;[2] Command Interpreter Window (CIW, 命令列窗口);[3] Library Manager 設計庫管理器;[4] Virtuoso® Schematic Editor 電路圖編輯器簡介;[5]Virtuoso® Analog Design Environment (ADE) 簡 介。 1.1 啟動前的準備 要在 Unix/Linux 使用 Cadence IC 5.1.41 工具應當保證以下的條件: [1] 保證 Cadence IC 5.1.41 已經由管理員正確地安裝在電腦上;並且軟體授權金鑰已經設置完 成。 [2] 在 Shell 中設置了正確的環境變數。 必須將Cadence IC 的安裝路徑加入Shell 環境變數,Cadence IC 5.1.41 才能正常運行。以 Cshell 為例,Cadence IC 被安裝在了/tools/cadence/ic5141,則需要在~/.cshrc 檔中加入這樣的路徑配 置語句: setenv ic50 /tools/cadence/ic5141 set LD_LIBRARY_PATH=($ic50/tools/lib $ic50/tools/dfII/lib $ic50/tools/tcltk/ tcl8.0/lib $LD_LIBRARY_PATH) set path = ($ic50/tools/bin $ic50/tools/dfII/bin $ic50/tools/dracula/bin $path) 也可以把路徑的設置寫在一個單獨的設定檔中。例如, 將上面的配置寫在設定檔 /env/cadence_5141 中,則可以在~/.cshrc 中加入一行 source /env/cadence_5141 1.1.1 啟動設定檔:.cdsinit .cdsinit 檔是在Cadence IC 中啟動時運行的SKILL 指令檔。該檔配置了很多Cadence IC 5.1.41 的環境配置,包括使用的文字編輯器、熱鍵設置、模擬器的預設配置等。如果 Cadence IC 沒有找到.cdsinit 檔,軟體中的快速鍵等功能都不能適用。 Cadence IC 搜索.cdsinit 檔時,首先會搜索程式的啟動路徑,然後搜索的是使用者的主目錄。 例如:在~/project 目錄下運行 icfb&,則首先 Cadence IC 會嘗試載入~/project/.cdsinit。如果這個 檔不存在則會嘗試載入~/.cdsinit。 預設設定檔路徑: <Cadence 工具目錄>/tools/dfII/samples/local/cdsinit 1.1.2 其他設定檔 如果需要,在程式的運行目錄建立其他的啟動設定檔,如.cdsenv、.cdsplotinit、display.drf 等。這 些設定檔分別有自己的用途: .cdsenv: 用於設置啟動時的環境變數; .cdsplotinit: Cadence IC 列印和輸出圖型的設置;
  • 2. 2 display.drf: 版圖編輯器中顯示顏色等的配置; 這些設定檔的搜索路徑首先是程式啟動目錄。其次是使用者的主目錄。這些設定檔的樣本位置如 下: .cdsenv: <Cadence 安裝目錄>/tools/dfII/samples/.cdsenv .cdsplotint: <Cadence 安裝目錄>/tools/plot/samples/cdsplotinit.sample display.drf : <Cadence 安裝目錄>/share/cdssetup/dfII/default.drf 1.1.3 設置設計庫設定檔:cds.lib 設計庫(library)設定檔放置在 Cadence IC 程式的運行路徑下,比如要在~/project 目錄下運行 Cadence IC,則需要在該目錄下建立 cds.lib 文件。這個檔設置的是 Cadence IC 中的設計庫的路徑 。 常用命令格式: • DEFINE 格式:DEFINE <庫名> <庫路徑> • INCLUDE 格式:INCLUDE <另外一個 cds.lib 的全路徑> • # 行注釋符,在行首加入則該行無效。 如果 cds.lib 檔是空檔,則 Cadence IC 的設計庫中就會是空的。為了添加基本元件庫 ,需要一些基本元件。可以在 cds.lib 文件中加入一行: I NCLUDE <Ca d e n ce 安裝目錄> / s h a r e / c d ss e t up / c d s . li b 1.2 命令列窗口(Command Interpreter Window,CIW) 完成上述設置之後,就可以在命令列下運行 Cadence IC5.1.41 軟體: i c f b & Cadence IC 的命令列視窗(又稱為命令直譯器,Command Interpreter Window, CIW)就會出現: 圖 1.1 命令列窗口(CIW) 該視窗包括幾個部分:功能表列、輸出視窗、命令列、滑鼠命令、提示 1.2.1 命令列視窗(CIW)功能表 CIW 功能表展開包含以下選項,下面將介紹其中比較重要的一些選項:
  • 3. 3 • File7New 圖 1.2 CIW 功能表展開內容 建立新的設計庫(Design Library)或者設計的 CellView; • File7import 導入,可以導入的資訊包括 gds 版圖、電路圖、cdl 網表、模型庫甚至 verilog 代碼等。 • File7Open 打開“Cell”的“View” ,根據不同的“View”的類型,Cadence 將選擇適當的編輯器:例如, 如果一個“View”是一個符號(symbol)則 Cadence 將選擇 Virtuoso Symbol Editor 打開; 如 果是一個電路圖(schematic)則 Cadence 會選擇 Virtuoso Schematic Editor 來打開;如果是一 個版圖(layout)則會用 Virtuoso Layout Editor 打開;如果是 Verilog 或 Verilog A 代碼則會用文 字編輯器打開。 • File7Export 匯出文件。同樣,可以將 Cadence 設計庫匯出成各種檔案類型。 • File7Exit 退出 icfb 工作環境。
  • 4. 4 • Tools7Library Manager 很實用的圖形化設計庫流覽器,介面如圖 1.3 所示。後面將詳細介紹其中的內容。 • Tools7Library PathEditor 圖 1.3 “Library Manager”介面 圖 1.4“Library Path Editor”介面 這是一個用來修改設計庫設定檔(cds.lib)的圖形化介面,如圖 1.4 所示。在這個介面中可以直觀地 對 cds.lib 檔進行修改和添加。 • Tools7Verilog Integration 裡面有 2 個選項分別是 Verilog-XL 和 NC-Verilog,是兩種 Verilog 模擬環境,用於對混合信 號電路和數位電路的模擬。 • Tools7Analog Environment 該子功能表用於類比電路模擬,裡面的選項包括: Simulation: 打開 Virtuoso® Analog Design Environment (ADE)
  • 5. 5 圖 1.5 “Analog Environment”介面 Calculator:用於對模擬結果進行進一步計算的計算器工具 Result Browser: 模擬結果流覽器 Waveform: 模擬結果繪圖程式。這些工具的使用將在各個章節中介紹。 • Tools7Technology File Manager 用於管理設計庫和模型庫之間的對應關係設置。 • Options 圖 1.6“Technology File Manager”介面 該功能表內的選項主要用於配置 icfb 的環境並保存/載入需要的配置。該功能表中還提供了 用於管理產品秘鑰的工具。 1.2.2 CIW 中的其他部分 輸出窗口,如圖 1.7 所示。主要顯示一些操作的輸出資訊和提示,包括一些狀態資訊和警告資訊、錯 誤提示。這些提示有助於分析操作中的問題。 命令列:在這一欄中可以運行 SKILL 語言的命令,利用命令可以對介面上的任何專案進行控制, 從電路編輯到模擬過程,都可以用 SKILL 語言控制。 圖 1.7 CIW 中的輸出視窗與命令列CIW 中的輸出視窗和命令列和在一起實際上就是一個命令介面。命令語言是 SKILL 語言。圖形介面 只是在命令列基礎上的擴展。在圖形介面上的任何操作或者快速鍵都是通過命令列來最終實現的。 因而理論上用命令列可以完成一切操作,當然能實際應用中這樣做並不方便。 命令列的好處是可以採用語言控制複雜的操作,並且可以進行二次開發,將命令與介面整合起來。
  • 6. 6 這樣就提高了整個軟體的可擴展性和易用性,這也是 Cadence IC 這個軟體成功的重要原因。滑 鼠命令如圖 1.8 所示。這一欄顯示的是滑鼠按一下左、中、右鍵分別會執行的 SKILL 命令。 圖 1.8 滑鼠命令視窗 提示欄:這一欄以”>”起頭,如圖 1.9 所示,顯示的是當前正在 Cadence IC 程式的功能提示。 圖 1.9 提示欄窗口 以下根據一般設計過程中的使用順序,對一些常用工具進行詳細介紹。 1.3 Library Manager 設計庫管理器 首先介紹的是設計庫管理器(Library Manager)。圖 1.3 中的視窗是設計庫管理器的視窗,如果打 開平時隱藏的分類(Category)面板和檔(Files)面板則顯示介面如圖 1.10 所示。該介面分為如下 幾部分:功能表列、面板顯示選項欄、設計庫流覽面板和資訊,以下將一一介紹。 圖 1.1 設計庫管理器的分類(Category)面板和文件(Files)面板 1.3.1 設計庫流覽面板 設計庫流覽面板如圖 1.10 所示。面板處於設計庫流覽器的中部,從左到右共分有 4 欄,分 別為設計庫(Library) 、類別(Category) 、單元(Cell) 、顯示(View)欄。右面的 3 欄中每一欄 中顯示的都是該欄的左鄰欄中選定的專案的展開。例如:圖中的分類欄中顯示的就是設計庫 “analogLib”中的內容,而單元欄中顯示的就是分類“Parasitics”包含的內容,同樣“View”欄 中列出的就是單元“pcapacitor”所包含的內容。 另外,還可以打開“Show Files”選項,顯示各個單元和“View”所對應的檔。也就是圖中 面板管理器右下角的兩欄,標題是“Files in Library”和“Files in Cell”。這裡解釋一下各個層次 的含義,以便理解這些欄的用途。 • 設計庫是在 cds.lib 檔中定義的。一個設計庫中可以含有多個單元。合理的設置設計庫可以提 高檔案系統中的設計的可管理性。例如可以將每個專案中的電路放到各自的設計庫中。這
  • 7. 7 樣在今後的資料備份、導入匯出中都回節省很大精力。 • 單元則是一個電路的基礎單位,一個單元就相當於電路的一個模組,這個模組即可以是低層 模組,表示部分電路;也可以是頂層模組,表示整個電路。 • 同一個單元在設計中需要不同的表示方法,例如一個類比電路模組,在設計內部結構的時候 可能需要將它表示為電路圖;而在引用該模組的時候則需要將其表示為一個器件符號;在繪 製版圖的時候可能需要將該模組表示為版圖的一個部分。所以一個單元就必須有多種表示方式 ,稱為“Views”。上面舉例的模組就可以有電路圖(schematic) 、器件符號(symbol) 、版圖 (layout)三個(View) 。在設計中應當保證同一個“Cell”的各個“View”是等效的。 • 分類是在設計庫和單元之間人為增加的一個虛擬層次,當一個設計庫的規模比較大的時候, 可以用分類的方式理清設計庫中單元的組織。在小規模的設計中分析往往不必要,這時可以 在面板顯示選項欄取消顯示分類(Show Category)選項,分類就會被跳過。 在該面板中,用滑鼠右鍵點擊設計庫、單元或者“View”都會有彈出功能表出現。其中包含了 很多常用命令,比如打開、刪除、移動、複製、屬性等。這些操作都有完整的圖形介面嚮導,這裡 就不再詳細介紹。 1.3.2 設計庫流覽器功能表 功能表中有很多命令和設計庫管理器面板的右鍵功能表中的命令是相同的,這裡主要介紹其 中只有功能表中才有的命令 • Files 菜單: • Files7New7Library/Cell View/Category: 新建設計庫/單元 View/分類 • Files7Save Defaults/Load Defaults: 將設計庫流覽器設置保存在.cdsenv 文件中 • Files7Open Shell Window: 打開 Shell 命令列視窗,在管理設計庫的時候經常要用 到一些檔操作,這時可以打開 Shell 視窗,在命令列中進行檔操作。 • Tools 菜單 • Tools7Copy Wizard: 高級的設計拷貝嚮導。這個嚮導支援多個模式,可以在介面 的第一行的核取方塊選擇。 簡單模式(Simple) ,如圖 1.11 所示。在這個模式上面的“Add To Category”欄可 以指定拷貝過去的單元或設計庫被自動加入某個分類。 “Destination Library”下拉式功能表指定了拷貝的目標設計庫。 圖中對話方塊中列出的是所有要拷貝的檔和單元的清單。在該列表中的每一行都可 以通過選擇最左面的綠色園點禁用該項的拷貝操作,再次點擊將重新啟用該檔的拷貝 操作。下面的三個按鈕用於快速選擇需要的設計單元。 設置完成後點擊 OK 進行拷貝操作。
  • 8. 8 圖 1.2 簡單模式拷貝 層次結構拷貝(Hierarchical)和精確組織結構拷貝(Exact Hierarchical)模式如圖 1.12 所 示。 圖 1.3 組織結構拷貝和精確組織結構拷貝 通過指定頂層單元,這個命令可以將一個一個單元連同其中直接或間接引用的所有單元一 起拷貝。不同的是,層次結構拷貝時將包括這些單元中的所有“View”;而精確組織結構 拷貝中只有指定的“View”會被拷貝。 “Add to Category” 和 “Destination Library”選項的作用和簡單拷貝中的作用相同。 根據“View”(By View)的拷貝,如圖 1.13 所示。這種模式下,將按照指定的過濾(Filter) 選項拷貝某些設計單元。
  • 9. 9 圖 1.13 根據“View”的拷貝 根據 configuration(By Configuration)的拷貝,如圖 1.14 所示。這個模式下,將根據 config view 中的配置來選擇需要拷貝的單元和 View。 圖 1. 4 根據“configuration”的拷貝 • Tools7Rename Reference Library 命令窗口如圖 1.15 所示。這個命令可以用於批量修改設計中的單元之間的引用, 例如圖中演示的就是將設計庫 SDIC_bandgap 中所有引用自 analogLib 中的單元改 為引用自設計庫 tsmc35mm。
  • 10. 10 圖 1.15 “Rename Reference Library”拷貝 圖 1. 5 “Delete by view”窗口 • Tools7Delete by view 命令窗口如圖 1.16 所示。這個功能表命令提供了一個篩檢程式用於刪除設計庫中 指定的“View” 。 • Tools7Access Permission 命令視窗如圖 1.17 所示,用來修改設計單元或者設計庫的所有權和許可權。 圖 1.17 “Access Permission”窗口 • Tools7Catagories… 一些用來建立、修改、刪除分類的命令 • Tools7Library Paths 調用圖 1.4 中的 Library Path Editor • View: • View7Filter:顯示視圖的過濾 • View7Refresh: 刷新顯示 1.4 Virtuoso® Schematic Editor 電路圖編輯器簡介 在電路設計的過程中,類比電路的設計主要是依靠電路圖編輯器(Schematic Editor)完成。電 路圖編輯器可以通過在CIW 或者設計庫管理器中新建或者打開單元的電路圖 (schematic“ ) View”
  • 11. 11 打開。其基本介面如圖 1.18。下面介紹電路圖編輯器的使用方法。 1.4.1 電路編輯器介面簡介 圖 1.18 電路編輯器 電路編輯器介面主要包括狀態列、功能表、工具列、工作區、滑鼠命令列、提示欄組成。 • 狀態列:如圖,介面標題之下的第一行是狀態列,內容包括正在運行的命令、選定的器件數、運行 狀態、模擬溫度和模擬器類型。 • 功能表列,工具列:分別位於狀態列下方和螢幕的左邊緣,裡面的選項是電路設計中的命令 。 • 工作區:就是圖中黑色的部分,是實際用來繪製電路圖的部分。 • 滑鼠命令:提示滑鼠的左中右鍵分別對應的命令。 • 提示:顯示的是當前命令的提示資訊。 1.4.2 常用命令 在一般電路設計中常用的命令一般有以下幾個: • 添加器件: • 調用方法: 快速鍵“i” ; 菜單 Add7Instance; 按鈕 • 介面: 圖 1.19 “Add Instance”窗口 在 Library 和 Cell 欄輸入需要引用的單元,也可以點擊 Browse 按鈕,打開一個設計 庫流覽器,從中選擇希望引用的器件或者單元,介面如圖 1.19 所示。 • 輸入器件類型之後,視窗中將會出現一些器件的初始參數設置。可以在其中直接輸 入需要的器件參數,其介面如圖 1.20 所示。
  • 12. 12 圖 1.20 輸入器件的參數設定 • 這時將指標指向電路編輯器的工作區將會有器件的符號跟隨指標移動。 • 點擊按鈕 Rotate、Sideways、Upside Down 則在工作區中顯示的器件符號會相應旋 轉/水準反轉/垂直反轉。 • 這時在工作區按一下,器件最終位置將被確定,符號成為一個器件的實例。 在工作區按一下之前,如果在“Array“欄的“Rows” 、 “ Columns”文字方塊中填 入大於 1 的數字則最後加入的將是一個指定器件的陣列。陣列中每個實例的參數都是對 話方塊中的指定值。注意:添加時只能添加器件的符號視圖(Symbol View) 。 • 添加連接線 • 調用方法: 快速鍵:w/W 分別是細線/粗線; 菜單:細線、粗線分別是 Add7Wire (Narrow) 和 Add7Wire (Wide); 按鈕:細線、粗線分別 和 • 調用命令後,在工作區按一下滑鼠左鍵確定連線的第一個端點,然後拖動滑鼠,將看 到連線的走線方式。此時點擊右鍵,可以在不同的走線方式之間切換;再次點擊滑鼠 左鍵,確定第二個端點,連接線被確定。 在確定第二個端點之前,如果按 F3 鍵會調出詳細設置如圖 1.21 所示的對話方塊。 其中可以設置走線方式、鎖定角度、線寬、顏色、線型這幾個選項。注意細線和粗線 的區別是細線的線寬為 0,而粗線為 0.0625。
  • 13. 13 • 添加埠 圖 1.21 連接線的設定 • 調用方法: 快速鍵:p 表示 pin; 菜單:Add7Pin; 按鈕: 調用該命令後,將顯示如圖 1.22 所示的對話方塊。根據對話方塊中的提示,可以 選擇埠的名稱、類型、是否匯流排、用途、放置方法。 • 添加標籤(Label) 圖 1.22 埠的設定 • 調用方法: 快速鍵:l;菜單:Add7Label;按鈕: • 調用命令之後,顯示如圖 1.23 所示的選項對話方塊。輸入標籤名字之後,如果將 滑鼠指向電路圖,則會出現隨滑鼠移動的標籤;滑鼠點擊後標籤位置被確定。如果 標籤被放置在連線上,則該連線會被用標籤的名字命名。 • 移動、拷貝器件 圖 1.23 標籤的設定 • 這裡有 3 種類似的命令: [1]拷貝(Copy),將選定部分複製;[2]拖動(Stretch),移動選定部分,該部分與電路 其他部分保持連接;[3]移動(Move),移動選定部分,該部分與其餘部分不保持連
  • 14. 14 接。 • 調用命令: 快速鍵:c/m/M 分別表示拷貝/拖動/移動 菜單:Edit7Copy / Stretch / Move 分別是拷貝/拖動/移動 按鈕:拷 ;拖動 • 操作三個命令基本相同: 首先選定需要操作的電路部分,包括器件、連線、標籤、埠等;然後調用命令; 這時點擊滑鼠左鍵確定基準點;這時移動滑鼠發現選定部分隨滑鼠指標移動,移動量 相當於基準點到現在指標所在點之間的距離;再次點擊滑鼠左鍵放下選定的電路或者按 ESC 鍵取消。 • 在確定基準點之後,拖動的過程中,可以點擊 F3 鍵選擇詳細屬性,其介面如圖 1.24 所示。 圖 1.24 拷貝、拖動、移動功能的屬性 在 3 個命令中都有旋轉、鏡像、鎖定移動方向的選項;另外,在拷貝的 Array 選項 中可以設定為將選定部分複製為陣列形式;而在拖動的選項中可以選擇選定部分與 其它部分的連接線的走線方式。 注意:可以用滑鼠在工作區框選電路的一部分;按住 Shift 鍵框選表示追加部分; 按住 Ctrl 鍵框選表示排除部分;可在同一個 icfb 中打開的不同電路圖之間使用拷 貝和移動命令;拖動命令只能在當前電路中進行。 • 刪除器件 • 調用方式:鍵盤:del 鍵;菜單:Edit7Delete • 選擇電路的一部分後調用刪除命令,選定部分將被刪除 • 修改器件屬性 • 調用方法: 鍵盤:q鍵; 菜單:Edit7Properties7Objects…;按鈕 • 選定電路的一部分,然後調用該命令,則會出現屬性對話方塊,如圖 1.25 所示。
  • 15. 15 圖 1. 6 修改器件屬性 • 在 Apply To(應用於)欄的第一個下拉式功能表中可以選擇設置應用範圍,是只修改 當前器件(only current)還是應用於所有選定器件(all selected);第二個下拉式功能表 可以選定需要修改的元素類型,是設置器件實例(instance)還是連接線(wire segment) • 下面根據元素的屬性有不同的選項。按需要進行修改即可。 • 放大、縮小、適合螢幕 鍵盤:[鍵、]鍵、f 鍵分別表示縮小、放大、適合螢幕 菜單:Window7Zoom7Zoom out by 2 / Zoom in by 2 縮小、放大 Window7Fit 適合螢幕 按鈕 分別是縮小、放大 • 下降層次和回退 可以通過這幾個命令在相互引用的母、子模組之間切換 • 這裡有 3 個命令 下降編輯,用編輯模式進入一個子模組(如果沒有足夠的許可權會自動改為唯 讀模式) ; 下降唯讀,用唯讀模式進入一個子模組; 回退,如果下降到了子模組中,可以用這個命令回到上一層。 • 調用: 鍵盤:E/e/Ctrl+E 分別是編輯、唯讀、回退 菜單:Design7hierachy7Descend Edit/DescendRead / Return 分別是編輯/唯 讀/回退 • 保存 • 有幾種保存的方式:保存(Save)、檢查完整性並保存(Check & Save)、另存(Save As) • 調用方法 鍵盤:S / X / Ctrl+s 鍵分別是保存、檢查並保存、另存 菜單:Design7Save/CheckandSave/SaveAs分別是保存、檢查保存、另存 按鈕 分別是保存、檢查並保存 注意:電路模擬中經常依靠電路圖編輯器的檢查功能查找一些明顯的錯誤,所以一般應 該使用檢查並保存選項,而不要強行保存。 • 撤銷和重做(只支持最近一次操作的撤銷和重做) 鍵盤:u / U 鍵分別是撤銷和重做
  • 16. 16 菜單:Edit7Undo/Redo分別是撤銷和重做 按鈕 分別是撤銷和重做命令 1.4.3 常用標準器件 在 Cadence IC 軟體中自帶有一些標準的器件。這些器件在電路設計中經常用到,這些器件 都存放在“analogLib“中。如果找不到這個“Libaray“,則應該按前面 1.1.5 節最後介紹的方法 加入這個庫。 • gnd 在電路中表示 0 電位,和它相連的線線名為 gnd,沒有設置參數。 • vdd 和它相連的線線名為 vdd。這個器件只用來標示等電位,而不是電源。 • vdc/idc 直流電壓/電流源,用於為電路提供直流電壓/電流。同時還可以提供交流電流,在 AC 分析中使用。 • vpulse 時變電流源,在 DC 分析中可以輸出固定的 DC 電壓,AC 分析中可以輸出固定的 AC 電壓,在瞬態分析中可以生成不同占空比的方波、三角波、梯形波、鋸齒波。 • nmos4 / pmos4 / pnp 通用 4 埠 NMOS 管 / PMOS 管 / PNP 三極管 注意,在模型名稱(Model Name)一欄需要根據不同的工藝庫(Model Library)中的定義來 指定。 比如:在某個模型中將 NMOS 模型定名為 nvn,PMOS 管模型定名為 nvp,PNP 三極管 則為 pnp5,則在 nmos4 器件實例的 Model Name 欄應當填上 nvn、pmos4 填 nvp、pnp 填 pnp5,否則電路將不能正確進行模擬。 • res / cap / ind 這三個器件分別是電阻、電容、電感。如果進行簡單模擬,這些器件參數設置中不需要指 定模型名稱,這是這些器件將表現為理想器件。如果需要根據工藝詳細模擬,則可以
  • 17. 17 在器件參數設置中,根據工藝模型庫中的電阻、電容、電感的模型定義這些器件。 1.5 Virtuoso® Analog Design Environment (ADE) 簡介 ADE 是 Cadence IC 的圖形化模擬環境。可以用如下方式打開: • 可以在 CIW 視窗中選擇功能表 Tools7Analog Environment7Simulation,這樣打開的 ADE 視窗中沒有指定進行模擬的電路。 • 或者在電路編輯器中選擇功能表 Tools7Analog Environment,這是打開的 ADE 視窗中 已經設置為模擬調用 ADE 的電路圖 在介紹模擬的過程之前,先介紹一下 ADE 的介面。 1.5.1 ADE 基本介面 圖 1.26 是 ADE 的基本介面。視窗中的主要部分已經在圖中標出。 圖 1.26 ADE 基本介面 1.5.2 使用 ADE 進行模擬的基本流程 1.選擇模擬的電路 如果是從 CIW 視窗中打開的模擬環境,則需要設置模擬的電路。這時可以: • 在功能表中選擇:Setup7Design • 或在圖形介面中點擊按鈕 選擇之後彈出如圖 1.26 所示視窗,在其中可以設置需要模擬的電路圖在設計庫中的路徑。
  • 18. 18 圖 1. 7 選擇需要模擬的電路 2. 設置工藝模型 各種工藝製造的繼承器件模型參數各有不同。為了使設計和工藝更加匹配,需要使用由代工 廠提供的模型庫。對預設使用的 spectre 模擬器來說,應當使用.scs 模型庫檔。為了配置模型 庫,可以在功能表中選擇 Setup7Model Librarie,然後有如圖 1.28 所示視窗出現。 圖 1. 8 工藝庫檔設置 在這個視窗中可以在“Model Library File“欄輸入需要使用的模型庫檔案名,在 Section 欄 輸入該模型檔中需要的段(Section)。 如果模型庫檔案名路徑比較長,可以點擊右下角的“Browse“按鈕。打開 Unix 檔流覽器查 找需要的模型檔。檔流覽器的使用方法就不再介紹了。 圖 1. 9 工藝庫檔的選擇 在檔流覽器中選定需要的檔之後點擊 ok 按鈕,檔的路徑就會自動填在 Model
  • 19. 19 Library File 欄,這時點擊 Add 按鈕,這個庫檔就被加入到中間的列表中。這時,既可以繼 續添加新的模型庫檔,也可以在模型庫檔清單中選擇一個或幾個對其做禁用、啟用、修改或 刪除操作。 3. 設置變數 由於電路中作任何改變之後都需要保存並檢查完整性,所以在對電路進行模擬時,經常在電 路中定義一些變數作為器件的參數。例如可以將一個 MOS 管的寬度定義為 w=W1,則 W1 就成為一個設計變數。這些設計變數在模擬中都需要賦值,否則模擬不能進行。 一般設置方法是:在功能表上選擇“Variables7Copy from Cell View“則電路圖中的設計變數 名都回被截取進 ADE 中,並在 ADE 視窗中的變數欄中列出。 這時點擊 Variables7Edit 或在 ADE 介面中按兩下任何一個變數或點擊按 ,圖 1.30 所示 的視窗就會出現。在該視窗中可以完成添加、修改、刪除、從設計中截取變數清單等工作。 圖 1. 10 模擬變數設置 4. 設置分析類型 根據不同的需要,可以對電路進行不同類型的分析。常用的有 DC 分析、AC 分析、瞬態 (Transient)分析、雜訊分析、零極點分析。其中又以前三種最為常用。 設置模擬的時候,可以點擊功能表 Analyze7Choose 或按 ,如 1.31 圖所示的模擬設置 選擇功能表就會打開。 圖 1. 11 模擬設置選擇視窗 選定需要的模擬類型後,該模擬的基本設置就會顯示在對話方塊中。如果需要修改詳細的選項 還可以點擊右下角的 Options 按鈕。另外,左下角的 Enable 選項控制一個模擬是否被啟用。
  • 20. 20 5. 設置輸出 輸出控制的是模擬結束後需要用圖線或者數值體現出來的結果。主要有 2 種方法進行設置: • 在功能表中選擇“Output7To be ploted7Select on the Schematic“,電路圖視窗就會出現 。在電路圖中選擇連線會在輸出中添加該線的電壓; 選擇一個器件的埠則會添加這個埠的電流作為輸出; 直接 選擇一個器件則會把該器件的所有埠電流都加入輸出 • 也可以手動添加輸出,在功能表中選擇 Output7Edit 或按 可以打開如下視窗。 圖 1. 12 輸出端的設置 在該視窗中可以添加需要的輸出的運算式。如果運算式比較複雜,還可以點擊 Calculator 欄的 open 按鈕,打開 Calculator(後面還會詳細介紹使用方法),在其中編輯好運算式後, 在上圖視窗中點擊 Calculator 欄的 Get Expression 按鈕,運算式就會被截取到 Expression 欄。 6. 模擬過程 所有設置都完成後,點擊功能表 Simulation7Netlist & Run 或者點擊按 ;如果電路 沒有修改,也可以直接選擇 Simulation7Run 或者按 。2 種方法都可以開始模擬。在 模擬過程中,如果需要可以點擊功能表 Simulation7Stop 中斷模擬。 如果沒有需要的輸出結果,可以在輸出視窗和 CIW 視窗中看輸出資訊,分析錯誤類型。 如果一切正常將有繪圖視窗彈出。如果希望重新出圖,可以點擊功能表“Result7Plot Outputs“或者按 ,將出現如圖 1.33 所示的介面。
  • 21. 21 圖 1. 13 模擬結果顯示介面 7. 其它設置 • 右下角有一個下拉式功能表可以改變出圖方式:是否覆蓋上次的圖像、是否使用新的字 視窗輸出、是否用新視窗輸出。 • 功能表的 Design7Temperature 可以用來設置模擬的環境溫度。 8. 保存和導入模擬狀態 • 點擊功能表 Session7Save State 可以保存當前的模擬配置。對話方塊如下,可以選擇具 體 需 要 保 存 的 資 訊 。 保 存 的 狀 態 被 存 放 在 ~/.artist_states/<library name>/<cell name>/spectre 目錄下。 圖 1. 14 模擬狀態的保存 • 點擊功能表 Session7Load State 可以導入以前保存的模擬配置。對話方塊如下,可以選 擇需要的狀態,進行導入。
  • 22. 22 圖 1. 15 導入以前的模擬狀態 • 點擊功能表Session7Save Script 可以將現在的模擬設置保存成OCEAN 腳本,利用該腳本 , 可以在命令列執行模擬任務。
  • 23. 23 第 2 章 瞬態分析(Transient Analysis) 2.1 功能基本介紹 瞬態模擬分析是在給定的輸入激勵下,在設定的時間範圍內計算電路的時域瞬態響應性能。 要驗證設計電路的穩定性,速度,精確度等問題必須經過各種情況下的瞬態分析才能做出正確的判 斷。在本章中介紹如何設定瞬態模擬以及瞬態分析。讀者在具體的電路設計中需要根據實際情況,合 理地設置激勵源和模擬參數才能真正評估電路性能。在瞬態模擬的參數設置過程中,主要是在模擬精 度和模擬速度之間做出合理的折衷。讀者可以按設計電路的要求定制模擬器計算時的容差、積分方式 、步進大小等控制精度。同時,還可以對電路初始狀態,輸出資料保存量等條件參數設置。 2.2 模擬參數設置 參照第 1 章 1.5 內容,打開“Analog Design Environment” 7 “Analyses”7“tran”,基本 參數設置介面如圖 2.1 所示。主要內容包括用於控制模擬時間的“Stop Time”和用於控制模擬速度 和精度的“Accuracy Defaults(errpreset) ”設定。 2.2.1 基本參數設置 圖 2.1 瞬態模擬的參數設定 • “Stop Time” :模擬終止時間的設定。 在默認設置中瞬態分析總是從 t = 0 時刻開始模擬。所以只需設置模擬終止時間。時間單位 是秒。所以,如果要表示毫秒數量級,在資料後面需要跟上毫秒的單位縮寫“m”。其他時 間數量級單位類似。 • “Accuracy Defaults” (errpreset) :模擬精確度和速度設定。 可選擇三種模擬精確度:寬鬆的(liberal) ,適中的(moderate) ,保守的(conservative) 。其 中 , “liberal”的模擬速度最快,但是精確度最低。這種精度的模擬適合於數位電路或者是變化 速度較低的類比電路; “ moderate”作為模擬器預設的設置,其精確度類似於用 SPICE2 計
  • 24. 24 算的模擬結果;“conservative”的具有最高的精確度但速度最慢,適合於敏感的類比電路模 擬。 如果讀者需要比預設“conservative”更高的精度,可以由讀者自己 “Option”選項中將容 差參數(reltol)設置為更小的數值。“Option”在稍後的章節中有介紹。上述三種系統預設 的精度設置實際上包含容差(reltol) ,相對參考(relref) ,積分方式(integration method) , 最大時間步長(maxstep) ,截斷誤差比(lteratio)等參數,具體設定如表 2.1 所示。在模擬 日誌檔中,都可以看到相應的參數設置情況。具體各個子參數的含義和設置也將在後續高級設 置章節中介紹。 表 2.1 三種模擬精度下的參數設置情況 2.2.2 高級參數設置 圖 2.2 暫態模擬參數設置介面 點擊圖 2.1 介面中的“options”,可模擬控制參數進行設置。 • “Options” : “Spectre”模擬軟體允許讀者能夠自定制模擬控制參數,包括時間步進,精確度,積分方式 等高級設置。圖 2.2 是參數設置視窗。模擬器的“Options”控制參數包括: “SIMULATION INTERVAL PARAMETERS” ◆ “start” : 模擬開始時刻。模擬器預設開始時刻為 0s。 ◆ “outputstart” : 輸出波形時刻。如果使用者模擬時間很長,而只需觀察部分時間段 內系統瞬態特性,可以通過該參數控制資料輸出。
  • 25. 25 “TIME STEP PARAMETERS” ◆ “step” :最小的時間步進。預設值為 0.001×(終止時刻-起始時刻) ◆ “maxstep” : 最大時間步進,根據“errpreset”中精度設定取得預設值。 “INITIAL CONDITION PARAMETERS” 使用者可以利用設置節點狀態的初始化語句(ic statement)或電容、電感等模型內的初始條 件參數 (ic parameters) 兩種方式為瞬態分析設置初始條件。如果沒有特殊設置,模擬器將 採用直流分析(DC analysis)的結果作為初始條件。 ◆ “ic” : 設定通過何種方式設置初始條件。 • ic=dc:忽略任何設置的初始條件,直接採用直流分析的結果。 • ic=node:忽略電容、電感等器件上設置的初始條件,而通過“ic statement”設置的初始條件將被採用。 • ic=dev:忽略由“ic statement”設置的初始條件,電容、電感上的初 始條件將被採用。 • ic=all:兩種初始條件都將被採用。當設置條件發生衝突時,“ ic parameter”比“ic statement”的優先順序更高。 一旦使用者指定了初始條件,“Spectre”模擬器將通過一次直流分析來計算電路的實際初始 狀態。在這個過程中,“Spectre”根據初始條件在相應的節點上施加一個電壓源和電阻串聯。當 讀者通過“ic statement”來描述電路初始狀態時,有可能存在不一致性問題。比如說在沒有電容 連接到地的節點上設置電壓或者是在沒有電感連接的支路上設置初始電流。如果設置時發生不一 致問題,那麼在計算時將發生電路狀態突變。也就是說,電路將從實際的初始條件突變到設置的條 件。所以,用讀者自訂初始條件時,應當避免上述情況,否則模擬器將會產生收斂性問題。 在上文的說明中,提到了初始化語句“ic statement”和初始化參數“ic parameter”的概念。 “ ic parameter”的設置很簡單,如果用戶打開一個電容的參數設置視窗可以看到“ Initial condition”。在其中填寫初始的電容電壓即可。注意,這裡只能填寫電壓值。而如果是電感的初始 條件,需要設置的是電流值。在表 2.2 中,給出了有關器件埠的指代符號。 圖 2.3 電容的參數設置 “ic statement”的格式是:ic signalName=value .舉例如下: ic Voff=0 X3.7=2.5 M1:int_d=3.5 L1:1=1u 上句表示的是:在節點 Voff 上的初始電壓是 0V;在子電路 X3 的第 7 號節點上電壓值為 2.5V;在 MOS 管 M1 的漏端電壓是 3.5V;在電感 L1 上流過的初始電流是 1μA。
  • 26. 26 表 2.2 器件的埠定義 由於篇幅有限,只能對初始條件設置做一些簡單的介紹。可以參考 cadence 文檔的“Spectre simulator user Guide 7 7. Control Statement”做進一步的瞭解。 ◆ “skipdc” : 選擇跳過直流分析。在沒有直流分析的情況下,電路的初始解將採用通 解,或是從由“readic”定義的文件中讀取初始條件。如果“readic”沒有定義,那 麼將從“ic statement”中獲取初始條件。不論是否跳過直流分析,器件上的初始條 件肯定都會被採用。如果一個節點沒有被賦予初始條件,將自動被模擬器設置為 0。 該參數同樣也會引起模擬器收斂性問題。推薦不使用該參數。具體選擇項可詳見“ Spectre Circuit Simulator Reference73. Analysis Statements” ◆ “readic” : 從文件中讀取初始條件。 “CONVERGENCE PARAMETERS” 當電路在模擬時存在無限快的回應速度(例如一個電路節點不存在任何電容) , “ Spectre”模 擬器可能會產生收斂性問題。為了避免這種問題,需要設置“cmin”參數給該節點設置一個合理 的對地電容值。 ◆ “readns” : 從檔中讀取電路瞬態模擬的初始估計解。 ◆ “cmin” : 設定每個節點對地的最小電容。 當對一個電路進行多次模擬時,建議使用“write”和“readns”參數。並且將兩者的檔案名 命名相同。這將使直流分析的收斂的速度加快。 “STATE FILE PARAMETERS” (從?介面) 狀 態 文 件 (State File) 主 要 有 兩 個 用 處 : A、 將保存下來的狀態檔用於後續的模擬分析中。比如在一次瞬態分析中,保存下終 止時刻的資訊,在下一次瞬態分析中,能夠以該時刻作為起始點繼續做後續時間端 的分析。 B、 使用者能夠利用狀態檔自動完成初始條件的更新。 讀者能夠利用模擬器將一次分析的初始時刻工作點或者是終止時刻工作點生成狀態檔。當然 ,使用者也能手動編寫一個狀態檔。在“Spectre”模擬器中,可以設置三個有關“State File” 的 參數,如圖 2.4 所示。
  • 27. 27 圖 2.4 “State File Parameter”的設定 ◆ “write” : 將瞬態分析的初始狀態解寫到指定的檔中去。 ◆ “writefinal” : 將瞬態分析的最終解寫到指定檔中去。 ◆ “ckptperiod” : 在指定的週期去作週期性的分析。 圖 2.5“Spectre.ic”文件例 圖 2.6 “Spectre.fc”文件例 在圖 2.5 和 2.6 中分別給出了“Spectre.ic”和“Spectre.fc”文件。這兩個檔的目錄是
  • 28. 28 ~/simulation/cell name/spectre/schematic/netlist。路徑中“cell name”是使用者模擬的電路單元名。 “Spectre.ic”中記錄的初始時刻狀態值。 “ V0:p” 和 “ V3:p”表示兩個電壓源的正端電壓值, “ VIN” , “VOUT” , “ vdd!”表示電路中各個節點電壓值。“Spectre.fc”記錄終止時刻值,檔中的字元和 數位的含義和“Spectre.ic”中相同。 下面的例子解釋了狀態檔的格式。注意:這裡的例子是以命令列形式給出的,使用者在使用 圖形介面是只需在相應的參數裡設置即可。 altTemp alter param=temp value=0 Drift dc param=temp start=0 stop=50.0 step=1 readns="ua741.dc0" write="ua741.dc0" XferVsTemp xf param=temp start=0 stop=50 step=1 probe=Rload freq=1kHz readns="ua741.dc0" 第一行命令表明首先做了一次在溫度 T=0 情況下的直流分析(DC Analysis) 。使用者需要把 該次分析的結果保存在狀態檔“ua741.dc0”中。 然後做溫度從 0 到 50 度的掃描。 第三次做傳輸函數分析(Transfer Function Analysis)時需要將溫度重新設置為 0。如果不使 用“State File”,那麼由於溫度發生了變化,將導致重新計算直流工作點。如果系統較大,模擬速 度受到很大限制。可是如果直接採用保存下來的“State File” , “ Spectre”可以直接利用裡面保存的 在溫度 T=0 狀態下的直流解來計算傳輸函數。即便是電路有一定程度上的改變,模擬速度也會 比從頭開始計算要快得多。 “INTEGRATION METHOD PARAMETERS” (從何介面?) 該參數用於設計人員根據模擬速度和模擬精確度選擇合適的積分方式。“Spectre”模擬器提 供 3 種不同的積分方式:“backward-Euler”,“Trapezoidal” , “ The second-order Gear”。根據這 3 種方式一共組合出 6 中模式,分別為“euler” , “ traponly” , “ trap” , “ gear2only” , “ gear2” , “ trapgear2” 。 表 2.2 表示了各種積分方式和模式之間的對應關係。 表 2.3 各種積分方式和模式之間的對應關係 如果使用者需要高精度模擬,可以選擇“trapezoidal”積分方式。但是,這種積分方式在容差 (error tolerances)很大的時候並不是一種很好的選擇。這是因為它對前一個時刻計算產生的誤 差非常敏感。如果在容差很大而且要求速度較快的情況下,最好還是選擇“Second-order Gear” 積分法。 “Second-order Gear”積分法比“backward-Euler”法更加精確。但兩種方法都會過高估計系
  • 29. 29 統的穩定性。“Second-order Gear”積分法的這種誤差效應要相對小一些。比如當使用者需要模 擬一個高 Q 值的諧振器例如振盪器或濾波器時,使用“Second-order Gear”的結果會表現出阻尼 振盪,而“backward-Euler”則表現出更強的衰減。所以,在這種情況下,應該採用“trapezoidal ” 積分法。 “ACCURACY PARAMETERS” ◆ “relref”:相對收斂標準的參考,而預設值是從“errpreset”得到。包括如下幾個選 項: • “relref = pointlocal”,即,relref=局部點:這個設定用來定量比較每個節點的值 相對於待分析節點上當前數值的相對誤差。 • “relref = alllocal”,即,relref=局部所有點:定量比較過去的所有時間點的值 相對於最大節點值的相對誤差。 • “relref = sigglobal”,即,relref=所有信號點:定量比較每個電路上信號值相對 於電路中所有信號中的最大值的相對誤差。 • “relref = allgolbal”:同上,另外對每個節點最大懸浮電流值設定比較方程,此時 不能滿足基爾霍夫電流方程。 ◆ “lteratio” : 比率係數,用於計算 Newton 容差中的 LTE 容差。 2.22.8 “ANNOTATION PARAMETERS” ◆ “states” : 統計學分析。在實際晶片生產過程中,工藝的變化會影響到產品的性能。 而統計學分析則説明設計師把握這種工藝和性能之間的關係。在設計時,如果採用 的器件模型帶有統計分析參數,既是說這些模型中帶有表徵工藝誤差的資料,就可 以進行統計學分析。這種分析的實質是對工藝參數設置不同的數值後多次模擬,就 可以找出設計對工藝的依賴程度。這種統計學分析也被稱作蒙特卡羅分析。 ◆ “annotate” : 注釋選項 2.22.9 “OUTPUT PARAMETERS” “Spectre”模擬器一般情況下會把所有模擬資料都保存下來。但有時候並不需要所有的資料量。 “Spectre”允許使用者選擇保存需要的資料。當然,如果需要得到更精確的結果,也可以增大資料 輸出量。可以如下幾種方式來控制資料保存量: ◆ “strobing” : 在保存點之間設置一個時間間隔。雖然模擬器計算過這些資料,但是 並沒有將其保存輸出。 ◆ “skip time point” : 使用者能夠選擇讓模擬器保存多少個點。 ◆ “compression” : 將恒定信號的重複記錄刪除。 ◆ “outputstart” : 設置模擬器從何時開始保存資料。 ◆ “Infotime” : 允許用戶保存某些自訂時刻的工作點數據。如果需要保存多個時刻的 工作點,填入時間向量之間是以空格隔開。如果使用者填入了某些非法資料, “Spectre”會在輸出窗口中報錯。如果模擬成功,點擊“Results Print”7“Transient Operating Point”功能表,然後在電路圖中選取一個器件,將會顯示在指定時間點時 刻的工作資料。由於“OUTPUT PARAMETERS”參數一般不經常使用,因此詳細 內容請參考“Spectre”的用戶手冊。
  • 30. 30 2.22.10 “NEWTON PARAMETERS” ◆ “maxiters”:在每個時間步最多進反覆運算多少次。 ◆ “restart”:如果有任何條件發生變化,是否從最開始重新計算直流解。如果不重新計 算,將直接採用上一次的初始猜測。 2.22.11 “CAPTAB PARAMETERS” ◆ “captab” : 電容清單參數,介面如圖 2.7 所示。在完成一次“Spectre”模擬後, 使用者能夠得到有關電路負載電容的資訊。在瞬態分析中,用戶能夠通過“infotimes ” 參數來指定在某些時刻點保存電路中的電容資訊。如果沒有特殊指定,模擬器將 預設保存終止時刻的電容列表。如果點擊該參數,會顯示對該參數的細節設置。 圖 2.7 電容列表參數 ◆ “timed” : 是否將使用“infotimes”參數來保存電容列表。 ◆ “threshold” : 需要保存的電容的最小值。電路中電容值小於該閾值的電容就不會出 現在輸出檔中。預設值為 0.0。 ◆ “detail” : 可以被設置為節點電容(node) ,節點對地電容(nodetoground) , nodetonode 三個選項。 ◆ “sort”:排序方式。 圖 2.8 給出了一個電容列表的例子。該清單中記錄的是模擬終止時刻的資訊。 圖 2.8 電容列表例 該電容清單所描述的電路如圖 2.9 所示:其中“net19”節點是指“M0” MOS 管的柵端。 “ Vdd! ” 表 示 的 節 點 電 容 是MOS 管“M1”的源端。“Vout”節點為圖中所示的輸出端。由於 MOS 管的各埠 寄生電容和該MOS 的工作狀態有埠電壓有關,所以,電容列表中包含了固定電容(fixed) 和可變電 容(variable)兩項。總電容(sum)為兩者的加和。
  • 31. 31 圖 2.9 電容列表(圖 2.8)所描述的電路 2.3 常用於瞬態模擬的激勵信號源及其參數設置 在本章的功能介紹部分曾經提到瞬態模擬時需要讀者自行設計多種電路工作環境,多種工作 狀態的驗證過程。這裡介紹幾種常用於瞬態模擬的激勵源。包括脈衝信號、分段信號、指數信號、正 弦信號等。這些激勵源都可以在“analogLib”中找到。這些信號源都是以電壓形式給出的,也可使 用電流形式的激勵源。 2.3.1 脈衝信號“vpulse” “vpulse”信號用於產生週期性方波。在類比電路設計中,可用于做為 MOS 管開關的控制信號, 也可用來表示電源上電或者電源跳變過程等。打開“vpulse”的參數列表如圖 2.10 所示。該參數 清單包括兩部分“Property”和“CDF Parameter”。其中“Property”部分在從“analogLib”中選 中信號源後由系統自動填寫。值得注意的時,在“View Name”一欄中應當採用“symbol”。圖 2.10 中“CDF Parameter”只截取了一部分有關瞬態模擬的參數設置。在表 2.4 中給出了主要參數 的名稱,含義,實例和單位等資訊。圖 2.11 中給出了根據實例設置的週期方波模擬曲線。
  • 32. 32 圖 2.10 脈衝信號“vpulse”的設定 表 2.4 “vpulse”的設定參數意義 參數 含義 實例 單位 Voltage 1 起始電壓 500m V Voltage 2 脈衝電壓 5 V Delay time 延遲時間 100μ s Rise time 上升時間 0 s Fall time 下降時間 0 s Pulse width 脈衝寬度 50μ s Period 週期時間 100μ s
  • 33. 33 圖 2.11 表 2.4 設定的脈衝信號“vpulse”波形 2.3.2 分段信號“vpwl” 當使用者需要自己定義線性分段波形是是可以利用“vpwl”信號源。它允許用戶能夠定義分段時 刻和該時刻的電壓值。該信號源的設置參數和“vpulse”信號基本相同。在表 2.5 中給出了主要參 數的名稱,含義,實例和單位。並且根據設計實例,在圖 2.12 中給出了該信號源的模擬曲線。 表 2.5 分段信號““vpwl”的參數設定 參數 含義 實例 單位 Number of pairs of points 轉捩點數目 4 Time 1 第 1 個轉捩點時間 0 s Voltage 1 第 1 個轉捩點電壓 2 V Time 2 Voltage 2 第 2 個轉捩點時間 第 2 個轉捩點電壓 250μ 2 s V Time 3 Voltage 3 第 3 個轉捩點時間 第 3 個轉捩點電壓 500μ 5 s V Time 4 第 4 個轉捩點時間 1m s Voltage 4 第 4 個轉捩點電壓 5 V
  • 34. 34 圖 2.12 信號源的模擬曲線 2.3.3“vexp” 指數信號在某些設計中也會用到。同樣,這裡給出了主要參數以及相應的模擬曲線。需要注意的 是,這裡的“Damping factor”是以時間為單位給出的。表 2.7 給出了各參數和輸出電壓之間的換 算關係。其中“Dti”表示“Delay time i” , “ Dfi”表示“Damping factor i” 。 表 2.6 參數 含義 實例 單位 Voltage 1 起始電壓 0 V Voltage 2 峰值電壓 5 V Delay time 1 上升(下降)延遲 0 s Damping factor Delay time 2 Damping factor 1 2 上升(下降)時間常數 下降(上升)延遲 下降(上升)時間常數 100μ 500μ 100μ s s s 表 2.7 時間 電壓值 0~Dt1 V1 Dt1~Dt2 V1+(V2-V1)(1-exp(t-Dt1)/Df1) Dt2~ Stop V1+(V2-V1)(1-exp(t-Dt1)/Df1)(exp(t-t2)/Df2)
  • 35. 35 圖 2.12 2.34“vsin” 正弦信號也是一種在瞬態模擬中常用的信號。在該信號的參數中, “ Damping factor”的單位 是“1/s”。正弦信號也是在交流小信號分析(AC Analysis)中重要的激勵源。使用者需要區別的 是瞬態信號激勵和交流信號激勵不同的含義。 表 2.8 參數 含義 實例 單位 Amplitude 振幅 3 V Frequency 振盪頻率 10 Hz Delay time 延遲時間 0 s Damping factor 阻尼因數 1 1/s
  • 37. 37 圖 2.14 2.4 瞬態模擬實例 採用最簡單的 RC 充放電電路來完成一次瞬態模擬,該電路圖如圖 2.15 所示。電阻和電容 都採用“analogLib”中的理想電阻模型和理想電容模型。激勵源是“vpluse”週期性方波。採用 “conservative”的精度。由於沒有設置初始條件,模擬器會先執行直流分析,將其結果作為初始解 ,模擬去結果如圖 2.16 所示。
  • 39. 39 第 3 章 直流分析(DC Analysis) 3.1 功能基本介紹 直流分析是其他所有模擬的基礎。在“Tran Analysis” 、 “ AC Analysis”等分析的過程中,首 先就是先要計算直流工作點。在這裡介紹的直流“DC Analysis”中,實際包括兩個方面的分析: [1.]一個是直流工作點計算;[2.]另一個是直流特性掃描。 直流工作點計算例? 對於直流工作點分析,模擬器會計算各個節點的電壓,各支路電流,包括 MOS 管的各個直 流參數,例如跨導(gm) ,閾值電壓(Vth) ,工作區域(region)等。而在直流特性掃描中包含了 電路的溫度(Temperature) ,設計變數(Design Variable) ,器件參數(Component Parameter) ,器 件模型參數(Model Parameter)等多個參數的特性模擬。 3.2 模擬參數設置 如果需要將直流工作點資訊保存下來,在“DC Analysis”中確定“Save DC Operating Point” 。如 果要繪製特性曲線,需要設置掃描變數和掃描範圍。參數設置選項如圖 3.1 所示。 圖 3.1 “DC Analysis”參數設定 • “Temperature” : 溫度掃描,觀察電路直流工作點隨溫度飄移情況。 • “Design Variable” : 設計變數掃描,在設計電路時,設計師往往需要將某些設計參數 設置為變數,方便設計和修改。比如,可以將電源電壓(VDD) ,MOS 的柵長(L)和 柵寬(W)設置為變數,使用變數掃描,觀察電路在各種設計下的工作情況。 • “Component parameter” : 器件參數掃描,和“Design Variable”掃描比較類似。不過, 器件參數掃描不用預先將電路中某器件參數設置為變數(Variable) 。 • “Model Parameter” : 如果使用者能夠對庫檔模型進行修定,可以使用該參數掃描。但 是,由於庫檔都是直接由生產工廠直接提供,所以,不推薦使用這項掃描。
  • 40. 40 在選定掃描參數後,使用者需要進一步設置掃描範圍(Sweep Range) ,掃描方式(Sweep Type )等。 以點擊掃描“Temperature”為例,如圖 3.2 所示,可以看到可選參數包括掃描範圍(Sweep Range)和掃描方式(Sweep Type) ,以及是否加入特殊點計算(Add Specific Points) 。 。 圖 3.2 “Temperature”掃描設定 • “Sweep Range”:指定掃描範圍,可以包括指定起始值(Start-Stop)或指定中點值 (Center-Span)兩種方式。 • “Sweep Type”:指定掃描方式。步進可以是線性的(Linear) ,也可以以對數方式 (Logarithmic)步進。如果採用“Linear”模式,使用者需要通過步進大小(Step Size ) 或是步進點數(Number of Steps) 來控制模擬精度和模擬時間。而如果採用“ Logarithmic”模式,模擬器預設的是以 10 為底的對數。使用者也需要通過每個數量級所需 步進數(Points Per Decade)或總步進數(Number of Steps)來控制模擬精度和時間。當 使用者對輸出模式沒有特殊要求時,可以採用系統預設設置(Automatic) 。系統預設的 設置是在當終值與初值比小於 10 時,採用線性模式輸出。而在該比例大於 10 時,採用 對數模式輸出。三種模式的設置視窗見圖 3.3。 圖 3.3 “Temperature”掃描類型的設定 • “Add Specific Points” : 加入特殊點計算。在模擬過程中,用戶可以指定某些點一定需 要計算,在該選項中添加即可。各點之間用空格隔開。 如果使用者選擇“Design Variable”或“Component Parameter”掃描,還需要設置掃描的變 數名(Variable Name)或器件名(Component Name)和該器件的參數名(Parameter Name) 。圖 3.4是設定介面。在以後的設計實例部分,具體講解操作過程。
  • 41. 41 圖 3.4“Design Variable”設定 3.3 設計實例 以一個簡單共源級放大器為例說明“DC Analysis”的模擬過程,電路如圖 3.5 所示。直流模擬的 激勵源使用普通的“analogLib”7“vdc”即可。。 3.3.1 設計變數掃描“Design Variable” 在圖 3.5 中,將對 M0 的偏置電壓由 3V 改變設置為變數“VBIAS”。點擊“Design Variable” 7“Select Design Variable”後會彈出變數選擇視窗圖 3.6。由於電路中只設置了一個變數,所以點 擊該變數後選擇“OK”後,該變數名會出現在“Variable Name”中,再設置好“Sweep Range” 和“Sweep Type”後即可模擬。圖 3.7 的模擬曲線表示當變數“VBIAS”從 0V 到 5V 變化時輸 出電壓的變化情況。
  • 42. 42 圖 3.5 共源級放大電路 圖 3.6 選擇掃描變數
  • 43. 43 圖 3.7 模擬波形 3.3.2 器件參數掃描“Component ” 器件參數掃描和設計變數掃描相類似。點擊“Component Parameter”7“Select Component” 後彈出原理圖窗口。用戶可以選擇 MOS 管、激勵源、地線等各種器件作為模擬對象。如果點擊圖 3.3 中的 NMOS 管 M0,會彈出該器件的參數表。圖中的引號部分是對相應參數的解釋。可以對該 MOS 的柵長變化作參數掃描。圖 3.9 模擬表示 M0 管的柵長從 1μ 到 20μ 變化時,輸出電壓變化情 況。
  • 44. 44 圖 3.8 圖 3.5 電路圖中的 M0 管參數 圖 3.9 M0 管的柵長從 1μm 到 20μm 變化時,輸出電壓的變化 有些轉移曲線的繪製需要用“DC Analysis”中的參數掃描和其他模擬工具混合使用。比如 MOS 管的轉移曲線就需要“Design variable”和“Parameter analysis”共同使用,模擬結果如圖 3.10
  • 45. 45 所示。 (需要具體表示設定) 圖 3.10 MOS 管的轉移特性 在“DC Analysis”的高級設置中(Option) ,包括“State File Parameters” 、 “ Output Parameters” , “ Convergence Parameters” 、 “ Annotation Parameters” , “ CAPTAB Parameters”等。這些參數的含 義和設置在第二章中都有介紹,也可以查閱 cadence 的用戶手冊。
  • 46. 46 第 4 章 結果流覽器(Results Browser) 4.1 “Results Browser”的作用 “Results Browser”是一個非常實用的工具,通過它可以讀取所有電路節點的電壓和埠電流 的模擬結果。並且可以對資料進行預處理,在合適的視窗類型中顯示。此外,還提供了資料比較, “Y vsY”功能。通過“Results Browser”可以實現以下功能: [1.] 察看模擬結果; [2.] 察看模擬環境設置; [3.] 察看器件工作點特性; [4.] 將結果在特殊的圖示格式中顯示,例如阻抗圖和導納圖; [5.] 將模擬結果中的運算式直接送入到“Calculator”的緩存中。 4.2 “Results Browser”窗口簡介 “Results Browser”採用類似“Windows”檔案系統的方法,將模擬資料分級保存在各個資 料夾中。通過點資料夾,可以將資料夾展開,從而進入下一級資料夾獲得更具體的資訊。圖 4.1 顯示的是“Results Browser”視窗。 圖 4.1 “Results Browser”窗口
  • 47. 47 4.2.1 “Results Browser”的菜單。 表 4.1 列出了“Results Browser”中的所有功能表和它們的功能 。表 4.1 “Results Browser”視窗中的功能表及功能 。 。 。 功能表選項 具體操作 File Open Results 打開模擬的輸出結果 Open Graph Open Graph as Plot… 以圖表的形式打開保存圖形 Open Graph as Tamplate… 以範本的形式打開保存圖形 Open Table 打開保存的表格 Clear 將選中的模擬結果,從“Results Browser”中清除 當只有一個模擬結果時,無需選擇,即可將其清除 Reload 重新讀取模擬結果 Save Session 保存當前“Results Browser”的設置 Close 關閉“Results Browser”窗口 Setting Select Data 選擇輸出資料,在運行了“Corner Analysis”或者 “Parametric Analysis”後,該選項被啟動。可以通 過它選擇特定功能角或者設計變數值下的模擬結 果 Plot Style Append 在原來視窗的基礎上顯示新的波形。 Replace 清楚原來的視窗中的資料,顯示新的波形。 New SubWin 在原來的視窗中,建立字視窗,用來顯示新的波形 New Win 創建一個新的視窗顯示新的波形。 Graph Type Default 預設方式 Rectangular 直角坐標系 Polar 極座標 Impedance 阻抗圓圖 Admittance 導納圓圖 RealVsImag 實部 VS 虛部 Tools Calculator 打開“Calculator” Table 打開表格 Help Help 獲取幫助文檔
  • 48. 48 4.2.2 “Results Browser”視窗中的快速鍵 “Results Browser”視窗中的快速鍵如圖 4.2 所示,各個快速鍵的功能如下: 圖 4.2 “Results Browser”視窗中的快速鍵 :打開模擬的輸出結果。等同 File7Open Results • :按照“Plot Style”中選擇的方式,以圖形的方式顯示選中的模擬結果 • :打開“Calculator” ,如果在“Results Browser”中選擇模擬結果。那麼該結果的運 算式將直接送到“Calculator”的緩存中。 • :選擇兩個模擬結果,將他們的差值以圖像的形式輸出。 注意:該快速鍵在一個模擬結果運算式存在多個值的情況下失效,例如運行了“Corner Analysis”或者“Parametric Analysis”後。 • :選擇兩個模擬結果,以“YvsY”的方式輸出模擬結果。 注意:該快速鍵在一個模擬結果運算式存在多個值的情況下失效,例如運行了“Corner Analysis”或者“Parametric Analysis”後。 • :選擇輸出資料,在運行了“Corner Analysis”或者“Parametric Analysis”後,該選 項被啟動。可以通過它選擇特定功能角或者設計變數值下的模擬結果。等同於“Setting” 7“Select Data” 。 第一個下拉式功能表,如圖 4.3 所示。該下拉式功能表是選擇圖表類型,等同於“Setting”7 “Graph Style”。注意:該下拉式功能表只在選擇交流模擬結果時才出現。
  • 49. 49 圖 4.3 第一個下拉式功能表 • 第二個下拉式功能表,如圖 4.4 所示。該功能表是對顯示的資料進行預處理。其功能 類似於“Calculator”中同名函數。注意:該下拉式功能表只在選擇交流模擬結果時才 出現。
  • 50. 50 圖 4.4 第二個下拉式功能表 • Mag:計算模擬結果的幅值。 • Phase:計算模擬結果的幅角(-180 度至+180 度範圍計算) • WPhase:計算模擬結果的幅角(0 度至 360 度範圍計算) • Real:取模擬結果的實部。 • Imag:取模擬結果的虛部。 • dB10:對模擬結果進行“10log n”變化。 • dB20:對模擬結果進行“20log n”變化
  • 51. 51 圖 4.5 第三個下拉式功能表 • 第三個下拉式功能表如圖 4.5 所示。該下拉式功能表是選擇創建顯示視窗的方式,等同於“ Setting” 7“Plot Style” 。 4.2.3 模擬結果保存路徑。 如圖 4.6 所示,“Location”欄中顯示了當前模擬結果的保存路徑。 圖 4.6 當前模擬結果的保存路徑 以前打開的模擬結果的路徑將保存在該下拉式功能表中,可以通過點擊下拉式功能表中對應路徑 ,把該模擬結果 引 入到“ Results Browser ”中。 例 如在圖 4.7 中, 在 下拉菜 單 中選擇 了 “~/simulation/BIAS_P/spectre/schematic/psf”,發現該模擬結果出現在“Result Browser”中,如 圖 4.7 中左欄內的高亮部分所示。
  • 52. 52 圖 4.7 模擬結果的保存路徑設定 4.2.4 “Results Browser”視窗的主體部分 “Results Browser”視窗的主體分為左右兩欄,左邊一欄是”資源管理器”,以樹形結構分級 保存模擬結果。右邊一欄顯示當前選中資料夾中的內容。假如該資料夾還包含子資料夾,則在其之 前出現“ ”標記。 (該標記可能在打開資料夾後才出現。 ) 模擬結果通常包含以下內容,如圖 4.5 中左欄所示。表 4.2 給出了結果名稱和其具體內容。
  • 53. 53 表 4.2 模擬名稱與內容 名稱 內容 tran-tran 瞬態模擬中所有節點電壓值和選擇保存端 口的電流值 finalTimeOP-info 模擬結束時器件參數的工作點 ac-ac 交流模擬中所有節點電壓值和選擇保存端 口的電流值 dcOp-dc 工作點的直流模擬,所有節點的電壓值和選 擇保存的埠電流值 dcOpInfo-info 工作點的直流模擬,所有器件的參數。在該 資料夾下有以器件名命名的子資料夾,分別 保存各個器件的直流工作點參數。 dc-dc 直流掃描模擬時,所有節點電壓值和選擇保 存埠電流值。 modelParameter-info 模擬採用模型的參數 element-info 設計電路圖中所有元素的器件參數。 outputParameter-info 輸出參數資訊。該資料夾下包含以器件名命 名的子資料夾,分別包含該器件經模擬器處 理後的參數,例如:有效長度(leff) ,有效寬 度(weff) ,有效電阻值(reff) ,有效電容值 (ceff)等等。 designParamVals-info 設計參數值 variables 設計變數。該資料夾下包含以設計變數名命 名的子資料夾,分別保存各個設計變數的信 息。 4.3 啟動“Results Browser”並讀取模擬結果 1 ) 通過下面任意一種方式啟動“Results Browser” 。 • 在 Unix 命令列中鍵入“wavescan &”命令。 • 在“Calculator”視窗中選擇 Tools7Browser。 • 在“Waveform”視窗中選擇 Tools7Browser。 • 在 CIW 視窗中選擇 Tools7Analog Environment7Results Browser。 • 在 ADE 視窗中選擇 Tools7Results Browser。 然後“Results Browser”視窗彈出。 2 ) 通過選擇 File7Open Results 或者快速鍵 ”打開“Choose Data Directory”視窗, 如圖 4.8 所示,從而選擇模擬結果保存路徑。
  • 54. 54 圖 4.8 模擬結果的保存路徑顯示 “Choose Data Directory”視窗打開時,將“icfb”的啟動路徑作為預設路徑。 在 ADE 的預設設置中,模擬結果保存路徑為: “~/simulation/CellName/Simulator/schematic/psf” 其中“CellName”是模擬電路圖的名稱;“Simulator”是模擬器的名稱,預設值為“Spectre” 。 如 果 剛 剛 結 束 了 一 次 模 擬 , “ Results Browser”會自動讀取其模擬結果。不用進行上述設置。 3 ) 點擊“OK”完成資料讀取。 4.4 在“Results Browser”中選擇資料 對比圖 4.9 和圖 4.10,可以發現“Results Browser”中檔管理方式和 Windows 作業系統中的 資料夾系統十分類似。如同在 Window 作業系統中,在“IC Cadence”的資源管理器中完成文件的 選擇、打開和切換,在右邊被選中資料夾具體內容中,選擇資料、子資料夾,或者打開子資料夾。
  • 55. 55 圖 4.9 “IC Cadence”中的文件管理 圖 4.10 “Windows”中的文件管理 4.5 輸出“Results Browser”中的結果 4.5.1 直接輸出模擬結果到“Waveform”視窗。 不對模擬結果進行任何預處理,可以通過以下方法將結果直接輸出到“Waveform”視窗中 顯示。 • 在選中需要的模擬結果後,點擊快捷按鍵“ ” , 即按照“Plot Style”中選擇的方式, 以圖形的方式顯示選中的模擬結果。 • 在選中需要的模擬結果後,點擊滑鼠右鍵,此時彈出一個選項功能表,如圖 4.11 所示。
  • 56. 56 圖 4.11 顯示方法的選定 各個選項的功能如下: • “Append”:以“Plot Style”為“Append”的方式,顯示選中的模擬結果。 • “Replace”:以“Plot Style”為“Replace”的方式,顯示選中的模擬結果。 • “New SubWin”:以“Plot Style”為“New SubWin”的方式,顯示選中的模擬結 果。 • “New Win”:以“Plot Style”為“New Win”的方式,顯示選中的模擬結果。 • “Table”:以清單的方式顯示選中的模擬結果。 • “Calculator”:將模擬結果直接送到“Calculator”的緩存中。 注意:此時,“Results Browser”中對模擬結果的預處理不在生效。例如在圖 4.11 中,第二個下拉式功能表選擇“Phase”,即輸出模擬結果的幅角。這個功能對上述 5個選項都有用。但是對於“Calculator”選項,送到“Calculator”中是未經處理 過的資料。如果需要顯示幅角,則需要在“Calculator”中對該資料使用“phase” 函數。 4.5.2 將模擬結果輸出到“Calculator”的緩存中 在選中需要的模擬結果後,點擊快捷按鍵“ ” , 即將模擬結果直接送到“Calculator”的 緩存中。也可以使用 4.5.1 中介紹的,通過滑鼠右鍵,將模擬結果送到“Calculator”的緩存中。
  • 57. 57 4.5.3 輸出兩個結果的差值。 在選中第一個模擬結果後,點擊快捷按鍵“ ” ,此時“Results Browser”將會提示選擇另 一個模擬結果,如圖 4.12 中所示。選擇第二個模擬結果後,將按照“Plot Style”中的設置輸出 兩個模擬結果的差值,即“Result1 – Result 2” 。 圖 4.12 輸出兩個模擬結果的差值 4.5.4 將兩個模擬結果採用“Y vs Y”的方式輸出 在選擇第一個模擬結果後,點擊快捷按鍵“點擊快捷按鍵“ ” ,此時“Results Browser” 將會提示選擇另一個模擬結果,如圖 4.12 中所示。”選擇第二個模擬結果後,將用其作為橫軸, 輸出兩個模擬結果。 4.6 MOS 管參數名稱解釋 在“finalTimeOP-info”和“dcOpInfo-info”中都保存了電路器件參數。下面將就 MOS 管的 一些常用參數名稱進行解釋。 1 ) type:MOS 管類型,可能值為 n 或 p。 2 ) region:MOS 管的工作區域,可能值為 0~4,分別對應:
  • 58. 58 1: 關斷 2: 線性區 3: 飽和區 4: 亞閾值區 5: 擊穿 3 ) reversed:MOS 管是否反向,可能值為 yes 或 no。 4 ) ids (A): 阻性漏源電流 5 ) lx4 (A):ids 的別名,當 MOS 管反向時有相反的符號。 6 ) lx50 (A):襯源電流。 7 ) vgs / lx2 (V):柵源電壓。 8 ) vds / lx3 (V):漏源電壓。 9 ) vbs / lx1 (V):襯源電壓。 1 0 ) vth (V):有效閾值電壓。 1 1 ) lv9 (V):vth 的別名。 1 2 ) vdsat (V):漏源飽和電壓。 1 3 ) lv26 (V):平帶電壓(Flat-band voltage) 。 1 4 ) lv10 (V):vdsat 的別名。 1 5 ) gm / lx7 (S):共源跨導。 1 6 ) gds / lx8 (S):共源輸出跨導。 1 7 ) gmbs / lx9 (S):襯底跨導。 1 8 ) betaeff (A/V2):有效 β 值。 1 9 ) cjd / lx29 (F):漏區襯底結電容。 2 0 ) cjs / lx28 (F):源區襯底結電容。 2 1 ) lx12 (Coul):襯底電荷(Qb) 2 2 ) lx14 (Coul):柵極電荷(Qg) 2 3 ) lx16 (Coul):漏區電荷(Qd) 2 4 ) lx24 (Coul):漏區 PN 結電荷。 2 5 ) lx26 (Coul):源區 PN 結電荷。 2 6 ) cgg / lx18 (F):dQg_dVg 2 7 ) cgd / lx19 (F):dQg_dVd 2 8 ) cgs / lx20 (F):dQg_dVs 2 9 ) cgb (F):dQg_dVb 3 0 ) cdg / lx32 (F):dQd_dVg 3 1 ) cdd / lx33 (F):dQd_dVd 3 2 ) cds / lx34 (F):dQd_dVs 3 3 ) cdb (F):dQd_dVb 3 4 ) csg (F):dQs_dVg 3 5 ) csd (F):dQs_dVd 3 6 ) css (F):dQs_dVs 3 7 ) csb (F):dQs_dVb 3 8 ) cbg / lx21 (F):dQb_dVg 3 9 ) cbd / lx22 (F):dQb_dVd 4 0 ) cbs / lx23 (F):dQb_dVs 4 1 ) cbb (F):dQb_dVb
  • 59. 59 4 2 ) ron():導通電阻。 4 3 ) id / i1 (A):漏端電流。 4 4 ) is / i3 (A):源端電流。 4 5 ) ibulk / i4 (A):襯底電流。 4 6 ) lx5 (A):源端 PN 結電流。 4 7 ) lx6 (A):漏端 PN 結電流。 4 8 ) pwr (W):處於工作點時的功耗。 4 9 ) gmoverid (1/V):Gm/Ids 5 0 ) lv36 (F):柵源交疊電容。 5 1 ) lv37 (F):柵漏交疊電容。 5 2 ) lv38 (F):柵襯底交疊電容。 5 3 ) lx10 (S):漏區二極體跨導。 5 4 ) lx11 (S):源區二極體跨導。
  • 60. 60 第 5 章 交流小信號分析(AC Analysis) 5.1 功能基本介紹 交流小信號分析(AC Analysis)是用來計算電路的小信號頻率響應特性。在分析時,模擬 器首先計算電路的直流工作點,然後將電路在工作點附近線性化,並以此計算電路的頻率響應。 模擬時需要設置專門的交流信號源。類似於直流分析(DC analysis) ,在交流小信號分析中,設 計者同樣有“Frequency” 、 “ Design Variable” 、 “ Temperature” 、 “ Component Parameter” , “ Model Parameter”等參數掃描選項。 5.2 模擬參數設置 點擊“Analog Design Environment”7“AC Analysis”,彈出交流小信號模擬參數設置視窗。 如圖 5.1 所示。 圖 5.1 交流分析的設定 注意:如果是做“Frequency”掃描,“Sweep Range”填寫的是頻帶範圍。目的是觀察電路系統 對不同頻率信號的回應。而在其他掃描方式中例如“Temperature”掃描中,“Spectre”要求使用 者指定在某個頻率點上進行模擬。因此,用戶在“At Frequency (Hz) ”中填寫模擬頻率,而在“ Sweep Range”中填寫的是溫度掃描範圍。其他參數掃描的設置也類似如此。
  • 61. 61 圖 5.2 掃描參變數的設定 5.3、設計實例輸出結果觀察 以圖 5.3 所示簡單放大器作為實例進行交流小信號分析。在放大器設置中,最關心的是 它的增益和相位隨頻率變化的情況。在實際設計中,往往用波特圖來表示該放大器的頻率特 性。
  • 62. 62 圖 5.3 交流分析實例 在做“AC Analysis”時,必須先給電路設置一個交流信號源。常以“AnalogLib”7“vsin” 信號為激勵源。在圖 5.3 中,由於交流信號是直接從“M0”管的柵極加入,那麼在具有交 流信號的同時,必須要給該 MOS 管設置一個直流偏置電壓。在信號源中需要設置交流振幅 和直流偏置。如圖 5.4,在“vsin”信號的設置中包括交流信號幅值(AC magnitude) ,交流 信號相位(AC phase) ,直流偏置電壓(DC voltage)等多個選項。“AC magnitude”通常都 設置為 1V, “ -1”表示 180°相位翻轉。當然,設計者也可以通過設置“AC phase”來表示相 位, “ AC phase”缺省設置為 0。 “ DC voltage”根據實際電路設置偏置即可。該電路中以 1μF電容 和 1MΩ 電阻為負載。 圖 5.4 交流信號的設置 注意:設計者應當區別在模擬器中交流信號和直流偏置信號的差異。例如圖 5.3 中 , 如 果 “ M0” 的 直流偏置電壓設置為 1.5V,交流幅值設置為 1V,該 MOS 管閾值電壓 1V。那麼“M0” 會 不會進入到截止區呢(1.5V-1V<1V)?實際上模擬結果顯示“M0”管不可能進入截止區。在 本章最開始陳述過,“AC Analysis”的前提是先進行了“DC Analysis”。所以,電路狀態
  • 63. 63 固定,加入交流信號後不會影響直流工作點。在計算電路交流增益時,模擬器是將輸出端的交 流信號幅值除以輸入交流信號幅值。所以,“AC magnitude”設置為 1V 是為了方便計算和觀 察結果,不影響電路工作。那麼,如果在實際電路設計輸入信號較大,會影響到電路直流工作 點該如何模擬呢?這需要設計者在瞬態時域的模擬中進行仔細設計多種最差情況,並做出合理 的分析。 模擬結果可以使用“Tool”7“Results Browser”觀察,如圖 5.5 所示。 圖 5.5 模擬結果分析 在圖 5.5 中的下拉式功能表中,表示多種方式輸出。 • “Mag” : 幅度絕對值曲線 • “Phase”&“WPhase”:相位曲線,兩者不同之處在於“Phase”是從 360°開始 作圖,而“WPhase”是從 0°開始作圖。如圖 5.6 所示。 • “Real” , “ Imag” : 由於頻域在數學上往往可以用 exp 的指數形式表示,所以可以 用實虛數來表示。 • “dB10” , “ dB20” : 在波特圖中幅頻特性通常換算成分貝表示。“dB10” , “ dB20” 表示對幅度 A 以 10logA 和 20logA 計算結果。如果是電壓幅值採用“dB10”,如果 是功率增益則需採用“dB20”。一般情況下,在波特圖中“dB20”更為常用。圖 5.3 電路的增益曲線如圖 5.7 所示。 對“AC Analysis”中“State File Parameter” , “ Output Parameter”等高級設置(Option)詳見 “tran analysis”的介紹。
  • 64. 64 圖 5.6 “phase”與“wphase”分析圖 圖 5.7 “Vout”與頻率關係
  • 65. 65 第 6 章 零極點分析(Pole & Zero Analysis) 6.1 零極點分析(Pole & Zero Analysis)簡介 零極點分析是分析線性時不變電路行為特徵的有效方法,可以應用於類比電路的設計中。因 此,這種方法可以用於確定設計的穩定性。在零極點分析中,網路是用傳輸函數描述的,對於任 何線性時不變系統,傳輸函數可以表示為: 6.1 類似的,傳輸函數也可以表示為: 6.2 這裡,N(S)的所有的根 (也就是 Zi)成為網路的零點。D(S)的所有的根(也就是, Pi)成為網路的 極點。其中 S 表示的是複頻率。電路的行為決定於複平面,即 S 平面,上的極點和零點的位置。 極點被稱為電路的自然頻率。例如: 6.3 這裡零點可以使 H(S)的值為 0,也就是 S = 2 與S = -1。極點則使 H(S) 的值無窮,也就是 S = 0。 當所有的極點具有負的實部,則極點都位於 XY 平面的左側。在此情況下,電路被認為是穩定的 。圖 6.1 說明的是穩定電路的行為。 圖 6.1 極點在左平面 圖 6.2 極點在右平面
  • 66. 66 如果有極點出現於複平面的右側,則電路是不穩定的,圖 6.2 表示的是這種電路的行為。想 要電路絕對穩定,需要電路的所有極點都有負的實部。如果有極點具有正的實部,輸出信 號就是無界的,不可能穩定。 在 Spectre 模擬器中設定零極點分析, 1. 在 Virtuoso® Analog Design Environment (ADE)的功能表中選擇“Analyses”7“Choose” 。“Choosing Analyses”— “選擇分析類型”對話方塊出現,如圖 6.3 所示。 2. 選擇“pz”。“選擇分析類型”對話方塊刷新顯示內容,顯示出零極點分析的各種選項。 圖 6.3 “PZ”分析視窗 3. 在對話方塊的“Output”節選定輸出埠。在如圖 6.4 所示的下拉式功能表中可以選擇 “Voltage” 或者“Probe”類型。指定電壓輸出的方法如下: a. 在“output”下拉式功能表中選擇“voltage” 圖 6.4 “PZ”分析埠設定
  • 67. 67 b. 點擊“Positive Output Node” 一欄的“Select”按鈕,然後在電路圖中點擊一個網 路作為輸出的正端。然後點擊“Negative Output Node” 一欄的“Select” 按鈕, 然後在電路圖中點擊一個網路作為輸出的負端。 要指定一個電流輸出: a . 在“output”下拉式功能表中選擇“probe”,出現如圖 6.5 所示視窗。 圖 6.5 指定電流輸出 b . 在“Output Probe Instance”一欄點擊“Select” 並在電路圖中選擇一個器件 (有 埠電流作為網路變數) 如果選擇其它的任何器件,在 CIW 命令列視窗中將會顯示一個警告,提示選擇的器件類 型不對。有效的“Spectre”器件和對應的“analogLib”單元,如表 6.1 所示。 表 6.1 器件名與對應的“analogLib”單元 電感器 ind, pinductor 電壓源 vdc, vpulse, vpwl, vpwlf, vsin, vexp, vsource 開關 sp1tswitch, sp2tswitch, sp3tswitch, sp4tswitch 傳輸線 tline 受控電壓源 vcvs, ccvs, sccvs, svcvs, zccvs, zvcvs, pvcvs, pvcvs2, pvcvs3, pccvs 電流探測器 iprobe 當選擇的器件是“tline”的時候,在“選擇分析類型”對話方塊中的“Output”欄顯示出 是 “porti”欄。這個參數允許你指定一個器件埠電流作為電流輸出。因為所有的雙埠器件 ,流過器件埠的電流都相當於流過另一個埠的電流,“tline”器件是唯一一個有多於 2 個埠的器件。 4. 通過在“Input Source”下拉式功能表中選擇“voltage”或“current”指定輸入是電壓或 電流源,設定介面如圖 6.6 所示,方法同上。 器件 對應的 analogLib 單元
  • 68. 68 圖 6.6 “input Source”的設定 5. 如果希望將掃描變數和零極點分析結合起來,選擇一個參數來掃描。可以選擇的參數類 型包括“Frequency”(頻率), “Design Variable”(設計變數), “Temperature”(溫 度), “Component Parameter”(器件參數)和 “Model Parameter”(模型參數),設 定視窗如圖 6.7 所示。 圖 6.7 掃描變數設定 如果選定了其中的一種參數類型,對話方塊更新為如圖 6.8 所示形式。
  • 69. 69 圖 6.8 選擇掃描參數後的視窗 注: Add Specific Points(添加指定點)欄只在啟用了 Add Specific Points(添加指定點)按鈕的 時候才會顯示。 6. 如果選擇的是“Design Variable”, “Temperature”, “Component Parameter”或“Model Parameter”,在“Sweep Range”欄指定掃描參數的範圍和類型,如圖 6.10 所示。 輸入掃描範圍的上下限。 圖 6.10 掃描範圍的確定 掃描類型選項將會對應到 Spectre 變數掃描的選項,各種設置對應的掃描類 型如下:
  • 70. 70 • Linear + Step Size = step • Linear + Total Points = lin • Logarithmic + Points Per Decade = dec • Logarithmic + Total Points = log • Add Specific Points = values=[...] 當沒有選擇掃描變數的時候,“Sweep Range”掃描範圍選項欄不會顯示。 7. 點擊“Options”按鈕,打開零極點分析的選項對話方塊。這個對話方塊中的詳細設置見 下一節。 8. 點擊“Apply”(應用)。 9. 點擊 ADE 的功能表中的“Results”7“Print”7“Pole Zero Summary”列印輸出零極點列表 。也可以選擇 ADE 功能表中的“Results”7“Direct Plot” 7 “Main Form”。要在“OCEAN® ” 中控制輸出零極點曲線或者概要,可以使用命令“pzplot”和“pzSummery”。 6.2 零極點分析的高級選項 6.2.1 零極點分析內容 零極點分析按照直流工作點附近的電路參數,把電路當作一個線性系統,對網路的傳輸函數 進行分析,計算出所有的零點和極點。如果需要計算零點,則還需要制定輸出端和輸入端;否則只 會計算極點。如果在有頻率相關的器件(也就是在不同頻率下的 AC 等效模型不同的器件,例如 傳輸線或者有過餘度相位的雙結型器件) “Spectre® ”電路模擬器將採用 1Hz 時電路的頻率特性 作為近似。PZ 分析現在採用的是直接求解的方法以達到更高的精確度;因而小規模或者中規模 電路(少於 1000 個方程)中會得到最好的性能。 “Spectre® ”可以在一個參數變化的情況下掃描零極點的移動。這個變化的參數可以是溫度, 器件的參數,模型參數,或者是網表參數。如果改變的參數影響了 DC 工作點,每步的工作點都要 重新計算。可以通過給出掃描的參數名來掃描溫度(temp)和網表參數(在沒有設置 dev 和 mod 參數的前提下) 。在分析完成之後,修改過的參數回復的原來的值。 當零極點對的距離(也就是差的絕對值)小於一定值得時候,零極點對被認為相互抵消。該 距離可以通過“absdiff”定義據絕對距離,或者用“reldiff”定義這個距離和零極點的絕對值的比 例。“Spectre® ”使用這兩個值中比較大的一個作為抵消的半徑。
  • 71. 71 圖 6.11 零極點分析的高級選項 探測參數: [1.] iprobe:探測傳輸函數的輸入零點; [2.] oprobe:探測傳輸函數的輸出零點。 埠參數: [3.] portv:電壓模式,“oprobe”埠上的電壓作為分析輸出; [4.] porti:電流模式,通過“oprobe”埠的電流作分析輸出。當“oprobe”是電壓源或者是電 流探測器時才能使用。 掃描間隔參數: [5.] start=0:掃描的下限 [6.] stop:掃描上限. [7.] center: 掃描中心[8.] span = 0:掃描的跨度[9.] step :線性的步距 [10.] lin=50 :模擬總步數,線性平分 [11.] dec:每 10 倍的步數 [12.] log=50:模擬總步數,對數均分 [13.] values=[...] 模擬點集.
  • 72. 72 掃描變數參數: [14.]dev:參數需要被掃描的器件實例; [15.] mod:需要掃描的參數所屬的工藝模型; [16.] param:掃描參數名; [17.] freq (Hz):用於線性化電路器件的工作頻率。 狀態檔參數: [18.] readns:包含有 DC 測試結果的檔。 輸出參數: [19.] oppoint = no:是否需要計算工作點,如果需要,應當把結果送到哪裡。可能的取值包 括no, screen, logfile, 或 rawfile. [20.] zeroonly = no 如果設置了這個選項,只能選 0。 可能值包括no 或 yes. 過濾參數: [21.] fmax (Hz):最大的零極點上限用來過濾虛極點或者零點。這個參數傳到 psf 目錄用於過濾 輸出圖像。 [22.] docancel=yes:是否進行零極點抵消的設置。If set, pole-zero cancellation is requested. 可 能值為 yes 或 no。. [23.] absdiff=1e-6 Hz:零極點抵消的絕對差值上限 [24.] reldiff=1e-4:零極點抵消的相對比值上限 收斂參數設置: [25.] prevoppoint = no:使用上一次分析的工作點,可能選項包括 yes 和 no [26.] restart = yes:如果有任何條件改變,按照設置重新計算 DC 工作點;如果選 no,使用 上次的 DC 工作點。可能選項包括 yes 和 no 標注參數: [27.] stats = no: 分析的統計,可能值為 yes 和 no [28.] annotate = sweep: 標注級別,可能值為no, title, sweep, status, 或steps. [29.] title:分析名 Examples: 1. mypz pz - 只進行極點分析,分析名為 mypz 2. mypz2 (n1 n2) pz iprobe=VIN - 進行零極點模擬,輸入是 VIN,輸出是 n1,n2 的差值。 - 計算零點和極點 3. mypz3 (n1 n2) pz iprobe=I1 - 輸入為I1, 輸出為 n1 和 n2 的差值。 - 計算零點和極點 4. mypz4 pz iprobe=VIN oprobe=IP1 porti=1 - 輸入為 VIN, 輸出為 IP1 上的電流, 其中 IP1 是一個 iprobe. - 計算零點和極點
  • 73. 73 5. mypz5 pz iprobe=VIN oprobe=V3 porti=1 - 輸入為 VIN, 輸出為電壓源 V3 上的電流。 - 計算零點和極點 6. mypz6 pz iprobe=VIN oprobe=R3 portv=1 - 輸入為 VIN, 輸出為電阻 R3 上的電流。 - 計算零點和極點 7. mypz7 (n1 n2) pz iprobe=I1 param=temp start=25 stop=100 step=25 - 按照溫度掃描,範圍為 25~100 o C,步進 25 o C 8. parameters rval=2.0 R2 3 4 resistor r=rval ... sweep1 sweep param=rval start=1 stop=10 step=1 { mypz8 (n1 n2) iprobe=VIN } - 對外部掃描參數 rval,範圍 1~10,步進為 1。 9. mypz9 (n1 n2) pz iprobe=VIN docancel=no - 不要進行零極點抵消 注意:“porti”允許用戶選擇一個關聯到“oprobe”中指定器件的電流。但這個器件必須讓它的端點 電流作為網路變數。因而要避免混淆,“porti”應當用於電壓源或電流檢測器,或者其它只有電壓 定義的支路。 輸出日誌: “output.log”檔中包含以下資訊: • 複平面極點 • 複平面零點 • 零點的增益 • 品質因數 Q,可以定義為: 其中如果實部 real<0 則sign=1;如果 real>0 則sign=-1;如果 real=0,則 sign=0;如果 結果中包含實部為正的極點,則這表明這是一個不穩定的電路。在該極點後面會加上**RHP 標籤。輸 出例如下: ***************** PZ Analysis 'mypz' ****************** Real Poles (Hertz) Imaginary Qfactor 1 4.5694e+10 0 **RHP -0.5 2 4.2613e+10 0 **RHP -0.5 3 1.4969e+10 0 **RHP -0.5 4 1.4925e+10 0 **RHP -0.5 5 1.0167e+10 0 **RHP -0.5
  • 74. 74 6 1.0165e+10 0 **RHP -0.5 7 7.3469e+09 0 **RHP -0.5 8 7.3469e+09 0 **RHP -0.5 9 -1.0061e+09 0 0.5 10 -1.0061e+09 0 0.5 11 -1.0235e+09 0 0.5
  • 75. 75 第 7 章 雜訊和失真分析 7.1 功能基本介紹 雜訊分析將電路在直流工作點附近線性化後,計算在輸出端的雜訊頻譜。如果設計者指定了電 路輸入端,那麼模擬器可以計算傳輸函數和等效輸入參考雜訊。另外,如果信號輸入源是有噪的,也 可以計算信號源的雜訊係數。雜訊分析計算的輸出端的總雜訊中不僅包括電路本身的雜訊, 也包括輸入 源和負載的雜訊。電路中的每個噪音源對總雜訊的貢獻量也會同時計算出來。 雜訊分析有傳統的雜訊分析和週期性的雜訊分析。 7.2 傳統的雜訊分析及參數設置 打開“Noise Analysis”視窗可以看到基本設置類似於“AC Analysis”,如圖 7.1 所示。在雜 訊分析中同樣可以做“Frequency” 、 “ Design Variable” 、 “ Temperature” 、 “ Component Parameter” 、 “ M o d e l Parameter”等參數掃描。各種參數掃描的設置和“AC Analysis”中所述完全一樣。在“ Output Noise”和“Input Noise”填寫輸出雜訊節點和等效輸入噪音源。模擬器將計算從噪音源到輸 出端的增益,再將輸出端總雜訊除以增益後就等於等效輸入雜訊。
  • 76. 76 圖 7.1 “Noise Analysis”設定窗口 • “Output Noise” : 如前所述,模擬器計算的是在輸出端的雜訊。因此,首先需要給電路設 置一對輸出節點(Node)或設置輸出探針器件(Probe component) 。當選擇“voltage”方 式輸出時,點擊“Select”後彈出電路圖,點擊網線(net)即可設置輸出節點。如果是 差分方式輸出,“Positive Output Node”和“Positive Output Node”設置為差分輸出端 即可。而如果電路是單端輸出,將“Positive Output Node”設置為輸出端,而“Negative Output Node”設置為地線。如果輸出是一個電壓量,也可以選擇一個電阻(resistor) 或是一個埠(port) 作為輸出探針。而如果輸出量是電流量,選擇“vsource” 或 是 “ iprobe”作 為輸出探針。兩種不同的設置方式對比在圖 7.2 中顯示。 注意:這裡的“port” , “ vsource” , “ iprobe”都是在元件庫“analogLib”中選擇,如圖 7.3 所示。 圖 7.2 “Output Noise”埠的設定 圖 7.3 元件庫“analogLib”的例 • “Input Noise” : 當需要計算輸入參考雜訊時,使用者需要通過“Input Port Source”指 定等效輸入噪音源。一般來說,只有電壓源(vsource) ,電流源(isource)或者是一個 埠(port)能夠用來做等效輸入噪音源。注意,這裡是將電路雜訊等效到某個輸入源的 位置上,而輸入源本身是無噪的。當然,用戶也可以設置輸入原本身是有噪的,比如說一 個埠(port) ,那麼雜訊分析將計算該信號源的雜訊係數(F 或者 NF) 。根據 IEEE對雜 訊係數的定義,輸入探針應當是沒有額外雜訊(no excess noise)並且它的等效雜訊溫 度是 16.85C(290K) 。在這裡,給出有關雜訊的計算公式: IRN = sqrt(No2 /G2 ) F = (No2 -Nl2 )/Ns2 這裡,No = 總輸出雜訊 Ns = 輸入信號源傳遞到輸出端的雜訊 Nl = 負載在輸出端的雜訊 IRN = 輸入參考雜訊 G = 電路增益 F = 雜訊系統
  • 77. 77 NF = 10log10F • 設計實例及結果輸出方式設置。這裡仍然是以一簡單放大器作為分析例子,如圖 7.4 所示。 圖 7.4 共源級放大電路實例 在設置好“Noise Analysis”模擬參數後,模擬結果可以通過“Result Browser”觀察輸 出結果的波形,例如作“Frequency”掃描時,可以通過波形方式看到功率譜密度曲線。設 計者也可以通過文本方式使用“Noise Summary”來獲取有關輸入參考雜訊,最大雜訊器件 等資訊。點擊“Analog Design Enviroment”7“Results”7“Noise Summary”會出現如圖 7.5 所示的輸出方式設置視窗。 各參數的含義如下: 圖 7.5 雜訊輸出方式設定
  • 78. 78 • “Type” : 計算雜訊的方式 • “spot noise” : 給出某個頻率點上的雜訊報告。這實際是反映功率譜密度。 • “integrated noise” : 將頻段內的雜訊帶權重的積分後給出雜訊報告。這是給 出的帶內雜訊功率值。帶權重是指在某些頻帶內 • “noise unit” : 雜訊的單位是採用電壓單位“V”或是功率單位“V2 ” 。 • “Frequency Spot(Hz) ” :計算雜訊的頻率點,預設頻率點是 1KHz。報告給出該 頻率點的功率譜密度。 • “From(Hz) ” , “To(Hz) ” :頻率積分的範圍。 • “weighting” : 是否需要對某些頻率的積分施予權重。 ◆ “flat” : 在整個頻帶內均勻積分。 ◆ “from weight file” : 依據權重文件中的定義對頻帶內的雜訊積分。 • “Filter” : 使用者可以選擇性的給出部分器件的雜訊報告。在列表中給出了可供選 擇的器件。 • “include All Types” : 自動選擇列表中的所有。 • “include None” : 將列表中所有項目都刪除。 • “include instances” : 列出包括在雜訊報告中的器件。 ◆ “Select” : 選擇器件 ◆ “Clear” : 刪除器件 • “exclude instances” : 列出不包括在雜訊報告中的器件。 • “Truncate & Sort” : • “truncate” : 根據每個器件的雜訊大小,限制在雜訊報告中列出的器件個數。 ◆ “none” : 所有器件都將列出。 ◆ “by number” : 根據器件貢獻雜訊的大小排名,限制列出的器件個數。 ◆ “by relative threshold” : 將貢獻雜訊超過總雜訊規定百分比的器件列出。 ◆ “by absolute threshold” : 將貢獻雜訊超過某個絕對數值的器件列出。 • “Sort by” : 設置根據貢獻雜訊的大小或是器件名稱的字母順序等報告顯示的 順序。 分析結果輸出如圖 7.4 所示。 圖 7.4 雜訊分析輸出文本結果 也可以在“Results-Direct Plot-Main Form”中查看模擬結果,如圖 7.5 所示。我們可以在 “Function”中選擇“Output Noise”或者“Input Noise”來查看輸出雜訊和輸入參考雜訊,如圖 7.6 所示。
  • 79. 79 圖 7.5 雜訊譜圖輸出 圖 7.6 雜訊譜圖 7.3 週期性的雜訊分析及參數設置 週期性的雜訊分析主要使用“Pnoise analysis” , 即 “ Periodic Noise Analysis” 。 “ Pnoise analysis” 和傳統的雜訊分析類似,只是它還包含了頻率的變換效應。所以,用它來類比例如混頻器、開關電 容濾波器以及其他一些週期性的電路的雜訊行為很有用。它特別在類比自激電路,例如振盪器的相位 雜訊時很有用。 在進行“Pnoise analysis”模擬之前,必須先做“PSS analysis”的模擬。“PSS analysis”是在 一個指定的基波頻率下計算電路的週期性穩態響應,而且模擬時間與電路的時間常數無關。 “ PSS analysis”決定了電路的週期性工作點,而這恰恰給“PAC” , “ PSP” , “ PXF”和“Pnoise”這些
  • 80. 80 模擬提供了起點。“PSS analysis”在自激電路和非自激電路中都可以工作。 然後,“Pnoise analysis”以在之前做的“PSS analysis”中的找到的工作點進行線性化,而正 是由於被線性化後的電路的週期性隨時間變化才產生了頻率的變換。此外,電路中各種元件由於工 作點週期性隨時間變化而產生的雜訊也被包含在內。 這樣,在電路輸出端的時間平均雜訊就以頻譜的形式計算和表現,同時,在指定電路的輸出時 可以是一對接點或者一個探測點。下面以一個振盪器的雜訊分析為例說明“PSS analysis”和“ Pnoise analysis”的具體使用。 打開“PSS analysis”視窗,可以看到如圖 7.7 所示的視窗。
  • 81. 81 圖 7.7 “PSS Analysis”設定 • 在“Fundamental Tones”欄中設置“Beat Frequency”或者“Beat Period”,兩者互為倒 數關係,這個“Beat Frequency”應該設為接近振盪電路的振盪頻率。 • 在“Output harmonics”中有四個選項“Number of harmonics” , “ Select from range” , “ Array of coefficients”,和“Array of indices”。選擇“Number of harmonics”,然後在旁邊的欄 中輸入一個合適的數字。 • 在“Accuracy Defaults”中選擇“moderate” 。 • 選擇“Oscillator”,表示我們模擬的是一個震盪器電路。在“Oscillator node”中點擊 “Select”,在電路原理圖中選擇震盪電路的輸出埠。“Reference node”可以不選擇,表 示默認的“gnd”端。 這樣,“PSS analysis”的設置就完成了。下面對“Pnoise analysis”進行設置,如圖 7.8 和 圖 7.9 所示。 • 在“Sweep type”中選擇“Relative”,然後再右邊的“Relative Harmonic”中填入合適的 數字,它表示相對於基波頻率的偏離範圍。 • 在“Frequency Sweep Range”中選擇“Start-Stop”,填入起始和終止的頻率。 • 在“Sweep Type”中選擇“Logarithmic”,在其右邊選擇“Points Per Decade”,填入合 適的數位。 • 在“Sidebands”中選擇“Maximum sideband”,填入合適的數位,它的預設數位為 7。 • 在“Output”中選擇“voltage”,在右邊的“Positive Output Node”選項中點擊“Select” , 在 電 路 原 理 圖 中 選 擇 震 盪 電 路 的 輸 出 端 。 “ Negative Output Node”選項可以不選擇,表示默認的 “gnd“端。 • 在“Input Source”中選擇“none” 。 這樣, “ Pnoise analysis”的設置就完成了。在完成了對“PSS analysis” 和 “ Pnoise analysis” 的設置之後,就可以進行電路的模擬了。如果要查看模擬的結果,可以用“Results7Direct Plot7Main Form”進行查看。 在“Analysis”中選擇“pss”,在“Function”中選擇“Harmonic Frequency”,就可以得 到圖 7.10 所示的震盪器的基波頻率和高次諧波頻率。 如果在如圖 7.11 所示的“Analysis”中選擇“pnoise” , 在 “ Function”中選擇“Phase Noise” , 點 擊 “ P l o t ”,就可以得到震盪器的相位雜訊曲線,如圖 7.12。
  • 82. 82 圖 7.8 “Pnoise analysis”設置[1] 圖 7.9 “Pnoise analysis”設置[2] 圖 7.10 基波頻率與高次諧波頻率
  • 83. 83 圖 7.11 雜訊譜圖的設定 圖 7.12 雜訊譜圖 7.4 諧波失真的模擬設置 我們還可以用“PSS analysis”來模擬電路的“Harmonic Distortion”,即諧波失真。這時, “ PSS analysis”的設置區別於震盪電路的設置,因為這時電路是有輸入信號的。我們以圖 7.13 中的全 差分運算放大器為例說明如何來模擬諧波失真。
  • 84. 84 圖 7.13 用於諧波失真模擬的全差分電路 因為在電路中加入了交流的信號,所以在打開“PSS analysis”的時候如圖 7.14,在“Fundamental Tones”中已經出現了我們設置的交流信號,然後我們可以選定“Auto Calculate”來設定“Beat Frequency” 。 圖 7.14 諧波失真模擬的設定 然後,如圖 7.15,在“Output harmonics”中選擇“Number of harmonics”來設定高次諧波的 數量,然後在“Accuracy Defaults”中選擇“moderate”。而這時,“Oscillator”這一項就不需要 選擇了,因為我們不是模擬震盪電路。最後,確定即可。
  • 85. 85 圖 7.15 高次諧波的數量設定 運行模擬之後,同樣用“Results”7“Direct Plot”7“Main Form”來進行模擬結果的查看。如 圖 7.16,在快顯視窗的“Function”選項中選擇“Voltage”,也可以根據自己需要選擇不同的功能 。然後在“Select”選項中,分別有“Net” 、 “ Differential Nets”和“”三個選擇項,因為我們模 擬的是全差分運算放大器,所以選擇“Differential Nets” 。 圖 7.16 模擬結果的輸出設定[1] 然後,如圖 7.17 在“Sweep”項中選擇“Spectrum” , “ Signal Level”選擇“peak” , “ Modifier” 選擇“dB20”,設定完成之後,就可以在電路原理圖上選擇輸出端來得到諧波失真的結果。波形如 圖 7.18 所示。
  • 86. 86 圖 7.17 模擬結果的輸出設定[2] 圖 7.18 諧波失真 全差分運算放大器可以抑制電路的偶次諧波,但是當輸入信號頻率比較高時,抑制能力會減 弱。圖 7.19 給出了輸入信號頻率從 1M710M715M 後,諧波失真的模擬結果。 圖 7.19 輸入信號頻率的變化與諧波失真的關係
  • 87. 87 第 8 章 波形計算器(Waveform Calculator)的使用 8.1 “Waveform Calculator”簡介 “Waveform Calculator”是一個科學計算器,有代數和逆波蘭(RPN,Reverse Polish Notation) 兩種工作模式。通過 Calculator 可以實現以下功能: [1.] 可以在“Calculator”中創建、列印和顯示包含模擬輸出資料的運算式; [2.] 在緩存中輸入包含節點電壓、埠電流、直流工作點、模型參數、雜訊參數、設計變數、數 學公式以及演算法控制變數的運算式。 [3.] 把緩存中的內容保存的記憶體中,並可以把記憶體中保存的內容重新讀入到緩存中; [4.] 把記憶體中的內容保存到檔中,並可以把檔中保存的內容重新讀入到記憶體中。 下文所介紹的內容,是基於熟悉代數或逆波蘭科學計算器語法規則。如果不知道如何在這兩 種計算器中輸入運算式,請參考科學計算器的使用手冊。 “Calculator”中的所有函數都有對應得SKILL 命令,具體內容可以參考“OCEAN Reference” 。 8.1.1 “Calculator”介面介紹 圖 8.1 說明了“Calculator”介面中各個區域和按鍵的功能。 圖 8.1 “Calculator”介面及功能