当前位置:首页 > EDA > 电子设计自动化
[导读]介绍了基于可编程逻辑器件CPLD和直接数字频率合成技术(DDS)的三相多波形函数发生器的基本原理,并在此基础上给出了基于CPLD的各模块设计方法及其VHDL源程序。

  摘要:介绍了基于可编程逻辑器件CPLD和直接数字频率合成技术(DDS)的三相多波形函数发生器的基本原理,并在此基础上给出了基于CPLD的各模块设计方法及其VHDL源程序。

    关键词:CPLD;直接数字频率合成;函数发生器;VHDL

1 引言

直接数字频率合成 ?Direct Digital Synthesis ,DDS?是20世纪60年代末出现的第三代频率合成技术。该技术从相位概念出发,以Nyquist时域采样定理为基础,在时域中进行频率合成。DDS频率转换速度快,频率分辨率高,并在频率转换时可保持相位的连续,因而易于实现多种调制功能。DDS是全数字化技术,其幅度、相位、频率均可实现程控,并可通过更换波形数据灵活实现任意波形。此外,DDS易于单片集成,体积小,价格低,功耗小,因此DDS技术近年来得到了飞速发展,其应用也越来越广泛。

基于CPLD和DDS技术的函数发生器可以实现信号波形的多样化,而且方便可靠,简单经济,系统易于扩展,同时可大大提高输出信号的带宽。

2 系统原理

2.1 CPLD内部设计

CPLD的内部结构框图如图1所示,图中,首先由控制寄存器将外部控制器(如单片机)送入的数据转换为频率和幅度控制字;然后再由分频器根据频率控制字进行分频并将输出作为寻址计数器的时钟;寻址计数器的寻址空间为360字节,可对ROM中的查找表进行寻址;而通过模360加法器可以产生120°的相位差。

    2.2 CPLD的外围电路

图2所示是CPLD的外围电路连接图。图中,CPLD幅度控制字经D/A转换输出后,可作为查找表输出DAC的参考电压,该参考电压可通过改变幅度控制字来进行改变,从而改变输出信号的幅度。

3 CPLD各模块的设计

3.1 控制寄存器的设计

控制寄存器设计主要是将外部控制器输入的数据转换为频率和幅度控制字。其程序代码如下:

--////////////调库////////////--

entity controller is

port(clk:in std_logic;

datain:in std_logic;

ad:out std_logic_vector(16 down to 0);

freq:out std_logic_ vector(16 down to 0));

end;

architecture dataflow of controller is

signal out1:std_logic_vector(16 down to 0);

begin

s2p:process(clk,datain)

variable temp:std_logic_vector(16 down to 0);?

begin

if clk'event and clk=‘1’ then

temp:=temp(15 down to 0)&datain;

end if;

out1<=temp;

end process s2p;

mux:process(out1(16))

begin

if out1(16)=‘1’ then

ad<=out1(15 down to 0); --1号寄存器为幅度控制字

else

freq<=out1(15 downto 0); --0号寄存器为频率控制字

end if;

end process mux;

end;

图3

    3.2 分频比可变的分频器模块设计

该设计主要是根据频率控制字决定分频倍数,从而输出与频率控制字相对应的频率时钟,此模块的输出可作为寻址计数器的时钟。具体代码如下:

process?clk? --clk为外部时钟(如晶振)

variable temp,fen:std_logic_vector(15 down to 0);?

constant temp1:std_logic_vector(15 down to 0):=“1111111111111111”;

variable a:std_logic;

begin

fen:=temp1-fen_in; --使分频后的频率正比于频率控制字

if clk=‘1’ and clk'event then

if temp=(‘0’&fen(15 down to 1)) then --相当于除2运算

a:=not a;

temp:=temp+1;

elsif temp=fen then

a:=not a;

temp:=“0000000000000000”;

else

temp:=temp+1;

end if;

end if;

fen out<=a; --fen out 为输入时钟的频率fen倍分频

end process;

3.3 寻址计数器设计

寻址计数器主要用于产生对ROM寻址输出波形数据的寻址信号,寻址空间为360字节,具体的程序代码如下:

process(clk)

variable temp:integer range 0 to 359;

begin

if clk=‘1' and clk'event then

if temp<359 then

temp:=temp+1;

else

temp:=0;

end if;

end if;

adress<=temp;

end process;

3.4 模360加法器设计

此模块用来产生120°的相移,以形成三相相差为120°的输出波形。由于寻址空间为360字节,故在输出寻址数大于360时,须对360取模。程序如下:

