色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

簡單介紹一下-Verilog-AMS的基礎知識

OpenFPGA ? 來源:OpenFPGA ? 作者:碎碎思 ? 2021-10-21 14:50 ? 次閱讀

混合信號建模語言Verilog-AMS很多人做模擬電路的朋友,都希望有一款“模擬FPGA”,希望有一個“模擬的Verilog”,但現實是沒有“模擬的Verilog”只有混合信號建模語言-Verilog-AMS,今天就簡單介紹一下-Verilog-AMS。

為了便于物理系統的建模,人們在Verilog-2005的基礎上,添加了一些新的關鍵字和語法結構,由此誕生了Verilog-AMS標準。所以Verilog-AMS是Verilog-2005的一個超集。換言之,Verilog-2005又是Verilog-AMS的子集。這里還有一個Verilog-A,具體三者關系如下:

該標準定義了標準的Verilog仿真器和模擬解算器之間的互動。而且,Verilog-AMS語言從誕生開始,就是為常用的物理系統的建模,而不僅是為電路網絡的建模而創造的。

Verilog-AMS基礎Verilog-AMS引入了一些重要的新概念。其中最重要的新概念可以總結為兩個關鍵字:discipline和nature。在“標準”的Verilog中net(線網)類型表示的只是具體的物理連接線路。在顯示仿真的結果時,可以觀察到在一段時間里這條線路的狀態變化。因此,net有兩個含義:具體的物理連接和時間歷史。電路節點表示兩個或更多個元件連接在一起的那個點。然而,不能討論該節點本身的行為,除非指定討論的對象是該節點的電壓或流過該節點的電流,以及其他方面。

為了對具體的物理連接和行為進行區別,Verilog-AMS引入了新的關鍵字。在模型中,節點上的電壓或者電流用關鍵字nature聲明。在舉例說明之前,必須先解釋一下nature和節點之間是怎樣相互關聯的。

節點和網絡類型有著密切的關聯。例如,電路節點歸屬于電路網絡,磁節點歸屬于磁網絡。各種網絡的行為都可以用關鍵字nature(性質)來描述。例如,電路網絡的行為可以用電壓和電流來描述;

而磁網絡的行為可以用磁動勢和磁通量來描述。每一類型的網絡都有自身的一對性質。這一對性質可以描述為flow(流性質)和potential(勢性質)。例如,在電路網絡中,電流通過元件從網絡的一個節點流到另一個節點;

此刻,也可以測量元件兩端的電動勢。每一類型的網絡都具有一對這樣的流性質和勢性質。(請注意,也可以按照與傳統思路完全相反的概念來定義這個電網絡,即在該電網絡中,定義電流具有勢性質,電壓具有流性質。

從數學角度來定義性質,無論傳統的或相反的定義都是可接受的。然而,在電網絡中,接受符合傳統約定的性質定義比較容易。而在其他類型的網絡中,確定究竟哪個物理量為勢性質,哪個物理量為流性質可能不那么清楚。)

在某特定網絡節點性質的定義中,事實上定義了該網絡的流性質和勢性質。因此,只聲明某個線網是一個特定的Verilog類型的線網是不夠的,所以必須添加一種新結構,即discipline(規則)來描述該線網。規則由兩個部分組成:勢性質和流性質。此外,domain(域)可以聲明為連續的continuous)或者離散的discrete)。在默認情況下,規則是連續的。

電路規則可以用如下語句聲明:

disciplineelectrical
potentialVoltage;
flowCurrent;
enddiscipline

與別處-樣,代碼段中的關鍵字用粗字體表示。代碼段中的Voltage(電壓)和Current(電流)是什么?我們知道potential(勢)和flow(流)這兩部分都是natures(性質),所以Voltage和Current一定是natures。

natureVoltage
units="V";
access=V;
idt_nature=Flux;
abstol=le-6;
endnature

natureCurrent
units="A";

accessI
idt_nature=Charge;
abstol=le-12;

endnature

這兩個性質聲明塊的內容都由四條語句組成,但并非每條語句都是必需的。第1條語句units列出了用于表示該性質的符號。Verilog-AMS語言不執行維度分析,所以這條語句只是提供可讀性而已。第2條語句中的access給出了訪問功能。由于第2條語句中存在access,所以在代碼段中,V(nodel)表示引用節點1的電壓。第3條語句中的idt_nature表示等號后的物理量具有時間積分的性質。也可以用ddt_nature來表示等號后的物理量具有時間導數的性質。但在這種場合,Flux(通量)和Charge(電荷)應該在別處聲明。最后一條語句中的關鍵字abstol表示允許的絕對誤差,這條語句定義了性質塊聲明的變量在計算過程中的精確度。

