Skip to content
Snippets Groups Projects
Commit eb9c66f7 authored by Per Lindgren's avatar Per Lindgren
Browse files

test14

parent f31cd943
No related branches found
No related tags found
No related merge requests found
......@@ -177,9 +177,9 @@ Seminars
a. Backport assignment `3b` to your choosen target. Use semihosting in order to `write` the resulting string to the host. You may need to use `--release` for decoding the long (`coded`) message, as being deeply recursive unoptimized code may run out of stack memory.
b. Discuss from a memory safety perspective the outcome.
c. Compare for the short message (`abc`), the number of cycles required for `decode` in `--dev` vs. `--release`. As a comparison my straightforword C implementation took 2200 cycles in best optimized mode using `gcc` (-o3), while my (transation) to Rust code took 1780 cycles. (Both executed on a bluepill board at 8MHz with flash memory wait states).
Make a new git for your embedded development. Make three branches (`3a, 3b, 3c`) with updated documentation according to the above.
......@@ -187,7 +187,7 @@ Seminars
* Prepration
Bring a USB mini cable and your dev board. Be prepared to present the progress on assignment 3.
Bring a USB mini cable and your dev board. Be prepared to present the progress on assignment 3.
* Topic
......@@ -202,19 +202,87 @@ Seminars
6. Memory Safe Concrreny
Preparation
* Preparation
* Finish lab 3 and be prepared to show your solution.
* Topic
* UnsafeCell, and synchronization in the RTFM model.
* Requirements for Stack Resource Policy (SRP) based single-core scheduling.
* [cortex-m-rtfm](https://github.com/japaric/cortex-m-rtfm) The RTFM-core (task and resource model) in Rust for the Cortex-M family
* [svd2rust](https://github.com/japaric/svd2rust) Generating
* Assignment
Implement a simple system with two tasks
* a perodic task executing each 10ms, that blinks the onboard LED, and
* usart task receiving commands (pause, start, period)
* a shared resource (data structure) protecting the command and period
Make a new git with the development and documentation.
7. Macros
* Preparation
Be prepared to present the progress on assignment 4.
* Topic
We will cover implementation of the RTFM-core crate.
Special focus to `macro_rules` and `procedural macros`.
8. Concurrent Reactive Objects
* Preparation
Be prepared to present assignment 4.
* Topic
A component model for reactive real-time programming.
We will cover the programming model and the implementation, including the `build.rs`, parsing of model files and generation of Rust code.
* Assignment
* port the assignment 4 to the RTFM-CRC model.
Make a new git for the development and documentation.
9. Presentation of project ideas
* Preparation
Be prepared to present progress of assignmont 5.
* Topic
Discussion of projects
* Assignment
Write a project specicification including individual grading assessment critera.
10. Wrapup
* Preparation
* Be prepared to present assignment 5.
* Be prepared to present your project.
* Finish lab 3 and be prepared to show your solution.
Topic
* UnsafeCell, and synchronization in the RTFM model.
*Requirements for Stack Resource Policy (SRP) based single-core scheduling.
The RTFM-core (task and resource model)
*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment