होमब्रीक सीपीयू के लिए आवृत्ति सीमा


15

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


जैसे ... घर में बना वीएलएसआई चिप्स? मुझे लगता है कि यह एक लागत सीमा है। सटीक कि बहु मिलियन डॉलर के उपकरण केवल घर पर नकल नहीं किए जा सकते हैं और परिणामस्वरूप चिप्स को धीमा चलना चाहिए।
नैट

4
@ नहीं, मुझे लगता है कि वह टीटीएल से निर्मित होमबॉर्न मल्टी-चिप सीपीयू की बात कर रहा है। उदाहरण के लिए: homebrewcpu.com
अल्फ्रेड सेंटॉरी

@ मैं अपने सवाल को और अधिक विशिष्ट होने के लिए अद्यतन किया है।
यूजेन

@AlfredCentauri - हाँ, आप सही हैं;)
यूजेन

जवाबों:


16

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

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

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

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

इसलिए, यदि आप असतत घटकों में से एक सीपीयू बनाते हैं, तो आप केवल तेजी से स्विचिंग समय के साथ छोटे घटकों को प्राप्त नहीं कर रहे हैं, और वही निकटता जो आवारा समाई और अधिष्ठापन को कम करता है।

फिर भी, 1960 के दशक में प्राचीन असतत-घटक मशीनें इन होमब्रे मशीनों की तुलना में काफी तेज थीं। वहां पहुंचने में कुछ समय और चालाक लगा। उदाहरण के लिए आईबीएम 360 मॉडल 44 (1964) 4 मेगाहर्ट्ज पर चला। यह अभी भी "होमब्रेव स्पीड" हो सकता है, लेकिन सीडीसी 7600 कुछ साल बाद 1969 में 36 मेगाहर्टज से आगे निकल गया। विकिपीडिया लेख http://en.wikipedia.org/wiki/CDC_7600 उदाहरण के लिए खींची गई कुछ चालों पर एक संकेत देता है:

"हमेशा की तरह, क्रे के डिज़ाइन ने आकार को कम करने के लिए पैकेजिंग पर भी ध्यान केंद्रित किया, सिग्नल पथों को छोटा किया, और जिससे ऑपरेटिंग आवृत्ति में वृद्धि हुई। ... [ई] ach सर्किट मॉड्यूल में वास्तव में छह पीसी बोर्ड तक शामिल थे, प्रत्येक में सबमिनी प्रतिरोधों, डायोड के साथ भरा हुआ था। और ट्रांजिस्टर। छह बोर्डों को ढेर कर दिया गया था और फिर उनके किनारों के साथ जुड़ा हुआ था, जिससे एक बहुत कॉम्पैक्ट, लेकिन मूल रूप से अप्राप्य मॉड्यूल बना। "

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


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

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

15

एक पूर्व उच्च विद्यालयी के रूप में, जिसने 7400 श्रृंखला टीटीएल के साथ एक विशेष प्रयोजन के कंप्यूटर का निर्माण किया, जिसने विज्ञान मेले में कुछ थोड़े पुरस्कार जीते, मैंने इन चीजों का अवलोकन किया, जो इसे जितना संभव हो उतनी तेजी से चलाने से रोकते थे:

  • ब्रेडबोर्ड में आवारा समाई। कनेक्टर्स के प्रत्येक आसन्न जोड़ी के बीच कुछ पीएफ। सीमित पल्स एज वृद्धि / गिरावट समय और स्थानों में क्रॉसस्टॉक को जोड़ा गया। यह शायद सबसे बड़ा कारक था।

  • ग्रैब-बैग चिप्स के रूपांतर। (किसी को भी पॉली-पाक याद है?) 74LSxx, 74Hxx, 74xx विभिन्न प्रसार देरी और अन्य विशेषताओं के साथ, कुछ मेगाहर्ट्ज की तुलना में उच्च घड़ी की गति पर सिग्नलों का रहना असंभव बना दिया।

  • सस्ता स्टैटिक मेमोरी चिप्स, फिर से एक ग्रैब-बैग या अन्य नो-क्वालिटी स्रोत से। वे सिर्फ एक निश्चित दर से परे मज़बूती से पढ़ या लिख ​​नहीं सकते थे।

  • मेरा परीक्षण इंस्ट्रूमेंटेशन homebrew सिग्नल जनरेटर, एक 5MHz बैंडविड्थ ऑसिलोस्कोप, और अस्थायी जूरी-रिगर्ड सर्किटरी तक सीमित था। सिग्नल की अखंडता, समय, डिजिटल संकेतों के एम्पलीट्यूड की जांच करना कठिन है, जो कम-से-कम wobbly में फ़िल्टर किए गए हैं।

