asic

一文最全科普FPGA技术知识

馋奶兔 提交于 2020-04-06 13:55:03
FPGA 是可以先购买再设计的“万能”芯片。FPGA (Field Programmable Gate Array)现场可编程门阵列,是在硅片上预先设计实现的具有可编程特性的集成电路,它能够按照设计人员的需求配置为指定的电路结构,让客户不必依赖由芯片制造商设计和制造的 ASIC 芯片。广泛应用在原型验证、通信、汽车电子、工业控制、航空航天、数据中心等领域。 Altera LUT4 架构 FPGA 硬件三大指标: 制程、门级数及 SERDES 速率,配套 EDA 软件工具同样重要。比较 FPGA 产品可以从技术指标入手。从 FPGA 内部结构来看,主要包括:可编程输入/输出单元(I/O)、可编程逻辑块(LC)、 完整的时钟管理(CMT)、嵌入块式 RAM(BRAM)、布线资源、内嵌的底层功能单元和专用硬件模块等。 根据赛灵思披露的数据,一个 LUT6 等效 1.6 个 LC,一个 LC 对应几十到上百“门”,1000 万门约等于 10 万 LC,即 100K CLB 级别 FPGA。与 ASIC 不同的是,客户在选购 FPGA 产品不仅考虑硬件参数,配套 EDA 软件的性能也同样重要。目前国内厂商高端产品在硬件性能指标上均与赛灵思高端产品有较大差距。 相对于ASIC,FPGA具有3点优势: 1、可编辑,更灵活 2、产品上市时间短,节省了 ASIC 流片周期 3、避免一次性工程费用

FPGA最全科普总结

前提是你 提交于 2020-03-27 08:24:10
FPGA最全科普总结 FPGA 是可以先购买再设计的“万能”芯片。FPGA (Field Programmable Gate Array)现场可编程门阵列,是在硅片上预先设计实现的具有可编程特性的集成电路,它能够按照设计人员的需求配置为指定的电路结构,让客户不必依赖由芯片制造商设计和制造的 ASIC 芯片。广泛应用在原型验证、通信、汽车电子、工业控制、航空航天、数据中心等领域。 Altera LUT4 架构 FPGA 硬件三大指标: 制程、门级数及 SERDES 速率,配套 EDA 软件工具同样重要。比较 FPGA 产品可以从技术指标入手。从 FPGA 内部结构来看,主要包括:可编程输入/输出单元(I/O)、可编程逻辑块(LC)、 完整的时钟管理(CMT)、嵌入块式 RAM(BRAM)、布线资源、内嵌的底层功能单元和专用硬件模块等。 根据赛灵思披露的数据,一个 LUT6 等效 1.6 个 LC,一个 LC 对应几十到上百“门”,1000 万门约等于 10 万 LC,即 100K CLB 级别 FPGA。与 ASIC 不同的是,客户在选购 FPGA 产品不仅考虑硬件参数,配套 EDA 软件的性能也同样重要。目前国内厂商高端产品在硬件性能指标上均与赛灵思高端产品有较大差距。 相对于ASIC,FPGA具有3点优势: 1、可编辑,更灵活 2、产品上市时间短,节省了 ASIC 流片周期 3

FPGA - 数字经济时代的基石

余生长醉 提交于 2020-03-17 03:01:10
原文: http://www.eefocus.com/myspace/blog/show_163943.html ­ 不在研发的第一线工作已经很久了,本想不再对具体的专业技术指手画脚,以免被内行的朋友们贻笑大方,毕竟这世界发展太快了,无论做了多少年的工作,转眼就会落伍。本次CES笔者应Xilinx的邀请参观了一下他们展出来的作品,对“汽车电子”有了比较全面的认识,并结识了两个非常要好的朋友,于是就有了写篇评论的欲望。虽然Xilinx在此次展会上发布的是几款有关“消费电子”和“汽车电子”的产品,已经有新闻稿在本网站发布,但我认为这其实不算什么新闻,Xilinx的FPGA最强大的应用其实是在通信等其它领域,这次只不过是展示了一下跟CES相关的产品应用而已。鉴于FPGA的广泛的用途,我把我本人对FPGA的点滴认识总结一下,与大家交流,也算是了却我多年来对FPGA的一种情节。­ FPGA - 数字经济时代的基石­ 正如我在《科技以人为本 - CES结语》一文中讲的,科技在近20年里发生了翻天覆地的变化,背后的推动主要来自于半导体技术的飞速发展,其中最大的革命是天才的人们通过模数变换,把自然界的一切模拟量变换到数字域,在数字域里用我们5千年来练就的功力 - 数学来描述并处理模拟的世界,在数字逻辑的基础上人们又发明了基于指令的计算、数字信号处理等技术,于是有了我们今天的压缩视频、数字通信

