I hadn't heard about super fast optical transistors, but a few months ago I was reading about ultra fast transistors that operate at 600GHz.
The idea came to me, to write a x86 emulator in 6502 assembly. Run it on a 6502 CPU built using ultra fast transistors, and boom, you've got a faster x86, just it's an emulated x86, MMU and all!
Typical 6502 instructions take 2-8 cycles if I remember rightly, so as long as it takes under 200 6502 cycles to emulate one x86 instruction, you're beating a 4GHz x86 processor.
I'm sure there are practical problems that make it difficult or impossible in reality. But still fun to think about. :)
- 3 8bit registers vs. ~8 32bit or ~20 64bit registers. (so you're essentially working on memory at all times, and have to emulate all "longer" commands, such as addition, to do 4-8 carries manually)
- 64k of memory (which includes the emulator), so you need to add some banking mechanism.
- no support for integer multiplication/division or even float/SIMD in your instruction set.
But you probably can provide a fast implementation of the decimal addition instruction :-)
The idea came to me, to write a x86 emulator in 6502 assembly. Run it on a 6502 CPU built using ultra fast transistors, and boom, you've got a faster x86, just it's an emulated x86, MMU and all!
Typical 6502 instructions take 2-8 cycles if I remember rightly, so as long as it takes under 200 6502 cycles to emulate one x86 instruction, you're beating a 4GHz x86 processor.
I'm sure there are practical problems that make it difficult or impossible in reality. But still fun to think about. :)