| |
|
 |
|
Topics (The full description of this course
can be provided on request)
ARM Cortex-M1 CORPORATE INTRODUCTION
- ARM architectural summary
- Architecture challenge, meeting the
challenge with profiles
- ARM instruction set evolution
ARM Cortex-M1 INTRODUCTION
- Programmer's model
- Fixed memory map
- Privilege, modes and stacks
- Memory Protection Unit
- Interrupt handling
- Nested Vectored Interrupt Controller
[NVIC]
- Power management
- Debug
DEVELOPMENT TOOLS OVERVIEW
- RVCT compilation tools
- Codewarrior for RVDS
- RVD debugger
- RVISS simulator
- JTAG run control unit
ARM Cortex-M1 CORE
- Datapath and pipeline
- Write buffer
- Bit-banding
- System timer
- State, privilege and stacks
- System control block
- Different level of debug implementation
THUMB-2 INSTRUCTION SET
- Data processing instructions
- Branch and control flow instructions
- Memory access instructions
- Exception generating instructions
- If...then conditional blocks
- Exclusive load and store instructions
- Accessing special registers
- Memory barriers and synchronization
- Workbook : introductory tutorial for
Cortex-M1
INTERRUPTS
- Interrupt entry / exit, timing diagrams
- Tail chaining
- Interrupt response, pre-emption
- Interrupt prioritisation
- Interrupt implementation configurability,
impact on core size
EXCEPTIONS
- Exception behavior, exception return
- Non-maskable exceptions
- Privilege, modes and stacks
- Fault escalation
- Vector table
MEMORY TYPES
- Memory types, restriction regarding load
/ store multiple
- Device and normal memory ordering
- Access order
- Memory barriers
EMBEDDED SOFTWARE DEVELOPMENT WITH Cortex-M1
- Placing code, data, stack and heap in the
memory map, scatterloading
- Tailoring the C library to your target
- Reset and initialisation
- Building and debugging your image
- Long branch veneers
- Workbook : Retargeting the standard C
library functions, handling interrupts
INVASIVE DEBUG
- Cortex-M1 debug features
- Monitor mode
- Flash patch and breakpoint features
- Data watchpoint and trace
- DWT registers
- AHB-Access Port
INTEGRATION
- Functional Integration
- Clocking
- Reset
- AHD and Debug interfaces
- Synthesis, Place and Route
- Sign-Off
IMPLEMENTATION
- Implementation flow
- Configuration options
- RTL Validation
- Synthesis
- Place and route
- Qualification
C/C++ COMPILER HINTS AND TIPS FOR Cortex-M1
- ARM compiler optimisations
- Mixing C/C++ and assembly
- Coding with ARM compiler
- Measuring stack usage
- Local and global data issues, alignment
of structures
AMBA3.0 INTERCONNECT SPECIFICATION
- Purpose of this specification
- Example of SoC based on AMBA
specification
- Differences between AMBA2.0 and AMBA3.0
AHB - ADVANCED HIGH PERFORMANCE BUS
- Centralized address decoding
- Address gating logic
- Arbitration, bus parking
- Single-data transactions
- Sequential transfers
- Retry response
- Split response
- AHB-lite specification
APB - ADVANCED PERIPHERAL BUS
- Read timing diagram
- Write timing diagram
- Operation of the AHB-to-APB bridge
- APB3.0 new features
AHB CORTEX-M1 PORTS
- Clocking and reset
- Bus interfaces , AMBA-3 compliance
- Debug interface, AHB-AP programming
interface
- Connection to the TPIU
|
|
|