What is your application? Why SATA? What speed requirements?
The idea is to extend an existing embedded single board computer like SK-AT91SAM9XE512-SIM300 to a "geek version" of a portable computer with both high-level (USB/Eth/IDE/SATA) and low-level interfaces (I2C/SPI/UART/etc), bare I/O, plus whatever peripheral interfaces a typical top-level AVR or entry level ARM microcontroller would allow, all brought to user accessible connectors. A strong limitation of this solution is that is should be possible to build with hobby level technology (double sided boards, 8/7 mil traces).
In this regard the SATA is a very appreciable interface to have. Besides, I've managed to get few of those SiliconImage ICs just in case.
Speed requirements are minor, but the higher speed the better.
Your initial idea with SAM9+something-to-PCI+SIL3114 doesn't look well balanced: SIL3114 is overpowered compared to SAM9, but there will be no bus master mode (SAM9's bus doesn't allow that afaik) so this way is complex but not so efficient.
Yes, I know it's unbalanced, but this comes from a limited number of available parts that satisfy the hobby level technology limitation.
If you plan to run Linux, then USB should be an easiest way to access SATA drive (all drivers are ready made, should work immediately), but there can be speed issues: lower end (QFP) SAM9s have FS (12Mbit/s) USB host. Using IDE-SATA bridge may require some CompactFlash driver tweaking, but the bridge itself is fully transparent and requires no additional programming (actually you don't need to hunt for specific Marvell chip, any off the shelf IDE-SATA converter should work the same way).
That's true, but in this case the stability will depend on USB subsystem which is still have issues on modern PCs. Well, maybe I'm little biased about this.