玩转Zynq可以使用Vivado创建一个FPGA工程。

什么是FPGA

FPGA(Field Programmable Gate Array)是在PAL (可编程阵列逻辑)、GAL(通用阵列逻辑)等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

前言

自FPGA诞生以来,FPGA(现场可编程门阵列)就引起了人们的关注。在1980年代中期,Ross Freeman和他的同事从Zilog购买了该技术,并创建了Xilinx,目标是ASIC仿真和教育市场。同时Altera以类似技术为核心成立。

直至今日,AMD 350亿美元(约2230亿人民币)收购赛灵思(Xilinx)则马上就要大功告成。原计划2021年底获得所有批准,但目前尚未完成,预计2022年第一季度完成交易。而早在2015年因特尔便宣布以167亿美元收购Altera。

Xilinx与Altera这两家公司共占有近90%的市场份额,专利达到6000余项之多,如此之多的技术专利构成的技术壁垒高不可攀。而Xilinx始终保持着全球FPGA的霸主地位,难以撼动!

一、FPGA是什么?

FPGA到底是什么?简单来说,就是一块可由工程师反复编程的逻辑器件,本体是一种数字集成电路,一个可以通过编程来改变内部结构的芯片。

FPGA本质也是一种芯片。

相信电子专业的同学都知道ASIC,也就是专用集成电路,ASIC一旦被设计好,其固定结构已经成型,后期将无法更改。而FPGA正是可以通过编程来改变内部结构,可以对后期的升级带来极大的便利。同样具备编程特点的器件如ARM、DSP等,这两者都是串行执行的,大家熟悉的有51单片机,stm32单片机都是串行执行。而FPGA最本质的特点就是为硬件而设计,我们对其编程改变的是其内部结构。并且FPGA是并行执行,FPGA的最大优势就在于其并行计算的特性。

二、FPGA基本结构

FPGA芯片主要由6部分完成,分别为:可编程输入输出单元、基本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和内嵌专用硬件模块。

1、可编程逻辑块

可编程构造表现为可编程逻辑块阵列,每个可编程模块都包含有许多数字功能,如查找表(LUT)、复用器、触发器。触发器可以被配置(编程)为寄存器或锁存器;复用器可以被配置为选择一个到逻辑块的输入或LUT的输出;LUT可以被配置为代表任何所要求的逻辑功能。

2、可编程输入/输出单元IOE

Altera器件IOE结构

Altera器件的输入输出结构:可配置成三态、输入/输出、双向IO

Altera器件中cyclone系列中的IOE结构是基本的输入、输出、使能的触发器结构。

3、嵌入式块RAM(BRAM)

大多数FPGA都具有内嵌的块RAM,这大大拓展了FPGA的应用范围和灵活性。块RAM可被配置为单端口RAM、双端口RAM、内容地址存储器(CAM)以及FIFO等常用存储结构。

FPGA 芯片内有两种存储器资源:一种叫 block ram, 另一种是由 LUT 配置成的内部存储器(也就是分布式 ram )。 Block ram 由一定数量固定大小的存储块构成的,使用 BLOCK RAM 资源不占用额外的逻辑资源,并且速度快。但是使用的时候消耗的 BLOCK RAM 资源是其块大小的整数倍。

4、底层内嵌功能单元

内嵌功能模块主要是指DLL(Delay Locked Loop)、PLL(Phase Locked Loop)、DSP和CPU等软处理核

除此之外,FPGA内部还集成了一些其它资源:(1)FPGA片上存储器、(2)乘法累积模块,(3)片外存储器控制器,(4)高速串行收发器。

三、FPGA的应用

FPGA在数据采集和接口逻辑领域、电平接口领域、高性能数字信号处理领域都有着广泛的应用。

另外FPGA在人工智能时代也具有独特优势。FPGA可以做人脸识别、车牌识别、深度学习等前沿技术。

总结

FPGA偏硬件,用语言(verilog)或者图形(vhdl)描述硬件电路,适合做底层通信时快速的硬协议。个人感觉,今后国家的大趋势应该是恶补底层建筑,应用范围比较广。而且自学难度大,适合投入整个本科或研究生阶段去学。

FPGA在嵌入式领域的应用,只是FPGA广阔应用中很小的一部分。作为一名学生,FPGA更多的是作为载体,用来帮助你来学习和理解更多专业知识,并且提高自己的动手能力和技术水平。从这个角度来看,FPGA和MCU、DSP什么的并没有本质区别。

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

https://blog.csdn.net/qq_66213716/article/details/122363458

https://blog.csdn.net/qq_45922361/article/details/103628480

