पीसीबी डिजाइन के लिए नया - क्यों ऑटो रखने के घटक मौजूद नहीं है?


23

सर्किट डिजाइन सॉफ्टवेयर मैंने देखा है कि एक पीसीबी पर स्वचालित रूप से निशान आदि को रूट करने की क्षमता है।
लेकिन क्यों इस सॉफ्टवेयर में कुल बोर्ड आकार को कम करने के लिए पीसीबी पर घटकों को स्वचालित रूप से रखने की क्षमता नहीं है?
क्या यह सिर्फ स्वचालित होना जटिल है?


8
ऑटोराउटर को बाधाओं के आधार पर घटकों को बेहतर तरीके से रखने में सक्षम होना चाहिए (अर्थात "बटन यहां जाना चाहिए", "एलईडी इस क्षेत्र में कहीं भी हो सकता है")। वे उन हिस्सों पर उपयोग करने के लिए इष्टतम पिन का चयन करने में भी सक्षम होना चाहिए जिनके पास बहुत सारे समान पिन हैं (अर्थात "किसी भी io पिन का उपयोग करें जिसमें PWM है")। दुर्भाग्य से, मैंने कभी ऐसा नहीं देखा जो इन कार्यों में से एक है। शायद किसी दिन।
बिगजॉश

7
प्लेसमेंट (और ओरिएंटेशन, गेट स्वैपिंग, पिन स्वैपिंग) वास्तव में, वास्तव में महत्वपूर्ण है। अच्छी रूटिंग पाने के लिए यह सबसे महत्वपूर्ण चीज है। मुझे लगता है कि एक स्मार्ट ऑटोप्लेजर को योजनाबद्ध प्लेसमेंट से शुरू करना चाहिए, जब तक कि योजनाबद्ध उन आधुनिक "नेटलिस्ट्स" के घृणा से भरे बक्से में से एक न हो।
चिह्नित करता है

2
बैकग्राउंड से आने से सर्किट डिज़ाइन नहीं होता है, मुझे ऐसा लगता है कि चूहों के घोंसले को सभी घटकों को बेहतर तरीके से लेआउट करने के लिए पर्याप्त होना चाहिए, शायद कुछ बाधाओं के लिए। क्या अधिकांश वास्तविक सर्किट इससे अधिक मैन्युअल रूप से डिज़ाइन किए गए हैं?
एडम

3
संक्षेप में, घटकों को स्पष्ट रूप से रखना - यहां तक ​​कि उन सभी विचारों के बिना जो वास्तविक, गैर-आदर्श सर्किट होने से आते हैं - एक बहुत ही कठिन सीएस समस्या है। वास्तव में, यह ट्रैवलिंग सेल्समैन समस्या का एक उदाहरण है, और इस तरह के एक इष्टतम समाधान के रूप में संभव है।
निक जॉनसन

2
@ ग्रेग''ऑन ही मुझे आश्चर्य है। निश्चित रूप से अधिक काम के साथ ऑटो-प्लेसर डिकॉउलिंग कैप की भूमिका को समझ सकते हैं, और सर्किट शोर आदि का अनुकरण कर सकते हैं
एडम

जवाबों:


19

मैं हाल ही में कुछ PCBs डिज़ाइन कर रहा हूं और मैं आपको अपने अंतिम उत्पाद के लिए ऑटो-प्लेज़र या ऑटो-राउटर का उपयोग नहीं करने का सुझाव दूंगा। (प्रोटीन में ऑटो प्लेसर है।)

सबसे पहले - आपका सॉफ्टवेयर एक केंचुआ के रूप में बुद्धिमान है जब यह ऑटो प्लेसमेंट या ऑटो रूटिंग की बात आती है। दूसरे शब्दों में, यह एक आलू के रूप में गूंगा है।

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

  • Decoupling कैपेसिटर शारीरिक रूप से आईसी के करीब होना चाहिए।
  • कम से कम संलग्न क्षेत्र के छोरों होना चाहिए।
  • ग्राउंड प्लेन जितना संभव हो उतना ठोस होना चाहिए।
  • कोई हस्तक्षेप करने वाले संकेत आपके क्रिस्टल थरथरानवाला आदि के करीब नहीं होने चाहिए।

आपका सॉफ़्टवेयर इन अवधारणाओं का सम्मान नहीं करेगा क्योंकि ये आपके योजनाबद्ध में उल्लिखित नहीं हैं। आपको केवल तभी पता चलेगा जब आपको पीसीबी निर्मित हो गया है और यह हर समय अपेक्षित रूप से काम नहीं करता है। मैं यह नहीं कह रहा हूं कि यह काम नहीं करेगा। यह 90% तक काम कर सकता है, लेकिन आपको उस 10% को भी ध्यान में रखना होगा।

