SRAM आधारित FPGA NVM आधारित FPGA से अधिक क्यों उपयोग किए जाते हैं?


21

SRAM आधारित FPGAs को बिजली बंद होने के बाद फिर से बिटस्ट्रीम को लोड करने की आवश्यकता होती है। इस बीच गैर-वाष्पशील आधारित की आवश्यकता नहीं है।

मुझे आश्चर्य है, एनवीएम आधारित एक की तुलना में SRAM FPGA पर अधिक प्रयोग और सुरक्षा अनुसंधान क्यों किए जाते हैं, ऐसा लगता है कि वाष्पशील तकनीक का उपयोग उसकी सुरक्षा सीमाओं की परवाह किए बिना किया जाता है (जब यह सुरक्षित बूट सुनिश्चित करने की बात आती है)।

(पुनश्च: मेरे पास कोई आँकड़े नहीं हैं, यह एक व्यक्तिगत अवलोकन है)


मुझे आपके आँकड़ों पर यकीन नहीं है, लेकिन फ्लेश FPGAs SRAM की तुलना में अपेक्षाकृत नए हैं। यदि आपका डेटा सही है तो यह एक कारण हो सकता है।
यूजीन श।

3
क्या आपने लागत की तुलना की है? मुझे लगता है कि गैर-अस्थिर लोग pricier हैं।
अंगीठी

@EugeneSh मेरे पास कोई आँकड़े नहीं हैं, यह एक व्यक्तिगत अवलोकन है (मैंने लोगों को भ्रमित न करने के लिए प्रश्न में एक PS के रूप में अद्यतन किया है)
लैवेंडर

अंतिम परियोजना
जिसे

जवाबों:


33

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

दूसरी ओर, EEPROM (nonvolatile मेमोरी) के निर्माण के लिए आवश्यक प्रक्रिया को अतिरिक्त चरणों की आवश्यकता होती है - विशेष ऑक्साइड मोटाई के साथ फ्लोटिंग गेट बनाने के लिए, यह प्रक्रिया तर्क / SRAM प्रक्रिया के साथ सीधे संगत नहीं है। इसका मतलब यह है कि गैर-लाभकारी FPGAs दोनों क्षेत्रों में कुछ हद तक एक समझौता है।


21

शामिल किए गए निर्माण प्रक्रियाओं के बारे में डेव ट्वीड के जवाब के अलावा, अधिकांश फ्लैश-आधारित FPGAs वास्तव में अभी भी SRAM का उपयोग अपने कपड़े को चलाने के लिए करते हैं। बिटस्ट्रीम को SRAM में फ्लैश से लोड किया जाता है जैसे कि एक अधिक पारंपरिक FPGA में, अंतर केवल इतना है कि फ्लैश आंतरिक है। यह आर्किटेक्चर तब स्पष्ट होता है जब आप उनके डेटाशीट और एपनोट्स को देखते हैं। विशेष रूप से, कुछ उपकरण जैसे लॅटिस माचएक्सओ 2/3 डिवाइस को चलाने के दौरान अपने फ्लैश को रीप्रोग्राम करने का समर्थन करते हैं, जो केवल इसलिए संभव है क्योंकि डिवाइस वास्तव में फ्लैश से सीधे एसआरएएम के बजाय चलता है। तो एक "फ्लैश आधारित" FPGA को SRAM के अलावा फ्लैश की आवश्यकता होती है , जिसका अर्थ है कि इसे अधिक मर क्षेत्र की आवश्यकता है।

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


3
दरअसल, आपका पहला पैराग्राफ FPGAs के अपेक्षाकृत सीमित सेट के लिए सही है। कई फ्लैश-आधारित FPGAs को "तत्काल पर" (कई अनुप्रयोगों में एक मजबूत बिक्री बिंदु) के रूप में विज्ञापित किया जाता है, जिसका अर्थ है कि कोई आंतरिक स्थानांतरण नहीं है - फ्लैश सेल सीधे कनेक्शन और तर्क को नियंत्रित करते हैं।
डेव ट्वीड

3
मैंने जो कुछ भी "इंस्टेंट ऑन" उपकरणों से देखा है, उसमें अभी भी CRAM को लोड करना है, यह सिर्फ बहुत तेज होता है (मुझे आंतरिक फ्लैश से व्यापक इंटरफ़ेस के कारण लगता है) बाहरी फ्लैश की आवश्यकता वाले हिस्सों की तुलना में। उदाहरण के लिए MAX10 "तत्काल" है, लेकिन यहाँ देखें p.28: Intel.com/content/dam/altera-www/global/en_US/pdfs/literature/… लेकिन अगर आपके पास एक संदर्भ है जो पूरी तरह से CRAM- दिखाता है कम वास्तुकला मैं इसके बारे में जानने के इच्छुक होगी।
अपने अजब

3
एक्टेल (अब माइक्रोसेमी) को देखें - उनके एंटीफ्यूज और फ्लैश आधारित डिवाइस दोनों जीरो-कॉपी हैं।
डेव ट्वीड

8

