It depends on what crashed. If the system just doesn't respond (in some kind of infinite loop, deadlock or the like), then it usually responds to GDB, and you can see the backtrace (call stack), etc. If the system / bus / cpu actually crashed (at a lower level), then it probably wonβt respond. In this case, you can try to set breakpoints in suspicious places / variables and watch what happens. Also, a simulator (ISS, RTL - if applicable) can come in handy to compare behavior with HW.
source share