日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

u-boot分析(四)---设置异常向量表|设置SVC模式

發(fā)布時間:2023/12/18 c/c++ 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 u-boot分析(四)---设置异常向量表|设置SVC模式 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

u-boot分析(四)

通過前三篇的分析,我們對u-boot已經(jīng)有了整體的認識和掌握,但是我們?nèi)匀粚τ谄洳糠钟布侨绾纬跏蓟牟惶宄?#xff0c;所以接下來幾篇博文我將會對我們在http://www.cnblogs.com/wrjvszq/archive/2015/01/10/4215627.html一文中總結(jié)出的u-boot的工作流程中的重要環(huán)節(jié),結(jié)合文檔加以分析。

今天我們會用到的文檔:

1.??????? ARM Architecture Reference Manualhttp://download.csdn.net/detail/wrjvszq/8354473

?

今天我們將會分析以下內(nèi)容:

1.????? ?設(shè)置中斷向量表

2.????? 設(shè)置CPUSVC模式

?

l? 設(shè)置異常向量表

我們知道arm上電后u-boot干的第一件事就是設(shè)置異常向量表,那么什么是異常?異常又有什么類型呢?等等一大堆問題,下面我們一一解決。

1.?????? 異常

異常其實是中斷的一種,我們的中斷按中斷事件來源進行分類,主要有兩類:

1)??????? 中斷:CPU以外的事件引起的中斷,如I/O中斷、時鐘中斷、控制臺中斷等。????

2)????? 異常:來自CPU的內(nèi)部事件或程序執(zhí)行中的事件引起的過程。如由于CPU本身故障、程序故障和請求系統(tǒng)服務(wù)的指令引起的中斷等。?

2.?????? 異常的類型

根據(jù)《ARM Architecture Reference Manual》手冊中的2.6節(jié)我們找到了如下表格,說明我們的arm處理器支持的異常有七種

我們的arm處理器有兩種入口地址,默認情況下我們選擇Normal address,只有當設(shè)置了協(xié)處理器CP15的相關(guān)寄存器以后,才會啟用High vector address

特別提醒:Data AbortIRQ這兩種異常的入口地址一個為0x00000010一個為0x00000018中間差了4個字節(jié),在arm指令解析一節(jié)中我們提到arm的一條指令為4個字節(jié)剛好差了一條指令,所以我們看到u-boot這樣設(shè)置異常向量表。

1 _start: 2     b reset //0x00000000復位異常 3 ldr pc, _undefined_instruction //0x00000004未定義指令異常 4 ldr pc, _software_interrupt //0x00000008軟中斷異常 5 ldr pc, _prefetch_abort //0x0000000c預取異常 6 ldr pc, _data_abort //0x00000010數(shù)據(jù)異常 7 ldr pc, _not_used//中間多差的一條指令。0x00000014 8 ldr pc, _irq //0x00000018外部中斷異常 9 ldr pc, _fiq //0x0000001c快速中斷異常

3.?????? 異常向量:

當異常發(fā)生的時候,由硬件機制處理器自動的跳到一個固定地址去執(zhí)行相關(guān)異常處理程序,而這個固定地址就是所謂的異常向量。

l? 設(shè)置CPUSVC模式

1.?????? U-boot工作的模式:

由于我們的u-boot需要執(zhí)行更多的指令,訪問更多的寄存器對芯片進行初始化設(shè)置,所以要工作在SVC模式。

注:http://www.cnblogs.com/wrjvszq/p/4199682.html 一文介紹過arm處理器的工作模式

2.?????? 如何設(shè)置CPU工作在SVC模式

同樣在http://www.cnblogs.com/wrjvszq/p/4199682.html 一文中我們介紹過通過CPSR寄存器設(shè)置處理器的工作模式,其實就是設(shè)置CPSR中的M[0-4]0b10011這也就很容易明白u-boot為什么這么設(shè)置了。

