新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ARM體系架構學習 -uboot分析之start.S

        ARM體系架構學習 -uboot分析之start.S

        作者: 時間:2016-11-09 來源:網絡 收藏
        通過分析start.S代碼,學習ARM體系結構是一種很好的方法。

        start.S是u-boot的關鍵部分,CPU上電后最先開始執行的代碼,和ARM體系結構息息相關。

        本文引用地址:http://www.104case.com/article/201611/317815.htm

        通過查閱代碼中遇到的各種指令,來進一步了解ARM體系結構中各個知識點。

        /*
        * the actual start code
        */
        start_code:
        /*
        * set the cpu to SVC32 mode
        */
        mrs r0,cpsr
        bic r0,r0,#0x1f
        orr r0,r0,#0xd3
        msr cpsr,r0

        紅色字體是要查閱的

        MRS:MRS是要將CPSR寄存器中的內容保存到通用寄存器中,在這里是r0,就是說CPSR(當前程序狀態寄存器)必須使用MRS這條指令才能讀取
        CPSR:當前程序狀態寄存器,保存了CPU當前的各種狀態,另外還有一個SPSR(保存的程序狀態寄存器),是在異常處理前對CPSR的保存。

        CPSR的用途-改變CPSR的值通常出于幾個目的:

        1. 改變condition code標志
        2. 使能/禁止中斷
        3. 改變處理器模式
        4. 改變load或store操作的字節序
        5. 改變處理器狀態(J and T)

        待續。。。。。。



        關鍵詞: ARM體系架構uboo

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 台北市| 凤凰县| 晋城| 五莲县| 横山县| 新龙县| 延寿县| 许昌县| 永昌县| 仙游县| 昭平县| 喀喇沁旗| 景东| 承德市| 新晃| 崇礼县| 蓝田县| 开远市| 沾化县| 永城市| 金湖县| 宁安市| 沧州市| 隆昌县| 庆云县| 华宁县| 来凤县| 固安县| 河池市| 娱乐| 叙永县| 板桥市| 休宁县| 建始县| 博湖县| 唐海县| 景德镇市| 留坝县| 吴旗县| 石河子市| 金平|