欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于FPGA的Verilog语言描述的SDRAM存储器接口设计学士学位论文.docx

    • 资源ID:14825266       资源大小:631.52KB        全文页数:72页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于FPGA的Verilog语言描述的SDRAM存储器接口设计学士学位论文.docx

    1、基于FPGA的Verilog语言描述的SDRAM存储器接口设计学士学位论文毕业论文基于EPM570的SDRAM存储器接口实现摘 要随着信息科学的飞速发展,人们面临的信号处理任务越来越繁重,对数据采集处理系统的要求也越来越高。单片机、DSP等微处理器内部RAM有限,这就需要在微处理器的外部扩展存储器。同步动态随机访问存储器具有价格低廉、密度高、数据读写速度快的优点,从而成为数据缓存的首选存储介质,在数据采集系统和图像处理系统等方面中有着重要和广泛的应用。SDRAM 的读写逻辑复杂,最高时钟频率达100MHz 以上,普通单片机无法实现复杂的SDRAM 控制操作。复杂可编程逻辑器件CPLD具有编程方

    2、便,集成度高,速度快,价格低等优点。因此选用 CPLD 设计SDRAM 接口控制模块, 简化主机对SDRAM 的读写控制。通过设计基于CPLD 的SDRAM 控制器接口,可以在STM系列、ARM系列、STC系列等单片机和DSP等微处理器的外部连接SDRAM,增加系统的存储空间。论文开始介绍了SDRAM接口设计研究的背景和研究的目的及意义,引出对SDRAM的研究,详细介绍了SDRAM的基本原理、内部结构、基本操作和工作时序,以及设计的重点及难点。在这些理论基础上对SDRAM接口进行模块化设计,了解设计中所使用的硬件和软件。最后用Verilog语言在软件Quartus设计CPLD芯片,通过在硬件和

    3、软件上的调试基本实现了SDRAM接口的设计。关键词SDRAM;接口;Verilog;CPLDThe Implementation of SDRAM Memory Interface Based on the EPM570 AbstractWith the rapid development of information science, people face more and more onerous task of signal processing, the requirements of data acquisition and processing system are gettin

    4、g higher and higher. Microprocessor such as single-chip microprocessor, DSP etc, their RAM is limited, which requires external expansion in the microprocessor memory. Synchronous Dynamic Random Access Memory has a low cost, high density, fast read and write data on the merits, thereby becoming the f

    5、irst choice for data cache storage medium, which paly an important role and widely used in the data acquisition system and image processing systems. SDRAM read and write logic is complex, the maximum clock frequency reaches above 100MHz, the ordinary microcontroller can not achieve complex SDRAM con

    6、trol operation. Complex programmable logic device has advantages such as programming convenience, high integrity, high speed and low cost etc. Therefore select CPLD to design control module of SDRAM interface , to simplify the host to read and write control of the SDRAM. Through the design of SDRAM

    7、controller interface based on CPLD, you can connect SDRAM in the external of STM series, ARM series, STC series single chip microprocessor and the DSP, increase system storage space. At the beginning of paper introduces the research background, research purpose and significance of the study of SDRAM

    8、 interface design, leads to the study of SDRAM, detailed introduces information of SDRAM about the basic principles, the internal structure, the basic operation and timing of work, and the design emphasis and difficulty. Based on these theories, modularing the design of SDRAM interface, understandin

    9、g hardware and software used in the design. Finally, it uses Verilog language in Quartus software to design CPLD chip, Through the hardware and the software realization SDRAM the commissioning of the basic design of the interface. Keywords SDRAM; Interface; Verilog; CPLD 摘要 Abstract 绪论千万不要删除行尾的分节符,此

    10、行不会被打印。在目录上点右键“更新域”,然后“更新整个目录”。打印前,不要忘记把上面“Abstract”这一行后加一空行第1章 绪 论1.1 课题背景数据采集处理技术是现代信号处理的基础,广泛应用于雷达、声纳、软件无线电、瞬态信号测试等领域。随着信息科学的飞速发展,人们面临的信号处理任务越来越繁重,对数据采集处理系统的要求也越来越高1。近年来复杂可编程逻辑器件(CPLD,Complex Programable Logic Device)由于其设计灵活性、更强的适应性及可重构性,结合同步动态随机访问存储器(SDRAM,Synchronous Dynamic Random Access Memor

    11、y)的高速、大容量、价格优势,在设计高速实时数据采集系统时受到了广泛的关注。SDRAM(同步动态随机访问存储器)具有价格低廉、密度高、数据读写速度快的优点,从而成为数据缓存的首选存储介质。SDRAM的读写逻辑复杂,最高时钟频率达100MHz 以上,普通单片机无法实现复杂的SDRAM 控制操作。复杂可编程逻辑器件(CPLD )具有编程方便,集成度高,速度快,价格低等优点,因此选用 CPLD 设计SDRAM 接口控制模块, 简化主机对SDRAM 的读写控制。通过设计基于CPLD 的SDRAM 控制器接口可以在微处理器如单片机、DSP(Digital Singnal Processor,数字信号处理

    12、)外部连接SDRAM,增加系统的存储空间。为了更好地把握SDRAM在数据采集系统中的应用,本章将简要介绍SDRAM的基本情况,说明论文的研究目的及意义。1.2 课题研究的目的及意义随着内存SDRAM技术广泛的应用,如何更好的控制片外SDRAM的读写,使之达到最大的带宽利用率,如何尽可能的相对降低读写数据的延迟,隐藏读写命令发送到接收数据之间的延迟,已经成了各大芯片厂商,各大FPGA/CPLD供应商的争相研究的热点。由于SDRAM最高频率达到100MHz以上,在如此的高频下在时钟上下边沿稳定读写数据也成了最大的难题之一。设计SDRAM存储器接口不仅要非常了解SDRAM工作特性,时序要求而且整个过

    13、程覆盖前端设计,前端验证,综合,Timing分析,布局布线及CPLD调试,是一个很有挑战性的研究方向,也很有现实意义。在设计优化的同时既要考虑不同频率的兼容性,又要考虑不同类型存储器的兼容性,还需考虑板上走线,对个人能力来说是一个很好的锻炼。此次将SDRAM存储器接口的设计作为毕业论文,不仅是对四年来所学知识的归纳与总结,更是对自己的肯定,通过这次设计让我对IC领域有了真切的体会,在项目中锻炼提高自己,在实践中使理论更好的得到应用。1.3 同步动态随机存储器简介同步动态随机存储器英文全称为Synchronous Dynamic Random Access Memory,简称SDRAM(下文提到

    14、时都用SDRAM表示)。SDRAM器件的管脚分为控制信号、地址和数据三类。SDRAM具有多种工作模式,内部操作是一个非常复杂的状态机。SDRAM的管脚分为以下几类:1控制信号:包括片选、时钟、时钟有效、行/列地址选择、读写选择、数据有效;2地址信号:时分复用管脚,根据行/列地址选择管脚控制输入地址为行地址或列地址;3数据信号:双向管脚,受数据有效控制。根据控制信号和地址输入,SDRAM包括多种输入命令:模式寄存器设置命令;激活命令;预充命令;写命令;读命令;自动刷新命令;自我刷新命令;突发停止命令;空操作命令。根据输入命令,SDRAM状态在内部状态间转移。内部状态包括:模式寄存器设置状态;激活

    15、状态;预充状态;写状态;读状态;自动刷新状态;自我刷新状态;节电状态。通常一个SDRAM中包含几个Bank,每个Bank的存储单元是按行和列寻址的。由于这种特殊的存储结构,SDRAM有以下几个工作特性2:1SDRAM的初始化SDRAM在上电100200s后,必须由一个初始化进程来配置SDRAM的模式寄存器,模式寄存器的值决定着SDRAM的工作模式。2访问存储单元为减少I/O引脚数量,SDRAM复用地址线,所以在读写SDRAM时,先由Active命令激活要读写的Bank,并锁存行地址,然后在读写指令有效时锁存列地址。一旦Bank被激活后只有执行一次预充命令后才能再次激活同一Bank。3刷新和预充

    16、电SDRAM的存储单元可以理解为一个电容,总是倾向于放电,因此必须有定时的刷新周期以避免数据丢失。刷新周期可由(最小刷新周期时钟周期)计算获得。对Bank预充电或者关闭已激活的Bank,可预充特定Bank也可同时作用于所有Bank,A10、BA0和BA1用于选择Bank。4操作控制SDRAM的具体控制命令由一些专用控制引脚和地址线辅助完成。CS、RAS、CAS和WE在时钟上升沿的状态决定具体操作动作,地址线和Bank选择控制线在部分操作动作中作为辅助参数输入。1.4 论文的结构和框架以数据采集系统中数据的存储为背景,开展了对其中SDRAM接口的研究,重点放在产生控制SDRAM操作的各种操作时序

    17、上。下面对每一章的主要内容作一个概括。绪论对课题的研究背景及研究目的及意义做出简介,并指出论文中待解决的问题和难点。在SDRAM的工作原理一章中通过对比存储器引出SDRAM存储器接口的设计,介绍了SDRAM的基本原理,以及SDRAM的相关理论,根据SDRAM工作原理和内部结构,选择出适合的实施方案。之后在SDRAM基本操作一章中从理论上详细分析了SDRAM的基本操作时序和SDRAM的工作特性,从分析中得出SDRAM接口设计存在的难点,为以后的工作指明了研究的方向,为方案的实施提供必要的理论依据。接下来在系统结构及硬件设计一章中针对SDRAM接口的硬件设计作了详细介绍,在前三章的理论分析基础上把

    18、SDRAM接口设计模块化,用Verilog语言编写程序来实现各个模块所实现的功能,介绍了实现SDRAM接口的MAX系列的CPLD芯片和MT48LC系列的SDRAM芯片的基本资料,为第五章在软件上实现SDRAM接口做好硬件准备。软件设计与实现主要利用Quartus软件开发平台对CPLD芯片进行编程,初步实现了SDRAM存储器接口的设计,并在实验室条件下对设计进行了仿真。这一章也是文章的重点。第2章 SDRAM的工作原理存储器的种类很多,依据不同的方法存储器可以分为很多种,比较不同的存储器了解SDRAM的优点,要实现SDRAM的接口就要了解SDRAM存储器的基本原理、内部结构和技术指标等,所以本章

    19、对SDRAM的原理、内部结构和SDRAM的技术指标作了详细的分析。2.1 存储器的概述存储器是记忆设备,用于存放供执行的指令、计算或处理的原始数据、中间结果、最终答案的内部或者外部器件。存储器的主要功能是用来存放程序与数据,程序是计算机操作的依据,数据是计算机操作的对象。为了实现自动计算,各种信息必须预先存放在计算机内的某个地方,这个地方就是存储器。构成存储器的存储介质,目前主要采用半导体器件和磁性材料。存储器中最小的存储单位就是一个双稳态半导体电路或一个CMOS晶体管或磁性材料的存储元,它可存储一个二进制代码,由若干个存储元组成一个存储单元,然后再由许多存储单元组成一个存储器。2.1.1 存

    20、储器的分类根据存储材料的性能及使用方法不同,存储器有各种不同的分类方法: 1按存储介质分 半导体存储器:用半导体器件组成的存储器;磁表面存储器:用磁性材料做成的存储器。 2按存储方式分 随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关;顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关。3按存储器的读写功能分只读存储器(ROM):存储的内容是固定不变的,只能读出而不能写入的半导体存储器;随机读写存储器(RAM):既能读出又能写入的半导体存储器。 4按信息的可保存性分 非永久记忆的存储器:断电后信息即消失的存储器;永久记忆性存储器:断电后仍能保存信

    21、息的存储器。5按在计算机系统中的作用分 根据存储器在计算机系统中所起的作用,可分为主存储器、辅助存储器、高速缓冲存储器、控制存储器等。为了解决对存储器要求容量大,速度快,成本低三者之间的矛盾,目前通常采用多级存储器体系结构,即使用高速缓冲存储器、主存储器和外存储器。2.1.2 存储器的技术指标存储器的性能指标主要是存储容量、存储时间、存储周期和存储器带宽3。存储容量是指存储器中可以容纳的存储单元总数。常用字数或字节数来表示,一个字节定义为8个二进制位,一个字长通常是8的倍数。存储时间又称存储器访问时间,指从启动一次存储器操作到完成该操作所经历的时间,即从一次读操作命令发出到该操作完成,将数据读

    22、入数据缓冲寄存器为止所经历的时间。存储周期是连续启动两次读操作所需间隔的最小时间。通常,存储周期略大于存储时间,时间单位为ns。存储器带宽指单位时间里存储器所存取的信息量,通常以位/秒或字节/秒为单位。带宽是衡量数据传输速率的重要技术指标。存储容量反映了存储空间的大小,存储时间、存储周期和存储器带宽反映了存储器的速度指标。2.1.3 存储器的比较目前几乎所有的主存储器都采用半导体芯片,按存储器的读写功能进行分类,半导体存储器可以分为只读存储器(ROM,Read only Memory)和随机读写存储器(RAM,Random Access Memory)。ROM只能读出,不能写入,包含了不能改变

    23、的永久性数据,它的一个重要应用就是微程序设计。只读存储器具有不易失性,只读存储器存入数据的过程,称为对ROM进行编程。RAM既能从存储器中读取数据,也能方便和快速写入数据,通过使用电信号完成读写操作。RAM具有易失性,因此只用于暂时存储数据。下面主要对各种类型RAM进行介绍。RAM又分动态存储器(DRAM,Dynamic RAM)和静态存储器(SRAM,Static RAM)。SRAM是利用双稳态触发器来保存信息的,只要不断电,信息是不会丢失的,所以谓之静态;DRAM利用MOS(金属氧化物半导体)电容存储电荷来储存信息, SDRAM与传统的DRAM相比,在存储体的组织方式和对外操作上作了重大改

    24、进,但是SDRAM存储体结构与RAM有较大差异,其控制时序和机制也较复杂4。因为电容是会漏电的,所以必须通过不停的给电容充电来维持信息,这个充电的过程叫再生或刷新(Refresh)。由于电容的充放电是需要相对较长的时间的,SDRAM的速度要慢于SRAM,但SRAM免刷新的优点需要较复杂的电路支持,如一个典型的SRAM的存储单元需要六个晶体管(三极管)构成,而SDRAM的一个存储单元最初需要三个晶体管和一个电容,后来经过改进,就只需要一个晶体管和一个电容了。由此可见,SDRAM的成本、集成度、功耗等明显优于SRAM。 2.2 SDRAM的工作原理在数据采集系统当中,使用大容量存储器实现数据缓存是

    25、一个必不可少的环节,也是系统实现中的重点和难点之一。SDRAM具有价格低廉、密度高、数据读写速度快的优点,从而成为数据缓存存储器的首选,是动态存储器系列中使用最广泛的高速、高容量存储器。 2.2.1 SDRAM存储的基本原理SDRAM的基本存储电路以电荷形式存储信息,电荷存储在MOS管栅极和源极之间的极间电容或专门集成的电容上。电容充电成高电位后,表示1,放电后表示0。根据使用的三极管数量不同,有六管型、四管型、三管型和单管型,其中,单管型由于结构简单、集成度高而得到广泛应用。图2-1单管动态存储元单管动态存储元如图2-1所示。图2-1单管动态存储元数据以电荷形式存储在电容Cs上,Co表示数据

    26、线的分布电容,三极管T用做开关。行选信号高电平有效时T导通,电路可以进行读/写操作。写入时,行选信号为高电平,T导通,数据线上的信息经过T送入Cs。当数据为逻辑1时,Cs被充电至高电平,反之被放电为低电平。读出操作前,先将数据线充电至一个低于电源电压,且在Cs代表逻辑l和逻辑0时的电压之间的正电压。读出时,高电平的行选信号使T导通,Cs与数据线连通,原来存储在Cs上的电荷和Co上的电荷在两者之间重新分配。根据数据线上读出电压的增量判断是读1还是读0,再经过高灵敏度的读出放大器输出。读出操作完成后,由于电荷的重新分配,使电路原来存储的信息遭到破坏,因此,必须进行重写。行选信号低电平时T截止,Cs

    27、上的电荷由于没有回路被保存下来。但是,由于MOS管存在一定的泄漏电流,使Cs上的电荷不断泄放,再加上Cs存储的电量很小,电荷保存时间不长,所以动态存储器每隔一段时间就需刷新一次,在700C情况下,典型的刷新时间间隔一般为2ms。2.2.2 SDRAM的内部结构SDRAM的内部是一个存储阵列,因为如果是管道式存储,就很难做到随机访问了。阵列就如同表格一样,将数据“填”进去,可以把它想象成一张表格。和表格的检索原理一样,先指定一个行(Row),再指定一个列(Column),我们就可以准确地找到所需要的单元格,这就是内存芯片寻址的基本原理。这个单元格可称为存储单元,那么这个表格就是逻辑Bank 5

    28、(Logical Bank,下文简称L-Bank),下图2-2为SDRAM内部结构框图。图2-2 SDRAM内部功能框图由于技术、成本等原因,不可能只做一个全容量的L-Bank,而且最重要的是,由于SDRAM的工作原理限制,单一的L-Bank将会造成非常严重的寻址冲突,大幅降低内存效率。所以人们在SDRAM内部分割成多个L-Bank,较早以前是两个,目前基本都是4个,这也是SDRAM规范中的最高L-Bank数量。在进行寻址时就要先确定是哪个L-Bank,然后再在这个选定的L-Bank中选择相应的行与列进行寻址,一次只能是一个L-Bank工作。L-Bank中的存储单元称为Word(此处代表位的集

    29、合而不是字节的集合)。SDRAM内存芯片一次传输率的数据量就是芯片位宽,那么这个存储单元的容量就是芯片的位宽(也是L-Bank的位宽),这种关系仅对SDRAM有效。L-Bank中的存储单元是基本的存储单元,它的容量是若干bit,对于SDRAM而言,就是芯片的位宽,而每个bit则是存放与一个单独的存储体中。这些存储体就是内存中的最小储存单元。存储单元数量=行数列数(得到一个L-Bank的存储单元数量)L-Bank的数量在很多内存产品介绍文档中,都会用MW的方式来表示芯片的容量(或者说是芯片的规格/组织结构)。M是该芯片中存储单元的总数,单位是兆(英文简写M,精确值是1048576,而不是1000

    30、000),W代表每个存储单元的容量,也就是SDRAM芯片的位宽(Width),单位是bit。计算出来的芯片容量也是以bit为单位,但用户可以采用除以8的方法换算为字节(Byte)。比如8M8,这是一个8bit位宽芯片,有8M个存储单元,总容量是64Mbit(8MB)。2.3 本章小结在本章中主要介绍了存储器的基本概念和分类,对比不同的存储器说明SDRAM的优点,对课题的提出做理论分析。另外还分析了SDRAM的基本原理和内部结构为以后的研究提供理论基础。第3章 SDRAM的基本操作在了解了SDRAM的工作原理和内部结构后,就要掌握SDRAM的基本操作过程,在这一章中具体讲述SDRAM的各种操作时

    31、序和工作特性,并分析SDRAM接口设计中存在的难点。3.1 SDRAM的基本操作SDRAM内部以Bank为组织,行/列地址共同寻址, 这在很大程度上减少了地址位, 提高器件的实用性,但行/列地址的寻址使SDRAM的操作变得复杂,为SDRAM接口的设计带来了难度,这一节中将对SDRAM的基本操作进行详细的分析,为以后的设计提供理论依据。3.1.1 芯片初始化在对SDRAM进行存取数据操作之前,首先要对其初始化,即设置SDRAM的普通模式寄存器和扩展模式寄存器,确定SDRAM的工作方式,这些设置包括突发长度、突发类型、CAS潜伏期6和工作模式的设置。在SDRAM芯片内部有一个逻辑控制单元,并且有一

    32、个模式寄存器为其提供控制参数。因此,每次开机时SDRAM都要先对这个控制逻辑核心进行初始化。有关预充电和刷新的含义在下文有讲述,关键的阶段就在于模式寄存器(MR,Mode Register)的设置,简称MRS(MR Set),寄存器的信息由地址线来提供,其具体配置将在下文详细介绍。初始化过程如图3-1所示。图3-1 初始化过程3.1.2 行有效初始化完成后,就要对一个L-Bank中的阵列进行寻址,首先就要确定行(Row),使之处于激活状态(Active),然后再确定列,虽然之前要进行片选和L-Bank的定址,但它们与行有效可以同时进行。从图3-2中可以看出,在CS#、L-Bank定址的同时,RAS(Row Address Strobe,行地址选通脉冲)也处于有效状态。此时An地址线则发送具体的行地址。如图中是A0A12,共有13个地址线,由于是二进制表示法,所以共有8192个行(213=8192),A0Al2的


    注意事项

    本文(基于FPGA的Verilog语言描述的SDRAM存储器接口设计学士学位论文.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开