FPGA并行计算可编程芯片相关推荐

  1. FPGA控制不其他芯片

    1.1 FPGA控制不其他芯片 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA控制不其他芯片: 5)结束语. 1.1.2 本节引言 "不积跬步,无以至 ...

  2. 《连线》揭秘:可再编程芯片是微软对未来的赌注

    可编程的芯片将主导未来的互联网世界,几大科技巨头都认识到这一点.微软也不例外,这家做了四十年软件的公司,也在向硬件进军,而FPGA成为了微软未来竞争的押注. 那是2012年12月的某一天,Doug B ...

  3. 基于FPGA的音频处理芯片的设计

    基于FPGA的音频处理芯片的设计 时间:2009-01-07 10:00:18 来源:维库电子市场 作者:刘虹 黄涛 徐成 1 引言 随着数字技术日益广泛的应用,以现场可编程门阵列FPGA(Field ...

  4. 【微机原理与接口技术】多功能可编程芯片 与 多功能电饭煲

    多功能可编程芯片,就像你的多功能电饭煲,你点了不同的按键,就启动了不同的工作方式,是熬粥还是做米饭,之后你又得选择压力和时间. 而在芯片上,你得先设置控制字,也就是 先选择工作方式(点击熬粥) 再选择 ...

  5. 基本可编程芯片初始化字8255、8253、8259

    基本可编程芯片 8255初始化控制字 8255初始化控制字 D7 D6 D5 D4 D3 D2 D1 D0 1 A口工作方式 A口输入输出 C口高四位IO B口工作方式 B口IO C口低四位IO 1 ...

  6. 对于Lattice FPGA/CPLD XO2编程,“Flash erase, program, verify, secure”和“Flash erase, program, verify, secu

    向博主本人提问FPGA相关问题 对于XO2编程,"Flash erase, program, verify, secure"和"Flash erase, program, ...

  7. FPGA概念、芯片结构、工作原理、开发流程以及xilinx公司主要可编程芯片

    一.FPGA概念 可编程逻辑器件(Programmable Logic Device,PLD) 专用集成电路(Application Specific Integrated Circuit,ASIC) ...

  8. 图形学大神纯FPGA实现Doom游戏芯片,无CPU、无操作码、无指令计数器

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作分享,不代表本公众号立场,侵权联系删除 转载于:机器之心 AI博士笔记系列推荐 周志华<机器学习>手 ...

  9. 简谈CPU、MCU、FPGA、SoC这些芯片异同之处

    既然已经梳理了两大类(微处理器,专用集成电路)芯片的概念和原理,接下来就了解一下常见的芯片 MCU 日常生活中最常见得到的微处理器系统就是我们身边的微型计算机,也就是个人电脑(Personal Com ...

最新文章

  1. QQ群功能设计与心理学
  2. 拿下中科大的计算机课程全靠它了!
  3. 【2020年3月】自然语言处理最新论文速递
  4. 【Paper】2020_含时延约束的多智能体系统二分一致性
  5. 用Visual C#开发简单的复合控件
  6. Python基础入门_3条件语句和迭代循环
  7. mysql in 保持顺序_IN条件结果顺序问题_MySQL
  8. label mpchart 饼图_运用matplotlib绘制折线图、散点图、饼图、柱形图的定义代码以及案例详解...
  9. 【sklearn第四讲】数据集变换
  10. 团队作业4——beta阶段冲刺4
  11. mhvtl虚拟磁带库(提供软件包)
  12. Eclipse配置JRE库
  13. spss26没有典型相关性分析_SPSS执行典型相关性分析,出现下面错误,怎么回事??...
  14. C++多线程03 Lambda表达式与caII once
  15. 为什么说程序员的前三年不要太看重工资水平?
  16. 如何自己制作图标文件
  17. html如何制作图片平移的效果,抖音里单张图片平移视频怎么制作?影音制作实现一张图片从左到右滑动视频效果...
  18. vb外部调用autocad_VB调用AutoCAD.ppt
  19. jarsigner签名APK完整步骤
  20. MySQL表中的联合查询

热门文章

  1. linux lsof命令和ps的,Linux 中lsof 命令的使用
  2. C++ Reference: Standard C++ Library reference: C Library: cstdio: FILE
  3. Oracle知识点总结(三)
  4. MySQL主从同步的原理
  5. 输入【ionic start myApp tabs】命令创建项目时失败
  6. 计算机工作功率,电脑功率(电脑一天要用多少电)
  7. C# DataGridView设置行高度自动调整,以及行单元格自动换行
  8. unsigned long long 与 long long
  9. PHP通过api上传图片
  10. 绿色数据中心空调设计 书评_书评:响应式设计工作流程