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…

Flash & Bitstream

I started off this week by troubleshooting and testing the flash functions. In harmony there are two non-volatile memory drivers, NVM and Flash. Usage of the flash driver is simpler compared to NVM. The functions allow you to write a word, quad word, or a defined row size. Though you must handle bit-shifting when writing large data. You’ll find how the functions work in this documentation. After I’ve verified its functionality I attempted to test it by writing a dummy key for the Read more…

Debouncing

Bouncing is the likelihood of metals to come into contact with each other, when the contact is opened or closed, producing unwanted multiple signals. Debouncing is the method of making sure only one desired signal is produced based on a single opening or closing of a contact. I have proceeded with the next module, push button. Dr. Shawn said that it required a debouncer since the push button has the tendency to bounce. I find it interesting learning how debouncing Read more…

The flow

This week was mainly spent finishing up the flow of the program. I first started with modifying the data file importer to accommodate the requested changes and continued with the addition of the CRUD functionalities of the admin page. I then started work on the MC page to handle the entire event. This mainly involved handling the logic on the flow of the program and how the various roles interact with each other. Then followed some automation of the process Read more…

Second Week of Internship

For this week my progress is still slow. I continued my study about CakePHP and at the same time I  tried my best to understand the structure of the first project that Dr.Shawn gave me.  I also do some study about PHP just to recall back what I have learned in university. On the last day of the week, I met Dr.Shawn and he gave tasks to me which I need to fix two bugs in the website. He explained Read more…

Code Translation and JointJS

I work on generating Verilog version of source code based on user input which is coded in C++ this week. I study Verilog-mode and the way of this tool functions to properly instantiate the signals’ name. I make sure the program labels each device respectively to user’s input while doing the translation from C++ to Verilog in order to organize the system and it also helps when I need to come out with a naming convention for the connection between Read more…

PIC32 HMAC-MD5

I spent this week jumping between tasks as I tend to get bored working on the same thing for long. This week I worked on implementing HOTP, flash and troubleshooting the SSL server. HOTP works by computing an HMAC based on 1- A static secret key generated by the server and known by the client. 2- A changing factor which is a simple counter. The server remembers the last value of the counter for which a correct password was entered. If the user’s Read more…

What Happiness Sounds Like…

My work on the passive buzzer had entered its 4th week. I did not like that 4 weeks means a month. When days become weeks, and weeks become a month, you know your work performance is not doing good and you need to do something about it. I wish I was able to do it on my own but at the end I still needed help from Dr. Shawn to finish. Dr. Shawn checked my codes and asked me to Read more…

Sending & Writing The Bitstream

Eighth week. Slow. I did not manage to implement HOTP nor SSL. My cryptography knowledge is weak. I had a ton of studying to do and even more still. As for SSL, with some slight troubleshooting it should work soon, but its not a priority at the moment. Flash code is also not finished and for what I’ve written I haven’t confirmed the functionality. I found out I was not receiving and writing the bitstream properly over the network and onto the FPGA. I Read more…