VHDL: घटक बनाम इकाई


25

मैं सोच रहा हूँ कि घटक एक इकाई के बीच क्या अंतर है। मैं जानना चाहता हूं कि किन मामलों में संस्थाओं के बजाय घटकों का उपयोग करना बेहतर है। बहुत बहुत धन्यवाद।


1
कृपया, क्या कोई टैग 'बनाम' कॉल कर सकता है। धन्यवाद।
पीटरस्टोन

7
आप शीर्षक में "बनाम" की तरह मतलब है? हम्म, एक अच्छा विचार नहीं है, मेथिंक।
स्टीवनवह जूल 12'11

2
यहां हर कोई विज़ुअल स्टूडियो का उपयोग नहीं करता है .... ओह प्रतीक्षा करें ... आपका मतलब दूसरे "बनाम" सही था? ;-)
cbmeeks 19

जवाबों:


17

यहाँ एक सादृश्य है जो कुछ लोगों को मदद करता है (विशेषकर भौतिक इलेक्ट्रॉनिक्स पृष्ठभूमि से):

एक componentकंपाइलर बताता है "इस तरह के पिन के साथ कुछ होने जा रहा है, इसे किसी बिंदु पर कहा जाता है, लेकिन अब चिंता न करें"। यह एक "सॉकेट" को परिभाषित करता है। आप उस "सॉकेट" आदि के लिए "तारों को" का वर्णन करने के लिए आगे बढ़ सकते हैं।

एक entityनाम और पिन के सेट के साथ कुछ विशिष्ट है, जो संकलक तब "उस" सॉकेट में प्लग कर सकता है (और इसलिए "तारों" से जुड़ा हो)।

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

आप की जरूरत है घटकों का उपयोग करने के लिए यदि आप Verilog और VHDL और VHDL के भीतर एक Verilog ब्लॉक उपयोग करने की आवश्यकता मिश्रण कर रहे हैं। तब componentसॉकेट है और तब तक नहीं जब तक कि कंपाइलर / एलबोरटेकर वेरिलॉग को सॉकेट में प्लग न कर दे।


घटक डीआईपी पैकेज की तरह है। आप एक सर्किट में एक ही 8-पिन सेशन- amp दर्जन बार इस्तेमाल कर सकते हैं, और यह हमेशा 8 पिन होता है। वे अलग-अलग घटक हैं, भले ही वे एक ही प्रकार के ऑप amp हैं। डेटाशीट पर पिनआउट की तरह एंटिटी है; सभी अलग-अलग op-amps में एक ही पिनआउट है।
अज्ज ४१०

14

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

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

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

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

उदाहरण के लिए:

MyDesignUnit : entity library_name.entity_name(architecture_name)
               port map(
                     ...

2

नीचे [1] से:

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

संदर्भ और अधिक विवरण के लिए [१] देखें।


लाइन पर कई वीएचडीएल ट्यूटोरियल हैं [2] [3] ... बुक (84 पेज पीडीएफ) [4] अच्छा लग रहा है [5] मुख्य रूप से लिंक के लिए [6]


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

2
पुराना दिमाग :-)। मैं अधिकतम जानकारी की ओर झुकता हूं (जैसा कि आपने ध्यान दिया होगा :-)) और एंडनोट विधि पाठकों को यह देखने की अनुमति देती है कि लिंक कहां से है और क्या कुछ उसी साइट पर हैं - जैसा कि कभी-कभी होता है। बहुत लंबे लिंक के लिए मैं एक सार्थक नाम के साथ bit.ly / j.mp का उपयोग करना चाहूंगा। मैंने उपयोगकर्ताओं को एक लिंक पर क्लिक करने के बारे में भी देखा है (भले ही इन्हें कॉपी किया जा सकता है और जांच (अतिरिक्त काम) के लिए चिपकाया जा सकता है)। BUT बिंदु नोट किया गया है और मैं भविष्य में प्रत्येक विकल्प पर विचार करूंगा।
रसेल मैकमोहन

0

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.