數(shù)字器件的MAST模型ppt課件_第1頁
數(shù)字器件的MAST模型ppt課件_第2頁
數(shù)字器件的MAST模型ppt課件_第3頁
數(shù)字器件的MAST模型ppt課件_第4頁
數(shù)字器件的MAST模型ppt課件_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、數(shù)字器件的MAST模型模擬器件模型的仿真特點 在SABER中很多時域器件模型都是模擬器件,即在作時域分析時的時間變化是延續(xù)的,但是在仿真時也是將延續(xù)函數(shù)離散化,其離散點就是仿真的步長。在通常情況下,仿真器的步長是根據(jù)仿真精度來確定的。也可以運用仿真器變量來控制仿真的步長。數(shù)字器件模型的仿真特點 在SABER中,用MAST言語建立數(shù)字器件模型就是在模型中控制仿真器的下一個仿真點。數(shù)字器件形狀的變化時辰及變化結(jié)果是比較關注的,而形狀的變化過程是不太關注的。 在數(shù)字器件模型中最關鍵點就是在模板體中建立when段。數(shù)字器件模型數(shù)值的特點 數(shù)字器件模型在時間上是不延續(xù)的,在數(shù)值上也是離散的。在SABER

2、中有兩類類型提供數(shù)字器件的離散數(shù)字量。logic_4和logic_3。它們的值分別是:logic_0, logic_1, logic_x, logic_z。其中l(wèi)ogic_x為不確定形狀,而logic_z為高阻形狀。 定義: state logic_4 cp1,cp2銜接點特點銜接點特點形狀轉(zhuǎn)換、形狀轉(zhuǎn)換、事件特點事件特點仿真過程特點仿真過程特點前往初始化前往初始化數(shù)字器件模型中常用術(shù)語和銜接點的特點 truefalse, HIGHLOW, onoff closedopen, 10 在模擬器件中定義了一個銜接點就等價地定義了一個量綱和一對變量across變量和through變量),而在數(shù)字器件

3、中定義的銜接點就定義了量綱和形狀(state),其銜接點類型為state,它表示一組數(shù)字,與各個離散時辰銜接起來。前往前往數(shù)字器件模型事件的特點 事件是數(shù)字器件端點在指定時辰從一個形狀過渡到另一個形狀,而這種過渡過程也是指定的。 建立的數(shù)字器件模型時,必需求在模板器件的端點指定事件,否那么仿真器將無法進展仿真前往前往數(shù)字器件仿真過程的特點 SABER仿真器對數(shù)字器件的仿真是基于事件隊列而不是基于事件步長,SABER仿真器根據(jù)設計需求對一切需求計算的數(shù)字模板的事件進展自動排序。而when段的執(zhí)行完全依賴事件隊列的事件,假設在事件隊列中沒有事件存在,那么模板體中的when段將不能執(zhí)行。WhenWh

4、en段段常用函數(shù)常用函數(shù)初始化初始化when段的特征 when段是在數(shù)字模型中常用的段,而在模擬器件模型中不用這個段。對于模擬器件模型的端點特征通常都是在方程段中進展描畫,在方程段中的方程總是與var變量或pin-type型變量聯(lián)絡在一同的。在數(shù)字器件中的when段的作用與模擬器件方程段的作用類似,它也是來描畫數(shù)字器件端點特征的。when段作用的特征 when段是一個操作段,該段的操作總是和時間聯(lián)絡在一同的,即在什么時候操作。它可以離散模擬信號,操作數(shù)字信號,測試模擬波形穿越門檻,確定觸發(fā)事件,確定仿真器的時間等。 when段的定義 when(condition)statements 定義wh

5、en段的關鍵詞為when,條件將被監(jiān)測,一旦條件滿足就將執(zhí)行函數(shù)體中的statements。但是,在when段中運用的條件總是和時間聯(lián)絡在一同的,在when段中的條件總有時間的概念。前往前往數(shù)字器件模型中常用函數(shù) 在數(shù)字模板中常用的概念是事件,其很多過程都是由事件觸發(fā)的;而與事件相關的觸發(fā)函數(shù)為schedule_event; handle; event_on; deschedule。其中前兩個函數(shù)為事件設置函數(shù),event_on為事件監(jiān)視函數(shù),deschedule函數(shù)為事件解除函數(shù)。 只需當對象設置為事件后,event_on和deschedule函數(shù)才可以用。事件設置函數(shù)事件設置函數(shù)事件監(jiān)視函

