课程培训
FPGA培训课程体系(选修)

FPGA培训课程体系(选修)

课程目录

  1. 专题一:FPGA基础入门与开发流程

  2. 专题二:Verilog硬件描述语言与数字逻辑设计

  3. 专题三:FPGA开发工具链(Vivado/Quartus/Modelsim)

  4. 专题四:常用接口与模块化设计

  5. 专题五:时序分析与设计优化

  6. 专题六:高速接口与SerDes技术

  7. 专题七:数字信号处理(DSP)FPGA实现

  8. 专题八:嵌入式软核处理器与SOPC系统

  9. 专题九:图像/视频处理FPGA加速

  10. 专题十:国产FPGA开发与应用

  11. 专题十一:高层次综合(HLS)与异构计算

  12. 专题十二:FPGA工程化与项目实战

 

专题一:FPGA基础入门与开发流程

  • 培训对象:零基础入门学员、数字电路初学者、嵌入式系统开发人员、高校学生。

  • 培训目标

    1. 理解FPGA的基本原理、内部架构与主流厂商产品特点,建立FPGA的整体认知。

    2. 掌握FPGA的开发流程(设计-综合-实现-下载)与开发环境搭建方法。

    3. 完成第一个FPGA工程(LED流水灯),体验从代码编写到板级验证的完整流程。

  • 培训内容介绍

    1. FPGA概述与发展:了解FPGA(现场可编程门阵列)的定义、发展历程及其在通信、图像处理、人工智能等领域的广泛应用,认识FPGA与CPU、GPU、ASIC的差异与互补关系

    2. FPGA内部架构:深入理解FPGA的核心组成(可配置逻辑块CLB、输入输出块IOB、块存储器BRAM、数字信号处理单元DSP、锁相环PLL、高速收发器等),掌握各模块的功能与作用

    3. 主流厂商与产品:对比Xilinx(AMD)、Intel(Altera)、Lattice、国产安路/复旦微等厂商的产品特点与选型依据,了解不同系列FPGA的应用场景

    4. FPGA最小系统:学习FPGA最小系统构成(电源电路、时钟电路、复位电路、配置电路、JTAG调试接口),掌握FPGA正常工作的必要条件

    5. 开发流程概览:掌握FPGA开发的完整流程(需求分析→设计输入→功能仿真→综合→布局布线→时序仿真→板级调试),理解各阶段的作用

    6. 开发环境安装:学习主流开发软件(Xilinx Vivado、Intel Quartus Prime)的获取、安装与许可配置,掌握工程创建与项目管理方法

    7. 第一个工程(LED流水灯):从零开始创建工程,编写简单的Verilog代码实现LED流水灯,学习管脚约束文件的编写与配置

    8. 综合与实现:理解综合(Synthesis)将HDL代码转换为网表、实现(Implementation)将网表映射到FPGA资源的过程,掌握相关设置

    9. 下载与调试:学习使用下载器(JTAG)将比特流文件烧录到FPGA,观察硬件运行效果,体验从代码到硬件的完整流程。

    10. 硬件开发平台:介绍主流FPGA开发板(如Xilinx EGO-XA7、Altera DE2-70、国产安路HX-4S20)的资源与使用方法

    11. 学习资源导航:介绍FPGA学习资料(官方文档、参考书籍、社区论坛)、获取方法及查阅技巧

    12. 职业发展路径:了解FPGA工程师的技术成长路径与能力要求,规划个人学习方向。

 

