Intel的FPGA和SoCs FPGA进行设计和开发

fpga 选件高级概述
市场上有许多不同类型的 fpga,每种类型都有不同的功能和特性组合。可编程结构是任何 fpga 的核心,它以可编程逻辑块阵列的形式呈现,也称为逻辑元件 (le)(图 1(a))。fpga 结构可进一步扩展,以包括 sram 块(称为块 ram (bram))、锁相环 (pll) 和时钟管理器之类的东西(图 1(b))。此外,还可以添加数字信号处理 (dsp) 块(称为 dsp 切片)和高速串行器/解串器 (serdes)(图 1(c))。
图 1:最简单的 fpga 仅包含可编程结构和可配置通用 io (gpio) (a);不同架构是在此基本结构上增加其他元件而形成:sram 块、pll 和时钟管理器 (b);dsp 块和 serdes 接口 (c);以及硬处理器内核和外设 (d)。(图片来源:max maxfield)
外设接口功能(如 can、i2c、spi、uart 和 usb)可以实现为可编程结构中的软内核,但许多 fpga 将其作为硬内核在硅片中实现。同样,微处理器也可以实现为可编程结构中的软内核,或作为硬内核在硅片中实现(图 1(d))。具有硬处理器内核的 fpga 称为片上系统 (soc) fpga。不同 fpga 针对不同的市场和应用提供不同的功能、特性和容量集合。
fpga 供应商有很多,包括 intel(收购了 altera)、efinix、lattice semiconductor、microchip technology(收购了 atmel 和 microsemi),以及 xilinx。
所有这些供应商都提供多个 fpga 系列:有的提供 soc fpga,有的提供面向人工智能 (ai) 和机器学习 (ml) 应用的器件,有的则提供适用于航天应用的耐辐射器件。由于产品系列众多,每个系列提供不同的资源,因此为眼前的任务选择最佳器件可能很棘手。
intel fpga 和 soc fpga 介绍
intel 提供各种各样的可编程器件产品,性能和功能从中等到极高都有,并涵盖传统 fpga 到 soc fpga(即,将 fpga 可编程结构和一种或多种强化处理器内核结合在一起的器件)。
intel 的产品系列当前有五个主动 fpga 系列,包括 max 10、cyclone 10,和 arria 10(图 2)。intel 还提供极高端的 stratix 10 及其更新的最先进 agilex 器件。
图 2:在 intel 的五个 fpga 系列中,其中三个(从成本最低 (max 10) 到最高容量及性能 (arria 10))的目标应用和市场覆盖从板卡管理和 i/o 扩展,一直到嵌入式视觉和军事/国防。stratix 10 和更新的 agilex 器件进一步提升了性能。(图片来源:max maxfield)
intel 的 max 10 fpga 集成片载 nor 闪存,以提供 fpga 配置。其他产品系列有基于 sram 的配置单元,并且会在上电时从板载外部存储器件或系统的其他位置(如在外部处理器的控制之下)加载配置。除 max 10 系列以外,所有其他 intel fpga 系列都可作为 fpga 或 soc fpga 的形式提供,并与强化微处理器系统集成。
max 10 fpga 的集成功能包括模数转换器 (adc) 和双通道配置闪存,后者可提供在单个芯片上存储与动态切换两张图像的功能。max 10 fpga 还具有 nios ii 软核心处理器支持、dsp 块和软双倍数据速率 3 (ddr3) 存储控制器。
max 10 产品组合中的代表性器件是 10m16scu169i7p。该产品具有 16,000 个逻辑单元和 130 个输入/输出 (i/o),而且总 ram 位数为 562,176。intel 的 ek-10m08e144 是适用于 max 10 的评估板,另一个是 hinjkit,这是 alorium technology, llc 的 fpga 物联网传感器集线器开发套件(图 3)。尤其值得关注的是,hinjkit 的 max 10 fpga 包括 alorium technology 的 avr 兼容 8 位微控制器,使 hinjkit 能与 arduino ide 配合使用。该板还可为第三方物联网载板、模块和配件提供高度的接口灵活性。
intel 的 cyclone 10 gx fpga 提供 12.5 gb 基于收发器的功能、1.4 gbit/s 低压差分信号 (lvds),以及适用于最高 1,866 mbits/s 数据速率的高达 72 位宽 ddr3 sdram 接口。cyclone 10 gx fpga 针对机器视觉、视频连接和智能视觉相机等高带宽性能应用进行了优化。
与之相比,cyclone 10 lp fpga 则针对低静态功耗、低成本应用进行了优化,例如 i/o 扩展、传感器融合、电机/运动控制、芯片到芯片桥接以及控制应用。gx 和 lp 器件系列都支持垂直迁移,使设计人员从一个器件开始着手设计,然后在未来迁移到相邻密度。
cyclone 10 产品组合中的代表性器件是 10cl006yu256a7g。该产品具有 6,272 个逻辑单元和 176 个 i/o,而且总 ram 位数为 276,480。相关的开发和评估板及模块还有很多,包括 p0496 de10-nano cyclone v se soc 套件(图 4)、p0553 tsom cyclone v se 评估板(也基于 cyclone v soc fpga)和 p0581 tsom cyclone v se fpga 评估板,它们都是 terasic inc 的产品。(注意,这些板上的 cyclone v fpga 是 cyclone 10 系列的较早期产品。)
arria 10 器件基于 tsmc 的 20 纳米 (nm) 工艺技术,将双核 arm cortex-a9 mpcore 硬处理器系统 (hps) 与可编程结构组合在一起,该结构还包括强化浮点 dsp 块。arria 10 还装载了嵌入式高速收发器、硬存储控制器,以及协议知识产权 (ip) 控制器,全都包含在单个高度集成的封装中。
arria 10 产品组合中的代表性器件是 10ax022c4u19e3sg。该产品具有 220,000 个逻辑单元和 240 个 i/o,而且总 ram 位数为 13,752,320。intel 的 dk-dev-10ax115s-a arria 10 gx fpga 评估板(图 5)是开发此 fpga 的合适平台。该板让设计人员能够开发与测试基于 arria 10 的 pci express (pcie) 3.0 设计;开发与测试由 ddr4、ddr3、qdr iv 和 rldram iii 存储器组成的存储器子系统;并且通过使用 fpga 夹层卡 (fmc) 连接器连接到由 intel 合作伙伴提供的 fmc 夹层卡,来开发模块化的可扩展设计。
intel 的 stratix 10 fpga 和 soc fpga 采用 intel hyperflex fpga 架构。此器件产品线中的 fpga 可应对高吞吐量系统的需求,其具有最高 10 tflops 的浮点性能,并支持从 28.3 gbits/s (gx) 到 57.8 gbits/s 收发器,后者在最多 144 个收发器通道中,能够满足 5g 通信、云计算、网络虚拟化和光纤传输网络的带宽要求。产品变体包括 pcie gen4 接口,最高能以每秒传输 16 gb 的速度 (gt/s) 提供 x16 配置,以及一种可支持特定 intel optane dc 永久性存储器的全新存储控制器。
intel 的 dk-dev-1sgx-l-a stratix 10 gx fpga 评估板(图 6)支持利用 stratix 10 产品线进行开发。该板让设计人员能够开发与测试基于 stratix 10 的 pci express (pcie) 3.0 设计;开发与测试由 ddr4、ddr3、qdr iv 和 rldram iii 存储器组成的存储器子系统;并且通过使用 fpga 夹层卡 (fmc) 连接器连接到同样由 intel 合作伙伴提供的 fmc 夹层卡,开发模块化的可扩展设计。
使用 intel 的 fpga 和 socs fpga 进行设计和开发
在本 fpga 系列文章的第 1 部分中,我们指出这些器件的传统设计方法是让工程师使用 verilog 或 vhdl 等硬件描述语言 (hdl),在抽象级别(即寄存器传送级 [rtl])上捕获设计意图。首先可以对这些 rtl 描述进行仿真,以验证其是否符合要求,然后将其传送给综合工具,生成用于对 fpga 进行配置(编程)的配置文件。
抽象的下一步是捕获设计意图,主要是使用 c/c++ 之类的编程语言或 systemc 这样的特殊实现工具;后者是一组 c++ 类和宏,可提供事件驱动的仿真接口。这些方法有助于并发进程的仿真,每个进程都使用简单的 c++ 语法进行描述。对于此类描述,可以通过像常规程序一样运行来进行分析和配置,然后传递给高级综合 (hls) 引擎,由该引擎输出 rtl,而 rtl 会传输至常规综合引擎。
open cl(开放运算语言)在概念上更加抽象,该框架适用于编写可跨异构平台执行的程序。除了 fpga,这些平台还包括中央处理单元 (cpu)、图形处理单元 (gpu)、数字信号处理器 (dsp),以及其他处理器或硬件加速器。opencl 指定用于为这些器件进行编程的编程语言(基于 c99 和 c++11),并且指定应用程序编程接口 (api),以对平台进行控制并在运算设备上执行程序。
对于 intel fpga 和 soc fpga,用户使用 intel 的 quartus prime 设计软件为所有产品系列开发设计。该软件分为三个版本:quartus prime pro edition、quartus prime standard edition 和 quartus prime lite edition。pro 和 standard edition 需要付费许可证,而 lite edition 可供免费下载。
pro edition 经过优化,可借助 agilex、stratix 10、arria 10 和 cyclone 10 gx 器件系列支持下一代 fpga 和 soc fpga 中的高级功能;standard edition 广泛支持 cyclone 10 lp 器件系列及其他更早期的器件系列;而 lite edition 可免费下载而无需许可证文件,为大容量器件系列提供理想的切入点。
intel 提供各式各样的其他设计工具和资源,包括 intel dsp builder、intel 高级综合 (hls) 编译器,以及 intel fpga sdk for opencl。
intel distribution of the openvino toolkit 也非常实用,可帮助开发人员构建人工智能 (ai)、计算机视觉、音频、语音和语言应用程序,实现从边缘至云的深度学习推理。除了 fpga,该工具套件还支持使用常见的 api,跨 intel 架构和 ai 加速器(cpu、igpu、intel 的 movidius 视觉处理单元 (vpu) 和 intel 的 gaussian & neural accelerator (gna))异构执行。该工具套件由基于 cyclone v gt fpga 的 openvino 入门套件提供支持。
总结
最佳处理设计解决方案常常是由处理器与 fpga 的组合提供,或由 fpga 单独提供,或以硬处理器内核作为部分结构的 fpga 提供。作为一项技术,fpga 多年来发展迅速,能够满足灵活性、处理速度、功耗等多方面的设计需求,非常适合智能接口、机器视觉和人工智能等众多应用。
intel 提供从低到极高范围、从传统 fpga 到 soc fpga 的可编程器件产品。如上所述,要使用此类器件进行设计,intel 和其他第三方都提供强大的开发套件和工具,以满足硬件开发人员、软件开发人员以及人工智能和计算机视觉系统构建者的需求。

MOSFET的结构和电路符号
苹果造车真的有意义吗
2016年全球手机市场出货量15亿部 整体下滑1.6%
特朗普增加1420亿美元预算,用研发人工智能,量子技术和太空资金
LabVIEW:适合点云平滑的双边滤波器
Intel的FPGA和SoCs FPGA进行设计和开发
大联大诠鼎集团推出基于Qualcomm产品的WiFi 6高速网络路由器方案
美国空军研究实验室资助开发高度集成的多功能射频传感器系统
基于北斗导航芯片和ZigBee的无线终端设计
助推智慧水利发展 中软国际携手苏州高新区打造联控联调水利平台
户外全彩贴片式SMD显示屏的优势及性能参数介绍
康捷登打造更加智能、便捷的家居生态
全球TOP10移动MEMS厂商排名及点评:意法半导体继续领跑
哈工大在人工肌肉领域获得重大突破
华为p50 pro到底搭载什么处理器
五要素一体微型气象站的特点是怎样的
电感器在电路板符号
VR一体机交互设计理论分析
纳米银触控屏可以充分满足折叠手机的弯折需求
关于一种新型电气火灾预警系统-----Acre1-6000