|
|
| Vous êtes ici: ac6 > ac6-formation > ARM cores > Programming with RVDS IDE |
| RV0 | Programming with RVDS IDE |
| Objectives | |||
| Through this course, the attendee will become familiar with RVDS compiler, assembler and linker. |
|||
| The course explains the subtleties of the scatter file. |
|||
| A lot of tips are provided which contribute to optimize ARM code execution time and / or ARM code compacity. |
|||
| Practical exercices have been developed to highlight the theoretical aspects. |
|||
| Labs are run under RVDS4.0 |
|||
| A more detailed course description is available on request at info@ac6-training.com | |||
| Prerequisites | |||
| Knowledge of C language. |
|||
| Plan |
| EMBEDDED SOFTWARE DEVELOPMENT WITH RVDS | |||
| Embedded development process | |||
| Application startup | |||
| Placing code, data, stack and heap in the memory map, scatterloading | |||
| Tailoring the C library to your target | |||
| Reset and initialisation | |||
| Placing a minimal vector table | |||
| Further memory map considerations, 8-byte stack alignment in handlers | |||
| Building and debugging your image | |||
| Long branch veneers | |||
| C/C++ COMPILER HINTS AND TIPS | |||
| ARM compiler optimisations, tail-call optimization, inlining of functions | |||
| Mixing C/C++ and assembly | |||
| Coding with ARM compiler | |||
| Measuring stack usage | |||
| Unaligned accesses | |||
| Local and global data issues, alignment of structures | |||
| Further optimisations, linker feedback | |||