FYP Logbook Entries

ENTRY 1: Reflection of progress 1 - KENNETH LO JIN CHAN

Week 1

After my internship, I have chosen one of the topics from a list of potential projects for final year project given by intern supervisor which is “Virtual Hardware Laboratory for Remote FPGA Experiments on Real Hardware”. These are some questions I have answered based on the activity summary list.

  • Why is this a project to begin with?
    • This project is proposed because on the recent pandemic and to let students able to use FPGA during their labs.
  • What are the things you want to improve?
    • I would like to improve the usage of FPGA among students through the use of internet remote control.

Week 2

I attended the Online Research Methodology Workshop. The workshop briefly mentioned in the beginning that there was a separate YouTube video link on Research Methodology conducted by UTM last year that we can watch. The rest of the workshop talked about the Innovate Malaysia Design Competition. Besides, I have set the goals and also major deliverables/contributions of this project that I have chosen.

  • What are the goals of your project?
    • To develop a virtual hardware laboratory with remote access of real FPGA
  • What are the major deliverables/contributions of this project?
    • Major contributions would be students can access to real FPGA to allow them to test their designs through e-learning.
    • Cost can be reduced as students would not need to buy their own FPGA to have a real FPGA design experience

Week 3

In order to ensure a smoother project flow, the following questions have been answered to further understand the project.

  • What purpose does the work serve, what is the end-goal?
    • The work serves to allow the students to use the physical FPGA virtually to get to know how the hardware actually works. The end-goal would be providing a platform/user interface to allow interaction of the students with the physical FPGA itself.
  • What should be done at this early stage to ensure fewer risks and obstacles during the course of the project?
    • Study on other articles to get the idea of designing the project.
    • Study on how to design a software/user interface with the language needed.
  • What are the major steps in the project plan?
    • Decide on the FPGA that will be tested.
    • Design a user interface for interactive control by users through remote access.
    • Design a queueing system to avoid congestion of using FPGA

FYP 1-0 (a) Topic Proposal Kenneth Lo Jin Chan.jpg

I have also filled in the FYP 1-0 (a) Topic Proposal Form as well.

Week 4

I continue to think of these potential research problems based on some articles that I have read to get a better understanding of what I am going to proceed with.

  • Identify three potential research problems of interest.
    1. Management server/queueing system
    2. Interacting with the physical switches on the FPGA
    3. Monitoring the changes such as LEDs or displays on FPGAs
  • Write a possible research question for each of the above problems.
    1. How to allow multiple users to interact simultaneously with one individual top-level design on and FPGA?
    2. How to change the values on the switches on the FPGA?
    3. How to look at the FPGA boards to monitor the output on the board?
  • Write possible hypothesis for each of the above research questions.
    1. Design a queueing system
    2. Design a user interface to mimic the switches to allow changing the value on the switches
    3. Place a camera and microphone to allow users to look at the led changes and listen to any buzzer sounds if there is.

Week 5

To get some background information on how others have implemented the virtual laboratory on FPGAs, I have searched for some articles on the internet.

For this week, I have reviewed 5 different papers related to virtual laboratory on FPGAs topic.

In one article titled FPGA Remote Laboratory: Experience in UPNA and UNIFESP, Aramburu Mayoz, C. et al. (2020) mentioned that the use of FPGAs in the classroom has several different problems, such as availability or associated costs of acquiring and maintaining the FPGAs. Also, relying on FPGA boards in the classroom is typically problematic because students cannot use the boards for doing projects after classes or during weekends. They suggested that remote laboratories can help allow more flexibility to students.

In another article titled A New Virtual Hardware Laboratory for Remote FPGA Experiments on Real Hardware, M. Reichenbach et al. stated that to realize input signals by the user, an additional IO board is connected to each FPGA board. The advantage of such a system is that a few boards can be shared between lots of students, because not all students need a board at every time. Furthermore, the boards are protected from incorrect handling.

In the third article titled Remote FPGA Lab with Interactive Control and Visualisation Interface, Fearghal Morgan et al. (2011) used a demonstrator for a Finite State Machine (FSM) application, and illustrates the use of web-based control and visualisation for enhanced learning of FSM behaviour. A Xilinx ISE project template is provided to enable the integration of user HDL-based designs to execute on the Remote FPGA.

In the forth article titled FPGA Remote Laboratory Using IoT Approaches, Alexander Magyari and Yuhua Chen (2021) used an entry-level FPGA and a Raspberry Pi Zero to provide IoT access for laboratory work. Their design is unique in that it gives multiple users the ability to interact simultaneously with one individual top-level design on an FPGA.

In the fifth article titled A Remote FPGA Laboratory for Digital Design Students, Joao Soares and Jorge Lobo developed a website database web control. They stated that some issues need some improvement, such as the latency time on changing a switch. They also intend to make their system a multi-user system in future, by configuring several DE2 boards (or other FPGA boards), revise access policies and implement a queue system.

From these articles, one common idea is that they all provided a platform to allow students to access their FPGAs. But one thing is that most of the articles did not manage to create a multi user system except one of the articles who used Raspberry-Pi. There’s one about Xilinx ISE which I wasn’t sure about so further research might be required.