加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

模擬混合驗證官︱Table Model是什么?可以和大數(shù)據(jù)聯(lián)系起來

2017/05/13
13
閱讀需 33 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

?

除了剛才介紹的 Model 的級別,還有一個非常另外的一種思路,“TableModel”的存在,它有點類似于大數(shù)據(jù)的概念。傳統(tǒng)的 Model,尤其需要用 Analog 仿真器的 Model,一般都先是根據(jù)器件的物理特性做的參數(shù),有物理的概念在里面,還要考慮高階效應,更要考慮 Model 的數(shù)學表達式的連續(xù)性和光滑性、使得盡量少的出現(xiàn) Convergence 的問題。所以有時候和 Silicon 的吻合程度就不一定那么高。

而 Table Model 呢?我才不去想那些亂七八糟的各種物理學特性呢,我直接把 Silicon 測試出來的數(shù)據(jù)都列舉出來,建立一個數(shù)據(jù),你在什么樣的溫度、電壓下有什么 Silicon 數(shù)值表現(xiàn),我就直接寫到表格里面;到時候仿真器用的時候直接查表就行了?;蛘呶也挪?Care 你電路是怎么用 Transistor 大器來,也不管你是一個比較器,還是一個 Amp,我只關(guān)心你輸入什么值,能輸出來什么值就行了;至于他們之間的數(shù)學表達式關(guān)系,你以前是可以用 VerilogA、VerilogAMS 寫,而在我這里,你不用想他們的數(shù)學表達式了,我不在乎!我有表,一表在手,有 input 有 output。

看看 Table Model 的表現(xiàn),你是不是想起來一本書?那就是《大數(shù)據(jù)時代》,它的作者舍恩伯格就曾經(jīng)指出過一條有意思的理論,那就是在當今信息和數(shù)據(jù)極大豐富的時代,咱們在逐步放棄對因果關(guān)系的過分渴求,取而代之去關(guān)注“相關(guān)關(guān)系”;也就是說不需要知道“為什么”,而是強調(diào)知道“是什么”。不去看量子力學的各種效應,不去想 MOS FET,電容電阻的物理特性,只是根據(jù)實際測試到的 silicon 的數(shù)值,直接做一個數(shù)據(jù)庫,當外界加什么電壓、有什么溫度時候,就來什么對應的輸出電流等。這就類似于大數(shù)據(jù)的概念,不關(guān)心為什么,只在乎是什么。用互聯(lián)網(wǎng)的里面的熱詞,來理解半導體行業(yè),我自己寫出來的時候也是醉了。

當然 Table 不可能窮盡所有的數(shù)據(jù),所以對于沒有在 table 里面的數(shù)據(jù),仿真器需要插入數(shù)值(interpolate)或者外推推斷數(shù)值(extrapolate) ,這也是一個技術(shù)活,我們以后有空可以講講??傊?,TableModel 可以做的和實際的 silicon 測試出來的數(shù)據(jù)一模一樣了;不過它也有短板,那就是連續(xù)性和光滑性,畢竟它是分離的數(shù)據(jù)。對于 Digital 自然是喜歡的,Analog 仿真器還是需要處理。

4.Model 前一定要 plan!plan!plan! ?
花了這么大的篇幅介紹完了 Model 的種類、讓大家對 Model 的花樣心中有數(shù)之后,我再回過頭來強調(diào)一件事情,那就是做 Model 一定要 Plan!好多 Model 的教材,都會把 Plan 作為第一章節(jié)的頭等重要事情強調(diào)一遍,可見其是多么重要。而我把 Plan 放在這里,就像是你去商店買手機,我先給你介紹完蘋果、華為、小米的各種好壞處,讓你有一個大致了解之后,再去真正想你所關(guān)心的是什么;也就是你做 Model 到底想“洞見”什么。這也是戰(zhàn)略性的事情,要想,想清楚。

做 Model 前一定要 plan!plan!plan!? 重要事情說三遍。Plan 這種事情,說起來很容易,大家也大概知道是什么意思。但是這個東西又有時候比較虛,你學習了一句語法怎么寫,然后你盡快應用到了實際中,這種療程短、見效快,所以喜聞樂見。但是 plan 呢,你讀了 plan 的大致內(nèi)容,Cadence、老板等也教了你一些方法,但是這些都是療程長、見效慢的東西,沒有日積月累,很難突破。但是這種就像是電腦的操作系統(tǒng),在最底層,平時看起來最不起眼,但是這種東西一旦升級好了,就是融會貫通,就是“質(zhì)”的飛躍。

Model 是有好多好處,把仿真速度提高、把精度提高、可移植性(Portability)好、能夠在項目初始階段就做整體仿真、能讓數(shù)字模擬工程師結(jié)合起來,讓軟硬件工程師結(jié)合起來…問題是你最關(guān)心的是什么?哪個級別的 Model 是你所需要的,是你的 DVPlan 里面最最在乎的?

包括整個 IC,在做設計的時候,要做好 Block 劃分;非常復雜的 blocks 要在細分可以 manageable 的 sub-blocks;如果一個 Block 準備用 Model 代替了,那么這個 Model 下面,就基本不要再包含電路了。如果一個 Block 的 transistor level 的各種 detailed 的信息都很重要,那就不用 Model 了,直接用 schematic 好了;如果做 Model,一定要搞清楚為了啥。一定要想清楚 DV 在這里是 Test 什么的,Model 到能夠 Test 就行了。

?


