CN111858141B - 系统芯片存储控制装置和系统芯片 - Google Patents

系统芯片存储控制装置和系统芯片 Download PDF

Info

Publication number
CN111858141B
CN111858141B CN202010722164.0A CN202010722164A CN111858141B CN 111858141 B CN111858141 B CN 111858141B CN 202010722164 A CN202010722164 A CN 202010722164A CN 111858141 B CN111858141 B CN 111858141B
Authority
CN
China
Prior art keywords
data
memory module
read
full
clock cycle
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
CN202010722164.0A
Other languages
English (en)
Other versions
CN111858141A (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.)
Zhejiang University ZJU
CSG Electric Power Research Institute
Southern Power Grid Digital Grid Research Institute Co Ltd
Original Assignee
Zhejiang University ZJU
CSG Electric Power Research Institute
Southern Power Grid Digital Grid Research Institute Co Ltd
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 Zhejiang University ZJU, CSG Electric Power Research Institute, Southern Power Grid Digital Grid Research Institute Co Ltd filed Critical Zhejiang University ZJU
Priority to CN202010722164.0A priority Critical patent/CN111858141B/zh
Publication of CN111858141A publication Critical patent/CN111858141A/zh
Application granted granted Critical
Publication of CN111858141B publication Critical patent/CN111858141B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本申请涉及一种系统芯片存储控制装置和系统芯片,系统芯片存储控制装置包括数据寄存器、解码纠错单元和流水线控制单元。所述解码纠错单元与所述数据寄存器信号连接,用于对所述数据寄存器寄存的数据进行解码纠错,得到第一目标读数据,并将所述第一目标读数据返回至所述数据寄存器。所述流水线控制单元与所述数据寄存器的所述解码纠错单元信号连接。本申请提供的系统芯片存储控制装置可以解决所述微处理器对所述内存模块进行读操作时的时序混乱的问题。

Description

