女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]用戶模式(user模式),運(yùn)行應(yīng)用的普通模式;快速中斷模式(fiq模式),用于支持?jǐn)?shù)據(jù)傳輸或通道處理;中斷模式(irq模式),用于普通中斷處理。超級(jí)用戶模式(svc模式),操作系統(tǒng)的保護(hù)模式?異常中斷模式(abt模式)

用戶模式(user模式),運(yùn)行應(yīng)用的普通模式;

快速中斷模式(fiq模式),用于支持?jǐn)?shù)據(jù)傳輸或通道處理;

中斷模式(irq模式),用于普通中斷處理。

超級(jí)用戶模式(svc模式),操作系統(tǒng)的保護(hù)模式

?異常中斷模式(abt模式),輸入數(shù)據(jù)后登入或預(yù)取異常中斷指令

?系統(tǒng)模式(sys模式),是操作系統(tǒng)使用的一個(gè)有特權(quán)的用戶模式

?未定義模式(und模式),執(zhí)行了未定義指令時(shí)進(jìn)入該模式

外部中斷,異常操作或軟件控制都可以改變中斷模式。大多數(shù)應(yīng)用程序都時(shí)是在用戶模式下運(yùn)行。進(jìn)入特權(quán)模式是為了處理中斷或異常請(qǐng)求或操作保護(hù)資源服務(wù)的。

這些工作模式是芯片硬件提供的程序運(yùn)行的不同環(huán)境,不同的模式有不同的硬件訪問權(quán)限,使用不同的寄存器。這就給不同的程序提供了不同的權(quán)限機(jī)制,你比如說你的操作系統(tǒng)代碼運(yùn)行在權(quán)限比較高的模式下,而你的應(yīng)用程序運(yùn)行在權(quán)限比較低的模式下。這樣就起到了對(duì)操作系統(tǒng)代碼的保護(hù)作用。

寄存器,各個(gè)模式下可見的寄存器以及各個(gè)寄存器的功能:

ARM共有37個(gè)32位的寄存器,其中31個(gè)是通用寄存器,6個(gè)是狀態(tài)寄存器。但在同一時(shí)間,

對(duì)程序員來說并不是所有的寄存器都可見。在某一時(shí)刻存儲(chǔ)器是否可見(可被訪問),是處

理器當(dāng)前的工作狀態(tài)和工作模式?jīng)Q定的。其各個(gè)模式下的寄存器如圖1所示:

其中系統(tǒng)模式和用戶模式所用的寄存器是一樣的。畫三角陰影的寄存器表示在不同模式下

有不同的物理寄存器。

以下對(duì)其進(jìn)行分類說明:

通用寄存器

ARM的通用寄存器包括R0~R15,其中R0~R7是屬于未分組寄存器,各個(gè)模式下都使用同樣的寄

存器。R8~R14在FIQ模式下是有獨(dú)立的物理寄存器,其目的是加快中斷響應(yīng)速度,從硬件上

保存程序執(zhí)行現(xiàn)場。R13和R14這兩個(gè)寄存器在每種模式下都有自己的獨(dú)立寄存器。R15只有

一個(gè),所有模式公用。

下對(duì)這些寄存器中的比較有特殊功能的做一下介紹:

?寄存器R13:在ARM指令中,常用R13做堆棧指針用。每種運(yùn)行模式都有自己獨(dú)立的堆棧,用于保存中斷發(fā)生時(shí)的程序運(yùn)行環(huán)境和C語言執(zhí)行時(shí)進(jìn)行過程控制。

?寄存器R14:專職持有返回點(diǎn)的地址,在系統(tǒng)執(zhí)行一條“跳轉(zhuǎn)并鏈接(link)”(BL)指令

的時(shí)候,R14將收到一個(gè)R15的拷貝。其他的時(shí)候,它可以用作一個(gè)通用寄存器。相應(yīng)的它

在其他模式下的私有寄存器R14_svc,R14_irq,R14_fiq,R14_abt和R14_und都同樣用來保

存在中斷或異常發(fā)生時(shí),或時(shí)在中斷和異常中執(zhí)行了BL指令時(shí),R15的返回值。

?寄存器R15是程序計(jì)數(shù)器(PC)。在ARM狀態(tài)下,R15的bits[1:0]為0,bits[31:2]保存了PC

的值。在Thumb狀態(tài)下,bits[0]為0同時(shí)bits[31:1]保存了PC值。