process(adress_in)

variable temp?integer range 0 to 511;

begin

temp:=adress in+120;--相移120°

if temp<360 then;

adress out<=temp?

else

adress_out<=temp-360;--综合工具不支持取模运算,故采用减法器来实现

end if;

end process;

3.5 查找表ROM设计

此模块主要用于存储各种波形数据,以便通过寻址计数器寻址输出并经D/A转换来输出各种波形,其中包括正弦波、三角波、方波以及锯齿波。代码如下:

process(adress,sel)

begin

if sel=“00” then --sel为波形选择端口,选择输出波形,00为正弦波

case adress is

when 000=>data<=0; when 001=>data<=4; ......--正弦波查找表

when others=>null;

end case;

else if sel=“01” then --01输出方波,

if adress<180 then

data<=255;

else

data<=0;

end if;

else if sel=“10” then --锯齿波

data<=adress/2;

else --三角波

if adress<180 then

data<=adress;

else

data<=adress-180;

end if;

end if;

end process;

由以上各模块组成的三相波形发生器原理图如图3所示。

4 结束语

此方案可以方便地输出多种三相波形,而且,由于CPLD具有可编程重置特性,因而可以方便地改变控制方式或更换波形数据,而且简单易行,易于系统升级,同时具有很高的性价比。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

是德科技京东自营旗舰店在本月9日重磅开业,开业期间(9日至11日每天10:00)推出"限时秒杀"活动,多款高端测试仪器以超值优惠价格回馈广大科研工作者和工程师。本次活动精选三款明星产品:EDU36311A三路输出台式电源...

关键字: 示波器 台式电源 函数发生器

上海2025年9月5日 /美通社/ -- 由上海市经济和信息化委员会、上海市发展和改革委员会、上海市商务委员会、上海市教育委员会、上海市科学技术委员会指导,东浩兰生(集团)有限公司主办,东浩兰生会展集团上海工业商务展览有...

关键字: 电子 BSP 芯片 自动驾驶

推进卓越制造,扩大产能并优化布局 苏州2025年9月5日 /美通社/ -- 耐世特汽车系统与苏州工业园区管委会正式签署备忘录,以设立耐世特亚太总部苏州智能制造项目。...

关键字: 智能制造 BSP 汽车系统 线控

慕尼黑和北京2025年9月4日 /美通社/ -- 宝马集团宣布,新世代首款量产车型BMW iX3将于9月5日全球首发,9月8日震撼亮相慕尼黑车展。中国专属版车型也将在年内与大家见面,2026年在国内投产。 宝马集团董事...

关键字: 宝马 慕尼黑 BSP 数字化

北京2025年9月4日 /美通社/ -- 在全球新一轮科技革命与产业变革的澎湃浪潮中,人工智能作为引领创新的核心驱动力,正以前所未有的深度与广度重塑各行业发展格局。体育领域深度融入科技变革浪潮,驶入数字化、智能化转型快车...

关键字: 人工智能 智能体 AI BSP

上海2025年9月2日 /美通社/ -- 近日,由 ABB、Moxa(摩莎科技)等八家企业在上海联合发起并成功举办"2025 Ethernet-APL 技术应用发展大会"。会议以"破界•融合...

关键字: ETHERNET 智能未来 BSP 工业通信

传感器模块能实现便捷无接触的后备箱或侧滑门开启,适配各种车辆架构 该24 GHz雷达传感器可集成于保险杠或底盘上,并通过特定的手势或脚部动作触发响应 已为多家欧洲主流车企启动量产交付 德国布尔2025...

关键字: 传感器 BSP 触发 保险杠

以高效节能方案绘制AI算力绿色未来 上海2025年8月29日 /美通社/ -- 8月28日,台达受邀出席"2025中国智算产业绿色科技大会",全方位分享台达在智算领域的前沿洞见与绿色解决方...

关键字: AI 可持续发展 数据中心 BSP

淄博2025年8月29日 /美通社/ -- 8月26日至27日,TÜV南德意志集团(以下简称"TÜV南德")受邀参加由淄博市...

关键字: BSP 人工智能 信息安全 新加坡

北京2025年8月28日 /美通社/ -- 近日,北京亦庄创新发布消息,北京经济技术开发区(简称北京经开区,又称北京亦庄)以"高效办成一件事"为抓手,围绕企业信用修复的全流程全环节,打造经开区特色的&...

关键字: 数字化 集成 BSP 数据共享
关闭