Hi Justin
For simulation check out also the following: Having fun with the FRDM-K25Z and Re: New Freedom FRDM-K64F board
I simulate almost all peripherals of the Kinetis (most in near to real time) so that complete projects can be fully tested and the simulated Kinetis interacts with other devices (eg. via Ethernet or UART/COM ports) or using a script file (USB and almost all others). It handles all interrupts and DMA and things like I2C peripheral devices, or SPI Flash as well as SD cards.
This can reduce project development, debug and maintenance times dramatically (it also allows playing back Wireshark Ethernet recordings to recreate Ethernet situations for the field to be debugged). The simulators as incorperated in Keil, IAR etc. are only really of use for analysing small parts of code when things like instruction cycle counts are needed and less so for actual general embedded application development/debugging.
There are a few videos showing it in operation - eg.
K40_SLCD.wmv - YouTube (SLCD simulation)
FlexCAN.wmv - YouTube (dual CAN simulation - connecting the simulated Kinetis to a real CAN bus)
cf-tower_0003.wmv - YouTube (TFT simulation)
The videos show operation on both real Kinetis/Coldfire HW and in the simulator so that the real time behaviour can be seen more or less side-by-side.
The following document is a tutorial for EThernet simulation http://www.utasker.com/docs/KINETIS/uTaskerV1.4_Kinetis.pdf (some Ethernet simulation is seen also in the videos)
ETM trace is valuable for complex debugging but may be needed only once or twice in a year [unless the developer is prone to making lots of complex boo-boos] (or course simpler methods usually solve them too but with a little more effort and patience). Application level simulation can be used for 95% of real development and accelerates almost all aspects of projects.
Regards
Mark