您的当前位置:首页正文

可变频标准信号源的VHDL设计

2024-08-25 来源:个人技术集锦
第30卷第6期 泰山学院学报 Vo1.30 N0.6 2008年11月 J0URNAL OF TAISHAN UNIVERSITY NOV. 2oo8 可变频标准信号源的VHDL设计 王春玲,王杰 (泰山学院物理与电子工程学院,山东泰安271021) [摘要] 本文实现了基于EDA技术的多种标准信号源的设计,并利用分频原理实现了输出信号的变频 控制.通过编译和仿真验证了设计的可行性.本文对多种信号发生器的嵌入式设计具有参考价值. [关键词] 标准信号源;分频;时序仿真;嵌入式设计 [中图分类号]TN409 [文献标识码] A [文章编号] 1672—2590(2008)06—0079—04 1 引言 标准信号主要指正弦波(sin)、三角波(delta)、锯齿波(1adder)、斜波(包括递增斜波(iers)和递减斜 波(ders))、方波等周期波,在电子测量和自动控制领域应用广泛,嵌人式系统的设计和测试中往往需要 嵌入标准信号源.模拟标准信号源因其电路复杂,体积大不适于嵌人式应用;专用的标准信号源集成电 路功能完整,但单位成本较高;且功能固定,无法根据需要进行功能扩展或灵活调整信号种类及带宽、幅 值等指标,不利于嵌人式应用;基于单片机的信号源设计在适应不同用户需求和功能扩展等方面也不够 方便. 利用VHDL,以低成本FPGA/CPLD器件为载体进行设计,具有描述综合化、设计周期短、测试方便、 设计可IP化、便于移植、升级和系列化设计、设计与生产成本低廉等优势.本文采用EDA方法设计具有 变频功能的多种标准信号源. 2变频信号源的设计原理 信号源的结构一般如图1所示. 图1信号源结构图 信号源的波形数据一般存放在只读存储器ROM中. 周期性信号源的频率决定因素有二:(1)计数器即波形调频器的计数时钟CLK,当波形存储的点数 一定时,计数时钟CLK频率 越高,读出一周期波形数据的时间就越短,产生波形的输出频率 就越 高;反之,则波形频率越低.所以,改变计数器的计数时钟CLK可以实现调频目的.(2)波形数据的点数. 当计数时钟CLK频率_厂c一定时,一个周期内波形点数越多,读完一个周期数据所需的时间就越长,波形 [收稿日期]2008—09—16 [基金项目]泰山学院科研资助重点立项项目(P06—2一O1) [作者简介]王春玲(1965一),女,山东肥城人,泰山学院物理与电子工程学院副教授,硕士 80 泰山学院学报 第30卷 频率加就越低;反之则越高. 若利用后者控制波形频率,一方面在需要最低频信号频率(如1Hz)时要求有很大的波形数据存储 空间;另一方面,每改变一次波形频率就需要改变一次波形存储点数,这样设计出的波形发生器灵活性 很差.因此我们选用前者即改变计数器输出时钟频率 的方法,存储点数n可保持不变,通过对来自晶 振的时钟信号厂c进行分频设计,合理控制分频系数入即可实现所需要的波形存储器计数时钟CLK的变 化,最终实现通过低频滤波器LFF的输出波形频率的灵活控制. 2.1 基于分频器的变频设计 在此我们利用FPGA/CPLD器中的可编程特性,采用分频原理实现变频.设计要求采用8个频率 档,即输入时钟频率 的8分频(1/2 (n=1~8)),核心是一个8位二进制(256进制)加计数器.随着 时钟脉冲的到来,8位二进制数组不断改变,根据三位拨码开关fpk(2..0)的设置不同,利用内部3—8 泽码器分别选择该8位二进制数组对应的不同位输出,例如:当fpk(2..0)=000时,输出频率fo=厂c,分 频数n=l,输出波形为计数器的8位二进制数组的Do位,实现对输入信号clk的二分频脉冲;当fpk (2..0)=001时,输出频率fo=fc/2 ,分频数n=2,输出为8位二进制数组的Dl位,是对clk的四分频 脉冲;……;以此类推,八位二进制数组的第0—7位分别实现2 (n=1~8)分频,实现了可控的2的整 数次幂分频器. 用分频器实现的变频控制输出仿真波形如图1所示(VHDL程序略). elk {』 Lj~U 、u Ilj U1u U U U— Lf’ lj~lj 2./、 ’lj U U—U 《蔷 肇 }{‘ 0 X l j X≥ —矗诤辩IJ1 } l J l l l 1 l { l l l l I l 图2 分频器的仿真波形图 2.2多种标准信号模块的VHDL设计 对于所需要的各种标准信号,可以分别进行VHDL设计,以满足不同需要. 2.2.1正弦信号 正弦信号发生器可以利用FPGA器件内部的嵌入式阵列块EAB存储波形数据(取点数为64),通 过定制参数可设置宏功能块lpm—rom,作为模块供顶层电路调用.其VHDL设计如下,其中调用了底层 模块sindata.vhd. entity smgt lS port(elk:in std—logic;一一信号源时钟 dout:out stdlogic——vector(7 downto 0));一一8位波形输出 end; architecture dacc of singt is component sindata 一一调用波形数据存储器LPM.ROM port(address:in std—logic—vector(5 downto 0); inclock:in std—logic; q:out stdlogic——vector(7 downto 0)); end component; signal ql:std—logic—vector(5 downto 0); begin p ’ocess(elk) 一一地址发生器进程 begin if clk,、、’ent and clk:1 then ql<=ql+1: 第6期 王春玲等:可变频标准信号源的VHDL设计 8l end if; end process; ul:sindata port map(address=>ql,q >dour,inclock=>elk); end; .仿真时序如图3所示,与嵌入式阵列块EAB中的存储波形数据对照,可以验证时序是正确的 图3 正弦信号发生器的仿真时序波形 地址发生器模块(fenpinqi)与正弦信号发生器模块(singt)构成的频率可控正弦信号发生器电路见 图4.改变分额输入fpk(2..0)的数值,即可得到不同频率的正弦信号输出. I耋NO, N叠盖 0LK 瓮 ———砩砸q2 掰 竺坚!苎'_:型一一I  图4频率可。控正弦信号发生器顶层电路图 2.2.2其他标准信号 其他波形的变频控制原理与正弦信号的变频控制原理类似,区别只是波形数据的不同.可以采用与 正弦波相同的思路,先采样得到波形数据(可以用MATLAB完成,点数可根据需要设置,此处取64点) 然后存储在EAB中,由顶层电路调用.也可以直接用VHDL语言实现各不同波形模块的设计.在此采用 第二种方法,因与正弦信号相比,三角波(delta)、锯齿波(1adder)、斜波(包括递增斜波(icrs)和递减斜波 (dcrs))的VHDL设计相对简单,与采用EAB相比,占用资源更少. 三角波(delta)的原理是定义一个变量a,当输出小于“111111l0”时,再来一个脉冲输出置0,a置0; 否则当输出大于“00000000”时,每来一个脉冲输出减l,a置1.锯齿波也是定义一个变量a,当输出等于 “11l11111”时,再来一个脉冲,输出置0,a置1;否则每来一个脉冲输出加16,a置1.递增斜波(icrs)和 递减斜波(dcrs))则是每来一个脉冲分别使输入加1或减I即可.递减斜波(dcrs))的VHDL设计如下. entlty dcrs iS port(clk,reset:std—logic; q:out std—logic—vector(7 downto 0)); end dcrs; architecture behave of dcrs iS begin process(clk,reset) variable tmp:std logic—vector(7 downto 0); begin if reset= 0 then tmp:=”11111111”: elsif clk ̄vent and clk= l therl if tmp:”00000000”then tmp:=”1 1 111 1 11”: else tmp:=tmp一1: end if; end if; q<=tmp: 82 泰山学院学报 第3O卷 end process; end behave; 设计结果完成编译、仿真后分别打包,供顶层电路调用. 信号源输出波形的选择可以通过选择模块wavesel实现,设置输入控制端se1供用户选择输出为三 角波、锯齿波等. 3 变频标准信号源的顶层电路设计 顶层电路以原理图形式完成,见图5.图6给出选择控制端sel=0、1(即选择输出波形为递增斜波 (icrs)和递减斜波(dcrs)),分频控制端fpk(2..0):l、2(即输出频率取时钟elk的2分频和4分频)时 的仿真时序图. fp畦2q 。_1 ll fe {e|t ol 图5 变频标准信号源的顶层电路原理图 re ̄et 1 。—j ctk 0 咖唧嘲胍唧嘲l8咖8嗍嘲咖嘲咖哪嘲嘲8啷咖嘲嘲嘲硼釉咖矾舶唧l咖咖哪咖聃嘲咖咖咖悯唧8眦 萄i se[¨0l・ 0 、 亩i 研{2 o】一 ii q 0l - . . !趣篓靼婴l塑楚鞭堕I 趣!楚! !!翘 y皂 靼! 楚 楚! 望X jI: 。X I:X篓!上翼]_X 图6变频标准信号源顶层电路仿真时序图 4 结语 本文以大规模可编程器件FPGA为载体,利用多种EDA方法实现了变频标准信号源的设计.由于 占用硬件资源很少,可以方便地嵌人其他设计系统作为其中的信号发生模块;设计成果可以软IP核形 式存在,因此可以灵活移植和升级.该设计原理还可以扩展到随机信号或非标准信号的设计. [参考文献] [1]李晓明,曲秀杰.在信号发生器中DDS/FPGA的应用[J].现代电子技术,2006,(9). [2]潘松,黄继业.EDA技术与VHDL[M].北京:清华大学出版社,2005. [3]曾繁泰,陈美金.VHDL程序设计[M].北京:清华大学出版社,2001. [4]胡晓莉,江杰,王建国.EDA系统的宏模块在信号发生器中的应用[J].包头钢铁学院学报,2003,(12) The Design、vich VHDL of Frequency—Alterable Signal Sources WANG Chun—ling,WANG Jie (College of Physics and Electronic Engineering,Taishan University,Taihn,271021,China) Abstract:The designs of many kinds of standard signal sources based on Electronic Design Automation (EDA)technology are realized in this paper,and ̄equency—changed outputs based on frequency division theory is designed,too.The feasibility of the design is verified with compiler and timing simulating.This pa— per may has reference value for embedded design of sorts of signal generaters. Key words:standard signal source;frequency division;timing simulating;embedded design 

因篇幅问题不能全部显示,请点此查看更多更全内容