




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FPGA产生PWM SPWM波 FPGA PWM PWM是脉冲宽度调制 PulseWidthModulation 的简称 它在自动控制和计算机技术领域中都有广泛的应用 在电机控制 交流检测等实际应用系统中 PWM是整个系统的技术核心 因此 设计支持PWM输出的芯片 或独立的电路功能模块 实用价值很大 PWM调制原理PWM波通常由一列占空比不同的矩形脉冲构成 其占空比与信号的瞬时采样值成比例 图1所示为脉冲宽度调制系统的原理框图和波形图 该系统有一个比较器和一个周期为Ts的锯齿波发生器组成 语音信号如果大于锯齿波信号 比较器输出正常数A 否则输出0 因此 从图1中可以看出 比较器输出一列下降沿调制的脉冲宽度调制波 PWM技术最初是在无线电技术中用于信号的调制 后来在低频大功率电路中得到了很好的应用 在直流伺服控制系统中 通过专用集成芯片或中小规模数字集成电路构成的传统PWM控制电路往往存在电路设计复杂 体积大 抗干扰能力差以及设计困难 设计周期长等缺点 因此 PWM控制电路的模块化 集成化已成为发展趋势 它不仅可以使系统体积减小 重量减轻且功耗降低 同时可使系统的可靠性大大提高 随着电子技术的发展 特别是ASIC 专用集成电路 设计技术的日趋完善 数字化的EDA 电子设计自动化 工具给电子设计带来了巨大变革 在水声和超声 电机控制等许多应用场合 需要产生多路频率和脉冲宽度可调的PWM波形 这可通过FPGA丰富的硬件资源和可以配置I O引脚来实现 嵌入式系统中FPGA的应用设计关键是系统软硬件功能的划分 1 单路PWM发生器结构和原理图2是实现的单路PWM硬件结构框图 CPU通过数据线向FPGA写入定时常数控制PWM的频率 初始相位和占空比 并通过外部启动信号控制PWM的启动 系统的工作过程 采用50M时钟脉冲信号作为PWM生成器的时钟信号 首先CPU计算出所需要输出PWM的频率 初始相位和占空比信息 通过数据线向FPGA内部寄存器写入以上信息 并通过外部启动信号控制PWM的启动 2 多路PWM发生器的实现原理通过上面的设计可以实现单路的PWM的FPGA设计 利用FPGA来扩展I O接口 可实现多路PWM 脉宽调制 输出 在超声 电机控制等许多应用场合 需要产生多路频率 和脉冲宽度可调的PWM波形 应用实现的单路的PWM的设计 可以推广到多路PWM设计 图4为多路PWM的系统原理框图 通过一个主控内部计算产生输出生成PWM所需的频率 初始相位 占空比等参数 后级可并联数个FPGA芯片 来生成PWM波形 每片FPGA内部又可以生成6 10路PWM信号 通过级联FPGA 可以产生多路不同频率 占空比 初始相位的PWM信号 有较好的同步及一致性 对于需要多路PWM信号的系统实现有着很强的实用性 FPGA SPWM 正弦脉宽调制 SPWM 技术在交流调速系统中得到广泛应用 但SPWM的波形生成是应用中一个难点 目前形成SPWM的方法有 1 由分立元件构成 结构简单 但可靠性和精度均不能满足要求 2 采用计算机计算或查表方式 省却了硬件电路 但CPU负担很重 3 采用专用集成电路 如SLE4520 SA4828等 但其功能固定 可扩展性差 4 采用FPGA 现场可编门阵列 具有速度快 精度高且可以在线编程修改等优点 是一种较好的方案 SPWM原理 用输出的正弦信号作为调制波 用高频三角波作为载波 SPWM两个参数 载波比 N F三角 F正弦 最好为3的倍数 调制度 M V正弦 V三角 1 2SPWM波形控制器设计系统由直接频率生成器产生低频正弦信号 然后与累加累减计数器产生的数字高速三角波进行高速比较而产生SPWM 再经过死区控制模块产生死区 2 1系统构图图2是SPWM波形控制器结构框图 SPWM波形产生设计SPWM波是根据三角载波与正弦调制波的交点而得到的一系列脉冲 其幅度不变而宽度按正弦规律变化 利用FPGA生成SPWM信号 需要将数字三角载波数据与正弦调制波数据进行实时比较 当三角波计数器数据比正弦调制波数据大时 输出1 当三角波计数器数据比正弦调制波数据小时 输出0 由此可以产生宽度按正弦变化但幅度不变的SPWM信号 5结论利用FPGA的高速 高集成度 易于编程的特点 设计一个SPWM波形控制器 既可以生成三相SPWM波形 也可以产生单相SPWM 只需改变程序即可 仿真和测试验证了设计的有效性 可以很方便地和单片机构成通用的交流调速系统 具有较好的应用价值 PWM是通过改变输出方波的占空比来改变等效的输出电压 广泛地用于电动机调速和阀门控制 比如我们现在的电动车电机调速就是使用这种方式 SPWM 就是在PWM的基础上改变了调制脉冲方式 脉冲宽度时间占空比按正弦规率排列 这样输出波形经过适当的滤波可以做到正弦波输出 它广泛地用于直流交流逆变器等 比如高级一些的UPS就是一个例子 三相SPWM是使用SPWM模拟市电的三相输出 在变频器领域被广泛的采用 宏功能模块与IP应用 Altera提供多种方法来获取AlteraMegafunctionPartnersProgram AMPP 和MegaCore 宏功能模块 这些函数经严格的测试和优化 可以在Altera特定器件结构中发挥出最佳性能 可以使用这些知识产权的参数化模块减少设计和测试的时间 MegaCore和AMPP宏功能模块包括应用于通信 数字信号处理 DSP PCI和其它总线界面 以及存储器控制器中的宏功能模块 使用MegaWizardPlug InManager bsf BlockEditor中使用的宏功能模块的符号 元件 cmp 组件申明文件 inc 宏功能模块包装文件中模块的AHDL包含文件 tdf 要在AHDL设计中实例化的宏功能模块包装文件 vhd 要在VHDL设计中实例化的宏功能模块包装文件 v 要在VerilogHDL设计中实例化的宏功能模块包装文件 bb v VerilogHDL设计所用宏功能模块包装文件中模块的空体或black box申明 用于在使用EDA综合工具时指定端口方向 inst tdf 宏功能模块包装文件中子设计的AHDL例化示例 inst vhd 宏功能模块包装文件中实体的VHDL例化示例 inst v 宏功能模块包装文件中模块的VerilogHDL例化示例 LPM随机存储器的设置和调用 在此首先确定图7 1中ROM内的波形数据文件 QuartusII能接受的LPM ROM中的初始化数据文件的格式有2种 MemoryInitializationFile mif 格式和Hexadecimal Intel Format File hex 格式 以下以64点正弦波形数据为例分别说明 实际应用中只要使用其中一种格式的文件即可 首先在QuartusII中选择ROM数据文件编辑窗 即在File菜单中选择New 并在New窗中选择Otherfiles页 再选择MemoryInitializationFile项 单击OK按钮后产生ROM数据文件大小选择窗 正余弦mif文件生成器 1 表格编辑法 2 文件编辑法 文件编辑器设计MIF文件 其格式如图所示 其中地址和数据都为十六进制 冒号左边是地址值 右边是对应的数据 并以分号结尾 3 程序生成法 MIF文件也可以用程序语言生成 如C程序 例是产生正弦波数据值的C程序 例 include include math h main inti floats for i 0 isin rom mif 将生成sin rom mif文件 再加上 mif文件的头部说明即可 romgen假设是编译后的程序名 定制LPM ROM元件 设计步骤如下 1 打开MegaWizardPlug InManager初始对话框 在Tools菜单中选择MegaWizardPlug InManager 产生如图所示的界面 选择Createanewcustom 项 如果要修改一个已编辑好的LPM模块 则选择Editanexistingcustom 项 即定制一个新的模块 单击Next按钮后 产生如图7 6所示的对话框 在左栏选择Storage项下的LPM ROM 再选择Cyclone器件和VHDL语言方式 最后输入ROM文件存放的路径和文件名 d sin gnt data rom vhd V 定制的ROM元件文件名 单击Next按钮 2 选择ROM控制线 地址线和数据线 在如图7 7和图7 8所示的对话框中选择地址线位宽和ROM中数据数分别为6和64 选择地址锁存控制信号inclock 3 单击Next按钮后出现图7 9的界面 在 WhatshouldtheRAM 栏选择默认的 Auto 在适配中 QuartusII将根据选中的目标器件系列 自动确定嵌入RAM模块的类型 如ACEX1K系列为EAB APEX20K系列为ESB Cyclone系列为M4K等 在图7 9的 Doyouwantto 栏选择打勾 yes usethisfileforthememorycontent 项 并按 Browse 钮 选择指定路径上的文件sdata hex 在 AlowIn SystemMemory 栏选择打勾 并在 TheInstanceIDofthisrom 栏键入 rom1 作为此ROM的ID名称 通过这个设置 可以允许QuartusII能通过JTAG口对下载于FPGA中的此ROM进行 在系统 测试和读写 如果需要读写多个嵌入的LPM ROM或LPM RAM ID号rom1就作为此ROM的识别名称 这种读写不影响FPGA中电子系统的正常工作 最后点击图7 9的Next按钮 再点击图7 10的Finish钮后完成ROM定制 输入设计文件 原理图输入法 1 新建工程之后 便可以进行电路系统设计文件的输入 选择file菜单中的New命令 弹出如图所示的新建设计文件类型选择窗口 产生一个新的图表模块 原理图文件菜单 File New Block Schematicdocument 原理图输入法为例子讲述 2 选择New对话框中的DeviceDesignfiles页下的BlockDiagram SchematicFile 点击OK 打开如图所示的图形编辑器对话框 进行设计文件输入 3 在图形编辑窗口中的任何一个位置双击鼠标 或点击图中的 符号工具 按钮 或选择菜单Edit下的Insertsymbol命令 弹出如右图所示的元件选择窗口Symbol对话框 4 用鼠标点击单元库前面的加号 库中的元件符号以列表的方式显示出来 选择所需要的元件符号 该符号显示在Symbol对话框的右边 点击OK按钮 添加相应元件符号在图像编辑工作区中 连接原理图 原理图输入法 优缺点 优点 1 可以与传统的数字电路设计法接轨 即使用传统设计方法得到电路原理图 然后在Quartus 平台完成设计电路的输入 仿真验证和综合 最后下载到目标芯片中 2 它将传统的电路设计过程的布局布线 绘制印刷电路板 电路焊接 电路加电测试等过程取消 提高了设计效率 降低了设计成本 减轻了设计者的劳动强度 缺点 1 原理图设计方法没有实现标准化 不同的EDA软件中的图形处理工具对图形的设计规则 存档格式和图形编译方式都不同 因此兼容性差 难以交换和管理 2 由于兼容性不好 性能优秀的电路模块的移植和再利用非常困难难以实现用户所希望的面积 速度以及不同风格的综合优化3 原理图输入的设计方法不能实现真实意义上的自顶向下的设计方案 无法建立行为模型 从而偏离了电子设计自动化最本质的涵义 Quartus 编译器的主要任务是对设计项目进行检查并完成逻辑综合 同时将项目最终设计结果生成器件的下载文件 编译开始前 可以先对工程的参数进行设置 Quartus 软件中的编译类型有全编译和分步编译两种 选择Quartus 主窗口Process菜单下StartCompilation命令 或者在主窗口的工具栏上直接点击图标可以进行全编译全编译的过程包括分析与综合 Analysis Synthesis 适配 Fitter 编程 Assembler 时序分析 ClassicalTimingAnalysis 这4个环节 而这4个环节各自对应相应的菜单命令 可以单独分步执行 也就是分步编译 编译设计文件 分步编译就是使用对应命令分步执行对应的编译环节 每完成一个编译环节 生成一个对应的编译报告 分步编译跟全编译一样分为四步 1 分析与综合 Analysis Synthesis 设计文件进行分析和检查输入文件是否有错误 对应的菜单命令是Quartus 主窗口Process菜单下Start StartAnalysis Synthesis 对应的快捷图标是在主窗口的工具栏上的 2 适配 Fitter 在适配过程中 完成设计逻辑器件中的布局布线 选择适当的内部互连路径 引脚分配 逻辑元件分配等 对应的菜单命令是Quartus 主窗口Process菜单下Start StartFitter 注 两种编译方式引脚分配有所区别 3 编程 Assembler 产生多种形式的器件编程映像文件 通过软件下载到目标器件当中去 应的菜单命令是Quartus 主窗口Process菜单下Start StartAssembler 4 时序分析 ClassicalTimingAnalyzer 计算给定设计与器件上的延时 完成设计分析的时序分析和所有逻辑的性能分析 菜单命令是Quartus 主窗口Process菜单下Start StartClassicalTimingAnalyzer 对应的快捷图标是在主窗口的工具栏上的 编译完成以后 编译报告窗口CompilationReport会报告工程文件编译的相关信息 如编译的顶层文件名 目标芯片的信号 引脚的数目等等 全编译操作简单 适合简单的设计 对于复杂的设计 选择分步编译可以及时发现问题 提高设计纠错的效率 从而提高设计效率 分配引脚 为了观察编译器自动指定引脚分配情况 使用命令Assignments PinPlanner打开引脚规划器 PinPlanner 观察引脚分配结果的方法 鼠标移至已被分配的引脚 涂有深色 将显示对应端口名称 编程下载设计文件 对设计进行验证后 即可对目标器件进行编程和配置 下载设计文件到硬件中进行硬件验证 Quartus 编程器Programmer最常用的编程模式是JTAG模式 JTAG模式主要用在调试阶段 主动串行编程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC 9594-12:2025 EN Information technology - Open systems interconnection - Part 12: The Directory: Key management and public-key infrastructure establishment and mainte
- 桥隧工中级练习题及答案(附解析)
- 2024年工业废水中级模拟考试题(附答案解析)
- 2023年6月美容师初级练习题与答案(附解析)
- 稀土金属压延加工的残余应力分析考核试卷
- 节能技术项目在钢铁行业的节能减排措施考核试卷
- 电池制造中的工业应用与能源储存技术考核试卷
- 2025年其他未列明电子设备项目合作计划书
- 2025年热固化油墨项目发展计划
- 经济型酒店业客户体验优化考核试卷
- 中国国际工程咨询有限公司招聘笔试冲刺题2025
- 《伤逝》课件.教学课件
- 周转轮系传动比计算实例机械设计基础课件讲解
- 【 课件】上海普通中小学课程方案
- 弱电项目安全施工应急预案(3篇)
- 院感防控应急演练方案
- 第四讲大力推进现代化产业体系建设-形势与政策
- 有限空间安全技术交底
- 打混凝土劳务清包工合同
- 社区卫生服务中心十四五发展规划
- 20世纪外国文学史课件:意识流文学
评论
0/150
提交评论