当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]摘要:分析了DDS中流水线结构及输入数据在其中移动的特点,提出了一种DDS流水线结构的改进方案,给出了实现的方法并作了仿真,分析了对DDS电路性能的改进方案。关键词:DDS

摘要:分析了DDS中流水线结构及输入数据在其中移动的特点,提出了一种DDS流水线结构的改进方案,给出了实现的方法并作了仿真,分析了对DDS电路性能的改进方案。

关键词:DDS 流水线 改进的流水线结构

DDS(Direct Digital Synthesizer)以其频率分辨率高、转换速率快及波形变换灵活等特点,已广泛应用于通讯、雷达、GPS、蜂窝基站有HDTV等领域。DDS相位字长及运算速度决定了DDS的性能[1],相位累加器、移相加法器及LUT的字长越长,频率分辨率及波形精度越高,相位截尾误差越小[2]。目前DDS相位累加器的位数一般在32~48位之间;而时钟频率越高,输出频率的范围越大。流水线是高速电路中一种常用的技术[3],高速、高精度DDS的相位累加器、相移加法器、用于调幅及正交调制的乘法器都采用了流水线结构。

普通的流水线结构所占用的寄存器资源和其级数的平方比正比,无论是现有的专用DDS集成电路,还是采用FPGA等可编程器件实现,都将占用大量寄存器资源。其实,DDS中的输入数据一般在一个较长的时间内保持不变。基于这一特点,本文提出一种改进的DDS流水线结构,可以大大减少占用的寄存器资源。

1 问题的提出

1.1 DDS结构及工作原理

图1是包含移相及调幅部分的相位累加型DDS的结构框图。每一时钟周期,N位相位累加器PA与N位频率控制字FW累加一次。其结果的高M位作波形表LUT(Look-Up Table)的地址,如果加上PSR的值可实现移相,从LUT中读出D位波形数据送DAC。若乘以AR的值还可实现调幅。改变FW的值可改变输出频率,改变PSR的值可实现调相,改变AR的值可以实现调幅。一般情况下,FW、PSR及AR刷新频率要比DDS系统时钟慢得多。

1.2 DDS中流水线结构

当DDS的相位字长较长、速度较高时,相位累加器、移相加法器或其综合及调幅乘法器一般都采用流水线结构。以下仅以相位累加器为例,分析流水线的结构、性能及其改进。当相位累加器采用m级n位流水线结构时,有, 这里PA,FW分别是相位累加器的值和相位阶距,PAm是各级加法器的部分和。其中,输入缓冲流水线为m级n位,占用寄存器[(m-1)×m×n]/2 位,而相位累加器输出的高M位需m1=int[(m-1)/m]+1级流水线,占用[(m1-1) ×m1×n]/2+m1×(M mod m)(int[·]是取整运算)。图2、3分别是m=4、n=4、M=8时相位累加器的结构及时序图。此时,输入流水线占用24位寄存器;m=8、n=4 时(32位相位累加器),输入流水线占用112位寄存器;m=12、n=4,(48位相位累加器),占用264位寄存器;若选取m=48、n=1,则占用 1128位寄存器。如果省去输入流水线,改变相位阶距时,将导致相位紊乱。

2 改进的流水线结构

2.1 结构及其工作原理

一般来说,DDS控制数据刷新速率远低于系统时钟。以相位累加器为例,进入各组加法器的频率控制字值,只在数据更新后的前m个时钟周期变化。以后各个周期不再变化。基于这种情况,可以对累加器进行改进,从而节省部分寄存器。图4是改进输入流水线的相位累加器结构图,图5是输入数据及控制信号的时序图。

在输入数据D0~15(N)准备好后,由外部控制系统向流水线刷新控制电路 CON发出一启动信号Start,CON在Start下降沿后的第一时钟上升沿到来时,输入写入脉冲WR0,将D0~3(N)写入第一级流水线寄存器;第二时钟上升沿到来时,输出写入脉冲WR1,将D4~7(N)写入第二级流水线寄存器;依次类推,到第四上升沿到来时,输出写入脉冲WR3,将 D12~15(N)写入第四级流水线寄存器,完成一次数据的刷新。在以后的周期内,这些数据将保持不变,直至新的Start到来。

改进后的流水线所占用的寄存器位数和相位的字长相等,


与流水线的级数无磁。相位字长较长时,这种改进的效果是非常明显的。

2.2 刷新控制器的设计

刷新控制器实质上是一种阵发式脉冲分配器,由Start启动,当完成一个周期的脉冲分配输出后,便停止计数。阵发式脉冲分配器的设计及实现方法很多,以下是基于Altera的FPGA,以MAX+Plus Ⅱ的HDL实现的阵发式脉冲分配器,流水线中的寄存器为上升沿有效,延迟时间为12.5ns,速度可达80MHz(FLEX 10K20RC240-4),图6是其仿真结果。

(FLEX 10K20RC240-4),图6是其仿真结果。

