微处理器I/O系统可靠性设计关键技术研究与实现
【摘要】:随着集成电路集成度的大幅提高和半导体制作工艺的飞速发展,微处理器芯片面临越来越严重的软错误威胁。为应对这种挑战,业界及各主流设计公司均注重研发新的容错技术,以增强微处理器的可靠性。现代微处理器向着多核和系统级(So C)芯片的趋势发展,与传统的微处理器一般只包含内核和存储系统相比,越来越多的I/O系统将集成在微处理器芯片内部。传统的微处理器可靠性设计往往只考虑了内核和存储系统,对I/O系统的考虑较少。随着微电子器件软错误率的上升,必须对微处理器内部集成的I/O系统进行可靠性加固。I/O系统在微处理器中呈现出不同于内核和存储系统的特点,进行I/O系统体系结构级可靠性设计时需要进行多方面考虑,需要基于不同I/O部件的特性采取有效的可靠性加固手段。本文主要对I/O系统的关键部件可靠性加固技术进行研究,具体工作和创新点包括:(1)针对I/O系统内部存在多种不同位宽的数据传输通道的特点,设计实现了任意位宽ECC编解码模块RTL代码的自动生成工具。通过该工具,可以使各I/O模块设计师不用了解复杂的ECC算法,即可在模块中方便的实现不同位宽的ECC编解码,降低了可靠性设计难度,加速了设计过程。该工具实现了任意位宽、自主命名ECC编解码模块自动生成的功能,设计师只需要输入想要的文件名及相应位宽,就可以得到RTL代码。(2)设计实现了基于二维奇偶校验的高可靠异步FIFO,解决对异步FIFO进行可靠性加固的问题。现代I/O系统中,时钟域众多,需要利用异步FIFO在各个时钟域之间有效可靠的传递数据。随着I/O系统的发展,微处理器中集成的异步FIFO深度和宽度将越来越大,必须考虑对其进行可靠性加固。常用的微体系结构级加固手段包括奇偶校验和ECC校验。本文根据异步FIFO自身的特点,采用了二维奇偶校验的方式对其进行加固,既可以避免ECC校验对性能的影响,又能够弥补奇偶校验只检错不纠错的不足。高可靠性异步FIFO设计可以作为库单元供设计师调用,能够提高微处理器I/O系统的可靠性,同时也降低了可靠性设计的复杂度。(3)设计实现了高可靠的IOTTE cache,解决I/O系统中cache进行可靠性加固的问题。随着实现功能的复杂化,I/O系统并不简单是数据通路而已,其中越来越多的包含了cache等复杂结构。例如,为了实现I/O虚拟化功能,一般采用IOMMU(I/O Mapping Management Unit)模块实现复杂的虚实地址转换功能。在IOMMU中为了缓存转换页表项TTE(Translation Table Entries),一般都实现了IOTTE cache。大量I/O部件的集成使得该cache的规模扩大,必须考虑如何对I/O系统中的复杂cache结构进行可靠性保护。本文采用多种手段对I/O系统中的IOTTE cache进行了可靠性加固,提高了微处理器I/O系统的可靠性。综上所述,本文对微处理器I/O系统可靠性设计的关键技术进行了研究,设计并实现了多种可靠性加固手段,在工程实践中得到了具体的应用,能够有效提高微处理器I/O系统可靠性,降低可靠性设计的复杂度,对微处理器I/O系统的可靠性设计具有积极意义。
【关键词】:可靠性 异步FIFO IOTTE cache ECC校验 二维奇偶校验
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP332