学习FPGA,在不同层次的人明显有不同的答案。先说一句,说不要开发版的都是菜鸟级选手。
我把FPGA层次划分为,鸡蛋级别,菜鸟级别,老鸟级别,高手级别四类。我是鸡蛋级别的!啥也不会。
1)熟悉语法,其实你不需要什么都会,但是要记住几个经典的时序,逻辑电路的描述方式。
2)熟悉三个经典电路描述并仿真。仿真其实不是很重要,我开始学习压根没学那个玩意儿,因为要是只做接口那玩意儿没啥用。直接用ChipSchop抓抓数据更快。仿真是给做算法,工程相对较大的人用的。三个经典电路分别是,分频器,计数器(可做一个时钟),序列检测器。这样你就基本熟悉了开发环境了。
3)上板卡跑一个灯,熟悉一个板卡上时钟资源使用,硬件的使用原理。
4)知道了FPGA学习主要不在于编程!压根没有编程这回事!!Verilog是硬件描述语言!描述!!写代码时脑子里必须有电路图!!知道FPGA主要学的是硬件和算法!!软件最多能占10%就不错了!!
只要你能完成这上面的东西,恭喜你进入菜鸟行列,可以在别人设计好FPGA方案的条件下完成一些模块的设计了。其实华为招聘员工,很多人FPGA水平一开始都差不多这么菜。
先写一下老鸟需要会什么,以后再答怎么做到。
1)FPGA逻辑资源,特别是时钟资源要非常熟悉。
2)做算法的必须熟悉sysgen的使用。说的容易了,sysgen画画图也没那么容易哦,你要熟悉使用各种滤波器,理论知识要求起点就不小。
3)充分理解FPGA从上而下的设计原则,能够编写中等程度的FPGA详细设计方案。
4)熟悉时序优化,时序收敛,区域约束等知识。并且能运用到编程之中,解决菜鸟们解决不了的“不科学”的问题。说白了就            是会使用planhead,以及ISE中那些你还没接触过的功能。一般菜鸟们ISE都只会编程,默认的编译一下,然后下载,  ChipSchop抓抓数看看。
5)能够熟悉FPGA常用的接口,不求都会编程,但是要知道他们功能是什么。比如ADC,DAC,串口,EMIF等等。并且熟悉DSP等FPGA周边常用芯片工作原理。
6)熟悉硬件设计,至少要知道Bank上IO规划怎么好,全局时钟,区域时钟大致怎么规划等等。
7)信号源,示波器,频谱仪都要熟悉使用吧!
等这些都熟悉了,差不多是老鸟了。
要成为高手,你没有十来个FPGA程序设计经验,解决过十来个中大项目核心问题,没有做过大系统还是停留在小板卡,都是不行的。

~~~~~~分割线~~~~~
发现入门没那么容易。我觉得入门必须知道FPGA是做什么的,能做什么?和ARM,DSP,X86,GPU对比有啥优势?
我下面简单说说,FPGA现在有三个方面:
1)通信高速接口设计。一般速率太高了,需要用FPGA把高速数字信号分开,然后使信号容易处理,传输,存储。
2)数字信号处理。包括图像处理,雷达信号处理,医学信号处理等。优势是实时性好,用面积换速度,比CPU快的多。
3)SOPC但是个人觉得这个方面不太主流。
基本上60%以上应用于做通信接口,也是FPGA最适合做,也是优势最大的方面。30%做信号处理。其实很多情况做信号处理也是由于一个系统中已经需要一个做接口的FPGA,不想多花钱、费事在买个DSP而已!
以上各个芯片各有啥优势请自己百度。
仿真一直是我忽略的一个环节。仿真一般可以提高一个优秀的FPGA工程师的工作效率,一些低级的错误可以一下子反应出来。特别是不熟悉FPGA语法的人需要仿真。毕竟一个较大的FPGA程序需要编译几个小时。但是请大家合理的看待仿真这件事,菜鸟又要学编程又要学仿真。关键仿真正确后实际还不一定对!这样会打击信心。在有条件的基础上可以直接抓取信号看看波形,这样比较准确。一下子可以让你缩短做一个简单工程的周期。菜鸟级别的工程一般直接写出来也不怎么会错的。所以在上面我说了仿真对于菜鸟不是很重要。各自还是看每个人处在的阶段看问题吧!
一般从时间上来说一般1-2年能入门,就是我说的菜鸟水平没有达到老鸟级别。3-5年算是一个老鸟级别吧!能不能到高手看个人造化。

