datasheet

用FPGA实现多路PWM输出的接口设计与仿真

2008-06-03来源: EDNchina 关键字:Quartus  输出接口  器件仿真  FPGA实现  下载线  FPGA设计  设计实现

  在许多嵌入式系统的实际应用中,需要扩展FP-GA(现场可编程门阵列)模块,将CPU实现有困难或实现效率低的部分用FPGA实现,如数字信号处理、硬件数字滤波器、各种算法等,或者利用FPGA来扩展I/O接口,如实现多路PWM(脉宽调制)输出、实现PCI接口扩展等。通过合理的系统软硬件功能划分,结合优秀高效的FPGA设计,整个嵌入式系统的效率和功能可以得到最大限度的提高。

  在电机控制等许多应用场合,需要产生多路频率和脉冲宽度可调的PWM波形。本文用Altera公司FPGA产品开发工具QuartusⅡ,设计了6路PWM输出接口,并下载到FPGA,实现与CPU的协同工作。

  1 FPGA概述

  PLD(可编程逻辑器件)可分为SPLD(简单可编程逻辑器件),CPLD(复杂可编程逻辑器件)和FPGA,其实它们只是在起初有一些差别,现在的区别已经比较模糊了,PLD可统称为FPGA。目前世界上有十几家生产CPLD/FPGA的公司,知名度较大的有Altera,Xil-inx,Lattice,Actel等,其中Altera和Xilinx占有了60%以上的市场份额。

  Altera公司是最大PLD供应商之一,20世纪90年代以后发展很快。主要产品有:MAX3000/7000、FLEX10K、APEX20K、ACEX1K、StratiX、Cyclone等。开发软件为MaxplusⅡ和QuartusⅡ。普遍认为其开发工具MaxplusⅡ和QuartusⅡ是最成功的FPGA开发平台之一,配合使用Altera公司提供的免费OEM HDL综合工具可以达到较高的效率。

  对于系统设计人员来说,FPGA是一种可以自己编程的芯片。它从芯片制造厂商那里出来时是内部没有连线的。用户可以进行设计输人(电路图输入、状态机输入或者HDL输入);然后进行仿真和验证;接着用一些专用软件(如Synopsys FPGA-Compiler、Synplici-ty Synplify、Examplar Leonardo等)进行逻辑综合;最后使用各个FPGA厂商自身的后端实现的软件(如Al-tera Quartus、Xilinx ISE等)进行布局布线,生成一个配置所需设计的电路连线关系的二进制流文件,通过一根连接PC机和FPGA芯片的下载线,将配置文件下载到芯片中。

  本文以使用QuartusⅡ软件设计PWM为例,介绍FPGA设计的流程,它包括设计输入、约束输入、逻辑综合、逻辑验证(综合后仿真)、布局布线(器件实现)和器件验证(版图后仿真)等几部分。

  2 多路PWM的设计实现

  PWM技术最初是在无线电技术中用于信号的调制,后来在电机调速中得到了很好的应用。在直流伺服控制系统中,通过专用集成芯片或中小规模数字集成电路构成的传统PWM控制电路往往存在电路设计复杂、体积大、抗干扰能力差以及设计困难、设计周期长等缺点,因此PWM控制电路的模块化、集成化已成为发展趋势。它不仅可以使系统体积减小、重量减轻且功耗降低,同时可使系统的可靠性大大提高。随着电子技术的发展,特别是ASIC(专用集成电路)设计技术的日趋完善,数字化的EDA(电子设计自动化)工具给电子设计带来了巨大变革,在电机控制等许多应用场合,需要产生多路频率和脉冲宽度可调的PWM波形,这可通过FPGA丰富的硬件资源和可以配置I/O引脚来实现。嵌入式系统中FPGA的应用设计关键是系统软硬件功能的划分。

  图1是实现的3路PWM硬件结构框图。CPU通过数据线向FPGA写入定时常数控制PWM的频率、初始相位和占空比,并通过外部启动信号控制PWM的启动。

  

  根据图1,写出实现相应功能的Verilog程序描述。部分源程序如下:

  

  图2显示了QuartusⅡ中新建一个项目/文件时可选的设计输入(在Software Files和Other Files标签中还要其他设计输入方法选择),该窗口从菜单"File"→"New"打开,图中显示了"Device Design files"标签下的设计输入方法有AHDL(Altera 公司开发的HDL语言)、方块图/原理图、EDIF、Verilog和VHDL输入方法。另外在"Software Files''和"Other Files"标签下还有TCL语言、波形图等其他输入方法。

  行为级仿真是在HDL源代码设计完成之后,通过设计测试平台文件(激励和测试矢量)来验证设计的正确性。逻辑仿真是在逻辑综合之后,对生成的门级网表进行验证。测试平台文件与采用行为级仿真的测试平台文件,这样能够保证设计验证的一致性。并且,逻辑验证是一种理想的门级网表,不存在延时信息。器件验证也称版图后仿真,它是在FPGA实现之后,提取出门级网表和延时信息进行验证,测试平台文件与行为级一样。器件验证结果是比较接近真实硬件的结果。完全通过这3层的验证,基本上可以保证设计的结果与测试平台文件一致。

  行为仿真和器件仿真也可直接在QuartusⅡ中进行,其中输入激励波形和输出观察节点在QuartusⅡ波形输入窗口进行设置,在设计通过功能仿真后,需要进一步选择器件仿真以验证设计的正确性。器件仿真时包含了所选择的对应FPGA估算延时或实际延时信息,故仿真速度较功能仿真慢很多。通过仿真可以及早发现设计中的错误,并根据具体情况进行修改,包括修改硬件实现架构、设计代码、约束条件等一个或多个方面。器件仿真通过后,则可以将设计下载到芯片,进行硬件功能验证。

  图3是对应PWM的功能仿真结果波形。从图3中可以看出,在564 ps时刻CPU向PWM写入新的控制常数后,下一个周期的PWM输出占空比立刻发生了相应改变。

  图4是相应设计在QuartusⅡ下编译通过后进行器件仿真的波形,由图4可见,其时序功能正确。通过器件下载编程方法下载到相应的FPGA,就可以结合整个嵌入式系统进行硬件调试。

  

  4 结束语

  在FPGA开发软件中完成设计以后,软件会产生一个最终的编程文件,QuartusⅡ中是.pof或.sof。现在的FPGA基本都采用在系统编程方式,对于EEP-ROM/Flask/SRAM工艺的在系统可编程FPGA,厂家提供编程电缆,如Altera公司提供的下载电缆类型有ByteBlasterⅡ并口下载电缆、USB BlasterTMUSB口下载电缆、MasterBlaster 通信缆线(USB或RS-232端口)等,其配置方式可以有主动/被动串行配置方式、JTAG方式等。电缆一端装在计算机的相应接口上,另一端接至PCB(印制电路板)上的编程插头,它向系统板上的器件提供配置或编程数据,这就是所谓的ISP(在线系统编程)。

  在电机控制等许多应用场合,需要产生多路频率和脉冲宽度可调的PWM波形,本文通过使用Altera公司FPGA产品开发工具QuartusⅡ,设计了6路PWM输出接口,并下载到FPGA,实现与CPU的协同工作。在嵌入式系统中通过FPGA扩展系统功能的设计是一种有效的方法。

