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

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

3天内不再提示

FPGA基础知识

FPGA设计论坛 来源:未知 2022-11-19 13:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

FPGA 的基本结构

FPGA 可编程的特性决定了其实现数字逻辑的结构不能像专用 ASIC 那样通过固定的逻辑门电路来完成,而只能采用一种可以重复配置的结构来实现, 而查找表(LUT)可以很好地满足这一要求,目前主流的 FPGA 芯片仍是基于 SRAM 工艺的查找表结构。

FPGA 芯片参数指标:包含可编程逻辑模块的数量、固定功能逻辑模块(如乘法器)的数目及存储器资源(如嵌入式 RAM)的大小。

在最底层的可配置逻辑模块(如片上的逻辑单元) 上,存在着基本的两种部件:触发器和查找表( LUT) , 而触发器和查找表的组合方式不同,是各个 FPGA 家族之间区别的重要依据, 并且查找表本身的结构也可能各不相同( 有 4 输入或 6 输入或其他)。

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

当用户在 EDA 工具上通过原理图或 硬件描述语言设计了一个逻辑电路以后, FPGA 开发软件会自动计算逻辑电路的所有可能结果,并把真值表(即结果)事先写入 RAM 中。这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查找表操作, 通过地址找到对应的 RAM 中的结果, 最后将其输出。以实现数字逻辑 Y=A&B&C 的功能为例。如果是在专用 ASIC 中,为了实现该逻辑,逻辑门都已经事先确定好, Y 的输出值为两个逻辑与运算后的结果,其基本的实现结构如下图所示:

对Y=A&B&C 的 利用FPGA 实现基本结构 :

更为复杂的 FPGA 架构

随着技术的发展和工艺节点的进步, FPGA 的容量和性能在不断提高的同时, 其功耗却不断的优化减少。2006 年以前四输入查找表一直被广泛使用, 在一些高端器件可能会用上六输入、八输入或更多输入端口的查找表。而一个多输入的查找表又可以分解成较小输入的查找表, 即能够分裂成许多更小的功能。例如一个八输入的查找表可以分解成两个四输入的查找表或分解成一个三输入加一个五输入的查找表。在实际的高端器件中,这种可编程构造可以描述相当于百万级(有时甚至千万级)的原始逻辑门。


在 FPGA 内部,利用 FPGA 的可编程性在芯片内部构造实现了一个计数器逻辑,有着“软内核”与“硬内核”之分。

软内核(软功能):在构造计数器逻辑过程中使用到的功能便可以被称为软功能。

硬内核(硬功能):功能若是直接利用芯片实现的,则是利用了芯片内部的硬功能。

软内核与硬内核之间优势互补,软内核的优势在于可以在利用芯片资源的基础上利用编程设计让其完成需要实现的任何功能(注意是数字功能,不包括模拟功能)。而**硬内核由于是实现固定功能的器件,因此其优势在于资源利用率高且功耗较低, 占用硅片的面积也较小, 并具有较高的性能。最重要的区别**在于:与软内核相比硬内核可用于实现模拟功能, 例如锁相环的倍频功能,这个功能需要在模拟电路下实现,所以这一部分是在 FPGA 内部用硬件来实现的 。

带嵌入式处理器的 FPGA

利用 FPGA 的可编程构造实现的事情之一即为使用其中的一部分数字逻辑资源制作一个或多个软处理器内核, 当然, 也可以实现不同规模的处理器。

这个芯片是一种新的SoC(System on Chip,系统级芯片) FPGA,完全以硬内核方式实现的双路 ARM Cortex-A9 微控制器子系统(运行时钟高达 1GHz,包含浮点引擎,片上缓存,计数器,定时器等)以及种类广泛的硬内核接口功能( SPI, I2CCAN等),还有一个硬内核的动态内存控制器,所有这些组件都利用大量传统的可编程构造和大量的通用输入输出( GPIO)引脚进行了性能增强。

数据存储以及配置方式

在 FPGA 内部存在着存储单元片内 RAM 块,数据是存放在 RAM 中并由其来设置工作状态的,若想要 FPGA 进行工作,就需要对片内 RAM 进行编程。而如果外部有大量数据交互时,就要通过增加外设来对数据进行暂时性的存储,如 SDRAM 存储器或者 DDR3 存储器,暂存在外设中的数据最终也是要通过 FPGA 内部的 RAM 进行存储与处理。当在 EDA 工具上将程序设计完成之后,便需要将软件上的程序烧录进 FPGA 内部。通过不同的配置模式, FPGA 便会有不同的编程方式。

常用的几种配置模式:

并行模式:通过并行 PROM(Programmable read-only memory,可编程只读存储器)、 Flash (Macromedia Flash。多媒体软件平台)配置 FPGA;

主从模式:使用一片 PROM 配置多片 FPGA;

串行模式:串行 PROM 配置 FPGA;

