IoT

IT E Learning

課程目標

本課程將透過ARM開發工具模擬器操作,以實際瞭解ARM核心的指令集、記憶體處理器(MMU)、中斷處理等。課程使用開源硬體平台Raspberry Pi實作一個ARM BootLoader,從中你可以了解從最底層的ARM Assembly到C main函式所發生的每一件事。實作中也以bare-metal (Non-OS)方式驅動如,GPIO、UART、TIMER等I/O,另也以實際code說明Raspberry Pi的SoC晶片(BCM2835/BC2836)中,ARM CPU如何和GPU通訊。最後,有鑑於學員在實際工作上所使用的開發工具大多為開發套件外,最後將講習如何將程式轉換為GNU工具可使用的原始碼。GNU工具,除ADS<<對於想要從無到有開發一套ARM-based作業系統,本課程絕對是一個OS開發者的前哨站>>

適合對象

1. ARM 架構和其底層系統程式開發有興趣者。
2. 想從事ARM BSP developmentARM Bootloader/BIOS programming 研發相關工作者。
3.須具C程式設計基礎

       1.SoC基本架構
       2.ARM處理器架構
       3.ARM組合語言
       4.Thumb mode
       5.ARM 標準程序呼叫
       6.ARM Exception handling /例外中斷處理
       7.Memory Barrier & Coprocessor
       8.系統程式-Linker & startup code
       9.Bare-metal Development using Raspberry Pi 3
           認識Broadcom BCM283x SoC
           Raspberry Pi 3開機流程
           實作 GPIO 驅動-LED、 Button
           實作BCM2835 中斷控制器
           實作System Timer 中斷
           實作GPIO中斷
           實作UART
       10.GPU 與ARM間的溝通
           用Mailbox 界面實作Framebuffer

課程預覽

ARM Boot Loader 數位課程(14小時)預覽

課程諮詢