आज, जब तक कोई एक प्राचीन खरीदार न हो, तब तक 5 मेगाहर्ट्ज का दायरा खोजना मुश्किल होगा। सभी प्रकार के बेहतर चिप्स बस के रूप में प्राप्त करना आसान है, यहां तक ​​कि 0.1 "डीआईपी पैकेज में भी, सिवाय इसके कि मैंने लंबे समय में हड़पने के बैग के रास्ते में बहुत कुछ नहीं देखा है। सॉकेट ब्रेडबोर्ड, हालांकि, बहुत कुछ नहीं बदला है। आवारा धारिता अभी भी किसी भी रचनात्मक रचनात्मक डिजिटल परियोजनाओं के लिए एक गति हत्यारा है।

होमब्रीक पीसीबी का उपयोग करके ब्रेडबोर्ड से बचना आवारा समाई से बचने का सबसे अच्छा तरीका है, लेकिन निश्चित रूप से अधिक प्रयास और समय की आवश्यकता होती है।


4

मुझे लगता है कि प्राथमिक कारण यह है कि जैसे-जैसे आप आवृत्ति बढ़ाते हैं, आपके ब्रेडबोर्ड के कनेक्शन की बाधा बढ़ेगी और आपके सर्किट की अंतिम गति को सीमित करेगी।

आपके ब्रेडबोर्ड के हर कनेक्शन में एक कम, लेकिन गैर-शून्य इंडक्शन है। जैसे-जैसे आपकी आवृत्ति उच्च और उच्चतर होती जाती है, आपको इन प्रभावों को ध्यान में रखना होगा। तारों के प्रतिबाधा द्वारा पाया जा सकता है:

यह सूत्र

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


क्या आप सर्किट की गति और गति के बीच संबंध की व्याख्या कर सकते हैं?
यूजेन

तो यह कैसे समझाता है कि इंटेल कोर I7 जैसे सीपीयू 2.5GHz की घड़ी की गति पर काम करते हैं और ब्रेडबोर्ड पर सीपीयू का निर्माण इस गति को प्राप्त नहीं कर सकता है? मैंने शुरू में सोचा था कि सीपीयू और रैम चिप्स के बीच तार की लंबाई के साथ एक संबंध है।
यूजेन

भौतिकी के नियमों को अस्वीकार करने के लिए नहीं, लेकिन मुझे नहीं लगता कि प्रेरण वास्तव में गति का मुख्य सीमक है। के बाद, लंबाई के समान रेंज के समान तारों का उपयोग होमब्रेव रेडियो और अन्य परियोजनाओं में किया जाता है, बहुत अधिक आवृत्तियों पर। एक बस प्रतिबाधा, लंबाई, लेआउट के बारे में सावधान रहना होगा, आकस्मिक कपलिंग से बचें, आदि
2

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

1
मुझे लगता है कि आप सही हैं, मुझे लगता है कि यह केवल सामान्य रूप से प्रतिक्रियाएं होनी चाहिए। कैपेसिटेंस का परिणाम समान मुद्दों पर होगा, लेकिन कठोर बढ़ती / गिरने वाली किनारों और राज्य परिवर्तन जैसी चीजों के लिए। प्रतिबाधा को खोजने के लिए समीकरण हालांकि समान हैं, और यदि वह एक संख्यात्मक उत्तर चाहते हैं, जो संभवतः एक समान फैशन में लागू किया जा सकता है।
नैट

3

