当前位置:首页 > EDA > 电子设计自动化
[导读] 任意波形发生器(AWG)在通信系统、测试系统等方面得到广泛应用。本文利用自主研制的150 MSPS 12位DAC和300MSPS 12位DAC,基于CPLD技术,设计了一种AWG。要产生的波形通过上位机软件设置,然后将波形数据下载到AWG,AWG在

 任意波形发生器(AWG)在通信系统、测试系统等方面得到广泛应用。本文利用自主研制的150 MSPS 12位DAC和300MSPS 12位DAC,基于CPLD技术,设计了一种AWG。要产生的波形通过上位机软件设置,然后将波形数据下载到AWG,AWG在CPLD的高速控制电路下将波形数据送高速DAC进行转换形成所要的波形。

任意波形发生器的硬件结构

AWG的工作过程是,首先接收上位机送来的波形数字信号存储到SRAM,然后启动控制电路从SRAM取出数据送DAC进行数摸转换,转换后的模拟信号送低通滤波器形成波形。如果DAC工作在150MSPS的速度下,可以以150MHz的频率送数据到DAC进行转换,微控制器的晶振输入一般工作在40MHz以下,没有这么高的速度送出数据到DAC,所以考虑采用CPLD构建硬件控制电路。数据首先传送到SRAM,然后在CPLD硬件控制电路的控制下,以150MHz的频率从SRAM中取数送DAC转换。其体系结构如图1所示。如果要形成正弦周期信号,每周期4个点就可以合成一个波形,此时可以输出约38MHz的高频信号。

图1 AWG硬件结构

CPLD(复杂可编程逻辑器件)是在传统的PAL、GAL基础上发展而来的,具有多种工作方式和高集成、高速、高可靠性等明显的特点,在超高速领域和实时测控方面有非常广泛的应用。与FPGA相比,CPLD比较适合计算机总线控制、地址译码、复杂状态机、定时/计数器、存储控制器等I/O密集型应用,且无须外部配置ROM、时延可预测等。目前的CPLD普遍基于E2PROM和Flash电可擦技术,可实现循环擦写。Altera 公司的MAX7000 CPLD配置有JTAG口,支持ISP编程。用VHDL或Verilog HDL设计的程序,借助EDA工具经过行为仿真、功能仿真和时序仿真后,通过综合工具产生网表,下载到目标器件,从而生成硬件电路。

本装置中,CPLD采用Altera公司的EPM7128AE,其最高工作频率达200MHz。微控制器采用Atmel公司AVR微控制器AT90S8515。SRAM选用64K x 16的CY7C1021V。

图2 DAC控制电路

图3 DAC控制电路仿真结果

图4 波形数据产生软件

图5 2FSK波形

CPLD电路设计

CPLD主要负责以高速率(150MHz)从SRAM中取数到DAC,其核心电路是一个13位的计数器。波形数据文件的大小为8Kbytes。如果要扩大波形文件的大小,可以根据需要增加CPLD的地址计数器容量。在CPLD内部构造的DAC控制电路如图2所示,下面对其控制流程进行分析。

PA[15:0]接AT90S8515的2个8位并行口;D[15:0]接SRAM的数据线D0-D15;AD[12:0]接SRAM的地址线A0-A12;DB[15:0]接DAC的D0-D11(D12-D15不用);CLK_SEL选择计数器的时钟输入方式;CLK_AVR接MCU的一个I/O端,通过软件编程在CLK_AVR输出脉冲信号作为计数器的时钟;CLK_CPLD接150MHz时钟信号;/WR和 /WE接MCU的I/O端。

当PC机下载数据时,其控制流程如下:

①CLK_SEL=0,选择软件时钟

②复位地址计数器

③MCU送数据到PA[15:0]

④/WR从0变到1,打开从MCU到SRAM的数据缓冲器将数据写入SRAM

⑤给CLK_AVR一个脉冲,让计数器增1从而指向SRAM的下一个接收地址单元。

当数据下载完成后, 启动CPLD从SRAM取数据到DAC,其控制流程如下:

①WE=1,打开从SRAM到DAC的缓冲器。

②CLK_SEL=1,计数器的输入时钟选择150MHz的外部时钟,

③复位地址计数器,外部高速时钟的驱动下地址计数器开始计数,从SRAM中取出数据送到DAC进行数据转换。