ASIC设计流程

南笙酒味 提交于 2020-02-28 06:01:47
典型的设计流程遵循以下所示的结构,可以分为多个步骤。 这些阶段中的某些阶段并行发生,而某些阶段依次发生。 我们将研究当今行业中典型的项目设计周期的情况。 要求(Requirements) 半导体公司的客户通常是其他一些计划在其系统或最终产品中使用该芯片的公司。 因此,客户的要求在决定如何设计芯片方面也起着重要作用。 自然,第一步将是收集需求,估计最终产品的市场价值,并评估执行该项目所需的资源数量。 技术指标 Specifications 下一步将是收集“规范”,该规范抽象地描述了要设计的芯片的功能,接口和总体架构。这可能类似于以下内容: 【1】需要计算能力才能运行成像算法以支持虚拟现实; 【2】需要两个具有相干互连功能的ARM A53处理器,并且应在600 MHz上运行; 【3】需要USB 3.0,蓝牙和PCIe第二代接口; 【4】应使用适当的控制器支持1920x1080像素显示; 架构Architecture 架构师提出了芯片应如何工作的系统级视图。 他们将决定需要所有其他组件,应运行什么时钟频率以及如何确定功耗和性能要求。 他们还决定数据如何在芯片内部流动。 一个示例是处理器从系统内存中获取成像数据并执行它们时的数据流。 同时,图形引擎将执行转储到内存另一部分中的前一批的后处理数据。 Digital Design数字设计 由于现代芯片的复杂性,不可能从头开始构建某些东西

2020人工智能Ai芯片前言解读

一世执手 提交于 2020-02-15 09:51:25
芯片的概念: (半导体元件产品的统称)集成电路, 缩写 作 IC;或称微电路、微芯片、晶片/芯片,在 电子学 中是一种把 电路 (主要包括半导体设备,也包括被动组件等)小型化的方式,并时常制造在半导体 晶圆 表面上。 专业地讲就是: 将电路制造在半导体芯片表面上的集成电路又称 薄膜 (thin-film)集成电路。另有一种 厚膜 (thick-film) 集成电路 (hybrid integrated circuit)是由独立半导体设备和被动组件,集成到衬底或线路板所构成的小型化 电路 。 人工智能(Artificial Intelligence,AI)芯片的定义:从广义上讲只要能够运行人工智能算法的芯片都叫作 AI 芯片。但是通常意义上的 AI 芯片指的是针对人工智能算法做了特殊加速设计的芯片,现阶段,这些人工智能算法一般以深度学习算法为主,也可以包括其它机器学习算法。 AI芯片也被称为AI加速器或计算卡,即专门用于处理人工智能应用中的大量计算任务的模块(其他非计算任务仍由CPU负责)。当前,AI芯片主要分为 GPU 、 FPGA 、 ASIC 。 人工智能芯片四大类(按技术架构分类): 1、通用芯片(GPU)。 GPU是单指令、多数据处理,采用数量众多的计算单元和超长的流水线,主要处理图像领域的运算加速。 GPU是不能单独使用的,它只是处理大数据计算时的能手

什么是ASIC芯片?与CPU、GPU、FPGA相比如何?