专题二:Verilog硬件描述语言与数字逻辑设计

  • 培训对象:有数字电路基础的开发人员、软件工程师转型FPGA开发者、需要掌握硬件描述语言的工程师。

  • 培训目标

    1. 掌握Verilog HDL的基本语法、数据类型、运算符与程序结构,能够编写规范的硬件描述代码。

    2. 理解硬件描述语言与软件编程语言的本质差异,建立硬件思维(并行、时序、可综合)。

    3. 掌握组合逻辑与时序逻辑的Verilog描述方法,能够独立编写常用数字电路模块。

  • 培训内容介绍

    1. Verilog语言概述:了解Verilog HDL的发展历史、语言特点与应用场景,对比VHDL与Verilog的差异,理解硬件描述语言的核心价值

    2. 程序基本结构:学习Verilog模块(module)的基本结构(端口定义、数据类型声明、逻辑功能描述),掌握模块化设计思想

    3. 数据类型:掌握线网型(wire)、寄存器型(reg)、参数(parameter)、存储器(memory)等数据类型的定义与使用场景

    4. 运算符与表达式:学习算术运算符、逻辑运算符、按位运算符、关系运算符、移位运算符、拼接运算符的使用方法及优先级

    5. 赋值语句:理解阻塞赋值(=)与非阻塞赋值(<=)的本质区别,掌握在不同场景下的正确选择,避免竞争冒险

    6. 结构化语句:学习initial语句(初始化)、always语句(行为描述)的使用,掌握敏感列表的编写规范

    7. 条件语句:掌握if-else、case、casez、casex等条件语句的用法,理解综合出的硬件电路结构

    8. 循环语句:学习for、while、repeat、forever等循环语句在可综合设计中的使用限制。

    9. 组合逻辑设计:使用always@(*)或assign语句描述组合逻辑电路,实现加法器、译码器、多路选择器等基础模块

    10. 时序逻辑设计:使用always@(posedge clk)描述时序逻辑电路,实现寄存器、计数器、分频器、移位寄存器等模块

    11. 状态机设计:掌握有限状态机(FSM)的设计方法(Moore型与Mealy型),学习三段式状态机的编写规范,实现复杂控制逻辑

    12. 可综合设计原则:理解可综合代码与不可综合代码的界限,掌握编写可综合Verilog代码的最佳实践

 

专题三:FPGA开发工具链(Vivado/Quartus/Modelsim)

  • 培训对象:FPGA初学者、需要系统掌握开发工具的工程师、跨平台开发者。

  • 培训目标

    1. 熟练掌握主流FPGA开发软件(Vivado/Quartus)的工程管理、代码编辑、约束设置、综合实现等核心功能。

    2. 掌握Modelsim/Vivado Simulator仿真工具的使用,能够编写测试平台(Testbench)进行功能仿真与调试。

    3. 掌握在线逻辑分析仪(ILA/SignalTap)的使用方法,进行板级调试与信号捕获。

  • 培训内容介绍

    1. Vivado开发环境:熟悉Vivado的界面布局(工程管理器、源文件窗口、约束窗口、综合/实现结果、仿真界面),掌握工程创建与管理方法

    2. Vivado设计流程:学习在Vivado中完成设计输入、RTL分析、综合、布局布线、时序分析、比特流生成的全流程操作

    3. Quartus开发环境:熟悉Intel Quartus Prime的界面布局与功能模块,掌握Altera FPGA的开发流程与设置方法。

    4. IP核集成:学习在Vivado/Quartus中调用IP核(时钟管理、FIFO、BRAM、DSP、PLL等),掌握IP核的参数配置与例化方法

    5. 约束文件编写:掌握XDC(Xilinx)或SDC(Synopsys)约束文件的编写方法,包括管脚约束(引脚分配、I/O电平)、时钟约束(周期、不确定性)等

    6. 仿真基础:理解仿真在FPGA开发中的重要性,学习编写测试平台(Testbench)生成激励信号,观察输出响应

    7. Modelsim仿真:掌握Modelsim的启动、编译、仿真、波形查看、断点调试等操作,学习脚本化仿真流程

    8. Vivado Simulator:学习使用Vivado内置仿真器,掌握波形配置、光标测量、调试技巧

    9. 在线逻辑分析仪:学习在Vivado中集成ILA(集成逻辑分析仪),设置触发条件与捕获深度,实时观察内部信号状态

    10. SignalTap使用:掌握Quartus中SignalTap II逻辑分析仪的配置与使用方法。

    11. 时序报告分析:学习阅读综合/实现后的时序报告,理解建立时间、保持时间、时钟抖动等概念,分析时序违例原因

    12. 版本管理:了解Git等版本控制工具在FPGA项目中的应用,管理代码与IP核的版本演进。

 