मेरा सुझाव यह है कि आपको कुछ PCB डिजाइनिंग कॉन्सेप्ट्स सीखने चाहिए और अपने दम पर रखने और रूट करने की कोशिश करनी चाहिए। आप फ़ोरम में हमेशा अपने योजनाबद्ध और बोर्ड लेआउट पोस्ट कर सकते हैं और विशेषज्ञ आपको अपनी राय / सुझाव देंगे।


5
केंचुआ और आलू के लिए +1। हर बार जब मैंने ऑटो प्लेसर और ऑटोरैटर का इस्तेमाल किया, तो मैंने क्रिटिकल बिट्स किया था और इसे आसान सा छोड़ दिया था, लेकिन यहां तक ​​कि यह पूछना भी बहुत ज्यादा था: 60% बोर्ड को पास कर दिया गया और फाइनल पास कर दिया गया। बहुत सारी खाली जगह के साथ विशाल आवश्यकताओं के डिजाइन को छोड़कर, खुद को सब कुछ करने से बेहतर है।
मिस्टर मिस्टेअर

1
@ मिस्टर- हाँ आप सही कह रहे हैं। यहां तक ​​कि मैं राउटिंग के लिए एक आइडिया पाने के लिए हर बार ऑटो राउटर का इस्तेमाल करता हूं और क्रिटिकल सेक्शन खत्म करता हूं। हालाँकि मैं इन दिनों ईगल का उपयोग कर रहा हूँ और इसमें ऑटो प्लेज़र नहीं है।
व्हिस्कीजैक

1
ऊपर मेरी टिप्पणी में टाइपो: "विशाल एलओवी * आवश्यकताओं के डिजाइन" के लिए। जाहिर है, एक उच्च आवृत्ति डिजिटल आवृत्ति ऑटोरोउटिंग और ऑटोप्लसिंग के साथ अच्छा प्रदर्शन नहीं करेगी ...
मिस्टर मिस्टेअर

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

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

13

मेरे राउटर में "कमरों" के लिए एक placer और समर्थन है। चलो आप क्षेत्रों को आकर्षित करते हैं और योजनाबद्ध से "कमरे" के कुछ हिस्सों को असाइन करते हैं। ऑटो प्लेसर उन्हें एक साथ उस कमरे में समूहित करेगा जहां भाग को सौंपा गया है। बहुत यकीन है कि यह इस कनेक्टर के लिए समर्थन है इस स्थान पर भी जाना चाहिए। एक उपकरण भी है जो सिमुलेशन परिणामों के आधार पर स्वचालित डिकॉउलिंग प्लेसमेंट और भाग चयन / अनुकूलन कर सकता है। यह हालांकि सस्ता नहीं है :) लेकिन यह काम करता है।

ऑटो प्लेसर उस तरह से सब कुछ एक साथ रखकर आपको थोड़ा समय बचा सकता है। लेकिन मैं अभी भी जगह मोड में लेआउट के लिए योजनाबद्ध पार जांच पसंद करते हैं।

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


4
आपका CAD पैकेज क्या है?
मिस्टर मिस्टेयर

5
एलेग्रो का उच्च अंत संस्करण, डिकॉउलिंग सिग्रिटी से है जो अब ताल के स्वामित्व में है। मुझे पैड भी पसंद हैं। माना जाता है कि नया मार्ग आधारित ऑटो राउटर देखने में दिलचस्प लगता है।
कुछ हार्डवेयर गाय

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

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

12

एक बात जिस पर आप विचार नहीं कर रहे हैं, वह यह है कि एक योजनाबद्ध में एक बोर्ड को ठीक से रखने के लिए पर्याप्त जानकारी नहीं है

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

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


वास्तविक रूप से, प्राथमिक कारण कम से कम बेहतर ऑटोरटाउटर्स नहीं हैं कि कोई बाजार नहीं है। EDA बाजार कई अन्य आला, विशेष प्रयोजन सॉफ्टवेयर बाजारों की तुलना में तुलनात्मक रूप से छोटा है, और यहां तक ​​कि सबसे अच्छा ऑटोरैटर कभी भी एक वास्तविक मानव द्वारा एक वास्तविक लेआउट से संपर्क नहीं करेगा।

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


10

1974-1975 में वापस मैंने हनीवेल में डिज़ाइन ऑटोमेशन विभाग में काम किया। तब से समस्या नहीं बदली:

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

इस तरह की समस्याओं से निपटने के लिए एआई-आधारित दृष्टिकोण हैं। हालांकि, कुछ बिंदु पर, डिजाइनर के लिए बस चीजों की कोशिश करना आसान है, और सॉफ़्टवेयर से प्रतिक्रिया प्राप्त करना है कि जिस डिजाइन में वह रुचि रखते हैं, वह है। AI सॉफ्टवेयर को सब कुछ बताएं जो आपको पता है कि एक अंतहीन, धन्यवाद रहित कार्य हो सकता है। अंततः, सॉफ़्टवेयर को आपको, डिजाइनर और ट्रेडऑफ़ के सेट को संतुष्ट करना होगा।

