Motorola公司:Simulink的強(qiáng)大仿真能力
加速了測(cè)試過程
在 Motorola 的無線用戶系統(tǒng)部的設(shè)計(jì)中心里,工程師在設(shè)計(jì)混合信號(hào)鎖相環(huán)系統(tǒng)時(shí)需要通過削減仿真運(yùn)行時(shí)間和提高仿真能力加速設(shè)計(jì)周期。在和他們的混合信號(hào)在回路仿真器比較過后,證明 Simulink 擁有最快的仿真速度而且同時(shí)提高了仿真效果,于是 Motorola 選擇了Simulink。
市場(chǎng)的挑戰(zhàn)
在 Motorola 無線分部的設(shè)計(jì)中心,進(jìn)行混合信號(hào)鎖相環(huán)仿真的工程師們時(shí)遇到了仿真時(shí)間長(zhǎng)、仿真精度低的困難。
Motorola 無線分部開發(fā)組的工程師使用鎖相環(huán)進(jìn)行載波跟蹤、閾值擴(kuò)展,線性解調(diào)、幅值檢測(cè)以及信號(hào)同步。當(dāng)混合電路中使用了鎖相環(huán)并且工作在較高頻段上時(shí),快速而又不失精度的仿真變得非常重要,這樣才能滿足項(xiàng)目開發(fā)進(jìn)度的要求。Motorola 采用晶體管級(jí)的混合模式 SPICE/Verilog 模型仿真需要兩天的時(shí)間。Motorola 新定的指標(biāo)要求對(duì)一個(gè)有 600 個(gè)晶體管的模型仿真時(shí)間不能超過兩個(gè)小時(shí),模型分辨率仍然要求達(dá)到兆分之一秒,并且允許進(jìn)行噪聲仿真,仿真軟件要支持多平臺(tái),開放性要好。
一個(gè)鎖相環(huán)必須建成為數(shù)字和模擬子系統(tǒng)的混合模型,才能準(zhǔn)確預(yù)測(cè)類似在時(shí)鐘周期上的毛刺現(xiàn)象(cycle-to-cycle jitter),并能夠分析噪聲對(duì)鎖相環(huán)性能的影響。一個(gè)成功的仿真軟件必須能夠處理混合信號(hào),對(duì)噪聲信號(hào)進(jìn)行精確描述,并能夠有效地進(jìn)行眾多時(shí)鐘周期的仿真。
"我們一直在尋找這樣的工具來幫助我們完成項(xiàng)目要求并且能滿足 Motorola 內(nèi)其它項(xiàng)目組的要求", Motorola 鎖相環(huán)項(xiàng)目組負(fù)責(zé)人 Jeff Ganger 這樣說。
為了達(dá)到這樣的目標(biāo),開發(fā)組分析比較了眾多用于鎖相環(huán)仿真的模型,如SPICE/Verilog 模型,Simulink 及混合 Simulink/C 模型。工程師首先試用了較高版本的 SPICE/Verilog 仿真器,仿真一個(gè) 100 個(gè)晶體管的模型花了近兩個(gè)小時(shí)。由此可估計(jì)出一個(gè) 600 個(gè)晶體管模型將花約 10 個(gè)小時(shí),這超出了項(xiàng)目指標(biāo)要求。
解決方案
開發(fā)組終于找到了滿足他們要求的仿真軟件,MathWorks 公司高性能的行為級(jí)仿真環(huán)境 - Simulink。Simulink 是混合信號(hào)仿真的理想工具,是因?yàn)樗梢灾苯邮褂肕ATLAB中先進(jìn)的處理算法,以及 Simulink 可以精確地檢測(cè)到模擬信號(hào)的不連續(xù)點(diǎn)而又不影響仿真速度。初步的測(cè)試表明,Simulink 只需 10 分鐘就完成了 100 微妙具有兆分之一秒分辨率的仿真。工程師們立刻就把選用SPICE模型的可能性排除掉。
Motorola 決定采用 MATLAB 和 Simulink 是基于這樣一個(gè)事實(shí):除了采用Simulink 模型就可以滿足項(xiàng)目組的速度要求外,只有 Simulink 能夠提供他們所需要的功能,支持模擬/混合信號(hào)系統(tǒng),大量的功能塊庫。
"Simulink 模型在滿足仿真速度的要求下超過了項(xiàng)目的指標(biāo)精度,"Motorola 電路設(shè)計(jì)師 Yuan Yuan 說,"現(xiàn)在精確的仿真只需要幾分鐘,而不是幾小時(shí)或幾天。"
成果與效益
在采用純粹的Simulink模型就可以滿足了項(xiàng)目組的要求后,工程師們接著利用Simulink的混合信號(hào)的能力研究仿真速度和分辨率的關(guān)系。他們進(jìn)一步通過用離散估計(jì)模型代替模擬器件模型,并通過實(shí)時(shí)代碼生成工具產(chǎn)生C代碼進(jìn)行仿真,仿真時(shí)間只需要2.5分鐘,遠(yuǎn)遠(yuǎn)低于指定的指標(biāo)。
(轉(zhuǎn)載)