用于虚拟硬件存储器保护的系统和方法技术方案

技术编号:10314277 阅读:128 留言:0更新日期:2014-08-13 16:25
本发明专利技术涉及一种用于虚拟硬件存储器保护的系统和方法。存储器保护单元包括硬件逻辑。所述硬件逻辑接收指向总线受控器的来自虚拟中央处理单元(CPU)的事务,该事务与虚拟CPU标识(ID)相关,其中虚拟CPU实现在物理CPU上。所述硬件逻辑还基于虚拟CPU ID确定是否授权或拒绝访问所述总线受控器。所述虚拟CPU ID不同于虚拟CPU实现在其上的物理CPU的ID。

【技术实现步骤摘要】
【专利摘要】本专利技术涉及一种。存储器保护单元包括硬件逻辑。所述硬件逻辑接收指向总线受控器的来自虚拟中央处理单元(CPU)的事务,该事务与虚拟CPU标识(ID)相关,其中虚拟CPU实现在物理CPU上。所述硬件逻辑还基于虚拟CPU?ID确定是否授权或拒绝访问所述总线受控器。所述虚拟CPU?ID不同于虚拟CPU实现在其上的物理CPU的ID。【专利说明】相关申请的交叉引用本申请要求2013年2月7日提交的美国临时专利申请61 / 762,212(代理编号T1-73288PS)的优先权,其通过引用合并于此。
技术介绍
各种过程由与安全和风险降低有关的国际标准控制。例如,IEC61508致力于例如用于控制工业或其他安全关键过程的微控制器或其他计算机的电气、电子和可编程电子器件的功能安全。IEC61508基于特定应用的概率分析定义安全完整性等级(SIL)。为了实现给定的SIL,包括组成组件的应用必须满足最大“危险故障”概率和最小“安全故障分数”的目标。“危险故障”的概念是以具体应用为基础来定义,但是基于在安全关键应用的开发期间被证实完整性的要求约束。“安全故障分数”确定系统管理危险故障的能力并且将安全的已检测故障的可能性与危险的未检测故障的可能性进行比较。最终,电子器件对于特定SIL的认证要求电子器件提供特定故障检测水平和特定故障恢复水平并且使安全关键应用能够在出现故障后转变到安全状态。另一个功能安全标准是IS026262,其致力于公路车辆例如汽车的功能安全。IS026262关注于解决由汽车的电子系统和电气系统的故障行为可能导致的危害。类似于IEC61508所定义的SIL,IS026262提供了特定汽车的基于风险的方案以便确定被称为汽车安全完整性等级(ASIL)的风险级别。ASIL被用来指定特定产品的能力以便实现可接受的安全目标。用于控制过程(工业过程、汽车过程或其他过程)的电子器件可被用来执行多种功能,其中一些是“安全功能”,而其他是“非安全功能”。安全功能是其操作影响过程安全的功能;例如,驱动电动机用于动力转向的闭环控制系统是一种安全功能。非安全功能是其操作不影响过程安全的功能;例如,内置于电子器件的调试功能用于针对控制功能开发软件,但在电子器件集成到车辆时将不再使用该调试功能,此调试功能为非安全功能。
技术实现思路
上面提到的问题很大一部分由包括硬件逻辑的存储器保护单元来解决。硬件逻辑接收指向总线受控器的来自虚拟中央处理单元(CPU)的事务,该事务与虚拟CPU标识(ID)相关,其中虚拟CPU实现在物理CPU上。硬件逻辑还基于虚拟CPU ID确定是否授权或拒绝访问总线受控器。虚拟CPU ID不同于虚拟CPU实现在其上的物理CPU的ID。本公开的其他实施例涉及一种包括硬件逻辑的存储器保护单元。硬件逻辑接收指向总线受控器来自虚拟中央处理单元(CPU)的事务,该事务与虚拟任务标识(ID)相关,其中虚拟CPU实现在物理CPU上。硬件逻辑还基于虚拟任务ID确定是否授权或拒绝访问总线受控器。虚拟任务ID不同于在虚拟CPU实现在其上的物理CPU上执行的任务的ID。本公开的又一实施例涉及一种方法,其包括:接收指向总线受控器的来自虚拟中央处理单元(CPU)的事务,该事务与虚拟CPU标识(ID)相关,其中虚拟CPU实现在物理CPU上。该方法还包括:基于虚拟CPU ID确定是否授权或拒绝访问总线受控器。虚拟CPU ID不同于虚拟CPU实现在其上的物理CPU的ID。【专利附图】【附图说明】为了详细描述本专利技术示例性实施例,现在将参考附图,其中:图1示出根据各种实施例的示例性片上系统(SOC)体系结构的框图;图2示出根据各种实施例的结合多任务总线主控器的示例性存储器保护单元(MPU)的框图;图3示出根据各种实施例的结合单任务总线主控器的示例性MPU的框图;图4示出根据各种实施例的利用虚拟化硬件方案结合多任务总线主控器的示例性MPU的框图;和图5a_5d示出根据各种实施例的方法的流程图。注释和术语贯穿以下描述和所附权利要求书中使用特定术语来指代特定系统组件。如所属领域的技术人员将 了解,各公司可用不同名称来指代一组件。本文不意图区分名称不同但功能相同的组件。在以下论述和所附权利要求书中,术语“包含”和“包括”以开放式方式使用,且因此应解释为表示“包含但不限于…”。并且,术语“耦合”意在表示间接或直接电连接。因此,如果第一器件耦合到第二器件,那么该连接可经由直接电连接,或经由通过其它器件和连接的间接电连接。如本文中所使用,术语“事务”指读出/写入存储器或读出/写入另一逻辑块或寄存器的请求。如本文中所使用,术语“总线主控器”指启动事务的逻辑块。如本文中所使用,术语“总线受控器”指接收事务的组件;例如,存储器区域或外围设备可以是总线受控器。如本文中所使用,术语“互连件”指例如在总线主控器和总线受控器之间分配事务的组件。【具体实施方式】下面的讨论针对本专利技术的各种实施例。尽管这些实施例的一个或多个可能是优选的,但所公开的实施例不应被解释为或以其他方式用作限制包括权利要求的本公开的范围。此外,本领域技术人员将理解,下面的描述具有广泛的应用,并且任何实施例的讨论仅仅意在例示该实施例,而不旨在暗示包括权利要求的本公开的范围限于该实施例。安全和非安全功能可以在例如具有一个或多个处理器核和存储器的片上系统(SOC)上实现,可在处理器核之间共享该安全和非安全功能。理论上讲,当单独SOC执行电子器件的各种功能中的每一个时,最高安全等级得以实现。这样,特定功能的操作不会被其他功能削弱或破坏,因为实现特定功能的总线主控器不能访问除其自身以外的任何总线受控器。然而,此类方法成本太高。为了降低此类电子器件的成本,安全功能可以与非安全功能一起实现,例如由单个SOC执行多种功能。然而,为了维持适当的SIL,应该避免某些功能干扰其他功能(例如,应该避免一种功能访问未分配给该功能的地址区域存储器,或者避免向未分配给该功能的外围设备发送事务)。安全功能可以与多个SIL中的一个相关。例如,SIL为3的安全功能可能要求高等级的安全保证,而SIL为2或更低的功能要求较低等级的安全保证,但是仍然比非安全功能要求更多的安全保证。也就是说,相对于SIL为2(或更低)的功能,SIL为3的功能存在更大程度的风险,因此要求更多的风险降低措施。因此,多个安全功能可以具有相互独立的SIL。各种标准要求具有不同SIL等级的功能不应互相干扰。类似地,非安全关键任务不得干扰安全关键任务。因此,当非安全功能应该被分离以使得非安全功能不破坏安全功能时,较高SIL安全功能(即,数值更大)也应被分离以使得较低SIL安全功能不会破坏较高SIL安全功能。图1示出具有由数个总线主控器实现的多个功能(也被称为任务)的SOC体系结构100。如上所解释,SOC体系结构100可以是控制过程和执行多个功能的电子设备的一部分。某些任务可以是安全功能,这些安全功能在某些情况下具有不同的SIL,而其他任务可以是非安全功能。该SOC体系结构100包括实现任务A和B的CPU102、实现任务C和D的直接存储器存取(DMA)引擎104和实现任务E的通用串行总线(USB)控制器106。CPU102、DMA引擎104和USB控制器106是总本文档来自技高网
...

【技术保护点】
一种存储器保护单元,其包括:硬件逻辑,其用于:接收指向总线受控器的来自虚拟中央处理单元即虚拟CPU的事务,所述事务与虚拟CPU标识即虚拟CPU ID相关,其中所述虚拟CPU实现在物理CPU上;以及基于所述虚拟CPU ID确定是否授权或拒绝访问所述总线受控器;其中所述虚拟CPU ID不同于所述虚拟CPU实现在其上的所述物理CPU的ID。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:B·S·沙瓦里K·F·格雷布R·苏瓦纳
申请(专利权)人:德克萨斯仪器股份有限公司
类型:发明
国别省市:美国;US

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

1