First week in Aeste

On my first day of internship, Dr Shawn talked me through a git branching model and I proceed to study more on Git for the rest of the day. Then, I spent the following two days studying witty and web application. On the fourth day, Dr Shawn came to the office. After reading through the codes written by the previous interns, Dr Shawn explained the simulator project to me in detail. On the fifth day, I studied about web application Read more

Input Characteristics Determine Debounce Time

After much reading and some calculations, I learnt that theoretically the ideal bits of the LFSR counter in my design should result in the range of 300 µs to 5 ms debounce time. The width had to be quite large since the FPGA board clock speed was 100 MHz. For validation of the specific time to be put in the design, I tested the push button with a range of LFSR widths. I started with low widths that gives about Read more

The Bug Hunt

With the deadline approaching, I spent the last week making sure that the application is accessible and user-friendly enough for the end user. This was mainly accomplished with the use of CSS. With that done, I continued with deploying the program on the tablets. However, there was an issue with the browser rendering the overflowed portion of a page black when accessed in full screen mode. There was also what initially thought to be a problem with logging in into Read more

Enlightenment

This makes my 11th week with Aeste. I started off by implementing the generation of the RNG key which is to be read from the flash and performing even more trials to make sure it works exactly the way I believed it did, which Dr. Shawn stressed. Because most interns including myself half-ass everything 90% of the time, and the code is just yolo. I believe my half-assed implementation worked, but the Flash and FPGA libraries were still full of flaws, and Dr. Shawn notified me Read more

PostgreSQL

I start this week by working with PostgreSQL which is a new thing for me. I have to learn how to use it first before I start.  So basically this week I try to familiarize myself with PostgreSQL and doing some SQL commands to solve fix the bug. But in the end of this week I just realized that I have misunderstood Dr Shawn’s instructions and the way I use PostgreSQL was wrong because I was not using the development Read more

WISHBONE

For this week, I work on instantiating the modules. Each signals’ name need to be the same as object’s name. For example, a signal named ‘ack_i’ should have an output like ‘B1_ack_i’ as ‘B1’ is the object name. This is achieved by using substring in an AUTO_TEMPLATE. Then I make sure the necessary information will be successfully captured by the computer. For now, I have each module instantiated and ready to be connected to the computer. To allow communication between Read more

Week 3

I basically did the text processing part on the first day of this week. By using regex, the program is able to read through a template and output the signals’ name on a Verilog file. But this technique is not suitable as the user has to make sure that the device is compatible with the template. I basically spent most of the time studying JointJS before I get to talk to Dr. Shawn. We realized the problem of reading the Read more

Learning SQL

This week I have started doing my first task which is I have to deal with SQL. At first I have to struggle a little bit to understand how SQL works in CakePHP. Luckily Dr Shawn gave me some tips and advices. He said I can work with SQL inside the controller, table or manually which is the last option. For this project, it was previously done inside controller so for me to understand how to make SQL works he Read more

One by One Till All Done

Modifying the debouncer design was how this week started and end for me. I used a counter for my previous design but this was not recommended by Dr. Shawn since it takes up a lot of space and the design could be simplified even further just by using a Linear Feedback Shift Register (LFSR). LFSR use a shift register for the input bits that is dependent on its previous state. In a way, the design would be more efficient and Read more

Comparative Judging

After delaying the comparative algorithm aspects of the application for some time, it was great being able to finally make some implementable progress on it this week. It began with the primitive idea of using the normal distribution to estimate relative difference in scoring between two players based on the percentage of judges in favour of a player over the other. This did pose a minor problem in the event that all judges vote in favour of or against a Read more