100 likes | 341 Views
Agenda. Why simulation Simulation and model Instruction Set model More Visibility. Why Simulation ?. Pre-silicon design verification Hardware and software validation Flexible by nature Can be abstracted to represent different levels of accuracy. Simulation and model. Response. Stimulus.
E N D
Agenda • Why simulation • Simulation and model • Instruction Set model • More Visibility
Why Simulation ? • Pre-silicon design verification • Hardware and software validation • Flexible by nature • Can be abstracted to represent different levels of accuracy
Simulation and model Response Stimulus Software model of the processor hardware Driver logic / Test bench / Simulator environment
Simulation and model Logs / messages Debugger Commands Instruction Set Model Debugger / User Interface
Instruction set model- characteristics • Needed for DSP/MCU software development and validation • Target users are software developers • Mimics the behavior of the device at the instruction level (programming model) • Correctly models memory accesses, pipeline exceptions and discontinuities, peripheral accesses • Provides visibility to internals through debugger
Instruction Set Model - care-abouts • Execution Speed • Cycles/sec, Instruction/sec • Accuracy • Cycle order • Cycle count • Pipeline • CPU/Memory/Peripheral boundary
Instruction Set Model - functionality levels • Kernel model (CPU + program/data memory) • Device model (Kernel model + IO memory peripherals) • System model (Device model(s) + shared memory + controller)
Instruction Set Model- methodology • Interpreted : Each instruction is decoded and functionality interpreted run-time • Slower, but accurate behavior and debug-friendly • Compiled : The data structures are filled up compile-time • Faster, but difficult to debug • Pre-decodes : Decode is done Once • Binary translation : Target binary to host binary conversion
More Visibility Simulator Analysis - Cache hit/misses, Stall Analysis - Events for Count, Break, Profile Pipeline Visibility - Knowledge of Pipeline stages, resources, types of Conflicts