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