인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
Hardware

/

Semiconductor

Verilog FPGA Program 4 (MCU Porting, HIL-A35T)

We implement porting and using MCU Core IP within FPGA.

20 students are taking this course

Verilog HDL
FPGA

This course is prepared for Intermediate Learners.

What you will learn!

  • Porting MCU to FPGA and using it

  • Bootloader Structure

  • Configuring MCU memory in the FPGA

FPGA Design by someone with over 20 years of experience 📑

Verilog HDL is an FPGA programming language. It can be used to create not only FPGAs but also ASICs. There are many developers who are interested in Verilog or want to improve their skills in the field.

However, Verilog and FPGA are very special fields, so it is very difficult to find a lecture that explains them in detail. FPGA manufacturers provide documentation, but there are so many documents in English that it is difficult to know which document to look at.

I have been working as a developer in the industry for over 20 years and currently run a one-man business. I created this course because I wanted to share the knowledge I have accumulated so far with people who are working as developers or preparing to become developers.

The lecture consists of a total of 4 parts.

This lecture is the 4th lecture and is about MCU Porting. It is not a processor provided by Xilinx, but an 8-bit processor that can be used relatively lightly. The process of porting the processor into the FPGA is explained in detail. Through this, you will learn how to configure memory and implement a bootloader. I have used this solution for most of my FPGA projects so far. It is lighter than Microblaze and can be used freely in many areas such as memory configuration.

Becoming a capable developer is not an easy task. It requires a lot of effort. It is very good to have a friendly guide during that difficult process.

This course contains a lot of content. If you are not an experienced developer, it may be difficult to understand everything at once. You will be able to gradually make it your own by repeatedly coding, simulating, and checking the results on the board.

If you can fully understand and utilize the contents of this lecture, you can become a very good developer.

If there is anything you do not understand in the lecture, please post a question through the Infraon community or the cafe I run and I will answer it.

📢 Please make sure to check before taking the class!

  • This lecture is a text lecture in electronic document format . All source files explained in the lecture will be provided to those who take the lecture. The lecture will be produced as a video in the future.

  • The tool used in this lecture is vivado 2018.3.

  • The board used for the practical training of this lecture is HIL-A35T, which we developed for the lecture. You can purchase it from our company's smart store (Smart store link: https://smartstore.naver.com/ihil)

  • Lecture materials can be downloaded from 'Section 0 - Material Sharing Link - Attachments'.

FPGA Developer Growth Opportunity, MCU Porting 🔦

I have been working on FPGA-related work for about 20 years, and most of my projects have been done by porting MCUs into FPGAs. There are many advantages to porting MCUs into FPGAs. There is no need to use an external MCU separately, and you can proceed by dividing it into MCU parts and LOGIC parts.

I have used MCU porting on most FPGAs (Spartan, Artix, Kintex, Virtex). If you know the basic structure, you can apply it to most FPGAs. This lecture explains this process in detail. The lecture explains how to implement SOC (System On Chip) by porting MCU IP in FPGA . I hope that developers who program with FPGAs will upgrade their skills through this lecture.

Wait! ✋ What is the MCU?

This refers to a microcontroller unit. It is a device that has a processor, memory, and input/output devices all inside a single chip. Control and calculation tasks can be performed through programming. It is used in a wide range of fields, from automobiles to home appliances and toys. You have to go through a programming process to implement specific functions.

I recommend this to these people 🙋‍♀️

  • Anyone with experience designing FPGAs with Verilog

  • Anyone who has tried FW using C language

Learn things like this ✨

  • Understanding System Block and Bootloader

  • MCU Memory and LOGIC Implementation

  • Application FW implementation and application

  • Implementing Windows Program for FW Download

There is not much content. However, if you understand it one by one and make it your own, you will be able to apply it to most of the work using FPGA in the future. 💪

📢 The course consists of a total of 4 lectures. This lecture is the 4th lecture.

Lecture 1: Verilog FPGA Program 1

  • Implementing basic functions

Lecture 2: Verilog FPGA Program 2

  • Microblaze

Lecture 3: Verilog FPGA Program 3

  • DDR Controller

Lecture 4: Verilog FPGA Program 4

  • MCU Porting

Basics: Basics of FPGA Utilization Using Verilog

📢 The lectures vary depending on the practice board. Please be careful when purchasing the lectures.

  1. Arty A7-35T board


    • Verilog FPGA Program 1 (Arty A7-35T)

    • Verilog FPGA Program 2 (MicroBlaze1, Arty A7-35T)

    • Verilog FPGA Program 2 (MicroBlaze2, Arty A7-35T)

    • Verilog FPGA Program 3 (DDR Controller, Arty A7-35T)

    • Verilog FPGA Program 4 (MCU Porting, Arty A7-35T)

  2. Zynq mini 7020 board

    • Verilog FPGA Program 1 (Zynq mini 7020)

    • Verilog ZYNQ Program1 (Zynq mini 7020)

  3. HIL-A35T board (developed in-house for lectures)

    • Verilog FPGA Program 1 (HIL-A35T)

    • Verilog FPGA Program 2 (MicroBlaze, HIL-A35T)


    • Verilog FPGA Program 3 (DDR Controller, HIL-A35T)

    • Verilog FPGA Program 4 (MCU Porting, HIL-A35T)

Detailed Curriculum 🙋‍♀️

Section 1. HW Configuration

Section 2. System Block

  • Understand the overall system configuration.

Section 3. Memory Configuration

  • Understand memory configuration.

Section 4. Clock Configuration

  • Understand the clock structure.


Section 5. Bootloader

  • Understand bootloader.

  • This is very important.

Section 6. Implementing the Logic

  • Understand and implement the interface with the Processor.

Section 7. Application FW

  • Understand the Application FW development environment.

  • Understand the process of implementing and downloading an Application FW.

Section 8. Windows Application Program

  • Download fw and implement the User Interface.

Section 9-10. Download Bitstream, Check Results

  • Download the bitstream and check the results.

Section 11-12. Changing Uart Buadrate, Using I2C in Application fw

  • I understand changing the Uart Baudrate.

  • I understand the use of I2C in application fw.

Section 13. Implementing the W5500 Interface

  • Implements the w5500 Interface.

  • Through this, memory sharing between the processor and user logic, register map, etc. are implemented.

  • This is a very important skill that can be used in the field.

Recommended for
these people!

Who is this course right for?

  • Anyone who wants to improve their FPGA skills

  • For those who want to implement FPGA SOC

  • For those who want to port and use MCU on FPGA

Need to know before starting?

  • C language

  • Verilog language

  • FPGA Design

Hello
This is ihil

Students

1,443

Reviews

50

Rating

4.8

Courses

17

저는 지난 20여년 동안 대기업, 중소기업에서 개발자로 일해왔고

현재는 작은 기업의 대표로 있습니다.

주요 경력사항은

  • Verilog HDL을 이용한 FPGA 설계

    • CCTV용 ISP ASIC 개발 (약 10년)

    • OLED Display 검사장비 개발 (약 3년)

    • FPGA를 이용한 장비 개발

  • MCU FW

    • STM32

    • PIC32

    • AVR, ATMEGA

    • DSP (TI)

  • Windows Application Program

    • Visual Studio MFC, C++

입니다.

Curriculum

All

163 lectures

Lecture resources

are provided.

Published: 
Last updated: 

Reviews

Not enough reviews.
Become the author of a review that helps everyone!