दूसरों ने "क्यों" का उत्तर दिया है। यहां बताया गया है कि अधिकतम गति कैसे निर्धारित करें।

  1. प्रत्येक फ्लिप-फ्लॉप के लिए, यह क्यू के लिए घड़ी है।
  2. फ्लिप-फ्लॉप से ​​अगले फ्लिप फ्लॉप तक सभी तारों की कुल लंबाई। इस लंबाई को समय के साथ मोड़ें। तार प्रकाश की ~ 2/3 गति है
  3. एसिंक्रोनस रैम के माध्यम से सहित कुल किसी भी गेट देरी।
  4. अगले फ्लिप-फ्लॉप पर सेटअप समय ले लो।
  5. 1-4 जोड़ें। यह आप न्यूनतम घड़ी की अवधि है। आवृत्ति प्राप्त करने के लिए उल्टा।
  6. घड़ी तिरछा पर विचार करें। यदि घड़ी पहले से पहले दूसरे एफएफ को मिलती है, तो 1-4 के साथ तिरछा जोड़ें।
  7. यदि घड़ी पहली से पहले दूसरी एफएफ को मिलती है, तो न्यूनतम 1-3 की गणना करें। सुनिश्चित करें कि वे दूसरे ff प्लस घड़ी तिरछा द्वारा आवश्यक पकड़ समय से कम हैं।

आप किस तार की लंबाई के बारे में बात कर रहे हैं: पॉवर स्रोत से सीपीयू आउट पिन तक, सीपीयू आउट पिन से रैम चिप्स तक की लंबाई ...? इसके अलावा, मैं वास्तव में स्पष्ट नहीं हूँ कि आपके पहले कदम का क्या मतलब है।
यूजेन

2
@ यूजेन - मुझे लगता है (लेकिन मेरी विशेषज्ञता का क्षेत्र नहीं) वह अपने आंतरिक प्रसार में देरी का जिक्र कर रहा है - एक स्थिर आउटपुट होने के कारण।
बिना शर्त के आइंस्टीनमोनिका

1

गति को सीमित करने वाले सभी विद्युत कारणों के अलावा, तार्किक स्तर पर भी एक है:

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


1

होमब्रे मशीनों के लिए यह दो कारकों के नीचे आता है। आपके द्वारा उपयोग किए जा रहे चिप्स के लिए प्रचार विलंब और आपके CPU डिज़ाइन के माध्यम से सबसे लंबे पथ पर आपके द्वारा उपयोग की जाने वाली चिप्स की संख्या।

उदाहरण के लिए, एक 74HC574 (8 बिट रजिस्टर) में लगभग 41ns (इसकी डेटशीट से लिया गया) का अधिकतम प्रसार विलंब है। अब आपके सीपीयू डिज़ाइन के माध्यम से सबसे लंबा रास्ता बताता है कि इसे 8 अलग-अलग चिप्स से गुजरना पड़ता है। 8 में से प्रत्येक के लिए प्रचार देरी जोड़ें और कल्पना करें कि यह 333ns पर आता है। 1000 मिनट के साथ 1Mhz के समान है जो आपको 3Mhz की अधिकतम गति प्रदान करेगा।

व्यवहार में आप अपने आप को 2Mhz की तरह कुछ धीमा करने के लिए प्रतिबंधित करना चाहते हैं, ताकि एक स्थिर डिजाइन सुनिश्चित कर सकें। यहां तक ​​कि अगर आपको लगता है कि आप केवल एक बार प्रति बिलियन चक्रों को याद करेंगे, तो फिर भी आप मुसीबत में हैं। 3 बिलियन से विभाजित 10 बिलियन का मतलब है कि आप हर 3,333 सेकंड में एक बार मिस-एक्ज़ीक्यूट करते हैं, जो प्रति घंटे लगभग एक बार होता है। हर घंटे अपनी मशीन को क्रैश करना अच्छा नहीं है!

इसे तेज़ करने के लिए आप तेज़ चिप्स का उपयोग कर सकते हैं और / या सबसे धीमी पथ में चिप्स की संख्या को कम करने के लिए डिज़ाइन बदल सकते हैं। आपके द्वारा देखी जाने वाली सबसे तेज़ होमब्रेव गति के बारे में 4Mhz है जो आपको प्रत्येक चक्र को पूरा करने के लिए 250ns देता है।

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