专利名称:PowerPC系统控制器的制作方法
技术领域:
本发明涉及一种控制器,特别是涉及一种PowerPC (PowerPC是Apple、IBM、Motorola公司组成的AM联盟所发展出的微处理器架构)系统的控制器。
背景技术:
计算机系统在航空电子系统中有着非常广泛的应用。在机载应用环境下,计算机系统的可靠性至关重要,任一故障都可能造成巨大的财产损失,甚至导致灾难。导致计算机系统失效的主要因素包括单粒子翻转(SEU)与电磁干扰。单粒子翻转指是高能带电粒子通过微电子器件的灵敏区时,在粒子通过的路径上将产生电离电荷,沉积在器件灵敏区中的电荷部分被电极收集,当收集到的电荷超过电路状态的临界电荷时,电路就会出现翻转,导致逻辑功能的混乱。且随着集成电路的飞速发展,器件特征尺寸更小,工作电压更低,临界电荷相应更小,单粒子翻转的影响越来越显著。而电磁干扰则通过系统线束传导或辐射至其它模块,改变处理器的状态,导致故障的产生。PowerPC处理器是精简指令集(RISC)嵌入式应用的理想基础平台,可以满足极苛刻环境的运行温度范围、多处理器支持功能、指令在整个产品中的兼容性,拥有最广泛的开发工具选择,在机载计算机领域中应用很广。相应地,PowerPC系统控制器则将处理器与外部存储器及外围设备进行互联,构成计算机系统。常规PowerPC系统控制器只能对60x的数据总线提供奇偶校验,校验的范围小。
发明内容
本发明所要解决的技术问题是提供一种PowerPC系统控制器,其增大校验的范围,且能纠正错误。本发明是通过下述技术方案来解决上述技术问题的一种PowerPC系统控制器,其特征在于,其包括处理器总线接口、DMA控制器、GPIO模块、复位中断模块、片内总线、内存控制器、BIT模块、FLASH控制器、I2C控制器,处理器总线接口、DMA控制器、GPIO模块、复位中断模块、内存控制器、BIT模块、FLASH控制器、I2C控制器都与片内总线连接;处理器总线接口完成处理器控制流、数据流的处理,在总线数据周期内上采用ECC来实现数据可靠性保护;内存控制器完成对内存的存取控制,数据总线上采用ECC检验和保护;DMA控制器完成数据在不同设备间高速传输;BIT模块完成对内存的高速测试;GPI0模块完成外部离散接口的输入输出控制;FLASH控制器完成对FLASH的擦除、编程、读出等操作;复位中断模块完成外部各类复位信号的处理,产生各类中断信号待处理器处理;片内总线完成各子模块的互联;I2C控制器完成与外围I2C接口设备的通信。优选地,所述处理器总线接口采用60x总线接口。优选地,所述60x总线接口的时序主要包括仲裁周期、地址周期及数据周期三阶段,仲裁周期与地址周期仍保持一致,地址周期采用奇偶校验来检查地址的正确性。本发明的积极进步效果在于本发明通过将ECC (Error Correcting Code,错误检查和纠正码)功能增加至60x总线,可明显避免由于SEU与电磁干扰带来的数据错误,提高系统安全性。本发明不仅可以应用于现有计算机系统的升级,还可以应用于大型商用及新一代军用航电计算机系统的研发。以前商用系统控制器的60x总线的数据总线只采用奇偶校验,这种校验方式不具备纠错的能力,而ECC功能则可以根据特定的编码、解码算法可以检查错误并对一定数量的错误进行纠正,ECC功能可以检查2位错误,纠正I位错误,本发明增大校验的范围,且能纠正错误。
图1为本发明PowerPC系统控制器的原理框图。图2为60x总线接口的时序的示意图。图3为ECC选择一个特定位的示意图。图4为ECC选择另一个特定位的示意图。
具体实施例方式下面结合附图给出本发明较佳实施例,以详细说明本发明的技术方案。如图1所示,本发明PowerPC系统控制器包括处理器总线接口、DMA (DirectMemory Access,存储器直接访问)控制器、GPIO (General Purpose Input Output,通用输入输出)模块、复位中断模块、片内总线、内存控制器、BIT (Built-1n-Testing,内建自测试)模块、FLASH控制器、I2C控制器,处理器总线接口、DMA控制器、GPIO模块、复位中断模块、内存控制器、BIT模块、FLASH控制器、I2C控制器都与片内总线连接。处理器总线接口完成处理器控制流、数据流的处理,在总线数据周期内上采用ECC来实现数据可靠性保护,处理器总线接口可以采用60x总线接口 ;内存控制器完成对内存的存取控制,数据总线上采用ECC检验和保护;DMA控制器完成数据在不同设备间高速传输;BIT模块完成对内存的高速测试,该高速测试直接以硬件方式进行,不用软件过多进行介入,可以用最快的速度完成内存的测试,保证内存的正确性,从而达到提高系统安全性效果;GPI0模块完成外部离散接口的输入输出控制;FLASH控制器完成对FLASH的擦除、编程、读出等操作;复位中断模块完成外部各类复位信号的处理,产生各类中断信号待处理器处理;片内交联逻辑采用片内总线,完成各子模块的互联;内部各模块使用到片内存储器时均采用ECC保护;I2C控制器完成与外围I2C接口设备的通信。处理器总线接口、DMA控制器、GPIO模块、复位中断模块、片内总线、内存控制器、BIT模块、FLASH控制器、I2C控制器,各自负责对应的接口通信与控制功能,共同完成PowerPC处理器对存储器的测数据读取功能,PowerPC处理器与外围设备的通信功能,以及在出现特定情况或故障时对PowerPC处理器的中断请求或复位操作。ECC检验与奇偶校验不同,对8位数据,ECC检验位需要5位,数据位宽每增加I倍,ECC只需增加I位检验位(而奇偶校验时数据位宽增加一倍校验位也需增加一倍),且ECC能定位错误位置,具有自动更正数据的能力。基于汉明码的ECC可纠正I位错误、检测2位的错误。ECC算法通常为数据位中特定位的异或操作,特定位的选择如图3与图4所示,其中syndrome bit为校验数据位,data bit为被校验数据位。图3对应数据位
,图4对应数据位[32:63],产生第一位ECC数据的算法如下式所示(该部分内容需要与Freescale的手册一致)。
ecc_dp
= di
'di [I] 'di [2] 'di [3] 'di [4] 'di [5] 'di [6] 'di [7]'di[8]'di[9]'di[10]'di[11]'di[12]'di[13]'di[14]'di[15]~di[19]~di[23]~di[27]~di[31]~di[34]~di[38]~di[42]~di[46]~di[51]~di[55]~di[59]~di[61];其中,ecc_dp
为第0位ECC校验数据,di [n]为被校验数据的第η位,如di [O]为被校验数据的第O位。处理器总线接口可以采用60x总线接口,如图2所示,60x总线接口的时序主要包括仲裁周期、地址周期及数据周期三阶段,仲裁周期与地址周期仍保持一致,地址周期采用奇偶校验来检查地址的正确性。但数据周期阶段,不再使用只具备检查错误能力的奇偶校验,改用ECC校验,使60x总线接口上64位的数据线上能有纠I检2的能力,这样将大大提高60x总线接口的数据正确性,进而提高系统可靠性。PowerPC处理器获得总线使用权后,将在地址周期内向从设备发送地址及对应该地址的操作指令。为保证地址数据可靠性,60x总线接口上对32位地址线提供了 4位的地址校验数据,可配置成奇校验或偶校验。如地址奇偶校验出错,将会导致地址重试等操作,如地址校验正确,将进行数据周期的操作。写操作时,PowerPC处理器将向PowerPC系统控制器发送64位数据(其中字节选择由按命令字控制),并提供8位的奇偶校验数据,每位对应64位数据中的一个字节,PowerPC系统控制器可根据分析校验和,判断数据是否传输出错,并采取相应的操作。读操作时,则由PowerPC系统控制器向处理器提供64位数据与8位的奇偶校验数据,由处理器分析奇偶数据正确性。类似在PCI接口、UART接口等都有类似的奇偶校验方法来保证数据的传输可靠性。
处理器总线接口、DMA控制器、GPIO模块、复位中断模块、片内总线、内存控制器、BIT模块、FLASH控制器、I2C控制器都会用到很多片内存储器,片内存储器与外部内存设备一样,易受SEU与电磁干扰的影响。为此,在系统控制器内部使用到的所有片内存储器端口,都增加ECC检错纠错功能,尽可能保证存储器数据读写结果正确,提高系统可靠性。本发明PowerPC系统控制器则将处理器与外部存储器及外围设备进行互联,构成计算机系统,本发明采用的将ECC纠错机制应用于60x数据总线的方法可以纠正60x数据总线上的I位错误、检测2位错误,通过基于FPGA的原型验证,可以很好的实现纠正I位错误的功能。本发明中采用的片内存储器增加ECC检错纠错功能不便于直接通过基于FPGA的原型进行验证,但是通过60x总线上的ECC纠错检错机制的验证可以推断片内存储器的数据安全性由于ECC保护可以取得很好的改进效果。本发明PowerPC系统控制器完成从PowerPC处理器到存储设备、通信接口和其它外设及外设间的数据交互,通过将ECC纠错机制应用于PowerPC 60x数据总线,并在FPGA中实现包含60x数据总线ECC功能的PowerPC系统控制器功能,可明显避免由于SEU与电磁干扰带来的数据错误,提高系统安全性。本发明不仅可以应用于现有计算机系统的升级,还可以应用于大型商用及新一代军用航电计算机系统的研发。本领域的技术人员可以对本发明进行各种改型和改变。因此,本发明覆盖了落入所附的权利要求书及其等同物的范围内的各种改型和改变。
权利要求
1.一种PowerPC系统控制器,其特征在于,其包括处理器总线接口、DMA控制器、GPIO模块、复位中断模块、片内总线、内存控制器、BIT模块、FLASH控制器、I2C控制器,处理器总线接口、DMA控制器、GPIO模块、复位中断模块、内存控制器、BIT模块、FLASH控制器、I2C控制器都与片内总线连接;处理器总线接口完成处理器控制流、数据流的处理,在总线数据周期内上采用ECC来实现数据可靠性保护;内存控制器完成对内存的存取控制,数据总线上采用ECC检验和保护;DMA控制器完成数据在不同设备间高速传输;BIT模块完成对内存的高速测试;GPI0模块完成外部离散接口的输入输出控制;FLASH控制器完成对FLASH的擦除、 编程、读出等操作;复位中断模块完成外部各类复位信号的处理,产生各类中断信号待处理器处理;片内总线完成各子模块的互联;I2C控制器完成与外围I2C接口设备的通信。
2.如权利要求1所述的PowerPC系统控制器,其特征在于,所述处理器总线接口采用 60x总线接口。
3.如权利要求2所述的,其特征在于,所述60x总线接口的时序主要包括仲裁周期、地址周期及数据周期三阶段,仲裁周期与地址周期仍保持一致,地址周期采用奇偶校验来检查地址的正确性。
全文摘要
本发明公开了一种PowerPC系统控制器,其包括处理器总线接口等,处理器总线接口、DMA控制器、GPIO模块、复位中断模块、内存控制器、BIT模块、FLASH控制器、I2C控制器都与片内总线连接;处理器总线接口完成处理器控制流、数据流的处理;内存控制器完成对内存的存取控制,数据总线上采用ECC检验和保护;DMA控制器完成数据在不同设备间高速传输;BIT模块完成对内存的高速测试;GPIO模块完成外部离散接口的输入输出控制;FLASH控制器完成对FLASH的擦除、编程、读出等操作;复位中断模块完成外部各类复位信号的处理;片内总线完成各子模块的互联。本发明增大校验的范围,且能纠正错误。
文档编号G06F11/10GK103034558SQ20121054153
公开日2013年4月10日 申请日期2012年12月13日 优先权日2012年12月13日
发明者王经典, 杨爱良, 高磊, 彭俊 申请人:中国航空无线电电子研究所