UUID v Integers

After some preliminary development, we’ve come to realise that we will need to use UUID as the primary key for all our database models. However, we were concerned that this would incur a performance penalty as UUID were huge random numbers. So, we read up on some other experiences and concluded that it would not significantly mess things up for us and would actually be good as we build our database for future growth, if we are careful. Some points Read more

Witty Login

Now, it took me a while to figure this one out but I’ve managed to get the Witty authentication widget to center itself on-screen. Getting the actual widget itself to work took only a quick look at the tutorial and example. But it was never centered until today. All that was missing was to add the following right at the beginning of the code, right after loading the Bootstrap theme. setTheme(new Wt::WBootstrapTheme()); root()->addStyleClass(“container”); That did the trick. Now everything is Read more

Branching Deep into AEMB

Unfortunately I am still behind schedule as I invested my time this week to analyse the flow of handling branches in AEMB. I had to do this because while I understand the big picture behind the new threading model, I still can’t see the details of it.
(more…)

Threading model for AEMB

Through out last week I started my preparation for changing the threading model for AEMB.

Software wise, I installed ISE on my Ubuntu to be able to compare the area of AEMB before and after the modifications. Here is a couple of tips for you to avoid making small mistakes during the installation. The first one is to run the installation script as root. Second make sure you have the necessary empty space on your drive before attempting the installation.
(more…)

AEMB hand drawn circuits

Unfortunately this week has been the least productive for me. In this post, I will summarize my small progress for this week. More importantly, as the blog title suggests, I will post images of AEMB design that I drew during my analysis. I hope this can make up for my slow progress.
(more…)

Witty Adventures

It turns out that understanding how web technology works is a hindrance to working with the Witty framework. I keep trying to relate the framework workings to the underpinning web technologies. However, what I should do is to just accept the framework as it is.
(more…)

Working on AEMB opcodes

In my second week, time was an issue. Therefore, I attempted to finish up more this week (my third week) so that I can cover the workload from week two. Generally, I am supposed to finish the opcodes by the end of this week. However, like 99% of the things with programming, it always ends up as an underestimation.
(more…)

More work on AEMB opcodes

In my second week, time was an issue. Therefore, I attempted to finish up more this week (my third week) so that I can cover the workload from week two. Generally, I am supposed to finish the opcodes by the end of this week. However, like 99% of the things with programming, it always ends up as an underestimation.
(more…)

Working on AEMB opcode

For my second week, I couldn’t work as much as I imagined. After finishing the basic utilities and a general understanding of what I needed, I set off to write the opcodes. The opcodes require more time and effort because ultimately I would like to get it right the first time. However, that requires a general understanding of the aeMB processor.
(more…)

AEMB Data Interface, Execution and Branching

The journey of analysing AEMB is finally reaching a destination. In this post I will discuss AEMB’s interface with the data memory and with the accelerator bus. Moreover, I will explain the design of the execution unit and highlight some of it’s parts that I can’t comprehend yet. Finally I will describe the Branch Condition Checker (BRCC) unit. The Data interface module is responsible for handling the wishbone communication with the data memory. It issues all the wishbone signals and Read more