PLD简介及设计流程

上传人:M****1 文档编号:433049499 上传时间:2022-07-16 格式:DOCX 页数:5 大小:94.76KB
返回 下载 相关 举报
PLD简介及设计流程_第1页
第1页 / 共5页
PLD简介及设计流程_第2页
第2页 / 共5页
PLD简介及设计流程_第3页
第3页 / 共5页
PLD简介及设计流程_第4页
第4页 / 共5页
PLD简介及设计流程_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《PLD简介及设计流程》由会员分享,可在线阅读,更多相关《PLD简介及设计流程(5页珍藏版)》请在金锄头文库上搜索。

1、PLD简介及设计流程一、PLD简介PLD(Programmable Logic Device,缩写为PLD)种类繁多,国际著名的PLD生产厂家有 ALTERA、XILINX、Lattice及AMD等。各厂家还有多种不同型号,不同厂商生产的PLD器 件结构差别也较大。但是,由于PLD的设计并不需要了解过多的PLD的内部结构,对于有数 字电路基础的PLD初学者,甚至可以不需要了解PLD结构就可以进行初步设计。因此,高密 度可编程逻辑器件近年来发展很快,目前已有集成度高达300万门以上、系统频率为100MHz 以上的密度可编程逻辑器件(HDPLD)供用户使用。高密度可编程逻辑器件的使用,使得现代 数

2、字系统的设计方法和设计过程发生了很大的变化,现在一个数字系统已经可以装配在一块 芯片上,即所谓的片上系统(SystemOnChip,简称SOC)、这样制成的设备体积小、重量轻、 可靠性高、成本低,维修也更加方便。FPGA(Field Programmable Gates Array ,现场可编程门阵列)与 CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)都是一种用户可编程逻辑器件(统称为 PLD),它们是在PAL. GAL等逻辑器件的基础上发展起来的。同以往的PAL和GAL相比, FPGA/CPLD规模比较大,适合于时序、组合逻辑电路应用场合,

3、它以其编程方便、集成度 高、开发周期短、速度快、价格合理等特点越来越受到广大电子设计人员的青睐。FPGA 与 CPLD 的区别主要是其结构特点和工作原理,通常的分类方法是: 将基于乘积项可编程结构(即可编程的与阵列和固定的或阵列结构)的器件称为CPLD,如 Lattice 的 ispLSI 系列、Xilinx 的 XC9500 系列、Altera 的 MAX 系列等。 将基于SRAM查表法结构方式的器件称为FPGA,女口 Xilinx的SPARTAN系列、 Altera 的 Stratix、ACEX、APEX 和 FLEX 系列等。随着百万门级的FPGA的推出,单片系统成为可能,Altera提

4、出的概念为SOPC (System on Programmable Chip),即可编程片上系统,将一个完整的系统计成在一个可编程逻辑器件 中。为了支持SOPC的实现,方便用户开发与应用,Altera提供了众多性能优良的宏功能模 块、IP (Intellectual Property,即知识产权)核以及系统集成等完整的解决方案。这些宏功 能模块和IP核都经过了严格的测试,使用这些模块可以大大减小设计风险,缩短开发周期。 Altera能够提供的宏功能模块和IP核包括了数字信号处理(如FIR、FFT及乘法器等)、图 像处理(如旋转、压缩和过滤等)、通信(如信道解码、Viterbi编解码和Turbo

5、编解码等)、 接口(如PCI、USB和CAN等总线接口)、处理器及外围功能模块(如Nios嵌入式处理器、 微控制器、CPU核、UART和中断控制器等)。由于PLD的发展和广泛应用,以及半导体技术、集成技术和计算机技术的发展,电子 系统的设计方法和设计手段发生了很大的变化,特别是电子设计自动化 EDA (Electrical Design Automatio n)技术的发展和普及给电子系统设计带来了革命性的变化。传统的“固定 功能集成块连线”的设计方法逐步地退出历史舞台,而基于芯片(可编程逻辑芯片)地设 计方法正在成为现代电子系统设计的主流。只要拥有一台计算机、一套相应的EDA软件和 一片可编程