?

1 reset: 2 /* 3 * set the cpu to SVC32 mode 4 */ 5 mrs r0, cpsr //導入CPSR寄存器的值到R0 6 bic r0, r0, #0x1f//0b1 1111對M[0-4]清零 7 orr r0, r0, #0xd3//0b1 0011對M[0-4]置1 8 msr cpsr,r0//將R0寫入CPSR中

?

?

今天有點不舒服,所以就到此為止了,明天繼續(xù)分析。

內(nèi)容有點少,大家諒解!!!

?

轉(zhuǎn)載于:https://www.cnblogs.com/wrjvszq/p/4219919.html

總結(jié)

以上是生活随笔為你收集整理的u-boot分析(四)---设置异常向量表|设置SVC模式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黄色三级网站 | 欧美aaa视频| 成年人国产| 欧美cccc极品丰满hd | 欧美三级不卡 | 高潮在线视频 | 久久久免费电影 | 人人玩人人干 | 美妇av | 青青草原成人网 | 欧美一区成人 | 西欧free性满足hd老熟妇 | 性视频免费 | 欧美综合专区 | 日韩专区一区二区三区 | 日韩性猛交ⅹxxx乱大交 | av一道本 | 国产一区二区三区黄 | 国产女人在线观看 | 欧美在线一二三四区 | 天天夜夜草 | 免费观看黄色网页 | 精品国产免费人成在线观看 | 丁香七月婷婷 | 台湾chinesehdxxxx少妇 | 中文幕无线码中文字夫妻 | 在线 日本 制服 中文 欧美 | 7mav视频 | 黄色小视频免费看 | 精品亚洲一区二区三区四区五区 | 中文字幕9| 久久夜色网 | 日韩黄网| 污视频软件在线观看 | 伦在线| 黄色一级一片免费播放 | 日韩成人性视频 | 欧美日韩一区二区在线观看 | 成 人 黄 色 片 在线播放 | 91精品国产91久久久久福利 | 免费网站www在线观看 | 久久久久久久久精 | 痴女扩张宫交脱垂重口小说 | 国产91在线视频观看 | 青青久在线 | 伊人影院av| 中文字幕a级片 | 人妻妺妺窝人体色www聚色窝 | 福利电影在线播放 | 国产aⅴ激情无码久久久无码 | 九色在线播放 | 亚洲一区二区三区在线看 | 国产精品a级 | 午夜成人免费电影 | 青青视频一区二区 | 69视频在线播放 | 美女免费黄视频 | 亚洲欧美日韩精品久久 | 亚洲免费小视频 | 无码精品在线观看 | 日韩视频在线免费观看 | 高潮毛片 | 干欧美少妇 | 哪里可以免费看毛片 | 国产午夜精品理论片在线 | 精品伦精品一区二区三区视频 | 污污视频网站免费观看 | 美女隐私无遮挡网站 | 国产免费不卡 | 色婷婷av一区二区三 | 日本裸体网站 | 午夜两性视频 | 中文精品久久久久人妻不卡 | 女人18毛片水真多18精品 | 禁漫天堂黄漫画无遮挡观看 | 91精品国产闺蜜国产在线闺蜜 | 亚洲国产成人精品视频 | 奇米四色网 | 国产一级免费视频 | 精品国产系列 | 亚洲男女视频在线观看 | 奇米影音 | 奇米久久久 | 亚洲国产欧美自拍 | 日产精品一区 | 狠狠干夜夜爽 | 国产视频第一页 | 亚洲性久久久 | www.黄在线| 国产乱码精品一区二区三区中文 | 少妇高潮惨叫久久久久 | 日本色视频 | 国产精品久久久久久久久久久久久久久久久久 | 老熟妇高潮一区二区三区 | 窝窝午夜视频 | 国产精品久久久网站 | 国产精品久久精品三级 | 性高潮在线观看 | 亚洲性图一区二区 |