专题四:常用接口与模块化设计

  • 培训对象:有一定基础的FPGA开发者、需要实现外设接口控制的嵌入式工程师。

  • 培训目标

    1. 掌握FPGA与常用外设(LED、按键、数码管、蜂鸣器)的接口设计与控制方法。

    2. 掌握UART、I2C、SPI等常用通信协议的FPGA实现,能够独立编写收发模块。

    3. 理解模块化设计思想,能够将复杂系统拆分为可复用的功能模块。

  • 培训内容介绍

    1. LED与流水灯:学习LED驱动电路原理,编写流水灯、呼吸灯等控制程序,掌握PWM信号生成方法

    2. 按键输入与消抖:学习机械按键的抖动原理,编写按键消抖模块,实现单次触发、长按检测等功能

    3. 数码管显示:学习七段数码管的驱动原理,编写静态显示与动态扫描显示模块,实现多位数字显示

    4. 蜂鸣器控制:学习蜂鸣器驱动原理,编写不同频率的音调发生器,实现音乐播放功能

    5. UART串口通信:深入理解UART协议(起始位、数据位、校验位、停止位),编写UART发送与接收模块,实现FPGA与PC的串口通信

    6. I2C总线协议:学习I2C总线协议(起始条件、从机地址、数据读写、停止条件),编写I2C主控制器,连接EEPROM或传感器

    7. SPI总线协议:理解SPI的四种工作模式(CPOL/CPHA),编写SPI主/从控制器,连接ADC/DAC或显示屏

    8. 矩阵键盘扫描:学习矩阵键盘的工作原理,编写行列扫描与键值识别模块,扩展输入接口

    9. VGA显示控制:学习VGA显示时序(行同步、场同步、像素时钟),编写VGA控制器,显示静态图像或动态图形

    10. LCD显示驱动:学习字符型或图形点阵LCD的驱动方法,编写显示模块

    11. DAC/ADC接口:学习模数/数模转换器的接口时序,使用FPGA控制ADC采样和DAC输出

    12. 模块封装与复用:学习将常用功能封装为可复用的模块,建立个人IP库,提高开发效率

 

专题五:时序分析与设计优化

  • 培训对象:有一定设计经验的FPGA工程师、需要提升设计性能与稳定性的开发者。

  • 培训目标

    1. 深入理解时序分析的基本概念(建立时间、保持时间、时钟抖动、时钟偏斜),掌握时序路径的分析方法。

    2. 掌握时序约束的设置方法,能够通过约束优化设计性能。

    3. 学习跨时钟域处理、代码优化、面积优化等进阶技巧,提升设计质量。

  • 培训内容介绍

    1. 时序基础概念:深入理解建立时间(setup time)、保持时间(hold time)、时钟到输出延时(clock-to-output)、时钟抖动(jitter)、时钟偏斜(skew)等基本概念

    2. 时序路径分析:学习四种基本时序路径(输入到寄存器、寄存器到寄存器、寄存器到输出、输入到输出)的分析方法

    3. 时序约束编写:掌握create_clock、set_input_delay、set_output_delay等常用约束命令,为设计添加准确的时序约束

    4. 时序报告解读:学习阅读时序报告(setup summary、hold summary),识别时序违例路径,分析违例原因

    5. 速度优化技巧:掌握流水线设计、寄存器平衡、关键路径优化等速度优化方法,提升系统最高工作频率

    6. 面积优化技巧:学习资源共享、状态机优化、逻辑复用等面积优化方法,减少资源占用

    7. 跨时钟域处理:理解跨时钟域数据传输的亚稳态风险,掌握同步器(两级寄存器)、异步FIFO、握手协议等处理方法

    8. 时钟域划分:学习多时钟域系统的设计方法,合理划分时钟域,减少跨时钟域交互。

    9. 复位策略:学习同步复位与异步复位的优缺点,掌握异步复位同步释放的实现方法。

    10. 低功耗设计:了解FPGA功耗构成(动态功耗、静态功耗),学习时钟门控、操作数隔离、降低电压等低功耗设计技巧

    11. 可测试性设计:学习在设计中加入测试点、扫描链等方法,提高设计的可测试性。

    12. 设计规则检查:掌握DRC(设计规则检查)的常见错误类型与解决方法。

 