系统芯片存储控制装置和系统芯片
技术领域
本申请涉及存储技术领域,特别是涉及一种系统芯片存储控制装置和系统芯片。
背景技术
系统芯片也称片上系统,是一个将计算机或其他电子系统集成到单一芯片的集成电路,即,在单一芯片上,就能完成一个电子系统的功能。AHB(AdvancedHigh-performanceBus,高级高性能总线),主要是针对高效率、高频宽及快速系统模块所设计的总线。AHB可以连接微处理器和系统芯片上的内存模块等。ECC(Error Correcting Code,错误检查和纠正),是一种能够实现错误检查和纠正的技术,可以检查读取或传输的数据是否存在错误,并在发现错误后立即对其进行纠正。微处理器对系统芯片的内存模块的读操作和写操作进行控制时,若引入ECC技术,会导致读操作和写操作的时序混乱。传统技术中,缺少针对这种时序混乱问题的解决方案。
发明内容
基于此,有必要针对上述技术问题,提供一种系统芯片存储的控制装置和系统芯片。
一方面,本申请一个实施例提供一种系统芯片存储控制装置,包括:
数据寄存器;
解码纠错单元,与所述数据寄存器信号连接,用于对所述数据寄存器寄存的数据进行解码纠错,得到第一目标读数据,并将所述第一目标读数据返回至所述数据寄存器;
流水线控制单元,与所述数据寄存器和所述解码纠错单元信号连接,用于接收微处理器发送的控制信号,根据所述控制信号获取第一控制信息和第一地址信息,并在第一读时钟周期向内存模块发送第一控制信息和第一地址信息,在第二读时钟周期接收所述内存模块返回的第一初始读数据,将所述第一初始读数据寄存于所述数据寄存器,在第三读时钟周期,控制所述解码纠错单元工作,并将所述第一目标读数据返回至所述微处理器,其中,所述第一初始读数据是所述内存模块根据所述第一控制信息和所述第一地址信息获取的数据。
在其中一个实施例中,还包括:
地址预测单元,与所述流水线控制单元信号连接,用于在第二读时钟周期根据地址预测控制信号进行地址预测,得到预测地址信息,并将所述预测地址信息发送至所述内存模块,其中,所述地址预测控制信号由所述流水线控制单元生成。
在其中一个实施例中,所述流水线控制单元包括:
流水线控制器,与所述数据寄存器和所述解码纠错单元信号连接;
时钟控制器,与所述流水线控制器信号连接,用于控制所述流水线控制器在第一读时钟周期,向所述内存模块发送所述第一控制信息和第一地址信息;在第二读时钟周期,接收所述内存模块返回的所述第一初始读数据;在第三读时钟周期,控制所述解码纠错单元工作,并将所述第一目标读数据返回至所述微处理器。
在其中一个实施例中,还包括:
控制信息寄存器,与所述流水线控制单元信号连接,所述流水线控制单元还用于根据所述控制信号,获取第二控制信息和第二地址信息,并根据所述第二控制信息和所述第二地址信息从所述内存模块中读取第二初始读数据,同时将所述第二控制信息寄存于所述控制信息寄存器;接收所述微处理器发送的非全字写数据,将所述第二初始读数据和所述非全字写数据寄存于所述数据寄存器;在第三写时钟周期,控制所述解码纠错单元根据所述第二初始读数据和所述非全字写数据,确定目标非全字写数据,并将所述目标非全字写数据发送至所述内存模块。
在其中一个实施例中,所述流水线控制单元还用于在第一写时钟周期,根据所述第二控制信息确定读请求信息,并将所述读请求信息和所述第二地址信息发送至所述内存模块,且接收所述内存模块在第二写时钟周期发送的第二初始读数据,其中,所述第二初始读数据是所述内存模块根据所述第二地址信息和所述读请求信息获取的数据。
在其中一个实施例中,所述流水线控制单元还用于控制所述解码纠错单元对所述第二初始读数据进行解码纠错,得到解码数据;根据所述非全字写数据的地址标识,将所述非全字写数据覆盖至所述解码数据,得到初始非全字写数据;对所述初始非全字写数据进行编码,得到所述目标非全字写数据。
在其中一个实施例中,所述流水线控制单元还用于根据所述控制信号,获取第三控制信息和第三地址信息,并在第四写时钟周期将所述第三地址信息发送至所述内存模块,将所述第三控制信息寄存于所述控制信息寄存器,在第五写时钟周期,接收所述微处理器发送的全字写数据,将所述全字写数据输入所述解码纠错单元,得到目标全字写数据,并将所述目标全字写数据和所述第三控制信息发送至所述内存模块。
在其中一个实施例中,还包括:
高级高性能总线从机,与所述流水线控制单元信号连接,用于将所述微处理器通过高级高性能总线传输的信号转换为所述控制信号。
另一方面,本申请一个实施例提供一种系统芯片,包括:
如上所述的系统芯片存储控制装置;
微处理器,与所述流水线控制单元信号连接;
内存模块,与所述流水线控制单元信号连接。
在其中一个实施例中,所述系统芯片存储控制装置还包括高级高性能总线从机,信号连接于所述微处理器和所述流水线控制单元之间,所述微处理器与所述高级高性能总线从机通过高级高性能总线连接。
本申请实施例提供一种系统芯片存储的控制装置和系统芯片。所述系统芯片存储控制装置包括数据寄存器、解码纠错单元和流水线控制单元。所述解码纠错单元与所述数据寄存器信号连接,所述流水线控制单元与所述数据寄存器和所述解码纠错单元信号连接。本申请提供的系统芯片存储控制装置通过流水线控制单元可以使得微处理器对内存模块进行读操作时,在第二读时钟周期接收到所述第一初始读数据后,将该数据寄存于所述数据寄存器,在第三读时钟周期,再利用所述解码纠错单元对所述第一初始读数据进行解码纠错,最终得到返回至所述微处理器的所述第一目标读数据。这样可以避免在所述第二读时钟周期对所述第一初始读数据进行解码纠错时,跨越至第三读时钟周期,从而能够解决所述微处理器对所述内存模块进行读操作时存在的时序混乱的问题。
附图说明
为了更清楚地说明本申请实施例或传统技术中的技术方案,下面将对实施例或传统技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域不同技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一个实施例提供的系统芯片的结构示意图;
图2为本申请一个实施例提供的读操作示意图;
图3为本申请一个实施例提供的系统芯片的结构示意图;
图4为本申请一个实施例提供的系统芯片存储控制装置的结构示意图;
图5为本申请一个实施例提供的多次读操作的示意图;
图6为本申请一个实施例提供的系统芯片存储控制装置的结构示意图;
图7为本申请一个实施例提供的多次读操作的示意图;
图8为本申请一个实施例提供的系统芯片存储控制装置的结构示意图;
图9为本申请一个实施例提供的多次非全字写操作的示意图;
图10为本申请一个实施例提供的系统存储控制装置的结构示意图。
附图标记说明:
10、系统芯片存储控制装置;
20、微处理器;
30、内存模块;
100、数据寄存器;
200、解码纠错单元;
300、流水线控制单元;
310、流水线控制器;
320、时钟控制器;
400、地址预测单元;
500、控制信息寄存器;
600、高级高性能总线从机。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似改进,因此本申请不受下面公开的具体实施例的限制。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。在本申请的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
在本申请中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
请参见图1,本申请提供的系统芯片存储控制装置10可以用于对系统芯片的存储进行控制,所述系统芯片中包括微处理器20和内存模块30。所述微处理器20是由一片或者几片大规模的集成电路组成的中央处理器。所述微处理器20能够完成取指令、执行指令,以及与外界存储器交换信息等操作,所述微处理器20可以是各种有AHB(Advanced High-performance Bus,高级高性能总线)接口的处理器。所述内存模块30可以是各种各样的存储器,例如:静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)和增强型SDRAM(ESDRAM)等。所述内存模块30可以设置在所述系统芯片上,也可以设置在所述系统芯片外,与所述系统芯片连接。所述系统芯片存储控制装置10可以设置在所述系统芯片上,也可以设置在所述系统芯片外,与所述微处理器20和所述内存模块30信号连接。所述系统芯片存储控制装置10用于在微处理器20对所述内存模块30进行读操作、全字写操作或者非全字写操作时,对微处理器20和内存模块30发送的信息和数据等进行处理。利用微处理器20对内存模块30进行读操作时,如图2和图3所示,在时钟信号的地址周期发送地址信息,在时钟信号的数据周期读取数据。在引入ECC(Error Correcting Code,错误检查和纠正)技术后,需要在时钟信号的数据周期内对读取的数据进行解码纠错。通常所述内存模块30会分bank进行组织,所述内存模块30在返回数据时,会经过bank模块和仲裁器等,路径较长,若在一个数据时钟周期快要结束时才接收到数据,则在对数据进行解码纠错的任务在这个数据时钟周期不能完成,需要在下一个数据时钟周期进行。
请参见图4,本实施例涉及微处理器20对内存模块30进行读操作时,系统芯片存储控制装置10包括数据寄存器100、解码纠错单元200和流水线控制单元300。
所述解码纠错单元200与所述数据寄存器100信号连接,用于对所述数据寄存器100寄存的数据进行解码纠错,得到第一目标读数据,并将所述第一目标读数据返回至所述数据寄存器100。所述流水线控制单元300与所述数据寄存器100和所述解码纠错单元200信号连接,用于接收微处理器20发送的控制信号,根据所述控制信号获取第一控制信息和第一地址信息,并在第一读时钟周期向所述内存模块30发送第一控制信息和第一地址信息,在第二读时钟周期接收所述内存模块30返回的第一初始读数据,将所述第一初始读数据寄存于所述数据寄存器100,在第三读时钟周期,控制所述解码纠错单元200工作,并将所述第一目标读数据返回至所述微处理器20,其中,所述第一初始读数据是所述内存模块30根据所述第一控制信息和所述第一地址信息获取的数据。
所述第一读时钟周期、所述第二读时钟周期和所述第三读时钟周期为所述微处理器20对所述内存模块30进行读操作时的时钟信号内的不同周期。在一个具体的实施例中,所述第一读时钟周期、所述第二读时钟周期和所述第三读时钟周期可以是时钟信号依次相邻的三个时钟周期。在本实施例中,所述流水线控制单元300可以在第一读时钟周期内的时钟信号上升沿时刻发送所述第一控制信息和所述第一地址信息,也可以在第一读时钟周期内的任意时刻发送所述第一控制信息和第一地址信息。同样的,所述流水线控制单元300可以在第三读时钟周期内的时钟信号上升沿时刻控制所述解码纠错单元200工作,并将所述第一目标读数据返回至所述微处理器20,也可以在第三读时钟周期内的任意时刻控制所述解码纠错单元200工作,并将所述第一目标读数据返回至所述微处理器20。
所述流水线控制单元300根据所述微处理器20发送的控制信号,获取所述第一地址信息和第一控制信息,并在第一读时钟周期将所述第一地址信息和所述第一控制信息发送至所述内存模块30。所述第一地址信息是指所述微处理器20需要读取的所述内存模块30中的数据的地址。所述第一控制信号可以包括读请求信息和使能信号等。所述内存模块30根据所述第一地址信息和所述第一控制信息读取所需的数据,得到第一初始读数据。所述流水线控制单元300在第二读时钟周期接收所述第一初始读数据,并将所述第一初始读数据寄存在所述数据寄存器100中。所述流水线控制单元300在第三读时钟周期将所述数据寄存器100中的所述第一初始读数据传输至所述解码纠错单元200,控制所述解码纠错单元200对所述第一初始读数据进行解码纠错,即,先对所述第一初始读数据进行解码;若解码后的数据存在错误,则对解码后的数据进行纠错,得到第一目标读数据,并控制所述解码纠错单元200将所述第一目标读数据通过所述数据寄存器100返回至所述微处理器20。在一个具体的实施例中,所述解码纠错单元200采用ECC(Error Correcting Code,错误检查和纠正)技术。在本实施例中,通过对所述第一初始读数据进行解码纠错处理,可以提高所述微处理器20对所述内存模块30进行读操作的准确性。
具体的,所述流水线控制单元300对于所述微处理器20对所述内存模块30进行多次读操作时的数据和信息控制过程如图5所示,图中clk为是时钟信号,clk处于上升沿有效,address为地址信息,在hready信号拉高后,所述内存模块30将所述第一目标读数据写入总线,data为所述微处理器20得到的所述第一目标读数据。A1、A2、A3和A4为发送的地址信息,D1、D2、D3和D4为所述微处理器20得到的读数据。
本实施例提供的系统芯片存储控制装置10包括数据寄存器100、解码纠错单元200和流水线控制单元300。所述解码纠错单元200与所述数据寄存器100信号连接,所述流水线控制单元300与所述数据寄存器100和所述解码纠错单元200信号连接。本申请提供的系统芯片存储控制装置10通过流水线控制单元300可以使得微处理器20对内存模块30进行读操作时,在第二读时钟周期接收到所述第一初始读数据后,将该数据寄存于所述数据寄存器100;在第三读时钟周期,再利用所述解码纠错单元200对所述第一初始读数据进行解码纠错,最终得到返回至所述微处理器20的所述第一目标读数据。这样可以避免在所述第二读时钟周期对所述第一初始读数据进行纠错编码时,跨越至第三读时钟周期,从而能够解决所述微处理器20对所述内存模块30进行读操作时存在的时序混乱的问题,进而能够提高所述微处理器20对所述内存模块30进行读操作的准确性和可靠性。
请参见图6,在一个实施例中,所述系统芯片存储控制装置10还包括地址预测单元400。所述地址预测单元400与流水线控制单元300信号连接,用于在第二读时钟周期根据地址预测控制信号进行地址预测,得到预测地址信息,并将所述预测地址信息发送至所述内存模块30,其中,所述地址预测控制信号为所述流水线控制单元300生成的。
在进行多次读操作时,在第一次读操作的第二时钟周期,所述流水线控制单元300会生成所述地址预测控制信号,所述地址预测单元400根据所述地址预测控制信号和所述第一地址信息,可以得到所述预测地址信息。所述预测地址信息为第二次读操作的地址信息。在一个具体的实施例中,在AHB的burst模式下,地址是固定递增的,则所述地址预测单元400将所述第一地址信息加一,就可以得到所述预测地址信息。所述地址预测单元400在第二读时钟周期在得到所述预测地址信息后,直接将所述预测地址信息发送至所述内存模块30。此时所述第二读时钟周期作为了下一次读操作的第一个读时钟周期,这样增加了所述微处理器20对所述内存模块30进行读操作时的数据吞吐能力。所述流水线控制单元300对于所述微处理器20对所述内存模块30进行多次读操作时的数据和信息控制过程如图7所示,图中NONSEQ表示所述微处理器20传输的所述第一地址信息和控制信息与上一次传输的地址信息无关,SEQ表示所述微处理传输的地址信息和上一次传输的地址信息有关,hready信号在第一次读操作的所述第二读时钟周期后一直处于拉高的状态。比较图7和图5可知,进行4次读操作,时钟周期由9个时钟周期减少到6个时钟周期,数据的吞吐量可以增加1.5倍。同理,在INCR16的传输模式下,数据的吞吐量可以增加1.83倍,在INCR8的传输模式下,数据的吞吐量可以增加1.7倍。
请参见图8,在一个实施例中,所述流水线控制单元300包括流水线控制器310和时钟控制器320。所述流水线控制器310与所述数据寄存器100和所述解码纠错单元200信号连接。所述时钟控制器320与所述流水线控制器310信号连接,用于控制所述流水线控制器310在第一读时钟周期,向所述内存模块30发送所述第一控制信息和第一地址信息;在第二读时钟周期,接收所述内存模块30返回的所述第一初始读数据;在第三读时钟周期,控制所述解码纠错单元200工作,并将所述第一目标读数据返回至所述微处理器20。在本实施例中,所述时钟控制器320用于控制所述第一读时钟周期、所述第二读时钟周期和所述第三读时钟周期的有效性,只要当时钟信号为上升沿时,时钟信号才有效。在时钟信号的第一个上升沿和第二个上升沿之间为第一读时钟周期,时钟信号的第二个上升沿和第三个上升沿之间为第二读时钟周期,时钟信号的第三个上升沿和第四个上升沿之间为第三读时钟周期。所述时钟控制器320在控制时钟信号的第一个上升沿来临时,所述流水线控制器310才可以开始向所述内存模块30发送第一控制信息和第一地址信息。所述时钟控制器320在控制时钟信号的第二个上升沿来临时,所述流水线控制器310才可以接收所述内存模块30返回的所述第一初始读数据。所述时钟控制器320在控制时钟信号的第三个上升沿来临时,所述流水线控制310才可以控制所述解码纠错单元200工作,并将所述第一目标读数据返回至所述微处理器20。在本实施例中,通过所述时钟控制器320对时钟信号的控制,使得所述流水线控制器310在相应的读时钟周期执行相应的任务,可以提高所述微处理器20对所述内存模块30进行读操作的效率。
请继续参见图6,本实施例涉及微处理器20对内存模块30进行非全字写操作时,所述系统芯片存储控制装置10还包括控制信息寄存器500。所述控制信息寄存器500与所述流水线控制单元300信号连接,所述流水线控制单元300还用于根据所述控制信号,获取第二控制信息和第二地址信息,并根据所述第二控制信息和所述第二地址信息从所述内存模块30中读取第二初始读数据,同时将所述第二控制信息寄存于所述控制信息寄存器500;接收所述微处理器20发送的非全字写数据,将所述第二初始读数据和所述非全字写数据寄存于所述数据寄存器100;在第三写时钟周期,根据所述第二初始读数据和所述非全字写数据,确定目标非全字写数据,并将所述目标非全字写数据发送至所述内存模块30。
对第一写时钟周期、第二写时钟周期和第三写时钟周期的具体描述可以参考上述对第一读时钟周期、第二读时钟周期和第三读时钟周期的描述,在此不再赘述。
所述微处理器20对所述内存模块30进行非全字写操作时,在第一个写时钟周期,所述流水线控制单元300根据所述控制信号,获取所述第二控制信息和所述第二地址信息,并根据所述第二控制信息和所述第二地址信息从所述内存模块30中读取所述第二初始读数据。具体的,所述流水线控制单元300根据所述第二控制信息可以确定读请求信息,并将所述读请求信息和所述第二地址信息一起发送至所述内存模块30。所述内存模块30根据所述读请求信息和所述第二地址信息可以得到所述第二初始读数据。在第二写时钟周期,所述流水线控制单元300接收所述内存模块30发送的所述第二初始读数据。同时,在第二写时钟周期,所述流水线控制单元300还接收所述微处理器20发送的所述非全字写数据,并将所述第二初始读数据和所述非全字写数据寄存在所述数据寄存器100中。其中,所述第二地址信息为所述微处理器20需要向所述内存模块30中写入的数据的地址信息,所述第二控制信息可以包括写请求操作和使能信号等。所述非全字写数据为所述微处理器20需要写入所述内存模块30中的数据。
在第三写时钟周期,所述流水线控制单元300将所述数据寄存器100中的所述第二初始读数据和所述非全字写数据传输至所述解码纠错单元200,并控制所述解码纠错单元200根据所述第二初始读数据和所述非全字写数据,确定所述目标非全字写数据。具体的,所述流水线控制单元300控制所述解码纠错单元200对所述第二初始读数据进行解码纠错,得到解码数据;根据所述非全字写数据的地址标识,将所述非全字写数据覆盖至所述解码数据,得到初始非全字写数据;对所述初始非全字写数据进行编码,得到所述目标非全字写数据。所述解码纠错单元200先对所述第二初始读数据进行解码,并判断解码后的数据是否存在错误。若解码后的所述第二初始读数据存在错误,则对其进行纠错,最终得到准确的解码数据。所述非全字写数据具有表征其需要写入的位置的地址标识,所述解码数据也具有地址标识。根据所述非全字写数据的地址标识和所述解码数据的地址标识,可以将所述非全字写数据覆盖在所述解码数据上需要写入的地址上,得到所述初始非全字写数据。所述解码纠错单元200对所述初始非全字写数据进行编码,得到最终的所述目标非全字写数据。在一个具体的实施例中,所述非全字写数据对应的地址标识为00,所述解码数据相对应的地址标识为0023,则将所述非全字写数据覆盖至所述解码数据的地址标识00所在的位置,得到所述目标非全字写数据。
具体的,所述流水线控制单元300对于所述微处理器20对所述内存模块30的非全字写操作时的数据和信息的控制过程如图9所示,图中,we表示写,address表示所述第二地址信息,A_write_data表示所述微处理器20发送的非全字写数据,B_write_data表示所述内存模块30接收到所述目标非全字写数据,A_read_data表示所述内存模块30发送的所述第二初始读数据。
在一个实施例中,所述流水线控制单元300还用于根据所述控制信号,获取第三控制信息和第三地址信息,并在第四写时钟周期将所述第三地址信息发送至所述内存模块30,将所述第三控制信息寄存于所述控制信息寄存器500,在第五写时钟周期,接收所述微处理器20发送的全字写数据,将所述全字写数据输入所述解码纠错单元200,得到目标全字写数据,并将所述目标全字写数据和所述第三控制信息发送至所述内存模块30。
在本实施例中,所述第四写时钟周期和所述第五写时钟周期为所述微处理器20在对所述内存模块30进行全字写操作时的时钟信号的任意两个周期,所述第四写时钟周期在所述第五写时钟周期之前。在一个具体的实施例中,所述第四写时钟周期和所述第五写时钟周期为依次相邻的两个周期。
所述微处理器20对所述内存模块30进行全字写操作时,在第四写时钟周期,所述流水线控制单元300根据所述控制信号,获取所述第三地址信息和所述第三控制信息。所述第三地址信息为所述微处理器20需要在所述内存模块30中写入的数据的地址,所述第三控制信息可以包括所述微处理器20发送的写操作请求和使能信号等。所述流水线控制单元300将所述第三地址信息发送至所述内存模块30,使得所述内存模块30获取所述微处理器20需要写入数据的地址。同时,所述流水线控制单元300将所述第三控制信息寄存于所述控制信息寄存器500。在第五写时钟周期,所述流水线控制单元300接收所述微处理器20发送的所述全字写数据,并将所述全字写数据输入所述解码纠错单元200。所述流水线控制单元300控制所述解码纠错单元200对所述全字写数据进行编码,可以得到所述目标全字写数据。所述目标全字写数据即为写入所述内存模块30中所述第三地址信息处的数据。所述流水线控制单元300将所述目标全字写数据和所述控制信号寄存单元500中的所述第三控制信息发送至所述内存模块30。
请参见图10,在一个实施例中,所述系统芯片存储控制装置10还包括高级高性能总线从机600。所述高级高性能总线从机600信号连接于所述微处理器20和所述流水线控制单元300之间,用于将所述微处理器20通过高级高性能总线传输的信号转换为所述控制信号。所述微处理器20包括AHB接口,通过AHB总线与所述高级高信号总线从机600连接。所述微处理器20通过AHB总线传输的为AHB协议信号,通过所述高级高性能总线从机600可以将所述AHB协议信号转换为所述控制信号,以便于所述流水线控制单元300根据所述控制信号进行控制工作。在本实施例中,所述高级高性能总线从机600的设置提高了所述系统芯片存储控制装置10的实用性和便捷性。
请继续参见图1,本申请一个实施例提供一种系统芯片包括如上所述的系统芯片存储控制装置10、微处理器20和内存模块30。所述微处理器20与所述流水线控制单元300信号连接,所述内存模块30与所述流水线控制单元300信号连接。对于所述微处理器20和所述内存模块30的描述可以参考上述实施例的描述,在此不再赘述。由于所述系统芯片包括所述系统芯片存储控制装置10,所以所述系统芯片具有所述系统芯片存储控制装置10的所有结构和有益效果,在此不再赘述。
在一个实施例中,所述系统芯片存储控制装置10还包括高级高性能总线从机600。所述高级高性能总线从机600信号连接与所述微处理器20和所述流水线控制单元300之间。所述微处理器20与所述高级高性能总线从机600通过AHB总线连接。对所述高级高性能总线从机600和所述AHB总线的描述可以参考上述实施例中的描述,在此不再赘述。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种系统芯片存储控制装置,其特征在于,包括:
数据寄存器;
解码纠错单元,与所述数据寄存器信号连接,用于对所述数据寄存器寄存的数据进行解码纠错,得到第一目标读数据,并将所述第一目标读数据返回至所述数据寄存器;
流水线控制单元,与所述数据寄存器和所述解码纠错单元信号连接,用于接收微处理器发送的控制信号,根据所述控制信号获取第一控制信息和第一地址信息,并在第一读时钟周期向内存模块发送第一控制信息和第一地址信息,在第二读时钟周期接收所述内存模块返回的第一初始读数据,将所述第一初始读数据寄存于所述数据寄存器,在第三读时钟周期,控制所述解码纠错单元工作,并将所述第一目标读数据返回至所述微处理器,其中,所述第一初始读数据是所述内存模块根据所述第一控制信息和所述第一地址信息获取的数据;
其中,所述流水线控制单元包括:
流水线控制器,与所述数据寄存器和所述解码纠错单元信号连接;
时钟控制器,与所述流水线控制器信号连接,用于控制所述流水线控制器在第一读时钟周期,向所述内存模块发送所述第一控制信息和第一地址信息;在第二读时钟周期,接收所述内存模块返回的所述第一初始读数据;在第三读时钟周期,控制所述解码纠错单元工作,并将所述第一目标读数据返回至所述微处理器。
2.根据权利要求1所述的装置,其特征在于,还包括:
地址预测单元,与所述流水线控制单元信号连接,用于在第二读时钟周期根据地址预测控制信号进行地址预测,得到预测地址信息,并将所述预测地址信息发送至所述内存模块,其中,所述地址预测控制信号由所述流水线控制单元生成。
3.根据权利要求1所述的装置,其特征在于,所述解码纠错单元采用错误检查和纠正技术。
4.根据权利要求1所述的装置,其特征在于,还包括:
控制信息寄存器,与所述流水线控制单元信号连接,所述流水线控制单元还用于根据所述控制信号,获取第二控制信息和第二地址信息,并根据所述第二控制信息和所述第二地址信息从所述内存模块中读取第二初始读数据,同时将所述第二控制信息寄存于所述控制信息寄存器;接收所述微处理器发送的非全字写数据,将所述第二初始读数据和所述非全字写数据寄存于所述数据寄存器;在第三写时钟周期,控制所述解码纠错单元根据所述第二初始读数据和所述非全字写数据,确定目标非全字写数据,并将所述目标非全字写数据发送至所述内存模块。
5.根据权利要求4所述的装置,其特征在于,所述流水线控制单元还用于在第一写时钟周期,根据所述第二控制信息确定读请求信息,并将所述读请求信息和所述第二地址信息发送至所述内存模块,且接收所述内存模块在第二写时钟周期发送的第二初始读数据,其中,所述第二初始读数据是所述内存模块根据所述第二地址信息和所述读请求信息获取的数据。
6.根据权利要求4所述的装置,其特征在于,所述流水线控制单元还用于控制所述解码纠错单元对所述第二初始读数据进行解码纠错,得到解码数据;根据所述非全字写数据的地址标识,将所述非全字写数据覆盖至所述解码数据,得到初始非全字写数据;对所述初始非全字写数据进行编码,得到所述目标非全字写数据。
7.根据权利要求4所述的装置,其特征在于,所述流水线控制单元还用于根据所述控制信号,获取第三控制信息和第三地址信息,并在第四写时钟周期将所述第三地址信息发送至所述内存模块,将所述第三控制信息寄存于所述控制信息寄存器,在第五写时钟周期,接收所述微处理器发送的全字写数据,将所述全字写数据输入所述解码纠错单元,得到目标全字写数据,并将所述目标全字写数据和所述第三控制信息发送至所述内存模块。
8.根据权利要求1所述的装置,其特征在于,还包括:
高级高性能总线从机,与所述流水线控制单元信号连接,用于将所述微处理器通过高级高性能总线传输的信号转换为所述控制信号。
9.一种系统芯片,其特征在于,包括:
如权利要求1-8任一项所述的系统芯片存储控制装置;
微处理器,与所述流水线控制单元信号连接;
内存模块,与所述流水线控制单元信号连接。
10.根据权利要求9所述的系统芯片,其特征在于,所述系统芯片存储控制装置还包括高级高性能总线从机,信号连接于所述微处理器和所述流水线控制单元之间,所述微处理器与所述高级高性能总线从机通过高级高性能总线连接。
CN202010722164.0A 2020-07-24 2020-07-24 系统芯片存储控制装置和系统芯片 Active CN111858141B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010722164.0A CN111858141B (zh) 2020-07-24 2020-07-24 系统芯片存储控制装置和系统芯片

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010722164.0A CN111858141B (zh) 2020-07-24 2020-07-24 系统芯片存储控制装置和系统芯片

