版本 7ae3a40f88d20ba0f99f0ccb339c46f219b7c3e4
Changes from 7ae3a40f88d20ba0f99f0ccb339c46f219b7c3e4 to 6a42c1ed2161413ad6aa37521f62eff2426db9a9
---
title: 課程進度與開放資源
categories: embedded, arm, stm32, rtos, kernel, linux, ncku
toc: no
...
- Instructor: `Jim Huang</User/jserv>`_ (黃敬群) <jserv.tw@gmail.com>
- 討論區: https://www.facebook.com/groups/ncku.embedded2015
- 共筆: https://embedded2015.hackpad.com
- 參考硬體平台: `STM32</embedded/STM32F429>`_, STMicroelectronics
嵌入式作業系統設計與實作 (Spring 2015)
------------------------------------------------------
.. image:: /embedded-os.png
==== ==== ======= ==========
Week Date Subject Assignment
==== ==== ======= ==========
#1 Feb 24 `2015q1 Overview`_ *
#2 Mar 3 `2015q1:基本能力鑑定測驗`_ `Lab 38`_: ARM Cross-Development Environment
#3 Mar 10 `ARM Architecture + OS Concepts`_ `Lab 39`_: FreeRTOS
#4 Mar 17 `ARM Exceptions/Interrupts`_ `Lab 40`_: Scheduling
#5 Mar 24 `Embedded Linux Conference 2015`_ `Lab 41`_: 基礎觀念訓練
#6 Mar 31 `ARM and RTOS: Part I`_ 確認 `Lab 38`_, `Lab 39`_, `Lab 40`_, `Lab 41`_ 均充分完成
#7 Apr 7 `ARM and RTOS: Part II`_ `Lab 42`_: Mini ARM OS
#8 Apr 14 .
#8 Apr 14 `From Hello to Preemptive Scheduler`_ `Lab 42`_: Mini ARM OS
#9 Apr 21 .
#10 Apr 28 .
#11 May 5 .
#12 May 12 .
#13 May 19 .
#14 May 26 .
#15 Jun 2 .
#16 Jun 9 .
#17 Jun 16 .
#18 Jun 23 .
#19 Jun 30 .
==== ==== ======= ==========
.. _`2015q1 Overview`: 2015q1w1
.. _`2015q1:基本能力鑑定測驗`: 2015q1w2
.. _`ARM Architecture + OS Concepts`: 2015q1w3
.. _`ARM Exceptions/Interrupts`: 2015q1w4
.. _`Embedded Linux Conference 2015`: http://events.linuxfoundation.org/events/embedded-linux-conference
.. _`ARM and RTOS: Part I`: 2015q1w6
.. _`ARM and RTOS: Part II`: 2015q1w7
.. _`From Hello to Preemptive Scheduler`: 2015q1w8
.. _`Lab 38`: Lab38
.. _`Lab 39`: Lab39
.. _`Lab 40`: Lab40
.. _`Lab 41`: Lab41
.. _`Lab 42`: Lab42
進階嵌入式系統開發與實作 (Fall 2014)
------------------------------------------------------
.. image:: /embedded/logo-2012-small.png
==== ==== ======= ==========
Week Date Subject Assignment
==== ==== ======= ==========
#1 Sep 18 `2014q3 Overview`_ `Lab 31<https://embedded2014.hackpad.com/2014q3-Week-1-mQLneatLPcT>`_: ARM Environment
#2 Sep 25 `ARM Architecture (cont)`_ `Lab 32`_: QEMU + FreeRTOS
#3 Oct 2 `ARM Architecture (cont2)`_ `Lab 33`_: GDB + FreeRTOS
#4 Oct 9 `ARM Architecture and Interface`_ `Lab 34`_: Buffer overflow
#5 Oct 16 `Hardware Concepts Review`_ `Lab 35`_: STM32F429
#6 Oct 23 `Code Review for Lab 32-33`_ `Lab 35`_: STM32F429
#7 Oct 30 `Code Review + ELF`_ `Lab 36`_: ELF
#8 Nov 6 `Interrupt/Exceptions + RTOS`_ `Lab 37`_: Memory allocation
#9 Nov 13 `2014q3:Group Presentation (1)`_ -
#10 Nov 20 `2014q3:Group Presentation (2)`_ -
#11 Nov 27 `2014q3:Group Presentation (3)`_ -
#12 Dec 4 `2014q3:Group Presentation (4)`_ -
#13 Dec 11 `2014q3:Group Presentation (5)`_ `侯捷 C++ 底層技術課程分享<https://www.facebook.com/events/481983738609693/>`_
#14 Dec 18 `2014q3:Group Presentation (6)`_ -
#15 Dec 25 `2014q3:Group Presentation (7)`_ -
#16 Jan 1 Happy New Year!
#17 Jan 8 `2014q3:Group Presentation (8)`_ -
#18 Jan 15 `2014q3:Group Presentation (9)`_ -
#18 Jan 17 期末展示
==== ==== ======= ==========
.. _`2014q3 Overview`: 2014q3w1
.. _`ARM Architecture (cont)`: 2014q3w2
.. _`ARM Architecture (cont2)`: 2014q3w3
.. _`ARM Architecture and Interface`: 2014q3w4
.. _`Hardware Concepts Review`: 2014q3w5
.. _`Code Review for Lab 32-33`: 2014q3w6
.. _`Code Review + ELF`: 2014q3w7
.. _`Interrupt/Exceptions + RTOS`: 2014q3w8
.. _`2014q3:Group Presentation (1)`: 2014q3w9
.. _`2014q3:Group Presentation (2)`: 2014q3w10
.. _`2014q3:Group Presentation (3)`: 2014q3w11
.. _`2014q3:Group Presentation (4)`: 2014q3w12
.. _`2014q3:Group Presentation (5)`: 2014q3w13
.. _`2014q3:Group Presentation (6)`: 2014q3w14
.. _`2014q3:Group Presentation (7)`: 2014q3w15
.. _`2014q3:Group Presentation (8)`: 2014q3w17
.. _`2014q3:Group Presentation (9)`: 2014q3w18
.. _`Lab 32`: Lab32
.. _`Lab 33`: Lab33
.. _`Lab 34`: Lab34
.. _`Lab 35`: Lab35
.. _`Lab 36`: Lab36
.. _`Lab 37`: Lab37
嵌入式作業系統設計與實作 (Spring 2014)
------------------------------------------------------
.. image:: /embedded-os.png
==== ==== ======= ==========
Week Date Subject Assignment
==== ==== ======= ==========
#1 Feb 18 `Overview: Embedded Systems and OS`_ `Lab 25`_
#2 Feb 25 `ARM Architecture Evolution`_ `Lab 26`_
#3 Mar 4 `Case: Quadcopter`_ `Lab 27`_
#4 Mar 11 `Assignment Review`_ `Lab 28`_
#5 Mar 18 `ARM Cortex-M + RTOS Concepts`_ `Lab 29`_
#6 Mar 25 `ARM I/O, Interrupt, Exception`_ `Lab 30`_
#7 Apr 1 春假
#8 Apr 8 `Advanced OS Design issues`_ :
#9 Apr 15 `Group Presentation (a)`_ :
#10 Apr 22 `Group Presentation (b)`_ :
#11 Apr 29 `Group Presentation (c)`_ :
#12 May 6 `Group Presentation (d)`_ :
#13 May 13 `Group Presentation (d)`_ :
#14 May 20 `Group Presentation (f)`_ :
#15 May 27 `Group Presentation (g)`_ :
#16 Jun 3 `Group Presentation (h)`_ :
#17 Jun 10 Talk: 雲、端、架構 :
#18 June 17 Group Presentation
#18 Jun 21 Embedded Technology Conference :
==== ==== ======= ==========
.. _`Overview: Embedded Systems and OS`: 2014-w1
.. _`ARM Architecture Evolution`: 2014-w2
.. _`Case: Quadcopter`: 2014-w3
.. _`Assignment Review`: 2014-w4
.. _`ARM Cortex-M + RTOS Concepts`: 2014-w5
.. _`ARM I/O, Interrupt, Exception`: 2014-w6
.. _`Advanced OS Design issues`: 2014-w8
.. _`Group Presentation (a)`: 2014-w9
.. _`Group Presentation (b)`: 2014-w10
.. _`Group Presentation (c)`: 2014-w11
.. _`Group Presentation (d)`: 2014-w12
.. _`Group Presentation (f)`: 2014-w14
.. _`Group Presentation (g)`: 2014-w15
.. _`Group Presentation (h)`: 2014-w16
.. _`Lab 25`: Lab25
.. _`Lab 26`: Lab26
.. _`Lab 27`: Lab27
.. _`Lab 28`: Lab28
.. _`Lab 29`: Lab29
.. _`Lab 30`: Lab30
進階嵌入式系統開發與實作 (Fall 2013)
------------------------------------------------------
.. image:: /embedded/logo-2012-small.png
==== ==== ======= ==========
Week Date Subject Assignment
==== ==== ======= ==========
#1 Sep 17 `Overview: Embedded in our world`_ `Lab 19`_: QEMU
#2 Sep 23 `ARM Architecture and SoC`_ `Lab 20`_: GNU Toolchain
#3 Oct 1 `Operating Systems for Embedded`_ `Lab 20`_: GNU Toolchain
#4 Oct 8 `ARM: Instructions`_ `Lab 21`_: RTOS (1)
#5 Oct 15 `ARM: Toolchain and Peripherals`_ `Lab 22`_: RTOS (2)
#6 Oct 22 `ARM: Interrupts and Exceptions`_ `Lab 23`_: RTOS (3)
#7 Oct 29 `Code Review`_ -
#8 Nov 5 `Code Review + Group Presentation(1)`_ `Lab 24`_: Hardware
#9 Nov 12 `3D Printer + Group Presentation(2)`_ -
#10 Nov 19 `Group Presentation(3)`_ -
#11 Nov 26 `Speech + Group Presentation(4)`_ -
#12 Dec 3 `Group Presentation(5)`_ -
#13 Dec 10 `Group Presentation(6)`_ -
#14 Dec 17 `Group Presentation(7)`_ -
#15 Dec 24 `Group Presentation(8)`_ -
#16 Dec 31 `Group Presentation(9)`_ -
#17 Jan 7 `Group Presentation(10)`_ -
#18 Jan 12 期末展示
==== ==== ======= ==========
.. _`Overview: Embedded in our world`: 2013-w1
.. _`ARM Architecture and SoC`: 2013-w2
.. _`Operating Systems for Embedded`: 2013-w3
.. _`ARM: Instructions`: 2013-w4
.. _`ARM: Toolchain and Peripherals`: 2013-w5
.. _`ARM: Interrupts and Exceptions`: 2013-w6
.. _`Code Review`: 2013-w7
.. _`Code Review + Group Presentation(1)`: 2013-w8
.. _`3D Printer + Group Presentation(2)`: 2013-w9
.. _`Group Presentation(3)`: 2013-w10
.. _`Speech + Group Presentation(4)`: 2013-w11
.. _`Group Presentation(5)`: 2013-w7
.. _`Group Presentation(6)`: 2013-w7
.. _`Group Presentation(7)`: 2013-w7
.. _`Group Presentation(8)`: 2013-w15
.. _`Group Presentation(9)`: 2013-w7
.. _`Group Presentation(10)`: 2013-w7
.. _`Lab 19`: Lab19
.. _`Lab 20`: Lab20
.. _`Lab 21`: Lab21
.. _`Lab 22`: Lab22
.. _`Lab 23`: Lab23
.. _`Lab 24`: Lab24
.. _`Lab 25`: Lab25
.. _`Lab 26`: Lab26
嵌入式作業系統設計與實作 (Spring 2013)
------------------------------------------------------
.. image:: /embedded/logo-2012-small.png
==== ==== ======= ==========
Week Date Subject Assignment
==== ==== ======= ==========
#1 Feb 19 `課程介紹 + 期初考`_
#2 Feb 26 `Embedded Operating System Concepts`_ `Lab 8`_ : GNU Toolchain + RTOS (`Sol 8`_)
#3 Mar 5 `RTOS Characteristics`_ `Lab 9`_ : Multitasking programming (`Sol 9`_)
#4 Mar 12 `從火星探測號談 scheduling`_ `Lab 10`_ : Priority Inversion (`Sol 10`_)
#5 Mar 19 `ARM Architecture Intro`_ `Lab 11`_: Build RTOS for ARM (`Sol 11`_)
#6 Mar 26 `ARM Architecture Intro`_ + 月考 `Lab 12`_: RTOS Visualization (`Sol 12`_)
#7 Apr 2 春假
#8 Apr 9 `ARM and Assignment Review`_ `Lab 13`_: ARM Programming with GNU Toolchain (`Sol 11`_)
#9 Apr 16 `I/O, Interrupt, Exception (ARM)`_ `Lab 14`_: OS and BSP Porting (`Sol 14`_)
#10 Apr 23 `RTOS Evaluation`_ `Lab 15`_: Benchmarking concepts
#11 Apr 30 `Case Study: Train control`_ + 月考 `Lab 15`_: Validation and benchmarking
#12 May 7 `Tickless scheduling`_ `Lab 16`_: Hardware Enablement
#13 May 14 `Embedded Kernel Design Review`_ `Lab 17`_: Tickless scheduling for ARM hardware
#14 May 21 `Embedded Kernel Design Review-2`_ `Lab 18`_: OS Evaluation for ARM
#15 May 28 `Automotive Linux Summit (Spring)`_ + 月考
#16 Jun 4 Open Discussion
#17 Jun 11 The End
==== ==== ======= ==========
.. _`課程介紹 + 期初考`: 2013w1
.. _`Embedded Operating System Concepts`: 2013w2
.. _`RTOS Characteristics`: 2013w3
.. _`從火星探測號談 scheduling`: 2013w4
.. _`ARM Architecture Intro`: 2013w5
.. _`ARM and Assignment Review`: 2013w8
.. _`I/O, Interrupt, Exception (ARM)`: 2013w9
.. _`RTOS Evaluation`: 2013w10
.. _`Case Study: Train control`: 2013w11
.. _`Tickless scheduling`: 2013w12
.. _`Embedded Kernel Design Review`: 2013w13
.. _`Embedded Kernel Design Review-2`: 2013w14
.. _`Lab 8`: Lab8
.. _`Sol 8`: Sol8
.. _`Lab 9`: Lab9
.. _`Sol 9`: Sol9
.. _`Lab 10`: Lab10
.. _`Sol 10`: Sol10
.. _`Lab 11`: Lab11
.. _`Sol 11`: Sol11
.. _`Lab 12`: Lab12
.. _`Sol 12`: Sol12
.. _`Lab 13`: Lab13
.. _`Lab 14`: Lab14
.. _`Sol 14`: Sol14
.. _`Lab 15`: Lab15
.. _`Lab 16`: Lab16
.. _`Lab 17`: Lab17
.. _`Lab 18`: Lab18
.. _`Automotive Linux Summit (Spring)`: http://events.linuxfoundation.org/events/automotive-linux-summit-spring
.. _`LinuxCon Japan`: http://events.linuxfoundation.org/events/linuxcon-japan
進階嵌入式系統開發與實作 (Fall 2012)
------------------------------------------------------
.. image:: /embedded/logo-2012-small.png
==== ==== ======= ==========
Week Date Subject Assignment
==== ==== ======= ==========
#1 Sep 18 `Overview: Embedded - Why and How`_ `Lab 1`_: QEMU
#2 Sep 25 `ARM Architecture`_ (Basic) `Lab 2`_: GNU Toolchain + QEMU/ARM
#3 Oct 2 `Realtime Operating System`_ (Basic) `Lab 2`_s: GNU Toolchain + QEMU/ARM
#4 Oct 9 `Timer, Interrupt, Exception in ARM`_ `Lab 3`_: GNU Toolchain + RTOS
#5 Oct 16 `RTOS Design and Implementation`_ `Lab 4`_: RTOS for MCU
#6 Oct 23 `Code review of Lab assignments`_ `Lab 5`_: RTOS modifications
#7 Oct 30 `Peripherals and hardware interface`_ `Lab 6`_: Hardware
#8 Nov 6 `Embedded Linux Conference Europe`_ 分組準備與討論
#9 Nov 13 `Group Presentation (1)`_ 分組準備與討論
#10 Nov 20 `Group Presentation (2)`_ `Lab 6`_s: Hardware + Unit Test
#11 Nov 27 `Group Presentation (3)`_ `Lab 6`_s: Hardware + On-Chip Debugger
#12 Dec 4 `Group Presentation (4)`_ `Lab 7`_: On-Chip Debugger + semihosting
#13 Dec 11 `Group Presentation (5)`_ Hack!
#14 Dec 18 `Group Presentation (6)`_ Hack!
#15 Dec 25 `Group Presentation (7)`_ Hack!
#16 Jan 1 Happy New Year - 2013 N/A
#17 Jan 8 Final project review (and vote) N/A
#18 Jan 15 Make Your Own System (and profit) DONE
==== ==== ======= ==========
.. _`Overview: Embedded - Why and How`: 2012w1
.. _`ARM Architecture`: 2012w2
.. _`Realtime Operating System`: 2012w3
.. _`Timer, Interrupt, Exception in ARM`: 2012w4
.. _`RTOS Design and Implementation`: 2012w5
.. _`Code review of Lab assignments`: https://gitcafe.com/embedded2012/P-jserv
.. _`Peripherals and hardware interface`: 2012w7
.. _`ARM Cortex-M series`: 2012w7
.. _`Microkernel overview`: 2012w12
.. _`Embedded Linux Conference Europe`: https://events.linuxfoundation.org/events/embedded-linux-conference-europe
.. _`Group Presentation (1)`: 2012w9
.. _`Group Presentation (2)`: 2012w10
.. _`Group Presentation (3)`: 2012w11
.. _`Group Presentation (4)`: 2012w12
.. _`Group Presentation (5)`: 2012w13
.. _`Group Presentation (6)`: 2012w14
.. _`Group Presentation (7)`: 2012w15
.. _`Lab 1`: Lab1
.. _`Lab 2`: Lab2
.. _`Lab 3`: Lab3
.. _`Lab 4`: Lab4
.. _`Lab 5`: Lab5
.. _`Lab 6`: Lab6
.. _`Lab 7`: Lab7