<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

了解ARM內核中的處理器和注冊文件

嵌入式星球 ? 2020-10-09 14:54 ? 次閱讀

了解ARM內核的微體系結構,包括寄存器文件的說明及其在處理器中的功能。
在本文中,我們將定義什么是微體系結構。我們還將說明什么是ARM寄存器文件以及它在處理器的微體系結構中的位置。
本文旨在為下一篇文章提供基礎信息,在本文中,我們將介紹匯編的基礎知識,并展示一些使用Raspberry Pi編寫的32位ARM內核的基本匯編指令。

什么是微架構?


微體系結構(有時寫為“微體系結構”)是允許執行指令集的數字邏輯。它是寄存器,存儲器,算術邏輯單元,多路復用器和任何其他數字邏輯塊的組合實現。所有這些共同構成了處理器。

微體系結構與指令集體系結構(ISA)相結合,構成了系統的整體計算機體系結構。不同的微體系結構可以實現相同的ISA,但是需要在功率效率或執行速度等方面進行權衡。最基本的處理器將包括一個寄存器文件,一個ALU,系統存儲器和一個控制單元,該控制單元使處理器可以根據其執行的指令來做出決定。


ARM寄存器文件


要對數據執行操作,需要有一個臨時存儲該數據的地方。這就是處理器的注冊文件的用途。寄存器文件是一堆寄存器,用于存儲臨時值并對這些值執行操作。在寄存器之外,可以檢索數據并將其存儲在計算機的內存中。雖然這是一個較慢的操作,但是與可用的相對較少的寄存器相比,可以在內存中存儲的內容更多。寄存器文件通常以SRAM的形式出現。

讓我們以32位ARM內核為例。在這種情況下,我們將重點介紹32位ARMV7指令和32位寄存器。

32位或4字節的數量對應于ARM指令集中的一個字。ARM寄存器文件包含十六個用于執行指令的寄存器。還存在狀態寄存器來存儲有關操作結果的信息,并允許處理器根據該結果做出決定。


注冊符號


寄存器用字母R和數字表示。

  • R0–R3用于存儲臨時值或變量,但在子例程調用中也起作用。

  • R4–R12是通用的。

  • R13或SP是堆棧指針。堆棧指針包含一個內存地址,程序可以在該內存中存儲以后需要檢索的信息。

  • R14是鏈接寄存器,與分支指令一起使用以返回程序中的上一個位置。

  • R15,稱為PC為program?ounter,存儲下一個指令的地址被執行。這給PC帶來了巨大的責任,因為它可以控制處理器上執行的指令。在PC上輸入錯誤的值,您的程序可能會突然停止運行;這通常稱為崩潰。



注冊標志

所述 current program status register (CPSR),前面提到的,包含大量的標記,可以是當集的指令執行的。

這些標志是N,Z,C和V標志:

  • N代表負數,并在指令結果為負數時使用。

  • Z,ZERO,當結果為零。

  • C代表carry并且在進位輸出被設定的指令結果時。

  • V代表oveRFlow ,發生溢出時被設置。

為了檢查這些標志,在編寫匯編代碼時,某些條件后綴(在后面的文章中討論)會附加到指令中。


處理器的一部分:數據路徑和控制單元


盡管我們不會詳細介紹設計ARM處理器的細節(也許在以后的文章中),但最好能基本了解寄存器文件適合運行我們的指令的系統的位置。下面的圖1是處理器的高度簡化框圖。

寄存器文件包含處理器的當前狀態,并且ALU和內存與該狀態交互。內存分為多個部分。其中包含正在執行的指令列表(匯編程序);另一個保存程序將使用的數據。所有這些組件以及綠色突出顯示的行構成了處理器的數據路徑。

數據路徑包含執行正在實施的ISA中所有指令所需的所有內容。但是數據路徑如何知道要執行哪個操作?


圖1.高度簡化的處理器


數據路徑上方是控制單元??刂茊卧忉屧诿總€指令中找到的操作碼(操作碼)和條件碼,以打開或關閉數據路徑內的路由??刂茊卧固幚砥髂軌蚋鶕斍皬膬却嬷凶x取的指令執行不同的操作??刂茊卧蛿祿窂焦餐瑯嫵闪?a target="_blank">CPU或中央處理單元。

添加允許CPU與其他組件交互的內存就形成了我們所謂的處理器。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • ARM
    ARM
    +關注

    關注

    134

    文章

    8708

    瀏覽量

    362609
  • 微架構
    +關注

    關注

    0

    文章

    20

    瀏覽量

    7003
