नेटलिस्ट: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 3: Line 3:


[[इलेक्ट्रॉनिक डिजाइन]] में, '''नेटलिस्ट''' एक [[विद्युत सर्किट|विद्युत परिपथ]] की संबद्धता का वर्णन है।<ref name=":0">{{Cite web|url=http://blog.optimumdesign.com/schematic-vs.-netlist-a-guide-to-pcb-deisgn-integration|title=Schematic vs. Netlist: A Guide to PCB Design Integration|last=Holt|first=Randy|website=blog.optimumdesign.com|language=en-us|access-date=2019-04-03}}</ref><ref>{{Cite web|url=http://www.vlsiip.com/asic_dictionary/N/netlist.html|title=netlist.html|website=www.vlsiip.com|access-date=2019-04-03}}</ref> अपने सरलतम रूप में, नेटलिस्ट किसी परिपथ में [[इलेक्ट्रॉनिक घटक]] की एक सूची होती है और उन [[नोड (सर्किट)|नोड (परिपथ)]] की सूची होती है जिनसे वे संलग्न होते हैं।<ref name=":0" /><ref>{{Cite web|url=http://www.expresspcb.com/ExpressPCBBin/NetlistFileFormat.pdf|title=Netlist File Format|website=www.expresspcb.com|access-date=August 24, 2021|quote=The netlist is written in a single file, but includes four sections: 1) A file header, 2) A table listing each of the components, 3) A table listing each of the net names, 4) A table listing each of the net connections. Every table entry is written using a single line of text that ends with a [[CRLF]]. The fields of the table are separated with Space characters (0x20). String fields begin and end with double quotes. Each of the three tables are terminated by a blank line (CRLF).}}</ref> एक नेटवर्क (नेट) दो या दो से अधिक परस्पर घटकों का विस्तृत संग्रह है।
[[इलेक्ट्रॉनिक डिजाइन]] में, '''नेटलिस्ट''' एक [[विद्युत सर्किट|विद्युत परिपथ]] की संबद्धता का वर्णन है।<ref name=":0">{{Cite web|url=http://blog.optimumdesign.com/schematic-vs.-netlist-a-guide-to-pcb-deisgn-integration|title=Schematic vs. Netlist: A Guide to PCB Design Integration|last=Holt|first=Randy|website=blog.optimumdesign.com|language=en-us|access-date=2019-04-03}}</ref><ref>{{Cite web|url=http://www.vlsiip.com/asic_dictionary/N/netlist.html|title=netlist.html|website=www.vlsiip.com|access-date=2019-04-03}}</ref> अपने सरलतम रूप में, नेटलिस्ट किसी परिपथ में [[इलेक्ट्रॉनिक घटक]] की एक सूची होती है और उन [[नोड (सर्किट)|नोड (परिपथ)]] की सूची होती है जिनसे वे संलग्न होते हैं।<ref name=":0" /><ref>{{Cite web|url=http://www.expresspcb.com/ExpressPCBBin/NetlistFileFormat.pdf|title=Netlist File Format|website=www.expresspcb.com|access-date=August 24, 2021|quote=The netlist is written in a single file, but includes four sections: 1) A file header, 2) A table listing each of the components, 3) A table listing each of the net names, 4) A table listing each of the net connections. Every table entry is written using a single line of text that ends with a [[CRLF]]. The fields of the table are separated with Space characters (0x20). String fields begin and end with double quotes. Each of the three tables are terminated by a blank line (CRLF).}}</ref> एक नेटवर्क (नेट) दो या दो से अधिक परस्पर घटकों का विस्तृत संग्रह है।
[[इलेक्ट्रॉनिक डिजाइन स्वचालन]], इलेक्ट्रॉनिक कैड, इलेक्ट्रॉनिक तन्त्रों के डिजाइन में प्रयुक्त सॉफ्टवेयरों का सामान्य नाम है। इसके अन्तर्गत मुख्यतः [[एकीकृत परिपथ डिजाइन]], प्रिन्टेड परिपथ बोर्ड डिजाइन, इलेक्ट्रॉनिक परिपथों के आरेख बनाने वाले [[सॉफ्टवेयर]], और परिपथ [[सिमुलेशन]] के सॉफ्टवेयर आदि आते हैं।


नेटलिस्ट की संरचना, जटिलता और प्रतिनिधित्व काफी भिन्न हो सकते हैं, लेकिन प्रत्येक नेटलिस्ट का मूल उद्देश्य ग्राफ (सार डेटा प्रकार) को व्यक्त करना है। नेटलिस्ट सामान्यतः उदाहरणों, नोड्स और अनुमानतः सम्मिलित घटकों के कुछ गुणों से ज्यादा कुछ नहीं प्रदान करते हैं।<ref>{{Cite web|url=https://www.allaboutcircuits.com/textbook/reference/chpt-7/example-circuits-and-netlists/|title=Example Circuits and Netlists {{!}} Using The spice Circuit Simulation Program {{!}} Electronics Textbook|website=www.allaboutcircuits.com|language=en|access-date=2019-04-03}}</ref> यदि वे इससे कहीं अधिक व्यक्त करते हैं, तो उन्हें सामान्यतः एक [[हार्डवेयर विवरण भाषा]] माना जाता है जैसे कि [[Verilog|वैरीलॉग]] या [[वीएचडीएल]], या कई भाषाओं में से एक जिसे विशेष रूप से [[सिम्युलेटर]] या [[हार्डवेयर संकलक]] (जैसे [[मसाला|स्पाइस]] एनालॉग सिमुलेशन नेटलिस्ट) के इनपुट के लिए डिज़ाइन किया गया है।
नेटलिस्ट की संरचना, जटिलता और प्रतिनिधित्व काफी भिन्न हो सकते हैं, लेकिन प्रत्येक नेटलिस्ट का मूल उद्देश्य ग्राफ (सार डेटा प्रकार) को व्यक्त करना है। नेटलिस्ट सामान्यतः उदाहरणों, नोड्स और अनुमानतः सम्मिलित घटकों के कुछ गुणों से ज्यादा कुछ नहीं प्रदान करते हैं।<ref>{{Cite web|url=https://www.allaboutcircuits.com/textbook/reference/chpt-7/example-circuits-and-netlists/|title=Example Circuits and Netlists {{!}} Using The spice Circuit Simulation Program {{!}} Electronics Textbook|website=www.allaboutcircuits.com|language=en|access-date=2019-04-03}}</ref> यदि वे इससे कहीं अधिक व्यक्त करते हैं, तो उन्हें सामान्यतः एक [[हार्डवेयर विवरण भाषा]] माना जाता है जैसे कि [[Verilog|वैरीलॉग]] या [[वीएचडीएल]], या कई भाषाओं में से एक जिसे विशेष रूप से [[सिम्युलेटर]] या [[हार्डवेयर संकलक]] (जैसे [[मसाला|स्पाइस]] एनालॉग सिमुलेशन नेटलिस्ट) के इनपुट के लिए डिज़ाइन किया गया है।
Line 10: Line 12:
नेटलिस्ट हो सकते हैं:
नेटलिस्ट हो सकते हैं:
* भौतिक (भौतिक कनेक्शन पर आधारित) या तार्किक (तार्किक कनेक्शन पर आधारित)
* भौतिक (भौतिक कनेक्शन पर आधारित) या तार्किक (तार्किक कनेक्शन पर आधारित)
** उदाहरण के लिए, उन घटकों में से एक के टर्मिनल के माध्यम से तीन घटकों को जोड़ने की प्रत्यक्ष प्रक्रिया को 'तार्किक' कनेक्शन माना जाएगा, जबकि प्रत्येक असतत 'भौतिक' कनेक्शन होगा।
** उदाहरण के लिए, उन घटकों में से एक के [[टर्मिनल (इलेक्ट्रॉनिक्स)|टर्मिनल]] के माध्यम से तीन घटकों को जोड़ने की प्रत्यक्ष प्रक्रिया को 'तार्किक' कनेक्शन माना जाएगा, जबकि प्रत्येक असतत 'भौतिक' कनेक्शन होगा।
* इंस्टेंस-आधारित (एक घटक उदाहरण के बारे में क्लस्टर) या नेट-आधारित (किसी विशेष नेट से कनेक्शन की संपूर्ण सूची)
* अवस्थित-आधारित (एक घटक उदाहरण के बारे में [[क्लस्टर II (अंतरिक्ष यान)|क्लस्टर]]) या नेट-आधारित (किसी विशेष नेट से कनेक्शन की संपूर्ण सूची)
** फ्लैट (सभी कनेक्शन दिखाए जाते हैं) या श्रेणीबद्ध (कनेक्शन किसी तरह से समूहीकृत होते हैं; जैसे कि वे किस भौतिक बोर्ड या परत से संलग्न हैं। ऐसी नेटलिस्ट अतिरिक्त रूप से या तो ''फोल्ड'' हो सकती हैं, जो किसी दिए गए स्तर के नीचे डेटा संरक्षित हैं। एब्सट्रैक्शन या ''अनफोल्डेड'' संपूर्ण होने के नाते और इस प्रकार फ्लैट नेटलिस्ट्स की सामग्री में संभावित रूप से समतुल्य है।)
** फ्लैट (सभी कनेक्शन दिखाए जाते हैं) या श्रेणीबद्ध (कनेक्शन किसी तरह से समूहीकृत होते हैं; जैसे कि वे किस भौतिक बोर्ड या परत से संलग्न हैं। ऐसी नेटलिस्ट अतिरिक्त रूप से या तो ''फोल्ड'' हो सकती हैं, जो किसी दिए गए स्तर के नीचे डेटा संरक्षित हैं। [[एब्सट्रैक्शन]] या ''अनफोल्डेड'' संपूर्ण होने के नाते और इस प्रकार फ्लैट नेटलिस्ट्स की सामग्री में संभावित रूप से समतुल्य है।)


== एक नेटलिस्ट की सामग्री और संरचना ==
== एक नेटलिस्ट की सामग्री और संरचना ==
Line 21: Line 23:
उदाहरण [[MOSFET|मॉस्फेट]] ट्रांजिस्टर या [[द्विध्रुवी जंक्शन ट्रांजिस्टर]] से लेकर [[अवरोध]], [[संधारित्र]] या [[एकीकृत परिपथ]] चिप तक कुछ भी हो सकता है।
उदाहरण [[MOSFET|मॉस्फेट]] ट्रांजिस्टर या [[द्विध्रुवी जंक्शन ट्रांजिस्टर]] से लेकर [[अवरोध]], [[संधारित्र]] या [[एकीकृत परिपथ]] चिप तक कुछ भी हो सकता है।


इनके सभी उदाहरणों में टर्मिनल होते हैं जैसे कि वैक्यूम क्लीनर के सन्दर्भ में, ये टर्मिनल प्लग में धातु के तीन पिन होंगे। '''प्रत्येक टर्मिनल का एक''' नाम होता है, और वैक्यूम क्लीनर के उदाहरण को जारी रखने में, वे न्यूट्रल, लाइव और ग्राउंड हो सकते हैं। सामान्यतः, प्रत्येक उदाहरण का एक विशिष्ट नाम होगा, ताकि यदि आपके पास वैक्यूम क्लीनर के दो उदाहरण हों, तो एक vac1 और दूसरा vac2 हो सकता है। उनके नाम के अलावा, वे अन्यथा समान हो सकते हैं।
इनके सभी उदाहरणों में टर्मिनल होते हैं जैसे कि [[वैक्यूम क्लीनर]] के सन्दर्भ में, ये टर्मिनल प्लग में धातु के तीन पिन होंगे। प्रत्येक टर्मिनल का एक नाम होता है, और वैक्यूम क्लीनर के उदाहरण को जारी रखने में वे न्यूट्रल, लाइव और ग्राउंड हो सकते हैं। सामान्यतः, प्रत्येक उदाहरण का एक विशिष्ट नाम होगा, ताकि यदि आपके पास वैक्यूम क्लीनर के दो उदाहरण हों, तो एक वीएसी1 और दूसरा वीएसी2 हो सकता है। उनके नाम के अलावा, वे अन्यथा समान हो सकते हैं।


नेटवर्क (जाल) वे तार होते हैं जो परिपथ में चीजों को एक साथ जोड़ते हैं। नेटलिस्ट जिस विशेष भाषा में लिखी गई है, और उस भाषा की विशेषताओं के आधार पर, डिज़ाइन में नेट से जुड़ी कोई विशेष विशेषताएँ हो सकती हैं या नहीं भी हो सकती हैं।
नेटवर्क (जाल) वे तार होते हैं जो परिपथ में चीजों को एक साथ जोड़ते हैं। नेटलिस्ट जिस विशेष भाषा में लिखी गई है, और उस भाषा की विशेषताओं के आधार पर, डिज़ाइन में नेट से जुड़ी कोई विशेष विशेषताएँ हो सकती हैं या नहीं भी हो सकती हैं।


इंस्टेंस आधारित नेटलिस्ट सामान्यतः डिजाइन में उपयोग किए जाने वाले इंस्टेंसेस की एक सूची प्रदान करते हैं।
अवस्थित आधारित नेटलिस्ट सामान्यतः डिजाइन में उपयोग किए जाने वाले अवस्थितेस की एक सूची प्रदान करते हैं। प्रत्येक उदाहरण के साथ, या तो शुद्ध नामों की एक आदेशित सूची प्रदान की जाती है, या प्रदान किए गए जोड़े की एक सूची, एक उदाहरण पोर्ट नाम के साथ, नेट नाम के साथ जिससे वह पोर्ट जुड़ा हुआ है। इस तरह के विवरण में, कनेक्शन सूचियों से जालों की सूची एकत्र की जा सकती है, और विशेष विशेषताओं को स्वयं जालों से जोड़ने के लिए कोई जगह नहीं है। स्पाइस उदाहरण-आधारित नेटलिस्ट का एक उदाहरण है।
प्रत्येक उदाहरण के साथ, या तो शुद्ध नामों की एक आदेशित सूची प्रदान की जाती है, या प्रदान किए गए जोड़े की एक सूची, एक उदाहरण पोर्ट नाम के साथ, नेट नाम के साथ जिससे वह बंदरगाह जुड़ा हुआ है। इस तरह के विवरण में, कनेक्शन सूचियों से जालों की सूची एकत्र की जा सकती है, और विशेष विशेषताओं को स्वयं जालों से जोड़ने के लिए कोई जगह नहीं है। SPICE उदाहरण-आधारित नेटलिस्ट का एक उदाहरण है।


नेट-आधारित नेटलिस्ट सामान्यतः सभी उदाहरणों और उनकी विशेषताओं का वर्णन करते हैं, फिर प्रत्येक नेट का वर्णन करते हैं, और कहते हैं कि प्रत्येक उदाहरण पर वे किस पोर्ट से संलग्न हैं। यह एट्रिब्यूट को नेट से संबद्ध करने की अनुमति देता है।
नेट-आधारित नेटलिस्ट सामान्यतः सभी उदाहरणों और उनकी विशेषताओं का वर्णन करते हैं, फिर प्रत्येक नेट का वर्णन करते हैं, और कहते हैं कि प्रत्येक उदाहरण पर वे किस पोर्ट से संलग्न हैं। यह एट्रिब्यूट को [[नेटबीएसडी|नेट]] से संबद्ध करने की अनुमति देता है। [[EDIF|ईडीआईएफ]] अनुमानतः नेट-आधारित नेटलिस्ट्स में सबसे प्रसिद्ध है।
[[EDIF]] अनुमानतः नेट-आधारित नेटलिस्ट्स में सबसे प्रसिद्ध है।


== पदानुक्रम ==
== पदानुक्रम ==


बड़े डिज़ाइनों में, डिज़ाइन को टुकड़ों में विभाजित करना एक सामान्य प्रथा है, प्रत्येक टुकड़ा एक परिभाषा बन जाता है जिसे डिज़ाइन में उदाहरणों के रूप में उपयोग किया जा सकता है। वैक्यूम क्लीनर सादृश्य में, इसके बंदरगाहों के साथ एक वैक्यूम क्लीनर की परिभाषा हो सकती है, लेकिन अब इस परिभाषा में मशीन के आंतरिक घटकों का पूरा विवरण भी सम्मिलित होगा और वे कैसे कनेक्ट होते हैं (मोटर, स्विच, आदि), जैसे वायरिंग आरेख करता है। .
बड़े डिज़ाइनों में, डिज़ाइन को टुकड़ों में विभाजित करना एक सामान्य संकल्पना है, प्रत्येक टुकड़ा एक परिभाषा बन जाता है जिसे डिज़ाइन में उदाहरणों के रूप में उपयोग किया जा सकता है। वैक्यूम क्लीनर सादृश्य में, इसके पोर्टों के साथ एक वैक्यूम क्लीनर की परिभाषा हो सकती है, लेकिन अब इस परिभाषा में मशीन के आंतरिक घटकों का पूरा विवरण भी सम्मिलित होगा और वे कैसे कनेक्ट होते हैं (मोटर, स्विच, आदि), जैसे [[वायरिंग (विकास मंच)|वायरिंग]] आरेख करता है। .


एक परिभाषा जिसमें कोई उदाहरण सम्मिलित नहीं है, उसे आदिम (या एक पत्ता, या अन्य नाम) कहा जाता है; जबकि एक परिभाषा जिसमें उदाहरण सम्मिलित हैं, पदानुक्रमित है।
एक परिभाषा जिसमें कोई उदाहरण सम्मिलित नहीं है, उसे परंपरागत (या एक पत्ता, या अन्य नाम) कहा जाता है; जबकि एक परिभाषा जिसमें उदाहरण सम्मिलित हैं, या पदानुक्रमित है।


एक मुड़ा हुआ पदानुक्रम एक एकल परिभाषा को उदाहरणों द्वारा कई बार प्रदर्शित करने की अनुमति देता है। अनफोल्डेड पदानुक्रम एक परिभाषा को पदानुक्रम में एक से अधिक बार उपयोग करने की अनुमति नहीं देता है।
एक मुड़ा हुआ पदानुक्रम एक एकल परिभाषा को उदाहरणों द्वारा कई बार प्रदर्शित करने की अनुमति देता है। अनफोल्डेड पदानुक्रम एक परिभाषा को पदानुक्रम में एक से अधिक बार उपयोग करने की अनुमति नहीं देता है।


मुड़ा हुआ पदानुक्रम बेहद कॉम्पैक्ट हो सकता है। कुछ उदाहरणों की एक छोटी नेटलिस्ट बहुत बड़ी संख्या में उदाहरणों के साथ डिज़ाइन का वर्णन कर सकती है। उदाहरण के लिए, मान लें कि परिभाषा ए एक मेमोरी सेल की तरह एक साधारण आदिम है। फिर मान लीजिए कि परिभाषा बी में ए के 32 उदाहरण हैं; C में B के 32 उदाहरण हैं; D में C के 32 उदाहरण हैं; और E में D के 32 उदाहरण हैं। डिज़ाइन में अब 5 परिभाषाएँ (A से E तक) और 128 उदाहरण हैं। फिर भी, ई एक परिपथ का वर्णन करता है जिसमें दस लाख से अधिक मेमोरी सेल होते हैं।
मुड़ा हुआ पदानुक्रम बेहद संक्षिप्त हो सकता है। कुछ उदाहरणों की एक छोटी नेटलिस्ट बहुत बड़ी संख्या में उदाहरणों के साथ डिज़ाइन का वर्णन कर सकती है। उदाहरण के लिए, मान लें कि परिभाषा ए एक मेमोरी सेल की तरह एक साधारण परंपरागत है। फिर मान लीजिए कि परिभाषा बी में ए के 32 उदाहरण हैं; सी में बी के 32 उदाहरण हैं; डी में सी के 32 उदाहरण हैं; और में डी के 32 उदाहरण हैं। डिज़ाइन में अब 5 परिभाषाएँ (से तक) और 128 उदाहरण हैं। फिर भी, ई एक परिपथ का वर्णन करता है जिसमें दस लाख से अधिक [[मेमोरी सेल (कंप्यूटिंग)|मेमोरी सेल]] होते हैं।


=== खुलना ===
=== खुलना ===
एक फ्लैट डिजाइन में, केवल प्रिमिटिव को इंस्टेंस किया जाता है। हर बार उपयोग की जाने वाली प्रत्येक परिभाषा की एक नई प्रति (नए नाम के साथ) बनाकर पदानुक्रमित डिजाइनों को पुनरावर्ती रूप से विस्फोट (चपटा) किया जा सकता है। यदि डिज़ाइन अत्यधिक मुड़ा हुआ है, तो इसे इस तरह विस्तारित करने से बहुत बड़ा नेटलिस्ट डेटाबेस बन जाएगा, लेकिन पदानुक्रम निर्भरता को संरक्षित करता है। एक पदानुक्रमित नेटलिस्ट को देखते हुए, मूल परिभाषा से एक आदिम उदाहरण के पथ में उदाहरण के नामों की सूची उस आदिम के लिए एकल अद्वितीय पथ निर्दिष्ट करती है। एक साथ लिए गए प्रत्येक आदिम के पथ में एक बड़ी लेकिन सपाट नेटलिस्ट सम्मिलित है जो कॉम्पैक्ट पदानुक्रमित संस्करण के बिल्कुल बराबर है।
एक फ्लैट डिजाइन में, केवल [[प्रिमिटिव]] को अवस्थित किया जाता है। हर बार उपयोग की जाने वाली प्रत्येक परिभाषा की एक नई प्रति (नए नाम के साथ) बनाकर पदानुक्रमित डिजाइनों को पुनरावर्ती रूप से विस्फोट (चपटा) किया जा सकता है। यदि डिज़ाइन अत्यधिक मुड़ा हुआ है, तो इसे इस तरह विस्तारित करने से बहुत बड़ा नेटलिस्ट डेटाबेस बन जाएगा, लेकिन पदानुक्रम निर्भरता को संरक्षित करता है। एक पदानुक्रमित नेटलिस्ट को देखते हुए, मूल परिभाषा से एक परंपरागत उदाहरण के पथ में उदाहरण के नामों की सूची उस परंपरागत के लिए एकल अद्वितीय पथ निर्दिष्ट करती है। एक साथ लिए गए प्रत्येक परंपरागत के पथ में एक बड़ी लेकिन सपाट नेटलिस्ट सम्मिलित है जो संक्षिप्त पदानुक्रमित संस्करण के बिल्कुल बराबर है।


=== बैकएनोटेशन ===
=== बैकएनोटेशन ===
बैकएनोटेशन वह डेटा है जिसे पदानुक्रमित नेटलिस्ट में जोड़ा जा सकता है। सामान्यतः उन्हें नेटलिस्ट से अलग रखा जाता है, क्योंकि डेटा के ऐसे कई वैकल्पिक सेट एक नेटलिस्ट पर लागू किए जा सकते हैं। ये डेटा भौतिक डिज़ाइन से निकाले गए हो सकते हैं, और अधिक सटीक सिमुलेशन के लिए अतिरिक्त जानकारी प्रदान कर सकते हैं। सामान्यतः डेटा एक पदानुक्रमित पथ से बना होता है और उस आदिम के लिए डेटा का एक टुकड़ा होता है या आरसी समय के मूल्यों को खोजने के लिए # अंतरसंबंध के कारण विलंब होता है।
बैकएनोटेशन वह डेटा है जिसे पदानुक्रमित नेटलिस्ट में जोड़ा जा सकता है। सामान्यतः उन्हें नेटलिस्ट से अलग रखा जाता है, क्योंकि डेटा के ऐसे कई वैकल्पिक सेट एक नेटलिस्ट पर लागू किए जा सकते हैं। ये डेटा भौतिक डिज़ाइन से निकाले गए हो सकते हैं, और अधिक सटीक सिमुलेशन के लिए अतिरिक्त जानकारी प्रदान कर सकते हैं। सामान्यतः डेटा एक पदानुक्रमित पथ से बना होता है और उस परंपरागत के लिए डेटा का एक टुकड़ा होता है या आरसी समय के मूल्यों को खोजने के लिए अंतरसंबंध के कारण विलंब होता है।


=== विरासत ===
=== वंशागति ===
नेटलिस्ट्स में अक्सर उपयोग की जाने वाली एक अन्य अवधारणा वंशानुक्रम की है। मान लीजिए कि एक संधारित्र की एक परिभाषा में 100 pF (100 पिकोफैराड) के डिफ़ॉल्ट मान के साथ Capacitance के अनुरूप एक संबद्ध विशेषता है, जिसे Capacitance कहा जाता है। इस संधारित्र के प्रत्येक उदाहरण में भी ऐसी विशेषता हो सकती है, केवल [[समाई]] के भिन्न मान के साथ। और अन्य उदाहरण किसी भी समाई को बिल्कुल भी संबद्ध नहीं कर सकते हैं। ऐसे सन्दर्भ में जहां किसी उदाहरण के लिए कोई धारिता निर्दिष्ट नहीं की गई है, उदाहरण अपनी परिभाषा से 100 pF मान इनहेरिट करेगा। निर्दिष्ट मान परिभाषा पर मान को ओवरराइड करेगा। यदि बड़ी संख्या में विशेषताएँ परिभाषा के अनुसार ही समाप्त हो जाती हैं, तो बड़ी मात्रा में जानकारी विरासत में मिल सकती है, और नेटलिस्ट में अनावश्यक रूप से निर्दिष्ट नहीं होना चाहिए, अंतरिक्ष की बचत करना और दोनों मशीनों द्वारा डिजाइन को पढ़ना आसान बनाना और लोग।
नेटलिस्ट्स में प्रायः उपयोग की जाने वाली एक अन्य अवधारणा वंशानुक्रम की है। मान लीजिए कि एक [[संधारित्र]] की एक परिभाषा में 100 pF (100 पिकोफैराड) के डिफ़ॉल्ट मान के साथ धारिता के अनुरूप एक संबद्ध विशेषता है, जिसे धारिता कहा जाता है। इस संधारित्र के प्रत्येक उदाहरण में भी ऐसी विशेषता हो सकती है, केवल [[समाई|धारिता]] के भिन्न मान के साथ और अन्य उदाहरण किसी भी धारिता को बिल्कुल भी संबद्ध नहीं कर सकते हैं। ऐसे सन्दर्भ में जहां किसी उदाहरण के लिए कोई धारिता निर्दिष्ट नहीं की गई है, उदाहरण अपनी परिभाषा से 100 pF मान वंशानुक्रम करेगा। निर्दिष्ट मान परिभाषा पर मान को ओवरराइड करेगा। यदि बड़ी संख्या में विशेषताएँ परिभाषा के अनुसार ही समाप्त हो जाती हैं, तो बड़ी मात्रा में जानकारी वंशानुक्रम में मिल सकती है, जिसे नेटलिस्ट में अनावश्यक रूप से निर्दिष्ट नहीं होना चाहिए।


== संदर्भ ==
== संदर्भ ==
Line 56: Line 56:
== अग्रिम पठन ==
== अग्रिम पठन ==


* [https://web.stanford.edu/class/ee133/handouts/general/spice_ref.pdf SPICE ‘Quick’ Reference Sheet, THE GENERAL ANATOMY OF A SPICE DECK], Stanford 2001
* [https://web.stanford.edu/class/ee133/handouts/general/spice_ref.pdf स्पाइस ‘Quick’ Reference Sheet, THE GENERAL ANATOMY OF A स्पाइस DECK], Stanford 2001


*[https://reference.wolfram.com/applications/insydes/Tutorial/TheNetlistFormat.html Wolfram Alpha - sequences of Mathematica lists encapsulated by the Analog Insydes command Netlist.]
*[https://reference.wolfram.com/applications/insydes/Tutorial/TheNetlistFormat.html Wolfram Alpha - sequences of Mathematica lists encapsulated by the Analog Insydes command Netlist.]

Revision as of 00:07, 27 February 2023

इलेक्ट्रॉनिक डिजाइन में, नेटलिस्ट एक विद्युत परिपथ की संबद्धता का वर्णन है।[1][2] अपने सरलतम रूप में, नेटलिस्ट किसी परिपथ में इलेक्ट्रॉनिक घटक की एक सूची होती है और उन नोड (परिपथ) की सूची होती है जिनसे वे संलग्न होते हैं।[1][3] एक नेटवर्क (नेट) दो या दो से अधिक परस्पर घटकों का विस्तृत संग्रह है।

इलेक्ट्रॉनिक डिजाइन स्वचालन, इलेक्ट्रॉनिक कैड, इलेक्ट्रॉनिक तन्त्रों के डिजाइन में प्रयुक्त सॉफ्टवेयरों का सामान्य नाम है। इसके अन्तर्गत मुख्यतः एकीकृत परिपथ डिजाइन, प्रिन्टेड परिपथ बोर्ड डिजाइन, इलेक्ट्रॉनिक परिपथों के आरेख बनाने वाले सॉफ्टवेयर, और परिपथ सिमुलेशन के सॉफ्टवेयर आदि आते हैं।

नेटलिस्ट की संरचना, जटिलता और प्रतिनिधित्व काफी भिन्न हो सकते हैं, लेकिन प्रत्येक नेटलिस्ट का मूल उद्देश्य ग्राफ (सार डेटा प्रकार) को व्यक्त करना है। नेटलिस्ट सामान्यतः उदाहरणों, नोड्स और अनुमानतः सम्मिलित घटकों के कुछ गुणों से ज्यादा कुछ नहीं प्रदान करते हैं।[4] यदि वे इससे कहीं अधिक व्यक्त करते हैं, तो उन्हें सामान्यतः एक हार्डवेयर विवरण भाषा माना जाता है जैसे कि वैरीलॉग या वीएचडीएल, या कई भाषाओं में से एक जिसे विशेष रूप से सिम्युलेटर या हार्डवेयर संकलक (जैसे स्पाइस एनालॉग सिमुलेशन नेटलिस्ट) के इनपुट के लिए डिज़ाइन किया गया है।

नेटलिस्ट के प्रकार

नेटलिस्ट हो सकते हैं:

  • भौतिक (भौतिक कनेक्शन पर आधारित) या तार्किक (तार्किक कनेक्शन पर आधारित)
    • उदाहरण के लिए, उन घटकों में से एक के टर्मिनल के माध्यम से तीन घटकों को जोड़ने की प्रत्यक्ष प्रक्रिया को 'तार्किक' कनेक्शन माना जाएगा, जबकि प्रत्येक असतत 'भौतिक' कनेक्शन होगा।
  • अवस्थित-आधारित (एक घटक उदाहरण के बारे में क्लस्टर) या नेट-आधारित (किसी विशेष नेट से कनेक्शन की संपूर्ण सूची)
    • फ्लैट (सभी कनेक्शन दिखाए जाते हैं) या श्रेणीबद्ध (कनेक्शन किसी तरह से समूहीकृत होते हैं; जैसे कि वे किस भौतिक बोर्ड या परत से संलग्न हैं। ऐसी नेटलिस्ट अतिरिक्त रूप से या तो फोल्ड हो सकती हैं, जो किसी दिए गए स्तर के नीचे डेटा संरक्षित हैं। एब्सट्रैक्शन या अनफोल्डेड संपूर्ण होने के नाते और इस प्रकार फ्लैट नेटलिस्ट्स की सामग्री में संभावित रूप से समतुल्य है।)

एक नेटलिस्ट की सामग्री और संरचना

अधिकांश नेटलिस्ट में या तो उपयोग किए गए भागों या उपकरणों के विवरण होते हैं या उनका संदर्भ देते हैं। नेटलिस्ट में हर बार एक भाग का उपयोग किया जाता है, इसे एक उदाहरण कहा जा सकता है।

ये विवरण सामान्यतः उन कनेक्शनों को सूचीबद्ध करते हैं जो उस प्रकार के डिवाइस से बने होते हैं, और उस डिवाइस के कुछ बुनियादी गुणों को सूचीबद्ध करते हैं। कई अन्य नामों के अलावा, इन कनेक्शन बिंदुओं को टर्मिनल या पिन कहा जाता है।

उदाहरण मॉस्फेट ट्रांजिस्टर या द्विध्रुवी जंक्शन ट्रांजिस्टर से लेकर अवरोध, संधारित्र या एकीकृत परिपथ चिप तक कुछ भी हो सकता है।

इनके सभी उदाहरणों में टर्मिनल होते हैं जैसे कि वैक्यूम क्लीनर के सन्दर्भ में, ये टर्मिनल प्लग में धातु के तीन पिन होंगे। प्रत्येक टर्मिनल का एक नाम होता है, और वैक्यूम क्लीनर के उदाहरण को जारी रखने में वे न्यूट्रल, लाइव और ग्राउंड हो सकते हैं। सामान्यतः, प्रत्येक उदाहरण का एक विशिष्ट नाम होगा, ताकि यदि आपके पास वैक्यूम क्लीनर के दो उदाहरण हों, तो एक वीएसी1 और दूसरा वीएसी2 हो सकता है। उनके नाम के अलावा, वे अन्यथा समान हो सकते हैं।

नेटवर्क (जाल) वे तार होते हैं जो परिपथ में चीजों को एक साथ जोड़ते हैं। नेटलिस्ट जिस विशेष भाषा में लिखी गई है, और उस भाषा की विशेषताओं के आधार पर, डिज़ाइन में नेट से जुड़ी कोई विशेष विशेषताएँ हो सकती हैं या नहीं भी हो सकती हैं।

अवस्थित आधारित नेटलिस्ट सामान्यतः डिजाइन में उपयोग किए जाने वाले अवस्थितेस की एक सूची प्रदान करते हैं। प्रत्येक उदाहरण के साथ, या तो शुद्ध नामों की एक आदेशित सूची प्रदान की जाती है, या प्रदान किए गए जोड़े की एक सूची, एक उदाहरण पोर्ट नाम के साथ, नेट नाम के साथ जिससे वह पोर्ट जुड़ा हुआ है। इस तरह के विवरण में, कनेक्शन सूचियों से जालों की सूची एकत्र की जा सकती है, और विशेष विशेषताओं को स्वयं जालों से जोड़ने के लिए कोई जगह नहीं है। स्पाइस उदाहरण-आधारित नेटलिस्ट का एक उदाहरण है।

नेट-आधारित नेटलिस्ट सामान्यतः सभी उदाहरणों और उनकी विशेषताओं का वर्णन करते हैं, फिर प्रत्येक नेट का वर्णन करते हैं, और कहते हैं कि प्रत्येक उदाहरण पर वे किस पोर्ट से संलग्न हैं। यह एट्रिब्यूट को नेट से संबद्ध करने की अनुमति देता है। ईडीआईएफ अनुमानतः नेट-आधारित नेटलिस्ट्स में सबसे प्रसिद्ध है।

पदानुक्रम

बड़े डिज़ाइनों में, डिज़ाइन को टुकड़ों में विभाजित करना एक सामान्य संकल्पना है, प्रत्येक टुकड़ा एक परिभाषा बन जाता है जिसे डिज़ाइन में उदाहरणों के रूप में उपयोग किया जा सकता है। वैक्यूम क्लीनर सादृश्य में, इसके पोर्टों के साथ एक वैक्यूम क्लीनर की परिभाषा हो सकती है, लेकिन अब इस परिभाषा में मशीन के आंतरिक घटकों का पूरा विवरण भी सम्मिलित होगा और वे कैसे कनेक्ट होते हैं (मोटर, स्विच, आदि), जैसे वायरिंग आरेख करता है। .

एक परिभाषा जिसमें कोई उदाहरण सम्मिलित नहीं है, उसे परंपरागत (या एक पत्ता, या अन्य नाम) कहा जाता है; जबकि एक परिभाषा जिसमें उदाहरण सम्मिलित हैं, या पदानुक्रमित है।

एक मुड़ा हुआ पदानुक्रम एक एकल परिभाषा को उदाहरणों द्वारा कई बार प्रदर्शित करने की अनुमति देता है। अनफोल्डेड पदानुक्रम एक परिभाषा को पदानुक्रम में एक से अधिक बार उपयोग करने की अनुमति नहीं देता है।

मुड़ा हुआ पदानुक्रम बेहद संक्षिप्त हो सकता है। कुछ उदाहरणों की एक छोटी नेटलिस्ट बहुत बड़ी संख्या में उदाहरणों के साथ डिज़ाइन का वर्णन कर सकती है। उदाहरण के लिए, मान लें कि परिभाषा ए एक मेमोरी सेल की तरह एक साधारण परंपरागत है। फिर मान लीजिए कि परिभाषा बी में ए के 32 उदाहरण हैं; सी में बी के 32 उदाहरण हैं; डी में सी के 32 उदाहरण हैं; और ई में डी के 32 उदाहरण हैं। डिज़ाइन में अब 5 परिभाषाएँ (ए से ई तक) और 128 उदाहरण हैं। फिर भी, ई एक परिपथ का वर्णन करता है जिसमें दस लाख से अधिक मेमोरी सेल होते हैं।

खुलना

एक फ्लैट डिजाइन में, केवल प्रिमिटिव को अवस्थित किया जाता है। हर बार उपयोग की जाने वाली प्रत्येक परिभाषा की एक नई प्रति (नए नाम के साथ) बनाकर पदानुक्रमित डिजाइनों को पुनरावर्ती रूप से विस्फोट (चपटा) किया जा सकता है। यदि डिज़ाइन अत्यधिक मुड़ा हुआ है, तो इसे इस तरह विस्तारित करने से बहुत बड़ा नेटलिस्ट डेटाबेस बन जाएगा, लेकिन पदानुक्रम निर्भरता को संरक्षित करता है। एक पदानुक्रमित नेटलिस्ट को देखते हुए, मूल परिभाषा से एक परंपरागत उदाहरण के पथ में उदाहरण के नामों की सूची उस परंपरागत के लिए एकल अद्वितीय पथ निर्दिष्ट करती है। एक साथ लिए गए प्रत्येक परंपरागत के पथ में एक बड़ी लेकिन सपाट नेटलिस्ट सम्मिलित है जो संक्षिप्त पदानुक्रमित संस्करण के बिल्कुल बराबर है।

बैकएनोटेशन

बैकएनोटेशन वह डेटा है जिसे पदानुक्रमित नेटलिस्ट में जोड़ा जा सकता है। सामान्यतः उन्हें नेटलिस्ट से अलग रखा जाता है, क्योंकि डेटा के ऐसे कई वैकल्पिक सेट एक नेटलिस्ट पर लागू किए जा सकते हैं। ये डेटा भौतिक डिज़ाइन से निकाले गए हो सकते हैं, और अधिक सटीक सिमुलेशन के लिए अतिरिक्त जानकारी प्रदान कर सकते हैं। सामान्यतः डेटा एक पदानुक्रमित पथ से बना होता है और उस परंपरागत के लिए डेटा का एक टुकड़ा होता है या आरसी समय के मूल्यों को खोजने के लिए अंतरसंबंध के कारण विलंब होता है।

वंशागति

नेटलिस्ट्स में प्रायः उपयोग की जाने वाली एक अन्य अवधारणा वंशानुक्रम की है। मान लीजिए कि एक संधारित्र की एक परिभाषा में 100 pF (100 पिकोफैराड) के डिफ़ॉल्ट मान के साथ धारिता के अनुरूप एक संबद्ध विशेषता है, जिसे धारिता कहा जाता है। इस संधारित्र के प्रत्येक उदाहरण में भी ऐसी विशेषता हो सकती है, केवल धारिता के भिन्न मान के साथ और अन्य उदाहरण किसी भी धारिता को बिल्कुल भी संबद्ध नहीं कर सकते हैं। ऐसे सन्दर्भ में जहां किसी उदाहरण के लिए कोई धारिता निर्दिष्ट नहीं की गई है, उदाहरण अपनी परिभाषा से 100 pF मान वंशानुक्रम करेगा। निर्दिष्ट मान परिभाषा पर मान को ओवरराइड करेगा। यदि बड़ी संख्या में विशेषताएँ परिभाषा के अनुसार ही समाप्त हो जाती हैं, तो बड़ी मात्रा में जानकारी वंशानुक्रम में मिल सकती है, जिसे नेटलिस्ट में अनावश्यक रूप से निर्दिष्ट नहीं होना चाहिए।

संदर्भ

  1. 1.0 1.1 Holt, Randy. "Schematic vs. Netlist: A Guide to PCB Design Integration". blog.optimumdesign.com (in English). Retrieved 2019-04-03.
  2. "netlist.html". www.vlsiip.com. Retrieved 2019-04-03.
  3. "Netlist File Format" (PDF). www.expresspcb.com. Retrieved August 24, 2021. The netlist is written in a single file, but includes four sections: 1) A file header, 2) A table listing each of the components, 3) A table listing each of the net names, 4) A table listing each of the net connections. Every table entry is written using a single line of text that ends with a CRLF. The fields of the table are separated with Space characters (0x20). String fields begin and end with double quotes. Each of the three tables are terminated by a blank line (CRLF).
  4. "Example Circuits and Netlists | Using The spice Circuit Simulation Program | Electronics Textbook". www.allaboutcircuits.com (in English). Retrieved 2019-04-03.


अग्रिम पठन