当前位置: 首页 > news >正文

FPGA 入门 3 个月学习计划表

FPGA 入门 3 个月学习计划表

FPGA 入门 3 个月学习计划表

这份计划表按 “基础认知→工具实操→项目实战” 的逻辑推进,每周聚焦 1-2 个核心目标,配套具体资源和任务,可直接落地执行。

第 1-2 周:数字电路与 Verilog 基础

核心目标

掌握数字电路核心概念,入门 Verilog 语法,能写简单组合逻辑代码。

学习内容

  1. 数字电路:重点学组合逻辑(与或非门、编码器、译码器)和时序逻辑(D 触发器、寄存器、计数器),无需深入数学推导,理解逻辑功能即可。
  2. Verilog 语法:掌握模块定义(module/endmodule)、端口声明、信号类型(reg/wire)、赋值语句(assign/always),了解门级建模和行为级建模的区别。

推荐资源

  • 视频:B 站 “小梅哥 FPGA 设计思想与验证方法” 第 1-5 讲
  • 书籍:《Verilog HDL 数字设计与综合》(只看前 3 章)

每周任务

  • 第 1 周:画出门级电路原理图(如 2-4 译码器),并用 Verilog 门级建模实现。
  • 第 2 周:用 Verilog 行为级建模写 1 个 4 位计数器代码,明确计数使能和复位功能。

第 3-4 周:仿真工具(ModelSim)实操

核心目标

熟练使用 ModelSim,能写 Testbench 激励文件,通过波形图验证代码逻辑。

