ads design environment_ADS应用技巧3 — 画一个巴伦有多少种方法?
為什么ADS的Schematic不允許多任務仿真(即如果一個Schematic的仿真任務沒完成,就不允許任何Schematic啟動新的仿真);而Layout卻允許同時運行一大堆EM仿真。
按理說,Schematic仿真相比于EM仿真占用更少的CPU和RAM等計算機資源,更應該支持多任務仿真才對啊?
前期已經分兩篇文章介紹了一些巴倫相關的知識:MMIC設計系列原創文章——巴倫1、巴倫2;當時提到繪制巴倫有很多種方法,暫時只介紹了一種純手繪的方法,缺點很明顯:不能參數化,調整優化費時費力。本期就來數一數畫一個下圖這種巴倫究竟有多少種方法。
一、純手繪
參考:MMIC設計系列原創文章——巴倫2。
二、將手繪圖形參數化
在手繪巴倫的基礎上,可以通過簡單的拉伸、旋轉、鏡像等操作得到一個簡易的參數化單元(pcell)。
在Layout窗口選擇【File】-【Design Parameters】:
在Cell Parameters標簽欄定義需要參數化的變量(l1,l2,l3):
通過菜單【Insert】-【Construction Line】給當前圖形添加幾根構造線,它是后續圖形拉伸變換的參考基準:
選中左側構造線及其左側所有圖形,再選擇菜單【Tools】-【Macro】-【Strech】,向左側的拉伸長度為l1-200um(如果l1=200um,為當前圖形的默認長度,不會被拉伸)
選中右側構造線及其右側所有圖形,再選擇菜單【Tools】-【Macro】-【Strech】,向右側的拉伸長度為l1-200um(如果l1=200um,為當前圖形的默認長度,不會被拉伸)
選中下側水平構造線及其上側所有圖形,再選擇菜單【Tools】-【Macro】-【Strech】,向上側的拉伸長度為l2-200um(如果l2=200um,為當前圖形的默認長度,不會被拉伸)
選中中間豎直構造線及其左右兩側所有圖形,再選擇菜單【Tools】-【Macro】-【Strech】,向左右兩側的拉伸長度為l3-100um(如果l3=100um,為當前圖形的默認長度,不會被拉伸)
選擇菜單【Tools】-【Macro】-【Compile】對圖形進行編譯即可完成參數化:
下圖是操作得到的一個pcell,支持l1/l2/l3長度縮放,但線寬、線距、匝數不能通過此方法參數化,因此功能有限:
三、利用微帶元件組合
如果你使用的PDK提供了基本的微帶元件:微帶傳輸線、平行耦合線、過孔,這些元件都是參數化的,通過它們組合得到的巴倫就可以參數化,之所以需要平行耦合線,是因為一次側和二次側的線圈是獨立的,單根微帶線無法固定兩個線圈之間的相對位置關系。這種方法還可以將線寬和線間距參數化,但不支持線圈匝數參數化。
四、利用LineType自定義線型
如果你的PDK沒有平行耦合線等微帶元件,可以先利用ADS自帶的LineType元件來自定義微帶元件,再利用定義好的微帶元件組合得到參數化的巴倫,方法同三。
從Tlines-LineType元件庫中選擇需要的線型,這里以兩條平行耦合微帶線為例。
由于當前還沒有定義線型,已有線型列表里沒有可選項,因此選擇【New】新建。
在添加線型的對話框里設置好名稱(例如:cpl2)、電路模型、端點形狀、引用襯底、線條數目、線寬、圖層、線距等參數。具體參考ADS的help文檔。
點擊【OK】后回到元件參數窗口就可以選擇剛才定義的線型了,這時候就可以用變量指定該元件的所有參數:w、s、l等。
類似的方法可以定義出所有需要的微帶元件,然后即可按找方法四組合得到參數化的巴倫。這種方法仍然不支持匝數可變。
五、利用AEL定義pcell
AEL全稱Application Extension Language,是ADS提供的一種應用擴展語言,與C語言的語法很類似。
Application Extension Language (AEL) programming language, modeled after the popular C programming language, is used to configure, customize and extend the capabilities of the design environment. Like C, AEL has an extensive set of built-in function libraries, including functions for file input/output, math, string manipulation, list handling, and database query.AEL can be used for:Organizing libraries and palettes of components.Defining the interface to new user-defined components.Creating new components with layout artwork.Defining custom layout artwork functions.Defining the interface to discrete-valued simulation components.Creating custom utility functions, such as parts list generators and bill of materials.Automating?routine?tasks,?such?as?repetitive?command?sequences,?batch?analysis,?or?optimizations.
然后ADS還有一個GCC,然而此GCC并非程序員熟悉的那個大名鼎鼎的GNU C Compiler:
The Graphical Cell Compiler (GCC) is a tool within Advanced Design System that makes the job of adding parameterized artwork to a layout an easy process. The GCC can benefit Productivity Engineers as well as Circuit Designers:For Productivity Engineers, the GCC simplifies developing a library of parts for use by circuit designers. Using GCC you can develop and troubleshoot various parts much faster than by developing the AEL macros. Engineers can use AEL to do further customization if the engineers know how to program in AEL.Circuit Designers can use the GCC to create a special model quickly, without the need to know any AEL.
利用AEL和GCC就可以自定義任意的parameterized artwork,這主要是PDK開發人員常用的工具,高級玩家想要DIY還是得花時間琢磨一下。本來計劃寫一篇專題,正巧網上搜到了幾個教程,直接搬過來了:
https://muehlhaus.com/support/ads-application-notes/ael-artwork
https://muehlhaus.com/support/ads-application-notes/ads-miniaturized-bpf-ael
這是那位大佬自定義的異形小型化濾波器pcell:
這是我自定義的巴倫pcell,一共定義了五個參數:匝數n、線寬w、線距s、x方向外邊長l1、y方向外邊長l2、左右側間距l3。
,
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的ads design environment_ADS应用技巧3 — 画一个巴伦有多少种方法?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode 1 --- 两数之和
- 下一篇: linux 系统 可视化工具实时监控_L