I am going to be designing for the super duper out of order execution super computing machine. I will design the datapath, the control logic as well as the overall design. Timing is very important when we are pipelining.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I am going to be designing for the super duper out of order execution super computing machine. I will design the datapath, the control logic as well as the overall design. Timing is very important when we are pipelining.
writing the spec for branch and fetch logic 3 hour
writing the final project design on Sunday from 5pm to 10 pm
met with kurt last night for 2 hours to discuss about the design doc
10 hour total
start working at 12:30, I just wrote a general purpose fifo in 40 minute
I wrote fifo that can write 2 entries in 1 hour
just finished the logic for instruction fetch, no branch prediction yet
6 hr
i spent 9 hours last night
things that accomplished fifo.v
instructionQueue.v
instructionFetch.v
i spent 2 hours fixing compiler errors
I also wrote the wrapper module for shiftFu
fixed a simple bug in fifo.v 5 minute
it should work now
fixed some wiring errors in instructionFetch 30 minutes
put instructionFetch and instMem in dataPath and fixed some wiring errors, need to check if I declare all the wires correctly 1 hour
start writing the test bench for rob, very complicated to test, too many input and output 30 minute
fixed some wiring errors in monitor.v
1 hour fixing various errors from monitor wiring errors
monitor needs to be updated
reservation station need to be rewritten
total hours tonight 3 hours
fixed some bugs on aluFu and shiftFu
our rudimentary datapath is now working, yay!
wrote the spec and algorithm for the functional units.
wrote some test code for the datapath called tempIo with hard coded instructions
i will come in on Sunday to write the multiplier unit
I wrote the general algorithm for some of the functional units and how they will interface with other units
i wrote a fifo that will minimize the latency of read and write that we can use for the functional units
total time 4 hours
start working on the multiplier
goal a super fast multiplier than our original one
i figured out a way to pipeline the multiplier
and make it really fast
i figured out a way to pipeline the multiplier
and make it really fast
I spent 5 hours just on the test cases for the
unfair bench mark, it's buggy and it takes a lot of time to debug
total hours 11 hour
started working at 4:10
I just spent another 4 hours debugging the unfair bench mark and running it on lab4
it finally works after many hours of debugging due to stupid mistake
it's finally working though
my next goal is a super fast multiplier
goal today is a super duper fast pipeline multiplier
multiplier is still not done yet
started working at 3:45 pm today
goal multiplier in 3 cycles
and a fetch unit with branch and jump
I finished building an asyncronous multiplier that takes 35 ns to finish, and then I pipeline it into 2 stage, it should take less time to finish now.
It passed my random case test, and it should work.
Jason need to test it more on timing and interface though.
started to work on the branch unit and integration
multiplier is done and it should work, hopefully
multFu is done, and it should work hopefully
after exploring various strategy and solutions, I came up with a solution to the branch and multiply hazard problem
I finished writing the multFu unit last night around midnight, and I left around 3:30 am
I spent about 12 hours yesterday working
today I am going to start writing a test bench for the multFu
I used verification mode and fixgated 2 to generate more synplify warnings more combinational loop found
all the combinationational loops are gone
most of them caused by the asyncronous logic in reservationStation