中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      NIOS軟核處理器的Linux引導程序U-boot設計

      時間:2024-05-19 04:19:34 理工畢業論文 我要投稿
      • 相關推薦

      NIOS軟核處理器的Linux引導程序U-boot設計

      摘要:針對將cClinux向Nios處理器移植過程中的啟動加載程序U-boot bootloader進行研究。首先介紹移植的步驟,然后利用bootloader的設計思想,著重討論U-boot在Nios中的設計與實現,最后對U-boot在基于Linux的嵌入式系統 中的運用作了探索和展望。

      1 概述

      1.1 Nios簡介

      Nios是Altera公司以RISC為基礎的可配置、可裁減軟核處理器。它具有16位指令集和16/32位數據通路,通過將包括16或32位高性能處理器在內的移種應用模塊嵌入到通用FPGA/CPLD內,實現完全可配置的嵌入式系統。其開發套件包括:具有必要外圍內核的Nios處理器、C/C 編譯器、Cygnus的源級調試程序、Quartus編譯軟件、驗證工具和開發板。

      Nios軟核處理器主要特性包括:高效靈活的處理器模塊,可以通過軟件配置成16位或32位的中央處理單元(RISC結構),并可選擇不同的內部存儲器大小,其最高執行速度可達50MHz;具有多種其它功能模塊的選擇(SDRAM控制器、UART控制器、PCI接口模塊、LCD接口模塊、MAC接口模塊等多種功能模塊);具有完整、廉價、便捷的開發系統。所有開發(包括設計、調試)均通過軟件進行,不再需要專門的硬件仿真器和編器,大大減少了開發設備的成本。

      1.2 向Nios移植uClinux需要做的工作和步驟

      (1)硬件需求

      需要一個Altera公司的開發包,或者是下面三種之一:APEX board,STRATIX board,CYCLONE board。本文選用的是CYCLONAE board。

      (2)軟件需求

      下載一個最新版本的uClinux,并搭建一個Nios的GNU C編譯環境,準備好CDK4Nios開發包。CDK4Nios開發包是Nios的交叉開發包。

      (3)bootloader

      需要編寫或移植一個bootloader到Altara Nios board上。本文就是要設計一個用于Nios的U-boot bootloader。利用QUARTUS軟件為開發板定義默認參數,然后在開發板上測試U-boot。

      (4)uClinux內核的編譯

      將下載好的uClinux源泉代碼解壓到/home目錄下,會產生/home/uClinux-dist目錄,進入該目錄,依次鍵入:

      make menuconfig

      make dep

      make

      在/home/uClinux-dist/image目錄中產生image.rom,image.ram,romfs.img,它們分別是內核的映像及文件系統的映像文件。鍵入make menuconfig時,會出現開發平臺及內核配置和文件系統應用程序的配置界面,可以根據需要配置。

      (5)uClinux的根文件系統及其加載

      uClinux系統采用romfs文件系統,這種文件系統相對于一般的ext2文件系統要求更少的空間。romfs文件系統不支持動態擦寫保存,對于需要系統動態保存的數據,采用虛擬ram盤的方法進行處理(ram盤將采用ext2文件系統)。同時,uClinux內核也支持各種文件系統,例如,網絡文件系統,在需要時可以進行mount。

      解決了上述問題以后,uClinux便可以成功地移植到Nios上。

      1.3 U-boot介紹

      U-boot是啟動引導程序的一種,是一種通用的Linux bootloader。在做uClinux移植時,碰到的第一個問題就是移植bootloader或者自己編寫bootloader程序。Linux內核啟動部分的代碼需要判斷從bootloader傳遞過來的寄存器值。U-boot對Linux引導有特別的支持,如:

      ①SCC/FEC以太網支持;

      ②BOOTP/TFTP引導;

      ③IP,MAC預置能力和在線讀寫Flash、DOC、IDE、IIC、EEROM、RTC;

      ④支持串行口kernit,S-record下載代碼;

      ⑤識別二進制、ELF32、pImage格式的Image,對Linux引導有特別的支持;

      ⑥單軟件軟件運行環境(hello.c);

      ⑦監控(minitor)命令集有讀寫I/O、內存、寄存器、外設測試功能等;

      ⑧腳本語言支持(類似BASH腳本);

      ⑨支持watchDog,LCDlogo,狀態指示功能等。

      本文著重介紹uClinux向Nios軟核處理器移植過程中,U-boot的設計和實現。

      2 U-boot的設計

      2.1 bootloader的設計思想

      bootloader的設計除了依賴于CPU的體系結構外,它實際上也依賴于具體的嵌入式板級設備的配置。也就是說,對于兩塊不同的嵌入式板而言,即使它們是基于同一種CPU而構建的,要想讓運行在一塊板子上的bootloader程序也能運行在另一塊板子上,通常也都需要修改bootloader的源程序。從本質上講,它不屬于操作內核,它是針對不同的CPU體系結構的,這一部分代碼不具有可移植性。在移植操作系統時,這部分代碼必須加以改寫。

      bootloader引導加載程序是系統加電后運行的第一段軟件代碼。通過這段小程序,可以初始化硬件設備、建立內存空間的映射圖,從而將系統的軟硬件環境帶到一個合適的狀態,以

      【NIOS軟核處理器的Linux引導程序U-boot設計】相關文章:

      基于Nios軟核的嵌入式Internet系統設計03-20

      基于ARM7核處理器VxWorks系統BSP設計03-19

      嵌入式Linux系統CGI程序設計技術03-18

      嵌入式Linux下CAN總線驅動程序設計03-07

      基于嵌入式Linux的MPC8271 ATM驅動程序設計03-30

      采用Nios定制指令的嵌入式系統優化設計03-19

      基于ARM9微處理器與Linux操作系統的SD驅動開發03-07

      ARM922T核ZCP320A處理器PCI總線操作12-07

      軟巖回采巷道支護設計03-19

      主站蜘蛛池模板: 五常市| 亚洲中文字幕中文字幕中文字幕| 国产黄片久久免费观看| 日韩av在线播放天堂网| 无码高潮久久一级一级喷水| 尚义县| 平远县| 临沧市| 察哈| 国产精品国产三级国产三不| 日本熟妇人妻右手影院| 色噜噜狠狠色综合欧洲| 日本一区二区在线资源 | 如东县| 道孚县| 安宁市| 靖安县| 大同市| 国产精品黄色片一区二区| 新田县| 克山县| 宝山区| 客服| 黑龙江省| 高密市| 2020亚洲国产| 2020最新国产激情| 亚洲五月婷婷久久综合| 国产精品福利久久香蕉中文| 天天中文字幕av天天爽| 国产精品剧情一区二区三区av| 文安县| 福利网在线| 亚洲欧洲国无码| 欧美黑人xxxx性高清版| 亚洲AV无码日韩一区二区乱| 性感人妻一区二区三区| 国产精品自拍视频免费| 亚洲一区二区国产日韩| 日韩精品有码中文字幕在线| 久久HEZYO色综合|