FPGA/CPLD学习资料
上传时间: 2013-12-22
上传用户:lindor
EDA (Electronic Design Automation)即“电子设计自动化”,是指以计算机为工作平台,以EDA软件为开发环境,以硬件描述语言为设计语言,以可编程器件PLD为实验载体(包括CPLD、FPGA、EPLD等),以集成电路芯片为目标器件的电子产品自动化设计过程。“工欲善其事,必先利其器”,因此,EDA工具在电子系统设计中所占的份量越来越高。下面就介绍一些目前较为流行的EDA工具软件。 PLD 及IC设计开发领域的EDA工具,一般至少要包含仿真器(Simulator)、综合器(Synthesizer)和配置器(Place and Routing, P&R)等几个特殊的软件包中的一个或多个,因此这一领域的EDA工具就不包括Protel、PSpice、Ewb等原理图和PCB板设计及电路仿真软件。目前流行的EDA工具软件有两种分类方法:一种是按公司类别进行分类,另一种是按功能进行划分。 若按公司类别分,大体可分两类:一类是EDA 专业软件公司,业内最著名的三家公司是Cadence、Synopsys和Mentor Graphics;另一类是PLD器件厂商为了销售其产品而开发的EDA工具,较著名的公司有Altera、Xilinx、lattice等。前者独立于半导体器件厂商,具有良好的标准化和兼容性,适合于学术研究单位使用,但系统复杂、难于掌握且价格昂贵;后者能针对自己器件的工艺特点作出优化设计,提高资源利用率,降低功耗,改善性能,比较适合产品开发单位使用。 若按功能分,大体可以分为以下三类。 (1) 集成的PLD/FPGA开发环境 由半导体公司提供,基本上可以完成从设计输入(原理图或HDL)→仿真→综合→布线→下载到器件等囊括所有PLD开发流程的所有工作。如Altera公司的MaxplusⅡ、QuartusⅡ,Xilinx公司的ISE,Lattice公司的 ispDesignExpert等。其优势是功能全集成化,可以加快动态调试,缩短开发周期;缺点是在综合和仿真环节与专业的软件相比,都不是非常优秀的。 (2) 综合类 这类软件的功能是对设计输入进行逻辑分析、综合和优化,将硬件描述语句(通常是系统级的行为描述语句)翻译成最基本的与或非门的连接关系(网表),导出给PLD/FPGA厂家的软件进行布局和布线。为了优化结果,在进行较复杂的设计时,基本上都使用这些专业的逻辑综合软件,而不采用厂家提供的集成PLD/FPGA开发工具。如Synplicity公司的Synplify、Synopsys公司的FPGAexpress、FPGA Compiler Ⅱ等。 (3) 仿真类 这类软件的功能是对设计进行模拟仿真,包括布局布线(P&R)前的“功能仿真”(也叫“前仿真”)和P&R后的包含了门延时、线延时等的“时序仿真”(也叫“后仿真”)。复杂一些的设计,一般需要使用这些专业的仿真软件。因为同样的设计输入,专业软件的仿真速度比集成环境的速度快得多。此类软件最著名的要算Model Technology公司的Modelsim,Cadence公司的NC-Verilog/NC-VHDL/NC-SIM等。 以上介绍了一些具代表性的EDA 工具软件。它们在性能上各有所长,有的综合优化能力突出,有的仿真模拟功能强,好在多数工具能相互兼容,具有互操作性。比如Altera公司的 QuartusII集成开发工具,就支持多种第三方的EDA软件,用户可以在QuartusII软件中通过设置直接调用Modelsim和 Synplify进行仿真和综合。 如果设计的硬件系统不是很大,对综合和仿真的要求不是很高,那么可以在一个集成的开发环境中完成整个设计流程。如果要进行复杂系统的设计,则常规的方法是多种EDA工具协调工作,集各家之所长来完成设计流程。
上传时间: 2013-10-11
上传用户:1079836864
本文采用Altera公司的FPGA器件Cyclone III系列EP3C10作为核心器件构成了R-S(255,223)编码系统;利用Quartus II 9.0作为硬件仿真平台,用硬件描述语言Verilog_HDL实现编程,并且通过JTAG接口与EP3C10连接。R-S(Reed-Solomon)码是一类纠错能力很强的特殊的非二进制BCH码,能应对随机性和突发性错误,广泛应用于各种通信系统中和保密系统中。R-S(255,223)码能够检测32字节长度和纠错16字节长度的连续数据错误信息。
标签: CycloneIII RS编码
上传时间: 2013-10-08
上传用户:yuchunhai1990
随着HDL Hardware Description Language 硬件描述语言语言综合工具及其它相关工具的推广使广大设计工程师从以往烦琐的画原理图连线等工作解脱开来能够将工作重心转移到功能实现上极大地提高了工作效率任何事务都是一分为二的有利就有弊我们发现现在越来越多的工程师不关心自己的电路实现形式以为我只要将功能描述正确其它事情交给工具就行了在这种思想影响下工程师在用HDL语言描述电路时脑袋里没有任何电路概念或者非常模糊也不清楚自己写的代码综合出来之后是什么样子映射到芯片中又会是什么样子有没有充分利用到FPGA的一些特殊资源遇到问题立刻想到的是换速度更快容量更大的FPGA器件导致物料成本上升更为要命的是由于不了解器件结构更不了解与器件结构紧密相关的设计技巧过分依赖综合等工具工具不行自己也就束手无策导致问题迟迟不能解决从而严重影响开发周期导致开发成本急剧上升 目前我们的设计规模越来越庞大动辄上百万门几百万门的电路屡见不鲜同时我们所采用的器件工艺越来越先进已经步入深亚微米时代而在对待深亚微米的器件上我们的设计方法将不可避免地发生变化要更多地关注以前很少关注的线延时我相信ASIC设计以后也会如此此时如果我们不在设计方法设计技巧上有所提高是无法面对这些庞大的基于深亚微米技术的电路设计而且现在的竞争越来越激励从节约公司成本角度出 也要求我们尽可能在比较小的器件里完成比较多的功能 本文从澄清一些错误认识开始从FPGA器件结构出发以速度路径延时大小和面积资源占用率为主题描述在FPGA设计过程中应当注意的问题和可以采用的设计技巧本文对读者的技能基本要求是熟悉数字电路基本知识如加法器计数器RAM等熟悉基本的同步电路设计方法熟悉HDL语言对FPGA的结构有所了解对FPGA设计流程比较了解
上传时间: 2015-01-02
上传用户:refent
为了研制高性能的全数字永磁同步电机驱动系统,本文提出了一种基于FPGA的单芯片驱动控制方案。它采用硬件模块化的现代EDA设计方法,使用VHDL硬件描述语言,实现了永磁同步电机矢量控制系统的设计。方案包括矢量变换、空间矢量脉宽调制(SVPWM)、电流环、速度环以及串行通讯等五部分。经过仿真和实验表明,系统具有良好的稳定性和动态性能,调节转速的范围可以达到0.5r/min~4200r/min,对干扰误差信号具有较强的容错性,能够满足高性能的运动控制领域对永磁同步电机驱动系统的要求。
上传时间: 2015-01-02
上传用户:921005047
设计了一种基于FPGA纯硬件方式实现方向滤波的指纹图像增强算法。设计采用寄存器传输级(RTL)硬件描述语言(Verilog HDL),利用时分复用和流水线处理等技术,完成了方向滤波指纹图像增强算法在FPGA上的实现。整个系统通过了Modelsim的仿真验证并在Terasic公司的DE2平台上完成了硬件测试。设计共消耗了3716个逻辑单元,最高处理速度可达92.93MHz。以50MHz频率工作时,可在0.5s以内完成一幅256×256指纹图像的增强处理。
上传时间: 2013-11-06
上传用户:rishian
数字三相锁相环中含有大量乘法运算和三角函数运算,占用大量的硬件逻辑资源。为此,提出一种数字三相锁相环的优化实现方案,利用乘法模块复用和CORDIC算法实现三角函数运算,并用Verilog HDL硬件描述语言对优化前后的算法进行了编码实现。仿真和实验结果表明,优化后的数字三相锁相环大大节省了FPGA的资源,并能快速、准确地锁定相位,具有良好的性能。
上传时间: 2013-10-22
上传用户:emhx1990
本文利用Verilog HDL 语言自顶向下的设计方法设计多功能数字钟,突出了其作为硬件描述语言的良好的可读性、可移植性和易理解等优点,并通过Altera QuartusⅡ 4.1 和ModelSim SE 6.0 完成综合、仿真。此程序通过下载到FPGA 芯片后,可应用于实际的数字钟显示中。 关键词:Verilog HDL;硬件描述语言;FPGA Abstract: In this paper, the process of designing multifunctional digital clock by the Verilog HDL top-down design method is presented, which has shown the readability, portability and easily understanding of Verilog HDL as a hard description language. Circuit synthesis and simulation are performed by Altera QuartusⅡ 4.1 and ModelSim SE 6.0. The program can be used in the truly digital clock display by downloading to the FPGA chip. Keywords: Verilog HDL;hardware description language;FPGA
上传时间: 2013-11-10
上传用户:hz07104032
通用阵列逻辑GAL实现基本门电路的设计 一、实验目的 1.了解GAL22V10的结构及其应用; 2.掌握GAL器件的设计原则和一般格式; 3.学会使用VHDL语言进行可编程逻辑器件的逻辑设计; 4.掌握通用阵列逻辑GAL的编程、下载、验证功能的全部过程。 二、实验原理 1. 通用阵列逻辑GAL22V10 通用阵列逻辑GAL是由可编程的与阵列、固定(不可编程)的或阵列和输出逻辑宏单元(OLMC)三部分构成。GAL芯片必须借助GAL的开发软件和硬件,对其编程写入后,才能使GAL芯片具有预期的逻辑功能。GAL22V10有10个I/O口、12个输入口、10个寄存器单元,最高频率为超过100MHz。 ispGAL22V10器件就是把流行的GAL22V10与ISP技术结合起来,在功能和结构上与GAL22V10完全相同,并沿用了GAL22V10器件的标准28脚PLCC封装。ispGAl22V10的传输时延低于7.5ns,系统速度高达100MHz以上,因而非常适用于高速图形处理和高速总线管理。由于它每个输出单元平均能够容纳12个乘积项,最多的单元可达16个乘积项,因而更为适用大型状态机、状态控制及数据处理、通讯工程、测量仪器等领域。ispGAL22V10的功能框图及引脚图分别见图1-1和1-2所示。 另外,采用ispGAL22V10来实现诸如地址译码器之类的基本逻辑功能是非常容易的。为实现在系统编程,每片ispGAL22V10需要有四个在系统编程引脚,它们是串行数据输入(SDI),方式选择(MODE)、串行输出(SDO)和串行时钟(SCLK)。这四个ISP控制信号巧妙地利用28脚PLCC封装GAL22V10的四个空脚,从而使得两种器件的引脚相互兼容。在系统编程电源为+5V,无需外接编程高压。每片ispGAL22V10可以保证一万次在系统编程。 ispGAL22V10的内部结构图如图1-3所示。 2.编译、下载源文件 用VHDL语言编写的源程序,是不能直接对芯片编程下载的,必须经过计算机软件对其进行编译,综合等最终形成PLD器件的熔断丝文件(通常叫做JEDEC文件,简称为JED文件)。通过相应的软件及编程电缆再将JED数据文件写入到GAL芯片,这样GAL芯片就具有用户所需要的逻辑功能。 3.工具软件ispLEVER简介 ispLEVER 是Lattice 公司新推出的一套EDA软件。设计输入可采用原理图、硬件描述语言、混合输入三种方式。能对所设计的数字电子系统进行功能仿真和时序仿真。编译器是此软件的核心,能进行逻辑优化,将逻辑映射到器件中去,自动完成布局与布线并生成编程所需要的熔丝图文件。软件中的Constraints Editor工具允许经由一个图形用户接口选择I/O设置和引脚分配。软件包含Synolicity公司的“Synplify”综合工具和Lattice的ispVM器件编程工具,ispLEVER软件提供给开发者一个简单而有力的工具。
上传时间: 2013-11-17
上传用户:看到了没有
9.1 通用可编程逻辑器件GAL 9.2 ABEL-HDL硬件描述语言 9.3 开发软件ISP Synario操作简介 9.4 可编程逻辑器件CPLD/FPGA 9.5 MAX+PLUSII开发软件 逻辑器件,即可用来实现特定逻辑功能的电子器件。最基本的逻辑关系有“与”、“或”、“非”等。门电路等都是逻辑器件,如74LS08(2输入四与门)实现“与”逻辑,74LS32(2输入四或门)实现“或”逻辑,这是实现简单逻辑功能,还有很多电路实现复杂逻辑功能,如微处理器等,这类是定制器件。
上传时间: 2013-10-26
上传用户:jiangshandz