◇◆丶佛笑我妖孽 提交于 2020-02-07 15:11:52
http://www.elecfans.com/d/672204.html 继4月初 联发科 宣布扩大 ASIC 产品阵线,推出业内首个7nm 56G PAM4 SerDes IP之后,4月24日,在联发科深圳办公室,联发科举行了一场小型的媒体会,联发科副总经理暨智能设备事业群总经理 游人杰及联发科智能显示暨客制化芯片事业部行销处处长彭建凯首次揭秘了联发科的ASIC业务。 什么是ASIC芯片? 近年随着以 比特币 为代表的虚拟货币市场的火爆,催生了一大批生产“挖掘”虚拟货币设备的“矿机”厂商,其中最为知名的要属比特大陆了。而比特大陆之所以能够在矿机市场异军突起,则主要得益于其自主设计的针对比特币矿机的ASIC芯片。因为相对于 CPU 、 GPU 来说,采用专用的ASIC芯片来“挖矿”更具效率。以比特大陆的Antminer S9矿机为例,其内部集成了189个 ASIC芯片(BM1387),而且采用的是台积电16nm FinFET制程。同样,目前主流的矿机厂商都采用的是定制的ASIC芯片。这也使得ASIC芯片开始被大众所熟知。但是ASIC芯片并不仅仅能被用于“挖矿”,还被用于包括人工智能在内等众多领域。 那么什么才是ASIC芯片?它与我们常见的CPU、GPU等通用型芯片相比又有何不同? 早在1981年3月,Sinclair公司推出了一款8位个人电脑ZX81

FPGA、单片机、DSP、ASIC的区别

吃可爱长大的小学妹 提交于 2020-02-07 14:17:27
https://zhuanlan.zhihu.com/p/21357765 ASIC原本就是专门为某一项功能开发的专用集成芯片,比如你看摄像头里面的芯片,小小的一片,集成度很低,成本很低,可是够用了。一个山寨摄像头卖才卖30块,买一片ARM多少钱?后来ASIC发展了一些,称为半定制专用集成电路,相对来说更接近FPGA,甚至在某些地方,ASIC就是个大概念,FPGA属于ASIC之下的一部分。 FPGA基本就是高端的CPLD,两者非常接近。我现在用的是ALTERA DE2开发板的CYCLONE系列FPGA。这种器件是用逻辑门来表述性能的。本身他就是一堆的逻辑门,通过硬件描述语言,比如verilogHDL把它转成电路连接,从最基本的逻辑门层面上连接成电路(参见数字电路书上那些全加器触发器什么的)。应该说,虽然看起来像一块CPU,其实是完全硬件实现的。后来因为写代码麻烦,对控制部分比较薄弱,本来跟其他CPU配合使用,即麻烦的算法CPU提交给FPGA,FPGA算完把结果再返回给CPU。可是这样外围电路就变得麻烦。于是提出了SOC设计方法,就是直接在FPGA里写一个CPU出来,既然FPGA万能,做个CPU自然毫无压力。这其中还有软核和硬核的区别,不过除了性能,使用方法大同小异。所谓IP核,就是把各种专用集成电路用硬件描述语言描述,然后烧到FPGA里形成专门的电路,这样就不必另外搭芯片了

Case statement in verilog

久未见 提交于 2020-01-13 18:14:07
问题 I came across priority encoder design and found out a new way to do it using a case statement. The only thing that is confusing is, does a case statement give priority to cases? Example: case(1'b1) A[3]: Y<=4'b1000; A[2]: Y<=4'b0100; A[1]: Y<=4'b0010; A[0]: Y<=4'b0001; default:Y<=4'b0000; endcase Here if I give A as 1111 Y gets 1000 i.e it gives priority to the first case statement. Why is this so? 回答1: Yes, there is a priority, based off of the order. According to the Verilog-2001 spec,

What is the exact criteria for an inout port, when sometimes inout and output ports can be interchangeably used in Verilog?

↘锁芯ラ 提交于 2019-12-11 17:48:08
问题 In the below module, ideally cnt, width & start should be inout port, instead of output port. But I tried with those ports as output ports and still I am able to run it without any error. So can inout and output ports be used interchangeably in Verilog? If no, then what is the exact criteria, where inout port must be used (output port can't be used in that case)? module (clk, rst, cnt, start, width, signal); input clk, rst, signal; output reg [11:0] cnt, width; output reg start; always @

Implementing a VHDL binary search on a std_logic_vector [vhdl]

拥有回忆 提交于 2019-12-11 05:52:07
问题 I'm attempting to create synthesizable VHDL (function or procedure) for an ASIC (it must be part of the ASIC) that will look for the first '1' in a standard_logic_vector and output which vector position that '1' was in. For example, I have an 8-bit slv of "10001000" (a '1' in position 3 and 7). If I use this slv, the output should be 4 (the output is 1 based). The actual VHDL will be searching a large slv, up to 512 bits in length. I tried implementing a binary search function but I get