FIQ模式擁有7個(gè)私有寄存器R8-14(R8_fiq-R14_fiq)。在ARM狀態(tài)下,多數(shù)FIQ處理都不需要保存任何寄存器。用戶、中斷、異常中止,超級(jí)用戶和未定義模式都擁有2個(gè)私有寄存器,R13和R14。允許這些模式都可擁有1個(gè)私有堆棧指針和鏈接(link)寄存器。

程序狀態(tài)寄存器

ARM920T具有一個(gè)當(dāng)前程序狀態(tài)寄存器(CPSR),另外還有5個(gè)保存程序狀態(tài)寄存器(SPSRs)用于異常中斷處理。這些寄存器的功能有:

?保留最近完成的ALU操作的信息;

控制中斷的使能和禁止;

?設(shè)置處理器的操作模式。

下圖2顯示了程序狀態(tài)寄存器的位定義:


關(guān)于這些位的具體含義請(qǐng)參見datasheet。

異常:

當(dāng)正常的程序執(zhí)行流程因一些原因發(fā)生暫時(shí)的停止時(shí),稱之為異常。比如芯片取到了一條不認(rèn)識(shí)的指令,當(dāng)這條指令執(zhí)行時(shí)就會(huì)發(fā)生Abort異常中止,從而進(jìn)入Abort模式。也就是說不通的條件會(huì)發(fā)生不通的異常,而不同的異常就會(huì)使處理器進(jìn)入不同的處理模式。

你想知道異常什么時(shí)候發(fā)生,怎么發(fā)生的?發(fā)生后芯片都要干些什么?怎么從這些異常中返回?異常向量表是什么?那就請(qǐng)你仔細(xì)閱讀datasheet的第二章program’s model,這一章對(duì)這些問題都做了詳細(xì)的說明和講解。

當(dāng)然,這些和后面的UCOS是有關(guān)系的,比如UCOS和用戶的應(yīng)用程序是統(tǒng)一編譯的,都運(yùn)行在SVC模式下,當(dāng)外部中斷來時(shí)會(huì)切換到中斷模式。

請(qǐng)看下面的異常(中斷)向量表:


地址

異常中斷類型

進(jìn)入時(shí)處理器模式

0x00000000

Reset

Supervisor

0x00000004

Undefined instruction

Undefined

0x00000008

Software Interrupt

Supervisor

0x0000000C

Abort (prefetch)

Abort

0x00000010

Abort (data)

Abort

0x00000014

Reserved

Reserved

0x00000018

IRQ

IRQ

0x0000001C

FIQ

FIQ


異常向量表是一個(gè)填好了的跳轉(zhuǎn)指令表,中斷向量表就位于內(nèi)存地址的0開始處。當(dāng)相應(yīng)的異常發(fā)生時(shí),CPU最后要把PC值改成向量表里的跳轉(zhuǎn)指令實(shí)現(xiàn)跳轉(zhuǎn)去執(zhí)行相應(yīng)的服務(wù)程序。當(dāng)然這時(shí)CPU的運(yùn)行模式就更改了。我們看IRQ中斷異常,這個(gè)地址向量是外部中斷的入口地址,那我們知道ARM9芯片上支持的中斷源有很多,那中斷入口就一個(gè),怎么識(shí)別到底是哪一個(gè)具體中斷源發(fā)生了那。這一部分知識(shí)就是中斷控制器的內(nèi)容了,請(qǐng)參加下面的文章或者參加datasheet的十四章interrupt controller。

關(guān)于更詳細(xì)的資料請(qǐng)參考920t的datasheet?。。。?!

關(guān)于arm中斷系統(tǒng)請(qǐng)參考arm920t中斷系統(tǒng)詳解。和ucos相關(guān)的arm芯片知識(shí)講完了,當(dāng)然arm芯片知識(shí)還很多,參考920t的datasheet!?。?!


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

上海2025年9月1日 /美通社/ -- 8月29日,由國際獨(dú)立第三方檢測、檢驗(yàn)和認(rèn)證機(jī)構(gòu)德國萊茵TÜV大中華區(qū)(簡稱"TÜV萊茵")...

關(guān)鍵字: 工程師 REGULATION 基礎(chǔ)知識(shí) 智能化