专题六:高速接口与SerDes技术

  • 培训对象:需要开发高速接口的FPGA工程师、通信系统开发人员、数据中心硬件工程师。

  • 培训目标

    1. 理解高速串行接口(SerDes)的基本原理与FPGA内部结构,掌握GT收发器的资源特性。

    2. 掌握PCIe、DDR、以太网等高速接口的FPGA实现方法,能够完成IP核配置与调试。

    3. 学习高速接口的板级设计要点与信号完整性分析方法

  • 培训内容介绍

    1. 高速接口概述:了解并行接口向高速串行接口演进的历史,认识SerDes(串行器/解串器)在PCIe、SATA、万兆网中的应用

    2. GT收发器原理:深入理解FPGA内部GT收发器的结构(PMA层+PCS层),掌握8B/10B编码、加扰、时钟恢复、预加重等关键技术

    3. GT收发器配置:学习在Vivado中调用GT IP核,配置线速率、参考时钟、编码方式、环回模式等参数

    4. 眼图测试:使用GT收发器的眼图扫描功能,分析信号质量,优化预加重与均衡设置

    5. DDR控制器设计:学习DDR存储器的工作原理与接口时序,掌握MIG(Xilinx)或UniPHY(Intel)IP核的配置与使用方法

    6. PCIe基础:了解PCIe体系结构(物理层、数据链路层、事务层),掌握PCIe拓扑结构与配置空间

    7. PCIe IP核集成:学习PCIe硬核/IP核的配置方法,实现基于PCIe的DMA数据传输框架

    8. XDMA应用:掌握XDMA(PCIe DMA)IP核的使用,实现FPGA与主机的高速数据传输

    9. 千兆以太网:学习RGMII接口时序,实现ARP、ICMP、UDP等网络协议的FPGA硬件加速

    10. 万兆以太网:了解万兆以太网的协议栈,结合GT收发器实现万兆网络数据传输

    11. AXI4总线:深入学习AXI4、AXI4-Lite、AXI4-Stream协议规范,掌握AXI总线互联与自定义IP开发

    12. 信号完整性基础:了解高速信号传输中的反射、串扰、损耗等问题,掌握PCB设计中的信号完整性优化技巧

 

专题七:数字信号处理(DSP)FPGA实现

  • 培训对象:信号处理工程师、通信算法开发人员、雷达/声纳系统工程师。

  • 培训目标

    1. 理解数字信号处理的基本算法(FIR、IIR、FFT)及其FPGA实现方法。

    2. 掌握FPGA中DSP资源(DSP48)的架构与使用方法,实现高效信号处理。

    3. 学习FPGA在通信系统中的应用,能够完成数字上变频/下变频、调制解调等设计。

  • 培训内容介绍

    1. DSP基础概念:回顾数字信号处理的基本概念(采样定理、量化误差、Z变换),理解FPGA实现DSP的优势(并行性、流水线、低延迟)

    2. FPGA DSP资源:深入学习Xilinx DSP48E1/E2的结构(预加器、乘法器、累加器、模式控制器),掌握级联与并行使用方法

    3. FIR滤波器设计:学习FIR滤波器的基本原理与结构(直接型、转置型、对称型),使用IP核或手工编码实现FIR滤波器

    4. FIR滤波器优化:掌握多相分解、半带滤波器、分布式算法等优化技术,提高滤波器效率。

    5. IIR滤波器设计:了解IIR滤波器的特点与稳定性问题,学习IIR滤波器的FPGA实现方法

    6. FFT算法:深入理解FFT算法的基本原理(Cooley-Tukey算法、按时间抽取、按频率抽取),掌握蝶形运算单元的设计

    7. FFT IP核使用:学习FFT IP核的配置(点数、数据格式、流水线结构),掌握FFT的调用与数据流控制。

    8. 数字变频:学习数字下变频(DDC)与数字上变频(DUC)的原理,实现NCO、混频器、抽取/内插滤波器

    9. CORDIC算法:掌握CORDIC算法的原理与实现,用于三角函数、极坐标转换等计算。

    10. 雷达信号处理:学习脉冲压缩、动目标显示(MTI)、动目标检测(MTD)等雷达算法的FPGA实现

    11. 自适应滤波:了解LMS、RLS等自适应滤波算法,学习其在FPGA中的实现方法。

    12. FPGA与MATLAB协同:学习使用MATLAB生成测试向量、分析FPGA处理结果的方法,加速算法开发与验证

 

