版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
EDA技术及应用——基于FPGA的电子系统设计
黄金凤课程基础及内容安排
课程内容:1、电子系统设计导论
2、EDA技术(内容包括:可编程逻辑器件、
VerilogHDL语言、QuartusⅡ的使用)
3、基于VerilogHDL的数字电路设计
4、基于FPGA的数字系统设计5、Modelsim仿真工具的使用
教学大纲:课程内容包括QuartusII,VerilogHDL,FPGA,Modelsim等。•
课程基础:电路基础、模拟电子技术、数字电子技术、单片机原理等。•学习中的注意事项:
——熟练掌握《电路基础》、《模拟电子技术》、《数字电子技术》相关内容;
——作业较少,以实验(包括设计性实验)为主,希望同学们能认真、独立地完成本课程各项实验;
•主要参考书目:EDA技术与Verilog设计,王金明等编著,电子工业出版社基于FPGA的嵌入式开发与应用,徐光辉等编著,电子工业出版社零起点学单片机与CPLD/FPGA,杨恒等编著,北京航空航天大学出版社1电子系统设计导论1.1电子系统概述1.2电子系统的设计方法1.3电子系统的设计步骤1.1.1电子系统的组成1.1.2电子系统的分类1.1.3电子系统的指标1.1概述1.1.1电子系统的组成1、系统与电子系统
系统的定义
电子系统的定义2、电子系统的一般组成(1)系统与电子系统系统的定义:
系统是由两个以上各不相同且互相联系、互相制约的单元组成的、在给定环境下能够完成一定功能的综合体。
——单元:可以是元件、部件或子系统。
——一个系统又可能是另一个更大的系统的子系统。系统的特点:
功能与结构上具有综合性、层次性、复杂性。电子系统的定义
通常将由电子元器件或部件组成的能够产生、传输、采集或处理电信号及信息的客观实体称之为电子系统。
——例如,通讯系统、雷达系统、计算机系统、电子测量系统、自动控制系统等等。
——电子系统在功能与结构上具有高度的综合性、层次性和复杂性。
——电子系统的设计与分析方法是本章讨论的中心。IP:IntellectuanProperty知识产权。指5000门以上的硅功能块。有软核(HDL语言)、硬核(芯片版图)和固核(RT级HDL语言)。
当今电子产品的两大特点:1.产品的复杂性加深.根据Moore定律IC的复杂性大约每6年增加10倍;2.产品的上市时间与市场寿命减小,竞争加剧.延误市场周期产品寿命上市下市赢利适时上市的赢利三角形延误上市的赢利三角形时间产品市场窗口图(2)电子系统的一般组成
图1-1电子系统的一般组成组成:模拟子系统、数字子系统、微处理机子系统。
模拟子系统:传感、高低频放大、模/数、数/模变换及执行机构;
数字子系统:信息处理、决策、控制;
微处理机(信号处理DSP)子系统:CPU控制实现信息处理、决策、控制;1.按处理的信号形式分类
模拟电子系统
数字电子系统
混合电子系统当前的应用电子系统,一般都同时使用数字和模拟两类技术,两者互为补充,充分发挥各自优势,但对一个具体应用系统而言,使用技术的侧重点则有所不同,有的以数字技术为主,有的以模拟技术为主。1.1.2电子系统的分类模拟电子系统定义由若干模拟集成电路、单元电路和分立元器件组成,对模拟信号进行检测、处理、变换和产生的电子系统。
数字(电子)系统特点由若干数字电路和逻辑部件组成,处理及传送数字信号。定义凡是利用数字技术对数字信息进行处理、传输的电子系统。优点工作稳定可靠,抗干扰能力强;精确度高;便于大规模集成,易于实现小型化;便于模块化;便于加密、解密。模拟-数字混合电子系统定义由模拟电子电路和数字电子电路组成的电子系统。
应用主要用于过程控制和各种仪器仪表中,完成对如温度、压力、流量、速度等物理量的测量、控制和显示等。温度电压大信号数字信号控制信号模拟信号图1-2水温自动控制系统
2.按电子系统的功能分类非智能型:功能简单、功能固定的电子系统;智能型:一般可以将以微机或单片机为核心的系统为智能系统。智能型几个特点:
——必须有记忆力;
——有自学习能力;
——易于接受信息、命令;
——具有分析、判断、决策能力;
——可以控制或执行所作的决定。1.1.2电子系统的分类3.按电子系统的应用方向分类
——测控系统。如:航天器飞行控制、工业控制;
——测量系统。如:电量、非电量的精密测量;
——数据处理系统。如语音、图像、雷达信息处理;
——通信系统。如:移动通信、数字通信、微波通信;
——计算机系统。
——智能家居系统。
——智能交通系统。
——智能楼宇系统。
——智能安防系统。
——机器人系统。谷歌人工智能-AlphaGo波士顿动力机器人-Altas1.1.3电子系统的技术指标
——衡量电子系统的指标可能有功能、工作范围、容量、精度,灵敏度、稳定性、可靠性、响应速度和使用场合、工作环境、供电方式、功耗、体积重量等
;
——对不同系统而言,系统指标要求不同
;
——系统设计人员应根据系统类型、功能要求、指标要求,细化出每个待设计的子系统的技术指标以便进行设计
。自下而上的设计方法(BOTTOM-UP)自上而下(TDD)的设计方法(TOP-DOWN)1.2电子系统的设计方法(1)电子系统的层次性
根据用户要求→从现成的数字器件或子系统开始→对现有的组件或较小的系统或相似的系统加以修改、扩大和相互连接→构成能满足用户要求的新系统。
特点:
——无明显规律可循,完全凭经验;——系统的各项性能指标只有在系统构成后才能进行测试。如果系统问题较大,有可能重新设计。(2)自底向上的设计方法(BOTTOM-UP)设计过程:
根据用户要求和设计指标→描述系统功能→给出系统输入输出关系→构成系统总体框图(系统级)→并将它分解成功能单一的子系统→描述出子系统输入输出关系及子系统间相互关系(子系统级)
→设计或选用一些部件实现既定功能的子系统(部件级设计)→选用适当的元器件实现既定功能的部件(元件级设计)→上述过程反复循环,反复修正直致方案可行。设计过程:(3)自顶向下(TDD)的设计方法(TOP-DOWN)举例23特点传统方法现代方法采用器件通用型器件PLD设计对象电路板芯片设计方法自下而上自上而下仿真时期系统硬件设计后期系统硬件设计早期主要设计文件电路原理图HDL语言编写的程序表1-1数字系统的两种设计方法比较现代的数字系统设计方法基于芯片——采用PLD,利用EDA开发工具,通过芯片设计来实现系统功能。25计算机+EDA软件空白PLD+→数字系统通常采用自上而下(TopDown)的设计方法采用可编程逻辑器件在系统硬件设计的早期进行仿真主要设计文件是用硬件描述语言编写的源程序降低了硬件电路设计难度特点自行定义器件内部的逻辑和引脚写出真值表或状态表→EDA开发工具自动进行逻辑综合→模拟仿真→编程下载到PLD中1.3电子系统的设计的一般步骤
——物理描述与设计:实现结构的具体形式、技术与工艺。(如物理类型、布局的几何式样、尺寸、位置和装配方法等)
——行为描述与设计:系统、子系统、部件或元件等的功能;
——结构描述与设计:系统、子系统、部件或元件等的互连方式;说明
——行为描述与设计:如移动电话:双工通话功能、来电显示功能、存储功能、时钟/闹钟功能、计算机接口功能;接收/发射频率、调制方式、待机时间、连续通话时间、供电电池电压、尺寸和重量等;
——结构描述与设计:系统、子系统、部件或元件等的互连方式;
如移动电话:确定用户操作界面、移动电话与GSM网之间的信息交换的方式和协议、确定与计算机之间的连接方式与协议等;
——物理描述与设计:实现结构的具体形式、技术与工艺。(如物理类型、布局的几何式样、尺寸、位置和装配方法等)如移动电话:机壳、操作按键、显示屏、与外部连接接插件的外形、尺寸、材料及工艺等。1.模拟系统设计步骤
(1)任务分析、方案比较、确定总体方案;(2)将系统划分为若干相对独立的功能块,画出系统的总体组成框图;(3)以实现各功能块的集成电路为中心,通过选择和计算完成各个功能单元外接电路与元件的配置;(4)单元之间耦合的核算及电路的整体配合与调整,以得到一个比较切合实际的系统整体电路原理图;(5)根据第3、4步的结果,重新核算系统的主要指标,检查是否满足要求且留有一定余地;(6)画出系统元器件布置图和印刷电路板的布线图,并考虑其测试方案,设置相关的测试点。(7)计算机模拟仿真。尽管模拟系统自动化设计的电子设计自动化(EDA)软件少,但还是可以利用一些仿真软件,如利用PSPICE、Multisim、EWB、AltiumDesigner等进行辅助电路设计。2.数字系统设计步骤
(1)明确设计要求拿到一个设计任务,首先要对它进行消化理解,将设计要求罗列成条,每一条都应是无二义的。这一步是明确待设计系统的逻辑功能及性能指标。在明确了设计要求之后应能画出系统的简单示意方框图,标明输入、输出信号及必要的指标。(2)确定系统方案明确了设计要求之后,就要确定实现系统功能的原理和方法,这一步是最具创造性的工作。同一功能可以有不同的实现方案,而方案的优劣直接关系到系统的质量及性能价格比,因此要反复比较与权衡。常用方框图、流程图或描述语言来描述系统方案。系统方案确定后要求画出系统方框图和详细的流程图,如有需要还应画出必要的时序波形图。(3)受控器的设计根据系统方案,选择合适的器件构成受控器的电路原理图,根据设计要求可能还要对此电路原理图进行时序设计,最后得到实用的受控器电路原理图。(4)控制器的设计根据描述系统方案的模型导出MDS图(MemonicDocumentStateDiagram,可译为助记状态图,或备有记忆文档的状态图),按照规则及受控器的要求选择电路构成控制器,必要时也要进行时序设计,最后得到实用的控制器电路原理图。然后再将控制器和受控器电路合在一起,从而得到整个系统的电路原理图。(5)硬件实现在整个设计过程中应尽可能多地利用电子设计自动化(EDA)软件,及时地进行逻辑仿真、优化,以保证设计工作优质快速地完成。习题11.观察日常生活中出现的电子产品,它们内部结构是什么样子的,属于什么类型的电子系统?2.电子系统的设计方法有哪些?3.电子系统的设计步骤有哪些?4.模拟电子系统和数字电子系统有什么区别?5.智能型电子系统的特点是什么?6.智能型和非智能型电子系统的区别是什么?7.什么是Top-down设计方式?第2章EDA技术概述2.1EDA技术简介2.2常用的EDA工具软件2.3EDA的设计流程32第2章EDA技术概述1.什么是EDA技术?EDA(ElectronicDesignAutomation)即电子设计自动化,EDA技术是以计算机为工作平台,以相关的EDA开发软件为工具,采用原理图或硬件描述语言HDL(HardwareDescriptionLanguage)完成设计输入,然后由EDA开发软件自动完成逻辑综合、适配、布局布线优化和仿真,最后下载到目标芯片(CPLD、FPGA)进行硬件测试等过程中采用的相关技术。332.1EDA技术简介2.EDA技术的历史以计算机科学、微电子技术的发展为基础汇集了计算机图形学、拓扑学和计算数学等学科的最新成果343个发展阶段(1)CAD(Computer-AidedDesign)阶段(1964~1978)“上帝时代”最早的EDA技术:电路模拟、逻辑模拟、MOS同步和模拟、PCB布局、线路布线和标准电池等技术只能进行PCB板布局布线和简单版图绘制(2)CAE(Computer-AidedEngineering)阶段(1978~1997)“英雄时代”电子CAD工具逐步完善,单点工具集成化并从技术上向CAE过渡:诞生了先进的布局和布线、逻辑综合、HDL语言、模拟加速器和仿真器以及高级综合等技术(3)EDA阶段(1993~现在)“人性时代”微电子工艺飞速发展,工艺水平已达到深亚微米级;晶体管集成度提高到百万门甚至千万门级;因特网开始进入广泛应用阶段,工程师们开始设计系统级芯片(systems-on-chip)EDA技术发展到物理校验、布局、逻辑综合、模拟设计以及软件/硬件协同设计。EDA技术已成为电子设计的重要工具35EDA技术受制造技术驱动而发展随微电子技术、计算机技术而发展3.现代EDA技术的特点特征:采用高级语言描述,具有系统级仿真和综合能力(1)采用硬件描述语言HDL(HardwareDescriptionLanguage)与原理图设计方法相比:更适于描述大规模的系统在抽象的层次上描述系统的结构与功能采用HDL的优点:语言的公开可利用性设计与工艺的无关性宽范围的描述能力——系统级、算法级、RTL级、门级、开关级便于组织大规模系统的设计便于设计的复用、交流、保存与修改36(2)高层综合和优化支持系统级的综合与优化。综合:通过EDA工具把用HDL语言描述的模块自动转换为用门级电路网表表示的模块,即将电路映射到器件的专用基本结构。优化:采用优化算法,将设计简化,去除冗余项,提高系统运行速度。(3)并行工程定义:一种系统化的、集成化的、并行的产品及相关过程(指制造和维护)的开发模式。现代EDA工具建立了并行工程框架结构的开发环境,支持多人同时并行进行设计。37一种软件平台结构(4)开放性和标准化开放性:EDA工具只要具有符合标准的开放式框架结构,就可以接纳其他厂商的EDA工具一起进行设计——资源共享标准化:随着设计数据格式标准化→EDA框架标准化,即在同一个工作站上集成各具特色的多种EDA工具,它们能够协同工作。4.EDA技术的范畴和应用可分为系统级、门级和物理实现级三个层次的辅助设计过程涵盖了从系统级设计到版图设计的全过程,涉及电子电路设计的各个领域:IC版图设计PLD开发电路(原理)设计模拟电路数字电路混合电路高速电路PCB板设计38本课程内容5.EDA技术发展的现状EDA技术在进入21世纪后,得到了更大的发展,突出表现在以下几个方面:使电子设计成果以自主知识产权的方式得以明确表达和确认成为可能;在设计和仿真两方面支持标准硬件描述语言的功能强大的EDA软件不断推出。电子技术全方位纳入EDA领域;EDA使得电子领域各学科的界限更加模糊,更加互为包容;更大规模的FPGA和CPLD器件不断推出;基于EDA工具的ASIC设计标准单元已涵盖大规模电子系统及IP核模块;软硬件IP核在电子行业的产业领域、技术领域和设计应用领域得到进一步确认;SoC高效低成本设计技术的成熟。396.EDA技术的发展方向(1)将沿着智能化、高性能、高层次综合方向发展(2)支持软硬件协同设计芯片和芯片工作所需的应用软件同时设计,同时完成。采用协同设计,可以及早发现问题,保证一次设计成功,缩短开发周期,这在设计大系统时尤为重要。
(3)采用描述系统的新的设计语言这种语言统一对硬件和软件进行描述和定义,从开始设计功能参数的提出直至最终的验证。能够使设计过程一体化;设计效率更高;而且必须从现存的方法学中深化出来。
(4)
推出更好的仿真和验证工具随着单一芯片上逻辑门数量超过百万门,对设计的验证工作将变得比设计任务本身还要艰难。402.2常用的EDA软件工具集成的FPGA/CPLD开发工具逻辑综合器仿真工具其他设计工具FPGA/CPLD开发工具逻辑综合器(Synthesizer)仿真工具(simulationtools)2.3EDA设计的流程基于FPGA/CPLD的数字系统设计流程
1.原理图输入(Schematicdiagrams)2.硬件描述语言(HDL文本输入)设计输入(1)ABEL-HDL(2)AHDL(3)VHDL(4)VerilogHDLIEEE标准硬件描述语言与软件编程语言有本质的区别综合(Synthesis)将较高层次的设计描述自动转化为较低层次描述的过程。◆行为综合:从算法表示、行为描述转换到寄存器传输级(RTL)◆逻辑综合:RTL级描述转换到逻辑门级(包括触发器)◆版图综合或结构综合:从逻辑门表示转换到版图表示,或转换到PLD器件的配置网表表示综合器是能自动实现上述转换的软件工具,是能将原理图或HDL语言描述的电路功能转化为具体电路网表的工具。C、ASM...程序CPU指令/数据代码:0100101000101100软件程序编译器COMPILER软件编译器和硬件综合器区别VHDL/VERILOG.程序
硬件描述语言综合器SYNTHESIZER为ASIC设计提供的电路网表文件(a)软件语言设计目标流程(b)硬件语言设计目标流程布局布线布局布线可理解为将综合生成的电路逻辑网表映射到具体的目标器件中实现,并产生最终的可下载文件的过程。布局布线将综合后的网表文件针对某一具体的目标器件进行逻辑映射,把整个设计分为多个适合器件内部逻辑资源实现的逻辑小块,并根据用户的设定在速度和面积之间做出选择或折中;布局是将已分割的逻辑小块放到器件内部逻辑资源的具体位置,并使它们易于连线;布线则是利用器件的布线资源完成各功能块之间和反馈信号之间的连接。仿真(Simulation)功能仿真(FunctionSimulation)——不考虑信号延时等因素的仿真时序仿真(TimingSimulation)——将布局布线的时延信息反标注到设计网表中,所进行的仿真仿真是对所设计电路的功能的验证编程配置把适配后生成的编程文件装入到PLD器件中的过程称为下载。通常将对基于EEPROM工艺的非易失结构PLD器件的下载称为编程(Program),将基于SRAM工艺结构的PLD器件的下载称为配置(Configure)。
习题21.谈谈自己对EDA技术的认识。2.现代EDA技术的特点有哪些?3.EDA技术的发展方向有哪些?4.结合自己的使用情况谈谈对EDA工具的认识。5.EDA的设计流程有哪些?6.前仿真和后仿真的区别是什么?7.综合的含义是什么?8.硬件综合和软件编译的差异在哪里?9.电路设计源文件采用的输入方式有哪些?第3章可编程逻辑器件
3.1概述3.2可编程逻辑器件的基本结构3.3FPGA/CPLD器件的类别3.4FPGA/CPLD的配置3.5SOPC的概述2026/5/2056脉冲与数字电路课程的回顾布尔函数--数字系统数学基础(卡诺图)数字电路设计的基本方法组合电路设计问题
逻辑关系
真值表
化简逻辑图时序电路设计列出原始状态转移图和表
状态优化
状态分配
触发器选型
求解方程式
逻辑图2026/5/2057脉冲与数字电路课程的回顾使用中、小规模器件设计电路(74、54系列)编码器(74LS148)译码器(74LS154)比较器(74LS85)计数器(74LS193)移位寄存器(74LS194)………2026/5/2058脉冲与数字电路课程的回顾设计方法的局限卡诺图只适用于输入比较少的函数的化简。采用“搭积木”的方法的方法进行设计。必须熟悉各种中小规模芯片的使用方法,从中挑选最合适的器件,缺乏灵活性。设计系统所需要的芯片种类多,且数量很大。2026/5/2059脉冲与数字电路课程的回顾采用中小规模器件的局限电路板面积很大,芯片数量很多,功耗很大,可靠性低--提高芯片的集成度设计比较困难--能方便地发现设计错误电路修改很麻烦--提供方便的修改手段PLD器件的出现改变了这一切2026/5/2060PLD出现的背景电路集成度不断提高SSIMSILSIVLSI计算机技术的发展使EDA技术得到广泛应用设计方法的发展自下而上自上而下用户需要设计自己需要的专用电路专用集成电路(ASIC-ApplicationSpecificIntegratedCircuits)开发周期长,投入大,风险大可编程器件PLD:开发周期短,投入小,风险小综观可编程逻辑器件的发展情况,大体可以分为六个发展阶段:(1)20世纪70年代初,熔丝编程的可编程只读存储器PROM和可编程逻辑阵列PLA是最早的可编程逻辑器件。(2)20世纪70年代末,对PLA器件进行了改进,AMD公司推出了可编程阵列逻辑。(3)20世纪80年代初,Lattice公司发明了电可擦写的、比PAL器件使用更灵活的通用可编程阵列逻辑GAL。3.1.1可编程逻辑器件发展历程(4)20世纪80年代中期,Xilinx公司提出了现场可编程的概念,同时生产出了世界上第一个FPGA器件。(5)20世纪80年代末,Lattice公司又提出了在系统可编程的概念,即ISP技术,并且推出了一系列的具备在系统可编程能力的CPLD器件。(6)进入20世纪90年代以后,集成电路技术进入到飞速发展的时期。并且出现了内嵌复杂功能块(如加法器、乘法器、RAM、PLLCPU核、DSP核等)的超大规模器件SOPC(SystemOnaProgrammableChip)。
PLD简单PLDPROM(可编程只读存储器,70年代)PLA(可编程逻辑阵列,70年代中)PAL(可编程阵列逻辑,70年代末)GAL(通用阵列逻辑,80年代中)复杂可编程逻辑器件CPLD现场可编程门阵列FPGA内嵌复杂功能模块的SOPC(90年代后)PLD的发展历程按集成度分类
集成度是集成电路一项很重要的指标,如果从集成密度上分类,可分为低密度可编程逻辑器件(LDPLD)和高密度可编程逻辑器件(HDPLD)。3.1.2可编程逻辑器件分类可编程逻辑器件
低密度可编程逻辑器件(LDPLD)
高密度可编程逻辑器件(HDPLD)PROMEPLDCPLDFPGAPLAPALGAL按器件结构分类基于乘积项(与或阵列结构)的器件--阵列型PROM,EEPROM,PAL,GAL,CPLDCPLD的代表芯片如:Altera的MAX系列基于查找表结构的器件--单元型FPGA按编程工艺分类
熔丝(Fuse)型器件。反熔丝(Antifuse)型器件。
UEPROM型器件,即紫外线擦除/电可编程器件。
E2PROM编程器件,即电可擦写编程器件。
SRAM型器件,即SRAM查找表结构的器件。
Flash型器件。熔丝或反熔丝编程器件--Actel的FPGA器件体积小,集成度高,速度高,易加密,抗干扰,耐高温只能一次编程,在设计初期阶段不灵活SRAM--大多数公司的FPGA器件可反复编程,实现系统功能的动态重构每次上电需重新下载,实际应用时需外挂EEPROM用于保存程序EEPROM--大多数CPLD器件可反复编程不用每次上电重新下载,但相对速度慢,功耗较大3.1.3可编程逻辑器件的发展趋势1.向高密度、高速度、宽频带、高保密方向进一步发展。2.向低电压、低功耗、低成本、低价格的方向发展。3.向IP软核/硬核复用、系统集成的方向发展。4.向模数混合可编程方向发展。5.FPGA/CPLD器件将在物联网、人工智能、云计算、网络通信、图像处理、机器人等领域大显身手。68
任何组合电路都可表示为其所有输入信号的最小项的和或者最大项的积的形式。时序电路包含可记忆器件(触发器),其反馈信号和输入信号通过逻辑关系再决定输出信号。图3-1中所示为PLD器件的基本结构框图,它由输入缓冲电路、与阵列、或阵列、输出缓冲电路等四部分组成。3.2PLD器件的基本结构图3-1PLD基本结构2026/5/2070PLD编程原理:
“与”阵列和“或”阵列编程方法所谓的可编程是指改变“与”阵列和“或”阵列内部连线方式的编程方式。电路可以通过软件编程,确定“与”矩阵和“或”矩阵内部的硬件电路的连接。2026/5/2071PLD的编程方式(选讲)1.掩膜编程最开始的ROM是由半导体生产厂制造的,阵列中各点间的连线用厂家专门为用户设计的掩膜板制作。2.熔丝与反熔丝编程(1)熔丝编程横线与纵线的交叉点全是熔丝,不需要的连接的熔丝烧断,一次性编程。编程机理示意图如下:2026/5/2072
3紫外线擦除、电可编程只读存储器编程
简称EPROM,其编程熔丝是一只叠栅型SIMOS管,其结构图如下图所示。2026/5/2073
4电擦除、电可编程只读存储器编程简称EEPROM,与EPROM结构相似,只是浮栅与漏极间有一薄氧化层,厚度只有80埃,可产生“隧道效应”。它的编程和擦除是同时进行的,每编程一次,就以新的信息代替了原来的信息,整个编程时间不到1秒。5闪速型(Flash)存储单元编程闪速存储单元又称为快擦快写存储单元,下图为闪速存储单元的截面示意图:
2026/5/2074
闪速存储单元比隧道型存储单元的芯片结构更简单、更有效,使闪速存储单元制成的PLD器件密度更高。这种编程器件可以不用编程器而直接在目标系统或线路板上进行编程,所以称它为在系统编程ISP。综上所述,ROM的编程方法是按“掩膜ROM→PROM→EPROM→E2PROM→ISP”的次序发展的。2026/5/20756可编程只读存储器PROM编程可编程只读存储器PROM的结构,由下图知,它是由存储矩阵、地址译码器及输出部分组成。地址译码器输入n位二进制码可寻址2^n个信息单元,产生字线为2^n条,其输出若是m位,则存储器的总容量为2^n
×m位。n器件名与阵列或阵列输出电路PROM固定可编程固定PLA可编程可编程固定PAL可编程固定固定GAL可编程固定可组态
CPLD是由GAL发展起来的,其主体仍是与—或阵列,并以可编程逻辑宏单元为基础,可编程连线集中在一个全局布线区;FPGA是以基本门单元为基础,构成门单元阵列,可编程的连线分布在门单元与门单元之间的布线区。表3-2PLD可编程部位电路符号(选讲)
接入PLD内部的与或阵列输入缓冲器电路,一般采用互补结构,可用图a来表示,它等效于b的逻辑结构。图c为PLD中与阵列的简化图形,图d为PLD中或阵列的简化图表示。AA(b)PLD的互补输入AA(a)PLD的互补缓冲器(c)PLD中与阵列的表示F=ABDABCD(d)PLD中或阵列的表示F=A+CABCDPROM
为了更清晰直观法表示PROM中固定的与阵列和可编程的或阵列,PROM可以表示为PLD阵列图,以4×2PROM为例,如图所示。A1与阵列A0A1A0F0F1固定或阵列(可编程)PLA
可编程逻辑阵列PLA对PROM进行了改进。PROM的与阵列可编程,而或阵列不可编程;PLA则是与阵列和或阵列都可编程,PLA的阵列如图所示。A1阵列A0A1A0F0F1(可编程)或阵列(可编程)PALPLA的利用率很高,但是软件算法过于复杂,运行速度下降。PAL的结构与PLA相似,也包含与阵列、或阵列,但是或阵列是固定,只有与阵列可编程。PAL的结构和常用表示如图所示。A1A0F0F1F0F1A1A0PAL的常用表示PAL的结构
GAL1985年,Lattice公司在PAL的基础上设计出了通用阵列逻辑器件GAL。GAL采用了E2PROM工艺,具有电可擦除重复编程的特点,彻底解决了熔丝型可编程器件的一次可编程问题。3.2.2FPGA的基本结构
简化的FPGA基本由6部分组成,分别为可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAM、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核等,如图3-2所示。Stratix高端FPGA系列
EP1S40器件的平面结构图(1)可编程输入/输出单元
输入/输出(Input/Output)单元简称I/O单元,它们是芯片与外界电路的接口部分,完成不同电气特性下对输入/输出信号的驱动与匹配需求。为了使FPGA有更灵活的应用,目前大多数FPGA的I/O单元被设计为可编程模式,即通过软件的灵活配置,可以适配不同的电气标准与I/O物理特性;可以调整匹配阻抗特性,上下拉电阻;可以调整输出驱动电流的大小等。
可编程I/O单元支持的电气标准因工艺而异,不同器件商不同器件族的FPGA支持的I/O标准也不同,一般来说,常见的电气标准有LVTTL、LVCMOS、SSTL、HSTL、LVDS、LVPECL和PCI等,值得一提的是,随着ASIC工艺的飞速发展,目前可编程I/O支持的最高频率越来越高,一些高端FPGA通过DDR寄存器技术,甚至可以支持高达2Gbit/s的数据速率。(2)基本可编程逻辑单元
基本可编程逻辑单元是可编程逻辑的主体,可以根据设计灵活地改变其内部连接与配置,完成不同的逻辑功能。FPGA一般是基于SRAM工艺的,其基本可编程逻辑单元几乎都是由查找表(LUT,LookUpTable)寄存器(Register)组成的。FPGA内部查找表一般为4输入(注:AlteraStratixII的自适应逻辑模块ALM结构比较特殊),查找表一般完成纯组合逻辑功能。FPGA内部寄存器结构相当灵活,可以配置为带同步/异步复位或置位、时钟使能的触发器(FF,FlipFlop),也可以配置成为锁存器(Latch)。Cyclone系列器件的结构与原理
LAB阵列
Cyclone系列器件的结构与原理CycloneLAB结构
LUT链和寄存器链的使用
Cyclone系列器件的结构与原理
Cyclone系列器件的结构与原理
CycloneLE结构图
Cyclone系列器件的结构与原理
CycloneLE普通模式
91查找表(Look-Up-Table)的原理与结构表3.1输入与门的查找表实际逻辑电路LUT的实现方式a,b,c,d输入逻辑输出地址RAM中存储的内容00000000000001000010....0...0111111111192例:查找表结构的FPGA逻辑实现原理
图3-7中,A、B、C、D由FPGA芯片的引脚输入后进入可编程连线,然后作为地址线连到LUT,LUT中已经事先写入了所有可能的逻辑结果,通过地址查找到相应的数据然后输出,这样组合逻辑就实现了。该电路中D触发器是直接利用LUT后面的D触发器来实现的。时钟信号CLK有I/O脚输入后进入芯片内部的时钟专用通道,直接连接到触发器的时钟端。触发器的输出与I/O脚相连,把结果输出到芯片引脚。这样,PLD就完成了图中的电路功能。(3)嵌入式块RAM
目前大多数FPGA都有内嵌的块RAM(BlockRAM)。FPGA内部嵌入可编程RAM模块,大大地拓展了FPGA的应用范围和使用灵活性。FPGA内嵌的快RAM一般可以灵活配置为端口RAM(SPRAM,SinglePortRAM)、双端口RAM(DPRAM,DoublePortsRAM)、双伪端口RAM(PseudoDPRAM)、CAM(ContentADDRESSABLEMemory)、FIFO(FistInFirstOut)等常用存储结构。新一代FPGA的片内RAM可以分为两类:
1.块式片内RAM2.分布式片内RAM
布线资源是可编程逻辑器件中一种专用的内部互连结构,它主要用来提供高速可靠的内部连线,以保证信号在芯片内部的相邻功能单元之间、功能单元与I/O块之间进行有效的传输。可编程逻辑器件一般有以下几种基本的布线资源:长线直接连线通用内部连线开关矩阵(4)布线资源长线直接连通用内部连线和开关矩阵(5)底层嵌入功能单元
底层嵌入功能单元的概念比较笼统,这里我们指的是那些通用程度较高的嵌入式功能模块,比如PLL(PhaseLockedLoop)、DLL(DelayLockedLoop)、DSP、CPU等。随着FPGA的发展,这些模块被越来越多地嵌入到FPGA的内部,以满足不同场合的需求。目前大多数FPGA厂商都在FPGA内部集成了DLL或者PLL硬件电路,用以完成时钟的高精度、低抖动的倍频、分频、占空比调整、相移等功能。
越来越多的高端FPGA产品将包含DSP或CPU等软件处理核,从而FPGA将由传统的硬件设计手段逐步过渡为系统级设计平台。(6)内嵌专用硬核
这里的内嵌专用硬核与前面的“底层嵌入单元”是有区分的,这里讲的内嵌专用硬核主要指那些通用性相对较弱,不是所有FPGA器件都包含硬核(HardCore)。
我们称FPGA和CPLD为通用逻辑器件,是区分于专用集成电路(ASIC)而言的。其实FPGA内部也有两个阵营:一方面是通用性较强,目标市场范围很广,价格适中的FPGA;另一方面是针对性较强,目标市场明确,价格较高的FPGA。前者主要指低成本(LowCost)FPGA,后者主要指某些高端通信市场的可编程逻辑器件。99CPLD的结构相对比较简单,主要由可编程I/O单元、基本逻辑单元、布线池和其他辅助功能模块构成,如图3-5所示。3.2.3CPLD的基本结构(1)可编程I/O单元CPLD的可编程I/O单元和FPGA的可编程I/O单元的功能一致,完成不同电气特性下对输入/输出信号的驱动与匹配。由于CPLD的应用范围局限性较大,所以其可变成I/O的性能和复杂度与FPGA相比有一定的差距。CPLD的可编程I/O支持的I/O标准较少,频率也较低。(2)基本逻辑单元
与FPGA相似,基本逻辑单元是CPLD的主体,通过不同的配置,CPLD的基本逻辑单元可以完成不同类型的逻辑功能。需要强调的是,CPLD的基本逻辑单元的结构与FPGA相差较大。前面介绍过,FPGA的基本逻辑单元通常是由LUT和Register按照1:1的比例组成的,而CPLD中没有LUT这种概念,其基本逻辑单元是一种被称为宏单元(MacroCell,简称MC)的结构。所谓宏单元,其本质是由一些与、或阵列加上触发器构成的,其中“与或”阵列完成组合逻辑功能,触发器用以完成时序逻辑。102基于乘积项(Product-Term)的PLD结构图3-6基于乘积项的PLD内部结构图3-6宏单元结构103图3-7组合逻辑假设组合逻辑的输出(AND3的输出)为f,则f=(A+B)*C*(!D)=A*C*!D+B*C*!DPLD将以下面图3-8的方式来实现组合逻辑f。图3-8组合逻辑f的内部实现例:以一个简单的电路为例,具体说明PLD是如何利用以上结构实现逻辑的,电路如图3-7所示。(3)布线池、布线矩阵CPLD的布线及连同方式与FPGA差异较大。前面讲过,FPGA内部有不同速度、不同驱动能力的丰富布线资源,用以完成FPGA内部所有单元之间的互联互通。而CPLD的结构比较简单,其布线资源也相对有限,一般采用集中式分布线池结构。所谓布线池其本质是一个开关矩阵,通过打结点可以完成不同MC的输入与输出项之间的连接。由于CPLD的布线池结构固定,所以CPLD的输入管脚到输出管脚的标准延时固定,被称为PintoPin延时,用Tpd表示,PintoPin延时反应了CPLD器件可以实现的最高频率,也就清晰地标明了CPLD器件的速度等级。(4)其他辅助功能模块CPLD中还有一些其他的辅助功能模块,如JTAG(IEEE1532、IEEE1149.1)编程模块,一些全局时钟、全局使能、全局复位/置位单元等。FPGA是什么?
FPGA(FieldProgrammableGateArray),即现场可编程门阵列,从通俗易懂的角度定义,FPGA就是一个可以通过编程来改变内部结构的芯片。发明时代扩展时代积累时代1、定义2、发展历程系统时代智能时代1983-1992年,产品逻辑门数量和工艺不具备竞争优势,不受市场重视。1992-1999年,SRAM制造工艺和EDA软件的引入,使得FPGA容量翻番和成本减半,为大规模应用奠定基础。2000-2007年,成功在数据通信市场打开局面,成为数字系统中的通用组件,并开始从门阵列向集成可编程逻辑的复杂系统过渡。2008-2015年,为解决系统设计问题,FPGA越来越多地整合系统模块和功能,并推动了各类工具的发展。2015年以后,成为数据中心、人工智能的加速平台,多核异构和自适应计算平台成为新的方向,软件开发者开始融入到FPGA的软硬件生态系统。FPGA与ASIC通用专用通用型指的是按照标准输入源输出要求模式,完成某一特定功能的集成电路——相当于把棉花做成了不同的布。专用型指的是为特定用户或特定电子系统制作的集成电路——相当于把布匹组合成衣服,每件衣服只有特定的人才能适合和喜欢。CPUGPUDSPFPGAMCU……存储器基带芯片射频芯片导航芯片编解码器……FPGA可以比喻为:堆满各种原始建筑材料的“荒地”一块,没有“免费的午餐”,必须“自己动手”,方可“丰衣足食”。ASIC可以比作是风格迥异、功能不同,可拎包即住的房屋楼宇。用途分类ICFPGA的优势
1、灵活性可重编程,可定制。易于维护,方便移植、升级或扩展。降低NRE成本,加速产品上市时间。支持丰富的外设接口,可根据需求配置。2、并行性更快的速度、更高的带宽。满足实时处理的要求。3、集成性更多的接口和协议支持。可将各种端接匹配元件整合到器件内部,有效降低BOM成本。
单片解决方案,可以替代很多数字芯片。减少板级走线,有效降低布局布线难度。FPGA的主要应用方向
通信设备的高速接口电路设计数字信号处理或者数学计算SOPC在这一方向要求FPGA设计者有一定的数学功底,能够理解并改进较为复杂的数学算法,并利用FPGA内部的各种资源使之能够变为实际的运算电路。目前真正投入实用的还是在通信领域的无线信号处理、信道编解码以及图像信号处理等领域,其它领域的研究正在开展中。这一方向主要是用FPGA处理高速接口的协议,并完成高速的数据收发和交换。FPGA最初以及到目前最广的应用就是在通信领域,一方面通信领域需要高速的通信协议处理方式,另一方面通信协议随时在修改,非常不适合做成专门的芯片。因此能够灵活改变功能的FPGA就成为首选。到目前为止FPGA的一半以上的应用也是在通信行业。这一方向严格意义上来说,已经在FPGA设计的范畴之内,只不过是利用FPGA这个平台搭建的一个嵌入式系统的底层硬件环境,然后设计者主要是在上面进行嵌入式软件开发而已。就目前SOPC方向发展其实远不如前面两个方向,其主要原因是因为SOPC以FPGA为主,或者是在FPGA内部的资源实现一个“软”的处理器,或者是在FPGA内部嵌入一个处理器核。但大多数的嵌入式设计却是以软件为核心,以现有的硬件发展情况来看,多数情况下的接口都已经标准化,并不需要那么大的FPGA逻辑资源去设计太过复杂的接口。FPGA的发展趋势
向高密度、高速度、宽频带、高保密方向进一步发展向低电压、低功耗、低成本、低价格的方向发展向IP软核/硬核复用、系统集成的方向发展14nm制作工艺目前已用于FPGA器件(如Stratix10器件采用14nm三栅极工艺制作),FPGA在性能、容量方面取得的进步非常显著。在高速收发器方面FPGA也已取得显著进步,以解决视频、音频及数据处理的I/O带宽问题,这正是FPGA优于其他解决方案之处。FPGA器件的内核电压呈不断降低的趋势,经历了5V->3.3V->2.5V->1.8V->1.2V->1.0V的演变,未来会更低。工作电压的降低使得芯片的功耗显著减小,使FPGA器件适用于便携、低功耗应用场合,如移动通信设备、个人数字助理等。FPGA器件已经广泛嵌入RAM/ROM、FIFO等存储器模块,以及DSP模块、硬件乘法器等,可实现快速的乘累加操作,同时越来越多的FPGA集成了硬核CPU子系统(ARM/MIPS/MCU)及其他软/硬核IP,向系统集成的方向快速发展。向模数混合可编程方向发展FPGA器件里集成ADC、传感器等模拟模块,减少外设,增加通用性。FPGA的新兴应用
在云计算领域,已经有众多研究和产业证明了FPGA技术可以有效提高各种云端负载的处理性能,同时还可以降低功耗。微软公司于2014年率先公布了运用FPGA将搜索引擎Bing的性能提升一倍的成功案例,这被认为是FPGA技术进入云计算领域的一个里程碑事件。随后,亚马逊公司于2016年年末在其EC2云计算平台中首次加入了FPGA实例。不久后,百度云、阿里云、腾讯云、华为云也都迅速上线了云端FPGA实例并开启公测。在云端FPGA起步后的短短一年多时间里,各大互联网厂商已经在人工智能、基因测序、图像处理、视频转码、大数据分析、数据库等关键领域取得了令人瞩目的应用成果。在边缘计算领域,FPGA也同样应用广泛。边缘计算是随着物联网的普及而越来越受关注的一种计算形态,它在靠近物或数据源头的一侧就地提供计算、存储、网络等服务。通常,边缘计算在追求较高数据处理能力的同时,还要求处理器具备小型化、低功耗和灵活应对各种应用场景的能力。而近年来流行起来的SoCFPGA,通过在单个芯片上集成ARM硬核处理器和FPGA,充分迎合了上述几点要求。至今,SoCFPGA产品被广泛应用在智能摄像头、自动驾驶、无人机、摄像机、智能语言助手等家喻户晓的电子产品中。物联网人工智能网络通信云计算机器人图像处理国外四大FPGA公司
最大的PLD供应商之一FPGA的发明者,最大的PLD供应商之一ISP技术的发明者提供军品及宇航级产品国内知名FPGA公司2、上海遨格芯1、京微齐力3、广东高云4、深圳紫光同创5、西安智多晶6、上海安路科技7、成都华微科技8、上海复旦微电子面向通信、工业、医疗等场景提供传统FPGA芯片,还瞄准云端服务器、消费类智能终端等新兴场景,研发新一代AI可编程芯片AiPGA、边缘异构芯片HPA、嵌入式可编程eFPGA三大系列产品。为一家中低端、低密度FPGA的芯片提供商。经过近几年的产品迭代及市场扩展,AGM逐渐积累起较稳定的客户,并形成面向CPLD、FPGA、FPGA+CPU、SoC等方向的多个产品线,产品覆盖消费电子、工业、通信、AI计算等市场,成为国内FPGA领域表现亮眼的一匹“黑马”。28nm中高密度FPGA提供商。目前其研发团队逾百人,在硅谷、上海、济南均建立了研发中心,核心技术人员平均从事核心FPGA软件、硬件技术开发超过15年以上;其产品已经渗透到十多个行业中,在通信、工控、消费等领域得到应用。有十余年可编程逻辑器件研发经历,布局覆盖高中低端FPGA产品。安路科技、紫光同创和高云半导体曾被台媒称为“国内FPGA三架马车”。智多晶曾于2013年10月正向研发出拥有自主知识产权的可编智能FPGA芯片,据说是全球除四家美国公司之外,第五个跨过技术门槛的团队。其产品覆盖市场包括LED驱动、视频监控、图像处理、智能仪表、工业控制、4G/5G通信网络、数据中心等,已与富士通、诺瓦电子、海康威视等多家知名企业建立合作关系,并开始研发测试智能人脸识别芯片。安路科技团队已从2019年初的120人扩张到逾200人,量产及在研产品覆盖高中低端,面向数据中心、AI、通信、工业控制、视频监控等领域。成都华微科技主要从事可编程逻辑器件、系统级芯片、存储器、AD/DA芯片、电源管理等器件开发,连续承担国家“十一五”、“十二五”、“十三五”FPGA重大专项,可编程逻辑器件、高速高精度ADC/DAC领域居于国内地位。该公司在FPGA领域有近20年的研究和发展,是国内为数不多自主研发FPGA的研究机构。在2018年5月第二届中国高校科技成果交易会上,复旦微电子发布新一代拥有自主知识产权的亿门级FPGA产品,填补了国内超大规模亿门级FPGA的空白,各类指标已达国际同类产品先进水平。国内FPGA市场占比
据相关数据显示,2018年全球FPGA市场约为60亿美元,中国市场占比30%以上,Xilinx、Altera和Lattice几乎完全垄断了中国市场,国产厂商占比非常低。对于国内企业而言,想要在FPGA领域有所突破,必须得破解专利和生态两座大山。FPGA的战略意义
在军事国防等特殊应用领域,虽然说FPGA的使用量占比不大,但是对于产品的安全性和可靠性要求异常严苛,涉及到国家安全和领土安全,广泛应用于航天、航空、电子、通信、雷达、高端波束形成系统等领域。据相关统计显示,国内90%的大型军用电子设备都要用到FPGA。如果不能够实现自主化,除了在供应上受制于人之外,还对国防安全带来巨大的安全隐患。军事国防等特殊应用领域通信领域目前全球正处于4G向5G发展的阶段。根据天风证券数据,一个5G基站对FPGA需求量几乎是一个4G基站需求量的两倍,使得FPGA的价值量比4G基站多大约1000美元。紫光同创市场总监吕喆认为:“通信市场历来是FPGA的主要目标市场,份额超过40%。虽然短期内,国产FPGA方案在逻辑规模和性能方面能够提供的支撑还有限,但5G带来的市场增量,确实是国产FPGA加速成长的一个机会。”在人工智能、自动驾驶、5G等新兴应用领域,国内高端FPGA产品仍严重依赖进口。在中美科技竞争频繁发生的背景下,如果不加大力度发展自主FPGA产业,未来在高科技领域也将受制于人。ALTERA产品型号命名规则(器件、芯片、格式)ALTERA产品型号命名工艺+型号+LE数量+封装+管脚数目+温度范围+器件速度。1.前缀:EP典型器件EPC组成的EPROM器件EPFFLEX10K或FLFX6000系列、FLFX8000系列EPMMAX5000系列、MAX7000系列、MAX9000系列EPX快闪逻辑器件2.器件型号3.LE数量:XX(k)4.封装形式:D陶瓷双列直插Q塑料四面引线扁平封装P塑料双列直插R功率四面引线扁平封装S塑料微型封装T薄型J形引线芯片载体J陶瓷J形引线芯片载体W陶瓷四面引线扁平封装L塑料J形引线芯片载体B球阵列5.管脚6.温度范围:
C:(Commercialtemperature)表示可以工作在0°C到85°C;I:(Industrialtemperature)表示可以工作在-40°到100°C;
A:(Automotivetemperature)表示可以工作在-40°C到125°C;7.速度:数字越小速度越快,6约最大是500Mhz,7约最大是43Mhz,8约最大是400Mhz。以EP2C35F672C6N为例做一个说明:EP:工艺;2C:cycloneII(飓风)(S代表Stratix,A代表arria);35:逻辑单元数,35表示大约有35k的逻辑单元;F:表示PCB封装类型,F是FBGA封装,E(EQFP)、Q(PQFP)、U(UBGA)、M(MBGA);672:表示引脚数量;C:工作温度,C表示可以工作在0°C到85°C6:速度等级,6约最大是500Mhz,7约最大是43Mhz,8约最大是400Mhz;N:后缀,N表示无铅,ES工程样片。Cyclone低成本FPGA系列
EP1C3器件的平面结构图
逻辑单元M4K存储块I/O单元锁相环EP1C12器件的平面结构图
M4K存储块I/O单元逻辑单元锁相环EP2C35器件的平面结构图CycloneII器件逻辑单元M4K存储块I/O脚嵌入式乘法器锁相环Stratix高端FPGA系列
EP1S40器件的平面结构图Stratix器件内部连接示意图3.3FPGA/CPLD器件的类别3.3.1Stratix高端FPGA系列3.3.2Arria中端FPGA系列3.3.3Cyclone低成本FPGA系列3.3.4Intel的CPLD系列3.3.1Stratix高端FPGA系列器件系列StratixStratixIIStratixIIIStratixIVStratixVStratix10推出年份/年200220042006200820102013采用的工艺技术/nm1309065402814,三栅极Stratix高端FPGA系列从I代、II代发展到现在的StratixV、Stratix10等,每一代的推出年份和采用的工艺技术如表3-5所列。表3-5Stratix系列每一代的推出年份和采用的工艺技术Stratix10FPGA于2013年推出,采用了Intel14nm三栅极制造工艺,最高有550万个逻辑单元,并可集成1.5GHz四核64位ARMCortex-A53硬核处理器,能提供144个收发器,数据速率达到30Gbps;支持2666Mbps的DDR4,整体性能达到了新的高度。随后又推出了Stratix10DX、Stratix10GX、Stratix10TX等高性能FPGA。3.3.2Arria中端FPGA系列器件系列ArriaGXArriaIIGXArriaIIGZArriaVGX、GT、SXArriaVGZArria10GX、GT、SX推出年份/年200720092010201120122013采用的工艺技术/nm904040282820Arria是面向中端应用的FPGA系列,用于对成本和功耗敏感的收发器及嵌入式应用。Arria中端FPGA系列每一代的推出年份和采用的工艺技术如表3-6所列。表3-6Arria系列每一代的推出年份和采用的工艺技术3.3.3Cyclone低成本FPGA系列Cyclone低成本FPGA系列从I代、II代、III代发展到CycloneIV、CycloneV、Cyclone10,每一代的推出年份和采用的工艺技术如表3-7所列。器件系列CycloneCycloneIICycloneIIICycloneIVCycloneVCyclone10推出年份/年200220042007200920112017采用的工艺技术/nm1309065602820表3-7Cyclone系列每一代的推出年份和采用的工艺技术3.3.4Intel的CPLD系列Intel的CPLD器件均是基于非易失体系结构的,无须外挂配置器件。器件系列早期的CPLDMAXIIMAXIIZMAXVMAX10推出年份/年1995-20022004200720102014采用的工艺技术/nm0.50-0.30μm0.18μm180nm180nm55nmIntel的CPLD系列每一代的推出年份和采用的工艺技术如表3-8所列。
表3-8CPLD系列每一代的推出年份和采用的工艺技术3.4FPGA/CPLD的配置
Altera编程器硬件包括MasterBlaster、ByteBlasterMV、ByteBlasterII、USB-Blaster和EthernetBlaster下载电缆。MasterBlaster电缆既可以用于串口也可以用于USB口,ByteBlasterMV电缆用于并口,USB-Blaster电缆使用USB口,EthernetBlaster电缆使用Ethernet网口,ByteBlasterII电缆使用并口。目前更好的选择是采用USB接口的USB-Blaster下载电缆,它除了可以用做编程下载电缆外,还可以用做SignalTapII逻辑分析仪的调试电缆,也可以作为NiosII嵌入式处理器的调试工具。USB-Blaster下载电缆(或ByteBlasterMV、ByteBlasterII)与Altera器件的接口一般是10芯的接口,其信号定义如表所示:引脚12345678910PS模式DCKGNDCONF_DONEVCCnCONFIG-nSTATUS-DATA0GNDJATG模式TCKGNDTDOVCCTMS---TDIGND下载接口引脚信号名称
USB-Blaster下载电缆AS模式DCKGNDCONF_DONEVCCnCONFIGnCEDATAOUTnCSASDIGND图3-10CPLD编程下载连接图CPLD器件可采用JTAG编程方式,其编程文件为POF文件(.pof)。CPLD为非易失器件,一旦编程后,其编程数据便会一直保持在芯片内。3.4.1CPLD的配置JTAG方式的在系统编程多CPLD芯片JTAG编程连接方式
FPGA器件是基于SRAM结构的,由于SRAM的易失性,每次加电时,配置数据都必须重新构造。
Altera的FPGA器件主要有两类配置方式:
主动配置方式和被动配置方式。主动配置方式:由FPGA器件引导配置过程,它控制着外
部存储器和初始化过程;被动配置方式:由外部计算机或控制器控制配置过程。
根据配置数据线的宽度,将配置分为串行配置和并行配置。3.4.2FPGA的配置配置模式特点模式选择引脚设定JTAG使用下载电缆,或使用微处理器;可使用SignalTapII嵌入式逻辑分析仪MSEL1=0,MSEL0=1(0)PS(PassiveSerial)被动串行使用增强型EPC配置器件(EPC4,EPC8,EPC16),使用EPC配置器件(EPC1,EPC2)MSEL1=0,MSEL0=1AS(ActiveSerial)主动串行使用串行配置器件(EPCS1,EPCS4,EPCS16,EPCS64)MSEL1=0,MSEL0=0Cyclone器件支持的配置方式JTAG配置方式使用PC并行口配置多FPGA芯片配置电路
PS配置方式FPGA专用配置器件
在PS模式中,由EPC配置器件或外部计算机(或微处理器)控制配置过程。EPC配置器件将配置数据存放于EPROM中,并按照内部晶振产生的时钟频率将数据输出。
单个EPC器件配置FPGA的电路使用单片机配置FPGA用89C52进行配置
当Cyclone系列FPGA的MSEL[1..0]为00时,即选择了AS配置模式。在AS配置模式中,必须使用一个串行Flash来储存FPGA的配置数据,以作为串行配置器件。串行配置器件是非易失性存储器,如EPCS1,EPCS4,EPCS16,EPCS64等,选用哪一种芯片由FPGA的容量决定。下表所示为EPCS串行配置器件的基本性能,这些专用配置器件可以用USB-Blaster或ByteblasterII下载电缆在线改写,工作电压为3.3V。型号容量工作电压是否可重复性编程封装EPCS11Mb3.3V可以8脚SOICEPCS44Mb3.3V可以8脚SOICEPCS1616Mb3.3V可以8脚SOICEPCS6464Mb3.3V可以8脚SOICAS配置模式FPGA专用配置器件EPCS器件配置FPGA的电路原理图
带有编程接口的Cyclone器件的AS配置模式图,通过一个10针插头对EPCS器件进行编程3.5SOPC的概述SOPC(SystemOnProgra
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 行车梁隔热施工方案(3篇)
- 超级电视营销方案策划(3篇)
- 道路水篦子施工方案(3篇)
- 铁观音出口营销方案(3篇)
- 降低污染施工方案(3篇)
- 餐厅国庆活动营销方案(3篇)
- 26年银发粪嵌塞频发解决方案课件
- 溺水儿童急救的志愿者培训
- 腰痛的老年护理策略
- 老年人营养与社交功能维护
- 2026年东莞市卫生健康系统事业单位人员招聘考试备考试题及答案详解
- 2026新疆哈密市公安局社会招聘警务辅助人员220人备考题库及答案详解(有一套)
- 《公共机构碳排放核算指南》(jst303-2026)培训课件
- 2026年1月浙江省高考(首考)思想政治试题(含答案)
- 天燃气工程监理细则
- 2026年能源集成托管运营协议
- 2026年大学后勤集团办公室文秘招聘笔试写作题
- 钱梁实秋优秀课件
- RB/T 019-2019实验动物设施性能及环境参数验证程序指南
- 《钢结构工程施工员培训教材》
- GB/T 18993.1-2020冷热水用氯化聚氯乙烯(PVC-C)管道系统第1部分:总则
评论
0/150
提交评论