FPGA的并行多通道激励信号产生模块

[09-12 18:33:26]   来源:http://www.88dzw.com  EDA/PLD   阅读:8635

文章摘要:3.2.2 同步逻辑同步逻辑实现多通道波形产生控制模块的同步控制。信号产生通道的工作状态有闲置、异步工作和同步工作3种状态,由用户提供的同步控制命令决定。当波形产生控制命令加载到输出寄存器后,在接收到“准备好”命令后同步逻辑控制指定通道同步的输出控制命令。设计要求各通道具有独立产生信号的能力,且任意通道间可实现同步操作。首先由同步逻辑产生2分频、3分频和4分频电路分别同步2路、3路和4路的信号输入,只有1路信号输出时采用串行时钟即可。然后根据用户同步通道控制命令,控制多路选择通道输出相应的同步时钟。采用同步时钟选择方法设计的多路同步时钟仿真图如图4所示。从图中可见,2位的同步时钟控制地址s1

FPGA的并行多通道激励信号产生模块,标签:eda技术,eda技术实用教程,http://www.88dzw.com


  3.2.2  同步逻辑

  同步逻辑实现多通道波形产生控制模块的同步控制。信号产生通道的工作状态有闲置、异步工作和同步工作3种状态,由用户提供的同步控制命令决定。当波形产生控制命令加载到输出寄存器后,在接收到“准备好”命令后同步逻辑控制指定通道同步的输出控制命令。设计要求各通道具有独立产生信号的能力,且任意通道间可实现同步操作。首先由同步逻辑产生2分频、3分频和4分频电路分别同步2路、3路和4路的信号输入,只有1路信号输出时采用串行时钟即可。然后根据用户同步通道控制命令,控制多路选择通道输出相应的同步时钟。采用同步时钟选择方法设计的多路同步时钟仿真图如图4所示。


  从图中可见,2位的同步时钟控制地址s1、s0控制着同步时钟DDSclk的输出。当地址位s1和s0分别为00、01、10和11时,同步时钟DDSclk分别输出了串行时钟和串行时钟2分频、3分频与4分频。其中2分频和4分频通过对串行时钟计数跳转即可实现,方法简单且效果良好。对于3分频的实现则要复杂一点,方法是通过将2个占空比不为50%的3分频信号相与得到1个占空比为50%的时钟输出,如图中div3:inst10/b与div:inst10/c相与得到的3分频时钟输出div3output。

  3.2.3  信号产生和调理输出

  信号产生和调理输出部分的作用是通过接收控制命令对各通道的DDS电路进行控制。经过FIFO缓冲的16位来自用户的控制命令FIFO_DATA,由数据控制部分识别、解析、校验后传输到数据串/并转换模块,串/并转换模块按照数据格式的要求将其转换为2位通道地址总线部分(c1,c0)、6位DDS寄存器地址总线部分(d5~d0)和8位数据总线部分(d7~d0),组成16位控制字,如下所示:


  由2位的通道地址选中命令接收通道,6位的DDS寄存器地址总线输出后控制AD9854的寄存器的0x00~0x27单元,8位的数据总线传输波形产生信息和增益控制信息。其中6位的地址总线除了作为DDS寄存器地址外,还用于同步状态的设置。当地址总线为0x3F时,控制器进入同步设置状态,此刻的8位数据总线用于传输同步设置内容。图5为并行多通道波形产生模块的部分状态转换图。


  图6为信号产生和调理输出模块的逻辑仿真图,图中DDSA1~DDSA4为6位的DDS寄存器地址总线,DDSD1~DDSD4为8位的数据总线,DDSclk为同步时钟。通过同步设置,选择了1、3通道输出波形,并使DDSclk输出串行时钟的2分频。从图中可看出,此次是对1、3通道进行信号产生的控制,而没有对2、4通道进行操作。同时将16位的FIFO_DATA控制命令译码后输出,图中FIFO_DATA的0x0125经译码后,选中通道1,并驱动DDSAl输出0x01,DDSD1输出0x25。


  4  模块测试

  首先对各通道的信号产生电路进行单独的测试,然后任意选择2路通道产生独立的激励信号,再分别选择3路和4路通道进行测试。进行以上测试测得模块各通道间异步工作正常,而后进行通道同步测试。设置多通道波形产生模块16位控制字中的a[5:0]为0x3F,进入同步设置模块,设置通道选择和通道输出频率后,对同步通道进行测试,测得同步通道模块工作正常,满足设计要求。

上一页  [1] [2] [3]  下一页


Tag:EDA/PLDeda技术,eda技术实用教程EDA/PLD
分类导航
最新更新
热门排行