低频数字相位测量仪的EDA技术综合应用实例与分析谭会生课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《低频数字相位测量仪的EDA技术综合应用实例与分析谭会生课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 低频 数字 相位 测量仪 EDA 技术 综合 应用 实例 分析 谭会生 课件
- 资源描述:
-
1、第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 第第15章章 低频数字相位测量仪的低频数字相位测量仪的 设计与分析设计与分析 15.1 系统设计要求系统设计要求 15.2 系统设计方案系统设计方案 15.3 主要主要VHDL源程序和汇编语言程序源程序和汇编语言程序 15.4 系统仿真系统仿真/硬件验证硬件验证 15.5 设计技巧分析设计技巧分析 15.6 系统扩展思路系统扩展思路 第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 15.1 系统设计要求系统设计要求 设计并制作一个低频数字相位测量仪,其设计要求如下:(1)频率范围:2
2、0 Hz20 kHz。(2)相位测量仪的输入阻抗100 k。(3)允许两路输入正弦信号峰-峰值可分别在15 V范围内变化。(4)相位测量绝对误差2。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 (5)具有频率测量及数字显示功能。(6)相位差数字显示:相位读数为0359.9,分辨力为0.1。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 15.2 系统设计方案系统设计方案 15.2.1 总体设计方案 根据系统的设计要求,本系统可分为三大基本组成部分:数据采集电路、数据运算控制电路和数据显示电路。考虑到FPGA/CPLD具有集成度高
3、,I/O资源丰富,稳定可靠,可现场在线编程等优点,而单片机具有很好的人机接口和运算控制功能,本系统拟用FPGA/CPLD和单片机相结合,构成整个系统的测控主体。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.1 系统原理框图整形电路FPGA或CPLD数据采集电 路单片机数据运算控制电路数据显示电路AINSAIN整形电路BINSBIN第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 15.2.2 信号整形电路的设计 最简单的信号整形电路就是一个单门限电压比较器(如图15.2所示),当输入信号每通过一次零时触发器的输出就要产生一
4、次突然的变化。当输入正弦波时,每过一次零,比较器的输出端将产生一次电压跳变,它的正负向幅度均受到供电电源的限制,因此输出电压波形是具有正负极性的方波,这样就完成了电压波形的整形工作。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.2 采用单门限触发器的整形电路 761U2ALM339R7VCCAINSBINSBIN123J1CON3GND10 k5412GND3VCC2U2AR6VCC10 kAINLM339BVCCGND第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 为了避免过零点多次触发的现象,我们使用施密特触发器组成
5、的整形电路。施密特触发器在单门限电压比较器的基础上引入了正反馈网络。由于正反馈的作用,它的门限电压随着输出电压Uo的变化而改变,因此提高了抗干扰能力。本系统中我们使用两个施密特触发器对两路信号进行整形,电路图如图15.3所示。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.3 采用施密特触发器的整形电路 542312U1ALM339761U1BLM339R2R6510 VCCVCCAINSBINSBIN123J1CON3GND5 V5 VR3R1R8R510 kR4100 10 k10 kR7100 10 k10 kR9510 AIN第第1515章章 低
6、频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 15.2.3 FPGA数据采集电路的设计 FPGA数据采集电路的功能就是实现将待测正弦信号的周期、相位差转变为19位的数字量。FPGA数据采集的硬件电路我们可采用FPGA下载板来实现,该下载板包含FPGA芯片、下载电路和配置存储器,其电路结构可参见对应的FPGA下载板说明书。本电路主要是进行FPGA的硬件描述语言(HDL)程序设计。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 根据系统的总体设计方案,FPGA数据采集电路的输入信号有:CLK系统工作用时钟信号输入端;CLKAA,CLKBB两路被测信号输
7、入端;EN单片机发出的传送数据使能信号,在EN的上升沿,FPGA向单片机传送数据;RSEL单片机发出的传送数据类型信号,当RSEL=0时,FPGA向单片机传送被测信号频率数据,当RSEL=1时,FPGA向单片机传送被测信号相位差数据。FPGA数据采集电路的输出信号有:DATA18.0FPGA到单片机的数据输出口,由输出控制信号EN和RSEL控制。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 本数字式相位测量仪的要求是测试并显示输入信号频率范围在20 Hz20 kHz,测试并显示信号a、b的相位差,相位差的变化范围为0359.9,相位差的显示分辨力为0.1,要求
8、测量相位的绝对误差2。由此可知:第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.4 FPGA数据采集电路系统组成框图 第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 15.2.4 单片机数据运算控制电路的设计 单片机数据运算控制电路的功能就是负责读取FPGA/CPLD采集到的数据,并根据这些数据计算待测正弦信号的频率及两路同频正弦信号之间的相位差,同时通过功能键切换,显示出待测信号的频率和相位差。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 单片机数据运算控制电路的硬件可由单片机、晶振电路
9、、按键及显示接口电路等组成。我们在设计中考虑到,单片机具有较强的运算能力和控制能力的特点,因此使用单片机的P0口,P2口及P1.0、P1.1、P1.2、P1.3接收FPGA送来的对应于正弦信号的周期、相位差的19位数据信号,P1口的P1.7、P1.6接入两个轻触按键,完成功能选择与设置。该电路的工作原理是,单片机通过向FPGA发送数据传送指令,使FPGA按照单片机的要求发送数据,同时通过使用单片机的串口,将待显示的数据信息送给数据显示电路显示。其原理图如图15.5所示。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.5 单片机系统原理图 P10P11P1
10、2P13P14P15P16P17INT1INT0T1T0X2X1RESETRDWRVP/EAP00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P27RXDTXDPSENPALE/U18051P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.71234567813121514311918VCCX1X2917163938373635343332D0D1D2D3D4D5D6D72122232425262728A8A9A10A11A12A13A14A15RXDTXDALE10113029C110 FR110 kS3SW_PBC330 pFC130 p
11、FCRYSTAL12MX2X1P1.7P1.6S1 SW_PBS2 SW_PBVCCGNDGND第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 单片机数据运算控制电路的软件设计思路是,单片机不断地从FPGA读取信号的周期和a、b信号相位差所对应的时间差,读取数据后进行有关计算,并通过转换后,送出给显示模块,实现频率和相位差的显示。单片机主程序流程图如图15.6所示。单片机在获取FPGA的数据时,开始的是一般的读取指令MOV指令,分别从单片机的P0口、P2口、P1口的低3位读入数据,组合为一个19位的二进制数据,通过控制口线P1.3、P1.5控制FPGA释放数据。
12、经过多次测试,采用这种方式获得了比较好的效果。单片机读取FPGA数据的程序流程图如图15.7所示。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.6 主程序流程图 开始初始化从FPGA读a信号周期和a、b信号下降沿的时间差计算a信号的频率和a、b信号的相位差送数据显示第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.7 读FPGA数据程序流程图选通读a、b信号时间差打开闸门,FPGA释放数据P0、P2、P1分别读入数据并存入时间差数据缓冲区关闭闸门,禁止FPGA释放数据返回关闭闸门,禁止FPGA释放数据打开闸门,FP
13、GA释放数据P0、P2、P1分别读入数据并存入周期数据缓冲区选通a信号周期时间第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 单片机从FPGA读取信息后,对信息进行计算,算出信号a的频率,其流程图如图15.8所示。由于a、b信号是两路频率相同、相位不同的正弦波信号,因此经过整形电路后形成频率相同,时间上不重合的两路信号,这样,FPGA可以计数出两路信号的时间差从而可以计算出a、b信号的相位差,其程序流程图如图15.9所示。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.8 计算a的频率程序流程图 调用除法,计算100000
14、00/a 周期调用二进制BCD转换程序调用压缩BCD码转换为单字节BCD码程序存入数据到显示缓存返回第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.9 计算a、b相位差的程序流程图调用乘法,计算3600tN调用除法,计算 N/a 周期调用二进制BCD转换程序调用压缩BCD码转换为单字节BCD码程序存入数据到显示缓存返回第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 最后单片机需要将信号送到输出端显示出来,即单片机通过显示子程序将信息送到显示电路显示出来,程序流程图如图15.10所示。第第1515章章 低频数字相位测量仪的低
15、频数字相位测量仪的设计与分析设计与分析 图15.10 显示程序流程图 显示开始显示频率,赋频率初始地址2FH.00?N显示相位差,赋相位初始地址Y特殊显示处理查表串行显示指针减10?退出显示YN第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 15.2.5 数据显示电路的设计 整个系统硬件电路中,单片机MCU与FPGA进行数据交换占用了P0口、P1口和P3口,因此数据显示电路的设计采用静态显示的方式,显示电路由8个共阳极七段数码管和8片1位串入8位并出的74LS164芯片组成。这种显示方式不仅可以得到较为简单的硬件电路,而且可以得到稳定的数据输出;这种连接方式不仅
16、占用单片机端口少,而且充分利用了单片机的资源,容易掌握其编码规律,简化了软件编程,在实验过程中,也体现出较高的可靠性。数据显示电路如图15.11所示。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 图15.11 数据显示电路 abcdefgdpcomafeg bcddp12345678abcdefgdpU11DPYR11 kQ0Q1Q2Q3Q4Q5Q6Q7ABCLKMR345610111213dpgfedcba12RXDTXD74LS164abcdefgdpcomafeg bcddp12345678abcdefgdpU12DPYR21 kQ0Q1Q2Q3Q4Q5
17、Q6Q7ABCLKMR345610111213dpgfedcba1274LS164abcdefgdpcomafeg bcddp12345678abcdefgdpU13DPYR31 kQ0Q1Q2Q3Q4Q5Q6Q7ABCLKMR345610111213dpgfedcba1274LS164abcdefgdpcomafeg bcddp12345678abcdefgdpU17DPYR71 kQ0Q1Q2Q3Q4Q5Q6Q7ABCLKMR345610111213dpgfedcba1274LS164abcdefgdpcomafeg bcddp12345678abcdefgdpU18DYPR81 kQ0Q
18、1Q2Q3Q4Q5Q6Q7ABCLKMR345610111213dpgfedcba1274LS164U1U2U3U7U85 VVCC89898989895 VVCC第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 74LS164是一种8位高速串入/并出的移位寄存器,随着时钟信号的高低变化,串行数据通过一个2输入与门同步的送入,使用独立于时钟的主控复位端让寄存器的输出端变为低电平,并且采用肖特基钳位电路以达到高速运行的目的。并且还具有以下的特点:典型的35 MHz移位频率;异步主控复位;门控串行输入;同步数据传输;采用钳位二极管限制高速的终端;静电放电值大于3500
19、 V。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 在本系统中,74LS164的连接方式为:74LS164的输出Q0Q7分别接LED数码管的dp、g、f、e、d、c、b、a,并且Q7连接下一个74LS164的A、B端,时钟CLK连接单片机的TXD端,第一片芯片的AB端连接单片机的RXD端,74LS164芯片的主控复位端接高电平VCC。在这种状态下,数码管的编码如表15.1所示。第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 表15.1 数码管的编码表 第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析
20、 15.3 主要主要VHDL源程序和汇编语言程序源程序和汇编语言程序15.3.1 FPGA的VHDL源程序清单 -SZXWYVHD LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SZXWY IS PORT(CLK:IN STD_LOGIC;CLKAA:IN STD_LOGIC;第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 CLKBB:IN STD_LOGIC;EN,RSEL:IN STD_LOGIC;CLKAC,CLKBC:OUT STD_LOGI
21、C;-仿真观测输出点,调试好后应去掉,以下同 CLKFC:OUT STD_LOGIC;-仿真观测输出用 DATAAC:OUT STD_LOGIC_VECTOR(18 DOWNTO 0);-仿真观测输出用 DATABC:OUT STD_LOGIC_VECTOR(18 DOWNTO 0);-仿真观测输出用第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 CLAC,CLBC:OUT STD_LOGIC;-仿真观测输出用 DAC:OUT STD_LOGIC_VECTOR(18 DOWNTO 0);-仿真观测输出用 CLRAC:OUT STD_LOGIC;-仿真观测输出用
22、ENAC:OUT STD_LOGIC;-仿真观测输出用 LOADAC:OUT STD_LOGIC;-仿真观测输出用 DATA:OUT STD_LOGIC_VECTOR(18 DOWNTO 0);第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 END ENTITY SZXWY;ARCHITECTURE ART OF SZXWY IS SIGNAL CLKF:STD_LOGIC;SIGNAL DATAA:STD_LOGIC_VECTOR(18 DOWNTO 0);SIGNAL DATAB:STD_LOGIC_VECTOR(18 DOWNTO 0);SIGNAL CL
23、B:STD_LOGIC;SIGNAL DA:STD_LOGIC_VECTOR(18 DOWNTO 0);SIGNAL CLRA:STD_LOGIC;SIGNAL ENA:STD_LOGIC;SIGNAL LOADA:STD_LOGIC;BEGIN第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 -信号分频模块 FPQ:BLOCK IS BEGIN PROCESS(CLK)IS VARIABLE TEMP:INTEGER RANGE 0 TO 4;VARIABLE CL:STD_LOGIC;BEGIN IF RISING_EDGE(CLK)THEN IF TEMP=
24、3 THEN TEMP:=0;CL:=1;ELSE TEMP:=TEMP+1;第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 CL:=0;END IF;END IF;CLKF=CL;CLKFC=CLKF;-仿真观测输出用 END PROCESS;END BLOCK FPQ;-控制信号产生模块 KZXH:BLOCK IS SIGNAL CLKA,CLKB:STD_LOGIC;SIGNAL CLA:STD_LOGIC;BEGIN 第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 CLKA=NOT CLKAA;CLKB=NOT CLKBB
25、;CLKAC=CLKA;-仿真观测输出用 CLKBC=CLKB;-仿真观测输出用 PROCESS(CLKA)IS BEGIN IF RISING_EDGE(CLKA)THEN CLA=NOT CLA;END IF;ENA=CLA;第第1515章章 低频数字相位测量仪的低频数字相位测量仪的设计与分析设计与分析 LOADA=NOT CLA;CLAC=CLA;-仿真观测输出用 ENAC=ENA;-仿真观测输出用 LOADAC=LOADA;-仿真观测输出用 END PROCESS;PROCESS(CLKB)IS BEGIN IF RISING_EDGE(CLKB)THEN CLB=NOT CLB;EN
展开阅读全文