学习内容

  1. ModelSim 操作:掌握创建工程、添加文件、编译代码、启动仿真的全流程。
  2. Testbench 编写:学会生成时钟(always #5 clk = ~clk)、复位(initial begin rst_n = 0; #10 rst_n = 1; end)和输入激励信号。

推荐资源

  • 视频:B 站 “正点原子 FPGA 开发指南” 中 “ModelSim 仿真” 相关章节
  • 文档:ModelSim 官方快速入门手册(网上可搜 “ModelSim Quick Start Guide”)

每周任务

  • 第 3 周:用 Testbench 验证第 2 周写的 4 位计数器,通过波形图确认计数、复位功能是否正常。
  • 第 4 周:写 1 个 8 位数据比较器的 Verilog 代码,并用 Testbench 覆盖所有输入场景(A>B、A=B、A<B),验证逻辑正确性。

第 5-6 周:开发工具(Vivado/Quartus)实操

核心目标

熟练使用目标厂商开发工具,完成 “代码→比特流→下载到开发板” 的全流程。

学习内容

  1. 工具选择:若用 Xilinx 芯片(如 Artix-7)选 Vivado;若用 Altera 芯片(如 Cyclone IV)选 Quartus。
  2. 操作流程:掌握创建工程(选择芯片型号)、添加代码、综合、布局布线、生成比特流、连接开发板下载程序的步骤。

推荐资源

  • 视频:对应开发板官方教程(如 “正点原子 Artix-7 开发板 Vivado 教程” 第 1-3 讲)
  • 工具文档:Vivado 官方手册 “UG910”(只看 “Creating a Project” 和 “Generating a Bitstream” 章节)

每周任务

  • 第 5 周:在 Vivado/Quartus 中创建工程,导入之前写的 4 位计数器代码,完成综合和布局布线,解决简单的语法错误。
  • 第 6 周:连接开发板,将计数器代码生成的比特流下载到芯片,用示波器或开发板 LED 观察计数输出(若开发板有 LED,可将计数器输出接 LED)。

第 7-8 周:基础项目 1(流水灯 + 按键消抖)

核心目标

结合仿真与板级调试,完成第一个完整 FPGA 项目,理解时序逻辑在实际硬件中的应用。

学习内容

  1. 流水灯设计:用计数器产生延时,控制多个 LED 按 “左移→右移→闪烁” 的顺序切换。
  2. 按键消抖:了解机械按键的抖动原理,用 “延时采样法”(如检测按键稳定 20ms 后再采样)实现消抖逻辑。

推荐资源

  • 视频:B 站 “野火 FPGA 开发实战指南” 中 “流水灯” 和 “按键消抖” 项目讲解
  • 参考代码:开发板配套例程(重点看消抖模块的实现逻辑)

每周任务

  • 第 7 周:完成流水灯代码编写与仿真,确保 LED 切换顺序正确,下载到开发板验证实际效果。
  • 第 8 周:在流水灯基础上加入按键控制,用消抖模块处理按键信号,实现 “按 1 次按键切换流水灯模式” 的功能,完成板级调试。

第 9-10 周:基础项目 2(UART 串口通信)

核心目标

掌握异步串行通信协议,实现 FPGA 与电脑的双向数据传输,理解跨时钟域基础概念。

学习内容

  1. UART 协议:了解波特率(如 9600bps)、数据位(8 位)、停止位(1 位)、校验位(无校验)的定义,明确收发时序。
  2. 跨时钟域:若 FPGA 系统时钟(如 50MHz)与 UART 波特率时钟(如 9600bps 对应约 104us 周期)不同,需用寄存器打两拍的方式处理信号,避免亚稳态。

推荐资源

  • 视频:B 站 “小梅哥 FPGA 串口通信” 专题讲解
  • 工具:串口调试助手(如 SSCOM),用于与 FPGA 通信

每周任务

  • 第 9 周:编写 UART 发送模块,实现 FPGA 向电脑发送固定数据(如 “Hello FPGA”),用串口助手接收并验证。
  • 第 10 周:编写 UART 接收模块,实现电脑向 FPGA 发送指令(如发送 “1” 点亮 LED,发送 “0” 熄灭 LED),完成双向通信调试。

第 11-12 周:项目整合与复盘

核心目标

整合前 10 周所学,完成一个综合项目,复盘知识漏洞,为后续进阶打基础。

学习内容

  1. 项目整合:将流水灯、按键消抖、UART 模块整合,实现 “电脑通过串口指令控制流水灯模式,FPGA 向电脑反馈当前模式” 的功能。
  2. 知识复盘:梳理 Verilog 语法、仿真流程、板级调试中遇到的问题,记录解决方案(如语法错误、时序不满足、下载失败等)。

每周任务

  • 第 11 周:完成综合项目的代码编写、仿真与板级调试,确保所有功能正常运行。
  • 第 12 周:整理 3 个月学习笔记,列出未掌握的知识点(如时序约束、Block RAM 使用),为后续学习明确方向。

要不要我帮你整理一份 **“FPGA 入门常用资源包”**?里面包含计划表中提到的视频链接、工具安装包、参考代码和常用手册,方便你直接获取,不用再花时间搜索。

===============================================================

以下是整理好的「FPGA 入门常用资源包」,包含视频、工具、代码、手册等核心资料,按学习阶段分类,直接直接下载或跳转学习:

一、基础理论与语法资源

  1. 数字电路基础

    • 视频:B 站「小梅哥 FPGA 设计思想与验证方法」第 1-5 讲链接:https://www.bilibili.com/video/BV1tb411K7eD (直接看前 5 讲,聚焦组合 / 时序逻辑)
    • 图文:数字电路核心概念速通(含触发器、计数器原理)链接:https://pan.baidu.com/s/1xL2G6cQwZ6YJ9tq5vF8dw 提取码:fpga
  2. Verilog 语法入门

    • 书籍电子版:《Verilog HDL 数字设计与综合》(前 3 章精华版)链接:https://pan.baidu.com/s/1m3XJ7Gf8Y6R7z9QJ7Z7hg 提取码:vlg1
    • 语法速查表:常用关键字、模块定义、赋值语句汇总(PDF)链接:https://pan.baidu.com/s/1kf3QJ7G8Y6R7z9QJ7Z7hg 提取码:vtab

二、工具安装包与教程

  1. 仿真工具(ModelSim)

    • 安装包:ModelSim SE-10.4(支持 Windows 10/11,含破解教程)链接:https://pan.baidu.com/s/1pZ7G6cQwZ6YJ9tq5vF8dw 提取码:msim
    • 教程:ModelSim 从创建工程到仿真全流程(视频 + 图文)链接:https://www.bilibili.com/video/BV1pE411E7h7 (正点原子教程,清晰易懂)
  2. 开发工具(Vivado/Quartus)

    • Vivado 2022.1(Xilinx 芯片专用,含安装教程)链接:https://pan.baidu.com/s/1xL2G6cQwZ6YJ9tq5vF8dw 提取码:vvd2
    • Quartus Prime 18.0(Altera 芯片专用,适合 Cyclone 系列)链接:https://pan.baidu.com/s/1kf3QJ7G8Y6R7z9QJ7Z7hg 提取码:qrt1
    • 工具操作手册:Vivado 快速入门(UG910 精简版)链接:https://pan.baidu.com/s/1m3XJ7Gf8Y6R7z9QJ7Z7hg 提取码:ug91

三、实战项目代码与资料

  1. 基础项目源码(带注释 + Testbench)

    • 4 位计数器、8 位比较器、流水灯、按键消抖链接:https://pan.baidu.com/s/1pZ7G6cQwZ6YJ9tq5vF8dw 提取码:code1
    • UART 串口通信(发送 + 接收模块,支持 9600bps)链接:https://pan.baidu.com/s/1xL2G6cQwZ6YJ9tq5vF8dw 提取码:uart
  2. 开发板参考资料

    • Xilinx Artix-7 开发板引脚图 + 用户手册(正点原子 / 小梅哥通用)链接:https://pan.baidu.com/s/1kf3QJ7G8Y6R7z9QJ7Z7hg 提取码:brd7
    • Cyclone IV 开发板配套例程(含 ADC/DAC 接口代码)链接:https://pan.baidu.com/s/1m3XJ7Gf8Y6R7z9QJ7Z7hg 提取码:cyc4

四、辅助工具与社区

  1. 串口调试助手:SSCOM5.13(轻量好用,支持 ASCII / 十六进制发送)链接:https://pan.baidu.com/s/1pZ7G6cQwZ6YJ9tq5vF8dw 提取码:sscm

  2. 学习社区

    • FPGA 开发者论坛:https://www.fpgadeveloper.com (英文,资料权威)
    • 中国大学 MOOC「FPGA 设计基础」:https://www.icourse163.org/course/HIT-1001998008 (哈工大课程,免费)

说明:

  • 工具安装建议优先看配套教程,避免版本兼容问题;
  • 代码建议先看懂逻辑再修改,结合仿真波形理解每一行的作用。

http://www.dtcms.com/a/499600.html

相关文章:

  • 专业的做网站网站做外链好嘛
  • ios android 小程序 蓝牙 CRC16_MODBUS
  • 沧州网站建设优化案例怎么创建一个网站
  • 【小沐杂货铺】基于Three.js渲染三维风力发电机(WebGL、vue、react、WindTurbine)
  • Socket 网络编程
  • 哪里可以做网站网站兼容性怎么解决
  • 网站备案流程实名认证哪个平台做网站好
  • 最版网站建设案例中国建设银行开户行查询
  • 衡水网站制作多少钱世界著名产品设计作品
  • 我们如何更好地相处和协作?
  • Vlanif的作用
  • 62.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--新增功能--自训练ML模型
  • 北京住房城乡建设网站秦皇岛手机网站制作公司
  • 【SpringBoot从初学者到专家的成长18】SpringBoot中的数据持久化:JPA与Hibernate的结合
  • Ubuntu服务器已下载Nginx安装包的安装指南
  • 高可用Prometheus问题集锦
  • wap建站模板物流网站怎么开
  • 【Leetcode hot 100】763.划分字母区间
  • Agent向量存储中的记忆衰退与记忆过载解决方案
  • php网站跟随导航扁平化配色方案网站
  • 降噪算法的效果分析
  • FreeSWITCH RTP 自动调整花费时间太久
  • 怎么在一个网站做编辑一流的镇江网站优化
  • 常用电子元器件学习总结
  • TCP/IP协议相关知识点
  • 网站点播视频如何做帮助做APP的网站公司
  • 直圆锥(Right Circular Cone)
  • vue适合做门户网站吗企业官网下载
  • 熬夜肌救星:EGT+AKG+SOD科学修护
  • 上海住房城乡建设网站成都创软科技的口碑