Publications (2)

Publication Number Publication Date
CN111858141A CN111858141A (zh) 2020-10-30
CN111858141B true CN111858141B (zh) 2021-12-17

Family

ID=72949956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010722164.0A Active CN111858141B (zh) 2020-07-24 2020-07-24 系统芯片存储控制装置和系统芯片

Country Status (1)

Country Link
CN (1) CN111858141B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118098324A (zh) * 2022-11-18 2024-05-28 长鑫存储技术有限公司 存储器系统
CN116701256A (zh) * 2023-06-05 2023-09-05 牛芯半导体(深圳)有限公司 多通道仲裁器电路、接口芯片及数据访问方法
CN116974813B (zh) * 2023-09-25 2024-04-19 南方电网数字电网研究院有限公司 寄存器数据管理方法、装置、寄存器模块、计算机设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2840445B1 (fr) * 2002-06-03 2004-09-10 St Microelectronics Sa Circuit memoire comportant un code correcteur d'erreur
CN101140809A (zh) * 2007-09-07 2008-03-12 炬力集成电路设计有限公司 支持流水线纠错码和可配置操作的flash控制器及其控制方法
CN106095611A (zh) * 2016-06-20 2016-11-09 中国航天科技集团公司第九研究院第七七研究所 一种快速响应ahb访问的容错型sdram控制方法
CN107195329B (zh) * 2017-05-17 2024-04-02 西安紫光国芯半导体有限公司 在读操作时纠正dram中存储阵列的错误的方法以及dram
CN109800193B (zh) * 2019-01-14 2020-07-28 浙江大学 一种ahb总线访问片上sram的桥接装置
CN110289041B (zh) * 2019-06-25 2021-05-18 浙江大学 一种系统芯片中bist与ecc结合的存储器检测装置