SUBDESIGN control

(cp,start : INPUT;

q3,q2,q1,q0 : OUTPUT;)

VARIABLE

s:MACHINE OF BITS (q3,q2,q1,q0)WITH STATES

(s0=b"0000",s1=b"0001",s2=b"0010",

s3=b"0100",s4=b"1000");

BEGIN

s.clk = cp;

s.reset = start;

TABLE s=>s;

s0=>s1;s1=>s2;s2=>s3;s3=>s4;s4=>s4;

END TABLE;

END;

2.3 性能改善

2.3.1 寄存器的减少

输入流水线结构改后后,寄存器的位数和相位累加器的位数呈线性关系,位数大大减少,特别是对级数较多的流水线,即使对寄存器密集型的FPGA,这也是有益的。

2.3.2 功耗降低

由于仅在刷新数据时,流水线中触发器的状态发生改变,在以后很长一段时间内,状态不再改变,这对降低电路功耗是有益的。

2.4 应用

在刷新数据时,只要输出一个启动信号,使用方法和方案一样便捷。启动信号通常由外部控制电路给出,上例中,


刷新动作从启动信号Start后的第一个时钟上升沿开始。

需要注意的是,在刷新数据时,每一组数据保持的时钟周期数必须大于流水线的级数。上命名中,数据必须保持4个时钟周期以上,否则高位数据将不能传送到相应级的累加器。

本文分析了高速DDS中的频率控制字、相移字等输入数据的变化特点。提出了一种 DDS流水线结构的改进方案,给出了具体实现的方法及仿真,并成功地用于高频高精度AWG的研制。用这种方法设计的DDS及NCO等电路,降低了寄存器的占用,也降低了系统的功耗,可有效提高电路的性能价格比。这种设计方法对其它的流水线结构设计也有一定的参考价值。

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

控制寄存器(Control Register)是中央处理器(CPU)中用于管理系统级操作的特殊寄存器,它为操作系统和硬件提供对处理器行为的精细控制。本文从计算机体系结构角度系统阐述控制寄存器的设计原理、功能分类、操作机制...

关键字: 寄存器 处理器

在嵌入式系统开发中,硬件抽象层(Hardware Abstraction Layer,HAL)起着至关重要的作用。它为上层软件提供了统一的硬件访问接口,隐藏了底层硬件的细节,使得软件具有更好的可移植性和可维护性。C++作...

关键字: 嵌入式C++ HAL 寄存器 封装

采用51单片机最小开发板,由8位自制独立按键控制。单片机芯片为STC89C52RC,晶振为@12.000 mhz。8X8LED点阵屏模块由MAX7219驱动,MAX7219包含一个自动扫描电路。你只需要把要显示的数据发送...

关键字: 51单片机 MAX7219 寄存器

电源管理集成电路(PMIC)有益于简化最终应用并缩小其尺寸,也因此备受青睐。然而,当默认启动时序和输出电压与应用要求不符时,就需要定制上电设置。大多数情况下,电路没有可以存储这些设置的非易失性存储器(NVM)。对此,低功...

关键字: 电源管理 集成电路 寄存器

我从Digilent公司拿出了我的Arty Z7板,并在Vivado/Vitis 2021.2中创建了一个项目来让它工作,你可以在我的上一个项目帖子中阅读,我在QDSP-6061的5位数上显示滚动文本,上面写着“Hell...

关键字: 寄存器 AXI4 QDSP-6061 RTL模块

直接数字合成(DDS)技术正在迅速发展,但UHF和微波输出频率的直接合成尚不实用或经济上不可行。

关键字: DDS

在单片机系统的设计中,复位电路是确保单片机正常工作的关键组成部分。它能够在系统启动时将单片机的内部寄存器和状态设置为初始值,保证单片机从一个确定的状态开始运行。与门芯片作为一种常见的数字逻辑芯片,有时会被应用于单片机复位...

关键字: 复位电路 寄存器 单片机

在数字电路设计中,计数器是一种基础的数字电路组件,用于记录并显示脉冲信号的数量或频率。4进制计数器,即模4计数器,是一种特殊的计数器,其计数范围从0到3,共4个状态。本文将深入探讨如何结合D触发器与寄存器来实现一个4进制...

关键字: D触发器 寄存器 计数器

北京2024年10月29日 /美通社/ -- 亚马逊云科技日前宣布,通过与光环新网与西云数据的紧密合作,在亚马逊云科技(北京)区域和(宁夏)区域推出Amazon Lambda SnapStart功能,将基于Java La...

关键字: START 亚马逊 PS 函数

北京2024年10月21日 /美通社/ -- 随着自动驾驶算法技术的快速发展,基于BEV+Transformer的感知范式为高阶自动驾驶提供了更高精度感知、更强场景泛化能力和更优多模态融合的方案,是目前各大主流...

关键字: 模型 自动驾驶 延时计算 DDS
关闭