在下面的例子中,假設在文件disciplines.vams中包含一些電規則的定義。每個模塊的開頭都包括該規則定義文件。現在就可以用該文件中定義的電規則來定義一個或者多個節點。

electrical nodel,node2;

我們可以用與定義線網或端口完全相同的方法在模塊中定義節點。在端口聲明時,必須聲明端口的方向為inout(輸入/輸岀雙向端口)類型。例如,下面的代碼段聲明了一個電阻模塊:

'include"disciplines.vams";
moduleresistor(nodel,node2);
inoutnodel,node2;
electricalnodel,node2;
parameterrealR=1;

寫到這里,只是創建了物理節點。可以用I(nodel,node2)表示在這兩個節點之間流動的電流;也可以聲明一個或多個支路。兩個節點之間的支路可以用下面的語句聲明:

branch (nodel,node2) res;

所以,現在還可以用I(res)來表示流經電阻的電流。

每個流經物理量的計算基準點就是所謂的參考節點。在電路網絡中,該參考節點通常稱為地線或者接地點。在Verilog-AMS模型中,通常用下面的語句來表示接地點:公眾號OpenFPGA

ground gnd;

作用語句

作用語句(contrihution statement)用于定義模擬模型的線路方程。在作用語句中,使用符號“<+”來表示表達式如何作用于某線路方程組。請注意,“<+”不是傳統意義上的賦值操作符,而是對同一個流或者勢的多個作用的總和。

因此,作用語句是由模擬仿真器求解的聯立方程。作用語句必須放在模擬過程塊之中。為了說明作用語句,我們編寫了一個電阻器的完整模型:

'include"disciplines.vams"
moduleresistor(nodel,node2);
inoutnodel,node2;

electricalnodel,node2;
parameterrealR=1;
branch(nodel,node2)res;

analogbegin
I(res)<+?V(res)/R?;
end

endmodule

可以用類似的方法為其他元件建模。例如,下面的代碼段是一個電容器的Verilog-AMS模型:

'include"disciplines.vams"
modulecapacitor(nodel,node2);
inoutnodel,node2;
electricalnodel,node2;
parameterrealC=1;
branch(nodel,node2)cap;

analogbegin
I(cap)<+?C*ddt(V(cap));
end
endmodule

上面程序中的ddt是一個求導函數。其功能是求出電容兩端電壓的變化率,即求電壓的微分。而下面語句中的idt是一個積分函數,其功能是計算其后面變量(流經電容的電流)的積分。由于作用語句是代數表達式而不是賦值操作,所以可以用以下方程來表示電容電壓:

V(cap) < + idt ( I(cap))/C;

在結束這些基本模型的討論之前,讓我們先考慮一個產生正弦波形的純電壓源,以后需要把這個電壓源模型作為基礎元件來描述DAC

'include"constants.vams"
'include"disciplines.vams"
modulevsin(a,b);
inouta,b;
electricala,b;
branch(a,b)vs;

parameterrealvo=1;
parameterrealva=1;
parameterrealfreq=1;