इसके बाद काम करने का सबसे अच्छा तरीका, इसे डिजाइनर और सॉफ्टवेयर के बीच एक सहयोग के रूप में देखना है, जिसमें डिजाइनर अंतिम निर्णय लेते हैं। सॉफ्टवेयर गुणों के बारे में जानकारी प्रदान कर सकता है, और ब्याज की संपत्ति में सुधार के तरीके सुझा सकता है, और परिवर्तन के परिणामों का पता लगाने में मदद कर सकता है।

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


इतनी विलक्षणता के लिए ...
पीटर मोर्टेंसन

@PeterMortensen विलक्षणता के बाद मानव राय मायने नहीं रखेगी।
स्पेरो पेफेनी

1
मुझे लगता है कि बिंदु 2 वास्तव में उत्तर का एकमात्र प्रासंगिक हिस्सा है। कई एल्गोरिदम हैं जो बहुत जल्दी एनपी-पूर्ण समस्याओं को हल कर सकते हैं, महत्वपूर्ण समस्या के आकार के साथ, बहुत स्वीकार्य समय लागत के साथ "अच्छा पर्याप्त" डिग्री के लिए, अच्छा अक्सर इष्टतम के 2-3% के भीतर होता है।
whatsisname

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

9

मेरे सॉफ़्टवेयर में एक प्लाज़र है। मैंने एक बार यह देखा कि क्या होगा। यह बोर्ड के माध्यम से चीरता चला गया, और इस पर सभी घटकों को मिला। जब मैंने इसे देखा, तो भाग हर जगह थे। आईसी एक कोने में था, और इसकी डिकूपिंग कैप दूसरे में थी। महत्वपूर्ण पथ जिग-ज़ैग्ड आगे और पीछे पूरे बोर्ड में।

मेरी बात यहाँ प्लेसमेंट सही पाने के लिए लेआउट का सबसे कठिन हिस्सा है। पहले यांत्रिक बाधाएँ हैं। एमई / औद्योगिक डिजाइनर अपने कनेक्टर / स्विच / पॉट / एलईडी / जो किसी अन्य बाहरी इंटरफेसिंग घटक को एक निश्चित स्थान पर बोर्ड से बाहर आना चाहते हैं। कुछ घटक बाड़े के अंदर कुछ क्षेत्रों में होने के लिए बहुत लंबा हो सकता है। सर्किट के कुछ हिस्से हो सकते हैं जिन्हें अलगाव के लिए एक निश्चित निकासी रखने की आवश्यकता होती है।

इनमें से कुछ कारकों से निपटने के लिए सॉफ़्टवेयर को कॉन्फ़िगर किया जा सकता है, लेकिन यह कभी भी अच्छा काम नहीं करेगा, या समस्याओं को देखने के लिए सक्षम हो सकता है जिस तरह से एक मानव कर सकता है। एक आदर्श दुनिया में, यदि आपको प्लेसमेंट सही मिलता है, तो पावर, ग्राउंड, और क्रिटिकल पाथ राउटिंग करें, ऑटोरैटर का एक त्वरित पास लेआउट को समाप्त करने में सक्षम होना चाहिए।


मुझे यह जवाब पसंद है, हालांकि यह अभी भी एक हद तक लगता है कि सॉफ्टवेयर उस काम के लिए नहीं है जो यह होना चाहिए।
एडम

6
@ अदम आप अधिक अनुभव प्राप्त करते हैं, आप बेहतर समझेंगे। प्लेसमेंट प्रक्रिया अविश्वसनीय रूप से जटिल है, और एक चूहे का घोंसला केवल कहानी का हिस्सा बताता है। उदाहरण के लिए डिकूपिंग कैप लें, प्लाज़र को कैसे पता होना चाहिए कि उन्हें कहां रखा जाए? जहां तक ​​यह चिंता का विषय है, उन कैप्स को सभी को कुछ मनमाने स्थान पर एक साथ रखा जा सकता है।
मैट यंग

2
दूरी की कमी उसके लिए एक संभव विकल्प की तरह लगती है।
टिम सेग्यूइन

आपके सॉफ्टवेयर का नाम क्या है?
डेनियल टेस्टा

2

मैंने पहले ऑटो-प्लेसर का उपयोग किया है, और वे वास्तव में चट्टानों के ढेर के रूप में गूंगे हैं। केवल एक ही चीज़ के बारे में आप उन्हें इस्तेमाल कर सकते हैं, इसके लिए पैरों के निशान के ढेर को खोलना है, जो सभी आपके बोर्ड पर उसी स्थान पर आयात किए गए थे; कुछ और बस पूछने के लिए बहुत ज्यादा है।

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