6、逻辑器件,在实验室就可以完成数字系统的设计和实现。二、PLD 设计流程现代的数字系统设计普遍使用自顶向下(TopDown)的设计方法,这里的“顶”就是指 系统的功能;“向下”就是指将系统由大到小、由粗到精进行分解,直至可用基本模块实现。自顶向下设计方法的一般过程大致上可以分为四步,如图 A1.1 所 示。图 A1.1 Top Down 设计明确系统功能:对要设计的系统的任务、要求、原理以及使用 环境等进行充分调研,进而明确设计目标、确定系统功能,是一件 至关重要的事。因为只有把它做好了,后面的设计工作才有意义, 才有效率。俗话说,磨刀不误砍柴工,就是这个道理。确定总体方 案:明确了设计目标、确

7、定系统功能之后,接下来要做的工作就是 根据系统功能确定出系统设计的总体方案。采用什么原理和方法来 实现预定功能,是这一步中必须认真考虑的事。因为同一功能的系 统有多种工作原理和实现方法可供选择,方案的优劣直接关系到所 设计的整个数字系统的质量,所以必须周密思考、反复比较和慎重 选择。总的原则是,所选择的方案既要能满足系统的要求,又要具 有较高的性能价格比。可以毫不夸张地说,这一步是整个设计工作中最为困难也最体现设计 者创造性的一个环节。系统具体实现:系统方案确定以后再从结构上对系统进行逻辑划分,导出系统的结构 框图。一般把系统从逻辑上划分为数据子系统和控制子系统两部分。然后,再将各自划分为 多

8、个子系统模块,各模块的输入、输出信号要明确,有利于团队工作。这些子系统就可以依 据基础的数字设计确定具体电路实现。系统如果有控制算法也包括选择控制算法及实现。系统仿真实现:系统设计完成之后,最好先采用 EDA 软什对所设计的系统进行仿真后再 用具体器件搭电路以保证系统设计的正确性和可靠性。电路实现时,一般按自底向上的顺 序进行。这样做不仅行利于单个电路的调试,而且也利于整个系统的联调。因此,严格地讲, 数字系统的完整设计过程应该是“自顶向下设计。自底向上集成”。当各个子系统确定后,就需要借助于EDA软件进行系统设计实现。图A1.2是基于EDA 软件的 PLD 开发流程框图,由框图可见设计主要包

9、括设计输入、设计处理、功能仿真和时序 仿真、器件编程或下载和系统测试五个部分,以下分别介绍各部分的功能特点。图 A1.2 FPGA / CPLD 设计流程1设计输入设计输入是在EDA平台上对PLD开发的最初步骤。使用较多的输入方式有两种类型:图 形输入和硬件描述语言(Hardware Description Language,缩写为HDL)输入。图形输入通常包括原理图输入、状态图输入和波形图输入三种,其中原理图输入是一种 类似于传统设计的原理图输入方式,即在EDA软件的图形编辑器界面上绘制已设计好的能完 成特定功能的电路原理图,方法与用PROTEL作图类似,具体方法在MAX+PLUSII设计向

10、导 中介绍。HDL输入方式是文本格式,所以比原理图输入简单,使用EDA的文本编辑器即可完成。 有些编辑器还带有语法提示功能。硬件描述语言(HDL)顾名思义是用语言描述电路,直接 用于电路的设计,推动了电子设计自动化EDA进入了电子系统设计自动化时代。目前,国际 上越来越多的EDA工具接受HDL语言作为设计输入,如Men tor Graphics的Aut ologic II、 Candence的SPW和Alt era的MAX+PLUSII等都可以解决从系统的高层次行为描述直接生成 ASIC 器件的一系列技术问题。目前广泛应用的有 AHDL( Altera Hardware Description

11、 Language)、 VHDL (Very High Speed Integrated Circuit Hardware Description Language, V为VHSIC的缩写)和Verilog HDL,其中VHDL和Verilog HDL都是IEEE标准的硬件描述 语言。VHDL语言的语法严谨,适合复杂系统的设计。VerilogHDL的语法近似C语言,可读 性强、容易掌握,对底层电路的描述功能更强,适合ASIC设计。使用 HDL 进行电路设计与传统的计算机软件编程十分类似,都是在编辑器下输入原始程 序设计,通过工具将设计“翻译”、“装配”产生最后执行文件。通过以下的对比的可以帮助

