电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 存储/缓存技术 > 详细信息
存储/缓存技术:DSP中的存储器共享与快速访问技术设计
来源: 现代电子技术   时间: 2007-9-24 10:46:27    

  摘 :介绍了在多个DSP之间或者DSP与其他CPU之间存储器共享技术的基本设计方法,重点介绍了如何在设计上提高存储器的访问速度和克服访问竞争的方法。
  关键词:存储器共享;DSP;访问竞争;SDRAM;猝发读写

  在多任务信号处理系统中,为了提高信号的处理速度,往往使用几个DSP协同工作,为此,必须要解决好几个DSP对共享存储器的高速访问问题。具体来说,主要要解决好两个问题:
  (1)通过建立竞争仲裁机制解决存储器访问共享竞争问题;
  (2)解决批量数据高速访问问题。DSP对批量数据的访问一般都是通过启动DMA完成,而DMA一旦启动,数据的传输就不受DSP控制,因此,要设计专门控制电路和缓冲区来确保高速数据传输的稳定性和可靠性。

  本文重点介绍了两个TMS320C5402之间共享SRAM和DDRSDRAM的设计方法。

1 SRAM的共享访问
  图1是2片TMS320C5402共享SRAM的原理图。为了保证对SRAM访问的可靠性,2片DSP共用同一个系统时钟和具有相同的访问优先级。当2片DSP同时对共享存储器发出访问需求时,FPGA中的共享仲裁控制逻辑会在第1个存储器访问周期允许第1片DSP对SRAM进行访问,同时向第2片DSP发出READY等待信号,然后在下一个存储器访问周期撤销该等待信号,允许第2片DSP对SDRAM进行访问。如果进行批量数据传输,则2片DSP对应的READY信号会交替启动。FPGA中的2个双向缓冲器是互相禁止的。另外,在DSP的软件编程时要注意,在软件等待周期寄存器被写入后至少要等待2个时钟周期DSP才会启动对READY信号的检测。

2 DDRSDRAM的高速共享访问
  在上述方式中,如果2片DSP同时要对共享存储器进行访问,其访问速度将会降低一倍。在实际的信号处理系统中,特别是在连续视频信号的编码、压缩与速访问,如果采用大容量双口RAM,其硬件成本开销太大。现在PC机中大量使用的双速数据同步动态存储器(Double Data Rate Synchronous,DRAM)具有存储容量大、访问速度快、价格低廉等特点,因此在大容量高速数字信号处理系统中,只要解决好对DDRSDRAM的读写访问控制问题,就能解决好大容量高速存储器的共享访问问题。

2.1 DDRSDRAM的读写访问特性
  图2为现代公司的HY5DV651622双速同步动态存储器的功能框图。其存储容量为8 Mb,数据宽度为16 B,分为4个页面,采用行列地址复用方式。在时钟的上升和下降沿均可以进行数据的读写操作。对DRAM的控制包括命令控制和数据读写控制,在命令控制中主要包括模式寄存器设置、存储器自动刷新控制等,通过模式寄存器的设置可以使存储器工作于猝发读写方式,读写长度可以达到256个地址。 

2.2 共享DDRSDRAM的工作过程
  为了保证DSP对SDRAM大数据量访问的高效性,将SDRAM设置为猝发读写模式,DSP设置为DMA方式,在FPGA中设置容量均为128 b的SRAM缓冲区B0和B1做为数据缓存区,从SDRAM中输出的数据或输入至SDRAM的数据都要经过B0和B1,通过控制寄存器的设置将B0和B1都映射到2片DSP中地址为FF00H到FF80H的数据区间,但同一时刻1片DSP只能访问B0或B1中的1个。

  在实际工作中,当一片DSP访问B0时,另一片DSP或SDRAM访问B1;相应地当一片DSP访问B1时,另一片DSP或SDRAM则访问B0。如果SDRAM和DSP同时向同一个数据缓冲区B0或B1写入或读出数据,FPGA会自动禁止,并通过控制寄存器向DSP传递数据读写状态错误信息。这种数据传递方式不仅加速了DSP对数据的访问速度,而且解决了DSP和SDRAM之间时钟频率不同步问题,不用像图1那样让2片DSP共享同一个时钟。SDRAM与双DSP的接口如图3所示。 

  具体来说,DSP对SDRAM的访问分以下两种情况:
  (1)同时只有1片DSP对SDRAM访问 此时B0,B1均属于该DSP所有,以读数据为例,首先DSP将需要对SDRAM访问的首末地址通过控制寄存器写入FPGA,并且设置B0,B1为空的标志,然后起动数据传送命令,FPGA在收到该命令后读入128字入B0,并设置B0的标志为满,随后再读入128字入B1,并设置B1的标志为满;接着判断B0的标志是否为空,若为空则读出128字入B0,并设置B0的标志为满,否则等待直到B0的标志为空,判断B1的标志是否为空,若为空则读出128字入B1,并设置B1的标志为满,否则等待直到B1的标志为空。如此反复,直到读取数据结束或收到数据读取结束命令为止。对DSP来说,他在发出起动数据传送命令后,判断B0标志是否为满,若为满,则起动DMA读取该128字,读取结束后设置B0的标志为空,然后用同样的方法去读取B1中的数据。如此反复直到将规定的数据读取完毕为止。

  (2)2片DSP同时对SDRAM访问 与单片DSP的访问方法类似,通过B0、B1及相应的标志位设定完成数据的访问。

2.3 共享DDRSDRAM的读写访问逻辑设计
  DSP提供下列信号给外部存储器用以完成外部控制:CLK,CS,A0~A15,D0~D15,R/W,MSTRB,ISTRB和IS,但是DDRSDRAM使用的控制信号为:CLK,/CLK,CKE,/CS,/RAS,/CAS,/WE,数据总线DQ0~DQ15和地址总线A0~A11。由于控制信号的不同,因此在DSP和SDRAM的接口电路中需要用逻辑电路根据DSP的命令产生SDRAM的控制信号。正是由于接口电路的这种复杂性,在设计SDRAM和DSP的接口过程中才需要用FPGA来完成。

  从图3可以看到,FPGA的控制主要包含3个部分:控制寄存器接口、缓冲区接口和SDRAM控制接口。
  (1)控制寄存器接口 主要包括对DSP地址信号和控制信号的解码;SDRAM的读写模式选择;B0和B1的地址、数据的切换选择及标志控制;读写首末地址的设置等。
  (2)缓冲区接口 主要代表2个缓冲区B0和B1的相关信号产生,主要有:读写信号;地址信号(ADDR[6-0]);数据输入输出信号(DATAIN[15-0]和DATAOUT[15-0])等。
  (3)SDRAM控制接口 产生SDRAM的控制信号、地址信号与数据总线信号,完成SDRAM的3项功能:刷新、读、写。其中读、写主要通过猝发方式进行。由于SDRAM是动态RAM,为了防止数据丢失,必须对其进行动态刷新。在SDRAM控制接口部分设计了专门的刷新电路来完成这项功能。

3
 

    由于FPGA内的SRAM访问速度可以达到10 ns以上,而DDRSDRAM的访问速度比普通的SDRAM快一倍,因此,在采用DDRSDRAM实施存储器共享后,不仅大大节省了系统成本,而且通过提高FPGA对DDRSDRAM的访问速度后,系统对数据的访问速度并没有受到影响,可以达到100 Mb/s以上。

相关信息
发表评论
打印本页 关闭本页
FPGA助力高端存储器接口设计
    高性能系统设计师在满足关键时序余量的同时要力争获得更高性能,而存储器接口设计则是一项艰巨挑战。双倍数据速率SDRAM和4倍数据速率SDRAM都采用源同步接口来把数据和时钟(或选通脉冲)由发射器传送到接收器。接收器接口内部利用时钟来锁存数据,此举可消除接口控制问题(例如在存储器和FPGA间的信号传递时间),但也为设计师带来了必须解决的新挑战。   关键问题之一就是如...
>>详细内容
赛灵思SPARTAN-3A系列FPGA又添低功耗器件
    赛灵思公司(Xilinx)日前宣布其XtremeDSP信号处理解决方案产品系列新增功耗优化的Spartan-3A DSP器件。这个目前业已投入量产的FPGA新器件,为低成本且低功耗FPGA领域的应用如军事通信战术无线电系统、无线接入点和便携式医疗设备等,提供了高性能的数字信号处理(DSP)能力。   与标准器件产品相比,Spartan-3A DSP低功耗(LP)器件的静态功耗降低了50%,而在待机模式下静态功耗的降低...
>>详细内容
ST推出最新DRAM内存模块标准专用温度传感器
    意法半导体推出两款高精度专用数字温度传感器芯片,新产品完全符合个人计算机双列直插内存模块(DIMM)的温度监测标准JEDEC JC42.4的规定。   计算机等系统内的双速率DDR2和DDR3的数据传输速度比上一代标准更快,但是内存过热的风险也随之增加。温度传感器可以监视内存温度,为中央处理器调整数据流量和采取防过热措施提供依据,因此温度传感器在系统设计中变得更为重要。   S...
>>详细内容
ARM推出首款专门针对FPGA优化的处理器Cortex-M1
    ARM公司日前发布了第一款专门针对FPGA应用而优化的ARM Cortex-M1处理器。ARM Cortex-M1处理器扩展了ARM Cortex处理器系列,可帮助OEM厂商在一个通用架构下对不同性能需求进行标准化。Actel作为一家核心合作伙伴已与ARM紧密合作,并成为首个获得授权可为其FPGA客户提供Cortex-M1处理器的公司。   2007年4月2日至5日在美国加利福尼亚州圣何塞举行的嵌入式系统大会(Embedded System...
>>详细内容
莱迪思推出业界首个真正的90纳米非易失FPGA器件
    莱迪思半导体公司日前公布了其第三代非易失FPGA器件,LatticeXP2系列。LatticeXP2具有增强的性能,双倍增加的逻辑容量达40K查找表(LUT)、性能改进了25%、还加入了专用DSP块,而每个功能的价格减少达50%。对1.2伏加工工艺的功耗进行了优化,静态功耗减少了33%。设计使用了业界最先进的非易失FPGA工艺,莱迪思与代工伙伴富士通合作开发了90纳米嵌入式闪存工艺,LatticeXP2具有“瞬时...
>>详细内容
利用FPGA实现基于RU算法编码器(LDPC编码器)的设计
  引言   低密度奇偶校验(Low Density Parity Check Code,LDPC)码是一类具有稀疏校验矩阵的线性分组码,不仅有逼近Shannon限的良好性能,而且译码复杂度较低, 结构灵活,是近年信道编码领域的研究热点,目前已广泛应用于深空通信、光纤通信、卫星数字视频和音频广播等领域。LDPC码已成为第四代通信系统(4G)强有力的竞争者,而基于LDPC码的编码方案已经被下一代卫星数字视频广播标准D...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com