ARM Embedded Linux系統 porting工程師課程
###課程特色### 本課程是為有志於從事「Embedded Linux 移植 工程師」所設計的。嵌入式系統工程師在系統建置中,扮演著承先啟後的角色。他們要了解主機板上不同的硬體特性,微調並安裝「開機管理員(Boot loader)」與「Linux作業系統」(相當於PC上的BIOS與Windows作業系統)。好讓「軟體工程師」能基於Linux作業系統這層基礎之上,有個穩定、與硬體無關的開發環境。讓軟體工程師無後顧之憂地,利用電腦語言開發出客戶要求的系統功能。
Level: Intermediate
Total Hours: 42 小時
Number of Lessons: 14
開課日期: Aug 31, 2015
Day of the week: Tue
NTD 75,600

Course Introduction

###課程目標###

  • Embedded C教材封面-pic-book-embedded-c
  • 了解嵌入式系統的架構與開發流程。
  • 能架設開發與除錯環境。
  • 熟悉嵌入式硬體各項特性,並能看懂硬體規格書。
  • 了解啟動載入器(Boot Loader)運作原理,並能微調與安裝。
  • 了解 Linux 移植 核心,並能微調與安裝。
  • 了解根檔案系統(Root File System)的製作與安裝。

###課程對象###
有心從事「 Embedded Linux 移植 工程師」,並想在嵌入式專案中,負責備妥 Linux 移植 執行與開發環境相關事宜的學員。
對嵌入式系統有興趣。
想往韌體產業發展者。

###課程內容###

第一章 嵌入式系統簡介

  • 嵌入式系統定義
  • 嵌入式系統架構
  • 嵌入式系統開發特殊之處
  • 嵌入式系統建構流程

第二章 開發板介紹

  • 檢視您的配件
  • 開發板規格巡禮
  • SoC、RISC、指令集
  • 記憶體(NOR, NAND, SDRAM)
  • RS-232, UART, COM
  • USB
  • 記憶卡(SDHC, TF-Card)
  • 觸控螢幕

第三章 ARM 11 內核介紹

  • ARM 家族介紹
  • ARM 1176JZF-S 規格詳解
  • ARM 1176JZF-S 整數微核心介紹
  • AMBA(tm) 匯流排介紹
  • TrustZone(tm) 介紹
  • 除錯單元簡介

第四章 S3C6410 SoC簡介

  • S3C6410 方塊圖介紹
  • S3C6410 內部電路介紹
  • 記憶體子系統介紹

第五章 DMA-6410 電路介紹

  • 系統開機與初始化流程
  • 電源系統
  • 時脈系統初始化
  • – 了解外頻的產生:石英震盪器
  • – PLL 初始化:P/M/S 參數的設定
  • – 除頻器的設定
  • 記憶體系統初始化
  • – ROM/Flash/SRAM 的初始化:設定匯流排寬度與工作速率
  • – SDRAM 的初始化:設定匯流排寬度、位址線數目、工作速率

第六章 開發環境架設

  • 嵌入式開發環境的種類
  • 作業系統的安裝
  • 工具鍊(Toolchain)的安裝與介紹
  • 與開發板的連結

第七章 U-Boot 指令簡介

  • 資訊取得指令
  • 記憶體操作指令
  • Flash 操作指令
  • 網路&下載指令
  • 檔案與設備操作指令
  • 環境變數指令
  • 啟動與執行指令
  • 其它指令

第八章 U-Boot 移植

  • 準備工作
  • 編譯 U-Boot
  • 原始碼結構介紹
  • U-Boot 移植流程
  • 燒錄 U-Boot

第九章 Linux 移植

  • 準備工作
  • 編譯 Linux 原始碼
  • 燒錄與啟動 Linux Kernel
  • Linux Kernel 移植

第十章 檔案系統移植

  • 檔案系統基本介紹
  • 常見的檔案系統
  • BusyBox

第十一章 WWW 伺服器移植

  • 準備工作
  • 編譯 Boa 伺服器
  • 準備 Boa 組態檔
  • 上傳檔案至開發板