Model 是否需要統(tǒng)一的規(guī)范?因為你今天做個 Model,明天還想著 Reuse 呢。但是一旦想統(tǒng)一規(guī)范,可能就需要花費更長的時間和精力,你們項目允許么?長遠看值得付出不?哪些 Model 不要弄?例如對于非線性的 Non-linear 可能要考慮下是否可以轉(zhuǎn)化為線性的。對只有弱相關(guān)的東西(weak dependencies)可以近似成一個常數(shù);對于 delay,除非對 Function 比較重要,否則一般都不需要 Model。如果進入一個 Model 的 inputcontrol/signal 不符合 Model 里面的預期,是否就要有 assertion,就要報錯。

總之,哪些要 Model,哪些不 Model,Model 到什么級別,Model 和 Design 的關(guān)系等等,都需要 Plan。下手吭哧吭哧具體干活前,把 Plan 想清楚,才能讓功夫花在刀刃上。我挺喜歡獵豹傅盛有篇文章里面提到的一個圖(見下),做事情把想法想清楚,Plan 做徹底,那么在相同的時間內(nèi),行動的斜率就高、收獲就大。所以做 Model 前一定要 Plan!
?


5. 對寫出來的 Model“不”做驗證,就是耍流氓
只寫出來 Model,而不對 Mode 進行驗證,這就是耍流氓。就像只生孩子、不養(yǎng)孩子,這就是耍流氓。

對 Model 的驗證,包括利用相同的 TestBench,對于 Model 和 Schematic 出來的結(jié)果的驗證。驗證 Model 和電路類似,有 Block 級 Schematic 和 Model 的吻合,還有 Sub-System 能夠能通暢的利用 Model 仿真、以及 Model 和 Sub-System 的吻合。更有 Model 和整個 Top 的吻合度。當對 Schematic 做各種加法、形成 Model 的時候,其實在項目中,很多時候是在流片回來之后,為了和測試吻合,把 Schematic 上面加各種東西而形成的 Model。

6. Model EDA 方面,Cadence 有 SMG 和 amsDmV 工具
Cadence 確實給了很多 Model 的例子。如果大家用的是 Cadence 家給的工具的話,以下路徑就有例子:
/ICXXX/tools/dfII/samples/artist/bmslib

SMG
Cadence 為了能夠讓喜歡”Graphical”的 Analog 工程師寫代碼方便點,開發(fā)了一個 Schematic Model Generator 的工具,在 Virtuoso 里面:CIW--> tools --> Behavior Modeling --> Schematic Model Generator。

它的主要好處是把一些 pin,你自己定義好了,他們給你最規(guī)范的 code;另外就是提供了一些很多內(nèi)置的 Model 的小模塊 BBT(BuildingBlock Text),其實就也是一些 example 的 code,然后讓你自己根據(jù)自己的 schematic,利用這些 BBT 積木,去搭建城堡。

不過,注意,請注意,工具目前還是不能完全支持一個“schematic 進、code 出”的 So 智能的活兒;參見 Cadence 給的下圖。ADVer,你們做 Model 的工作,暫時計算機還是代替不了的。

amsDmv
前面說過了,不做驗證的 Model 上來就用,這就是耍流氓。所以做 Model,肯定要和 Schematic 去吻合。用相同的 TB 打打,看看關(guān)心的結(jié)果是否符合預期。問題是很多 Schematic 經(jīng)常變,Model 本來做完了,可以伸伸懶腰打打哈欠,大功告成了;結(jié)果 Designer 又變化東西了;怎么讓這種反復迭代輕松點?Cadence 又給了一個工具,叫 amsDmv(AMS Design and Model Validation):在 Virtuoso 里面:CIW--> tools --> Behavior Modeling --> Model Validation。

它可以利用 ADE 的結(jié)果,去比較你關(guān)心的 schematic 和 Model 仿真的波形,可以設置兩者結(jié)果比較的精度 tolerance,以及踢掉不想比較的東西(exclude)等;更可以做最基本的 Pincheck 等。

以上兩個 Tool,調(diào)查周圍朋友的結(jié)果是:用的人很少。Cadence 的一些培訓教材也把它們標志成 Optional 的章節(jié)。

小結(jié)
以上就是本次文章關(guān)于 Model 的整體概述。感謝朋友們對本文的建議和意見;歡迎更多公眾號朋友提供反饋(可惜我還木有被微信團隊認定為原創(chuàng)公眾號啊,所以只能消息留言了;微信公眾號背后的神秘團隊,請審核我是原創(chuàng)?。?。下期節(jié)目我們將深入一個技術(shù)細節(jié),談一個在 VerilogAMS 和 RVM Model 中,發(fā)揮著重要作用的一個 KeyWord,叫 Wreal。

與非網(wǎng)原創(chuàng)內(nèi)容,不經(jīng)允許,不得轉(zhuǎn)載!

系列匯總:

之一:談模擬混合信號設計驗證?先從這個職位說起吧!

之二:DV 這個職位不是說服了老板就能招到人!

之三:DV 說"鬼知道我經(jīng)歷了什么?”

之四:模擬混合驗證如此重要,ADV 的前輩們也非等閑!

之五:Model 的本質(zhì)目標就是“時間+精度”

之六:做 Model 就做兩件事:做加法、做減法


?

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

畢業(yè)于浙江大學信電系為電子系、超大所,曾經(jīng)從事模擬電路設計工作,目前在知名外企進行模擬混合混合信號設計驗證。個人愛好:寫作并分享。個人微信公眾號:模擬混合信號驗證(yaliDV)。