收藏 人收藏

    評論

    相關推薦

    ARM處理器7種工作模式

    CPSR; 早期的ARM核有狀態(ARM或Thumb)切換(通過BX等指令修改CPSR寄存(當前程序狀態寄存,存放條件碼標志,中斷禁止位,當前
    發表于 12-15 10:15

    arm處理器有哪些中斷源?arm處理器對異常中斷的響應過程

    arm處理器有哪些中斷源?arm處理器對異常中斷的響應過程? ARM處理器是一種廣泛使用的嵌入式
    的頭像 發表于 10-19 16:35 ?937次閱讀

    基于ARM內核的嵌入式微處理器

    電子發燒友網站提供《基于ARM內核的嵌入式微處理器.pdf》資料免費下載
    發表于 09-26 09:33 ?0次下載
    基于<b class='flag-5'>ARM</b><b class='flag-5'>內核</b>的嵌入式微<b class='flag-5'>處理器</b>

    ARMv8-A處理器的裸機引導代碼

    熟悉ARM軟件開發。 它旨在幫助您編寫ARMv8-A處理器的引導代碼。 您可以參考本應用筆記的引導代碼示例,并為基于ARMv8-A處理器的裸機系統編寫自己的引導代碼。
    發表于 08-23 06:20

    ARM體系結構、處理器和設備開發文章

    ARM不生產處理器硬件。 相反,ARM創造的微處理器設計被授權給我們的客戶,他們將這些設計集成到片上系統(SoC)設備。 為了保證互操作性
    發表于 08-21 07:28

    Arm Cortex-R82處理器技術參考手冊

    ?-R82處理器有一到八個核心,每個核心實施一個ARM?V8-R AArch64兼容處理元素(PE)。 在Cortex?-R82處理器的環境
    發表于 08-17 07:45

    ARM922T處理器技術參考手冊

    以作為可以嵌入到更復雜的設備的獨立核心來提供。獨立核心有一個簡單的總線接口,允許您設計自己的緩存和周圍的內存系統。ARM9TDMI系列微處理器同時支持32位ARM和16位Thumb指
    發表于 08-02 15:44

    32位Mcu——國產32位MCU的處理器內核

    、二級緩存、執行單元、指令級單元和總線接口等邏輯單元都會有科學的布局。 國產32位MCU多為基于ARM Cortex內核為基礎,現在我們以芯海的32位mcu為例,簡單介紹下ARM Cortex-M系列中的Cortex-M0
    的頭像 發表于 08-02 15:21 ?1268次閱讀
    32位Mcu——國產32位MCU的<b class='flag-5'>處理器</b><b class='flag-5'>內核</b>

    ARM920T處理器技術參考手冊

    9TDMI處理器核心是一種哈佛體系結構的設備,使用由Fetch、Decode、Execute、Memory和Write階段組成的五級流水線實現。它可以作為一個獨立的核心提供,可以嵌入到更復雜的設備。獨立內核有一個
    發表于 08-02 13:05

    ARM 720T處理器技術參考手冊

    ARM720T是一款通用的32位微處理器,具有8KB的高速緩存、擴大的寫入緩沖區和內存管理單元(MMU),組合在一個芯片中。ARM720T的CPU是
    發表于 08-02 11:36

    ARM7TDMI (Rev 3)核心處理器產品概述

    ARM7系列包括ARM7TDMI、ARM7TDMI-S、ARM720T和ARM7EJ-S處理器。
    發表于 08-02 10:25

    ARM 946E-S可合成處理器技術參考手冊

    的緩存處理器,提供完整的高性能處理器子系統,包括: ?一個ARM9E-S RISC整數CPU內核,具有:--ARMv5TE 32位指令集,改進了AR
    發表于 08-02 10:17

    ARM966E-S處理器技術參考手冊

    些應用,高性能、低系統成本、小芯片尺寸和低功耗都很重要。 ARM966E-S處理器宏單元提供了一個完整的高性能處理器子系統,包括一個ARM
    發表于 08-02 07:46

    了解體系結構 - 介紹 Arm 體系結構

    Arm 架構為處理器內核的設計提供了基礎,我們稱之為處理元件 (PE)。Arm 架構用于一系列技術,集成到片上系統 (SoC) 設備
    發表于 08-01 14:35

    混合信號世界中的ARM處理器分析

    ARM 處理器有多種類型,了解整個 ARM 處理器系列的最佳方式是按應用對其進行分類。ARM
    的頭像 發表于 07-23 17:34 ?461次閱讀
    混合信號世界中的<b class='flag-5'>ARM</b><b class='flag-5'>處理器</b>分析
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>