Close

Old notes

A project log for Lookup Table ALU

Optimized tables to occupy a 20addressbit x 16databit device

ken-kd5zxgKen KD5ZXG 07/04/2020 at 05:520 Comments

I've scraped together a few of my old notes.
Imported TXT doesn't seem to column well.
I've done a poor job of fixing those columns. 

Start by assuming a 16Megabit device
perhaps with a small helper for flags
allocating address space to 32 tables:

***The Grand Table of Tables***
Note fixed point byte positons HL . XYZ

_L.___ ADD(A+(B+0))  _L.___ ADD(A+(B+1))   Flag outputs to be stored separately
_L.___ SUB(A-(B+0))   _L.___ SUB(A-(B+1))
_L.___ RSB(B-(A+0))   _L.___ RSB(B-(A+1))      Reverse subtract
_L.___ FUN(A,B,0)      _L.___ FUN(A,B,1)        256+256 single input functions
---Below this line need not store or throw flags, detect zero with a logic gate---
_L.___ A                     _L.___ B                       MUX(A,B) 
_L.___ OR (A,B)          _L.___ XOR(A,B)
_L.___ AND(A,B)        _L.___ NOR(A,B)
H_.___ INC(AB+1)       _L.___ INC(AB+1)        16bit count, bypassing 8bit carry
H_.___ DEC(AB-1)      _L.___ DEC(AB-1)
H_.___ MUL(A*B)       _L.___ MUL(A*B)
_L.___ DIV(A/B)         __.X__ DIV(A/B)
__._Y_ DIV(A/B)         __.__Z DIV(A/B)
_L.___ MOD(A/B)       __.X__ COS(AB)
__._Y_ COS(AB)        __.__Z COS(AB)           Let AB represent the 1st quadrant
_L.___ SQR(AB)         __.X__ SQR(AB)
__._Y_ SQR(AB)        __.__Z SQR(AB)

Discussions