• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 直接数字频率合成器DDS的优化设计

直接数字频率合成器DDS的优化设计

录入:edatop.com     点击:

当MSB-1为‘0’(一,三象限)时,对查找地址phase(5...0)不做任何处理;当其为‘1’(二,四象限)时,对phase(5...0)取反。ROM的输出为10位数据,其中最高位为符号位。当MSB为‘0’(一,二象限)时,输出信号符号位为‘0’,低9为ROM中的幅度数据;当其为‘1’(三,四象限)时,输出信号符号位为‘1’,低9位为ROM中的幅度数据的相反数的补码。ROM的VHDL实现的主要部分如下:

architecture Behavioral of rom is

signal sin:STD_LOGIC_VECTOR(8 downto 0);

signal temp:STD_LOGIC_VECTOR(5 downto 0);

begin

temp<=phase when MSB-1=′0′ else

not phase;

process(temp)

begin

case temp is

when ″000000″=>

sin<=″000000000″;

…… --正弦查找表由MATLAB生成

end case;

end process;

data_out<=″0″ & sin when MSB=′0′ else

″1″ & not sin+″000000001″;

end Behavioral;

2.3 同步接口电路设计

在使用DDS时,需要为其提供频率控制字K的值,一般通过中央控制单元MCU来完成,其以数据总线及写时钟信号的方式与FPGA内的DDS实体进行通讯,同时DDS在FPGA内部又是在本地时钟fc驱动下运行。由于MCU的写时钟和FPGA内的本地时钟异步,两者之间进行通讯难免存在数据不稳等问题,特别是在通讯速度较高时,这一异步接口问题会更加突出。为了实现异步接口的同步化,本文提出了如图3所示的接口同步电路。

3 硬件实现及仿真结果

本文使用VHDL 语言对各个模块及DDS系统进行描述。顶层文件如下所示:

Entity dds is

Port(reset:in std_logic;--全局复位信号

fre:in std_logic_vector(7 downto 0);

--频率控制字输入

clk:in std_logic;

--系统时钟

fwwrn:in std_logic;      --频率控制字写信号

gen:in std_logic_vector(0 downto 0);--波形控制字

amp_out:out std_logic_vector(9 downto 0));

来源:21IC

上一篇:网络存储系统容错编码技术进展
下一篇:基于WinCE平台的QR条码识别系统

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图