Also Published As

Publication number Publication date
CN111858141A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CN111858141B (zh) 系统芯片存储控制装置和系统芯片
US7206891B2 (en) Multi-port memory controller having independent ECC encoders
JP4925659B2 (ja) アクセス時間が減少したフラッシュメモリ装置
US8020068B2 (en) Memory system and command handling method
EP3640944B1 (en) Non-sequential page continuous read
US8234463B2 (en) Data processing apparatus, memory controller, and access control method of memory controller
US20100131801A1 (en) Electronic system for detecting a fault
US4901228A (en) Pipelined cache system using back up address registers for providing error recovery while continuing pipeline processing
US9378076B2 (en) Serial communication test device, system including the same and method thereof
US8806316B2 (en) Circuits, integrated circuits, and methods for interleaved parity computation
EP2378431B1 (en) Nandflash controller and data transmission method thereof
EP1998337A1 (en) Semiconductor integrated circuit
JP2002366444A (ja) ランダムアクセスメモリ装置におけるソフトエラーを補正するシステム及び方法
US9083382B2 (en) Memory with on-chip error correction
CN105023616A (zh) 一种基于汉明码存取数据的方法及集成随机存取存储器
US20130227357A1 (en) Memory module redundancy method, storage processing device, and data processing device
CN111813180B (zh) 系统芯片存储控制方法、装置和系统芯片
US6799293B2 (en) Sparse byte enable indicator for high speed memory access arbitration method and apparatus
US10127107B2 (en) Method for performing data transaction that selectively enables memory bank cuts and memory device therefor
JP2001306411A (ja) 情報処理装置及び情報処理方法
JP2004126911A (ja) 制御装置
KR20080013316A (ko) 메모리 제어 장치, 이를 가지는 메모리 시스템 및 메모리의오류 탐색 제어 방법
US6718455B1 (en) Multimedia-instruction acceleration device and method thereof
CN118057342A (zh) 内存数据的读取方法、系统及计算机设备
JPS63240658A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 86, room 406, No.1, Yichuang street, Zhongxin Guangzhou Knowledge City, Huangpu District, Guangzhou City, Guangdong Province

Applicant after: Southern Power Grid Digital Grid Research Institute Co.,Ltd.

Applicant after: China South Power Grid International Co.,Ltd.

Applicant after: ZHEJIANG University

Address before: 511458 Room 1301, Chengtou Building, 106 Fengze East Road, Nansha District, Guangzhou City, Guangdong Province (self-compiled 1301-12159)

Applicant before: Southern Power Grid Digital Grid Research Institute Co.,Ltd.

Applicant before: China South Power Grid International Co.,Ltd.

Applicant before: ZHEJIANG University

GR01 Patent grant
GR01 Patent grant