微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 凔海笔记之FPGA(十):SDRAM

凔海笔记之FPGA(十):SDRAM

时间:10-02 整理:3721RD 点击:
        对于SDRAM,就从初探存储器、对SDRAM的认识、Verilog综合的SDRAM单字节读写时序、多字节读写和页读写这下四个方面来写下自己的笔记吧
嗯,就这样

(一)初探存储器

    下图这个,学过数电的都知道哦。一个简单的D触发器,可以封装成右图。DI(Data input)数据输入,即写入的高电平,W(Write) 写信号,当为1时允许写入,置零则不可写,DO(Data Output)数据输

出。

  


    如果我们把八个D触发器连在一块呢?如下图,写入信号W置一时,这可以对八个触发器同时写入数据,实现了八位二进制数存储。



    下面把它封装一下,就是8位锁存器了,可以存储八位二进制数据,再换种画法吧,如左图

  


    上图则可存储一个八位的二进制数,如果我们存储八个二进制数呢?而不是一个八位二进制数,也就是我想读出八个存储器中的任意一个二进制数,怎么办嘞?



加个8-1选择器嘛,下图这货。



通过S0、S1、S2地址编码选择D0~D7当中的某一个输出。如下图连接在一起。

              


     这样我们实现了选择一位输出,那么,我还想选择一位输入,又该当如何?

   


     所谓的地址,就选择对某个触发器进行读写操作,在数据输入控制端置1则是写。这就构建了一个存储器,可以存储八个二进制,通过选择地址实现某位的读出与写入。它也有自己的名字,叫读/写存储器,但通常叫作随机访问存储器或 RAM。RAM可存储8个单独的1位数据,如下图所示:



     可是,人是很不满足的,如果我想要存储8x2RAM呢?



这样就好了,哪怕我想要8X8RAM我也不怕,并呗
如我我想要16X1呢?



加俩2-1选择器呗,这样“选择输入”就好比是地址了,也就有4根地址线,实现了16X1RAM。那么,如果我想要1024X8怎么办,全是套路

  


    上面构建的是RAM(Random  Access Memory)又称为随机存取存储器,或读写存储器,正常工作时,RAM能读能写,断电以后RAM中存储的数据随之消失,故具有易失性。
    RAM又可分为静态RAM(SRAM:Static  Random Memroy)和动态RAM(DRAM:Dynamic Random Access Memory)。
    SRAM 中的存储单元是一个触发器,有0/1俩个稳态,SRAM速度非常快,是目前读写最快的存储设备了,但它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。
    DRAM则是利用电容器存储电荷来保存0或1的,因此需要定时对其存储单元进行刷新。DRAM保留数据的时间很短,需要刷新和回写,故速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。
    同步动态随机存储器SDRAM(Synchronous Dynamic Random Access Memory)又是DRAM的一种,增加了同步时钟,提高了读写速率。我们接下来要说的就是SDRAM。
    最后再插一句吧,与上述均不同的还有ROM(Read-Only Memory),它是另一种半导体存储器,即只读存储器,其数据可以长久保存,其中的数据一般由专用的装置写入。根据是否是否允许用户对ROM写入数据,又可将ROM分为固定ROM(或掩模ROM)和可编程ROM(PROM  :Programmable Read-Only Memory)。PROM又可分为一次可编程ROM、光可擦除可编程存储器(EPROM)、电可擦除可编程(E2PROM)和闪存存储器(Flash memory)
欲瞧凔海笔记之单片机、FPGA等系列文章,请戳下面链接(*^__^*) 嘻
嘻……
凔海笔记本

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top