外设模式:将 FPGA 作为微处理器的外设,由微处理器对其编程。

目前, 主流的 FPGA 都是基于 SRAM (Static Random-Access Memory,静态随机存取存储器)工艺的, 在大部分的 FPGA 开发板上,使用的都是串行配置模式。由于 SRAM 掉电就会丢失内部数据,因此往往都会外接一个能够掉电保存数据的片外存储器以保存程序。这样一来, 上电时 FPGA 便将外部存储器中的数据读入片内 RAM 以完成配置, 对 FPGA 编程完成后便进入工作状态;掉电后 FPGA 内部 SRAM 中存储的数据丢失,逻辑清零。以这种方式配置 FPGA 不仅能反复使用,还无需重复的手动配置。完成一次主动配置之后每次上电便会自动的实现 FPGA 的内部编程。

————————————————

版权声明:本文为CSDN博主「原来如此呀」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Royalic/article/details/120979987



欢迎关注至芯科技

至芯官网 在线课程

              

   

               

技术论坛 初级课程







精彩推荐



至芯科技12年不忘初心、再度起航11月12日北京中心FPGA工程师就业班开课、线上线下多维教学、欢迎咨询!
SPI总线的特点、工作方式及常见错误解答
如何提高FPGA的工作频率
扫码加微信邀请您加入FPGA学习交流群




欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!


原文标题:FPGA基础知识

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

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

    关注

    1665

    文章

    22573

    浏览量

    640871

原文标题:FPGA基础知识

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    TCP三次握手和四次挥手的基础知识

    TCP 三次握手和四次挥手是网络基础知识中的基础,面试时能背出来的人很多,但真正遇到生产环境问题需要排查时,很多人就傻眼了。比如:连接建立后客户端马上断开是怎么回事?为什么 TIME_WAIT 状态的连接这么多?服务端为什么会产生大量 CLOSE_WAIT?RST 报文什么时候会出现?
    的头像 发表于 05-25 11:02 336次阅读

    【黑金云课堂笔记】第一~二期知识点总结

    知识卡片一:【FPGA 基础篇】开启硬件编程之门 FPGA 的本质 : FPGA(现场可编程门阵列)并非在运行软件程序,而是在 构建电路本身 。用户可以通过 Verilog/VHDL
    的头像 发表于 04-01 16:10 279次阅读

    labview编程及基础知识分享

    最近建了一个公众号,本人会在上面进行labview编程知识的分享,欢迎大家关注;公众号叫:上位机知识分享LABVIEW
    发表于 02-13 10:08

    阻燃系列基础知识

    我很荣幸有机会在这里与大家分享我对阻燃系列基础知识的研究。今天,我们将探讨的主题是“阻燃系列基础知识”。在我们日常生活中,火灾事故频发,造成巨大的财产损失和人员伤亡。因此,了解阻燃材料的基础知识对于
    的头像 发表于 02-06 08:07 744次阅读
    阻燃系列<b class='flag-5'>基础知识</b>

    电阻的基础知识

    电阻与电容、电感一样都是最基本的元器件,大量使用于各种电气或电子设备中。对从事电气工作的人而言或许过于普通,平时忽视了它,但如果没有电阻,电气或电子电路就无法建立。电阻就是如此重要的元器件。 电阻的作用 电阻是具有一定电阻的被动元器件。电阻的作用是基于欧姆定律“电压(V)=电流(I)×电阻(R)”。 主要作用是电流控制、分压、电流检测和偏置(提供偏压)这4项。【电流控制】 电阻可以将电子电路的电流控制在额定值以下。譬如LED电路,通过与LED串联连接电阻,将电流控制在额定值以下,就可以防止LED烧坏。【分压(分配电压)】 串联连接2个以上的电阻时,就可分配为与所连接的电阻值成正比的任意电压【电流检测】 电流流向电阻时,其两端会产生由电流转换的电压。 电压可以测量流向电路的电流。【偏置(提供偏压)】 施加电压使诸如三极管的半导体工作称为“偏置”。 该偏置(偏压)需要对三极管的各端子(发射极、集电极、基极)施加不同的电压。 【阻尼电阻】 常用于LC谐振电路或与电感/电容并联,通过消耗不必要的振动能量,使系统输出快速平稳, 避免过冲和振铃。 【终端电阻】 用于传输线(如高速数字线、同轴电缆)的末端,其阻值等于传输线特性阻抗。能吸收到达末端的信号能量,防止信号反射造成波形失真和数据错误。【上拉/下拉电阻】 上拉电阻:将不确定或高阻抗的节点(如按键断开时的MCU引脚)通过电阻连接到高电平(如Vcc),使其保持稳定的高电平。 下拉电阻:将节点通过电阻连接到低电平(如GND),使其保持稳定的低电平。电阻的原理 电阻的数值取决于电阻材料的电阻率及其截面积和长度 如公式所示,电阻率ρ(Ω·cm)乘以电阻体的长度L所得的数值除以截面积S后就得到电阻值。这里给出金属的电阻率,可供参考。 电阻的术语 电阻具有表示技术规格和额定值的参数。这里对它们的术语进行了归纳。用粗体字表示的4项,是电阻的基本参数。电阻的结构 电阻的选定 设计中电阻的选定,必须选择符合电路基板的尺寸要求和安装方法、所具备的性能等多项要求事项的电阻。 近年来表面安装愈来愈多,但是必须根据电路规模或规格来选择引线插入和螺丝固定等电阻。基本上要以整个电路基板的安装规格为前提进行研究,理想的做法是安装到1种基板上的方法为1种。
    发表于 01-07 14:36

    嵌入式基础知识-系统调度

    恢复任务的优先级高于正在运行任务的优先级,则会发生任务切换,将该任务将再次转换任务状态,由就绪态变成运行态。 5、总结 本篇介绍了系统调度的基础知识,包括进程的三种基本状态,进程切换,AUTOSAR与RTOS的任务切换基础知识
    发表于 12-16 08:15

    无刷电机驱动器的基础知识

    本文将从技术角度出发,对三相无刷电机的电机驱动器的作用、种类和规格进行介绍。通过本文,您可以学习到电机驱动器选型所需的基础知识
    的头像 发表于 12-10 14:13 7038次阅读
    无刷电机驱动器的<b class='flag-5'>基础知识</b>

    Linux驱动开发的必备知识

    内核基础知识: 1、熟悉 Linux 内核的架构、模块系统、进程管理、内存管理等。 了解内核的编译和加载过程。 2、C编程技能: 精通 C 语言编程,包括指针操作、内存管理、结构体等
    发表于 12-04 07:58

    RK 平台 Vendor Storage 开发指南:基础知识、流程与实用技巧

    备可靠性校验、掉电恢复等关键特性,是保障设备身份标识、功能授权等核心信息安全的重要组件。本文将从基础知识、开发流程、使用途径三方面,为开发者梳理完整的开发逻辑。 一、核心基础知识:了解 Vendor Storage 是什么? 1. 核心定位与核心特性 Vendor Sto
    的头像 发表于 11-22 07:11 1451次阅读
    RK 平台 Vendor Storage 开发指南:<b class='flag-5'>基础知识</b>、流程与实用技巧

    嵌入式与FPGA的区别

    ,现在招聘的岗位虽然越来越多,但需要本科以上理工类相关专业才行,而大厂更是要985/211的相关专业的硕士,因此fpga的门槛很高,可替代性差; 如果是嵌入式与FPGA要选一个,个人是比较建议嵌入式的。但具体要选哪个,更多还是看个人喜好还有
    发表于 11-20 07:12

    如何使用FPGA实现SRIO通信协议

    泛应用。文章重点解释了回环测试的基本概念,这种方法可验证FPGA中的SRIO接口功能的正确性,并提供了系统级测试验证的相关知识。同时,本例程还涵盖了Verilog语法、FPGA架构、SRIO协议细节、调试技巧及SRIO在多种应用
    的头像 发表于 11-12 14:38 6197次阅读
    如何使用<b class='flag-5'>FPGA</b>实现SRIO通信协议

    视觉工程师必须知道的工业相机基础知识

    工业相机基础知识概述。
    的头像 发表于 09-19 17:04 1821次阅读
    视觉工程师必须知道的工业相机<b class='flag-5'>基础知识</b>

    工业化超声波清洗设备的基础知识:原理、优势与应用

    工业化超声波清洗设备的基础知识:原理、优势与应用工业化超声波清洗设备在现代制造业中扮演着重要的角色,它们利用超声波技术来进行高效的零件和产品清洁。本文将深入探讨这些设备的基本原理、它们的优势以及广泛
    的头像 发表于 06-10 15:55 1102次阅读
    工业化超声波清洗设备的<b class='flag-5'>基础知识</b>:原理、优势与应用

    以太网入门:从零开始,掌握以太网基础知识

    以太网作为现代通信技术的基石,其重要性不言而喻。无论是日常网络应用,还是AI对高速大带宽网络的需求,以太网都扮演着不可或缺的角色。本文将从零开始,带您了解以太网的基础知识,帮助您快速入门。什么是以
    的头像 发表于 06-09 14:00 4117次阅读
    以太网入门:从零开始,掌握以太网<b class='flag-5'>基础知识</b>!

    CMOS超大规模集成电路制造工艺流程的基础知识

    本节将介绍 CMOS 超大规模集成电路制造工艺流程的基础知识,重点将放在工艺流程的概要和不同工艺步骤对器件及电路性能的影响上。
    的头像 发表于 06-04 15:01 3218次阅读
    CMOS超大规模集成电路制造工艺流程的<b class='flag-5'>基础知识</b>