专题八:嵌入式软核处理器与SOPC系统

  • 培训对象:嵌入式系统工程师、SOPC开发者、软硬件协同设计人员。

  • 培训目标

    1. 理解SOPC(可编程片上系统)的概念与架构,掌握FPGA中嵌入处理器的方法。

    2. 学习MicroBlaze(Xilinx)或Nios II(Intel)软核处理器的配置、编程与调试。

    3. 掌握软硬件协同设计方法,能够将自定义硬件加速器集成到处理器系统中。

  • 培训内容介绍

    1. SOPC概述:了解SOPC技术的发展与应用,认识FPGA中嵌入处理器的价值

    2. MicroBlaze架构:深入学习Xilinx MicroBlaze软核处理器的架构(流水线、存储器接口、总线接口、外设)

    3. Vivado中搭建系统:学习在Vivado中使用Block Design搭建MicroBlaze系统,添加处理器、存储器控制器、外设IP

    4. Nios II系统:学习Intel Quartus中Qsys工具的使用,搭建Nios II软核处理器系统。

    5. 外设IP集成:学习添加GPIO、UART、Timer、中断控制器等外设IP,配置地址空间与中断优先级。

    6. 软件开发环境:学习使用Vitis(Xilinx)或Nios II SBT(Intel)进行嵌入式软件开发,编写C/C++程序控制外设

    7. 启动与引导:理解软核处理器的启动过程,学习将程序固化到Flash的方法。

    8. 硬件加速器设计:学习将自定义硬件模块通过AXI总线连接到处理器系统,实现软件调用硬件加速

    9. DMA传输:学习在处理器系统中使用DMA(直接内存访问)实现高速数据传输,减轻CPU负担。

    10. 中断系统:掌握中断控制器的配置与使用,编写中断服务程序处理实时事件。

    11. 软硬件协同调试:学习使用调试器进行软硬件协同调试,同时监控处理器程序与硬件状态。

    12. SOPC综合案例:完成一个完整的SOPC项目(如基于软核处理器的数据采集系统),体验软硬件协同开发全流程。

 

专题九:图像/视频处理FPGA加速

  • 培训对象:图像处理工程师、计算机视觉开发者、视频编解码硬件工程师。

  • 培训目标

    1. 掌握图像/视频处理的基本概念与FPGA实现优势,理解视频时序与接口标准。

    2. 学习摄像头图像采集、缓存、显示的全链路设计与实现方法。

    3. 掌握经典图像处理算法(灰度、滤波、边缘检测、直方图)的FPGA加速实现。

  • 培训内容介绍

    1. 图像处理基础:回顾数字图像的基本概念(像素、分辨率、颜色空间),理解FPGA在图像处理中的并行加速优势

    2. 摄像头接口:学习OV5640等摄像头传感器的配置(I2C接口),掌握DVP接口时序与数据采集模块设计

    3. 图像采集模块:编写摄像头数据采集模块,完成像素时钟域转换、行场同步信号解析

    4. 图像缓存设计:学习使用BRAM或DDR3/DDR4作为图像帧缓存,设计写缓存与读缓存模块

    5. 帧缓存控制器:实现三帧缓存轮转机制,解决摄像头采集与显示处理的速率匹配问题

    6. VDMA应用:学习VDMA(视频直接内存访问)IP核的配置与使用,实现视频数据的高效传输

    7. 显示驱动:学习HDMI或VGA显示时序,编写显示控制器,将处理后的图像显示到屏幕

    8. 灰度与二值化:实现RGB到灰度的转换算法,设计自适应阈值二值化模块

    9. 直方图统计:实现图像直方图的实时统计,用于对比度分析与自动曝光控制

    10. 图像滤波:实现3×3窗口生成模块,设计均值滤波、中值滤波、高斯滤波等算法

    11. 边缘检测:实现Sobel、Canny等边缘检测算法的硬件加速

    12. 视频图像处理系统:综合应用所学知识,完成一个完整的实时视频处理系统(摄像头输入→图像处理→HDMI显示)

 

