-
Notifications
You must be signed in to change notification settings - Fork 0
My comments #1
Description
It is hard to get good feedback, so here are my comments.
A description of why this design is better than other designs would be helpful.
The image is great, but it took a while to understand it. Are those separate RAM blocks? In that case, maybe the strength of this design is high bandwidth to the memory blocks. A better introduction would have helped me understand the image the first time I looked at it.
Lots of great details. It would be nice to have a simple higher level view of the instruction set. What were you thinking when you designed this?
With all of the different memory access options, you may want to justify it using the data presented here and in the appendix.
https://users.ece.cmu.edu/~koopman/stack_computers/sec6_3.html
It is not clear which board/fpga this is running on.
It is not clear how your memory is structured. One block ram, multiple ones???
After 3 reads, I am still not sure where the wright address comes from.
It would most helpful to see the FPGA resources required by this design.
Two memory accesses per clock cycle is interesting.
Do any real Forth applications really need a 15 or 16 bit program address space. I thought that 14 bits would be plenty. Maybe I am wrong.
What frequency does this run at? Which path limits the frequency?
What happens during interrupts?
How much does this board cost?
When you define the bits such as
. These three bits define the RAM access operation.
Please specify what the options are. This cpu does a great job of it.
https://github.com/CPUNexus/Tridora-CPU-mirror/blob/main/doc/tridoracpu.md
I now see that you did this quite well with the ucode table. I am still not sure what a ucode is.
I hope that the feedback helps.