




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FPGA简介,2.CPLD/FPGA概述,1.可编程逻辑器件发展历程,3.CPLD/FPGA基本原理,4.FPGA设计方法,5.FPGA设计流程,7.PLD/FPGA发展趋势,6.VerilogHDL语言简介,1.可编程逻辑器件的发展历程,早期,FPGA,FPGA技术,现在,Xilinx:基于查找表技术,SRAM工艺,要外挂配置用的EEPROM的PLD叫FPGA(FieldProgramableGateArray)基于乘积项技术,Flash(类似EEPROM工艺)工艺的PLD叫CPLD,Altera:MAX系列(乘积项技术,EEPROM工艺),FLEX系列(查找表技术,SRAM工艺)都叫作CPLD(ComplexProgramableLogicDevice),即复杂PLD(ComplexPLD)。,FPGA技术,规模大,能够完成任何数字逻辑的功能,实现系统集成在投片前验证设计的正确性,开发成本低修改设计而不用改动硬件电路,开发周期短减少PCB面积,提高系统可靠性,FPGA技术,PLD(CPLD/FPGA)的优点:,FPGA技术,CPLD和FPGA的区别,制造工艺不同,实现功能不同,FPGA:查找表技术,SRAM工艺,CPLD:乘积项技术,Flash/EEPROM工艺,FPGA:时序逻辑电路,CPLD:组合逻辑电路,3.CPLD/FPGA基本原理,FPGA技术,基于查找表的PLD的基本结构及逻辑实现原理,基于乘积项的PLD的基本结构及逻辑实现原理,查找表(Look-Up-Table)的原理和结构,查找表LUT实质上是一个RAM,n位地址线可以配置为n1的RAM。当用户描述了一个逻辑电路后,软件会计算所有可能的结果,并写入RAM。每一个信号进行逻辑运算,就等于输入一个地址进行查表,找出地址对应的内容,输出结果,FPGA技术,XilinxSpartan-II内部结构,FPGA技术,Altera的FLEX/ACEX等芯片的内部结构,FPGA技术,选择FPGA还是CPLD,CPLD组合逻辑的功能很强,一个宏单元就可以分解十几个甚至2030多个组合逻辑输入。FPGA的一个LUT只能处理4输入的组合逻辑,因此,CPLD适合用于设计译码等复杂组合逻辑。但FPGA的制造工艺确定了FPGA芯片中包含的LUT和触发器的数量非常多,往往都是几千上万,CPLD一般只能做到512个逻辑单元,而且如果用芯片价格除以逻辑单元数量,FPGA的平均逻辑单元成本大大低于CPLD。,FPGA技术,4.FPGA的设计方法,FPGA的常用设计方法包括“自顶向下”和“自下而上”,目前大规模FPGA设计一般选择“自顶向下”的设计方法。,所谓“自顶向下”设计方法,简单地说,就是采用可完全独立于芯片厂商及其产品结构的描述语言,在功能级对设计产品进行定义,并结合功能仿真技术,以确保设计的正确性,在功能定义完成后,利用逻辑综合技术,把功能描述转换成某一具体结构芯片的网表文件,输出给厂商的布局布线器进行布局布线。布局布线结果还可反标回同一仿真器,进行包括功能和时序的后验证,以保证布局布线所带来的门延时和线延时不会影响设计的性能。,FPGA技术,自顶向下设计方法学,顶层模块,子模块1,子模块2,子模块3,叶单元,叶单元,叶单元,叶单元,叶单元,叶单元,FPGA技术,FPGA技术,5.FPGA设计流程,(1)设计定义,(2)设计输入,(3)功能仿真,(4)逻辑综合,(6)布局布线,(7)后仿真,(8)静态时序分析,(9)在系统测试,6.VerilogHDL语言简介,能力设计的行为特性、设计的数据流特性、设计的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制。提供了编程语言接口,通过该接口可以在模拟、验证期间从设计外部访问设计,包括模拟的具体控制和运行。,主要功能基本逻辑门,例如and、or和nand等都内置在语言中开关级基本结构模型,例如pmos和nmos等也被内置在语言中可采用三种不同方式或混合方式对设计建模两类数据类型能够描述层次设计,可使用模块实例结构描述任何层次能够使用门和模块实例化语句在结构级进行结构描述,FPGA技术,VerilogHDL建模概述,1.模块Verilog的基本描述单位,用于描述某个设计的功能或结构及与其他模块通信的外部端口,加法器实例moduleaddr(a,b,cin,count,sum);input2:0a;input2:0b;inputcin;outputcount;output2:0sum;assigncount,sum=a+b+cin;endmodule,FPGA技术,模块的结构,modulemodule_name(port1,port2,.);/Declarations:input,output,inout,reg,wire,parameter,function,task,./Statements:InitialstatementAlwaysstatementModuleinstantiationGateinstantiationContinuousassignmentendmodule,FPGA技术,模块的端口,input,regornet,output,net,net,regornet,inout,net,net,FPGA技术,2.时延,信号在电路中传输会有传播延时等,如线延时、器件延时。时延就是对延时特性的HDL描述。,assign#2B=A,timescale1ns/100ps,FPGA技术,建模方式,结构化描述方式,数据流描述方式,行为描述方式,FPGA技术,结构化描述方式,结构化的建模方式就是通过对电路结构的描述来建模,即通过对器件的调用,并使用线网来连接各器件。,moduleFA_struct(A,B,Cin,Sum,Count);inputA;inputB;inputCin;outputSum;outputCount;wireS1,T1,T2,T3;xorx1(S1,A,B);xorx2(Sum,S1,Cin);andA1(T3,A,B);andA2(T2,B,Cin);andA3(T1,A,Cin);orO1(Cout,T1,T2,T3);endmodule,FPGA技术,数据流描述方式,数据流的建模方式就是通过对数据流在设计中的具体行为的描述的来建模。最基本的机制就是用连续赋值语句。在连续赋值语句中,某个值被赋给某个线网变量(信号)。,timescale1ns/100psmoduleFA_flow(A,B,Cin,Sum,Count)inputA,B,Cin;outputSum,Count;wireS1,T1,T2,T3;assign#2S1=AB;assign#2Sum=S1Cin;assign#2T3=Aendmodule,FPGA技术,行为描述方式,行为方式的建模是指采用对信号行为级的描述(不是结构级的描述)的方法来建模。在表示方面,类似数据流的建模方式,但一般是把用initial块语句或always块语句描述的归为行为建模方式。行为建模方式通常需要借助一些行为级的运算符如加法运算符(+),减法运算符(-)等。,moduleFA_behav1(A,B,Cin,Sum,Cout);inputA,B,Cin;outputSum,Cout;regSum,Cout;regT1,T2,T3;always(AorBorCin)beginSum=(AB)Cin;T1=Aendendmodule,moduleFA_behav2(A,B,Cin,Sum,Cout);inputA,B,Cin;outputSum,Cout;regSum,Cout;always(AorBorCin)beginCount,Sum=A+B+Cin;endendmodule,FPGA技术,VerilogHDL的数据类型,reg是最常用的寄存器类型,寄存器类型通常用于对存储单元的描述,如D型触发器、ROM等。存储器类型的信号当在某种触发机制下分配了一个值,在分配下一个值之时保留原值。但必须注意的是,reg类型的变量,不一定是存储单元,如在always语句中进行描述的必须用reg类型的变量。reg类型定义语法如下:regmsb:lsbreg1,reg2,.regN;msb和lsb定义了范围,并且均为常数值表达式。范围定义是可选的;如果没有定义范围,缺省值为1位寄存器。例如:reg3:0Sat;/Sat为4位寄存器。regCnt;/1位寄存器,线网,寄存器,线网类型主要有wire和tri两种。线网类型用于对结构化器件之间的物理连线的建模。如器件的管脚,内部器件如与门的输出等。由于线网类型代表的是物理连接线,因此它不存贮逻辑值。必须由器件所驱动。通常由assign进行赋值,FPGA技术,FPGA技术,阻塞赋值和非阻塞赋值,阻塞赋值=在数据流描述中用于连续赋值在行为描述中用于对组合逻辑赋值顺序进行,非阻塞赋值=在行为描述中用于对时序逻辑赋值并行操作,只能对寄存器赋值,7.PLD/FPGA发展趋势,工艺技术的进步使FPGA性能更强,更高性能,更低成本,采用深亚微米的半导体工艺后,器件在性能提高的同时,价格也在逐步降低。由于便携式应用产品的发展,对现场可编程器件的低压、低功耗的要求日益迫切。因此,无论哪个厂家、哪种类型的产品,都在瞄准这个方向而努力。例如在前面所提到的Xilinx公司的SpantanTM系列的FPGA、Altera公司的APEX20KE器件、ACEX系列以及Actel公司的SX系列产品都是向高密度、低压、低功耗发展的典范。不仅如此,更有新型的公司以其特色的技术加入低压、低功耗芯片的竞争。典型的如PhilipsSemiconductors推出的CoolRunner960,是一种具有960个宏单元的CPLD,无论在何种应用中,都能提供标准的6ns传输延迟、工作于3v的电压下。该器件低功耗的关键是采用了ZeroPower互连阵列,它用一个由外部逻辑实现的CMOS门,代替了其它CPLD常用的对电流敏感的运放。这样当其它的相等规模的CPLD需要消耗250mA的静电流时,CoolRunner960的耗电不到100mA。,采用90nm工艺的FPGA,在容量对等的前提下,生产的FPGA的硅片尺寸变得更小,使得成本大为降低,FPGA技术,IP复用,混合FPGA,设计理念的创新使FPGA向SOPC方向发展,为了更好的满足设计人员的需要,扩大市场,各大现场可编程逻辑器件的厂商都在不断的扩充其知识产权(IP)核心库。这些核心库都是预定义的、经过测试和验证的、优化的、可保证正确的功能。设计人员可以利用这些现成的IP库资源,高效准确的完成复杂片上的系统设计。典型的IP核库有Xilinx公司提供的LogiCORE和AllianceCORE。,半导体产品的一贯目标是以更小的尺寸、更低的成本和更小的功耗,获得更高的质量与性能。从设计角度来看,它的趋势是以各种宏模块的集成来代替分离的芯片,混合FPGA便是这一趋势下的必然产物。所谓混合FPGA,是指将各类数字电路单元(可编程逻辑、CPU/DSP、存储器等)和模拟电路单元(模拟线性电路、A/D、D/A等)的FPGA。随着IC技术的成熟与厂商间的激烈竞争,混合FPGA开始吸引IC厂商的目光,这也是由于其自身的特点造成的。由于混合FPGA不必驱动芯片外的数字负载,因而可以满足产品对低功耗、高性能的要求。此外,采用混合FPGA可减少所占用的印制电路板(PCB)实际面积,从而大大地降低成本。因此,混合F
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省前黄中学2025届高三下学期二模适应性考试(二)语文试卷
- 2025保险公司合同管理制度规范
- 甘肃省天水市2024~2025学年 高一下册第三阶段测试(5月月考)数学试卷附解析
- 福建省龙岩市2024-2025学年高二下册第二次月考(3月)数学试卷附解析
- 安徽省六安市2024~2025学年 高二下册4月月考B班数学试卷附解析
- 2025届广东省中考二模数学试卷
- 虚实界限-青年亚文化在数字时代的抵抗性边界-洞察阐释
- 上海交通大学医学院附属瑞金医院招聘笔试真题2024
- 陕西延安“优师计划地方专项”师范毕业生招聘笔试真题2024
- 2025年古文字基础试题
- 第八章-电力系统不对称短路分析与计算课件
- 国开《人工智能专题》终考试题及答案
- 市级课题结题报告-“双减”背景下小学数学课堂开展学生“项目式学习”的实践研究(优秀等次)
- DLT 1055-2021 火力发电厂汽轮机技术监督导则
- 计算机专业英语ppt课件(PPT 326页)
- 珠算基本指法——三指法
- 美国通用电气公司改革案例
- pantone_潘通色卡_电子版
- 最新消防排烟规范-消防排烟计算表
- 模具中英文对照1
- 苏教版一年级下册数学易错题、难题
评论
0/150
提交评论