early results with a 16-bit instruction space #645
Replies: 2 comments 4 replies
-
Interesting! How did you constrain all those registers? Just a global mask or did you actually reduce the width of all of them?
That is quite a lot as this is just the address logic. With a more efficient address decoding in all the modules the resource requirements might further drop. Btw, I have started reworking the processor's bus system / address map in #647. Would be interesting to see if the (upcoming) changes make an difference for you setup. |
Beta Was this translation helpful? Give feedback.
-
more results.... all bus addresses are now 17-bits in width; and in cases where i know i'm dealing with an instruction address (eg, the i've also replaced use of the starting with ~4360 LUTs with 32-bit addresses (plus XIP), i'm now at 3761 LUTs!!!! once i clean up my code, i'll merge in the #648 changes which should (hopefully!!!) make things even better.... |
Beta Was this translation helpful? Give feedback.
-
relevant to #629, i made a first-pass at compressing all instruction addresses to 16-bits within the CPU complex.... all internal registers that hold some sort of PC are now half as wide....
starting with a baseline design that consumed ~4360 LUTs on my IceBreaker, i've reduced that number by almost 200 LUTs; and now that i have a "feel" for where this optimization saves space, there are still plenty of other places where 32-bit address registers/buses can be compressed to at least 17 bits....
again, this is all very preliminary -- though it represents the first real savings in space i've been able to obtain....
Beta Was this translation helpful? Give feedback.
All reactions