位置:51电子网 » 技术资料 » 接口电路

FPGA与外部存储设备的接口实现

发布时间:2008/6/3 0:00:00 访问次数:433

引言
当今社会是数字化的社会,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担,设计师们更希望在教研室里就能验证所设计的电路功能。fpga的出现,使得芯片设计和应用跨入了一个新的领域。


研究背景

随着硬件方面的急速发展,与之相配套的软件也不断更新,更快﹑更智能的原理图编辑﹑设计实现和验证工具都被集成到eda开发工具中。这些发展大大缩短了fpga的开发周期,增强了fpga设计的灵活性和可移植性,也避免了专用集成电路设计的高风险。但由于片内存储器受器件规模和生产成本的制约,其容量通常不能满足用户实际需求,这就需要使用半导体存储器件来扩展存储空间。针对这种情况,本文专门研究了fpga与两种典型的存储器接口实现问题。在设计实现中采用了xilinx公司virtex-e系列的fpga (xcv300e)﹑issi公司的高速静态存储器is63lv1024和hynix公司的hy57v281620hc(l/s)t动态存储器。


xcv300e性能介绍

fpga(现场可编程门阵列)是可编程逻辑器件的一种,它不仅可以提高系统的可靠性,使得系统结构更加紧凑,节省了电路板的面积,而且实现成本低﹑开发周期短,是进行原始设计的理想载体。virtex-e系列产品对所有virtex特性都进行了加强,采用领先的0.18 m六层金属互连半导体工艺制造,大大提高了器件性能和密度,同时还提供了可进一步满足下一代数据通信和dsp应用带宽要求的高性能系统特性组合。xilinx公司的virtexe xcv300e,采用bga432封装,片内block ram为131,072 比特,distributed ram为98,304比特,system gates为411,955门,logic gates为82,944门。特性如下:

1.工作在1.8v电压下的快速﹑高密度fpga器件 ;
2.采用高度灵活的i/o选择技术,支持20种高性能接口标准;
3.采用高性能的链路选择技术;
4.精密复杂的存储器选择机制;
5.高性能的时钟管理电路;
6.具有能平衡速度与密度的灵活性体系结构;
7.基于sram方式的系统配置。


sram性能介绍

为了能更好﹑更有效的设计fpga与is63lv1024的接口实现,必须先了解is63lv1024的性能特点。充分利用这些特点会使设计的实现变得事半功倍。is63lv1024是128k 8的高速静态存储器,性能特点包括:

1.工作在3.3v电压下,高速接入时间一般分为8、10、12和15ns;

2.高性能﹑低功耗器件(使用icsi高性能coms技术制作过程和使用新的电路设计技术);

3.通过选择ce和oe的状态可以比较简单的实现存储;

4. ce可以使器件进入power-down工作模式,即 没有被选择时,器件进入一种挂起状态,使得功率消耗小于250 w;

5.不需要时钟和更新,是全静态工作过程;

6.所有的输入和输出都是与ttl相兼容的。

除此之外,为了保证所传输的数据的正确性还必须要了解is63lv1024的读写状态的时序和使能的要求。其读写时序状态如图1所示:

dram性能简介

dram与sram不同,它只能将数据保持很短的时间。为了保持数据,dram 必须隔一段时间刷新一次,如果存储单元没有刷新,数据就会丢失。sram虽不需刷新,但断电后会丢失数据。sram的数据传输速率从10 ns到30 ns不等,dram要比它慢30 ns左右。因此,sram通常用于高速缓冲存储器,而dram通常用来存储较大的数据。hy57v281620hc(l/s)t是4banks 2m 16bit的同步动态存储器,性能特点包括:

1.工作在3.3 0.3v电压下;
2.所有器件管脚都与lvttl接口兼容;
3.所有的输入和输出操作都是在时钟clk上升沿的作用下进行;
4.通过udqm或者ldqm来实现数据延时功能;
5.内部有四个bank可以进行操作;
6.自刷新功能,刷新周期为4096;
7.可编程的猝发类型、猝发长度;
8.可编程的的cas延迟为2或3个时钟周期。

由上面的特性可知,darm的读写操作与sram有较大的不同。根据hy57v281620hc(l/s)t的读写状态的时序要求,其读写时序状态如图2所示:

设计实现

当设计fpga与sram的接口时,由于它的传输速度较快,所以只需着重考虑如何保证存储数据的正确性,而不需要考虑用其它方式来提高sram的存储速度。本设计的做法是一次性写满128k数据后,再一次性读出128k数据。为了保证数据的正确性,要求在写数据时不能读数据,而在读数据时不能写数据。

当设计fpga与dram的接口时,为了能满足各种系统的使用要求,本设计创建了时钟频率、猝发长度、延时节拍等可编程参数。在具体操作dram时,首先,必须进行初始化配置,即写模式寄存器,以便确定dram列选延迟节拍数、猝发类型、猝发长度等工作模式。然后通过act命令激活对应地址的组,同时输入行地址。最后,通过rd或wr命令输入列地址,将相应数据读出或写入到对应的地址。操作完成后,用相关命令中止读或写操作。在没有操作的时候,每64ms必须对所有存储单元刷新一遍,防止数据丢失。