बात यह है कि यह अपनी आवश्यकताओं पर निर्भर करता है। हालांकि आकार, भार और शक्ति (SWaP) IC के लिए मुख्य चालक हैं, सामान्य रूप से, यदि आप उन आवश्यकताओं के कारण ASIC विकसित करने के लिए मजबूर नहीं हैं, तो प्रदर्शन आपका अगला विचार है, जो आपको किसी ASIC में वापस धकेल सकता है, लेकिन, यदि आप SWaP व्यापार-नापसंद खर्च कर सकते हैं तो आप FPGA का उपयोग करने में सक्षम हो सकते हैं।

  • फ्लैश-आधारित एफपीजीए को कॉन्फ़िगर करने के लिए "समय नहीं" की आवश्यकता होती है, क्योंकि वे "तुरंत" हैं। आपका डिजाइन इस आवश्यकता हो सकती है।
  • फ़्लैश प्रौद्योगिकी SRAM की तुलना में कम शक्ति है
  • फ्लैश आधारित FPGA को BOOT PROM की आवश्यकता नहीं होती है, इस प्रकार एक चिप बनाम दो (या अधिक)।
  • आप पहले वाली स्थिति में पावर-अप करने के लिए एक आवश्यकता हो सकती है।
  • फ्लैश आधारित रेड-टॉलरेंट समाधान अधिक प्रदान करता है। SRAM- आधारित FPGAs में विकिरण की आवश्यकताओं या सामान्य तौर पर SEUs से निपटने के तरीके हैं, लेकिन, माइक्रोसेमी "कठोर तकनीक" प्रदान करता है

फ्लैश आधारित FPGAs (Actel, अब माइक्रोसेमी), पारंपरिक रूप से, घनत्व या प्रदर्शन जो SRAM- आधारित FPGAs के साथ हासिल नहीं कर सकता है, इसलिए, यदि प्रदर्शन ड्राइविंग कारक था, तो आप Xilinx / Altera (अब Intel), या चुनेंगे शायद जाली।

अनिवार्य रूप से, आप अपने सिस्टम और विशेष रूप से अपने आईसी की आवश्यकताओं से प्रेरित होते हैं। प्रारंभिक समय पर आप इन आवश्यकताओं को संबोधित करते हैं और विभिन्न FPGAs (स्प्रेड शीट) का व्यापार अध्ययन करते हैं। स्वैप और प्रदर्शन, आवर्ती लागत के बाद मुख्य विचार आप अपनी टीम (सिस्टम, सीसीए, हो सकता है यहां तक ​​कि दप) अपनी परियोजना चीफ इंजीनियर / प्रबंधक करने के लिए है कि fedback साथ की पुनरावृति करना चाहते हैं। अन्य चिंताएं जैसे कि विश्वसनीयता, manufacturability, आदि आमतौर पर उन संबंधित संगठनों के अन्य टीम के सदस्यों द्वारा प्रदान की जाती हैं, लेकिन आमतौर पर आपके शुरुआती व्यापार के बिना बहुत अधिक मतलब नहीं होता है, और आमतौर पर आपकी पसंद को नहीं रोकेंगे।

वेब पर ऐसे लेख हैं यदि आप "SRAM बनाम FLASH FPGAs" की खोज करते हैं, लेकिन आप संभवतः डेटा शीट का उपयोग करके अपनी आवश्यकताओं के खिलाफ ट्रेड-स्टडी से अधिक सीखेंगे, तो आप कुछ और करेंगे।


2

सुरक्षा के पहलू से निपटने के लिए सबसे आधुनिक SRAM FPGAs एक साथ विन्यस्त किया जा सकता एन्क्रिप्टेड धारा , आम तौर पर इस तरह के 256-बिट एईएस के रूप में आधुनिक एन्क्रिप्शन मानकों के साथ। संभवत: यह आंतरिक रूप से कॉन्फ़िगरेशन को संग्रहीत करने के रूप में सुरक्षित है: एक समर्पित अटैकर जो एक डिकैप्ड चिप से निजी कुंजी निकालने में सक्षम है, आंतरिक फ्लैश को भी पढ़ने में सक्षम होगा।

फ्लैश-आधारित FPGAs का उपयोग आमतौर पर तब किया जाता है जब कार्यान्वयन सरल होता है (इसलिए एक बड़ा SRAM FPGA की आवश्यकता नहीं होती है) या जब एक त्वरित स्टार्टअप की आवश्यकता होती है।


मेरा तर्क है कि फ़्लैश-आधारित FPGAs सुरक्षा चिंताओं को भी दूर कर सकते हैं। अंतर शक्ति विश्लेषण (डीपीए) का उपयोग कर हमलों के खिलाफ शमन के बारे में EEtimes से लेख देखें: eetimes.com/document.asp?doc_id=1327477
boink

@boink ट्रू, पुराने FPGAs विशेष रूप से काफी कमजोर ( उदाहरण ) थे, लेकिन मुझे उम्मीद है कि स्थिति में अब तक सुधार हुआ है। आप जिस लेख का उल्लेख करते हैं वह डीपीए काउंटरमेशर्स को विज्ञापित करता है।
दिमित्री ग्रिगोरीव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.