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

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

3天内不再提示

新手学习FPGA的入门之道

FPGA研究院 来源:FPGA研究院 作者:FPGA研究院 2022-12-15 11:36 次阅读

对于新手学习FPGA设计,要从基础开始做,基础牢,才有成为高手的可能。 对于初学者,有以下几步是必须要走的。

第一步

学习了解FPGA结构,FPGA到底是什么东西,芯片里面有什么,不要开始就拿个开发板照着别人的东西去编程

很多开发板的程序写的很烂,笔者也做过一段时间的开发板设计。笔者觉得很大程度上,开发板在误人子弟。不过原厂提供的正品开发板,代码很优秀的,可以借鉴。

只有了解了FPGA内部的结构才能明白为什么写Verilog和写C整体思路是不一样的。

第二步

掌握FPGA设计的流程。了解每一步在做什么,为什么要那么做。很多人都说不就是那几步吗,有什么奇怪的?呵呵,笔者想至少有一半以上的人不知道synthesize和traslate的区别吧。

了解了FPGA的结构和设计流程才有可能知道怎么去优化设计、提高速度、减少资源。不要急躁,不要去在为选择什么语言和选择哪个公司的芯片上下功夫。

语言只是一个表达的方式,重要的是你的思维,没有一个好的指导思想,语言用得再好,不过是个懂语言的人。

第三步

开始学习代码了。笔者建议要学代码的人都去Altera或Xilinx的网站上下原厂工程师的代码学习。不要一开始就走入误区。

第四步

template很重要。能不能高效利用fpga资源,一是了解fpga结构;二是了解欲实现的逻辑功能和基本机构;三是使用正确的模板。FPGA内部器件种类相对较单一,用好模板,你的逻辑才能被高效的综合成FPGA擅长表达的结构。

结语

做FPGA主要是要有电路的思想。作为初学者,往往对器件可能不是熟悉,那么应该对于数字电路的知识很熟悉吧?FPGA中是由触发器和查找表以及互联线等基本结构组成的,其实在我们在代码里面能够看到的就是与非门以及触发器。

不要把verilog和C语言等同起来,根本就是不同的东西,没有什么可比性。

在写一句程序的时候应该想到出来的是一个什么样的电路,计数器、选择器、三态门等等。理解时序,逻辑是一拍一拍的东西,在设计初期想的不是很清楚的时候可以画画时序图,这样思路会更加的清晰。

还有就是仿真很重要,不要写完程序就去往FPGA中去加载。首先要仿真,尤其是对比较大型一点的程序,想像自己是在做asic,是没有二次机会的,所以一定要把仿真做好。

还有很多新手对于语言的学习不知道选vhdl好还是verilog好,个人偏好verilog。当然不是说vhdl不好,反正写出来的都是电路,那当然就不要在语言的语法上面花太多的功夫了。verilog言简意赅,assign、always、case、if else掌握这些几乎可以写出90%的电路了。

上面是笔者的一些愚见,希望对大家有所帮助。

审核编辑 :李倩

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

    关注

    1629

    文章

    21729

    浏览量

    603017
  • Verilog
    +关注

    关注

    28

    文章

    1351

    浏览量

    110077
  • 开发板
    +关注

    关注

    25

    文章

    5033

    浏览量

    97378

原文标题:大神经验谈 | 新手学习FPGA的入门之道

