现在位置:范文先生网>理工论文>电子通信论文>基于EMP 7128的数字式相位测量仪

基于EMP 7128的数字式相位测量仪

时间:2022-12-05 13:59:57 电子通信论文 我要投稿
  • 相关推荐

基于EMP 7128的数字式相位测量仪

摘要:分析了基于Altera公司CPLD芯片EMP7128SLC84-15进行相位测量的基本原理,给出了用EMP7128SLC8415进行相位测量的硬件实现电路及VHDL源程序。
  关键词:EMP7128SLC84-15;CPLD;相位;频率
  
  1器件简介
  
  EMP7128SLC84-15是Altera公司的MAX7000S系列CPLD,它采用CMOS工艺,并以第二代矩阵结构为基础,实际上也是一种基于E2PROM的器件。EMP7128SLC84-15有84个引脚,其中5根用于ISP(InSystemProgrammable)下载,可方便地对其进行在系统编程。此器件内集成了6000门,其中典型可用门为2500个,有128个逻辑单元,60个可用I/O口,可单独配置为输入、输出及双向工作方式,2个全局时钟及一个全局使能端和一个全局清除端。EMP7128SLC84-15支持多电压工作,其传输延时为7.5ns,最高工作频率高达125MHz,并支持多种编程方式,同时可利用Altera公司的第三代开发软件Max+PlusII方便地进行仿真、综合和下载。
  
  2系统工作原理
  
  图1所示是一个数字式相位测量仪的系统工作示意图。图中,输入的比较信号b与参照信号a,经参数相同的整形电路变换为正方波后,将两个方波进行异或(在CPLD中完成),同时与测得信号的频率f(由CPLD设计一频率计完成)再异或,然后将得到的信号经2f倍频,再将此信号作为闸门,并在其高电平时段利用高频时钟fc进行计数,最后在下降沿时将计数值读出并设为N,则相位为:
  
  Phase=180°N/fc
  
  该相位测量仪表系统除整形电路外,其余均可由CPLD完成。计数所使用的晶振频率为4MHz时?此系统的分辨率为180°/(4×106)=(4.5×10-5)°。
  
  3基于CPLD的程序设计
  
  设计系统软件时?运用VHDL语言,可将系统分为频率计、分频器、相位计数器3个子模块,现对其分别进行描述:
  
  (1)频率计
  
  libraryieee;
  
  useieee.std_logic_1164.all;
  
  useieee.std_logic_unsigned.all;
  
  entityfcounteris
  
  port(sig:instd_logic;--输入信号
  
  clk:instd_logic;--0.5Hz的闸门信号,可由晶振分频得到
  
  counter:outstd_logic_vector(19downto0));?
  
  --计数输出
  
  end;
  
  architecturedataoffcounteris
  
  signaltemp:std_logic_vector(19downto0);
  
  begin
  
  P1:process(sig)
  
  begin
  
  ifsig'eventandsig=‘1’then
  
  ifclk=‘1’then
  
  temp<=temp+1;--在闸门的高电平时段计数
  
  else
  
  temp<=“00000000000000000000”?
  
  --在闸门的低电平时段清零
  
  endif;
  
  endif;
  
  endprocessP1;
  
  P2?process(clk)
  
  begin
  
  ifclk′eventandclk=′0′then
  
  counter<=te
  
  
  
  mp;在闸门的下降沿将数据读出
  
  endif;
  
  endprocessP2;
  
  end;
  
  由于闸门采用的是0.5Hz的方波,因此?输出数值即为频率值。
  
  (2)分频模块
  
  通过此模块可对频率计得到的频率进行分频,也可在异或后再分频得到频率为0.5Hz的矩形波。
  
  libraryieee;
  
  useieee.std_logic_1164.all;
  
  useieee.std_logic_unsigned.all;
  
  entityfenis
  
  port(qin:instd_logicvector(19downto0);--连接频率计输出的频率值
  
  qout:outstd_logic);
  
  end;
  
  architecturedataoffenis
  
  signaltemp:std_logic_vector(19downto0);
  
  signala:std_logic;
  
  begin
  
  process(temp)
  
  begin
  
  iftemp<qinthen
  
  temp<=temp+1;
  
  else
  
  temp<=“00000000000000000000”;
  
  a<=nota;
  
  endif;
  
  qout<=a;--进行2f倍分频
  
  endprocess;
  
  end;
  
  3?相位测量
  
  该模块将分频模块得到的信号作为闸门,然后利用外部晶振进行计数,其设计原理与频率计相同。由于相异或的一个周期对应输入的两路方波信号的半个周期(180°),而且只能测量到最大180°的相位差,因此?还须判断超前或滞后,才能测量出大于180°的相位差,具体程序如下:
  
  libraryieee;
  
  useieee.std_logic_1164.all;
  
  entitypre_lagis
  
  port(s1,s2:instd_ogic;--两输入信号
  
  pre:outstd_logic);--判断结果输出
  
  end;
  
  architecturedataofpre_lagis
  
  begin
  
  lag:process(s1)
  
  begin
  
  ifs1′eventands1=′1′then
  
  ifs2=′0′then
  
  pre<=′1′;--若s1超前s2,输出为
  
  ′1′,否则输出′0′;
  
  else
  
  pre<=′0′;
  
  endif;
  
  endif;
  
  endprocesslag;
  
  end;
  
  
  
  
  (4)模块的组合
  
  图3
  
  在Max+PlusII中,采用原理图输入方式可将上述各模块组合成一个软件系统,然后将其综合下载到CPLD即可完成相位测量仪的设计,其具体设计图见图3所示。
  
  图3中,A、B为输入信号a、b经过整形得到的方波信号。Fcounter为频率计模块,Fen为分频器,Phasecounter为相位测量计数器,Pre-lag为超前滞后判断模块。
  
  4结束语
  
  基于CPLD逻辑器件EMP7128SLC84-15构成的相位测量系统具有测量频带宽、分辨率高、误差小、成本低、简单易行等优点,完全能够满足实际测量的要求。而且,由于完全采用的是CPLD设计,因此,该系统十分易于升级。
  

【基于EMP 7128的数字式相位测量仪】相关文章:

基于 EPM7128 设计的数据合并转换器08-06

一种基于FPGA的A超数字式探伤系统的研究08-06

基于DSP控制的数字式双向DC/DC变换器的实现08-06

数字式智能电机控制模块08-06

基于CSSCI的200108-18

相位差可调的双通道信号发生器的设计08-06

为了学校 基于学校08-17

基于高效的课堂展示08-25

基于Internet的学习模式08-07