12、 理解使用 HDL 的电路设计。HDL描述与熟悉的软件设计流程对比:Editor (*. c或 * .asm ) n Compiler 、Assembler (输出 * .obj )n Lin ker (*. exe )Editor (*.v或* .hdl ) n Logic Synthesuze和Fitter (产生网表文件)Assembler创建一个或多个目标文件MAX + PLUS 软件 Compiler 命令MAX + PLUS 软件 Compiler 命令VVV输入产生的中间文档(Netlist )输出执行文件2设计处理设计输入后,MAX+PLUSI对设计的处理是通过Compiler

13、命令,Compiler从设计文件 中读取信息并产生编译网表文件、适配器Fitter产生报告文件(*.rpt )、时序仿真文件 (Simula tion Net list File,缩写为SNF)、Assembler生成一个或多个目标文件及设计输 入存在的错误报告。自动错误定位MAX+PLUSI对设计Compiler处理后,如果设计有错误或警告信息,则给出Messages Compiler 窗口,列出所有信息,双击每条信息则会在原始设计文件上高亮度显示错误位 置,同时可以使用信息在线帮助(Help on Message) 了解引起该错误信息的原因(CAUSE) 以及解决的方法(ACTION)。新

14、的 EDA 应用软件不断涌现,大家在使用这些软件时,要充分利用软件提供的 Help 信息。比如,使用MAXPLUSII软件编译工程时出现问题,则会弹出图A1.3所示的Messages Compiler窗口,其中会罗列编译出现的所有问题,该例子中只有一个问题(Message 0 of图 A1.3 编译出错信息窗口 1),鼠标选中某错误信息,然后点击 Help on Message 按钮,则可以查看引起该 Messages 的原因(CAUSE)和处理方法(ACTION)0也可以求助于MAXPLUSI软件的提供的Help, 在 Help/Messages 中按字母顺序列举了所有的信息,右键点击要查找

15、的 Messages 的第一个 字母(比如,该图中信息的第一个字母为U)则直接跳到该字母开头的所有信息处,这样就 很容易地发现问题和解决问题。介绍这一段内容是希望大家学习任何一种软件时,应该充分 发挥其在线帮助(Help)的作用,它是最方便、全面的教师。逻辑综合与适配逻辑综合(Logic Synthesize)器是目标器件结构细节、数字电路设计技术、化简优化算 法以及计算机软件的复杂结合体。HDL综合器是将软件设计的HDL描述与硬件结构挂钩, 是将软件转换为硬件的关键一步,它将电路的高级语言描述转换成可与FPGA/CPLD的基本 结构相映射的网表文件或程序。整个综合过程就是将设计者的文本或图形

16、设计,依据给定的 硬件器件结构和约束控制条件进行编译、优化、转换和综合,最终获得门级甚至更底层电路 的描述网表文件(.edf)。比较常用的性能良好的FPGA/CPLD设计的HDL综合器主要有:Synopsys公司的FPGA Compiler、 FPGA Express;Synplicity 公司的 Synplify Pro;Mentor 子公司 Exemplar Logic 的 LeonardoSpectrum综合器。多数EDA软件都有内置的逻辑综合器。适配器也称为结构综合器,它包括底层器件配置、逻辑分割、逻辑优化、布局与布线 等。它的功能是将综合器产生的网表文件配置于指定的目标器件并产生多种用途的文件,比 如,对CPLD编程的POF、ISP、JEDEC等格式的文件;对FPGA配置的SOF、JAM、BIT 等文件;面向第三方EDA工具的输出文件

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号