6、數(shù)事件監(jiān)視函數(shù)事件解除函數(shù)事件解除函數(shù)前往到過程特點前往到過程特點事件驅(qū)動函數(shù) 在事件驅(qū)動函數(shù)中shedule_event和handle函數(shù)的用法如下: schedule_event(3u,out1,l4_0) handle = schedule_event(3u,out1,l4_0) 上述函數(shù)就是在指定時辰對指定的變量進展賦值,函數(shù)中的第一個變量為指定時辰,第二個變量為指定變量,第三個變量為指定變量。上述第二函數(shù)前往了一個函數(shù)的句柄。事件驅(qū)動函數(shù)與普通賦值的區(qū)別 從上述表達中可以看出,從外表上看事件驅(qū)動函數(shù)schedule_event就是一個賦值函數(shù),只不過schedule_event與指定

7、的時辰有關,其實,用事件驅(qū)動函數(shù)schedule_event賦值與普通的賦值函數(shù)有本質(zhì)的區(qū)別。用schedule_event函數(shù)賦值是將對象設置進了event隊列中。前往前往事件監(jiān)視函數(shù) event_on(state_var ,old_var)函數(shù)可以有兩個變量,其中第二個變量為可選項。該函數(shù)中的state_var變量為被監(jiān)視變量,當監(jiān)視的對象事件發(fā)生時,該函數(shù)的前往值為1,同時將事件發(fā)生前state_var變量的值賦給old_var變量,否那么該函數(shù)的前往值為0。該函數(shù)通常作為when段的條件運用,該函數(shù)的第二個變量也不常用。 when (event_on(out1)前往前往事件解除函數(shù) d

8、eschedule 函數(shù)用于將對象從事件隊列中退出,但是在運用該函數(shù)時必需獲得事件對象的句柄,因此在將對象設置進事件隊列時,必需獲得該對象的句柄。 handle = schedule_event(3u,out1,l4_0) deschedule (handle)前往前往數(shù)字器件的初始化 由模擬器件組成的系統(tǒng),在初始化時都是將一切的節(jié)點初始電壓設置為0,將電容器設置為開路,將電感器設置為短路,然后經(jīng)過直流分析求得系統(tǒng)的節(jié)點電壓。 數(shù)字系統(tǒng)在初始化時首先將logic_4的節(jié)點值設置為logic_x,然后再檢查能否有節(jié)點設置了不為logic_x的初始值,最后再作直流分析。數(shù)值特征數(shù)值特征數(shù)字器件內(nèi)部

9、變量的初始化 數(shù)字模板也經(jīng)常運用部分變量,部分變量的類型也是state型變量,其量綱不一定是logic_4,初始化這些部分變量通常有兩種方法,一種是在when段中初始化,它就是指定一個值,另一種方法就是在函數(shù)定義的時候初始化這個變量。 用第一種方法就是將對象放置在一個事件隊列中,而用第二種方法就沒有將對象放置在事件隊列中。因此根據(jù)需求選擇。模型小結(jié)模型小結(jié)數(shù)字器件模型小結(jié) 1 數(shù)字器件銜接點類型為state類型。 2 數(shù)字器件模型中通常沒有方程段,而描畫端點特征的段通常是when段,當然在一個模板體中能夠有多個when段。 3 數(shù)字器件模型的仿真通常和仿真步長無關,其采用的是事件觸發(fā)方式。 4

10、 數(shù)字器件的初始化必需是顯式的,而模擬器件的初始化通常是隱式的。實例實例與門器件符號及其邏輯真值表與門器件的MAST模型1 template and in1 in2 out = td2 state logic_4 in1, in2, out # state connection points3 number td=04 5 state logic_4 out_state # internal state declaration6 when (event_on(in1) | event_on(in2) 7 if (in1=l4_1) & (in2=l4_1) # AND logic8 o

11、ut_state = l4_19 10 else out_state = l4_01112 if (driven(out)=out_state) # update AND gate output13 schedule_event(time+td, out, out_state)14 15 16 模板頭模板頭whenwhen段段driven函數(shù)函數(shù)初始化初始化時鐘模板時鐘模板與門器件模型的頭闡明 數(shù)字器件模板的關鍵詞是template,在數(shù)字器件的關鍵詞不能運用element template 數(shù)字器件的銜接點必需定義為state類型。需求留意的是只需數(shù)字器件才將器件的銜接點定義為state。

12、模板頭中的argument定義的是延時時間。前往前往函數(shù)模板體中的when段 when statement 是數(shù)字模板中最根本函數(shù)段,在本段中主要是經(jīng)過對列入事件隊列中的對象事件的監(jiān)視和賦值。在一個模板體中可以有多個when statement,when statement 普通情況下在模板體中運用,但它也可以在網(wǎng)表中運用。 When(condition) statements when 段的執(zhí)行過程 when 段的執(zhí)行過程是當條件滿足時這些下面的statement,在when段中可以運用一切的仿真器變量、條件判據(jù)和MAST言語函數(shù)。前往前往driven 函數(shù)的作用 在本模板中運用了以下判別

13、if (driven(out)=out_state) schedule_event(time+td, out, out_state) 該判別語句的功能與如下語句的功能一樣 if (out=out_state) schedule_event(time+td, out, out_state) 但是當端點出現(xiàn)沖突的時候,driven函數(shù)將調(diào)用沖突處理機制。MAST言語中數(shù)字器件的沖突處理機制 當數(shù)字器件的端點受多個驅(qū)動作用的時候,就能夠引起沖突。 SABER仿真器調(diào)用C言語寫的一個模板,該模板叫l(wèi)4cnfr。該模板的處理機制如下MAST言語中數(shù)字器件的沖突處理機制1 and.1 in11 in12

14、out = td=10n and.2 in21 in22 out = td=10n when (dc_init) schedule_event(time, in11, l4_0) schedule_event(time, in12, l4_0) schedule_event(time, in21, l4_0) schedule_event(time, in22, l4_0) when (time_init) schedule_event(1u, in11, l4_1) schedule_event(2u, in12, l4_1) schedule_event(3u, in21, l4_1) s

15、chedule_event(4u, in22, l4_1)MAST言語中數(shù)字器件的沖突處理機制2前往前往前一頁前一頁模板的初始化 在本模板中,對模板中的變量沒有運用初始化,這闡明系統(tǒng)將對一切的銜接點運用初始值為logic_x。前往前往時鐘模塊的MAST模型 1 template clock ckout = freq, duty 2 state logic_4 ckout 3 number freq=0, # clock frequency 4 duty=0.5 # clock duty cycle (time pulsed/period) 5 6 state nu tick # interna

16、l wake-up state 7 8 number ton=0, #clock on-time 9 toff=0 #clock off-time 10模板頭模板頭時鐘模塊的MAST模型1 11 parameters # calculate off and on time 12 if (freq 0) 13 ton = duty/freq 14 toff = 1/freq - ton 15 16 17 when (dc_init) 18 schedule_event(time,ckout,l4_0) 19 20 # start clock ticking after delay time 21

17、 when (time_init) 22 if (freq 0) schedule_event(time,tick,1) 23 時鐘模塊的MAST模型224 when (event_on(tick) 25 if (driven (ckout)=l4_0) 26 # turn clock on (set to 1)27 if (ton 0) 28 schedule_event(time,ckout,l4_1)29 schedule_event(time+ton,tick,1)30 31 32 else # turn clock off (set to 0)33 if (toff 0) 34 schedule_event(time,ckout,l4_0)35 schedule_event(time+toff,tick,1)36 when段段1的特征的特征when段段2的特征的特征模板頭闡明 1 state logic_4 ckout 該模板的銜接點類型為state,闡明該模板是數(shù)字型器件。且該模板只需一個輸出端點。 2 在該模板的頭闡明中定義了兩個數(shù)值型變量,一個是占空比,另一個是時鐘頻率。前往模板前往模板when 段的數(shù)目和第一個when的作用 在這個模塊的模板體中有三個when段,但這三個wh

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論