
4 Tips for Self-Learning FPGA

FPGA is a highly integrated chip, and its learning process requires both programming skills and an understanding of hardware circuits and computer architecture. The knowledge and foundations involved are extensive, such as digital circuit fundamentals, EDA principles, Verilog/VHDL programming languages, FPGA algorithm design, FPGA simulation analysis, and PCB hardware design. If the learning content is not well organized, the learning process can be very long and tedious. So how can one self-learn FPGA? Here are some specific aspects to focus on:

1. Prepare a Suitable FPGA Development Board

Currently, there are many types of FPGA development boards on the market, including those from major foreign manufacturers like Xilinx and Altera, as well as domestic FPGA options. If the development board chosen is not suitable, the accompanying materials, examples, and technologies may not be appropriate for beginners, requiring one to gather and purchase additional resources, which greatly affects the self-learning progress and confidence. We recommend the Xilinx ECO development board (you can also follow the specific documents from Chengdu University of Technology’s student learning platform). This development board includes complete tutorials and teaching videos, reasonably arranging the learning of Verilog programming language, reading PCB schematics, digital circuit fundamentals, and computer basics, leading students to quickly get started with interesting examples and a step-by-step approach; its FPGA is the Xilinx ZYNQ 7000 series, which uses the latest PS+PL architecture, effectively combining CPU and FPGA to aid in learning the latest FPGA technologies.

2. Choose the Right Programming Language

The programming languages primarily used for FPGA programming are Verilog and VHDL, with the introduction of System C and System Verilog as well. For beginners, Verilog and VHDL are the foundations, and since Verilog’s syntax is quite similar to C language, it is easier to get started; we recommend learning Verilog first.

3. Practice Continuously

Any learning process requires a lot of practice to achieve proficiency, and FPGA programming is a process of parallel and hardware programming, which differs from ordinary software programming languages and can be challenging to master. Therefore, the self-learning process of FPGA must involve continuous practice.

4. Regularly Attend FPGA-Related Seminars

Currently, the IC industry is developing well, and major FPGA manufacturers and educational institutions periodically launch various FPGA-related seminars covering FPGA fundamentals, FPGA programming tools, applications, and programming techniques. These seminars can broaden the self-learner’s perspective and help understand industry trends; moreover, they provide a platform for FPGA self-learners to communicate with peers or industry leaders, aiding in resolving various questions encountered during the learning process.
Here are some recommended platforms for finding relevant seminars:
Xilinx Webinar Information: https://china.xilinx.com/about/webinar.html
Chengdu University of Technology Open Courses: Follow this public account and reply “Open Course”.

5. Participate in Competitions

With the government’s increasing emphasis on integrated circuit talent, many competitions have been launched in recent years, such as the National College Student Integrated Circuit Innovation and Entrepreneurship Competition and the National College Student Electronic Design Competition. For beginners, after establishing a certain foundation, participating in competitions can not only enhance students’ hands-on abilities but also unleash their creativity and imagination. Winning awards can also benefit further studies and employment.

In summary, the process of self-learning FPGA is full of challenges, but as long as you choose the right methods, development boards, and tutorials, combined with continuous effort in practice, self-learning FPGA is also feasible.