We're starting a new design, and I again find myself tempted by the Microsemi SmartFusion2 as combination FPGA/uC. It's got a built-in ARM Cortex-M3, which is a simple dinky micro instead of some big honking A8 application processor that you can't even get up and running without kilobytes of boot code. The smallest, cheapest one is about $15 in small quantity with 64 kB of data memory and and 128 kB of application flash without having to touch the fabric resource. So, cute chip.
One of my concerns is field upgradability. There are a couple app notes on implementing "Auto-Update Programming Recovery", which seems to be what I'm looking for. You put down an external flash that holds your "Golden Image" of what you shipped with, and then an "Upgrade Image" and if the upgrade gets its wires crossed then it falls back. Or that's the theory, anyway.
Anyone have any experience with these devices to share for good or ill? Especially experience with the field upgrade mechanism.