FPGA实战训练精粹 - (EPUB全文下载)

文件大小:0.25 mb。
文件格式:epub 格式。
书籍内容:

FPGA实战训练精粹
第1章 FPGA基本情况介绍
第2章 FPGA设计基础知识
第3章 FPGA初级设计
第4章 FPGA中级设计
第5章 FPGA高级设计
第6章 FPGA高级综合设计
第1章 FPGA基本情况介绍
FPGA(Field Programmable Gate Array,现场可编程门阵列)属于可编程逻辑器件的一种,在20世纪90年代获得突飞猛进的发展,经过将近30年的发展,到目前已成为实现数字系统的主流平台之一。本章主要介绍FPGA的基本历史、基本结构、应用领域及其最新进展,使初学者对FPGA能够有基本的了解。
1.1 FPGA简史
本节从FPGA与ASIC、CPLD的区别,Altera与Xilinx的区别,Verilog与VHDL等方面对FPGA进行简要介绍。
1.1.1 FPGA与ASIC
1. FPGA
FPGA是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(Application Specific Integrated Circuit,ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。它是当今数字系统设计的主要硬件平台,主要特点是完全由用户通过软件进行配置和编程,从而完成某种特定的功能,且可反复擦写。在修改和升级时,不需要额外改变PCB电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发工作,缩短系统设计的周期,提高实现的灵活性并降低成本。
FPGA的特点:加电时,FPGA芯片将EPROM中的数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。
理论上,FPGA允许无限次的编程。
FPGA的编程无须专用的FPGA编程器,只需用通用的EPROM、PROM编程器即可。FPGA内部有丰富的触发器和I/O引脚,能够快速成品,不需要用户介入芯片的布局布线和工艺问题,而且可以随时改变逻辑功能,使用灵活。
2. ASIC
ASIC是应特定用户要求和特定电子系统的需要而设计、制造的集成电路。用一句话总结就是市场上买不到的芯片。苹果的A系列处理器就是典型的ASIC。
ASIC是定制的,具体分为全定制和半定制。
全定制设计可以实现最小面积、最佳布线布局、最优功耗速度积,得到最好的电特性。全定制设计的特点是精工细作,设计要求高、成本高、周期长。
半定制设计方法又分为基于标准单元的设计方法CBIC(Cell Based IC)和基于门阵列的设计方法。半定制主要适合开发周期短、低开发成本、投资风险小的小批量数字电路设计。
ASIC的特点:面向特定用户的需求,量身定制,执行速度较快。ASIC在批量生产时与通用集成电路相比具有体积小、功耗低、可靠性高、性能高、保密性强、成本低等优点。ASIC需要较长的开发周期,风险较大,一旦有问题,就会导致成片全部作废,所以小公司已经玩不起了。ASIC的基本结构如图1.1所示。
图1.1 ASIC基本架构
近年来人工智能受到的关注越来越多,许多公司正在积极开发能实现移动端人工智能的硬件,尤其是能够结合未来的物联网应用。移动端人工智能的实现方法有两大流派:FPGA流派和ASIC流派。FPGA流派的代表有Xilinx主推的Zynq平台,而ASIC流派的代表有Movidius。下面来分析FPGA与ASIC的具体区别在哪里。
3. FPGA和ASIC的区别
(1)设计流程
图1.2所示为FPGA和ASIC设计流程。
FPGA:完整的FPGA设计流程包括功能描述、电路设计与输入、功能仿真、综合优化、综合后仿真、实现与布局布线、时序仿真、板级仿真与验证、调试与加载配置。
ASIC:ASIC的设计流程(数字芯片)包括功能描述、模块划分、模块编码输入、模块级仿真验证、系统集成和系统仿真验证、综合、STA(静态时序分析)、形式验证。
图1.2 FPGA和ASIC设计流程
说明
在ASIC设计过程中,往往要用FPGA进行原型验证。FPGA验证是进行ASIC设计的重要环节,其后还需要引入ASIC版本源码,插入IO PAD、DFT,进行功耗估计和其他后端流程。完成FPGA验证可以就完成了ASIC整套流程的50%~80%。
从设计成本来考虑:小批量时,FPGA占优;大批量时,ASIC占优。
FPGA本身就是一个芯片,只是我们可以通过编程的方式修改内部逻辑连接和配置实现自己想要的功能。实现ASIC就如从一张白纸开始,必须得有代码,之后综合,然后布局、布线,最后得到GDSII(一种时序提供格式)后去流片。
(2)速度
相同的工艺和设计,在FPGA上的速度应该比ASIC慢。因为FPGA内部基于通用的结构,也就是LUT(Look Up Table),可以实现加法器、组合逻辑等。而ASIC,一般加法器就是加法器,比较器就是比较器,FPGA结构上的通用性必然导致冗余。另外,FPGA的基本单元是LUT(LUT组成Slice,Slice组成CLB,这是Xilinx的结构),为此,大的设计假如一个LUT实现不了,就得用两个LUT,一个Slice实现不了,就要用CLB,不同结构处于特定的位置,信号之间的互联导致的wire delay是不可忽略的一部分。而对于ASIC来说没有结构上的限制,而且对于特定的线路布局来说可以在空间上靠得很近,相对来说wire delay和cell delay都应该比FPGA小。当然,LUT中也有DFF,作为高速的设计,一般都会在一个简单的组合逻辑操作之后打一拍,再做下一步的处理。
提示
delay(延迟)分为cell delay和wire delay。cell delay是指元器件内部的delay,wire delay是器件互连Pin-to-Pin的delay。
(3)体积
如果结构完全相同,那么FPGA会被ASIC远远踢飞。FPGA要规模大得多才能实现ASIC相同的功能,主频还只有几分之一。
(4)功耗
在 ............

以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。

版权声明:书云(openelib.org)是世界上最大的在线非盈利图书馆之一,致力于让每个人都能便捷地了解我们的文明。我们尊重著作者的知识产权,如您认为书云侵犯了您的合法权益,请参考版权保护声明,通过邮件openelib@outlook.com联系我们,我们将及时处理您的合理请求。 数研咨询 流芳阁 研报之家 AI应用导航 研报之家
书云 Open E-Library » FPGA实战训练精粹 - (EPUB全文下载)