Its informative reading the comments on Neil's blog and interesting, but also saddening, to learn that things seem to have remained more or less the same in the SoC world as they were in the system (lots of ASICs + PCBs and racks n' stuff) world 10-15 years ago. The problems existed before we had SoCs. No doubt the issues are now more critical as product development cycles get shorter and fixing a single SoC is a lot more expensive.
Sounds like what is needed is more about organisation and cultural change than tools.
brian, nice post and thanks for mentioning the agilesoc blog. I 100% agree with you when you suggest we hardware folks aren't even sure yet what questions we should be asking software teams. I'm convinced that'll remain a problem until the structure of an SoC team changes. My opinion includes doing away with hardware "teams" and software "teams" that sit in different org hierarchies. Developers on both sides need to sit as part of the same *product* team. We learn from the questions we ask. They learn from the questions they ask. Too much guessing and assuming right now and I don't think better technology can fix that.
No guarantees that makes things any better of course... but I sincerely doubt that kind of shake-up would hurt!