当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读] 0 引 言  SDRAM作为大容量、高速度、低价格、低功耗的存储器件,在嵌入式实时图像处理系统中具有很高的应用价值,但其控制机制复杂,因此需要设计控制器,以简化系统对

 0 引 言

  SDRAM作为大容量、高速度、低价格、低功耗的存储器件,在嵌入式实时图像处理系统中具有很高的应用价值,但其控制机制复杂,因此需要设计控制器,以简化系统对SDRAM的访问。虽然目前许多微处理器及DSP都提供了与SDRAM的直接接口,但这种通用控制器的执行效率很低,难以满足实时系统对速度的要求。鉴于此,介绍一种基于FPGA设计而实现高效SDRAM控制器的 方案。结合实际系统,该方案将SDRAM配置为全页突发模式,并采用异步FIFO作为FPGA与SDRAM间的数据缓冲器。分析表明,全页突发操作模式能 够很好地发挥SDRAM高速读写的性能;同时,设计成乒乓操作结构的异步FIFO,在保证数据连续性的同时,更能降低低速前端对高速SDRAM访问的影响。

  1 SDRAM简介

  1.1 SDRAM的特点

  相对于其他存储器件,SDRAM具备以下特性。

  (1)上电后必须通过一个初始化进程配置模式寄存器的值,以决定SDRAM的工作模式;

  (2)基于三极管和电容的存储结构SDRAM决定了必须对其定时执行刷新操作,以免数据丢失;

  (3)访问SDRAM时,先由Active命令激活要读写的Bank及行并锁存行址,然后在Read/Write命令有效时锁存列址。当访问当前Bank的其他行时,须先使用Pre-charge命令关闭当前行;

  (4)SDRAM的内部操作由命令控制,CS_N,RAS_N,CAS_N和WE_N在时钟上升沿的状态决定了具体的操作,Bank及行列地址线在部分操作中作为辅助参数输入。

  1.2 全页(Full-page)模式突发操作

  进行大量数据读写时,全页突发模式是充分利用SDRAM性能,提高读写速度的良好选择。

  激活Bank的某一行后即可对该行进行读写操作。

  写入数据在发出写命令的当前时钟周期即可有效,因此写操作可以在单周期内完成;而读出数据将在发出读命令之后CL(CAS Latency)时钟周期才能输出到总线,即随机读取单个数据至少需要1+CL时钟周期。可见,随机读操作会大大降低系统效率。若采用全页突发方式,对于 列宽度为n的SDRAM存储器,整页输出所需的总周期数为2n+CL,平均单个数据输出所需周期为(2n+CL)/2n△1,由此读操作延迟对系统效率的 影响可降至最低。

  2 SDRAM控制器设计

  实际的实时红外热成像系统采用了ISSI公司生产的型号为IS42S16160B的SDRAM作为数据缓存,其存储单元组织结构为4 Bank×8 192行×512列×16位。

  SDRAM控制器主要由时钟锁相环模块、初始化模块、刷新计数模块、数据通路模块、输入/输出FIFO模块、FIFO接口模块和主控制器模块组成,如图1所示。

  在该SDRAM控制器中,片上时钟锁相环模块的作用是将输入时钟倍频为所需要的时钟,并根据电路板布局进行移相,以保证在时钟上升沿准确采样命 令及数据。初始化模块负责产生规定了时间、顺序和个数的控制命令对SDRAM进行配置,并在进程结束后发出ini_end信号,以启动主控制器。刷新控制 模块的作用是每隔最长7.812 5μs发出刷新请求信号ref_req,并接收主控制器发出的ref_ack信号重置刷新计数器。数据通路模块用于控制数据的有效输入/输出。

  由于系统对控制器中读写操作的数据连续性要求很高,且读写速度比较低,而控制器对SDRAM中读写操作的数据连续性并无要求,且读写速度很高, 因此需要使用异步FIFO作为输入/输出缓存。输入/输出FIFO的数据宽度为16 b,深度可视系统需要而定,但应大于一次读写的数据长度LENGTH。另外,为配合SDRAM的全页突发模式,并充分发挥SDRAM高速读写的特 点,FIFO采用了乒乓操作的流水线结构。现以输入FIFO为例,当某个输入FIFO写满LENGTH数据时,主控制器从该输入FIFO读出数据写入 SDRAM,同时系统向另一个输入FIFO写入数据。

  FIFO接口模块的主要信号如图2所示。其作用是将FIFO的状态信号转换为主控制器的读写请求信号,并控制切换输入/输出的两个FIFO。以 向SDRAM写入数据为例,若某个输入FIFO的写人数据个数标志信号in_wr_used与LENGTH相等,则向主控制器发出写SDRAM请求,并将 该输入FIFO中的LENGTH数据一次写入SDRAM,同时控制系统向另一个输入FIFO写入数据。

  SDRAM支持多种工作模式,将其全部包含在主控制器状态机中会大大增加设计难度,并降低运行速度。考虑到一些模式在实时图像处理系统中并不需要,所以对SDRAM主控制器韵状态进行了简化,如图3所示。

  对该主控制器有以下两点需要说明:

  (1)器件仅在上电后进行一次初始化配置,进入正常工作状态后就不再改变工作模式。初始化时序仿真结果,如图4所示。

  (2)当SDRAM工作在全页突发模式时,读写操作所访问的地址将在页内循环,直至收到Burst-Termi-nate命令或Pre- charge命令。由于在Burst-Termi-nate命令后还需发出Pre-charge命令,才能保证芯片正常工作,因此设计采用了Pre- charge命令终止页模式。为保证LENGTH数据中正确读出或写入SDRAM,发出Pre-charge命令时必须满足一定的时序要求。对于读操 作,Pre-charge应在最后一个有效输出数据之前CL-l时钟发出;对于写操作,Pre-charge应在最后一个有效输入数据之后tDPL时间发 出。图5和图6给出SDRAM控制器的读写操作时序仿真结果,其中,OUT_VALID及IN_VALID信号分别表明输出及输入数据有效。

 

  3 结 语

  针对实时图像处理系统的特点,定制SDRAM控制器。在Altera公司的主流芯片Cyclone II(EP2C70F896C6)上成功地使用了Verilog HDL编程语言,其占用355个逻辑单元(不到FPGA总逻辑资源的1%);4个M4K块和1个PLL锁相环。在320×240的实时红外热成像系统中, 该SDRAM控制器的工作状态良好,并可通过改变LENGTH参数而方便地用于任意分辨率的实时图像处理系统中,可移植性强。

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

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