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

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

3天内不再提示

整理了一些FPG的知识点和FPGA的进阶路线

h1654155971.8456 来源:lq 2019-01-17 11:44 次阅读

今天陆妹给大家整理了一些FPG的知识点和FPGA的进阶路线,小本本准备好,要开始划重点喽。

FPGA工作原理

FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。

FPGA的基本特点主要有:

1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片

2)FPGA可做其它全定制或半定制ASIC电路的中试样片。

3)FPGA内部有丰富的触发器和I/O引脚。

4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。

5) FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。

可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。

FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。

加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。

当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。

FPGA常用术语

1:LCA(Logic Cell Array):逻辑单元阵列,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。

2: IOB(Input Output Block):可编程输入输出单元,为了便于管理和适应多种电器标准,FPGA的IOB被划分为若干个组(bank),每个bank的接口标准由其接口电压VCCO决定,一个bank只能有一种VCCO,但不同bank的VCCO可以不同。只有相同电气标准的端口才能连接在一起,VCCO电压相同是接口标准的基本条件。

3:CLB(Configurable Logic Block):可配置逻辑模块,是FPGA内的基本逻辑单元,每个CLB都包含一个可配置开关矩阵,此矩阵由4或6个输入、一些选型电路(多路复用器等)和触发器组成。 在赛灵思公司公司的FPGA器件中,CLB由多个(一般为4个或2个)相同的Slice和附加逻辑构成。

4:Slice:是赛灵思公司公司定义的基本逻辑单位,一个Slice由两个4输入的函数、进位逻辑、算术逻辑、存储逻辑和函数复用器组成。

5:LUT(Look-Up-Table):查找表。本质上就是一个RAM,目前FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的 的RAM。

6:DCM(数字时钟管理模块):提供数字时钟管理和相位环路锁定。

7:BRAM(嵌入式块RAM):块RAM可被配置为单端口RAM、双端口RAM、内容地址存储器(CAM)以及FIFO等常用存储结构。单片块RAM的容量为18k比特,即位宽为18比特、深度为1024,可以根据需要改变其位宽和深度,但要满足两个原则:首先,修改后的容量(位宽 深度)不能大于18k比特;其次,位宽最大不能超过36比特。当然,可以将多片块RAM级联起来形成更大的RAM,此时只受限于芯片内块RAM的数量,而不再受上面两条原则约束。

必须精通的5项基本功

对于FPGA设计者来说,要练好5项基本功:仿真、综合、时序分析、调试、验证,

1.、仿真:ModelsimQuartusII(Simulator Tool)

2.、综合:Quartus II (Compiler Tool, RTL Viewer,Technology Map Viewer, Chip Planner)

3、 时序:Quartus II (TimeQuest Timing Analyzer, Technology Map Viewer, Chip Planner)

4、调试:Quartus II (SignalTap II Logic Analyzer, Virtual JTAG, Assignment Editor)

5、验证:Modelsim, Quartus II(Test Bench Template Writer)

HDL语言与FPGA设计的5项基本功是相辅相成的。虽然它不是FPGA设计的全部,但是HDL语言在FPGA的整个设计流程中都是有体现的。

对于FPGA设计者来说,用好“HDL语言的可综合子集”可完成FPGA设计中50%的工作——设计编码。练好仿真、综合、时序分析这3项基本功,对于学习“HDL语言的可综合子集”有如下帮助:

1. 通过仿真,可以观察HDL语言在FPGA中的逻辑行为。

2. 通过综合,可以观察HDL语言在FPGA中的物理实现形式。

3. 通过时序分析,可以分析HDL语言在FPGA中的物理实现特性。

同样,用好“HDL语言的验证子集”,可以完成FPGA设计另外50%的工作——调试验证。

1. 搭建验证环境,通过仿真的手段可以检验FPGA设计的正确性。

2. 全面的仿真验证可以减少FPGA硬件调试的工作量。

