TIA.
TIA.
https://github.com/s-macke/jor1k/wiki/Technical-details
This talk give a few details about time frames and what someone has to do to emulate such a machine. If it is just about booting Linux you can do it in around 2000 lines (first commit of jor1k) if you take an easy architecture such as OpenRISC. Take a look at slide no. 10 and you might get an idea about the complexity of the other architectures. Slight 15 and 16 give you an idea why OpenRISC can be emulated much faster than any other architecture. A downside of such an non-mainstream CPU is less support. Indeed as Benjamin said, at least 50% of the time went into bugfixing and enhancing the toolchain. In the end the MIPS architecture might be optimal for a fast emulation and a well maintained toolchain.
I'm not well acquainted with Copy, so I don't know how long the bulk of the work took him. I'd suggest pinging him or Sebastian Macke (the guy behind jor1k) if you'd like to know more.
My understanding was that Sebastian chose OpenRISC in part because of the simplicity of the instruction set. I got the impression that this made the task a bit more approachable than x86 emulation, and gave him more hope for achieving a good emulation speed. And, in fact, it's quite snappy considering what it is. However I think he had to put a fair amount of effort into gcc and glibc debugging to really get it off the ground, and I know that he used to put a bunch of time into tuning the cores for each new version of asm.js, though I'm not sure how in flux it is these days.