0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于EPLD器件MAX7256ATC144-6简化任意波形发生器SDRAM控制器的设计

电子设计 来源:电子技术应用 作者:储飞黄,杨景曙, 2020-05-19 08:09 次阅读

任意波形发生器在雷达、通信领域中发挥着重要作用,但目前任意波形发生器大多使用静态存储器。这使得在任意波形发生器工作频率不断提高的情况下,波形的存储深度很难做得很大,从而不能精确地表达复杂信号。本文介绍的基于动态存储器(SDRAM)的设计能有效解决这一问题,并详细讨论了一种简化SDRAM控制器的设计方法。

1 、任意波形发生器的总体方案

工作频率、分辨率和存储长度是任意波形发生器最关键的三个性能参数。高的工作频率意味着高的输出信号频率和带宽,高的分辨率通常意味着高的信噪比,而存储长度决定了信号的精确程度。下面介绍的方案是实际开发的一款任意波形发生器/卡(如图1所示),它的工作频率为300MHz,分辨率为14位,存储长度为8M字,现已得到了广泛地应用。

基于EPLD器件MAX7256ATC144-6简化任意波形发生器SDRAM控制器的设计

该电路主要有两种工作状态:写数据状态和读数据状态。下面简单描述其工作过程。

写数据状态:CPU根据所要设计的波形计算波形数据,并转换成14位的无符号数;打开总线开关,屏蔽FIFO操作,在SDRAM控制器的配合下,将波形数据通过接口电路交替写入SDRAM1和SDRAM2中,即SDRAM1中依次存放数据0,2,4,6.。.;SDRAM2中依次存放数据1,3,5,7.。.(如表1所示)。

基于EPLD器件MAX7256ATC144-6简化任意波形发生器SDRAM控制器的设计

读数据状态:开启FIFO通道,关闭总线开关以断开SDRAM与CPU之间的数据连接;在SDRAM控制器的控制下,将SDRAM1/2中的数据同时(并行)读出;经过FIFO的缓冲得到连续的数据流,再经32位向16位的并串转换,将数据速率提升2倍后,供给DAC进行数-模转换,即可得到所编辑的信号。

图1中用两片SDRAM并行工作,是因单片SDRAM不可能提供300MSPS的数据流。实际使用的器件是K4S641632C-TC60,工作时钟为166MHz。FIFO缓存SDRAM的输出数据,将突发数据流转换成连续数据流,使得在SDRAM处于刷新状态时,仍能维持正常的数据输出。实际使用的器件是两片并行工作的IDT72V263L6PF,写入时钟为166MHz,读出时钟为150MHz。并串转换的作用是提升数据的速率,在DAC器件内部完成,笔者采用具有良好动态性能的AD9755AST。CPU及控制接口是一个基于PC的ISA设备,可改进为PCI设备;时钟电路用来产生166MHz和150MHz的同步时钟。下面重点研究SDRAM控制器的设计,它是本系统的主要特色之一。

2 、SDRAM控制器的设计

2.1 SDRAM的主要特点

与静态存储器(SRAM)相比,SDRAM的容量大(通常是几倍至几十倍的关系);与DDR SDRAM或RDRAM相比,它的控制又相对简单,因而它依然是大容量存储器工程项目的良好选择。下面描述的几个重要基本概念反映了它的主要特点。

行列地址:SDRAM的地址是行列复用的,此举有效减少了芯片的引脚。

预充电:读写操作只对预充电过的行有效。也就是说,在数据读写操作跨行时,需要先进行至少一次的预充电操作。

自动刷新:众所周知,只要是动态RAM,就存在刷新问题,SDRAM也不例外。通常每隔64ms需要将所有存储单元刷新一遍。

自刷新:当需要保留芯片内的数据,而暂时又不需要操作时,可以设置芯片进入自刷新状态。

工作模式寄存器:控制SDRAM工作方式的寄存器(如表2所示)。

基于EPLD器件MAX7256ATC144-6简化任意波形发生器SDRAM控制器的设计

2.2 SDRAM的状态流程

SDRAM的完整状态机由17个状态构成,且状态转移是非随机的(如图2所示)。正是如此众多的状态及其复杂的转换关系,导致SDRAM的控制较为复杂。

基于EPLD器件MAX7256ATC144-6简化任意波形发生器SDRAM控制器的设计

需要特别说明的是,SDRAM的状态转移有自动转移与人工转移之分(图2中以粗细箭头加以区别)。自动转移在当前状态结束后立即进入下一个状态;而人工转移在当前状态结束后即停留在当前状态,只有一条当前状态允许的命令才能进入下一个状态。

可以想象,自行设计如此复杂的控制流程绝非易事。值得庆幸的是,在大多数应用中并不需要完备的状态机。下面讨论一种简化的SDRAM状态机。

2.3 简化的状态流程

根据任意波形发生器的特点,对SDRAM的功能进行了以下简化:

(1)省略随机存取功能,固定为顺序读写;

(2)省略待机、自刷新、普通读/写功能;

(3)省略所有的挂起功能;

(4)工作模式固定为突发式读、单个式写;

(5)数据延时固定为3个时钟周期;

(6)刷新模式只使用自动刷新方式,器件空闲时即处于连续的自动刷新状态;

(7)器件仅在上电后进行一次初始化,不能改变工作模式;

(8)突发方式固定为顺序方式,突发长度固定为整页;

(9)只使用带预充电的读/写指令;在每次读/写操作完成后,即启动一个自动刷新周期。

