2009-07-13 10 views

उत्तर

8

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

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

सामान्य आईआरक्यू शाखा निर्देश तक ही सीमित हैं क्योंकि उन्हें यह सुनिश्चित करना होगा कि उनका कोड एक शब्द में फिट हो। FIQ, क्योंकि यह किसी अन्य आईआरक्यू वैक्टर को ओवरराइट नहीं करेगा, केवल शाखा निर्देश के बिना सीधे कोड चला सकता है (इसलिए "तेज़")।

FIQ इनपुट लाइन बाहरी तत्वों के लिए एआरएम चिप को FIQ मोड में लात मारने और सही अपवाद निष्पादित करने का एक तरीका है। एआरएम पर कुछ भी नहीं है जो सीपीएसआर को छोड़कर ऐसा होने से रोकता है।

पर्यवेक्षक विधा में FIQ सक्षम करने के लिए:

MRS r1, cpsr   ; get the cpsr. 
BIC r1, r1, #0x40 ; enable FIQ (ORR to disable). 
MSR cpsr_c, r1  ; copy it back, control field bit update. 

ऐसा ही एक बात सामान्य IRQs के लिए किया जा सकता है, लेकिन इसके बजाय # 0x40 की # 0x80 का उपयोग कर।

+0

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

+0

@stone, उत्तर में एमआरएस निर्देश करें और देखें कि बी 6 (0x40) किस पर सेट है। यह शायद अक्षम है। – paxdiablo

+1

यदि आपको तेजी से बाधा के दौरान एक स्टैक की आवश्यकता है तो आप फिक स्टैक सेट करने की आवश्यकता होगी/(हाथ में 6 अलग-अलग ढेर हैं)। –

1

ट्रस्टज़ोन एक्सटेंशन का उपयोग करके चिप निर्माता द्वारा FIQ को बंद कर दिया जा सकता है।

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

कोर को सुरक्षित मोड में रीसेट करने पर रीसेट करें। यह सुरक्षित मॉनीटर (सुरक्षित और गैर-सुरक्षित दुनिया के बीच गेटवे) सेट करता है और इस समय FIQ को मॉनीटर पर रूट करने के लिए सेट किया जा सकता है। मुझे लगता है कि यह एससीआर.एफक्यू बिट है जिसे सेट किया जा सकता है और फिर सभी FIQs CPSR.F के मान को अनदेखा करते हैं और मॉनिटर मोड पर जाते हैं। एआरएम एआरएम देखें लेकिन यदि यह हो रहा है तो मुझे सही तरीके से याद है यदि आपको गैर-सुरक्षित ओएस कोड से जानने का कोई तरीका नहीं है। फिर मॉनीटर सामान्य विश्व रजिस्टरों को रीसेट करेगा और रीसेट अपवाद वेक्टर में पीसी सेट के साथ अपवाद रिटर्न कर देगा।

कोर मॉनीटर मोड में बाधा डालेगा, इसकी बात करेगा और वापस आ जाएगा।

माफ करना, मैं टिप्पणी में आप उत्तर नहीं दे सकता, मैं काफी प्रतिष्ठा की जरूरत नहीं है, तो आप हमेशा ठीक कर सकता है;), लेकिन मुझे आशा है कि आप इस

संबंधित मुद्दे

 संबंधित मुद्दे