कृपया कुछ Cortex-M3 प्लेटफार्मों के लिए इस साइट की जाँच करें जो लिनक्स (uClinux) का समर्थन करते हैं:
http://www.emcraft.com/
हम निम्नलिखित कॉर्टेक्स-एम 3 एमसीयू पर सफलतापूर्वक यूक्लिनक्स चलाते हैं: एनएक्सपी के एलपीसी 1788, एसटीएमआरओ का एसटीएम 32 एफ 2, एक्टल का स्मार्टफ्यूजन, और एक जोड़े के लिए अधिक समर्थन जोड़ने की प्रक्रिया में हैं। फ्रास्सेले किनेटिस, एसटीएम 32 एफ 4 (ये दोनों कॉर्टेक्स-एम 4 के बजाय कोर्टेक्स-एम 4 हैं। ।
सही, लिनक्स (uClinux शामिल) को चलाने के लिए बाहरी रैम की आवश्यकता होती है - कॉर्टेक्स-एम का एकीकृत SRAM अल्ट्रा-छोटे लिनक्स कॉन्फ़िगरेशन के लिए भी लगभग पर्याप्त नहीं है; व्यावहारिक कॉन्फ़िगरेशन के लिए आपको कम से कम 4MB बाहरी RAM की आवश्यकता होती है। अधिक बेहतर, वास्तव में - यदि आपको एप्लिकेशन "सुविधाओं" की आवश्यकता है, तो लिनक्स में किसी भी चीज के लिए समर्थन है और आपको खेद नहीं होगा कि आपने कम के बजाय अधिक रैम जोड़ी है।
बाहरी रैम के लिए उपयोग करने के लिए विशेष उपकरणों के संबंध में, यह सभी एक विशेष एमसीयू द्वारा प्रदान की गई बाहरी मेमोरी इंटरफेस द्वारा परिभाषित किया गया है। STM32F और स्मार्टफ्यूजन केवल SRAM का समर्थन करते हैं; आप $ 6-7 के लिए 16MB 70ns PSRAM (तेज ऑपरेशन के लिए एक पेज मोड के साथ) प्राप्त करने में सक्षम होंगे; LPC1788 समर्थन तेजी से SDRAM यादें; काइनेटिस K70 DDR2 (64MB डिवाइस के लिए $ 5) का समर्थन करता है, आदि। वे सभी यादें स्थैतिक समय पर सिर्फ यूए स्तर पर शक्ति खींचती हैं।
आपको बूट करने योग्य लिनक्स को लोड करने के लिए कुछ चाहिए, लेकिन यह किसी भी चीज के बारे में हो सकता है - नेटवर्क, एसडीकार्ड, एसपीआई ईप्रॉम, एनआर या नंद फ्लैश, आदि।
कुल मिलाकर, मैं हिम्मत करता हूं कि लिनक्स कॉर्टेक्स-एम 3 डिज़ाइन के लिए पूरी तरह से व्यावहारिक विकल्प है।
अद्यतन करें
बहुत सारे पावर-सेंसिटिव एप्लिकेशन हैं, जहां आपका डिवाइस ज्यादातर समय बेकार रहता है, हालांकि, रनिंग करते समय, इसे कई ऐसे काम करने में सक्षम होने की जरूरत होती है, जो कि छोटे आरटीओएस का उपयोग करके हासिल करना आसान नहीं होता है। सुरक्षित कनेक्शन, वीएलएएन, टीसीपी / आईपी टनलिंग, एसएनएमपी, एसडी कार्ड, यूएसबी डिवाइस / होस्ट, वाईएफआई, इत्यादि और आवश्यकताओं की सूची आगे बढ़ती है।
छोटे आरटीओएस के साथ उन विशेषताओं में से कुछ उपलब्ध होंगे, कुछ नहीं, हालांकि यह कहानी का केवल एक हिस्सा है। हम अपने ग्राहकों के साथ जो देख रहे हैं, वह यह है कि कॉर्टेक्स-एम 3 का उपयोग करके एम्बेडेड डिजाइनों को उन उन्नत सुविधाओं में से केवल 1 या 2 की आवश्यकता नहीं है, उन्हें एक डिवाइस से उनमें से कई की आवश्यकता है। यहां तक कि अगर एक आरटीओएस सभी सुविधाओं को एक डिजाइन की जरूरत है, ऑफ-द-शेल्फ की जरूरत है, तो यह सभी को ऑन-द-चिप मेमोरी में चुनौती देता है। uClinux या नहीं, मेरा अनुमान है कि प्रवृत्ति यह है कि अधिक से अधिक कोर्टेक्स-एम-आधारित डिज़ाइन बाहरी मेमोरी का उपयोग करेंगे। बेशक, एक बार जब आप अपने डिजाइन में बाहरी रैम प्राप्त करते हैं, तो यूक्लिनक्स अधिक समझ में आने लगता है।
कॉर्टेक्स-एम द्वारा प्रदान की गई कम प्रसंस्करण शक्ति के बारे में (जैसा कि लिनक्स कर्नेल की आवश्यकताओं के खिलाफ मापा जाता है), हाल ही के अनुभव के रूप में, हमने फ्रिस्केल के 70 एमसीयू पर सिर्फ यूक्लिनक्स को सक्षम किया है। यह एक Cortex-M4 (जो Cortex-M3 प्लस हार्डवेयर FP और DSP इकाइयों के समान है); उच्च घनत्व रैम (DDR2) और फ्लैश (NAND) पर चिप इंटरफेस, 2x8KB ऑन-चिप कैश के साथ। 120Mhz Cortex-M कोर, 150Mhz भागों के साथ जल्द ही बाहर आ रहा है।
लिनक्स (uClinux) इस डिवाइस पर सिर्फ सुंदर रूप से चलता है। 'Dhrystone' का उपयोग करते हुए, हम लगभग 50% प्रदर्शन प्राप्त करते हैं जो हमें 250Mhz फ्रीस्केल पावरपीसी बॉक्स पर मिलता है। फास्ट बूट-अप, बहुत सारे RAM (TWR-K70 मॉड्यूल 128MB RAM और 256MB NAND फ़्लैश) प्रदान करता है, नेटवर्किंग, JFFS2, फ्रेमबफ़र, SSH, HTTPD, Qt / E - यह सब K70 पर ठीक चलता है। समग्र उपयोगकर्ता अनुभव MMU- पूर्ण माइक्रोप्रोसेसर पर आपका नियमित "एम्बेडेड लिनक्स" है।
यहाँ Freescale Kinetis K70 Cortex-M4 MCU पर चल रहे लाइव uClinux सत्र के वीडियो के लिए एक संकेत दिया गया है:
http://www.youtube.com/watch?v=UZjJrLG9CeA