专题十:国产FPGA开发与应用

  • 培训对象:国产化替代项目工程师、高校师生、信创产业相关技术人员。

  • 培训目标

    1. 了解国产FPGA产业的发展现状与主流厂商(安路、复旦微、紫光同创、高云)的产品特点。

    2. 掌握国产FPGA开发工具链的使用方法,能够完成从设计到下载的全流程。

    3. 学习将基于Xilinx/Altera的设计迁移到国产FPGA平台的方法与注意事项

  • 培训内容介绍

    1. 国产FPGA产业概况:了解国产FPGA的发展历程、政策背景与产业现状,认识国产化替代的战略意义

    2. 主流厂商与产品:介绍安路科技(EG4、PH1系列)、复旦微电子(JFM7系列)、紫光同创(Logos、Titan系列)、高云半导体(GW系列)等厂商的主流产品与性能特点

    3. 安路FPGA开发工具:学习安路科技TangDynasty开发软件的安装与使用,掌握工程创建、代码编辑、综合实现、下载调试等操作

    4. 安路FPGA实验平台:熟悉康芯HX-4S20等国产FPGA开发板的资源与外设,掌握硬件平台的使用方法

    5. 基础实验:在国产FPGA平台上完成流水灯、呼吸灯、数码管显示等基础实验,熟悉开发流程

    6. 接口实验:实现UART串口通信、I2C/SPI总线控制、VGA显示等接口实验

    7. IP核使用:学习国产FPGA平台上的IP核调用方法(PLL、BRAM、DSP等),对比与Xilinx IP的差异

    8. 设计迁移方法:掌握将Xilinx/Altera设计迁移到国产FPGA平台的方法与注意事项(代码移植、约束文件转换、IP核替换)。

    9. 复旦微FPGA:了解复旦微JFM7系列FPGA的特点,学习其开发工具与设计流程。

    10. 紫光同创FPGA:学习紫光同创PDS开发软件的使用,掌握Logos/Titan系列的设计方法。

    11. 国产FPGA生态:了解国产FPGA的生态建设(文档、例程、社区、技术支持),获取学习资源。

    12. 国产化替代案例:分析典型国产化替代项目案例(通信设备、工业控制、安防监控),学习项目实施经验

 

