Para emular "por hard" hay que conocer el circuito mucho mejor que para hacerlo por soft, siempre hay que hacer ingenieria inversa para los circuitos que no se conocen del todo bien, o que tienen un comportamiento que no es igual en todos los chips, como en el caso del SID. En un circuito con FPGA los tiempos tienen que ser exactos porque se hace todo en tiempo real, en un emulador por soft no, por ejemplo hay emuladores que aprovechando que solo se generan 50 imagenes por segundo, hacen todo el proceso entre dos cuadros "al instante", justo antes de renderizar el cuadro. Es decir que no procesan las instrucciones del 6510 en tiempo real, sino que antes de dibujar el proximo cuadro, ejecutan aceleradamente todo lo que ocurrio entre el cuadro anterior y el actual, asi que los tiempos mas o menos se pueden ir corrigiendo por soft, mientras que en FPGA si uno agrega un componente de mas, alguna señal puede llegar despues de lo que deberia (porque cada componente agrega un retraso), y empezar a funcionar todo mal.
En un emulador por soft, como los componentes son virtuales, digamos que se puede hacer trampa para compensar, pero por supuesto requiere un hard mucho mas complejo.
La ventaja de usar FPGA hasta ahora era la portabilidad (por portatil) y el bajo consumo, pero con una Raspberry Pi ahora eso se esta emparejando un poco con la emulacion por soft.