1 पॉइंट द्वारा GN⁺ 2025-04-06 | 1 टिप्पणियां | WhatsApp पर शेयर करें

न्यूनतम कंप्यूटर

  • शुरुआती विचार: पहले के समय में किट मंगाकर घर पर कंप्यूटर असेंबल किया जा सकता था। आधुनिक कंप्यूटर जटिल चिप्स से बने होते हैं और उन्हें काफी बिजली चाहिए होती है। लेकिन यह प्रयोग शुरू किया गया कि क्या आधुनिक कंप्यूटर को घर पर आसानी से जोड़े जा सकने वाले किट के रूप में बनाया जा सकता है।
  • लक्ष्य: ऐसा कंप्यूटर बनाना जो Debian Linux, vi, gcc, make चला सके। लक्ष्य के रूप में 8MB RAM, 1 MIPS CPU, SD कार्ड और USB तय किए गए।

पुर्जों का चयन

  • USB इंटरफ़ेस: 8-पिन चिप्स में USB सपोर्ट करने वाले चिप लगभग नहीं हैं। PL2303GL और ATTINYx5 सीरीज़ संभावित विकल्प हैं।
  • RAM: SOIC-8 PSRAM का उपयोग किया गया। 8MB RAM आसानी से उपलब्ध है।
  • माइक्रोकंट्रोलर: कई विकल्पों पर विचार किया गया, लेकिन STM32G031J6 को सबसे उपयुक्त माना गया। इसमें 32KB flash, 8KB RAM और 64MHz clock speed है।

हार्डवेयर डिज़ाइन

  • कंसोल: UART pins को किसी और चीज़ के साथ साझा नहीं किया जा सकता।
  • RAM: SPI PSRAM QSPI mode को सपोर्ट करता है, लेकिन pins की सीमा के कारण सामान्य SPI mode का उपयोग किया गया।
  • SD कार्ड: pins की कमी की समस्या सुलझाने के लिए RAM और SD कार्ड को एक ही pins से जोड़ने का तरीका निकाला गया।

सॉफ़्टवेयर की कहानी

  • एमुलेटर: मौजूदा MIPS emulator का फिर से उपयोग किया गया। 32KB flash को bootloader और main code में बांटा गया।
  • बूटलोडर: SD कार्ड से firmware update सपोर्ट करने वाला bootloader विकसित किया गया।

प्रदर्शन

  • ओवरक्लॉक: STM32G031 को 64MHz के लिए निर्धारित किया गया है, लेकिन इसे 150MHz तक overclock किया जा सकता है। 148MHz पर emulated MIPS CPU लगभग 1.65MHz MIPS R3000 के बराबर प्रदर्शन दिखाता है।

असेंबली

  • प्रारंभिक असेंबली: SD कार्ड socket, capacitor, resistor, microcontroller और USB-serial chip को क्रम से solder किया गया।
  • दूसरी असेंबली: microcontroller में bootloader प्रोग्राम करने के बाद RAM chip को solder किया गया।

डाउनलोड और उपयोग

  • फ़ाइलें: सभी आवश्यक फ़ाइलें डाउनलोड पैकेज में शामिल हैं। SD कार्ड image लिखें, फिर firmware को SD कार्ड में कॉपी करें ताकि bootloader पहली boot पर उसे पहचान सके।
  • उपयोग: डिवाइस shell prompt तक boot होती है, और इसके बाद bash भी चलाया जा सकता है। RAM की कमी से बचने के लिए swap file इस्तेमाल करने की सलाह दी जाती है।

1 टिप्पणियां

 
GN⁺ 2025-04-06
Hacker News टिप्पणियाँ
  • SDIO के तीन पिनों और जिन पिनों को उनके साथ जोड़ा जा सकता है, उन पर विचार करने के बाद, RAM का nCS SD कार्ड के CLK के रूप में, RAM का CLK SD कार्ड के CMD के रूप में, और RAM का MOSI SD कार्ड के DAT के रूप में इस्तेमाल किया जा सकता है
  • USB के साथ इंटरफ़ेस के लिए अलग चिप इस्तेमाल करना थोड़ा खलता है। USB एक जटिल protocol है, और बुनियादी V-USB को छोड़कर इसके लिए विशेष hardware और software stack चाहिए। दूसरी ओर SPI बहुत सरल है और न्यूनतम hardware के साथ भी संभव है
  • पुराने desktop और laptop में खुले serial और parallel ports हुआ करते थे, उनकी कमी महसूस होती है। अच्छा होता अगर USB की जगह UART, I2C, SPI का इस्तेमाल होता, और अधिक डेटा वाले peripherals के लिए IEEE 802.3 Ethernet link का उपयोग किया जाता
  • यह लेख बहुत जानकारीपूर्ण और मज़ेदार था
  • बोर्ड की मोटाई (0.8mm) की आवश्यकता का उल्लेख करना अच्छा होगा। यह इसलिए है ताकि "USB-C edge connector" प्लग में ठीक से फिट हो सके
  • लगता है कि अगर 8-पिन की शर्त में थोड़ी और लचीलापन होता तो प्रोजेक्ट और सरल हो जाता। कुछ और पिन होते तो जटिलता काफी कम हो जाती
  • यह लगभग दो चिप्स से बना है। उनमें से एक USB-serial IC है। SD कार्ड को शामिल न करें तो कुल पिन संख्या बहुत कम है
  • यह प्रोजेक्ट बहुत शानदार है, लेकिन शुरुआती लोगों के लिए नया computer kit बनाने के लक्ष्य से कुछ हद तक विरोधाभासी भी है। शुरुआती लोगों के लिए SOIC8 और SOIC28 में बहुत बड़ा अंतर नहीं है, जबकि बड़ा चिप अधिक उपयोगी computer बना सकता है
  • कल्पना की जा सकती है कि इसे serverless IoT infrastructure में इस्तेमाल किया जा सकता है। अगर PCB प्रदाता सिर्फ energy और Ethernet दे, तो SSH access संभव हो सकता है। काम पूरा होने पर metal/PCB को recycle किया जा सकता है
  • यह RISC-V पर भी संभव होगा। एक साधारण company बनाकर पुराने phones को AI से root करने और internet व energy उपलब्ध कराने का विचार आता है
  • बोर्ड को छोड़कर इसे सीधे circuit sculpture के रूप में बनाने का मन होता है
  • निजी कारणों से मुझे RISC-V से एलर्जी है
  • स्टोरेज के लिए SD कार्ड की जगह 8-पिन SPI flash chip का उपयोग करना भी प्यारा लगेगा