How to divide the work of implementing SpecC semantics between SpecC compiler and SpecC simulator?
–One extreme
------ Letting the SpecC compiler to generate all the low level code and eliminating the need for simulation
library
– Comments: heavy compiler implementation; inflexible system
–
–The other
extreme ------ Embedding as much functionality as possible in the simulation library and thus leaving the
compiler simply translating the SpecC
constructs into API calls
– Comments: Due to the limitation on the expressive
power of C++, it is not always possible to
find a concise correspondent of SpecC
construct.