CN111739569B - 一种边读边写的sdram控制系统及控制方法 - Google Patents

一种边读边写的sdram控制系统及控制方法 Download PDF

Info

Publication number
CN111739569B
CN111739569B CN202010567437.9A CN202010567437A CN111739569B CN 111739569 B CN111739569 B CN 111739569B CN 202010567437 A CN202010567437 A CN 202010567437A CN 111739569 B CN111739569 B CN 111739569B
Authority
CN
China
Prior art keywords
sdram
data
fifo
write
cache
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010567437.9A
Other languages
English (en)
Other versions
CN111739569A (zh
Inventor
李婷
马屹巍
郝昕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Microelectronics Technology Institute
Original Assignee
Xian Microelectronics Technology Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Microelectronics Technology Institute filed Critical Xian Microelectronics Technology Institute
Priority to CN202010567437.9A priority Critical patent/CN111739569B/zh
Publication of CN111739569A publication Critical patent/CN111739569A/zh
Application granted granted Critical
Publication of CN111739569B publication Critical patent/CN111739569B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种边读边写的SDRAM控制系统及控制方法,该系统的N个写数据缓存FIFO,N个读数据缓存FIFO,FIFO缓存控制模块和SDRAM时序控制模块;该系统中FIFO缓存控制模块在不断的对SDRAM时序控制模块发出针对SDRAM的初始化、读、读刷新、写和写刷新操作的指令,使得SDRAM不断的进行读写操作,但因为SDRAM在同一个时间只能进行一个操作,因此通过写数据缓存FIFO和读数据缓存FIFO不断进行数据的读取和缓存,使得从外部客户端的角度,该系统能够不间断的同步读写。

Description

一种边读边写的SDRAM控制系统及控制方法
【技术领域】
本发明属于SDRAM控制器技术领域,具体涉及一种边读边写的SDRAM控制系统及控制方法。
【背景技术】
SDRAM作为随机动态存储器,能够提供大容量的存储深度和很高的读写速率,但是SDRAM相对于SRAM,FIFO等存储器件,其控制相对复杂。因此,在需要通过缓存实现数据流水的应用场景中,普遍采用FIFO。但是,当数据带宽很高的时候,在数据流水中需要的缓存深度会随之提高,而FIFO无法满足这一应用场景。并且目前的SDRAM控制器只能实现对SDRAM的单记单放操作,无法满足数据流水的需求。因此需要一种可以实现对SDRAM进行边记边放操作的SDRAM控制系统和控制方法。
【发明内容】
本发明的目的在于克服上述现有技术的缺点,提供一种边读边写的SDRAM控制系统及控制方法,以解决现有的SDRAM控制器难以对SDRAM存储器件进行边记边放的问题。
为达到上述目的,本发明采用以下技术方案予以实现:
一种边读边写的SDRAM控制系统,包括:
写数据缓存FIFO,用于持续性的缓存写入至SDRAM的数据;
读数据缓存FIFO,用于持续性的缓存从SDRAM读出的数据;
FIFO缓存控制模块,用于从写数据缓存FIFO中读取数据,将数据写入SDRAM时序控制模块,同时从SDRAM时序控制模块中读出数据写入至读数据缓存FIFO中;同时向SDRAM时序控制模块输出对SDRAM的控制命令;所述控制命令为对SDRAM循环的进行读、读刷新、写和写刷新操作;
SDRAM时序控制模块,用于将FIFO缓存控制模块输出控制命令转换为SDRAM能够识别的命令;将从FIFO缓存控制模块中写入的数据转换并输入至SDRAM中,将从SDRAM读出的数据转换并输入至FIFO缓存控制模块中;
所述SDRAM控制系统包括N个写数据缓存FIFO和N个读数据缓存FIFO,N为≥3的自然数。
本发明的进一步改进在于:
优选的,FIFO缓存控制模块包括写缓存FIFO仲裁状态机、读缓存FIFO仲裁状态机和SDRAM总线分时复用控制状态机;
写缓存FIFO仲裁状态机,用于确定写入数据的写数据缓存FIFO;
读缓存FIFO仲裁状态机,用于确定读出数据的读数据缓存FIFO;
SDRAM总线分时复用控制状态机,用于发出对SDRAM的控制指令。
优选的,所述写数据FIFO缓存的深度为1024,半满值为512;FIFO缓存控制模块将写数据缓存FIFO中的数据写入至对应的bank,每一个写数据缓存FIFO有各自对应的bank。
优选的,SDRAM时序控制模块中设置有SDRAM时序控制状态机,所述SDRAM时序控制状态机用于将FIFO缓存控制模块中发出的数据、地址、以及命令,转化为SDRAM要求的时序和控制信号;同时将SDRAM读出的数据转换后输入至FIFO缓存控制模块中。
一种基于上述任意一项控制系统的边读边写的SDRAM控制方法,
对SDRAM发出上电初始化指令;
对SDRAM发出写操作指令;从写数据缓存FIFO读取数据,并将读取的数据通过SDRAM时序控制模块转换后传递至SDRAM;
对SDRAM发出读刷新操作指令;
对SDRAM发出读操作指令;从SDRAM中读取出数据,并将读取的数据通过SDRAM时序控制模块转换后传递至读数据缓存FIFO;
对SDRAM发出写刷新操作指令;
写数据缓存FIFO持续性的缓存数据;读数据缓存FIFO持续性的缓存数据。
优选的,当写数据缓存FIFO中数据量达到半满后,FIFO缓存控制模块向SDRAM时序控制模块发送写操作命令,FIFO缓存控制模块采用轮询的方法从N个写数据缓存FIFO中读出数据;
当读缓存FIFO达到半满或读空时,FIFO缓存控制模块跳转到下一个读缓存FIFO中。
优选的,所述轮询的具体步骤为:
1)FIFO缓存控制模块在初始时处于空闲状态,自动转入步骤2;
2)自动检测写缓存FIFO1是否有写请求:
若有写请求则当前状态在写缓存FIFO1状态,处理完之后转入步骤3;
若没有写请求直接转入步骤3;
3)自动检测FIFO2是否有写请求:
若有写请求则当前状态在FIFO2状态,处理完之后转入步骤4;
若没有写请求直接转入步骤4;
4)自动检测FIFO3是否有写请求:
若有写请求则当前状态在FIFO3状态,处理完之后转入步骤N+1);
N+1)自动检测FIFON是否有写请求:
若有写请求则当前状态在FIFON状态,处理完之后转入步骤2);
若没有写请求直接转入步骤2。
优选的,当若干个写数据缓存FIFO中数据量同时达到半满,FIFO缓存控制模块根据半满的先后顺序确定写操作的优先级。
优选的,若写数据缓存FIFO未发出写请求,FIFO缓存控制模块自动计时,计时时间为写数据的时长;
若读数据缓存FIFO未发出读请求,FIFO缓存控制模块自动计时,计时时间为读数据的时长。
与现有技术相比,本发明具有以下有益效果:
本发明公开了一种边读边写的SDRAM控制系统及控制方法,该系统的N个写数据缓存FIFO,N个读数据缓存FIFO,FIFO缓存控制模块和SDRAM时序控制模块;该系统中FIFO缓存控制模块在不断的对SDRAM时序控制模块发出针对SDRAM的初始化、读、读刷新、写和写刷新操作的指令,使得SDRAM不断的进行读写操作,但因为SDRAM在同一个时间只能进行一个操作,因此通过写数据缓存FIFO和读数据缓存FIFO不断进行数据的读取和缓存,使得从外部客户端的角度,该系统能够不间断的同步读写。该系统及方法使得在数据带宽很大时,可以采用SDRAM作为数据缓存实现快速数据流水。这种设计方法简化了SDRAM的控制模式,并且实现了对SDRAM进行边记边放的应用需求;采用FIFO通用接口实现和对外的数据传输,用户可以通过简单的读写操作实现对SDRAM的边记边放;本发明可以通过对FIFO个数的扩展,本发明可以实现多种数据类型的独立存储。
【附图说明】
图1为本发明SDRAM控制系统结构图;
图2为本发明的写缓存FIFO仲裁状态机写缓存FIFO仲裁状态机状态迁移图;
图3为本发明的SDRAM总线分时复用控制状态机SDRAM总线分时复用状态机状态迁移图;
图4为本发明的第四状态机SDRAM时序控制状态机状态迁移图。
图5为实施例的SDRAM控制器接口示意图。
【具体实施方式】
下面结合附图对本发明做进一步详细描述:
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制;术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性;此外,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本发明公开了一种同步读写的SDRAM控制系统及控制方法,本发明的技术解决方案是采用状态机控制SDRAM的读写操作,并在SDRAM读写时序控制器外围增加N个异步FIFO作为写数据缓存和N个异步FIFO作为读数据缓存,N为大于等于3的自然数。通过对SDRAM数据,地址和控制总线的分时复用实现宏观上的对SDRAM的边记边放,使用户可以像操作FIFO一样对SDRAM进行边读边写操作。以下描述均设定N为3,该系统包括:三个写数据缓存FIFO,三个读数据缓存FIFO,FIFO缓存控制模块和SDRAM时序控制模块;该系统中的SDRAM时序控制模块和SDRAM连接,FIFO缓存控制模块的一端与SDRAM时序控制模块相连,另一端和三个写数据缓存FIFO连接,以及和三个读数据缓存FIFO连接;用户的读数据接口与读数据缓存FIFO连接,用户的写数据接口与写数据缓存FIFO相连接,读写缓存FIFO的另一边读写端和FIFO缓存控制模块相连。
三个写数据缓存FIFO不断从外界进行数据的写入并缓存在其内部,三个读数据缓存FIFO不断通过FIFO缓存控制模块从SDRAM读出数据并缓存在其内部,使得外部数据需要读取时,能够直接从三个读数据缓存FIFO中读取数据。
读数据缓存FIFO和写数据缓存FIFO,用于短暂的存储数据,FIFO缓存控制模块用于将数据传递至读写时序控制器中;读数据缓存FIFO和写数据缓存FIFO采用赛灵思公司的开发平台ISE中的IP核实现。FIFO缓存控制模块与读数据缓存FIFO的数据总线相连,FIFO缓存控制模块与写数据缓存FIFO的数据总线相连,FIFO缓存控制模块将数据从写数据缓存FIFO中读出,传递至SDRAM时序控制模块中,通过SDRAM时序控制模块转换后写入到SDRAM中,并将SDRAM时序控制模块中从SDRAM读出并转换的数据写入到读数据缓存FIFO中。
FIFO缓存控制模块中包括写缓存FIFO仲裁状态机、读缓存FIFO仲裁状态机和SDRAM总线分时复用控制状态机。其中写缓存FIFO仲裁状态机和读缓存FIFO仲裁状态机状态的迁移关系相同,只是写缓存FIFO仲裁状态机的迁移条件为写缓存FIFO的半满条件,而读缓存FIFO仲裁状态机的迁移条件为读缓存FIFO的半满条件和空条件。SDRAM总线分时复用控制状态机完成对SDRAM读写总线(控制信号)的调度,使SDRAM在上电初始化后,完成读,读刷新,写,写刷新的循环操作,以实现宏观上的边记边放。FIFO缓存控制模块只输出控制命令和读写数据,地址给SDRAM读写时序控制模块。FIFO缓存控制模块从读写缓存FIFO中读写数据,然后根据SDRAM总线分时复用控制状态机的状态发送数据和命令到SDRAM时序控制模块。
SDRAM读写时序控制模块,用于完成和SDRAM数据的交互以及对SDRAM的控制命令的转换,具体的,SDRAM时序控制模块根据FIFO缓存控制模块中发出的数据,地址,以及命令,将他们转化为SDRAM要求的时序和控制信号组合,将转化后的时序和控制信号组合传递至SDRAM,以及将SDRAM的数据转换并锁存后输入到FIFO缓存控制模块中,然后由FIFO缓存控制模块来处理,决定将这个数据写入到哪一个FIFO中对SDRAM的控制为按照一定时序输出对SDRAM的控制信号控制SDRAM。SDRAM读写时序控制模块包含SDRAM时序控制状态机。
读缓存FIFO和写缓存FIFO采用赛灵思公司的开发平台ISE中的IP核实现。
该系统的具体工作过程为:
如图1所示,在使用边记边放SDRAM控制器时,用户可以通过三个写数据FIFO缓存接口(wclk[2:0],wdata[2:0][31:0],wen[2:0])将要缓存的数据写入到FIFO缓存控制模块中,每个写数据缓存FIFO的深度为1024,半满值为512(半满阈值和FIFO深度可以根据实际情况修改),当写数据缓存FIFO中数据量达到半满后,FIFO缓存控制模块会向SDRAM时序控制模块发送一次写操作命令,将数据从达到半满的写缓存FIFO中读出,然后写入到SDRAM时序控制模块中。
若三个写数据FIFO同时达到半满,FIFO缓存控制模块中的写缓存FIFO仲裁状态机会按照半满的先后顺序以及确定的优先级先后处理三个写数据FIFO的数据。写缓存FIFO的仲裁采用轮询的方式进行,在写缓存仲裁状态机中,如图2所示:
1)在初始时处于空闲状态,接着自动转入步骤2;
2)自动检测FIFO1是否有写请求:
若有写请求则当前状态在FIFO1状态,处理完之后转入步骤3;
若没有写请求直接转入步骤3;
3)自动检测FIFO2是否有写请求:
若有写请求则当前状态在FIFO2状态,处理完之后转入步骤4;
若没有写请求直接转入步骤4;
4)自动检测FIFO3是否有写请求:
若有写请求则当前状态在FIFO3状态,处理完之后转入步骤2;
若没有写请求直接转入步骤2;
在写缓存FIFO仲裁状态机中,通过FIFO的半满信号判断写缓存FIFO是否有写请求。
SDRAM总线分时复用控制会在每次写状态的一开始根据写缓存FIFO仲裁状态机的状态选定当前需要处理的FIFO,然后在写状态过程中,读出该写缓存FIFO的数据,将数据,地址和写操作命令发送给SDRAM时序控制模块。为了将数据独立存储,在FIFO缓存控制模块中,将三个写缓存FIFO的数据会分别存储在不同的bank中,然后行列地址由FIFO缓存控制模块控制,从0开始递增存储。也就是说,当写状态一开始获取当前需要处理的FIFO以后,FIFO缓存控制模块就将输出的SDRAM的bank地址和行列地址切换到相应写缓存FIFO对应的地址寄存器,并在上一次地址的基础上进行递增。SDRAM的地址控制采用回卷式,如果在当前bank地址被写满后,FIFO缓存控制模块会自动将下一个数据写入到该bank的第0行第0列,然后继续递增。
SDRAM总线分时复用控制通过SDRAM总线分时复用控制状态机实现,如图3所示,SDRAM总线分时复用控制状态机使得SDRAM在每次上电复位后进行对SDRAM进行一次初始化操作,初始化完成后对SDRAM自动进行写,写后刷新,读,读后刷新的循环操作,需要说明的是,SDRAM总线分时复用控制状态机所有发出的对SDRAM的控制指令都经过SDRAM时序控制模块进行转换。刷新时间间隔可以通过配置写操作和读操作的burst长度控制。SDRAM总线分时复用控制状态机跳转逻辑如下:
1)SDRAM总线分时复用控制状态机初始时处于空闲状态,接着会自动进入步骤2初始化状态。
2)按照SDRAM初始化的要求,SDRAM总线分时复用控制状态机向SDRAM时序控制模块发出初始化控制指令,SDRAM时序控制模块将该指令转换为SDRAM可以识别的指令并传递给SDRAM,对SDRAM初始化,SDRAM总线分时复用控制状态机检测到SDRAM初始化完成后,进入步骤3写状态。
3)SDRAM总线分时复用控制状态机检测写数据缓存FIFO是否发出写请求(判断仲裁中有没有写请求):
a)SDRAM总线分时复用控制状态机若接收到写请求,SDRAM总线分时复用控制状态机发出写控制信号,并读取读缓存FIFO中的数据,按照SDRAM写操作时序将数据送出至SDRAM时序控制模块,写操作完成后自动发送一次预充电控制信号,然后进入步骤4;
b)SDRAM总线分时复用控制状态机若没有接收到写请求,SDRAM总线分时复用控制状态机开始自动计时,计时时长为写数据的时长,计时结束后进入步骤4。
4)SDRAM总线分时复用控制状态机向SDRAM时序控制模块发出自动刷新控制信号,SDRAM时序控制模块转换该指令,该指令传递给然后进入步骤5。
5)SDRAM总线分时复用控制状态机检测读数据缓存FIFO是否发出读请求
a)若接收到读请求,SDRAM总线分时复用控制状态机发出读控制信号,并根据读缓存FIFO仲裁状态机的结果按照SDRAM读操作时序将数据读出,并写入到FIFO中,读操作完成后自动发送一次预充电控制信号,然后进入步骤6;
b)若没有接收到读请求,SDRAM状态机开始自动计时,计时结束后进入步骤6。
c)总线分时复用控制状态机发出SDRAM自动刷新控制信号,然后返回到步骤3。
读操作的控制与写操作的控制相同,三个读缓存FIFO与三个写缓存FIFO一一对应,对于读地址的控制也是采用递增的方式,也就是说对于整个边记边放SDRAM控制系统来说,在边记边放时采用的是先进先出的控制逻辑。读缓存FIFO仲裁状态机与写缓存FIFO仲裁状态机相同,但是在读缓存FIFO仲裁状态机跳转的过程中,除了需要判断各个读缓存FIFO的半满状态之外,还需要判断各读缓存FIFO对应的bank是否被读空,只有当前状态读缓存FIFO达到半满或者被读空时,才会跳转到下一个读缓存FIFO。bank的空信号由FIFO缓存控制模块通过对比写地址与读地址产生。这样可以保证在bank没有被读空的情况下,读缓存FIFO中始终有数据可以被读取。
SDRAM时序控制模块根据FIFO缓存控制模块中发出的数据,地址,以及命令,将他们转化为SDRAM要求的时序和控制信号组合与SDRAM完成数据的交互和对SDRAM的控制。SDRAM时序控制通过状态机实现,如图4所示,通过FIFO缓存控制模块发出的命令和时序完成信号完成SDRAM时序控制状态机的状态跳转。
1)SDRAM时序控制状态机初始时处于not init,若此时检测到上电初始化完成信号init down为1,说明SDRAM时序控制模块已经完成了上电初始化操作,状态机跳转到process init,进入步骤3,否则跳转到init,进入步骤2;
2)检测SDRAM时序控制状态机上电初始化是否完成,若完成,即init down为1,进入步骤1;
3)检测SDRAM时序控制状态机初始化是否完成,若完成,即init process down为1,进入end步骤4;
4)跳转到idle,进入步骤5;
5)检测当前SDRAM时序控制命令sysop的值,若为init,则跳转到init,进入步骤2);若为read,则跳转到read,进入步骤6;若为write,则跳转到write,进入步骤7;若为refresh,则跳转到refresh,进入步骤8;否则留在当前状态;
6)检测SDRAM时序控制状态机在当前状态是否完成读操作,若完成,进入end步骤4;
7)检测SDRAM时序控制状态机在当前状态是否完成写操作,若完成,进入end步骤4;
8)检测SDRAM时序控制状态机当前状态是否完成刷新操作,若完成,进入end步骤4。
实施例
依据本发明方法成功解决了某型号卫星载荷处理计算机中实现快速流水的问题,在数据存储与管理模块中,SDRAM控制器接口如图5所示,缓存数据以800Mbps的速率写入到三个写数据总线中,在SDRAM中数据存储量达到3072Kb后(数据缓存量可配置,最多可缓存1G数据量),通过读数据总线以960Mbps的速率从SDRAM中读出数据,同时持续的向SDRAM中写入数据,实现边记边放。本发明采用异步FIFO通用接口,读写数据可以在不同的时钟域下进行。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种边读边写的SDRAM控制系统,其特征在于,包括:
写数据缓存FIFO,用于持续性的缓存写入至SDRAM的数据;
读数据缓存FIFO,用于持续性的缓存从SDRAM读出的数据;
FIFO缓存控制模块,用于从写数据缓存FIFO中读取数据,将数据写入SDRAM时序控制模块,同时从SDRAM时序控制模块中读出数据写入至读数据缓存FIFO中;同时向SDRAM时序控制模块输出对SDRAM的控制命令;所述控制命令为对SDRAM循环的进行读、读刷新、写和写刷新操作;
SDRAM时序控制模块,用于将FIFO缓存控制模块输出控制命令转换为SDRAM能够识别的命令;将从FIFO缓存控制模块中写入的数据转换并输入至SDRAM中,将从SDRAM读出的数据转换并输入至FIFO缓存控制模块中;
所述SDRAM控制系统包括N个写数据缓存FIFO和N个读数据缓存FIFO,N为≥3的自然数。
2.根据权利要求1所述的一种边读边写的SDRAM控制系统,其特征在于,FIFO缓存控制模块包括写缓存FIFO仲裁状态机、读缓存FIFO仲裁状态机和SDRAM总线分时复用控制状态机;
写缓存FIFO仲裁状态机,用于确定写入数据的写数据缓存FIFO;
读缓存FIFO仲裁状态机,用于确定读出数据的读数据缓存FIFO;
SDRAM总线分时复用控制状态机,用于发出对SDRAM的控制指令。
3.根据权利要求2所述的一种边读边写的SDRAM控制系统,其特征在于,所述写数据FIFO缓存的深度为1024,半满值为512;FIFO缓存控制模块将写数据缓存FIFO中的数据写入至对应的bank,每一个写数据缓存FIFO有各自对应的bank。
4.根据权利要求1所述的一种边读边写的SDRAM控制系统,其特征在于,SDRAM时序控制模块中设置有SDRAM时序控制状态机,所述SDRAM时序控制状态机用于将FIFO缓存控制模块中发出的数据、地址、以及命令,转化为SDRAM要求的时序和控制信号;同时将SDRAM读出的数据转换后输入至FIFO缓存控制模块中。
5.一种基于权利要求1-4任意一项所述控制系统的边读边写的SDRAM控制方法,其特征在于,
对SDRAM发出上电初始化指令;
对SDRAM发出写操作指令;从写数据缓存FIFO读取数据,并将读取的数据通过SDRAM时序控制模块转换后传递至SDRAM;
对SDRAM发出读刷新操作指令;
对SDRAM发出读操作指令;从SDRAM中读取出数据,并将读取的数据通过SDRAM时序控制模块转换后传递至读数据缓存FIFO;
对SDRAM发出写刷新操作指令;
写数据缓存FIFO持续性的缓存数据;读数据缓存FIFO持续性的缓存数据。
6.根据权利要求1所述的一种边读边写的SDRAM控制系统,其特征在于,当写数据缓存FIFO中数据量达到半满后,FIFO缓存控制模块向SDRAM时序控制模块发送写操作命令,FIFO缓存控制模块采用轮询的方法从N个写数据缓存FIFO中读出数据;
当读缓存FIFO达到半满或读空时,FIFO缓存控制模块跳转到下一个读缓存FIFO中。
7.根据权利要求6所述的一种边读边写的SDRAM控制系统,其特征在于,所述轮询的具体步骤为:
1)FIFO缓存控制模块在初始时处于空闲状态,自动转入步骤2;
2)自动检测写缓存FIFO1是否有写请求:
若有写请求则当前状态在写缓存FIFO1状态,处理完之后转入步骤3;
若没有写请求直接转入步骤3;
3)自动检测写缓存FIFO2是否有写请求:
若有写请求则当前状态在写缓存FIFO2状态,处理完之后转入步骤4;
若没有写请求直接转入步骤4;
4)自动检测写缓存FIFO3是否有写请求:
若有写请求则当前状态在写缓存FIFO3状态,处理完之后转入步骤N+1);
N+1)自动检测写缓存FIFON是否有写请求:
若有写请求则当前状态在写缓存FIFON状态,处理完之后转入步骤2);
若没有写请求直接转入步骤2。
8.根据权利要求6所述的一种边读边写的SDRAM控制系统,其特征在于,当若干个写数据缓存FIFO中数据量同时达到半满,FIFO缓存控制模块根据半满的先后顺序确定写操作的优先级。
9.根据权利要求4所述的一种边读边写的SDRAM控制系统,其特征在于,若写数据缓存FIFO未发出写请求,FIFO缓存控制模块自动计时,计时时间为写数据的时长;
若读数据缓存FIFO未发出读请求,FIFO缓存控制模块自动计时,计时时间为读数据的时长。
CN202010567437.9A 2020-06-19 2020-06-19 一种边读边写的sdram控制系统及控制方法 Active CN111739569B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010567437.9A CN111739569B (zh) 2020-06-19 2020-06-19 一种边读边写的sdram控制系统及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010567437.9A CN111739569B (zh) 2020-06-19 2020-06-19 一种边读边写的sdram控制系统及控制方法

