नेटलिस्ट

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

अग्रिम पठन

 * SPICE ‘Quick’ Reference Sheet, THE GENERAL ANATOMY OF A SPICE DECK, Stanford 2001


 * Wolfram Alpha - sequences of Mathematica lists encapsulated by the Analog Insydes command Netlist.