shared clock methodology for time triggered multi cores
play

Shared-clock methodology for time-triggered multi-cores Keith F. - PowerPoint PPT Presentation

Shared-clock methodology for time-triggered multi-cores Keith F. Athaide Project supervisor: Michael J. Pont Technical supervisor: Devaraj Ayavoo Communicating Process Architectures (CPA) 2008 8 th -10 th September 2008 Overview Aims


  1. Shared-clock methodology for time-triggered multi-cores Keith F. Athaide Project supervisor: Michael J. Pont Technical supervisor: Devaraj Ayavoo Communicating Process Architectures (CPA) 2008 8 th -10 th September 2008

  2. Overview  Aims  Execution policies – Co-operative – Pre-emptive  Execution architectures  Shared-clock architecture – Algorithm for non-broadcast topologies  Multi-processor microcontroller architecture  Case study description  Results  Conclusions 2

  3. Aims  Maintain the predictability and robustness of co-operative single-processor systems – Custom system-on-chip (SoC) – Time-triggered applications  Heterogeneous processors  How to synchronise the different processors? 3

  4. Execution policy  System has many functions  Functions often decomposed into discretely executing blocks called tasks – Periodic or aperiodic tasks  Periodic tasks may have static or dynamic periods  Tasks have deadlines  Tasks are executed according to a policy – Co-operative execution policy – Pre-emptive execution policy 4

  5. Co-operative execution policy Time Time  Tasks must yield control when required  Resource sharing needs no complex locking mechanisms – Same processor, one execution thread  System responsiveness inversely related to longest task execution time 5

  6. Pre-emptive execution policy Time  Tasks can interrupt each other  Interruption controlled by priorities  Predictability dependent on uniformity in pre-empting instructions  Problems such as priority inversion 6

  7. Scheduler architectures  Event-triggered – Multiple events – Feasibility depends on  the number of events expected  the number of events serviceable by hardware – “Construct by correction”  Time-triggered – Single event – Other events sensed by polling – “Correct by construction” – Can be power hungry 7

  8. Shared-clock architecture Master Receive Timer Tick Overflow [overflow] Send Send Timer ACK Ticks Overflow Receive Run ACKs tasks Run Slaves Hardware tasks 8

  9. Shared-clock non-broadcast topology  Existing implementations need communication g h i topologies supporting broadcasts d e f – Buses like CAN  Can be simulated by point-to-point a b c transmissions – Hardware or software a  Tree broadcast d b – MPI collective g e c communication algorithm h f  Lag due to point-to-point i transmissions 9

  10. Multiprocessor architecture Cluster NIM Cluster Cluster Cluster Debug NIM NIM NIM Processor Processor Messaging peripheral Timer GPIO Memory Network-on-chip (NoC)  Network Interface Module (NIM) – Messaging component as peripheral or co-processor  Debug cluster – Write to memories – Set breakpoints, stepping, etc. 10

  11. Network interface modules (NIMs)  Asynchronous communication  Error detection Transport – 12-bit checksums (CRCs)  No automatic error correction Network – Errors cause no extra communication – Software notes and corrects errors Data link  Static routing  Serial-parallel communication Channel Channel  Variable number of channels  Lack of predictability in communication latency might affect overall predictability of the shared- clock system 11

  12. PH Processor  Single interrupt – Built for time-triggered applications – Multiplexed from any number of sources  Soft-core processor (VHDL source available)  32-bit reduced instruction set computer (RISC)  MIPS I ISA (excluding patented instructions)  Harvard architecture  32 registers  5-stage pipeline 12

  13. Hardware implementation 13

  14. Hardware usage of NIMs 800 Hardware slices used 750 Bits per channel 700 6 8 650 16 600 1 2 3 4 Number of channels 14

  15. Case study description  Nine nodes – Mesh topology P5 P6 P7  Three scheduler types – SCH1 : P1 as master; P1 P2 P3 P4 sends Ticks only when previous is acknowledged – SCH2 : P1 as master; P1 Debug P0 P1 sends Ticks in turn – SCH3 : Tree broadcast P1  Relative times measured P0 P4 P3 P7 P2 P6 P5 15

  16. Timer sense times (microseconds) 300 250 200 150 SCH1 SCH2 100 SCH3 50 0 P0 P2 P3 P4 P5 P6 P7 16

  17. Timer sense times for SCH3 (microseconds) 80 70 60 50 40 30 20 10 0 P0 P3 P4 P2 P7 P5 P6 17

  18. Timer sense time jitter (microseconds) 1.5 SCH1 1 SCH2 SCH3 SCH3 0.5 (local) 0 P0 P2 P3 P4 P5 P6 P7 18

  19. Timer sense time jitter in SCH3 (microseconds) 1.5 1 P1 local 0.5 0 P0 P3 P4 P2 P7 P5 P6 19

  20. Conclusions  A custom multiprocessor microcontroller was developed for time-triggered applications  The shared-clock protocol was employed on a 9 node mesh version of this microcontroller using a broadcast simulation algorithm  Absorption of the broadcast simulation algorithm into software allows the node sending the ticks to worry only about the ones it is connected to – a scalable situation  The delay and jitter in SCH3 could be improved 20

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend