वेरिलॉग-एएमएस
वेरिलोग-एएमएस हार्डवेयर विवरण भाषा का व्युत्पन्न है जिसमें एनालॉग और मिश्रित-सिग्नल सिस्टम के व्यवहार को परिभाषित करने के लिए एनालॉग और मिश्रित-सिग्नल एक्सटेंशन (AMS) शामिल हैं।यह सतत-समय सिम्युलेटर द्वारा वेरिलोग/SystemVerlog/VHDL के इवेंट-आधारित सिम्युलेटर लूप का विस्तार करता है, जो एनालॉग-डोमेन में अंतर समीकरणों को हल करता है।दोनों डोमेन युग्मित हैं: एनालॉग इवेंट डिजिटल क्रियाओं को ट्रिगर कर सकते हैं और इसके विपरीत।[1]
अवलोकन
Verilog-AMS मानक एनालॉग और मिश्रित सिग्नल सिस्टम और एकीकृत सर्किट के डिजाइनरों को सक्षम करने के इरादे से बनाया गया था, जो कि उच्च-स्तरीय व्यवहार विवरणों के साथ-साथ सिस्टम और घटकों के संरचनात्मक विवरणों को बढ़ाने वाले मॉड्यूल को बनाने और उपयोग करने के लिए एकीकृत सर्किट।[2][3][4] Verilog-Ams मिश्रित सिग्नल सर्किट के लिए उद्योग मानक मॉडलिंग भाषा है।यह निरंतर-समय और घटना-चालित मॉडलिंग शब्दार्थ दोनों प्रदान करता है, और इसलिए एनालॉग, डिजिटल और मिश्रित एनालॉग/डिजिटल सर्किट के लिए उपयुक्त है।यह विशेष रूप से बहुत जटिल एनालॉग, मिश्रित-सिग्नल और आरएफ एकीकृत सर्किट के सत्यापन के लिए अनुकूल है।[5] Verilog और Verilog/AMs प्रक्रियात्मक प्रोग्रामिंग भाषाएं नहीं हैं, लेकिन इवेंट-आधारित हार्डवेयर विवरण भाषाएँ (HDLS) हैं।जैसे, वे समानांतर कार्यों और घटनाओं की परिभाषा और सिंक्रनाइज़ेशन के लिए परिष्कृत और शक्तिशाली भाषा सुविधाएँ प्रदान करते हैं।दूसरी ओर, एचडीएल प्रोग्राम स्टेटमेंट में परिभाषित कई क्रियाएं समानांतर में चल सकती हैं (कुछ हद तक प्रक्रियात्मक भाषाओं में थ्रेड्स और टास्कलेट के समान, लेकिन बहुत अधिक ठीक-ठीक दाने)।हालांकि, वेरिलोग/एएमएस को सिम्युलेटर के वेरिलोग प्रक्रियात्मक इंटरफ़ेस का उपयोग करके एएनएसआई सी भाषा जैसी प्रक्रियात्मक भाषाओं के साथ जोड़ा जा सकता है, जो टेस्टसुइट कार्यान्वयन को कम करता है, और विरासत कोड या टेस्टबेंच उपकरण के साथ बातचीत की अनुमति देता है।
वेरिलोग-एएमएस समिति का मूल इरादा एनालॉग और डिजिटल डिजाइन दोनों के लिए एकल भाषा थी, हालांकि विलय की प्रक्रिया में देरी के कारण यह Accellera में रहता है, जबकि वेरिलोग सिस्टमवरिलॉग में विकसित हुआ और IEEE में चला गया।
कोड उदाहरण
Verilog/Ams Verilog डिजिटल HDL का सुपरसेट है, इसलिए डिजिटल डोमेन में सभी कथन Verilog में काम करते हैं (उदाहरण के लिए वहां देखें)। सभी एनालॉग पार्ट्स वेरिलोग-ए के रूप में काम करते हैं।
Verilog-AMS में निम्न कोड उदाहरण DAC दिखाता है जो एनालॉग प्रोसेसिंग के लिए उदाहरण है जो डिजिटल सिग्नल द्वारा ट्रिगर किया गया है: <syntaxhighighlight lang = verilog> `स्थिरांक शामिल करें। vams `अनुशासन शामिल करें। vams // सरल DAC मॉडल मॉड्यूल dac_simple (aout, clk, din, vref);
// पैरामीटर पैरामीटर पूर्णांक बिट्स = 4 से [1:24]; पैरामीटर पूर्णांक td = 1n से [0: inf); // डीएसी की प्रसंस्करण देरी
// इनपुट/आउटपुट को परिभाषित करें इनपुट सीएलके, वीआरईएफ; इनपुट [बिट्स -1: 0] दीन; आउटपुट AOUT;
// पोर्ट प्रकारों को परिभाषित करें लॉजिक क्लक; तर्क [बिट्स -1: 0] दीन; विद्युत aout, vref;
// आंतरिक चर वास्तविक aout_new, रेफरी; पूर्णांक मैं;
// एनालॉग पार्ट में सिग्नल बदलें एनालॉग शुरू @(Posedge Clk) शुरू // केवल बढ़ती घड़ी किनारे के लिए आउटपुट बदलें
aout_new = 0; ref = v (vref);
for (i = 0; i <bits; i = i+1) शुरू रेफ = रेफ/2; aout_new = aout_new + ref * din [i]; समाप्त समाप्त V (aout) <+ संक्रमण (aout_new, td, 5n); // आउटपुट स्तर में परिवर्तन होने पर चिकनी संक्रमण प्राप्त करें समाप्त अंत </syntaxhighighlight> एडीसी मॉडल डिजिटल ब्लॉकों में एनालॉग सिग्नल पढ़ रहा है: <syntaxhighighlight lang = verilog> `स्थिरांक शामिल करें। vams `अनुशासन शामिल करें। vams // सरल एडीसी मॉडल मॉड्यूल ADC_SIMPLE (CLK, DOUT, VREF, VIN);
// पैरामीटर पैरामीटर पूर्णांक बिट्स = 4 से [1:24]; // बिट्स की संख्या पैरामीटर पूर्णांक td = 1 से [0: inf); // एडीसी की प्रसंस्करण देरी
// इनपुट/आउटपुट को परिभाषित करें इनपुट सीएलके, वीआईएन, वीआरईएफ; आउटपुट [बिट्स -1: 0] डाउट;
// पोर्ट प्रकारों को परिभाषित करें विद्युत vref, vin; लॉजिक क्लक; reg [बिट्स -1: 0] डाउट;
// आंतरिक चर असली रेफ, नमूना; पूर्णांक मैं;
प्रारंभिक शुरुआत
डाउट = 0;
समाप्त
// राइजिंग क्लॉक एज के लिए डिजिटल ब्लॉक्स में सैंपलिंग करें हमेशा @(Posedge Clk) शुरू करें
नमूना = v (vin); ref = v (vref);
for (i = 0; i <bits; i = i+1) शुरू
रेफ = रेफ/2;
अगर (नमूना> रेफ) शुरू करें dout [i] <= #(td) 1; नमूना = नमूना - रेफरी; समाप्त वरना dout [i] <= #(td) 0; समाप्त समाप्त अंत </syntaxhighighlight>
यह भी देखें
- वेरिलॉग
- वेरिलोग-ए
- VHDL-AMS
- systemc-ams
संदर्भ
- ↑ Scheduling semantics are specified in the Verilog/AMS Language Reference Manual, section 8.
- ↑ Accellera Verilog Analog Mixed-Signal Group, "Overview," http://www.verilog.org/verilog-ams/htmlpages/overview.html
- ↑ Verilog-AMS Language Reference Manual
- ↑ The Designer's Guide to Verilog-AMS
- ↑ Verification of Complex Analog Integrated Circuits Archived October 18, 2006, at the Wayback Machine
बाहरी संबंध
- I. Miller and T. Cassagnes, "Verilog-AMS Eases Mixed Mode Signal Simulation," Technical Proceedings of the 2000 International Conference on Modeling and Simulation of Microsystems, pp. 305–308, Available: https://web.archive.org/web/20070927051749/http://www.nsti.org/publ/MSM2000/T31.01.pdf
सामान्य
- accellera Verilog Anaglic Mixed- सिग्नल ग्रुप
- verilogams.com-वेरिलॉग-एएमएस और वेरिलॉग-ए के लिए उपयोगकर्ता का मैनुअल
- डिजाइनर गाइड समुदाय, वेरिलोग-ए/एमएस-वेरिलोग-एम्स में लिखे गए मॉडलों के उदाहरण
- eda.org ams wiki - मुद्दे, भविष्य के विकास, SystemVerilog एकीकरण
खुला स्रोत कार्यान्वयन
- openvams, ओपन-सोर्स वेरिलोगम्स-1.3 आंतरिक वीपीआई-जैसे प्रतिनिधित्व के साथ पार्सर
- v2000 परियोजना-Verilog-ams parser & elaborator
श्रेणी: हार्डवेयर विवरण भाषाएँ