经过以上简化的状态机如图3所示。

基于EPLD器件MAX7256ATC144-6简化任意波形发生器SDRAM控制器的设计

2.4 SDRAM控制器的EPLD实现

为了实现上述简化的SDRAM控制功能,采用一片ALTERA公司生产的EPLD器件MAX7256ATC144-6。图4是任意波形发生器SDRAM控制流示意图。由于具体编程要涉及许多细节问题,在此不做赘述,其主要功能如下:

(1)通过ISA总线,实现与CPU的接口,接收波形数据和读命令;

(2)上电自动初始化;

(3)生成23位(8M字存储器空间)的线性地址,并按行列复用的方式输出;

(4)生成SDRAM的控制信号,完成读、写和自动刷新功能;

(5)控制FIFO,以解决SDRAM刷新和波形长度不是页长度的倍数问题。

基于EPLD器件MAX7256ATC144-6简化任意波形发生器SDRAM控制器的设计

虽然完全应用SDRAM确实比较复杂,但只要本着“够用就行”的原则,对其功能进行合理的简化,设计出具有特殊需求、适用于特定条件的SDRAM控制器是完全可行的。目前,笔者已将基于SDRAM的任意波形发生器应用到多个研发项目中。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15884

    浏览量

    175355
  • SDRAM
    +关注

    关注

    7

    文章

    420

    浏览量

    55047
  • 波形发生器
    +关注

    关注

    3

    文章

    288

    浏览量

    31306
收藏 人收藏

    评论

    相关推荐

    任意波形发生器

    可用来产生前面讨论过的波形(方波、三角波、脉冲波),但实际还是利用发生器模拟更复杂的信号。它们都可运用任意波形发生器来产生。信号中的缺陷(如
    发表于 10-12 09:57

    基于LabVIEW的任意波形发生器设计

    基于LabVIEW的任意波形发生器设计。
    发表于 01-20 16:28 83次下载

    SDRAM任意波形发生器中的应用

    介绍的基于动态存储(SDRAM)的设计能有效解决这一问题,并详细讨论了一种简化SDRAM控制器的设计方法。 1
    发表于 12-02 05:14 648次阅读
     <b class='flag-5'>SDRAM</b>在<b class='flag-5'>任意</b><b class='flag-5'>波形</b><b class='flag-5'>发生器</b>中的应用

    高速任意波形发生器的原理及硬件设计方案

    波形发生器的应用在生活中随处可见,其中使用较多的波形发生器任意波形
    发表于 11-26 09:17 7600次阅读
    高速<b class='flag-5'>任意</b><b class='flag-5'>波形</b><b class='flag-5'>发生器</b>的原理及硬件设计方案

    基于USB的任意波形发生器

    基于USB的任意波形发生器免费下载。
    发表于 05-25 15:52 14次下载

    任意波形发生器如何输出电压?

    任意波形发生器如何输出电压? 任意波形发生器是一种能够产生各种形状、频率和振幅的电压信号的设备。
    的头像 发表于 12-21 14:13 568次阅读

    任意发生器如何输出波形、带调制的信号?

    任意发生器,如何输出波形、带调制的信号? 任意发生器是一种用于产生各种波形的信号
    的头像 发表于 01-19 15:54 522次阅读

    浅谈任意波形发生器及通道合并功能

    浅谈任意波形发生器及通道合并功能  任意波形发生器(AWG)是一种能够产生各种复杂
    的头像 发表于 01-19 15:54 448次阅读

    任意波形发生器与示波器怎么连接

    在电子测试领域中,任意波形发生器和示波器是两种非常重要的测试设备。任意波形发生器能够产生多种
    的头像 发表于 05-15 15:38 550次阅读

    任意波形发生器如何输出电压

    任意波形发生器(Arbitrary Waveform Generator,简称AWG)是一种电子测试设备,它能够产生各种形状、频率和振幅的电压信号,以满足电子电路、自动控制以及教学实验
    的头像 发表于 05-15 15:38 530次阅读

    任意波形发生器的定义、特点及应用

    任意波形发生器(Arbitrary Waveform Generator,简称AWG)是电子测试与测量领域中的一种重要设备。随着电子技术的飞速发展,对信号源的需求也日益复杂和多样化。传统的信号源设备
    的头像 发表于 05-21 17:19 901次阅读

    任意波形发生器的使用方法

    任意波形发生器(Arbitrary Waveform Generator,简称AWG)是现代电子测试与测量领域中不可或缺的重要工具。它能够产生复杂、非周期性的波形信号,为电子系统的研发
    的头像 发表于 05-21 17:26 695次阅读

    什么是任意波形发生器任意波形发生器是干什么用的?

    任意波形发生器是一种高度灵活的电子测试设备,它能够生成几乎任何类型的电信号波形
    的头像 发表于 05-28 16:19 528次阅读

    任意波形发生器波形生成方法

    任意波形发生器(Arbitrary Waveform Generator,简称AWG)作为电子测试领域的重要工具,能够生成各种复杂波形信号,以满足不同的测试需求。在通信、音频处理、雷达
    的头像 发表于 05-29 17:13 470次阅读

    什么是任意波形发生器

    在电子测量、通信、科研以及音乐创作等多个领域中,波形发生器作为一种能够产生特定波形信号的电子设备,发挥着不可或缺的作用。而任意波形
    的头像 发表于 05-30 15:53 602次阅读