CPLD的编程在Quartus II 5.0环境下进行,Quartus的设计输入支持AHDL、VHDL、Verilog HDL等硬件描述语言的程序输入和图形输入,这里采用图形输入的方式。完成设计输入后,依次进行编译、功能仿真、时序仿真。图3是CPLD取数据到DAC进行转换的时序仿真结果。图中CPLD的工作频率为125MHz,实际工作中最高工作在200MHz,从图中可以看出,每来一个时钟,CPLD从SRAM中取出一个数据送DAC进行A/D转换。最后将结果下载到CPLD内部运行。

软件设计

AWG的软件采用CodeVision AVR C编写,AT90S8515支持ISP,程序编译后经JTAG口下载到AT90S8515中。为配合该装置的使用,我们在VB开发环境下设计了上位机软件,其运行界面如图4所示,在该软件中选择要产生的波形,然后下载到AWG。

AWG和PC机采用RS-232串口通信, 上电运行后等待PC传送波形,接收完波形数据后,启动CPLDSRAM中取出数据送DAC进行D/A转换,经低通滤波器形成输出波形。

结语

AWG和PC机通过RS-232串口连接后,运行PC机软件,在PC机上选择要生成的波形,生成波形数据下载到AWG,可以选择线性调制技术的绝对相移键控(BPSK)、相对相移键控(DPSK)、四相相移键控(QPSK)、交错正交相移键控(OQPSK)、p/4偏移差分相移键控(p/4-DQPSK),恒包络调制的二进制频移键控(FSK)、最小频移键控(MSK)、高斯滤波最小频移键控(GMSK),混合线性和恒包络调制技术的M相相移键控(MPSK)、多进制正交幅度调制(QAM)、多进制频移键控(MFSK)等波形,下载到AWG生成所要的波形。图5是DAC工作在125MHz下合成的2FSK波形

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

该产品线提供了并行SRAM的低成本替代方案,容量高达 4 Mb,具有143 MHz SPI/SQI™通信功能

关键字: SRAM 存储器 MCU

正弦信号发生器是一种用于产生正弦波信号的电子设备,广泛应用于通信、测试和测量等领域。该发生器主要由两部分组成:正弦波信号发生器和调频、调相、键控等信号产生部分。

关键字: 正弦波信号发生器 CPLD

CPLD(可编程逻辑器件)无刷直流电机驱动设计是一种基于硬件可编程逻辑电路的电机驱动方法。CPLD无刷直流电机驱动设计的主要目的是实现高效率、高可靠性和精确控制。以下是CPLD无刷直流电机驱动设计及原理的一些基本信息:

关键字: 无刷直流电机 CPLD 可编程逻辑电路

SRAM : 静态RAM,不用刷新,速度可以非常快,像CPU内部的cache,都是静态RAM,缺点是一个内存单元需要的晶体管数量多,因而价格昂贵,容量不大。

关键字: SDRAM SRAM DRAM

本文提供一种校准数模转换器(DAC)的方法,专用于引脚电子器件驱动器、比较器、负载、PMU和DPS。DAC具有差分非线性(DNL)和积分非线性(INL)等非线性特性,我们可以通过增益和偏置调整来尽可能降低这些特性。本文描...

关键字: ADI DAC 电子器件

存算一体化是指将传统以计算为中心的架构转变为以数据为中心的架构,它可以突破冯·诺伊曼架构下存算分离的瓶颈,直接利用存储器进行数据处理,从而把数据存储与计算融合在同一芯片中,极大提高计算并行度与能效比。

关键字: 台积电 N3E SRAM

2022年11月17日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 分销商贸泽电子 (Mouser Electronics) 即日起备货Texas Instruments (TI) DAC63202...

关键字: 贸泽电子 DAC

为物联网应用选择电子元件的两个关键标准是功率预算和性能。自从电子产品问世以来,就一直在这两者之间进行权衡——要么获得最佳功耗,要么获得最高性能。根据应用程序,系统架构师对系统中的不同组件有不同的要求。例如,系统可能需要高...

关键字: 物联网功耗 SRAM

摘要:基于DSP和CPLD设计了CAN一1553B网关,选择了1553B总线作为电机控制系统的主总线,其主要用于操作系统与子控制系统之间的通信。为了更好地完成各节点之间的通信,采用CAN总线作为子系统总线,构建基于CAN...

关键字: 电机控制网络 1553B总线 CPLD

(全球TMT2022年8月11日讯)株式会社博报堂(以下简称"博报堂")和D.A.Consortium Inc.(以下简称"DAC")欣然宣布成立H+。H+是一个跨公司的战略组织,将与博报堂和DAC的东京办事处密切合作...

关键字: DAC INSIGHT MT
关闭
关闭