W08-Check run on existing pipeline implementation
This week task is to continue testing on all the instruction set schematics that I have implemented in the pipeline. I need to make sure the correct instruction is fetch according the to the program counter and later decode and execute it according the instruction fetched. Thus, I need to Read more
Week 07 – Minor Modifications
The previous function of reading a sector is using a 512 bytes buffer, by doing minor modifying on the tightest loop to write into a pointer instead of a buffer. The function can read from sector indefinitely (theoretically) using multi-block read. If a read is less than 512 bytes, it Read more
14 – Removing Icache from AEMB
My new task is to remove the Icache module from AEMB. Basically Icache holds all instructions before execution by the core. Icache acquires the instructions from whatever is holding them externally and keeps them for processing. Icache controls the Instructions WB interface through the ich_hit signal. When the processor needs Read more
Week6: Finishing Schematics and PCB Footprints
Continuing from where we left off last week, we make a few last-minute additions to the Spartan-6 schematics and design the footprints of the components in preparation for PCB design. Just a short post this week, but click here to skip to the conclusion. Hardware Schematics With all the pins Read more
Week 4: SHA1 driver
This week, I was given a task to write a driver for the Secure Hash Algorithm 1 (SHA-1), which ultimately produces a 160-bit of hash value. It wasn’t as simple as I thought it would be as it’s quite different from the drivers that I wrote earlier. Apart from understanding Read more
Week 8: Remoteproc + Raspberry Pi
This week, the nature of my main task changed a little. From developing the remoteproc driver for X86 architecture I’m now required to do it for the raspberry pi which uses an ARM processor. This is because the main product of our company is not completely ready, and my supervisor Read more
W07- (cont) Pipeline Implementation in Java (Execute Stage)
After putting my current project on halt for a week time, finally I’m back to track to work on my T3ras project. This week I focus mainly on the execute stage in pipeline to execute and manipulate each of the MicroBlaze instruction sets into semantics operation written in Java. Since Read more
13- AEMB cooperates !
The above blinking LEDs are not regular blinking LEDs. These LEDs are connected to the output of a GPIO. That GPIO is controlled by the AEMB2 microprocessor and the AEMB2 microprocessor is fetching it’s instructions from a 16K block RAM that has been loaded with data using the DATA2MEM software. Read more
Week 1011
Finally! After another week I managed to force the module to work (correctly!). I had a really hard time debugging it, since you can’t simply expect to find a mistake by looking at seemingly random combinations of 163bits. I was forced to run again and again through the whole code Read more