Close

Reasoning

A project log for Lookup Table ALU

Optimized tables to occupy a 20addressbit x 16databit device

ken-kd5zxgKen KD5ZXG 07/04/2020 at 17:280 Comments

I have an old 3V Rasberry to generate and bit bang those tables. It doesn't quite offer enough IO to bang the whole device at once without multiplexing. No reason they have to all be banged at once. Manual multiplexing may work just fine.

Reason for carry selecting an output buffer after lookup rather than feeding an address bit was because a lookup takes 35nS and can't start till we know the address. Output buffers can probably be enabled/disabled much faster (I still need to test that theory). Carry could still be figuring itself out while dual lookups get a speculative head start in parallel. Maybe your instruction wanted gates on the side to clear or invert that carry? Now you got time...

Tables offer more function than would horribly clutter an instruction set. Some are best looked up programmatically. Could also serve a coprocessor role, perhaps for a relay computer that lacks a hardwired rotate right. Generating those tables might be a challenge within reason for any primitive machine, thus using them afterward won't be a total cheat.

Discussions