CN100369016C - 一种同步动态随机存取存储器的控制器 - Google Patents
一种同步动态随机存取存储器的控制器 Download PDFInfo
- Publication number
- CN100369016C CN100369016C CNB2005100870161A CN200510087016A CN100369016C CN 100369016 C CN100369016 C CN 100369016C CN B2005100870161 A CNB2005100870161 A CN B2005100870161A CN 200510087016 A CN200510087016 A CN 200510087016A CN 100369016 C CN100369016 C CN 100369016C
- Authority
- CN
- China
- Prior art keywords
- random access
- dynamic random
- synchronous dynamic
- access memory
- control unit
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Dram (AREA)
Abstract
本发明属于空间电子技术领域,具体地说,本发明涉及一种同步动态随机存取存储器的控制器芯片,包括片选及地址锁存电路、同步动态随机存取存储器数据总线接口电路;其特征在于,还包括指令译码及刷新控制单元;所述指令译码及刷新控制单元根据接收到的控制用CPU的指令,产生同步动态随机存取存储器阵列所需的控制信号;所述片选及地址锁存电路根据接收到的控制用CPU的指令,产生同步动态随机存取存储器阵列所需的片选、时钟使能、地址信号。本发明的优点在于:1)适用于超大容量存储器;2)可靠性更高,更适用于空间辐射环境;3)实现简单灵活。
Description
技术领域
本发明属于空间电子技术领域,具体地说,本发明涉及一种基于软件控制的同步动态随机存取存储器控制器芯片,该芯片用于与空间飞行器CPU接口的同步动态随机存取存储器阵列的数据存储与回放及数据保持控制。
背景技术
空间飞行器在其执行任务过程中产生大量数据,这些数据由于受飞行器——地面数据链路的时间及带宽限制,通常需要由大容量存储器暂存,在飞行器过站时下行回放。大容量存储器的存储介质通常采用磁介质或固态存储介质,其中固态存储介质中主要有同步动态随机存取存储器存储器(SDRAM)及闪速存储器(FLASH存储器)。SDRAM具有机械结构简单、可靠性高、数据可随机存取、数据存取速度快等优点,但由于同步动态随机存取存储器本身固有的需要动态刷新才能保持数据不丢失的特性,也存在刷新控制复杂、功耗较大的缺点,需要专门控制器进行控制。现有的SDRAM控制器一般有如下几种:一种是专用SDRAM接口芯片,这种控制器接口固定,访问容量有限,不能满足飞行器对于存储器超大容量的要求;另一种是带有SDRAM接口的DSP,例如TMS320C6000系列,其缺点是容量有限,不易扩展;还有一种是针对各种应用设计的基于FPGA的SDRAM控制器,如Xilinx公司提供的SDRAM控制器IP核,但这些SDRAM控制器除同样容量有限外,还往往采用状态机作为其控制器的核心,未考虑空间辐射环境下的单粒子效应可能导致状态机的错误动作,从而使SDRAM存储芯片进入错误状态,导致数据丢失。
发明内容
本发明的目的在于提供一种适于空间飞行器使用的,基于软件控制的同步动态随机存取存储器控制器(即SDRAM控制器),该SDRAM控制器能够在软件控制下将数据存储到固态存储器阵列的任意指定地址的存储单元中,并能够将任意指定地址的存储单元中的数据读出,同时能够利用软件单独控制各SDRAM芯片进入自动刷新(AUTOREFRESH)模式。
为实现上述发明目的,本发明提供的基于软件控制的同步动态随机存取存储器控制器,包括片选及地址锁存电路、同步动态随机存取存储器数据总线接口电路;其特征在于,还包括指令译码及刷新控制单元,其中指令译码及刷新控制单元、片选及地址锁存电路与控制用CPU的控制总线及数据总线相连;所述片选及地址锁存电路根据接收到的控制用CPU的指令,产生同步动态随机存取存储器阵列所需的片选、时钟使能、地址信号;所述指令译码及刷新控制单元根据接收到的控制用CPU的指令,产生同步动态随机存取存储器阵列所需的控制信号;同步动态随机存取存储器数据总线接口电路与CPU数据总线、同步动态随机存取存储器阵列的数据总线及指令译码及刷新控制单元相连,从而完成CPU与同步动态随机存取存储器阵列间的数据交换及同步动态随机存取存储器的自动刷新功能。
所述指令译码及刷新控制单元产生的控制信号包括同步动态随机存取存储器阵列所需的RAS、CAS、WE、DQM信号。
所述指令译码及刷新控制单元还产生地址输出控制信号,该信号控制片选及地址锁存电路输出行地址或列地址;指令译码及刷新控制单元还产生数据输入输出控制信号,该信号控制同步动态随机存取存储器数据总线接口电路的数据流向。
所述指令译码及刷新控制单元会自动产生自动刷新指令,对同步动态随机存取存储器进行定期刷新,以保持数据存储的正确。
所述控制器可以支持容量最大至4096G bits的存储器阵列。
所述控制器电路全部用硬件实现,写入一片FPGA(现场可编程门阵列)芯片。
与现有技术相比,本发明的优点在于:1)适用于超大容量存储器,通过对“片选及地址锁存器”的扩展,容量可无限扩大,完全可以满足空间飞行器对于大容量存储器的容量需求。2)采用软件发指令,硬件译码的控制方式,相比较有限状态机的状态自动转换控制方式,可靠性更高,更适用于空间辐射环境。3)实现简单灵活,可以根据***需要与其他接口电路或编译码器等电路用一片FPGA实现,从而大大提高***的灵活性,降低整机的体积和重量。
附图说明
图1为本发明提供的SDRAM控制器的原理框图;
图2为指令译码及刷新控制单元框图;
图3为SDRAM读写时序图;
图中各符号表示的意义如下,
Ra:a行行地址 Ca:a列列地址 BS:块选择 Qa:读出的a列数据
Db:写入b列地址的数据
tSS:输入建立时间 tSH:输入保持时间 tCCD:列地址间延时 tRAS:行激活时间
tRC:行周期时间 tRP:行预充电时间 tRCD:行激活到列地址时延 tCC:时钟周期
tSAC:时钟到有效输出延时
图4为本发明实际仿真所得的SDRAM读写波形图。
具体实施方式
为进一步说明本发明的目的和特征,下面结合附图及具体实施例对本发明作一详细描述,其中图1为本发明的原理框图,图2为指令译码及刷新控制单元框图,图3为SDRAM读写时序图。图4为本发明实际仿真所得SDRAM读写波形图(采用的是软件仿真,仿真平台为Modelsim)。表1为SDRAM工作所需外部指令及控制信号真值表。
如图1所示,本发明由片选及地址锁存电路、指令译码及刷新控制单元、SDRAM数据总线接口电路三部分组成,其中片选及地址锁存电路、指令译码及刷新控制单元均与控制用CPU的控制总线和数据总线相连,片选及地址锁存电路产生SDRAM存储器阵列所需的片选(CS)、时钟使能(CKE)、Bank及地址信号,指令译码及刷新控制单元产生SDRAM存储器阵列所需的控制信号(RAS、CAS、WE、DQM)。SDRAM数据总线接口电路与CPU数据总线、SDRAM存储器阵列的数据总线及指令译码及刷新控制单元相连,从而完成CPU与SDRAM存储器阵列间的数据交换及SDRAM存储器的自动刷新功能。本实施例中的控制器可以支持容量最大至4096G bits的存储器阵列。
SDRAM完成读写及刷新等操作是依靠其输入控制信号CLOCK、CKE、CS、RAS、CAS、WE、DQM的不同时序及地址、数据总线上的相应地址及数据完成的。参看图3,以从某存储单元读出一个数据为例,需先给出行地址有效指令(CKE=HIGH,CSn=LOW,RAS=LOW,CAS=HIGH,WE=HIGH)及相应行地址(ADDR,A10/AP)及块(Bank)地址(BA),间隔一定时间(若干时钟周期)之后再给出读指令(CKE=HIGH,CSn=LOW,RAS=HIGH,CAS=LOW,WE=HIGH)及相应列地址(ADDR,A10/AP),在CAS Latency=3时,3个时钟周期之后,该地址的数据将会出现在数据总线(DQ)上。同样,写操作及存储器初始化、刷新、预充电等均需外部SDRAM控制器按照表1的规定给出相应指令信号。
命令 | CKEn-1 | CKEn | CS | RAS | CAS | WE | DQM | BA0,1 | A10/AP | A11,A9~0 | ||
模式寄存器设置 | H | X | L | L | L | L | X | 操作码 | ||||
自动刷新 | H | H | L | L | L | H | V | X | ||||
行激活 | H | X | L | L | H | H | X | V | 行地址 | |||
读 | 自动预充电关 | H | X | L | H | L | H | X | V | L | 列地址 | |
自动预充电开 | H | |||||||||||
写 | 自动预充电关 | H | X | L | H | L | L | X | V | L | 列地址 | |
自动预充电开 | H | |||||||||||
突发结束 | H | X | L | H | H | L | X | X | ||||
预充电 | 块选择 | H | X | L | L | H | L | X | V | L | X | |
所有块 | X | H | ||||||||||
无操作指令 | H | X | H | X | X | X | X | X | ||||
L | H | H | H |
表1
表1中,V=有效 X=无所谓 H=逻辑高电平 L=逻辑低电平
本发明根据计算机软件发出的指令,由指令译码及刷新控制单元进行指令译码,在此单元的输出信号端产生相应时序的RAS、CAS、WE、DQM信号,同时指令译码及刷新控制单元还控制片选及地址锁存单元产生相应的CKE、CS、BA及地址(ADDR)信号,并控制SDRAM数据总线接口单元将CPU数据总线上的数据写入到SDRAM存储器中或将数据从SDRAM存储器阵列中读到CPU数据总线上。在完成读写各时序的同时,图1的指令译码及刷新控制单元还会自动产生自动刷新指令,对SDRAM存储器进行定期刷新,以保持数据存储的正确。
图2是指令译码及刷新控制单元的内部原理框图。指令译码单元接收CPU控制总线及数据总线的指令(所有指令均列在表1中),将指令译码后信号Y1、Y2、Y3和Y4、Y5、Y6分别送到WE及DQM信号产生单元和RAS及CAS信号产生单元,同时还会产生刷新启动指令启动刷新及预充电指令产生单元产生刷新(REFRESH)及预充电指令信号PRG,WE及DQM信号产生单元和RAS及CAS信号产生单元产生符合SDRAM存储器要求时序的RAS、CAS、WE、DQM信号。同时,还将产生地址输出控制信号控制输出行地址还是列地址,产生数据输入输出控制信号以控制数据流向。
本实施例中,片选及地址锁存单元主要由一个6-64译码器、两个12位锁存器和一个12位二选一多路选择器组成。6-64译码器根据软件指令产生相应的CS、Bank及CKE信号;两个12位锁存器分别锁存行地址和列地址,这两路地址信号送给12位二选一多路选择器,多路选择器在地址输出控制信号的控制下输出行地址或列地址给SDRAM阵列的地址总线。
SDRAM数据总线接口单元主要由一个16位的三态门组成,三态门的控制端与接收指令译码及刷新控制单元产生的数据输入输出信号,以控制将CPU数据总线上的数据写入到SDRAM存储器中或将数据从SDRAM存储器阵列中读到CPU数据总线上。
本实施例可以支持容量最大至4096G bits的存储器阵列,值得注意的是,通过对本发明中片选及地址锁存电路的扩展,可以进一步扩大存储器阵列的容量。
本实施例中的控制器电路全部用硬件实现,最后写入一片FPGA(现场可编程门阵列)芯片。
Claims (6)
1.一种同步动态随机存取存储器的控制器,包括片选及地址锁存电路、同步动态随机存取存储器数据总线接口电路;其特征在于,还包括指令译码及刷新控制单元,所述指令译码及刷新控制单元、片选及地址锁存电路与控制用CPU的控制总线及数据总线相连;
所述片选及地址锁存电路根据接收到的CPU的控制指令,产生同步动态随机存取存储器阵列所需的片选、时钟使能、地址信号;
所述指令译码及刷新控制单元根据接收到的CPU的控制指令,产生同步动态随机存取存储器阵列所需的控制信号;
所述同步动态随机存取存储器数据总线接口电路与CPU数据总线、同步动态随机存取存储器阵列的数据总线及指令译码及刷新控制单元相连。
2.按权利要求1所述的同步动态随机存取存储器的控制器,其特征在于,所述指令译码及刷新控制单元产生的控制信号包括同步动态随机存取存储器阵列所需的RAS、CAS、WE、DQM信号。
3.按权利要求1所述的同步动态随机存取存储器的控制器,其特征在于,所述指令译码及刷新控制单元还产生地址输出控制信号,该信号控制片选及地址锁存电路输出行地址或列地址;指令译码及刷新控制单元还产生数据输入输出控制信号,该信号控制同步动态随机存取存储器数据总线接口电路的数据流向。
4.按权利要求3所述的同步动态随机存取存储器的控制器,其特征在于,所述指令译码及刷新控制单元会自动产生自动刷新指令,对同步动态随机存取存储器进行定期刷新,以保持数据存储的正确。
5.按权利要求1所述的同步动态随机存取存储器的控制器,其特征在于,所述控制器可以支持容量最大至4096 G bits的存储器阵列。
6.按权利要求1所述的同步动态随机存取存储器的控制器,其特征在于,所述控制器电路全部用硬件实现,写入一片FPGA芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100870161A CN100369016C (zh) | 2005-07-22 | 2005-07-22 | 一种同步动态随机存取存储器的控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100870161A CN100369016C (zh) | 2005-07-22 | 2005-07-22 | 一种同步动态随机存取存储器的控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1900918A CN1900918A (zh) | 2007-01-24 |
CN100369016C true CN100369016C (zh) | 2008-02-13 |
Family
ID=37656807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100870161A Expired - Fee Related CN100369016C (zh) | 2005-07-22 | 2005-07-22 | 一种同步动态随机存取存储器的控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100369016C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101216751B (zh) * | 2008-01-21 | 2010-07-14 | 戴葵 | 基于分布存储结构的具有数据处理能力的动态随机存储器装置 |
CN101494090B (zh) * | 2008-01-21 | 2014-03-19 | 南亚科技股份有限公司 | 存储器存取控制方法 |
CN101539981B (zh) * | 2009-05-06 | 2011-07-20 | 成都市华为赛门铁克科技有限公司 | 一种数据安全控制方法、***及传感器节点 |
CN105094103A (zh) * | 2015-06-09 | 2015-11-25 | 中国电子科技集团公司第三十六研究所 | 一种应用于空间飞行器的dsp代码固化存储电路 |
CN111124433B (zh) * | 2018-10-31 | 2024-04-02 | 华北电力大学扬中智能电气研究中心 | 程序烧写设备、***及方法 |
CN110022101B (zh) * | 2019-04-04 | 2024-04-19 | 苏州国科视清医疗科技有限公司 | 基于fsmc的多步进电机驱动方法、电路及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1243285A (zh) * | 1998-07-24 | 2000-02-02 | 国际商业机器公司 | 具有低能耗方式的高带宽动态随机存取存储器 |
KR20030051966A (ko) * | 2001-12-20 | 2003-06-26 | 엘지전자 주식회사 | Dsl연결을 위한 사설교환기의 국선보드 |
US20040160853A1 (en) * | 2003-02-17 | 2004-08-19 | Renesas Technology Corp. | Semiconductor memory device inputting/outputting data and parity data in burst operation |
CN1524230A (zh) * | 2001-06-22 | 2004-08-25 | 英特尔公司 | 利用地址调用定序来控制有源存储器总线***设备的方法与设备 |
-
2005
- 2005-07-22 CN CNB2005100870161A patent/CN100369016C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1243285A (zh) * | 1998-07-24 | 2000-02-02 | 国际商业机器公司 | 具有低能耗方式的高带宽动态随机存取存储器 |
CN1524230A (zh) * | 2001-06-22 | 2004-08-25 | 英特尔公司 | 利用地址调用定序来控制有源存储器总线***设备的方法与设备 |
KR20030051966A (ko) * | 2001-12-20 | 2003-06-26 | 엘지전자 주식회사 | Dsl연결을 위한 사설교환기의 국선보드 |
US20040160853A1 (en) * | 2003-02-17 | 2004-08-19 | Renesas Technology Corp. | Semiconductor memory device inputting/outputting data and parity data in burst operation |
Also Published As
Publication number | Publication date |
---|---|
CN1900918A (zh) | 2007-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6330636B1 (en) | Double data rate synchronous dynamic random access memory device incorporating a static RAM cache per memory bank | |
US10002659B2 (en) | System and method for decoding commands based on command signals and operating state | |
EP1981033B1 (en) | Apparatus and method for pipelined memory operations with write mask | |
CN100369016C (zh) | 一种同步动态随机存取存储器的控制器 | |
JP2005222581A (ja) | 半導体記憶装置 | |
JPH09198875A (ja) | 同期型半導体記憶装置 | |
CN101140792A (zh) | 同步半导体存储器件 | |
JP2004171609A (ja) | 半導体記憶装置 | |
JP3689229B2 (ja) | 半導体メモリ装置のカラム選択ラインイネーブル回路 | |
US6763443B1 (en) | System and method for using a synchronous memory device with an asynchronous memory controller | |
CN101425330B (zh) | 一种同步动态存储器的刷新控制模块 | |
US7492661B2 (en) | Command generating circuit and semiconductor memory device having the same | |
Lee et al. | A 1.6-Gb/s/pin double data rate SDRAM with wave-pipelined CAS latency control | |
Sreehari et al. | AHB DDR SDRAM enhanced memory controller | |
JP2012113819A (ja) | 自動プリチャージ制御回路と半導体メモリ装置とプリチャージング動作制御方法 | |
JP5048102B2 (ja) | 半導体記憶装置 | |
Li et al. | Design and Verification of DDR3 Controller Based on FPGA | |
Latti | Design and implementation of DDR SDRAM controller for embedded processors | |
JP5058295B2 (ja) | 半導体記憶装置 | |
JP5328957B2 (ja) | 半導体記憶装置 | |
Anup et al. | A Low Power DDR SDRAM Controller Design | |
Naresh et al. | Implementation of DDR SDRAM Memory Controller for embedded SOC | |
Venna et al. | Design and implementation of High Speed DDR SDRAM Controller on FPGA | |
JADHAV et al. | Design and Implementation of a DDR SDRAM Controller for Embedded System | |
NAYAK | SDR Synchronous Dynamic Random Access Memory Controller Using Adaptive Bank Management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080213 Termination date: 20160722 |
|
CF01 | Termination of patent right due to non-payment of annual fee |