天天干天天做天天操-天天干天天做天天射-天天干网-天天干网站-天天干网址

產品分類

當前位置: 首頁 > 工業控制產品 > 自動化控制 > 數字式溫控器

類型分類:
科普知識
數據分類:
數字式溫控器

ARM處理器的分散加載及特殊應用研究

發布日期:2022-04-18 點擊率:63

    引 言

  在當今的嵌入式系統設計中,ARM處理器以價格便宜、功耗低、集成度高、外設資源豐富和易于使用的特點而得到廣泛的應用;在速度和性能方面已達到或超過部分PC104嵌入式計算機的性能,而成本卻比相應的PC104計算機低很多,廣泛應用于手機、GPS接收機、地圖導航、路由器、以太網交換機及其他民用和工業電子設備。

  在一個采用ARM處理器的實時嵌入式系統中,目標硬件常常由Flash、SRAM、SDRAM和NVRAM(非易失性RAM)等存儲器組成,并定位于不同的物理地址范圍,那么,怎樣通過軟件更好地訪問和利用這些不同的存儲器并讓系統高效地運行?分散加載(scatter loading)就提供了這樣一種機制。它可以將內存變量定位于不同的物理地址上的存儲器或端口,通過訪問內存變量即可達到訪問外部存儲器或外設的目的;同時通過分散加載,讓大多數程序代碼在高速的內部RAM中運行,從而使得系統的實時性大大增強。

1 ARM ELF目標文件的主要構成

  ARM ELF(Executable and linking Format)目標文件主要由.Text段、.Data段、.BSS段構成,其他段如.debug段、.comment段等與本文關系不大,不作介紹。

  Text段由可執行代碼組成,段類型為Code,屬性為RO;

  Data段由已初始化數據組成,段類型為Data,屬性為RO;

  BSS段由未初始化數據組成,段類型為Zero,屬性為RW,在應用程序啟動時對該段的數據初始化為零。如果在分散加載文件中指定了UNINIT屬性,則在應用程序啟動時不初始化該段。

2 分散加載的基本原理

  假設一個采用ARM處理器的實時嵌入式系統目標硬件的存儲器由ROM存儲器和RAM存儲器組成。當一個嵌入式系統在仿真環境下調試完畢,需要脫機運行的時候,就需要將源程序編譯連接成可執行目標代碼并燒寫到ROM存儲器中。由于ROM存儲器存取數據的速率比RAM存儲器慢,因此,讓程序在ROM存儲器中運行。CPU每次取指令和取數據操作都要訪問ROM存儲器,這樣需要在CPU的總線周期中插入等待周期,通過降低總線的速率來滿足訪問慢速的ROM存儲器,這樣勢必會降低CPU的運行速率和效率,因此,分散加載就顯得非常必要。

  ARM的連接器提供了一種分散加載機制,在連接時可以根據分散加載文件(.scf文件)中指定的存儲器分配方案,將可執行鏡像文件分成指定的分區并定位于指定的存儲器物理地址。這樣,當嵌入式系統在復位或重新上電時,在對CPU相應寄存器進行初始化后,首先執行ROM存儲器的Bootloader(自舉)代碼,根據連接時的存儲器分配方案,將相應代碼和數據由加載地址拷貝到運行地址,這樣,定位在RAM存儲器的代碼和數據就在RAM存儲器中運行,而不再從ROM存儲器中取數據或取指令,從而大大提高了CPU的運行速率和效率。分散加載的基本原理如圖1所示。

3 分散加載文件語法

  在一個實時嵌入式系統中,分散加載文件是對目標硬件中的多個存儲器塊的分塊描述,它直接對應目標硬件存儲器的起始地址和范圍。同時,它在應用程序連接時用于告訴連接器用戶程序代碼和數據的加載地址和運行地址,在連接時由連接器產生相應的加載地址和運行地址符號,包括代碼和數據的加載起始地址、運行地址和長度等。這些符號用于上電后執行啟動代碼的數據拷貝工作,啟動代碼根據這些符號,將指定代碼和數據由ROM中的加載地址拷貝到RAM中的運行地址中,從而實現代碼在高速RAM存儲器中的脫機運行。其語法格式如下:

注意:

①每一個分散加載文件必須至少包含一個根區,每個根區的加載地址等于執行

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

主站蜘蛛池模板: 亚洲综合性图 | 国产视频第二页 | 不卡国产在线 | 国产极品视频 | 国产免费a v吧在线观看不卡 | 欧美日韩高清不卡免费观看 | 男女交性粗大视频播放 | 四虎澳门永久8848在线影院 | 96国产精品| 免费区欧美一级毛片精品 | 操久久| 亚洲精品第1页 | 国产日韩在线 | 57pao一国产成视频永久免费 | 国产成人刺激视频在线观看 | 国产综合视频 | 国产在线成人一区二区 | 香港三级欧美国产精品 | 天堂mv亚洲mv在线播放9蜜 | 91国偷自产一区二区三区蜜臀 | 久久er国产精品免费观看1 | 久热香蕉在线视频 | 精品国产美女福到在线不卡f | 久夜色精品国产一区二区三区 | 精品精品国产欧美在线观看 | 国产一级片免费观看 | 黄色片网址 | 日韩在线一区二区 | 精品一精品国产一级毛片 | 高清成人爽a毛片免费网站 高清成人综合 | 91蜜桃传媒一二三区 | 亚洲三级毛片 | 91青青草视频 | 中国特黄毛片 | 久久综合亚洲一区二区三区 | 久久伊人热 | 一区二区亚洲视频 | 青青青国产在线手机免费观看 | 亚洲欧美日韩v中文在线 | 亚洲国产高清视频 | 国产精品视频永久免费播放 |