FPGA学习步骤(打算以后也转FPGA了,毕竟工资比硬件工程师高)相关推荐

  1. FPGA学习步骤,我的体会

    FPGA学习步骤,我的体会 FPGA在目前应用领域非常,在目前的单板设计里面,几乎都可以看到它的身影.从简单的逻辑组合,到高端的图像.通信协议处理,从单片逻辑到复杂的ASIC原型验证,从小家电到航天器 ...

  2. [转载]FPGA学习步骤

    原文地址:FPGA学习步骤作者:激扬青春 觉得有些道理,就转过来了,希望对大家有帮助! FPGA在目前应用领域非常,在目前的单板设计里面,几乎都可以看到它的身影.从简单的逻辑组合,到高端的图像.通信协 ...

  3. FPGA学习经验(BBS论坛)

    掌握FPGA可以找到一份很好的工作,对于有经验的工作人员,使用FPGA可以让设计变得非常有灵活性.掌握了FPGA设计,单板硬件设计就非常容易(不是系统设计),特别是上大学时如同天书的逻辑时序图,看起来 ...

  4. FPGA学习—数码管显示

    FPGA学习--数码管显示 文章目录 FPGA学习--数码管显示 结构框架 一.硬件设计 二.verilog编写 1.计数器 2.译码模块 3.数码管扫描模块 4.顶层模块 实验结果 结构框架 数码管 ...

  5. FPGA学习之串口篇

    FPGA学习之串口篇 文章目录 FPGA学习之串口篇 前言 二.UART发送代码 三.UART接收代码 三. 总结 前言   UART(Universal Asynchronous Receiver/ ...

  6. FPGA学习网站、开源网站和论坛网站汇总

    分享FPGA常用的一些学习网站.开源网站和论坛网站,方便大家找资料,查问题. 一.基础类学习网站 1.HDLbits(初学者入门) HDLBits有一系列的 Verilog 基础知识,可以在线仿真的学 ...

  7. FPGA学习篇之分频器

    FPGA学习篇之分频器 文章目录 FPGA学习篇之分频器 前言 一.偶数分频 二.奇数分频 总结 前言   分频器是数字电路中最常用的基本电路之一,目的是对输入时钟进行分频,输出任何低于输入时钟的频率 ...

  8. ZYNQ之FPGA学习----Vivado功能仿真

    1 Vivado功能仿真 阅读本文需先学习: FPGA学习----Vivado软件使用 典型的FPGA设计流程,如图所示: 图片来自<领航者ZYNQ之FPGA开发指南> Vivado 设计 ...

  9. 硬件工程师充电心得--嵌入式软件工程师学习路线

    硬件工程师日常主要工作通常为电路原理图.PCB设计,很少涉及软件编程,哪怕是一些硬件接口驱动很多硬件工程师都不曾涉足.面对日益激烈的竞争压力,多学一些嵌入式软件方面的技能也能为日后自己的职业生涯发展打 ...

最新文章

  1. 校准曲线(calibration curve)是什么?如何绘制校准曲线(calibration curve)?如何通过过校准曲线进行分析?什么是高估?什么是低估?
  2. 撩课-Java面试宝典-第五篇
  3. vue-lazyload 的vue 懒加载的使用
  4. pycharm报错(Non-zero exit code (2))与手动安装报错
  5. python产生fir滤波器_Python中使用FIR滤波器firwin后信号的相移
  6. 信息论3——信道(单符号离散信道,互信息,各种熵)
  7. Android测试写入文本Log
  8. 《javaScript100例|02》超级经典一套鼠标控制左右滚动图片带自动翻滚
  9. 开发悬赏任务兼职系统运营版源码,仿蚂蚁帮扶众人帮平台
  10. linux java mail 时间,Javamail在Windows上工作,而不是在Linux上
  11. FaceWarehouse: a 3D Facial Expression Database for Visual Computing
  12. 实施IT运维管理 循序渐进
  13. Windows XP启用telnet服务图文教程
  14. 洛谷 P3063 [USACO12DEC]牛奶的路由Milk Routing
  15. windows环境下curl安装
  16. java中HashMap与Hash表详解
  17. 忽忽,抢楼机完成……
  18. 中国为何与诺贝尔奖无缘?
  19. C语言LMS双麦克风消噪算法,基于两个时域LMS算法双麦克风系统分析.doc
  20. php中访问excel文件,PHP中常用的Excel文件访问类及修改 | 学步园

热门文章

  1. 船舶余热吸收式制冷空调设计
  2. Python+Vue计算机毕业设计汽车销售网站7tfw2(源码+程序+LW+部署)
  3. 饥荒联机服务器配置文件翻译,饥荒联机世界设置翻译 | 手游网游页游攻略大全...
  4. 汽车电子电气架构里的VCU DCU ZCU ECU怎么区分?
  5. 几分钟上线一个项目文档网站,这款开源神器实在太香了!
  6. 蒲福风力等级c语言编程,蒲福风力等级表.doc
  7. 开放GIS标准OGC之路(3)之 WFS初探
  8. 易语言大漠插件破解版注册例子源码
  9. 最小二乘法多项式曲线拟合原理与实现
  10. Faster-RCNN/RFCN源码解读(caffe)