The TK20 is a clever idea. Using 100 fast logic chips of that time era, to make a much faster 6502. Copying the relatively slow EPROM, into faster (presumably) static ram, is good.
I'm glad you intend to publish the PCB layout and VHDL source code. Because 40 pin DIL outlines, are relatively small, already. Using BGAs, is sort of forced, if you want the device to have many pins as well, which that FPGA application needs.
When I said x100 faster, I meant when it was the original 1 MHz 6502 applications/hardware. Such as most Commodore Pets/64's, early home computers, and (presumably) some of the early standalone dedicated Chess computers.
E.g. The KIM1 1 MHz 6502, running Microchess.
http://www.benlo.com/microchess/index.htmlAmazingly, the above link, has the actual Microchess program, which you can type in, in 6502 Hexadecimal format.
But, you are right. The later Chess computers, with faster cpus, such as 5 MHz 65C02's, would **ONLY** be x20 times faster. But that would still be a substantial speed improvement.
E.g. 5 minutes a move, would then be a much more palatable, 15 seconds a move. So, well worth it.
Anyway, speed up the old commodore Pet computer by around x100 times, sounds amazing. That would work, not just for any chess programs, but everything!
It would be fun, to see/play with such a turbo charged pet computer.
On the other hand, there may be some technical hurdles which still need to be solved/fixed. I know you mentioned about 'slowing down', when I/O activities (via memory map), are detected. But some things are timed in other ways, let me explain.
I've played around with simulators/emulators, of computers of that era, but the huge speedups, can cause it to malfunction. E.g. Keyboard denouncing failure, on a Jupiter Ace (Forth) machine emulator.
E.g. The Commodore Pet, probably does keyboard denouncing in software. So if you speed it up by x100 times, it might cause the keys to bounce (unwanted extra repeat keystrokes, when typing), in a very annoying way.
Because the (guesstimate) 10 msec denounce, would then only be 100 usec in duration, which would probably not be long enough.
Similarly, that (and maybe other) related timing issues, may apply to other computers and things.
EDIT: I'm probably being too pessimistic here. Hopefully/probably the Pet uses a timing reference, such as the screen refresh rate (50 or 60 Hz), to act as a reliable timing signal, for debouncing the keyboard and/or uses ICs, which automatically read/control the keyboard, and send the results to the 6502.
With it being such an old computer design, I wouldn't be surprised, if it reads in the keyboard matrix manually, but as long as the timing is still exact (i.e. independent of the 1 MHz 6502 clock signal), you should be fine.