Hello!
> I have tried the NIOS II with FatFS, but I was quite disappointed by the code
density. I do not want to eat up all my block RAMs with a boot ROM.
> I also thought about the AVR since there is an AVR soft core and a 1541 clone
that is AVR based.
> But finally, the TG68 seems to be a good solution. Plus, I have a specific SPI
core that takes care of some of the particularities of the SPI protocol for
SD-Cards, like automatically sending of zeroes when I just want to read the
SD-Card.
> For the boot ROM, I think I will use the cache with a pre-initialized tag and
data content at startup so it can act as a boot ROM.
You should try openmsp430 core from opencores.org.
It is quite powerful totally 16bit core with 1 clock per memory access
(including instruction read and data read) speed. It resembles a bit
pdp-11 architecture, but with 16 16-bit general-purpose registers.It
has unified 2-address architecture where both source and destination
can be memory word or register.
It is much smaller than tg68 (1600-1700 LE without debug capabilities)
and easily approaches 35 MHz (which is 35MIPS for register-register
ops) in cyclone II.
mspgcc is quite good compiler for that. At least, it is far better than avr-gcc.