专题十一:高层次综合(HLS)与异构计算

  • 培训对象:软件算法工程师转型硬件加速开发者、AI算法工程师、需要快速实现算法硬化的设计人员。

  • 培训目标

    1. 理解高层次综合(HLS)的基本原理与开发流程,掌握使用C/C++开发FPGA的方法。

    2. 学习HLS代码优化技巧(流水线、循环展开、数组分割),实现高性能硬件设计。

    3. 了解OpenCL等异构计算框架,掌握FPGA与CPU/GPU协同计算的设计方法

  • 培训内容介绍

    1. HLS概述:了解高层次综合技术的产生背景与价值(提升开发效率、降低硬件设计门槛),认识Vivado HLS/Vitis HLS工具的功能

    2. HLS开发流程:学习使用C/C++编写功能函数,通过HLS工具综合为RTL代码,进行C仿真与RTL协同仿真

    3. 接口综合:理解HLS中函数参数如何综合为硬件接口(block-level接口、port-level接口),掌握AXI4接口的生成方法。

    4. 数据类型:学习HLS中的任意精度数据类型(ap_int/ap_uint),优化资源占用与性能

    5. 流水线优化:掌握pipeline指令的使用方法,实现循环流水线与函数流水线,提高吞吐量

    6. 循环优化:学习循环展开(unroll)、循环合并、循环扁平化等优化技术,提升并行度

    7. 数组优化:掌握数组分割(array partition)、数组映射、数组重塑等方法,解决存储器访问瓶颈

    8. 数据流优化:学习数据流(dataflow)指令的使用,实现函数级流水并行

    9. OpenCL异构计算:了解OpenCL编程模型(平台模型、执行模型、内存模型),学习使用OpenCL编写FPGA加速程序

    10. FPGA内核优化:掌握OpenCL内核的优化技巧(向量化、计算单元复制、循环流水线)

    11. 主机端编程:学习编写主机端代码(C++/Python),实现数据缓冲区管理、内核调用、同步控制。

    12. HLS实战案例:通过典型算法(图像处理、卷积计算、排序算法)的HLS实现,掌握从C代码到高性能硬件设计的完整流程

 

专题十二:FPGA工程化与项目实战

  • 培训对象:有项目开发经验的工程师、需要独立完成FPGA项目的开发者、团队技术负责人。

  • 培训目标

    1. 掌握FPGA工程化开发规范(代码风格、版本管理、文档编写),提升团队协作效率。

    2. 学习FPGA系统级调试与问题定位方法,解决工程中的疑难问题。

    3. 通过完整项目实战,从需求分析、架构设计、模块开发到系统联调,体验真实项目开发流程。

  • 培训内容介绍

    1. 编码规范:学习FPGA代码的命名规范、注释规范、格式规范,掌握可读性高、可维护性强的代码编写方法。

    2. 版本管理:学习使用Git进行FPGA项目版本管理,掌握分支策略、标签管理、冲突解决方法。

    3. 文档编写:掌握项目文档的编写规范(需求文档、设计文档、测试文档、用户手册),建立完整的文档体系。

    4. 模块化设计:学习将系统功能分解为可复用模块的方法,定义清晰的模块接口,提高代码复用率。

    5. 仿真验证策略:制定模块级仿真、集成仿真、系统级仿真的验证计划,编写完善的测试用例。

    6. 覆盖率分析:学习代码覆盖率、功能覆盖率的分析方法,确保验证的完整性。

    7. 硬件调试技巧:掌握使用逻辑分析仪、示波器、万用表等仪器进行硬件调试的方法,解决硬件问题。

    8. 系统集成调试:学习多模块集成时的调试方法,解决接口不匹配、时序冲突等问题。

    9. 性能评估:学习对FPGA设计进行资源占用、工作频率、功耗等性能指标的评估方法。

    10. 问题定位与解决:通过典型疑难问题案例,学习问题定位的思路与方法(二分法、对比法、隔离法)。

    11. 项目案例一:以太网数据包处理器:实现千兆以太网数据包的接收、解析、转发功能,包含MAC层、IP层、UDP层处理

    12. 项目案例二:实时视频处理系统:实现摄像头采集、图像处理(滤波/边缘检测)、HDMI显示的全流程系统





如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表点击在线申请

服务特点:
海量专家资源,精准匹配相关行业,相关项目专家,针对实际需求,顾问式咨询,互动式授课,案例教学,小班授课,实际项目演示,快捷高效,省时省力省钱。

专家力量:
中国科学院软件研究所,计算研究所高级研究人员
oracle,微软,vmware,MSC,Ansys,candence,Altium,达索等大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关技术专业,理论素养丰富
多年实际项目经历,大型项目实战案例,热情,乐于技术分享
针对客户实际需求,案例教学,互动式沟通,学有所获
报名表下载
联系我们 更多>>

咨询电话010-62883247

                4007991916

咨询邮箱:soft@info-soft.cn  

 

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>