上海2024年8月29日 /美通社/ -- 8月18日,上海交通大學(xué)上海高級(jí)金融學(xué)院(高金/SAIF)金融MBA"科技金融實(shí)驗(yàn)班"啟動(dòng)日在徐匯校區(qū)舉行。啟動(dòng)日當(dāng)天正式揭曉了首屆"科技金融實(shí)驗(yàn)班"的培養(yǎng)體系與課程模塊。在現(xiàn)...

關(guān)鍵字: 人工智能 基礎(chǔ)知識(shí) 電子信息 節(jié)點(diǎn)

全世界數(shù)以百萬計(jì)的工程師和科學(xué)家都在使用 MATLAB? 分析和設(shè)計(jì)改變著我們的世界的系統(tǒng)和產(chǎn)品?;诰仃嚨?MATLAB 語言是世界上表示計(jì)算數(shù)學(xué)最自然的方式。

關(guān)鍵字: matlab入門 教學(xué) 基礎(chǔ)知識(shí)

MATLAB是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于數(shù)據(jù)分析、無線通信、深度學(xué)習(xí)、圖像處理與計(jì)算機(jī)視覺、信號(hào)處理、量化金融與風(fēng)險(xiǎn)管理、機(jī)器人,控制系統(tǒng)等領(lǐng)域。

關(guān)鍵字: matlab入門 命令 基礎(chǔ)知識(shí)

MATLAB是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于數(shù)據(jù)分析、無線通信、深度學(xué)習(xí)、圖像處理與計(jì)算機(jī)視覺、信號(hào)處理、量化金融與風(fēng)險(xiǎn)管理、機(jī)器人,控制系統(tǒng)等領(lǐng)域。

關(guān)鍵字: matlab入門 基礎(chǔ)知識(shí) 信號(hào)處理

上海2023年2月14日 /美通社/ -- 步入2023年第一個(gè)季度,市場依然在震蕩中前行。作為一家全球領(lǐng)先的金融科技經(jīng)紀(jì)商,ATFX為了給全球客戶提供具有前瞻性的分析報(bào)告,分析師團(tuán)隊(duì)早已密切關(guān)注金融市場動(dòng)態(tài),結(jié)合各國經(jīng)...

關(guān)鍵字: ANTI RAM 基礎(chǔ)知識(shí) SIC

我們前面主要去學(xué)習(xí)了藍(lán)牙開發(fā)所具備的基礎(chǔ)知識(shí)、常用的仿真手法,那么如何去分析我們抓到的藍(lán)牙通信包呢?不去學(xué)習(xí)藍(lán)牙通信協(xié)議,只能把抓到的Log信息,交給能看懂的人,你也最終只能當(dāng)一個(gè)測試工程師了。

關(guān)鍵字: 基礎(chǔ)知識(shí) 仿真手法 藍(lán)牙通信

(全球TMT2022年4月26日訊)The Open Group,廠商中立的技術(shù)聯(lián)盟,宣布正式發(fā)布TOGAF?標(biāo)準(zhǔn)第10版,這標(biāo)志著這一世界上使用最廣泛的企業(yè)架構(gòu)框架的開發(fā)又步入一個(gè)重要里程碑。由The Open Gr...

關(guān)鍵字: GROUP PEN 模塊化結(jié)構(gòu) 基礎(chǔ)知識(shí)

低壓差 (LDO) 穩(wěn)壓器的本質(zhì)是通過將多余的功率轉(zhuǎn)化為熱量來調(diào)節(jié)電壓,使該集成電路成為低功率或小 V IN至 V OUT差分應(yīng)用的理想解決方案??紤]到這一點(diǎn),選擇合適的 LDO 和合適的封裝對(duì)于最大限度地提高應(yīng)用程序的...

關(guān)鍵字: LDO 基礎(chǔ)知識(shí) BSP 封裝

哈嘍,大家好,我是瓜哥,致力于分享互聯(lián)網(wǎng)各領(lǐng)域干貨。前幾天,有人問瓜哥,學(xué)習(xí)編程語言有什么好的建議沒?今天簡單和大家分享幾點(diǎn)學(xué)習(xí)編程的建議,希望可以幫助到大家。1.只要開始,就不要怕晚瓜哥經(jīng)??吹竭@些問題,大四學(xué)編程還來...

關(guān)鍵字: 編程 代碼 基礎(chǔ)知識(shí) 數(shù)據(jù)結(jié)構(gòu)
關(guān)閉