fpga 需要掌握哪些基础知识?

个人根据自己的一些心得总结一下fpga 需要掌握的基础知识,希望对你有帮助。

1、数电(必须掌握的基础),然后进阶学模电,

2、掌握HDL(verilog或VHDL)一般建议先学verilog,然后可以学System Verilog和VHDL。

3、掌握FPGA设计流程/原理(推荐教材:FPGA权威指南、Altera FPGA/CPLD设计、IP核芯志-数字逻辑设计思想、静态时序分析、嵌入式逻辑分析仪等)。

4、器件结构(最好熟练掌握Spartan3,Vertix4系列的器件结构,及其资源于Verilog行为描述方法的关系)。

5、开发工具(熟练Synplify,Quartus,ISE,Modelsim等)。

6、常用的协议(ARP协议、udp协议、SPI、AXI总线等等)够用就行,

另外根据工作领域在选择专业知识:

比如:通信------通信原理、移动通信基础、信号与系统、数字信号处理......

比如:CPU------计算机组成原理、计算机体系结构、编译原理.......

7、具备具体设计经验(独立的做些中小规模的设计,比如:像交通灯、电子琴、DDS等......)。

8、熟练掌握基本概念(如建立时间,保持时间,流量(即所做FPGA设计的波特率)计算,延迟时间计算(所做FPGA设计),竞争冒险,消除毛刺的方法等等)。

9、良好的设计思路(流水线设计即熟称打拍子,在速率资源功耗之间的折中考虑)。

​ 这里有一个入口:​FPGA学习资料免费领! ​

相关推荐
Lhappy嘻嘻3 小时前
Java IO|File 文件操作 + 字节流 / 字符流完整笔记 + 递归删除文件实战
java·笔记·php
伊玛目的门徒3 小时前
试用leetcode之典中典 二数之和问题
java·算法·leetcode
Mr-pn-junction4 小时前
clk_gate
单片机·嵌入式硬件·fpga开发
懒鸟一枚6 小时前
深入理解 Linux 内存、Swap 交换分区与分页机制的关系
java·linux·数据库
我命由我123458 小时前
执行 Gradle 指令报错,无法将“grep”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
考虑考虑8 小时前
Sentinel安装
java·后端·微服务
尼喃8 小时前
662K和65Z5三脚稳压芯片PW6566,附引脚定义与典型电路图
嵌入式硬件
凤凰院凶涛QAQ9 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
掘金_答案10 小时前
上线那天,一个 ConcurrentHashMap 差点送走我的 AI 客服——3 天排查 JVM 血泪史
java·后端·架构
猿与禅11 小时前
CosId 分布式 ID 生成器完全教程:从架构原理到生产落地
java·shardingsphere·雪花算法·分布式id·高性能·cosid·号段模式