一种支持上注的容错存储器控制器制造技术

技术编号:19341794 阅读:37 留言:0更新日期:2018-11-07 13:46
本发明专利技术提供一种支持上注的容错存储器控制器,基于EDAC纠检错算法,将PROM和SRAM的统一控制模式分解为数据域和校验域的独立控制模式,从而构建了支持星载微处理器程序运行和校验元上注并行执行的模式。通过采用纠检错设计结构与可独立控制的配置寄存器相结合的策略,实现了空间程序的上注,在微处理器的存储器控制器中集成了用于纠检错的EDAC编码器和解码器,采用独立控制的编程模式,本发明专利技术具有显著的可扩展性,其不局限于片外存储器的类型、容量、数量,可以扩展编程配置寄存器而支持更多数量的外接存储器,具有良好的可移植性和可复用性,构成了可复用的IP,用于SoC系统快速设计。

A fault tolerant memory controller supporting upper injection

The invention provides a fault-tolerant memory controller supporting annotation. Based on EDAC error correction algorithm, the unified control mode of PROM and SRAM is decomposed into independent control mode of data domain and check domain, thus a mode supporting on-board microprocessor program operation and parallel execution of check element annotation is constructed. By adopting the strategy of combining error-correcting design structure with configurable registers which can be independently controlled, the annotation of spatial program is realized. The EDAC coder and decoder for error-correcting are integrated into the memory controller of microprocessor. The programming mode of independent control is adopted. The invention has remarkable expansibility, but it does not. Limited to the type, capacity and quantity of off-chip memory, it can expand the programming configuration register to support more external memory. It has good portability and reusability, and constitutes a reusable IP for rapid design of SoC system.