下面本文将指出在设计实现中需要特别注意的几个问题,并给出了相应的解决方法 。

引言
当今社会是数字化的社会,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担,设计师们更希望在教研室里就能验证所设计的电路功能。fpga的出现,使得芯片设计和应用跨入了一个新的领域。


研究背景

随着硬件方面的急速发展,与之相配套的软件也不断更新,更快﹑更智能的原理图编辑﹑设计实现和验证工具都被集成到eda开发工具中。这些发展大大缩短了fpga的开发周期,增强了fpga设计的灵活性和可移植性,也避免了专用集成电路设计的高风险。但由于片内存储器受器件规模和生产成本的制约,其容量通常不能满足用户实际需求,这就需要使用半导体存储器件来扩展存储空间。针对这种情况,本文专门研究了fpga与两种典型的存储器接口实现问题。在设计实现中采用了xilinx公司virtex-e系列的fpga (xcv300e)﹑issi公司的高速静态存储器is63lv1024和hynix公司的hy57v281620hc(l/s)t动态存储器。


xcv300e性能介绍

fpga(现场可编程门阵列)是可编程逻辑器件的一种,它不仅可以提高系统的可靠性,使得系统结构更加紧凑,节省了电路板的面积,而且实现成本低﹑开发周期短,是进行原始设计的理想载体。virtex-e系列产品对所有virtex特性都进行了加强,采用领先的0.18 m六层金属互连半导体工艺制造,大大提高了器件性能和密度,同时还提供了可进一步满足下一代数据通信和dsp应用带宽要求的高性能系统特性组合。xilinx公司的virtexe xcv300e,采用bga432封装,片内block ram为131,072 比特,distributed ram为98,304比特,system gates为411,955门,logic gates为82,944门。特性如下:

1.工作在1.8v电压下的快速﹑高密度fpga器件 ;
2.采用高度灵活的i/o选择技术,支持20种高性能接口标准;
3.采用高性能的链路选择技术;
4.精密复杂的存储器选择机制;
5.高性能的时钟管理电路;
6.具有能平衡速度与密度的灵活性体系结构;
7.基于sram方式的系统配置。


sram性能介绍

为了能更好﹑更有效的设计fpga与is63lv1024的接口实现,必须先了解is63lv1024的性能特点。充分利用这些特点会使设计的实现变得事半功倍。is63lv1024是128k 8的高速静态存储器,性能特点包括:

1.工作在3.3v电压下,高速接入时间一般分为8、10、12和15ns;

2.高性能﹑低功耗器件(使用icsi高性能coms技术制作过程和使用新的电路设计技术);

3.通过选择ce和oe的状态可以比较简单的实现存储;

4. ce可以使器件进入power-down工作模式,即 没有被选择时,器件进入一种挂起状态,使得功率消耗小于250 w;

5.不需要时钟和更新,是全静态工作过程;

6.所有的输入和输出都是与ttl相兼容的。

除此之外,为了保证所传输的数据的正确性还必须要了解is63lv1024的读写状态的时序和使能的要求。其读写时序状态如图1所示:

dram性能简介

dram与sram不同,它只能将数据保持很短的时间。为了保持数据,dram 必须隔一段时间刷新一次,如果存储单元没有刷新,数据就会丢失。sram虽不需刷新,但断电后会丢失数据。sram的数据传输速率从10 ns到30 ns不等,dram要比它慢30 ns左右。因此,sram通常用于高速缓冲存储器,而dram通常用来存储较大的数据。hy57v281620hc(l/s)t是4banks 2m 16bit的同步动态存储器,性能特点包括:

1.工作在3.3 0.3v电压下;
2.所有器件管脚都与lvttl接口兼容;
3.所有的输入和输出操作都是在时钟clk上升沿的作用下进行;
4.通过udqm或者ldqm来实现数据延时功能;
5.内部有四个bank可以进行操作;
6.自刷新功能,刷新周期为4096;
7.可编程的猝发类型、猝发长度;
8.可编程的的cas延迟为2或3个时钟周期。

由上面的特性可知,darm的读写操作与sram有较大的不同。根据hy57v281620hc(l/s)t的读写状态的时序要求,其读写时序状态如图2所示:

设计实现

当设计fpga与sram的接口时,由于它的传输速度较快,所以只需着重考虑如何保证存储数据的正确性,而不需要考虑用其它方式来提高sram的存储速度。本设计的做法是一次性写满128k数据后,再一次性读出128k数据。为了保证数据的正确性,要求在写数据时不能读数据,而在读数据时不能写数据。

当设计fpga与dram的接口时,为了能满足各种系统的使用要求,本设计创建了时钟频率、猝发长度、延时节拍等可编程参数。在具体操作dram时,首先,必须进行初始化配置,即写模式寄存器,以便确定dram列选延迟节拍数、猝发类型、猝发长度等工作模式。然后通过act命令激活对应地址的组,同时输入行地址。最后,通过rd或wr命令输入列地址,将相应数据读出或写入到对应的地址。操作完成后,用相关命令中止读或写操作。在没有操作的时候,每64ms必须对所有存储单元刷新一遍,防止数据丢失。

下面本文将指出在设计实现中需要特别注意的几个问题,并给出了相应的解决方法 。

相关IC型号
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!