关键字:Quartus  输出接口  器件仿真  FPGA实现  下载线  FPGA设计  设计实现

编辑:孙树宾 引用地址:http://www.eeworld.com.cn/afdz/2008/0603/article_731.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:基于NXP UOCIII芯片的小尺寸液晶电视设计指导
下一篇:单片分布微波放大器的设计

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

Altera发布Quartus Prime Pro设计软件,加速大容量FPGA设计

2016年5月10号,北京——Altera,现在已属英特尔公司,今天发布新的产品版Quartus® Prime Pro设计软件,进一步提高了FPGA设计性能和设计团队的效率。Quartus Prime Pro软件设计用于支持英特尔下一代高度集成的大容量FPGA,这将推动云计算、数据中心、物联网及其连网等领域的创新。内置在最新版软件中的功能前所未有的缩短了编译时间,提供通用设计输入方法,简化了知识产权(IP)的集成,从而加速了大规模FPGA设计流程。 英特尔的FPGA软件和IP市场营销总监Bernhard Friebe评论说:“Quartus Prime Pro设计软件构建
发表于 2016-05-10

Altera新版Quartus Prime设计软件延续了设计性能和效能优势

    Quartus Prime设计软件架构有效的增强了新一代可编程器件硬件性能,提高了资源利用率         Altera公司(Nasdaq: ALTR)今天发布Quartus® Prime设计软件,标志着新一代可编程逻辑器件设计效能新时代的来临。Altera新的软件环境构建在公司成熟可靠而且用户友好的Quartus II软件基础上,采用了新的高效能Spectra-Q™引擎。新的Quartus Prime设计软件经过优化,减少了设计迭代,其编译时间是业界最快的,提高了硅片性能,从而增强了FPGA和SoC FPGA设计过程。  
发表于 2015-11-09

Altera为Quartus II软件提供强劲引擎Spectra-Q

令FPGA和SoC设计快马      Altera公司(Nasdaq: ALTR)宣布为其业界领先、成熟可靠的Quartus® II软件引入功能超级强劲的Spectra-Q™引擎,以提高下一代可编程器件的设计效能,缩短产品面市时间。Spectra-Q引擎的新功能创纪录地缩短了编译时间,提供通用、快速跟踪设计输入和置入式IP集成特性,延续了Altera Quartus II软件的领先优势,令基于FPGA和SoC的设计快马加鞭。现在,客户可以在更高抽象层面上进行设计并实现,极大地缩短了设计时间,解决了下一代设计面临的挑战。关于Spectra-Q引擎的更多信息,请访问
发表于 2015-05-15
Altera为Quartus II软件提供强劲引擎Spectra-Q

Altera发布Quartus II软件Arria 10版v14.0

    20 nm FPGA和SoC提供业界最先进的设计环境。     2014年8月19号,北京——Altera公司(Nasdaq: ALTR)今天发布Quartus® II软件Arria® 10版v14.0——业界最先进的20 nm FPGA和SoC设计环境。Altera成熟可靠的Quartus II软件编译时间是业界最短的,支持性能最高的20 nm FPGA和SoC设计。客户可以使用这一最新版软件所包含的全系列20 nm优化IP内核,进一步加速其Arria 10 FPGA和SoC设计。     Altera的20 nm设计工具提供
发表于 2014-08-19

Altera交付14.0版Quartus II软件

    新版本以高达四倍更快速的编译时间来加速设计开发。    2014年7月1号,北京——Altera公司(Nasdaq: ALTR)今天发布Quartus® II软件14.0版——FPGA业界性能和效能首屈一指的软件。Altera的这一最新版软件编译时间比竞争设计工具套装平均快出2倍,保持了FPGA和SoC设计的软件领先优势。    Quartus II软件14.0版支持用户更高效的迅速实现FPGA和SoC设计。最新版包括新的快速重新编译特性,对设计进行小改动后,编译时间缩短了4倍;以及同类最佳的PCI Express (PCIe) IP
发表于 2014-07-02

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 视频监控 智能卡 防盗报警 智能管理 处理器 传感器 其他技术 综合资讯 安防论坛

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved
pt type="text/javascript" src="//v3.jiathis.com/code/jia.js?uid=2113614" charset="utf-8">