3.把硬件调试与仿真验证方法结合起来,用调试解决仿真未验证的问题,用仿真保证已经解决的问题不在调试中再现,可以建立一个回归验证流程,有助于FPGA设计项目的维护。

FPGA设计者的这5项基本功不是孤立的,必须结合使用,才能完成一个完整的FPGA设计流程。反过来说,通过完成一个完整的设计流程,才能最有效地练习这5项基本功。对这5项基本功有了初步认识,就可以逐个深入学习一些,然后把学到的知识再次用于完整的设计流程。如此反复,就可以逐步提高设计水平。采用这样的循序渐进、螺旋式上升的方法,只要通过培训入了门,就可以自学自练,自我提高。

FPGA设计人员的进阶路线

从技术层面来讲,可编程逻辑范围是目前和将来半导体行业最活泼的范围之一,不再是繁多地用于IC设想的原型考证,更多地用于提供集成的零碎级处置计划。古代的FPGA不再仅仅是可编程逻辑,而是介于ASIC和FPGA之间的混合芯片,包括微处置器、收发器以及很多其它单元。所以对FPGA设想职员的请求也越来越高,已超出繁多的逻辑设想范围。因而,关于FPGA初学者来讲,需求明白团体的进阶道路,进而把握疾速开拓的办法。下面给出作者团体的一些观念。

1

熟习一门硬件设想言语(VHDL或Verilog HDL),由于不论在哪种运用范围,HDL言语都是FPGA开拓的根底。目前国际运用Verilog HDL言语的开拓职员较多一些,因而引荐读者进修Verilog HDL。正因如此,本书的实例都经过Verilog HDL完成,并在附录中给出其扼要的语法阐明。

2

把握ISE Design Suit相关软件的运用办法。ISE软件能够完成设想输出、分析、仿真、完成和下载,涵盖了FPGA开拓的全进程,从中读者能够逼真领会到FPGA开拓全进程。关于嵌入式开拓职员,还需求把握EDK软件操纵。当把握软件的根本用法后,能够深化了解各工具组件,如分析工具XST、布局布线工具PAR等的运转机制,以便更好地在设想中应用其特性。

3

熟习XilinxFPGA芯片,包括不同类型资源的功能特性和运用办法。此时,Xilinx所公布的文档是首要参考材料。Xilinx针对每个系列的FPGA都提供了丰厚而片面的文档,所以在开端任何一个系列的FPGA设想前,最好到Xilinx网站,将该系列FPGA的页面上将一切的文档都下载上去,然后有针对性的做参考。

4

参考xilinx推出的开拓板以及相应的参考设想,这是向初级进阶最有价值的局部。Xilinx在网上针对每个系列的fpga都有文档阐明,并都给出原理图。其开拓板的文档阐明十分具体具体,也很标准,有很大的参考价值。此外,在那些开拓板里也有众多的核心接口电路,根本涵盖了常用的运用场所。参考核心电路芯片的数据手册,细心领会设想的细节和运用办法。作为硬件工程师,阅读手册是一项根本技艺。当然,在具有硬件平台的根底上,参考Xilinx网上的开拓板是进阶道路中捷径的捷径。

5

入手调通一块板子。有PCB设想才干的读者,可自行设想;否则可购置相应的开拓板,将下面一切的硬件外设调通,并参照相似的开拓板,独立完成Xilinx官方的参考设想。完成这一步,就步入初级设想的大门了。

6

由于FPGA芯片以及开拓技术开展很快,因而不只要在任务中累积经历,还该当关心该行业的新技术和新意向,只要这样才干一直站在高处。

全体看来,FPGA开拓入门复杂,进阶阶段不只难度较大、所需学问面广,还是一个烦琐的任务。同时假如想从底层更深化的了解硬件设想,还需需求深沉的实际支撑。因而FPGA开拓是一条平整但十分峻峭的路。

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

    关注

    1602

    文章

    21320

    浏览量

    593173
  • FPG
    FPG
    +关注

    关注

    1

    文章

    53

    浏览量

    79840
  • 触发器
    +关注

    关注

    14

    文章

    1677

    浏览量

    60402

