网络特性虚拟分析仪
发布时间:2008/5/27 0:00:00 访问次数:527
     孙肖子 任爱锋
    
     来源:《电子技术应用》
     摘要:介绍一种扫频仪——兼有任意波形发生器和数字存储示波功能的虚拟仪器。可网时显示幅频特性、相频特性,还可显示采集的波形。在设计技术上,采用fpga、eda技术和vc++6.0windows编程技术。
    
    
     关键词:完eda
     isp fpga vhdl vc++ dll
     随着计算机技术、电子设计自动化(eda)技术和在系统可编程技术(isp)的广泛应用,使得虚拟仪器的设计列为灵活、测试更为方便,从而使虚拟世界更为丰富多彩。
     虚拟仪器的设计包括硬件和软件部分。本系统的框图如图1所示。
     1 系统硬件
     由图1可看出硬件部分主要包括:epp口、dds(直接数字频率合成)、信号调理、鉴相及数据采集等模块。
     1.1 epp口
     因为epp(增强型并行端口)比spp(标准并行接口)传输速率高,最高可达2mbytes/s,所以本项目选用它以提高系统速率。实现时,用vhdl编写简单的接口译码电路。
     1.2 dds
     本系统利用dds技术合成精度高、频率稳定度好和控制方便的优点来产生扫频信号。其基本原理如图2所示。
     设相位累加器的位数为n,累加器的输入控制字为f_word,系统时钟频率为fclk,则输出信号s_out的频率fout为:
     fout=(fclk×f_word)/2 n
     因此,通过计算机给dds的累加器发同的频率控制字就可得到不同的频率。该频率的精度主要由相位累加器的位数n决定(注:fout与波形存贮器ram的深度没有关系,存储器容量只改变一个周期内的数据点数,因而地址宽度m只影响波形的精度)。本系统取n=32,m=15。所以,频率分辨率为fclk/2
     32,一个周期内最多有2 15个数据点。下面给出相位累加器的vhdl源程序:
     entity dds_adder is
     port(
     clr :in std_logic;
     clk :in std_logic;
     f_word :in std_logic_vector(31 downto 0);
     addr_end :in std_logic_vector(31 downto 0);
     address :out std_logic_vector(14 downto 0);
     );
     end dds_adder;
     architecture behav of dds_adder is
     signal mid_address:std_logic_vector(31 downto
     0);
     begin
     process (clk,clr,f_word,addr_end)
     begin
     if(clr='0') then
     if(mid_address=addr_end)
     --check one circle's end
     then
     mid_address<="0000000000
     00000000";
     else mid_address<=mid_address + f_word;
     --phase adder
     end if;
     end if;
     end process;
     address<=mid_address(31 downto 17);
     --output 15 high bits
     bnd behav;
     由程序可看
     孙肖子 任爱锋
    
     来源:《电子技术应用》
     摘要:介绍一种扫频仪——兼有任意波形发生器和数字存储示波功能的虚拟仪器。可网时显示幅频特性、相频特性,还可显示采集的波形。在设计技术上,采用fpga、eda技术和vc++6.0windows编程技术。
    
    
     关键词:完eda
     isp fpga vhdl vc++ dll
     随着计算机技术、电子设计自动化(eda)技术和在系统可编程技术(isp)的广泛应用,使得虚拟仪器的设计列为灵活、测试更为方便,从而使虚拟世界更为丰富多彩。
     虚拟仪器的设计包括硬件和软件部分。本系统的框图如图1所示。
     1 系统硬件
     由图1可看出硬件部分主要包括:epp口、dds(直接数字频率合成)、信号调理、鉴相及数据采集等模块。
     1.1 epp口
     因为epp(增强型并行端口)比spp(标准并行接口)传输速率高,最高可达2mbytes/s,所以本项目选用它以提高系统速率。实现时,用vhdl编写简单的接口译码电路。
     1.2 dds
     本系统利用dds技术合成精度高、频率稳定度好和控制方便的优点来产生扫频信号。其基本原理如图2所示。
     设相位累加器的位数为n,累加器的输入控制字为f_word,系统时钟频率为fclk,则输出信号s_out的频率fout为:
     fout=(fclk×f_word)/2 n
     因此,通过计算机给dds的累加器发同的频率控制字就可得到不同的频率。该频率的精度主要由相位累加器的位数n决定(注:fout与波形存贮器ram的深度没有关系,存储器容量只改变一个周期内的数据点数,因而地址宽度m只影响波形的精度)。本系统取n=32,m=15。所以,频率分辨率为fclk/2
     32,一个周期内最多有2 15个数据点。下面给出相位累加器的vhdl源程序:
     entity dds_adder is
     port(
     clr :in std_logic;
     clk :in std_logic;
     f_word :in std_logic_vector(31 downto 0);
     addr_end :in std_logic_vector(31 downto 0);
     address :out std_logic_vector(14 downto 0);
     );
     end dds_adder;
     architecture behav of dds_adder is
     signal mid_address:std_logic_vector(31 downto
     0);
     begin
     process (clk,clr,f_word,addr_end)
     begin
     if(clr='0') then
     if(mid_address=addr_end)
     --check one circle's end
     then
     mid_address<="0000000000
     00000000";
     else mid_address<=mid_address + f_word;
     --phase adder
     end if;
     end if;
     end process;
     address<=mid_address(31 downto 17);
     --output 15 high bits
     bnd behav;
     由程序可看
上一篇:智能蓄电池在线监测仪的设计