does the patch continue to play? i.e. has it just disconnected from the UI or has the board crashed?
so far, (excluding firmware dev) Ive the 4 most likely reasons for the board to crash are:
CPU load too high e.g. take a complex poly patch increase the number of voices, you may find it running ok at 10 voices (say at 95%), but at 11 voice it crashes. BUT this can also happen if the patch is doing something wrong.
using a lot of RAM e.g. delays/tables in RAM rather than SDRAM, you usually can get a link error but, at the 'edge' of limits you don't... this I think is because the stack grows down in used memory. (i.e. there is enough room for the table/delay but once the patch uses memory it runs out)
accessing invalid memory, usually not possible... unless you write C, but possible, i think probably related to above.
bug in an object/code - e.g. modulation sources in poly... (this is the only known issue I think so far) but probably SDCard related issues fall into this.
generally, if you have a patch crashing, first try to reduce the resources it uses (delays/tables sizes/cpu) and see if that helps.
(also lets be clear the different between compiling and crashing... if the patch fails to compile it should not be uploaded to the board, so cannot be run... unless bug in software :))