Publications (2)

Publication Number Publication Date
CN111739569A CN111739569A (zh) 2020-10-02
CN111739569B true CN111739569B (zh) 2022-04-26

Family

ID=72651796

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010567437.9A Active CN111739569B (zh) 2020-06-19 2020-06-19 一种边读边写的sdram控制系统及控制方法

Country Status (1)

Country Link
CN (1) CN111739569B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113419985A (zh) * 2021-06-15 2021-09-21 珠海市一微半导体有限公司 Spi系统自动读取数据的控制方法及spi系统
CN113590520B (zh) * 2021-06-15 2024-05-03 珠海一微半导体股份有限公司 Spi系统自动写入数据的控制方法及spi系统
CN113254384B (zh) * 2021-06-23 2021-11-26 中科院微电子研究所南京智能技术研究院 一种众核系统的数据传输方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6772273B1 (en) * 2000-06-29 2004-08-03 Intel Corporation Block-level read while write method and apparatus
KR20080040425A (ko) * 2006-11-03 2008-05-08 삼성전자주식회사 멀티 섹터 소거 동작 도중에 데이터를 독출할 수 있는불휘발성 메모리 장치 및 데이터 독출 방법
CN103592489A (zh) * 2013-11-14 2014-02-19 江苏绿扬电子仪器集团有限公司 数字示波器深存储设计方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7562180B2 (en) * 2006-03-28 2009-07-14 Nokia Corporation Method and device for reduced read latency of non-volatile memory
CN102298561B (zh) * 2011-08-10 2016-04-27 北京百度网讯科技有限公司 一种对存储设备进行多通道数据处理的方法、系统和装置
US9305618B2 (en) * 2014-01-30 2016-04-05 International Business Machines Corporation Implementing simultaneous read and write operations utilizing dual port DRAM

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6772273B1 (en) * 2000-06-29 2004-08-03 Intel Corporation Block-level read while write method and apparatus
KR20080040425A (ko) * 2006-11-03 2008-05-08 삼성전자주식회사 멀티 섹터 소거 동작 도중에 데이터를 독출할 수 있는불휘발성 메모리 장치 및 데이터 독출 방법
CN103592489A (zh) * 2013-11-14 2014-02-19 江苏绿扬电子仪器集团有限公司 数字示波器深存储设计方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Realization of Multi-port SDRAM Controller in LXI Data Acquisition System;Jianmin Wang等;《IEEE》;20131230;全文 *

