FPGA基础知识,应用,ASIC、ASSP区别(四)
一、ASIC与ASSP区别?
专用应用集成电路( ASIC) 是一种由电子组件组成的集成电路,例如 :晶体管、电容器、电阻器等,这些组件被植入到晶元上 ;晶元由硅或其他半导体材料组成,并可按照特定用途定制。话音记录器和高频比特币矿机都是 ASIC。多年来,集成电路的组件体积已经缩小,这意味着在相同空间的情况下,可制成复杂度更高的电路。由于组件体积的缩小,现在有些 ASIC 足够容纳多个微处理器以及其他复杂的子系统。
专用应用标准产品( ASSP) 则是专门针对特定应用市场的集成电路,可以销售给不止一个用户(因此才被称为“标准”),而 ASIC的设计和销售只针对单个客户。许多智能手机和平板电脑在核心位置安装的微控制器和系统芯片都是 ASSP。ASIC 和 ASSP 都是针对特定功能设计的。由于配置的严格控制,ASIC 和 ASSP 体积非常紧凑、成本低廉、速度快、功耗低,这些都是电子设计非常需要的特征。由于它们的功能在制造时已是硬连接,因此即便只是修改一小部分电路的功能,也并不容易。事实上,由于它们的电路永久性地植入到硅晶元上,因此您根本无法把它拆开,再换成其他线路。如果您需要修改已设计好的内容,只能放弃整个芯片,然后从头再来。
在FPGA的运算比在专用标准产品(ASSP)的微处理器更加简单快速和节能。
二、FPGA与ASIC区别?
(成本与灵活性)FPGA能够执行 ASIC 能够执行的任何逻辑功能。FPGA 的独特优势在于芯片制造完成之后,还能更新芯片功能,这在许多应用都是理想需求。FPGA 比 ASIC 更具成本效益,这是因为能够按照自身需求对 FPGA 进行编程。
(设计时间风险的降低与速度)现在最快的 FPGA 已经能够直接与上一代 ASIC 竞争。另外, FPGA 不仅降低了设计工作量,而且极大减少了风险。使用 FPGA 将缩短您的设计时间,降低发生设计错误的风险,并且总体拥有成本低于 ASIC。对于多数应用而言, FPGA 的功耗将能满足您的需要。
三、异构计算与平行计算?
计算架构的转变 :从多核CPU 转向异构计算。所谓“异构计算”,是指使用不止一个类型的处理器,实现一个具有专业处理能力的系统。例如,图形渲染系统就是一个异构计算系统,该系统使用 CPU 和 GPC(图形处理单元)在计算机上渲染三维图形。 GPU 尤其擅长渲染三维场景,以及在数学意义上,对大型数据集执行密集计算。 CPU 在后台工作,可以执行操作系统任务和数据联网任务。随着系统的整合,异构计算系统越来越标准化,并且必须包含几种不同的处理器架构。
平行计算是计算机具有的同时执行多个计算的能力,其原理是将大问题拆分成小问题,然后同时解决(即“平行计算”)。平行计算有多种形式 :比特级、指令级、数据及任务等。平行计算已不再局限于高性能计算,平行计算已成为计算机架构的主要范式,并且大都以多核处理器形式出现。“数据平行”,是将数据分散给多个处理器,这样就可平行执行。多核处理器的做法往往是:将一个程序的多个实例“分包”给各个处理器,以同时执行这些指令。所谓“任务平行”,是由一个处理器将计算机的代码块(线程)“分包”给不同处理器,以平行执行这些代码块。
四、FPGA应用?
(一)单设备电动控制器
多数电机控制系统都采用微控制器技术设计。然而,微控制器却不能满足复杂电机控制算法的性能需求,例如 :直接转矩控制( DTC)或无传感器磁场定向控制( SFOC)。过去,曾经使用数字信号处理器( DSP)克服这个问题,但当涉及高性能时,其成本效益通常无法与 FPGA 匹敌。可使用 FPGA 片上系统插入一个电机控制模块,该模块有两个独立控制的直流电机,以及一个简单的光反馈系统。 FPGA片上系统包含一个管理反馈信息和控制信号的内嵌处理器,这样两台电机可独立运动。该处理器读取反馈系统提供的数据,并且执行相关算法,实现两台电机之间的运动同步和转速控制。通过使用 FPGA 片上系统,您可搭建自己的 IP 组件,该 IP 组件定制方便,可在其他电机控件上运行。
(二)视频传输
电视广播站采用串行数字接口( SDI)标准,在 75 欧姆同轴电缆(与有线电视 / 卫星电视接收器和电视之间的电缆相同)上传输无压缩数字视频。每次视频图像质量改进,该标准都要扩容。最新标准被称为“ 3-Gbps (3G)-SDI”,能够在演播室内传输 4KultraHD 信号。伴随着这些变化, FPGA 也迎来另一个闪光点!FPGA 解决方案提供核心收发器,能够在同一台收发器上,兼容所有三种 SDI 速率( SD SDI、 HD SDI 以及 3G-SDI)。新的数字技术可帮助剪辑视频流、改进或修正画量,以及压缩图像,以供电缆或卫星线路传输。最新的压缩标准 H.265(也被称为“高效视频编解码标准”)极大减少了影视节目的编码位数。但是,该标准需要海量计算。许多设备供应商都发现,一边要把功能打包到一个片上系统,一边又要解决快速发展造成的压力⸺二种需求的再次组合, FPGA 是最佳解决方案。
(三)无线技术
许多 FPGA 都配备内嵌式低延时高级网络 IP 组件和产能强化工具,使得制造商能够利用 FPGA 的性能、功率、价格和产能优势,把精力主要放在产品差异化上,而不是对无线设施基本组件的机械式编程。
(四)自动驾驶辅助摄像头
前向摄像头系统由高速视频处理系统、复杂的传感器融合系统以及实时数据分析系统组成 ;当发生驾驶员打瞌睡或偏道等情况时,该系统可使车辆执行修正措施。前向摄像头结合了雷达和激光传感器等各类传感器实际功用。不需要 DSP 或微控制器,您可将整个摄像系统整合到一个单独的、低成本的 FPGA 片上系统。您可使用FPGA 逻辑开发硬件平行处理引擎,以及综合运用 FPGA 片上系统硬处理器系统的软件算法,以此提高系统性能。
(五)高性能计算
在高性能计算里,浮点是数字表示法,用一系列数字或数位表示真实数字。应用程序需要浮点数据类型,以获得比整数计算更为精确的计算结果。浮点运算需要更多的处理器逻辑,因此也需要更多能力。常见的浮点应用包括 :
快速傅里叶变换( FFT)
✓ 雷达
✓ 生物科学
✓ 有限冲击响应滤波器( FIR)
✓ 金融期权交易
✓ 矩阵数学(在三维图形和图像处理上广泛使用)
✓ 分子动力学
✓ 地震成像和医学成像
“协处理器”是用于补充主处理器或中央处理器( CPU)的计算机处理器。协处理器通常被用于执行浮点计算、信号处理、字符串处理、编码或与外围设备的 I/O 接口。协处理器负责密集型运算,从而解放了 CPU,使 CPU 能够专注于计算机的核心功能。
注:本文来源整理自《现场可编程门阵列FPGA for dummies》英特尔专版。
FPGA基础知识,应用,ASIC、ASSP区别(四)相关推荐
- 初学者必须要知道的FPGA基础知识
初学者必须要知道的FPGA基础知识 一.FPGA是什么? 在<FPGA至简设计原理与应用>一书里是这样描述的:『FPGA的全称为Field-Programmable Gate Array, ...
- 秋招知识点总结-FPGA基础知识
1.典型FPGA的开发流程 (1)电路设计 (2)设计输出 (3)功能仿真 (4)综合优化 (5)综合后仿真 (6)布局布线 (7)时序仿真 (8)板级调试 (9)芯片编程与调试 2.FPGA内部资源 ...
- FPGA基础知识|芯片设计基础知识
FPGA 基础知识 可查看原文:FPGA基础知识 1.查找表 LUT 和编程方式第一部分: 查找表 LUT FPGA 是在 PAL.GAL.EPLD.CPLD 等可编程器件的基础上进一步发展的产物.它 ...
- FPGA基础知识极简教程(7)详解亚稳态与跨时钟域传输
博文目录 写在前面 正文 FPGA或ASIC中的传播延迟 建立和保持时间是什么? 建立和保持时间与传播延迟和时钟频率有何关系? 如果违反建立和保持时间会发生什么? FPGA中的亚稳定是什么? 亚稳态何 ...
- FPGA基础知识极简教程(4)从FIFO设计讲起之异步FIFO篇
博文目录 写在前面 正文 同步FIFO回顾 $clog2()系统函数使用 综合属性控制资源使用 异步FIFO设计 FIFO用途回顾 异步FIFO原理回顾 异步FIFO设计 异步FIFO仿真 参考资料 ...
- FPGA基础知识极简教程(10)二进制到BCD转换算法
文章目录 写在前面 正文 快速认识 实现方式一 实现方式二 写在最后 写在前面 FPGA基础知识极简教程(9)讲到了七段数码管的显示Verilog设计,我们都知道,要在数码管上显示的数字,使用BCD编 ...
- 详解服务器异构计算FPGA基础知识
随着云计算,大数据和人工智能技术应用,单靠CPU已经无法满足各行各业的算力需求.海量数据分析.机器学习和边缘计算等场景需要计算架构多样化,需要不同的处理器架构和GPU,NPU和FPGA等异构计算技术协 ...
- FPGA基础知识极简教程(1)从布尔代数到触发器
博文目录 写在前面 正文 初学者数字设计 什么是FPGA? 什么是ASIC? 数字设计师如何使用布尔代数? 使用查找表(LUT)在FPGA内部执行布尔代数 触发器如何在FPGA中工作? 参考资料 交个 ...
- FPGA基础知识极简教程(9)七段数码管显示的Verilog简单设计
博文目录 写在前面 正文 七段数码管原理 七段数码管译码表 单个七段数码管显示verilog设计 多个数码管动态扫描显示 参考资料 交个朋友 写在前面 作为FPGA的基础知识教程怎么能少得了这个简单的 ...
最新文章
- HDU-1042 N! 大数乘法 (C语言)
- XP/Vista 彻底休矣!Firefox 浏览器放弃支持
- 转:SUSE下与RHEL下yum相似的RPM包管理工具zypper
- 使用SAP iRPA创建一个最简单的hello world项目并部署到SAP云平台上
- SpringMVC学习记录--Validator验证分析
- layui父页面调用子页面的渲染_layUI ajax加载html页面后重新渲染的方法
- node 常用的一些终端的命令的快捷键
- 能够让机器狗学会灭火, ModelArts3.0让AI离我们又近一步
- 史上最全Java集合关系图
- 119. PHP 性能问题(2)
- 输出ipv4,ipv6特定段的所有地址,ipv6地址转换成网络字节序
- RN 开发遇到的问题之传参函数错误Invariant Violation: Maximum update depth exceeded.
- VB.NET数据库中插入数据
- 数据库时间相减_sql中两个时间类型相减得到的值
- ps界面为啥突然变大了_【新手必看】使用PS绘画需要学会哪些基本操作?
- 有什么适合小团队的协作工具?
- 网易 Duilib:功能全面的开源桌面 UI 开发框架
- 巧妙的通过二维码在手机和电脑传递小量数据
- 阿里内核月报2014年12月
- 基于微信小程序的垃圾分类小程序(源码已开源)