analogbegin
V(vs)<+?vo?+?va?*?sin('M_TWO_PI*freq*$abstime);
end
endmodule

在文件constants.vams中,定義了許多有用的參數,其中包括M_TWO_PI(即2倍的圓周率—2π),$time,但是$abstime返回的是一個實型數。

混合信號建模

Verilog-AMS是一種混合信號建模語言,所以我們可以把模擬結構和數字結構寫在同一個模塊中。下面編寫一個簡單比較器的模型。該比較器可以對兩個模擬電壓信號進行比較,把比較結果轉換為1比特的數字信號。當第1個輸人信號比第2個大時,比較器輸出邏輯1,否則輸出邏輯0。該比較器的Verilog-AMS模型如下:

"include"disciplines.vams"
modulecomp(Aplus,Aminus,Dout);
inoutAplus,Aminus;
electricalAplus,Aminus;
outputDout;
regDout;
initial
begin
Dout=l'bl;
forever
begin
@(cross(V(Aplus,Aminus),-1))Dout=1'bO;
@(cross(V(Aplus,Aminus),+1))Dout=l'bl;
end
end
endmodule

這個模塊有三個端口,其中兩個是電路節點,另一個是數字輸出端口。在模塊體中,必須能檢測到其中一個模擬電壓大于或小于另一個模擬電壓的時刻,根據比較的結果,對開關進行相應的操作,輸出邏輯1或者0。這個比較器當然可以用一個簡單的比較操作符這個模塊有三個端口,其中兩個是電路節點,另一個是數字輸出端口。在模塊體中,必須能檢測到其中一個模擬電壓大于或小于另一個模擬電壓的時刻,根據比較的結果,對開關進行相應的操作,輸出邏輯1或者0。這個比較器當然可以用一個簡單的比較操作符來表示,但是在這里用cross函數來表示更好一些。當表達式越過0時,立即產生一個數字信號事件。在cross函數中的第2個參數是用來表示方向的,只有從一個方向越過0才能觸發事件,+1表示正方向,-1表示負方向,而0或不指定參數,則表示有兩個方向。然而cross函數并不觸發初始條件事件。因此,編寫一個初始化塊,先給Dout賦一個初始值,然后檢測輸入的模擬電壓的上升或下降是否越過0,一旦越過,立即觸發事件,根據越過0的方向,切換Dout的邏輯值為1或0。公眾號OpenFPGA

Verilog-AMS仿真器

ADC、DAC和PLL的混合信號模型是否可以完全用標準的Venlog語言來建模,可能還有爭論。實際上,在這些模型中只有極少量的行為必須用模擬解算器才行。Verilog-AMS真正強大的功能在于允許在Verilog數字模型仿真的同時,進行模擬電路的仿真,而傳統的模擬電路仿真必須使用SPICE軟件才行。我們可以把SPICE的網表添加到Verilog-AMS的仿真庫中。

目前,有許多仿真器支持多種語言的仿真。因此,組成系統模型的子模塊可以用Verilog、SystemVerilog、Verilog-AMS、SPICE、VHDL、VHDL-AMS和SystemC等多種語言來編寫。

總結

數字電路必須與真實的模擬世界接口,這個接口及與模擬元件的相互作用的建模總是十分困難的。Verilog-AMS擴展了Verilog功能,允許模擬和混合信號建模。典型的轉換器包括階梯型DAC、快閃型ADC和PLL。所有這些元件都可以用Verilog-AMS建模和仿真。目前從這些無件的行為模型還不能自動綜合出元件的物理構造,由于rilog-AMS仿真器還是-個相對較新的事物,所以個別Venlog-AMS語法得不到Verilog-AMS仿真器的支持是很冇吋能的。這些仿真器確實提供了SPICE模型與Verilog-AMS之間進行接口的手段,從而允許完整系統的建模。

目前,國內對Verilog-A/Verilog-AMS研究很少,希望借此文章讓更多人了解Verilog-A/Verilog-AMS,在未來可能有更大的用途。

編輯:jq
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • dac
    dac
    +關注

    關注

    43

    文章

    2309

    瀏覽量

    191397
  • Verilog
    +關注

    關注

    28

    文章

    1351

    瀏覽量

    110267
  • AMS
    AMS
    +關注

    關注

    10

    文章

    212

    瀏覽量

    87101

原文標題:數模混合信號建模語言Verilog-AMS

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    PCB繪制基礎知識

    電子發燒友網站提供《PCB繪制基礎知識.pdf》資料免費下載
    發表于 01-21 15:20 ?2次下載
    PCB繪制<b class='flag-5'>基礎知識</b>

    射頻前端設計中的功率等級基礎知識

    伴隨更多頻段的增加和愈發復雜的移動設備出現,蜂窩通信市場已發生巨大變化。隨著4G和5G的部署,3GPP的最新規范已將PC2引入FDD頻段,更高的發射功率水平也由此帶來了與之相關的全新挑戰。下面,就讓我們回顧一下PC2的基礎知識,并深入探討PC2如何隨著這些新的5G部署而演
    的頭像 發表于 01-07 11:26 ?362次閱讀
    射頻前端設計中的功率等級<b class='flag-5'>基礎知識</b>

    EMC基礎知識-華為

    EMC基礎知識-華為
    發表于 01-06 14:09 ?0次下載

    萬字長文,看懂激光基礎知識

    深入介紹激光基礎知識,幫助您輕松理解激光領域的關鍵概念和原理。
    的頭像 發表于 12-20 09:49 ?286次閱讀
    萬字長文,看懂激光<b class='flag-5'>基礎知識</b>!

    硬件工程師需要掌握的硬件基礎知識

    作為個資深硬件工程師,我們需要掌握些硬件基礎知識,今天總結一下哪些算是基礎知識。給學電子方面想從事硬件工作的同學們
    的頭像 發表于 12-02 09:22 ?486次閱讀
    硬件工程師需要掌握的硬件<b class='flag-5'>基礎知識</b>

    FPGA基礎知識及設計和執行FPGA應用所需的工具

    本文將首先介紹FPGA的基礎知識,包括FPGA的工作原理以及為什么要使用FPGA等,然后討論設計和執行FPGA應用所需的工具。
    的頭像 發表于 11-11 11:29 ?1111次閱讀
    FPGA<b class='flag-5'>基礎知識</b>及設計和執行FPGA應用所需的工具

    品質管理基礎知識

    品質管理基礎知識
    的頭像 發表于 11-01 11:08 ?396次閱讀
    品質管理<b class='flag-5'>基礎知識</b>

    Verilog HDL的基礎知識

    本文繼續介紹Verilog HDL基礎知識,重點介紹賦值語句、阻塞與非阻塞、循環語句、同步與異步、函數與任務語法知識
    的頭像 發表于 10-24 15:00 ?565次閱讀
    <b class='flag-5'>Verilog</b> HDL的<b class='flag-5'>基礎知識</b>

    負載開關基礎知識

    電子發燒友網站提供《負載開關基礎知識.pdf》資料免費下載
    發表于 10-08 09:56 ?1次下載
    負載開關<b class='flag-5'>基礎知識</b>

    C++語言基礎知識

    電子發燒友網站提供《C++語言基礎知識.pdf》資料免費下載
    發表于 07-19 10:58 ?7次下載

    哪有FPGA的verilog編程基礎知識

    沒接觸過FPGA開發,那個verilog編程有什么入門基礎知識學習的?
    發表于 04-29 23:09

    電子元件基礎知識介紹

    電子發燒友網站提供《電子元件基礎知識介紹.pptx》資料免費下載
    發表于 03-15 16:48 ?86次下載

    FPGA基礎知識介紹

    電子發燒友網站提供《FPGA基礎知識介紹.pdf》資料免費下載
    發表于 02-23 09:45 ?32次下載

    簡單介紹一下電源紋波與電容嘯叫

    簡單介紹一下電源紋波與電容嘯叫? 電源紋波與電容嘯叫是在電源系統中常見的兩種問題,它們會影響電子設備的性能和穩定性。本篇文章將詳細介紹電源紋波和電容嘯叫的定義、原因、對設備的影響以及常
    的頭像 發表于 02-04 09:42 ?1119次閱讀

    鴻蒙開發【設備開發基礎知識

    鴻蒙開發基礎知識講解
    的頭像 發表于 01-29 18:44 ?1076次閱讀
    鴻蒙開發【設備開發<b class='flag-5'>基礎知識</b>】
    主站蜘蛛池模板: s8sp视频高清在线播放 | 美女脱了内裤张开腿让男人桶到爽 | 国产午夜在线精品三级a午夜电影 | 国内精品蜜汁乔依琳视频 | 国产成人精品自线拍 | 鬼灭之刃花街篇免费樱花动漫 | 国产超碰精久久久久久无码AV | 恋夜影院安卓免费列表uc | 青草精品国产福利在线视频 | 18禁裸乳无遮挡免费网站 | 97碰成视频免费 | 老司机亚洲精品影院 | 人与人特黄一级 | 秋秋影视午夜福利高清 | 色翁荡息又大又硬又粗又爽电影 | wwwwxxxxx中国| 久久成人免费大片 | 4438成人情人网站 | 精品久久久久久久国产潘金莲 | 精品无码久久久久久国产百度 | 18和谐综合色区 | 精品免费久久久久久成人影院 | 欧美日韩高清一区二区三区 | 跳蛋按摩棒玉势PLAY高H | 欧美极品尿交 | 日本高清免费在线 | 99re6久久在热线视频 | 亚洲 欧美 国产在线视频 | 97精品在线观看 | 精品国产人成亚洲区 | 久久精品嫩草影院免费看 | 国产国产成人人免费影院 | 久爱精品亚洲电影午夜 | 国产精品色吧国产精品 | 国产九九熟女在线视频 | 免费国产足恋网站 | 青草久久精品亚洲综合专区 | 肉蒲团从国内封禁到日本成经典 | 日本夜夜夜 | 十九禁啊啪射视频在线观看 | 日韩欧美一级 |