【技术实现步骤摘要】
一种支持上注的容错存储器控制器
本专利技术属于集成电路设计领域,涉及适用于空间飞行器程序上注的容错型存储器控制技术,具体为一种支持上注的容错存储器控制器。
技术介绍
得益于微电子技术的飞速发展,空间飞行器广泛采用集成电路实现其小型化、多功能、低功耗的目标。然而,受空间辐射环境的影响,空间高能粒子可能导致集成电路存储器中存储值发生翻转而产生错误的逻辑表达,影响器件的正常功能,被称为单粒子翻转。随着航天应用的不断深入,航天电子器件多采用多模冗余、多机备份和纠检错技术(EDAC)进行单粒子防护,其中,EDAC技术通过增加冗余校验码方式对核心数据进行算法保护,已经逐步成为空间微处理器主流的容错技术。传统的空间微处理器至少需要PROM和SRAM两类存储器分别存放指令和数据,其中当PROM程序区发生不可恢复的严重故障时,可以将SRAM中备份的程序重新上注到PROM中。但是,当PROM和SRAM分别增加EDAC校验存储器后,执行程序的重新上注将会产生新的问题。这是因为,控制器的工作模式分为正常模式和测试模式,在正常模式下,校验区为透明不可见区域,而在测试模式下,允许统一对PROM和SRAM的EDAC存储器进行读写。这种测试模式的设计保证了在地面调试中能够通过注错验证纠检错逻辑的正确性,但是,这种无差别的测试模式导致在空间运行中一旦处于EDAC测试模式下,那么控制器内部的数据通道因完全切换至EDAC存储器,导致上注程序无法执行而失败。因此,容错型存储控制器如何兼顾程序上注,已经成为空间微处理器设计亟待解决的问题。中国专利CN104597807A,名称为一种星载综合电子CPU翻转加固系统及方法,将传统非容错式的微处理器通过外接一个ASIC转换芯片,将访问数据扩展出EDAC校验码,并扩展外接EDAC存储器,通过这种方式实现了星载综合电子CPU的可靠性加固。中国专利CN105373444A,名称为一种8位宽外部存储器控制器EDAC校验码的生成方法,它讨论了将数据和校验码统一存储于一个存储体中时,通过一种EDAC校验码的生成方法,将校验码从存储器的尾地址逆序存储,从而能够降低存储控制器因检测外部存储容量而决定校验码起始地址的设计复杂度。中国专利CN105760250A,名称为一种具有码流纠检错功能的单粒子加固FPGA配置电路,它是通过一个编码/纠错电路主动对SRAM型FPGA的配置文件进行检验,对发现的单位错进行修正,以保证FPGA编程程序的正确性。中国专利CN106328195A,名称为一种抗单粒子翻转的SRAM,是将EDAC算法实现于存储器内部,不需要控制器额外的实现纠检错逻辑,在对存储器读写访问时,存储器自身进行数据的检查与纠错。然而,以上专利技术专利并未涉及到当发生不可恢复的多位故障时,如何保证程序的重新上注过程,而仅实现了单位错的故障修复机制,并不满足实际空间应用需求。静态存储器作为星载综合电子系统中不可或缺的电子元件,被广泛用于存储程序与数据,即使目前采用抗辐照工艺及抗辐照版图设计技术,仍无法回避单粒子翻转问题,需要采用程序上注的方式实现核心程序的复写,因此存储控制器必须具备程序上注功能。经检索相关专利,尚未发现有解决该问题的方法。
技术实现思路
针对现有技术中存在的问题,本专利技术提供一种支持上注的容错存储器控制器,不受存储器件类型的限制,所实现的上注模式并不影响程序的正常执行,有效应对了单粒子效应对星载微处理器的影响。本专利技术是通过以下技术方案来实现:一种支持上注的容错存储器控制器,包括总线接口、配置寄存器、状态机、编码器与解码器、数据接口PAD_DATA和数据接口PAD_EDAC;所述总线接口挂接于微处理器芯片内部的系统总线上,通过标准的片内总线传递微处理器发出的访存操作;总线接口分别与配置寄存器、状态机、编码器与解码器交互连接;所述的标准的片内总线传递的信号包括选择使能信号、访问地址以及读写数据;当微处理器通过总线接口配置访问配置寄存器时,总线接口仅用于向配置寄存器中设置各种配置参数,所述配置参数输出至状态机、编码器和解码器,用于控制状态机访问外部存储器的时间值以及控制编码器和解码器的启动和停止;所述的外部存储器包括数据存储器PROM和数据存储器SRAM,以及校验存储器PROM_EDAC和校验存储器SRAM_EDAC;当微处理器通过总线接口访问外部存储器时,总线接口将访问读写操作发送至状态机模块;状态机用于根据读写操作以及配置寄存器的参数值,组织外部存储器的片选信号、读使能信号和写使能信号的时序;编码器用于写访问,将写数据按照EDAC算法进行编码,生成相应的校验元;解码器用于读访问,将数据存储器的数据和校验存储器中的校验元同时送入解码器,解码器按照纠错算法进行检查,纠正出发生的一位错误或检测出发生的两位错误;所述的数据接口PAD_DATA和数据接口PAD_EDAC分别连接编码器与解码器,用于将单向数据信号转换为双向数据信号与外部存储器互连。优选的,数据接口PAD_EDAC用于将编码器的输出传送至校验存储器PROM_EDAC和校验存储器SRAM_EDAC,还用于将这两个校验存储器的校验码返回至解码器;数据接口PAD_DATA用于将编码器的输出传送至数据存储器PROM和数据存储器SRAM,还用于将这两个存储器的数据返回至解码器。优选的,当总线接口在检测到有效的访问控制信号后,即按照总线协议锁存访问地址和读写数据。优选的,所述的编程配置寄存器为5位可读写的编程配置寄存器,用于区分数据存储器PROM和数据存储器SRAM,以及校验存储器PROM_EDAC和校验存储器SRAM_EDAC;可读写的5位分别用于表示系统处于编程模式、当前编程目标为校验存储器PROM_EDAC、当前编程目标为数据存储器PROM、当前编程目标为校验存储器SRAM_EDAC和当前编程目标为数据存储器SRAM,其复位值均为0。优选的,数据存储器PROM和校验存储器PROM_EDAC两者共用一个片选信号PROM_Cs,数据存储器SRAM和校验存储器SRAM_EDAC两者共用一个片选信号SRAM_Cs,数据存储器PROM和数据存储器SRAM共用读信号Oe和写信号We,校验存储器PROM_EDAC和校验存储器SRAM_EDAC共用读信号Oe_edac和写信号We_edac。进一步,微处理芯片的程序存放在数据存储器SRAM中,程序的校验码存放在校验存储器SRAM_EDAC中,当对数据存储器PROM上注时;按顺序向存储器控制器的密码寄存器1和密码寄存器2中分别写入有效指令,配置编程配置寄存器开启对数据存储器PROM进行编程之后,再次按顺序向密码寄存器1和密码寄存器2写入有效指令,配置编程配置寄存器开启对校验存储器PROM_EDAC进行编程。再进一步,对数据存储器PROM进行编程时,片选信号SRAM_Cs、读信号Oe和读信号Oe_edac均正常工作;数据存储器SRAM并未处于编程模式,正常的运行指令并对数据存储器PROM进行编程写操作,片选PROM_Cs和写信号We正常工作,写信号We_edac关闭;片选信号SRAM_Cs和片选信号PROM_Cs择一工作。进一步,对校验存储器PROM_EDAC进行编程时,片选信号SRAM_Cs、读信号Oe和读信号Oe_edac均本文档来自技高网
...

