Dedication. List of Figures. List of Tables. Foreword. Preface. Acknowledgements. 1: Introduction. 1. Motivation. 2. System Level Design Languages and Frameworks. 3. Our Approach to Heterogeneous Modeling in SystemC. 4. Main Contributions of this Book. 2: Background Material. 1. System Level Modeling and Simulation Methods. 2. Models of Computation and Heterogeneous Modeling at System Level. 3. Ptolemy II: A Heterogeneous Modeling and Simulation Framework. 4. SystemC: Language and Framework. 5. Implemented Models of Computation. 3: SystemC Discrete-Event Kernel. 1. DE Simulation Semantics. 2. Implementation Specifics. 3. Discrete-Event Simulation Kernel. 4. Example: DE Kernel. 4: A Few Words about Implementation Class Heirarchy. 1. MoC Specific Ports and Channels. 2. Integration of Kernels. 5: Synchronous Data Flow Kernel in SystemC. 1. SDF MoC. 2. SDF Data Structure. 3. Scheduling of SDF. 4. SDF Modeling Guidelines. 5. SDF Kernel in SystemC. 6. SDFSpecific Examples. 7. Pure SDF Examples. 6: Communicating Sequential Processes Kernel in SystemC. 1. Implementation Details. 2. CSP Scheduling and Simulation. 3. Example of CSP Model in SystemC. 4. Modeling Guidelines for CSP Models in SystemC. 5. Example of Producer/Consumer. 6. Integrating CSP and DE Kernels. 7: Finite State Machine Kernel in SystemC. 1. Implementation Details. 2. Example of Traffic Light Controller Model Using FSM Kernel in SystemC.8: SystemC Kernel Application Protocol Interface (API). 1. System Level Design Languages and Frameworks. 9: Heterogeneous Examples. 1. Model Using SDF Kernel. 2. Model Using CSP and FSM Kernels. 3. Model Using FSM, SDF and DE Kernels. 4. Model Using CSP, FSM, SDF and DE Kernels. 10: Epilogue. References. Appendices: A. QuickThreads in SystemC. 1. QuickThreads. 2. QuickThread Client Package in SystemC. B. Autoconf and Automake.
SystemC Kernel Extensions for Heterogeneous System Modeling is a result of an almost two year endeavour on our part to understand how SystemC can be made useful for system level modeling at higher levels of abstraction. Making it a truly heterogeneous modeling language and platform, for hardware/software co-design as well as complex embedded hardware designs has been our focus in the work reported in this book.