分享到plurk 分享到twitter 分享到facebook

版本 0b59c2d40d3b7014db649770b73940d64cf9de0d

embedded/2014q3w3

Changes from 0b59c2d40d3b7014db649770b73940d64cf9de0d to current

---
title: Week #3 (Oct 2) :: ARM Architecture
toc: no
...

教材
----------
* `Introduction to ARM Architecture<https://docs.google.com/presentation/d/1cFBRICktpVQAOLzE5eDKD-OM4ckJuncFsn39Wg8aLZI/edit#slide=id.p14>`_
  - `ARM Conditional Execution<http://www.davespace.co.uk/arm/introduction-to-arm/conditional.html>`_,以 C 程式來說:

.. code-block:: prettyprint

* [Introduction to ARM Architecture](https://docs.google.com/presentation/d/1cFBRICktpVQAOLzE5eDKD-OM4ckJuncFsn39Wg8aLZI/edit#slide=id.p14)
  - [ARM Conditional Execution](http://www.davespace.co.uk/arm/introduction-to-arm/conditional.html),以 C 程式來說:
```c
    if (z == 1) R1 = R2 + (R3 * 4) 

```
對應的 ARM 組合語言為

.. code-block:: prettyprint

```c
    addeqs r1, r2, r3, lsl #2
```
Object-Oriented Programming in Kernel
------------------------------------------------------
* [Object-oriented design patterns in the kernel (1)](http://lwn.net/Articles/444910/)
* [Object-oriented design patterns in the kernel (2)](http://lwn.net/Articles/446317/)

* `ARM Cortex-M3 Introduction<http://www.arm.com/files/pdf/CortexM3_Uni_Intro.pdf>`_
* `quadruped robot 先期研究<https://robot_control.hackpad.com/quadruped-robot--jdowyBd9FAa>`_
作業觀摩與解說
----------------------
* [Lab 31](https://embedded2014.hackpad.com/2014q3-Week-1-mQLneatLPcT)
  - [Embedded System - ARM Development and Optimization](http://www.slideshare.net/hirokiht/arm-developement)
  - Thumb2 Conditional Code
  - Benchmark using cycle count
  - Optimization Techniques
  - Mutex & ARM Exclusive Monitor
  - GiHub: [#1 Fibonacci](https://github.com/hirokiht/arm-lecture/tree/master/lab-1), [#2 Mutex](https://github.com/hirokiht/arm-lecture/tree/master/lab-2)

作業觀摩
-------------
* `Lab 31<https://embedded2014.hackpad.com/2014q3-Week-1-mQLneatLPcT>`_
* `Lab 32<https://embedded2014.hackpad.com/2014q3-Week-2-efkTFt0x7Ag>`_
* [Lab 32](https://embedded2014.hackpad.com/2014q3-Week-2-efkTFt0x7Ag)

作業須知 (Lab-33)
----------------
* 作業描述: [Lab 33: GDB + FreeRTOS](/embedded/Lab33)
* 截止日期:
   - Oct 11, 2014 (含) 之前