|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/fpga-project-cnn-accelerator-for-digit-recognition/
课程评论:没有评论
课程名称: FPGA项目:数字识别的CNN加速器 课程概述:您想了解如何在FPGA上进行人工智能加速吗?本项目导向的在线课程提供了设计AI加速器的实用见解,特别是用于手写数字分类的卷积神经网络(CNN)算法。本课程的重点是系统设计层面,讲解如何将用Verilog RTL编写的CNN模块与运行Linux的应用处理器集成。本项目的最终成果是一个Web应用程序,该应用程序可以接收手写数字并将数据发送到FPGA上的CNN加速器进行处理。与CPU相比,使用此加速器可以平均实现12倍的速度提升。注意:本课程不适合FPGA开发的绝对初学者。报名前需具备使用Zynq和PYNQ框架的FPGA设计基础知识,课程中不会覆盖这些基础内容。此外,还需熟悉Verilog和Python。课程中使用Vivado 2022.1和Xilinx Kria KV260开发板,但这些概念不限于这些工具或平台,您可以使用其他版本的Vivado或不同的FPGA板进行学习。 什么是CNN?卷积神经网络(CNN)是一种深度学习模型,特别适合处理具有网格状结构的数据,如图像。它通过自动学习特征的空间层次结构,利用执行卷积运算的层来提取输入数据的特征,例如边缘、纹理和形状。这些层通常后跟池化层,以减少空间维度,从而提高计算效率并防止过拟合。最终的层通常是全连接层,根据学习到的特征进行分类或回归。由于其有效捕捉空间模式的能力,CNN广泛用于计算机视觉任务,如图像识别、目标检测和面部识别。 什么是CNN加速器?CNN需要在FPGA上加速,因为它们涉及大量计算,尤其是在卷积操作期间,这在通用处理器上可能较慢且耗能。FPGA提供并行处理、可定制架构和较低延迟,使其非常适合加速CNN任务,同时保持能效。这对于诸如自动驾驶或边缘设备等对性能和功率限制要求严格的实时应用尤为重要。 为何使用Zynq FPGA?Xilinx开发的Zynq FPGA非常适合CNN加速,因为它结合了可编程逻辑(FPGA设计)和集成的ARM处理器,在单个芯片上实现。该混合架构允许在FPGA设计中高效并行处理CNN层,同时在ARM核心上处理控制和前/后处理任务。凭借其灵活性、低延迟和能效,Zynq使定制CNN加速器的高效实现成为可能,非常适合机器人、自动驾驶车辆和智能相机等嵌入式和实时应用。 立即开始学习-现在就报名!所有源代码都可以在本课程中获取。完成课程后,您将获得完成证书。如果您对课程不满意,Udemy提供30天退款保证,让您无风险学习。期待您加入课程!
Do you want to learn AI acceleration on FPGA?This project-based online course offers practical insights into designing AI accelerators, specifically a CNN algorithm for handwritten digit classification. The focus of the course is on the system design level on how to integrate a CNN module (written in Verilog RTL) with the application processor running Linux. The final result of this project is a web application for taking a handwritten digit and then sending this data to be processed with the CNN accelerator on the FPGA. On average, a speedup factor of 12x is achieved by using this accelerator compared to the CPU.Note:This course is not intended for absolute beginners in FPGA development. A basic understanding of FPGA design using Zynq and the PYNQ framework is expected before enrolling, as these fundamentals will not be covered. Familiarity with Verilog and Python is also required.Vivado 2022.1 and the Xilinx Kria KV260 board are used in this course, but the concepts are not limited to these tools or platforms. You can follow along using other versions of Vivado or different FPGA boards as well.What is CNN?A Convolutional Neural Network (CNN) is a type of deep learning model particularly well-suited for processing data with a grid-like structure, such as images. It works by automatically learning spatial hierarchies of features through layers that perform convolutions-mathematical operations that extract features like edges, textures, and shapes from the input data. These layers are typically followed by pooling layers, which reduce the spatial dimensions to make computation more efficient and prevent overfitting. The final layers are usually fully connected and perform classification or regression based on the learned features. CNNs are widely used in computer vision tasks like image recognition, object detection, and facial recognition due to their ability to capture spatial patterns effectively.What is CNN accelerator?CNNs require acceleration on FPGAs because they involve intensive computations, especially during convolution operations, which can be slow and power-hungry on general-purpose processors. FPGAs offer parallel processing, customizable architecture, and lower latency, making them ideal for speeding up CNN tasks while maintaining energy efficiency. This is particularly valuable for real-time applications like autonomous driving or edge devices where performance and power constraints are critical.Why use Zynq FPGA?The Zynq FPGA, developed by Xilinx, is well-suited for CNN acceleration due to its combination of programmable logic (FPGA fabric) and integrated ARM processors on a single chip. This hybrid architecture allows for high-performance parallel processing of CNN layers in the FPGA fabric while handling control and pre/post-processing tasks on the ARM cores. With its flexibility, low latency, and energy efficiency, Zynq enables efficient implementation of custom CNN accelerators, making it ideal for embedded and real-time applications like robotics, autonomous vehicles, and smart cameras.Start learning today-enroll now!All the source code is available within this course. After finishing the course, you will receive a certified certificate of completion. A complete Udemy 30-day money-back guarantee if you are not satisfied with this course, allowing you to study with no risk. See you within the course!