原文标题:待查收:一些FPG的知识点 & FPGA的进阶路线

文章出处:【微信号:eda365wx,微信公众号:EDA365电子论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    整理了一些电解电容规格书,起讨论学习。

    整理了一些电解电容的规格书,大家可以起学讨论。需要样品测试的,可以TA0BAO:深圳市诚利来科技 样品不要钱。
    发表于 03-22 10:53

    工程师总结了一些C语言的知识点

    仅供大家参考,想起和我讨论吗,可以加下我的QQ2685896890,黄老师、嵌入式C/单片机C/标准C知识点知识点1:嵌入式C、标准C、单片机C区别
    发表于 07-25 10:23

    整理了一些库卡机器人资料跟大家分享下子

    整理了一些库卡机器人资料跟大家分享下子
    发表于 08-10 10:04

    请问学习LLC电源需要掌握一些什么知识点

    我是个刚学习电源的萌新,请问学习LLC电源需要掌握一些什么知识点
    发表于 03-05 21:42

    整理了一些关于STM32的FAQ

    学习SMT32时收集整理了一些FAQ,分享给大家。
    发表于 06-07 15:58

    整理了一些USB常用的封装PADS9.5 USB

    `整理了一些USB常用的封装 PADS9.5 USB`
    发表于 10-15 17:15

    整理了有关pcb设计的一些技巧分享给大家

    自己整理了一些关于PCB布线的资料分享给大家。关于PCB线宽与电流的关系有很详细的讲解pcb设计的相关经验和技巧总结老工程师的经验分享
    发表于 07-17 08:00

    电机与电气控制基础的知识点

    电机就是我们平时俗称的“马达”,电机是依据电磁感应定律实现电能转换或传递的种电磁装置。电机的主要作用是产生驱动转矩,作为用电器或各种机械的动力源。而电机与电气控制技术的一些基础的知识点是不论是在学习还是工作中都是需要牢记的。今
    发表于 01-22 06:54

    FPGA设计的8大重要知识点分享

    FPGA设计的8大重要知识点,你都get了吗?
    发表于 02-03 07:39

    FPGA的基础知识点及工作原理是什么

    FPGA的基础知识点及工作原理是什么
    发表于 04-30 06:14

    关于单片机串口编程进阶知识点不看肯定后悔

    关于单片机串口编程进阶知识点不看肯定后悔
    发表于 06-16 09:00

    记录一些飞控开发过程的知识点

    写在前面开这个专栏的目的主要是深感自己对飞控软件、算法的知识点过于杂乱,很久没有进行系统的总结了,因此决定写几篇文章记录一些飞控开发过程的知识点。主要是针对一些软件、算法部分进行讨论,
    发表于 08-06 09:59

    记录一些飞控开发过程的知识点

    写在前面开这个专栏的目的主要是深感自己对飞控软件、算法的知识点过于杂乱,很久没有进行系统的总结了,因此决定写几篇文章记录一些飞控开发过程的知识点。主要是针对一些软件、算法部分进行讨论,
    发表于 08-09 08:40

    整理了一些常见的保护电路

    鉴于电源电路存在一些不稳定因素,而设计用来防止此类不稳定因素影响电路效果的回路称作保护电路。在各类电子产品中,保护电路比比皆是,例如:过流保护、过压保护、过热保护、空载保护、短路保护等等,本文就整理了
    发表于 09-13 07:16

    讲讲ROM、RAM、Flash的一些零碎知识点

    篇主要讲讲ROMRAMFlash的一些零碎知识点,网上也能找到很多资料。1 ROM1.1概述  只读存储器(Read-only memory, ROM),当然从广义上来讲,也有一些
    发表于 11-03 07:58