文章出处:【微信号:FPGA研究院,微信公众号:FPGA研究院】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    FPGA加速深度学习模型的案例

    FPGA(现场可编程门阵列)加速深度学习模型是当前硬件加速领域的一个热门研究方向。以下是一些FPGA加速深度学习模型的案例: 一、基于FPGA
    的头像 发表于 10-25 09:22 215次阅读

    嵌入式入门心得:从新手到老鸟的蜕变

    作为一名在嵌入式领域摸爬滚打多年的老鸟,我深知新手入门时面临的困惑与挑战。嵌入式系统是一个复杂而迷人的领域,它涉及硬件、软件以及它们之间的交互。在这里,我想分享一些我的入门心得,希望能为正在嵌入式道路上探索的
    的头像 发表于 07-24 09:34 612次阅读
    嵌入式<b class='flag-5'>入门</b>心得:从<b class='flag-5'>新手</b>到老鸟的蜕变

    如何快速入门FPGA

    时钟管理模块、嵌入式块RAM、布线资源等。 学习FPGA编程语言: 掌握Verilog HDL(硬件描述语言)。Verilog用于数字电路的系统设计,具有简洁的语法和清晰的仿真语义,非常适合初学者入门
    发表于 04-28 09:06

    如何快速入门FPGA

    时钟管理模块、嵌入式块RAM、布线资源等。 学习FPGA编程语言: 掌握Verilog HDL(硬件描述语言)。Verilog用于数字电路的系统设计,具有简洁的语法和清晰的仿真语义,非常适合初学者入门
    发表于 04-28 08:54

    FPGA学习笔记-入门

    大概10年前,大学同学建议我学习DSP。当因为工作忙,也只是简单学习了DSP的一些基础知识,没有进一步深入学习和时间。结果现在,好像DSP已经不再是主流了,现在有了FPGA。 现在想想
    发表于 04-09 10:55

    新手学习单片机最常见的六大误区!

    最近看到台私信要资料的同学比较多,想必大家都是对单片机有着浓厚的学习兴趣,但是很多新手开始入门单片机的时候都会遇到一些学习的误区,今天就来整理一下大家可能会遇到的六大误区。单片机作为嵌
    的头像 发表于 03-28 08:03 842次阅读
    <b class='flag-5'>新手</b><b class='flag-5'>学习</b>单片机最常见的六大误区!

    FPGA与MCU的区别入门难度如何

    如题,目前我的MCU入门了,请问FPGA入门如何,需要怎么样去学习
    发表于 03-16 07:16

    fpga学习需要具备哪些课程

    FPGA(Field Programmable Gate Array)学习需要具备一系列的课程知识和实践技能
    的头像 发表于 03-14 15:51 1186次阅读

    #2024,为FPGA生态加油,为FPGA社区点赞#新手入门的简单小例子-03

    新手入门的简单小例子第三个,这几个例子主要给入门新手建立时间或者说时序的概念,最近看了不少的资料基本上都是以点灯为例,估计是大家对嵌入式开发和FPGA的普遍共识,这两天逛B站发现了也
    发表于 02-02 15:33

    #2024,为FPGA生态加油,为FPGA社区点赞#新手入门的简单小例子-02

    新手入门的简单小例子第二个,这几个例子主要给入门新手建立时间或者说时序的概念,最近看了不少的资料基本上都是以点灯为例,估计是大家对嵌入式开发和FPGA的普遍共识,这两天逛B站发现了也
    发表于 02-01 17:57

    #2024,为FPGA生态加油,为FPGA社区点赞#新手入门的简单小例子-01

    #2024,为FPGA生态加油,为FPGA社区点赞#新手入门的简单小例子,主要给入门新手建立时间或者说时序的概念,最近看了不少的资料基本上
    发表于 02-01 16:05

    FPGA好的学习资源有哪些

    FPGA学习好的资源有哪些?从入门到精通,大家可以分享一起学习
    发表于 01-28 17:00

    学习FPGA必须知道的社区

    学习FPGA必须知道的社区
    的头像 发表于 01-03 17:51 391次阅读
    <b class='flag-5'>学习</b><b class='flag-5'>FPGA</b>必须知道的社区

    值得多看的FPGA 学习路线

    ,我总结了这份FPGA学习路线 FPGA入门学习第一部分:硬件编程语言 FPGA的编程语言,是我
    发表于 01-02 23:03

    FPGA学习入门从点灯开始

    首先,FPGA开发工程师是一个相对高薪的工作,但是,很多同学在刚入门时都会有一种无从下手的感觉,尤其是将FPGA作为第一个要掌握的开发板时,更是感觉苦恼;本人也是如此,以下就本人学习
    的头像 发表于 12-28 09:50 509次阅读