【技术保护点】
1.一种支持上注的容错存储器控制器,其特征在于,包括总线接口、配置寄存器、状态机、编码器与解码器、数据接口PAD_DATA和数据接口PAD_EDAC;所述总线接口挂接于微处理器芯片内部的系统总线上,通过标准的片内总线传递微处理器发出的访存操作;总线接口分别与配置寄存器、状态机、编码器与解码器交互连接;所述的标准的片内总线传递的信号包括选择使能信号、访问地址以及读写数据;当微处理器通过总线接口配置访问配置寄存器时,总线接口仅用于向配置寄存器中设置各种配置参数,所述配置参数输出至状态机、编码器和解码器,用于控制状态机访问外部存储器的时间值以及控制编码器和解码器的启动和停止;所述的外部存储器包括数据存储器PROM和数据存储器SRAM,以及校验存储器PROM_EDAC和校验存储器SRAM_EDAC;当微处理器通过总线接口访问外部存储器时,总线接口将访问读写操作发送至状态机模块;状态机用于根据读写操作以及配置寄存器的参数值,组织外部存储器的片选信号、读使能信号和写使能信号的时序;编码器用于写访问,将写数据按照EDAC算法进行编码,生成相应的校验元;解码器用于读访问,将数据存储器的数据和校验存储器中的校验元同时送入解码器,解码器按照纠错算法进行检查,纠正出发生的一位错误或检测出发生的两位错误;所述的数据接口PAD_DATA和数据接口PAD_EDAC分别连接编码器与解码器,用于将单向数据信号转换为双向数据信号与外部存储器互连。...

【技术特征摘要】
1.一种支持上注的容错存储器控制器,其特征在于,包括总线接口、配置寄存器、状态机、编码器与解码器、数据接口PAD_DATA和数据接口PAD_EDAC;所述总线接口挂接于微处理器芯片内部的系统总线上,通过标准的片内总线传递微处理器发出的访存操作;总线接口分别与配置寄存器、状态机、编码器与解码器交互连接;所述的标准的片内总线传递的信号包括选择使能信号、访问地址以及读写数据;当微处理器通过总线接口配置访问配置寄存器时,总线接口仅用于向配置寄存器中设置各种配置参数,所述配置参数输出至状态机、编码器和解码器,用于控制状态机访问外部存储器的时间值以及控制编码器和解码器的启动和停止;所述的外部存储器包括数据存储器PROM和数据存储器SRAM,以及校验存储器PROM_EDAC和校验存储器SRAM_EDAC;当微处理器通过总线接口访问外部存储器时,总线接口将访问读写操作发送至状态机模块;状态机用于根据读写操作以及配置寄存器的参数值,组织外部存储器的片选信号、读使能信号和写使能信号的时序;编码器用于写访问,将写数据按照EDAC算法进行编码,生成相应的校验元;解码器用于读访问,将数据存储器的数据和校验存储器中的校验元同时送入解码器,解码器按照纠错算法进行检查,纠正出发生的一位错误或检测出发生的两位错误;所述的数据接口PAD_DATA和数据接口PAD_EDAC分别连接编码器与解码器,用于将单向数据信号转换为双向数据信号与外部存储器互连。2.根据权利要求1所述的一种支持上注的容错存储器控制器,其特征在于,数据接口PAD_EDAC用于将编码器的输出传送至校验存储器PROM_EDAC和校验存储器SRAM_EDAC,还用于将这两个校验存储器的校验码返回至解码器;数据接口PAD_DATA用于将编码器的输出传送至数据存储器PROM和数据存储器SRAM,还用于将这两个存储器的数据返回至解码器。3.根据权利要求1所述的一种支持上注的容错存储器控制器,其特征在于,当总线接口在检测到有效的访问控制信号后,即按照总线协议锁存访问地址和读写数据。4.根据权利要求1所述的一种支持上注的容错存储器控制器,其特征在于,所述的编程配置寄存器为5位可读写的编程配置寄存器,用于区分数据存储器PROM和数据存储器SRAM...

【专利技术属性】
技术研发人员:娄冕罗敏涛刘思源张海金田超
申请(专利权)人:西安微电子技术研究所
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1