CN103226529B - 基于Nandflash的双端口存储器电路 - Google Patents
基于Nandflash的双端口存储器电路 Download PDFInfo
- Publication number
- CN103226529B CN103226529B CN201210021220.3A CN201210021220A CN103226529B CN 103226529 B CN103226529 B CN 103226529B CN 201210021220 A CN201210021220 A CN 201210021220A CN 103226529 B CN103226529 B CN 103226529B
- Authority
- CN
- China
- Prior art keywords
- port
- nandflash
- data
- instruction
- flash
- 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
Links
- 238000003860 storage Methods 0.000 claims abstract description 25
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000000151 deposition Methods 0.000 claims description 4
- 238000007689 inspection Methods 0.000 claims description 2
- 238000003491 array Methods 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Landscapes
- Bus Control (AREA)
Abstract
本发明公开了一种基于Nandflash的双端口存储器电路,包括:第一端口指令队列模块,第二端口指令队列模块,第一端口DMA控制器,第二端口DMA控制器、Nandflash存储阵列;指令执行控制逻辑模块,用于对所述第一端口指令队列模块和第二端口指令队列模块的操作进行仲裁和控制,对第一端口DMA控制器和第二端口DMA控制器的操作进行仲裁和控制;Nandflash接口控制器,用于控制和Nandflash存储阵列之间的数据传输,并对所述指令执行控制逻辑模块的控制逻辑进行控制。本发明通过对Nandflash接口的时分复用,使Nandflash存储器具有了两个端口。存储系统可以同时对两个端口进行读写操作,拓展了Nandflash存储器的适用范围。
Description
技术领域
本发明涉及一种Nandflash(与非型闪存)存储器电路,特别是涉及一种基于Nandflash的双端口存储器电路。
背景技术
Nandflash在最近几年里得到了突飞猛进的发展,由SLC(1位/单元)技术发展到MLC(多位/单元)技术,同时Nandflash的生产工艺也不断进步。随着技术的发展,Nandflash容量不断增大,单位容量的成本也大幅降低,应用Nandflash的领域也越来越多。
随着Nandflash技术的发展,Nandflash的应用越来越复杂,Nandflash单端口的特点,增加了其在复杂环境中使用的局限性。
发明内容
本发明要解决的技术问题是提供一种基于Nandflash的双端口存储器电路,存储系统可以同时对两个端口进行读写操作,拓展Nandflash存储器的适用范围。
为解决上述技术问题,本发明的基于Nandflash的双端口存储器电路,包括:
第一端口指令队列模块,用于存放第一端口控制逻辑模块发送的对Nandflash存储阵列模块的操作指令,并保存指令的执行状态;
第二端口指令队列模块,用于存放第二端口控制逻辑模块发送的对Nandflash存储阵列模块的操作指令,并保存指令的执行状态;
第一端口DMA(Direct Memory Access,直接寄存器访问)控制器,用于控制第一端口数据缓存区和Nandflash存储阵列模块之间的数据传输;
第二端口DMA控制器,用于控制第二端口数据缓存区和Nandflash存储阵列模块之间的数据传输;
指令执行控制逻辑模块,用于对所述第一端口指令队列模块和第二端口指令队列模块的操作进行仲裁和控制;对第一端口DMA控制器和第二端口DMA控制器的操作进行仲裁和控制;
Nandflash接口控制器,用于控制和所述Nandflash存储阵列之间的数据传输,并对所述指令执行控制逻辑模块的控制逻辑进行控制;
Nandflash存储阵列,由多片Nandflash构成,共享同一数据总线,用于存放数据。
所述第一端口控制逻辑模块和第二端口控制逻辑模块可以相互独立的发出操作请求,将操作请求写入相应的指令队列模块。
所述指令执行控制逻辑模块检查要访问的Nandflash的状态,若为空闲则将第一端口指令队列模块或者第二端口指令队列模块里的指令发送给Nandflash。若第一端口指令队列模块的指令和第二端口指令队列模块的指令同时命中一片Nandflash,则所述指令执行控制逻辑模块根据“端口交替”的原则选择其中一条指令发送给Nandflash。
所述指令执行控制逻辑模块将指令发送给Nandflash,等Nandflash准备好接收数据或者发送数据以后,启动第一端口DMA控制器或者第二端口DMA控制器向Nandflash写入数据或者从Nandflash读出数据。若第一端口DMA控制器和第二端口DMA控制器同时有数据要传送,则所述指令执行控制逻辑模块按照“端口交替”的原则,选择其中一个端口DMA控制器进行数据传输。
所述第一端口控制逻辑模块和第二端口控制逻辑模块可以同时向Nandflash发送读取指令、写入指令或者擦除指令。
所述指令执行控制逻辑模块控制Nandflash操作指令的具体执行。
所述Nandflash接口控制器和Nandflash存储阵列模块的接口由多个片选信号(CE#)、多个就绪/忙信号(R/B#)、一组控制信号、一组数据信号组成。
本发明通过对Nandflash接口的时分复用,使Nandflash存储阵列模块具有了两个端口;Nandflash存储阵列模块可以同时对两个端口进行读写操作,拓展了Nandflash存储器的适用范围。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
附图是基于Nandflash的双端口存储器电路结构框图。
具体实施方式
参见附图所示,所述基于Nandflash的双端口存储器电路,包括:第一端口指令队列模块、第二端口指令队列模块、第一端口DMA控制器、第二端口DMA控制器、指令执行控制逻辑模块、Nandflash接口控制电路和Nandflash存储阵列模块。
Nandflash数据总线使用的“端口交替”原则是:在第一端口和第二端口都要使用Nandflash数据总线时,则第一端口和第二端口交替使用Nandflash数据总线。
初始状态下,第一端口优先使用Nandflash数据总线。若上一次第一端口使用Nandflash数据总线,则这一次第二端口使用Nandflash数据总线;若上一次第二端口使用Nandflash数据总线,则这一次第一端口使用Nandflash数据总线。
第一端口指令队列模块存放的Nandflash操作指令的内容如表1所示,每个Nandflash操作指令的内容共占用16个字节。
第二端口指令队列存放的Nandflash操作指令的内容参见表2,每个Nandflash指令的内容共占用16个字节。
Nandflash指令队列状态寄存器
每个Nandflash操作指令都对应一个状态寄存器,指示指令队列的状态。当系统将一条Nandflash操作指令写入指令队列时,就将对应的状态寄存器标志位置1;当所述指令执行控制逻辑模块执行完一条Nandflash操作指令之后,将对应的状态寄存器标志位置0。系统在将Nandflash操作指令写入指令队列前,需要检查有没有标志位为0的状态寄存器,若有则选择一对应位置写入,若无则需等待任一状态寄存器标志位变为0。
第一端口指令队列模块和第二端口指令队列模块都有相对应的一组状态寄存器。
指令执行控制逻辑
第一端口控制逻辑模块将对Nandflash的读、写或者擦除的指令写入第一端口指令队列模块后,将对应的状态寄存器标志位置1。第二端口控制逻辑模块将对Nandflash的读、写或者擦除的指令写入第二端口指令队列模块后,将对应的状态寄存器标志位置1。
指令执行控制逻辑模块检测到任一指令队列的状态寄存器由0变1后,从Nandflash指令队列中读取出Nandflash操作指令的信息。
指令执行控制逻辑模块根据Nandflash操作指令的行地址确定要访问的Nandflash。首先检查要访问的Nandflash的状态,若为空闲则将Nandflash操作指令发送给Nandflash。若两个端口同时有指令需要发送,则根据“端口交替”的原则,先发送一端口的指令,再发送另一端口的指令。
指令执行控制逻辑模块将指令发送给Nandflash后,需等Nandflash准备好接收数据或者发送数据以后,配置第一端口DMA控制器或第二端口DMA控制器向Nandflash写入数据或者从Nandflash读出数据。若两个端口DMA控制器同时有数据需要发送,则根据“端口交替”的原则,先发送一端口DMA控制器的数据,再发送另一端口DMA控制器的数据。
以上通过具体实施方式对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本发明的保护范围。
Claims (7)
1.一种基于与非型闪存Nandflash的双端口存储器电路,其特征在于,包括:
第一端口指令队列模块,用于存放第一端口控制逻辑模块发送的对与非型闪存Nandflash存储阵列模块的操作指令,并保存指令的执行状态;
第二端口指令队列模块,用于存放第二端口控制逻辑模块发送的对与非型闪存Nandflash存储阵列模块的操作指令,并保存指令的执行状态;
第一端口直接寄存器访问DMA控制器,用于控制第一端口数据缓存区和与非型闪存Nandflash存储阵列模块之间的数据传输;
第二端口直接寄存器访问DMA控制器,用于控制第二端口数据缓存区和与非型闪存Nandflash存储阵列模块之间的数据传输;
指令执行控制逻辑模块,用于对所述第一端口指令队列模块和第二端口指令队列模块的操作进行仲裁和控制;对第一端口直接寄存器访问DMA控制器和第二端口直接寄存器访问DMA控制器的操作进行仲裁和控制;
与非型闪存Nandflash接口控制器,用于控制和所述与非型闪存Nandflash存储阵列模块之间的数据传输,并对所述指令执行控制逻辑模块的控制逻辑进行控制;
所述与非型闪存Nandflash存储阵列模块,由多片与非型闪存Nandflash构成,共享同一数据总线,用于存放数据。
2.如权利要求1所述的双端口存储器电路,其特征在于:所述第一端口控制逻辑模块和第二端口控制逻辑模块相互独立的发出操作请求,将操作请求写入相应的指令队列模块。
3.如权利要求1所述的双端口存储器电路,其特征在于:所述指令执行控制逻辑模块检查要访问的与非型闪存Nandflash的状态,若为空闲则将第一端口指令队列模块或者第二端口指令队列模块里的指令发送给与非型闪存Nandflash;若第一端口指令队列模块的指令和第二端口指令队列模块的指令同时命中一片与非型闪存Nandflash,则所述指令执行控制逻辑模块根据“端口交替”的原则选择其中一条指令发送给与非型闪存Nandflash;
所述“端口交替”的原则是:在第一端口和第二端口都要使用Nandflash数据总线时,则第一端口和第二端口交替使用Nandflash数据总线;
初始状态下,第一端口优先使用Nandflash数据总线;若上一次第一端口使用Nandflash数据总线,则这一次第二端口使用Nandflash数据总线;若上一次第二端口使用Nandflash数据总线,则这一次第一端口使用Nandflash数据总线。
4.如权利要求1所述的双端口存储器电路,其特征在于:所述指令执行控制逻辑模块将指令发送给与非型闪存Nandflash,等与非型闪存Nandflash准备好接收数据或者发送数据以后,启动第一端口直接寄存器访问DMA控制器或者第二端口直接寄存器访问DMA控制器向与非型闪存Nandflash写入数据或者从与非型闪存Nandflash读出数据;若第一端口直接寄存器访问DMA控制器和第二端口直接寄存器访问DMA控制器同时有数据要传送,则所述指令执行控制逻辑模块按照“端口交替”的原则,选择其中一个端口直接寄存器访问DMA控制器进行数据传输;
所述“端口交替”的原则是:在第一端口和第二端口都要使用Nandflash数据总线时,则第一端口和第二端口交替使用Nandflash数据总线;
初始状态下,第一端口优先使用Nandflash数据总线;若上一次第一端口使用Nandflash数据总线,则这一次第二端口使用Nandflash数据总线;若上一次第二端口使用Nandflash数据总线,则这一次第一端口使用Nandflash数据总线。
5.如权利要求1所述的双端口存储器电路,其特征在于:所述第一端口控制逻辑模块和第二端口控制逻辑模块能够同时向所述与非型闪存Nandflash发送读取指令、写入指令或者擦除指令。
6.如权利要求1所述的双端口存储器电路,其特征在于:所述指令执行控制逻辑模块控制所述与非型闪存Nandflash操作指令的具体执行。
7.如权利要求1所述的双端口存储器电路,其特征在于:所述与非型闪存Nandflash接口控制器和与非型闪存Nandflash存储阵列模块的接口由多个片选信号、多个就绪/忙信号、一组控制信号和一组数据信号组成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210021220.3A CN103226529B (zh) | 2012-01-31 | 2012-01-31 | 基于Nandflash的双端口存储器电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210021220.3A CN103226529B (zh) | 2012-01-31 | 2012-01-31 | 基于Nandflash的双端口存储器电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103226529A CN103226529A (zh) | 2013-07-31 |
CN103226529B true CN103226529B (zh) | 2017-03-15 |
Family
ID=48836985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210021220.3A Active CN103226529B (zh) | 2012-01-31 | 2012-01-31 | 基于Nandflash的双端口存储器电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103226529B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105159852B (zh) * | 2015-08-18 | 2018-05-15 | 珠海市一微半导体有限公司 | 双接口nfc标签电路及其数据传输方法 |
CN109614046A (zh) * | 2018-12-09 | 2019-04-12 | 江苏华存电子科技有限公司 | 一种用以连续快速产生闪存接口讯号序列的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0293860A2 (en) * | 1987-06-03 | 1988-12-07 | Bull HN Information Systems Inc. | Peripheral controller and adapter interface |
CN101303677A (zh) * | 2008-05-04 | 2008-11-12 | 华为技术有限公司 | 一种直接存储器访问控制方法、系统及控制器 |
CN101452429A (zh) * | 2008-11-19 | 2009-06-10 | 北京红旗胜利科技发展有限责任公司 | 一种cpu及一种cpu内部与外部数据传输的方法 |
CN101937409A (zh) * | 2010-09-02 | 2011-01-05 | 中国电子科技集团公司第三十八研究所 | 分时复用存储器直接访问控制器 |
-
2012
- 2012-01-31 CN CN201210021220.3A patent/CN103226529B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0293860A2 (en) * | 1987-06-03 | 1988-12-07 | Bull HN Information Systems Inc. | Peripheral controller and adapter interface |
CN101303677A (zh) * | 2008-05-04 | 2008-11-12 | 华为技术有限公司 | 一种直接存储器访问控制方法、系统及控制器 |
CN101452429A (zh) * | 2008-11-19 | 2009-06-10 | 北京红旗胜利科技发展有限责任公司 | 一种cpu及一种cpu内部与外部数据传输的方法 |
CN101937409A (zh) * | 2010-09-02 | 2011-01-05 | 中国电子科技集团公司第三十八研究所 | 分时复用存储器直接访问控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN103226529A (zh) | 2013-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103650054B (zh) | 包含存储器系统控制器的设备和相关方法 | |
US8949492B2 (en) | Apparatus including buffer allocation management and related methods | |
CN102541678B (zh) | 多通道与非型快闪并行存储控制器 | |
US9747029B2 (en) | Apparatus including memory management control circuitry and related methods for allocation of a write block cluster | |
US7970978B2 (en) | SSD with SATA and USB interfaces | |
CN103635969B (zh) | 包含存储器系统控制器的设备和相关方法 | |
US9514838B2 (en) | Apparatus including memory system controllers and related methods for memory management using block tables | |
US8521945B2 (en) | Portable data storage using SLC and MLC flash memory | |
CN106104499B (zh) | 存储器设备及用于操作高速缓冲存储器的方法 | |
KR20130021704A (ko) | 멀티포트 메모리 소자, 이를 포함하는 반도체 장치 및 시스템 | |
CN103226529B (zh) | 基于Nandflash的双端口存储器电路 | |
CN102236625A (zh) | 一种可同时进行读写操作的多通道NANDflash控制器 | |
CN107797756A (zh) | 固态硬盘系统的优先写入方法以及使用该方法的装置 | |
CN115114215B (zh) | 高速外围组件互连接口装置及其操作方法 |
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 |