0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文解析初学者如何学习FPGA

工程师人生 作者:工程师a 2018-04-21 03:51 次阅读

FPGA作为一种高新技术,由于其结构的特殊性,可以重复编程,开发周期较短,越来越受到电子爱好者的青睐,其应用已经逐渐普及到了各行各业。因此,越来越多的电子爱好者想尽快掌握这门技术进入该领域。

笔者从2007年初次接触并系统学习FPGA及工作后应用FPGA做产品至今已有7年的时间,初次接触学习FPGA时由于没有专业老师的指导,自己摸索学习FPGA走了很多的弯路。有过问题迎刃而解的快乐,也有过苦苦寻求结果和答案的痛苦历程,回想起自己学习FPGA的经历,从开始的茫然,到后来的疯狂看书,购买开发板,在开发板上练习各种FPGA实例,到毕业工作后用一直FPGA做产品,独立完成项目,一路走来,感受颇多。发觉学习FPGA只要选择正确的方法是有捷径可走的。笔者经常在FPGA相关技术论坛及FPGA技术交流QQ群解答初学者在学习过程中遇到的技术问题,发现很多初学者都是怀着浮躁的心态来学习FPGA,总是急于求成。在学习FPGA设计技术的过程中,虽然刚开始学习热情很高,但真正坚持下来一直到“学会”的却寥寥无几,除了学生个人毅力的因素外,另外一个重要的原因没有好的学习教程的指引和缺乏正确的学习方法的指导,原本FPGA的学习门槛相对于单片机来说就高了不少,再加上缺少手把手系列的教程资料和正确的学习方法,这就给初学者学习FPGA增添了更多的困难,很多初学者因为找不到入门的方法而渐渐失去了学习FPGA的兴趣和信心。

此系列教程主要分为FPGA学习方法篇、FPGA基础篇、FPGA实例篇以及FPGA设计技巧篇,其中FPGA基础篇又包括FPGA基础知识篇、硬件描述语言篇、FPGA开发工具篇、数字电路基础篇以及硬件电路篇;FPGA实例篇包括FPGA入门实验篇、FPGA进阶实验篇、IP核使用篇以及FPGA综合实验篇。

FPGA学习方法篇:主要是结合笔者学习FPGA的经历及心得体会讲解FPGA的学习方法,让初学者掌握正确的学习方法,把握学习FPGA正确的方向,少走弯路,避免进入FPGA学习的误区。在学习方法篇中还会讲解硬件描述语言有关的知识,主要是让初学者正确认识硬件描述语言和其他编程语言的区别,掌握学习硬件描述语言的正确方法。在学习方法篇的最后会讲解如何选择正确的硬件开发平台,因为要掌握FPGA这门技术,扎实的理论知识还远远不够,购买一块FPGA开发板,多动手练习实践更显得尤为重要。而如何选择性价比很高的硬件开发平台,也是初学者比较迷惑的问题,笔者通过硬件开发平台选型指南将会教给初学者如何花最少的钱选择性价比高的FPGA开发板入门FPGA技术。

FPGA基础知识篇:主要是讲解FPGA内部结构、FPGA可编程的基本原理以及FPGA的开发流程方面的知识。要想学好FPGA,必须先搞清楚FPGA是什么,这是入门FPGA技术的基础。通过本篇教程学习主要是让初学者掌握FPGA的基础知识,了解FPGA可编程的基本原理以及了解FPGA的开发流程。

FPGA开发工具篇:主要是讲解FPGA开发工具Quartus II软件的安装、破解和使用;FPGA仿真工具modelsim软件的安装、破解和使用;FPGA片上debug工具SignalTap II软件的的使用。

硬件描述语言篇:主要是硬件描述语言的verilogHDL的简介、基本语法介绍以及verilogHDL的编码规范。

数字电路篇:无论是FPGA的哪个方向,都离不开数字逻辑知识的支撑。FPGA说白了是一种实现数字逻辑的方式而已。如果连最基本的数字逻辑的知识都有问题,学习FPGA的愿望只是空中楼阁而已。本篇主要介绍介绍组合逻辑电路,时序逻辑电路方面的基础知识以及状态机的设计,重新复习下数字电路相关知识。

FPGA硬件电路篇:介绍FPGA最小系统及外围电路的设计,学习硬件电路方面的知识。

FPGA实例篇:FPGA的学习只有通过大量的操作与实践才能很好并快速的掌握,实例篇以芯创电子的开发板为硬件开发平台,对开发板上的每个外设编写实例,为激起初学者学习FPGA的兴趣,在实例篇中采用“授人以渔”的方式,努力做到不仅讲述怎样进行试验,而且分析为什么这样做,重点介绍设计思路,以便初学者深刻理解并快速掌握FPGA的学习方法。在实例篇中会穿插介绍一些常用IP核,如PLL、单双口ROMRAM、同步FIFO和异步FIFO等IP核的使用。实例篇的最后是综合实例,难度接近小的项目,笔者会从实际项目的流程进行讲解,让初学者提前进入项目实战阶段。

FPGA设计技巧篇:主要介绍FPGA设计的一些思想和原则,如串并转换、乒乓操作、流水线、模块划分技巧以及同步电路设计等。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1600

    文章

    21281

    浏览量

    592866
  • FPGA工程师
    +关注

    关注

    2

    文章

    12

    浏览量

    8600
收藏 人收藏

    评论

    相关推荐

    国内哪家的FPGA适合初学者

    如题,想着手学习FPGA的话,国内哪家的比较好,更适合初学者学习?这方面的经验,是点都没。
    发表于 04-14 19:17

    FPGA芯片的工作原理和使用

    FPGA(现场可编程门阵列)芯片的使用和工作原理对于初学者来说,可能是一个相对复杂但非常有趣的学习领域。
    的头像 发表于 03-27 14:59 217次阅读

    初学者请问各位大佬

    为什么在89C51单片机中R1可以提供低地址 在外部扩展RAM中不是P0口提供低8位地址P2口提供高8位地址吗初学者有些不理解望各位大佬解答下谢谢
    发表于 02-23 16:39

    请问初学者要怎么快速掌握FPGA学习方法?

    对于初学者 FPGA的编程语言是什么? FPGA芯片的基础结构也不了解. FPGA开发工具的名称和使用方法都不知道. 要学的很多啊,请问有什么自学的
    发表于 01-02 23:01

    分享给嵌入式初学者

    电子发烧友网站提供《分享给嵌入式初学者.doc》资料免费下载
    发表于 11-08 10:46 0次下载
    分享给嵌入式<b class='flag-5'>初学者</b>

    面向CAN总线初学者的入门教程

    本资料是CAN初学者的入门书,对 CAN 是什么、CAN 的特征、标准规格下的位置分布等、CAN 的概要及 CAN 的协议进行了说明。
    发表于 10-20 17:25 1次下载

    初学者入门

    太好了,初学者学习慢慢消化中……
    发表于 09-21 13:50

    STM32初学者的考虑因素 STM32标准库和HAL库如何选择

    初学者尝试学习STM32开发时,通常会面临一个关键的选择:是选择STM32的标准库,还是HAL库?这两个库各自有着优势与适用场景,本文将从多个角度分析,帮助初学者更好地选择适合自己的库。 在开始
    发表于 08-08 09:43 1022次阅读

    BMS架构的初学者指南,电池管理系统bms的功能包括哪些

    电池技术的持续转型促使许多新人学习设计电池管理系统。本文提供了电池管理系统(BMS)架构的初学者指南,讨论了主要功能块,并解释了每个模块对电池管理系统的重要性。
    的头像 发表于 07-12 15:41 2222次阅读
    BMS架构的<b class='flag-5'>初学者</b>指南,电池管理系统bms的功能包括哪些

    图像处理初学者应该学习的100个问题-你都学会了吗?

    本文整理了图像处理初学者应该需要了解的100个基础问题,涉及读取、显示图像、操作像素、拷贝图像、保存图像、灰度化(Grayscale)、二值化(Thresholding)、大津算法、HSV 变换
    的头像 发表于 07-10 10:30 490次阅读
    图像处理<b class='flag-5'>初学者</b>应该<b class='flag-5'>学习</b>的100个问题-你都学会了吗?

    初学者工具包-沙漏(个人模组)

    电子发烧友网站提供《初学者工具包-沙漏(个人模组).zip》资料免费下载
    发表于 06-26 09:43 0次下载
    <b class='flag-5'>初学者</b>工具包-沙漏(个人模组)

    初学者快速判断并查找出LED显示屏故障的方法

    LED显示屏故障分析对于初学者来说直接、有效的方法就是排除法,LED显示屏主要由三大硬件部分组成:控制卡、单元板、开关电源。LED显示屏故障分析对于初学者来说直接、有效的方法就是排除法,LED显示屏主要由三大硬件部分组成:控制卡、单元板、开关电源。
    的头像 发表于 06-15 14:48 757次阅读
    <b class='flag-5'>初学者</b>快速判断并查找出LED显示屏故障的方法

    FPGA学习及设计中的注意事项

    1.基础问题   FPGA的基础就是数字电路和HDL语言,想学好FPGA的人,建议床头都有本数字电路的书,不管是哪个版本的,这个是基础,多了解也有助于形成硬件设计的思想。 在语言方面,建议
    发表于 05-30 20:37

    PLC初学者必须掌握的梯形图

    PLC初学者必须掌握的七大梯形图
    发表于 05-25 16:44 4次下载

    TynecastleTech团队为初学者提供的鱼菜共生系统

    初学者水培》是团队开始建立自己的水培系统之旅的教科书。他们了解了细菌如何将鱼类排泄物转化为硝酸盐肥料,给植物施肥,以及在这样的系统中可以茁壮成长的鱼类类型。当地水族馆商店的工作人员以及一位园艺专家的家庭成员为那些生长良好的植物提供了建议。
    的头像 发表于 05-08 11:20 545次阅读
    TynecastleTech团队为<b class='flag-5'>初学者</b>提供的鱼菜共生系统