Also Published As

Publication number Publication date
CN111739569A (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
CN111739569B (zh) 一种边读边写的sdram控制系统及控制方法
US5507005A (en) Data transferring system between host and I/O using a main buffer with sub-buffers where quantity of data in sub-buffers determine access requests
US7529896B2 (en) Memory modules having a memory hub containing a posted write buffer, a memory device interface and a link interface, and method of posting write requests in memory modules
US7962669B2 (en) Memory controller and memory control method
US6615326B1 (en) Methods and structure for sequencing of activation commands in a high-performance DDR SDRAM memory controller
CN101324869B (zh) 一种基于axi总线的多路复用器
KR20080104184A (ko) 모드-선택 프리페치 및 클록-코어 타이밍 기능을 갖는 메모리장치
CN113641603A (zh) 一种基于axi协议的ddr仲裁与调度方法及系统
US9128633B2 (en) Semiconductor memory device and method of operating the semiconductor memory device
US20110296124A1 (en) Partitioning memory for access by multiple requesters
JP5428687B2 (ja) メモリ制御装置
US20130290646A1 (en) Fifo buffer system providing same clock cycle response to pop commands
CN113791994B (zh) 一种基于AXI协议wrap访问的DDR控制器及处理方法
US20040243785A1 (en) Memory controller providing dynamic arbitration of memory commands
CN112069095B (zh) Ddr3读写传输方法和装置
CN100536021C (zh) 大容量高速缓冲存储器
KR100676982B1 (ko) 데이터 처리 장치 및 방법과 컴퓨터 판독 가능 저장 매체
US7581072B2 (en) Method and device for data buffering
CN116414765A (zh) 一种fpga芯片、透传方法、逻辑测试模块和方法
US20050210163A1 (en) Memory control apparatus
CN100508063C (zh) 能够找到开放命令周期以发出预充电包的存储器控制器和方法
EP2851802B1 (en) Memory scheduling method and memory controller
CN101002272A (zh) 动态随机存取存储器内的数据寻址
JP4707351B2 (ja) マルチバンクメモリのスケジューリング方法
JPH0628246A (ja) 記憶装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant