今天小编要和大家分享的是接口,总线,驱动相关信息,接下来我将从利用FPGA作为接口芯片实现DSP到SDRAM的数据存取,fpga dsp这几个方面来介绍。

接口,总线,驱动相关技术文章利用FPGA作为接口芯片实现DSP到SDRAM的数据存取fpga dsp

接口,总线,驱动相关技术文章利用FPGA作为接口芯片实现DSP到SDRAM的数据存取

在DSP应用系统中,需要大量外扩存储器的情况经常遇到。例如,在数码相机和摄像机中,为了将现场拍摄的诸多图片或图像暂存下来,需要将DSP处理后的数据转移到外存中以备后用。从目前的存储器市场看,SDRAM由于其性能价格比的优势,而被DSP开发者所青睐。DSP与SDRAM直接接口是不可能的。

FPGA(现场可编程门阵列)由于其具有使用灵活、执行速度快、开发工具丰富的特点而越来越多地出现在现场电路设计中。本文用FPGA作为接口芯片,提供控制信号和定时信号,来实现DSP到SDRAM的数据存取。

1 、SDRAM介绍

本文采用的SDRAM为TMS626812A,图1为其功能框图。它内部分为两条,每条1M字节,数据宽度为8位,故存储总容量为2M字节。

利用FPGA作为接口芯片实现DSP到SDRAM的数据存取

所有输入和输出操作都是在时钟CLK上升沿的作用下进行的,刷新时钟交替刷新内部的两条RAM。TMS626812A主要有六条控制命令,它们是:条激尖/行地址入口、列地址入口/写操作、列地址入口/读操作、条无效、自动刷新、自动刷新。SDRAM与TMS320C54x接口中用到的命令主要有:MRS、DEAC、ACTV、WRT-P、READ-P和REFR。这里,设计目的就是产生控制信号来满足这些命令的时序要求。关于TMS626812A的具体说明可以查看其数据手册。

2 、SDRAM与TMS320C54x之间的通用接口

图2是DSP与SDRAM的通用接口框图,图中DSP I/F代表TMS320C54x端接口单元,SDRAM CNTL代表SDRAM端接口控制单元。SDRAM被设置成一次性读写128个字节,而DSP一次只读写一个字节,因而建立了两个缓冲区B0、B1来缓存和中转数据。B0、B1大小都为128字节,而且映射到DSP中的同一地址空间。

利用FPGA作为接口芯片实现DSP到SDRAM的数据存取

尽管B0、B1对应于同一地址空间,但对两个缓冲区不能在同一时刻进行合法访问。实际上,当B0被DSP访问时,B1就被SDRAM访问,反之也成立。若DSP向B1写数据,SDRAM就从B0读数据;而当SDRAM的数据写到B0中时,DSP就从B1读数据。两者同时从同一缓冲区读或写都将激发错误。上边所述的数据转移方式有两种好处:一是加速了TMS320C54x的访问速度,二是解决了二者之间的时钟不同步问题。