使用sed取代ADS檔案路徑

最近實驗室正在畢業潮(已羨慕),學長們約定俗成要把自己的設計燒成一片光碟傳給學弟……喔或是學妹。 一般習慣不好的話,在ADS 的設計檔裡,會包含很多絕對路徑的內容,這樣這個設計project就變得難以移植。 以我隔壁超強的同學「瓦哥」為例,過去的電磁模擬記錄會這樣寫 D:\Program Files (x86)\Sonnet\0.18um_m\transformer\PA\sonnet\Stack_PA\XXX.snp 移到別的電腦就找不到這些電磁模擬檔。 比較好的做法是把電磁模擬放到ADS的project資料夾內,例如新建一個EM的資料夾,然後用相對路徑去存取: EM\Stack_PA\XXX.snp 就能確保模擬檔的可移動性。 那如果已經做完了,難道要一個一個改嗎? ADS的設計是記錄在dsn文字檔裡面,這類文字檔的操作其實也很簡單,在ADS project的networks資料夾,改掉dsn裡面的檔案即可: 用 sed 一行解決,加上for loop 輕鬆寫意,就跟喝水一樣輕鬆: for i in *.dsn; do sed -i 's/XXX/yyy/g' $i; done 缺點:Unix 限定……,windows我還真想不出解法,可能要用python, mingw,不然powershell可能有類似的功能? 當然要一個檔案一個檔案打開來改也不是不行,只是很不smart就是。...

 August 7, 2014 |    microwave  |    ADS  | 1 min  |  YodaLee

ADS Export to Origin converter

最近在準備一些學校報告用的投影片,在學長主持的小咪報告之後,學長表示

你這幾頁的圖,如果之後要放論文的話,就乾脆用Origin重畫

好吧學長都這樣說了,就來畫畫Origin的圖wwww
不過秉持著用開源軟體的精神,還是找了一下,結果就在的作敏學長的blog 裡面找到 qtiplot 這個開源繪圖軟體,跟Origin的功能幾乎差不多。

...

ADS小電路模擬設定

個人用ADS喜歡把電路的小塊小塊變成一個個模組(component),比如說device建成一個模組,matching network建成一個模組,dc bias 的bypass電路建成一個模組。

...

將sonnet檔轉換到virtuoso上

做高頻電路討厭的就是,頻率太高的情況下,寄生的電容電感會在電路各處藏汙納垢(XD)。
所以在設計的過程,就需要跑很多電磁模擬,把這些寄生的效應一併考慮到模擬之中。
(會吃你一堆電腦的記憶體跟花一堆時間,這也是我為什麼有時間打這篇文章的原因,哈哈)
麻煩就在於,每次在電磁模擬軟體(實驗室用Sonnet)上畫完架構,然後開始跑,確定結果沒錯之後,又要在電路下線的軟體(實驗室用Virtuoso)上畫一遍。 最近學到,該怎麼把sonnet上的檔案匯到virtuoso上面,在這裡記錄一下。

...

放大器的級間穩定

做多級的RF的放大器時,除了看一般的stability factor K值外,還需要去測試電路每級放大器的級間穩定。
實驗室一直遵照學長流傳下來的投影片: 將電路從中切開,一邊看stability circle,另一邊看ADS裡面的「Map1 circle」跟「Map2 circle」這個東西, 然後看看兩個圓有沒有相交在一起,可是這個Map 1/2 circle是啥鬼東西?極間穩定又是什麼?

...

傳輸線穩態解與暫態解

這幾天在讀電磁學,發現一個自己沒想過,卻滿基本的問題:
我們先拿一個最芭樂的傳輸線模型,如下所示:

transmission_line

現在假設 Vg=1V,Zs = 50Ω,Z0=50Ω,ZL=25Ω,線長λ/4(懶…選個簡單一點的數字) 請問從傳輸線入射的功率為?

解法一:在Zs和傳輸線的交點分壓 P = ½ * ( 1 * 50/(50+50) )^2 / 50 = 2.5mW
解法二: 25Ω經過傳輸線得到Zin = 100Ω,與Zs=50Ω分壓去解,得到2.222mW

為什麼兩個答案是不一樣的?

...

bypass與測試線小技巧

無論是放大器、主動混頻器還是振盪器,都需要外加電線才能運作 這時候我們就面臨到一個問題: 當你接一個DC的電線到電源,這段線的長度非常長 即便DC電源是個理想的ground,經過這麼長的線,各頻率的阻抗會散開到smith chart的整個圓周上。

因此需要有方法在DC的位置創造一個理想的 ground 方法很簡單,用並聯的電容即可,並聯的電容對RF信號來說, 就像直接short到ground一樣。
也可以說,電容會隨信號充放電,達到穩定的效果,對於愈高頻的電路,電容就要愈小。

...