用于实现安全视频输出路径的硬件辅助虚拟化的制作方法_4

文档序号:9432933阅读:来源:国知局
器文件单元458。物理寄存器文件单 元458中的每一个都表示一个或多个物理寄存器文件,其中不同的文件存储一种或多种不 同的数据类型,诸如标量整数、标量浮点、紧缩整数、紧缩浮点、向量整数、向量浮点等等、状 态(例如,是要被执行的下一指令的地址的指令指针)等等。物理寄存器组单元458被隐 退单元454重叠,以示出可以实现寄存器重叠使用和无序执行的各种方式(例如,使用重新 排序缓冲器和隐退寄存器组,使用未来的文件,历史缓冲器,以及隐退寄存器组;使用寄存 器图和寄存器的池;等等)。一般而言,体系结构寄存器从处理器的外部或从编程器的角度 可见。寄存器不仅限于任何已知的特定类型的电路。各种不同类型的寄存器都是合适的, 只要它们能够存储和提供如此处所描述的数据。合适的寄存器的示例包括,但不仅限于,专 用物理寄存器,使用寄存器重叠的动态地分配的物理寄存器,专用和动态地分配的物理寄 存器的组合,等等。隐退单元454和物理寄存器组单元458耦合到执行群集460。执行群 集460包括一组一个或多个执行单元162和一组一个或多个存储器访问单元464。执行单 元462可以对各种类型的数据(例如,标量浮点、紧缩整数、紧缩浮点、向量整数、向量浮点) 执行各种操作(例如,位移、加法、减法、乘法)。尽管一些实施例可以包括专用于特定功能 或功能组的若干个执行单元,但是,其他实施例可以包括一个执行单元或所有都执行所有 功能的多个执行单元。调度器单元456、物理寄存器组单元458,以及执行群集460被示为 可能是多个,因为某些实施例对于某些类型的数据/操作创建单独的流水线(例如,标量整 数流水线、标量浮点/紧缩整数/紧缩浮点/向量整数/向量浮点流水线,和/或存储器访 问流水线,每一个流水线都具有它们自己的调度器单元、物理寄存器组单元,和/或执行群 集一一在单独的存储器访问流水线的情况下,实现了其中只有此流水线的执行群集具有存 储器访问单元464的某些实施例)。还应该理解,使用单独的流水线,这些流水线中的一个 或多个可以是无序发出/执行,其余的是有序的。
[0077] 存储器访问单元组464耦合到存储器单元470,该存储器单元470包括耦合到数据 高速缓存单元474的数据TLB单元472,该数据高速缓存单元474耦合到2级(L2)高速缓 存单元476。在一个示例性实施例中,存储器访问单元464可以包括加载单元、存储地址单 元以及存储数据单元,其中每一个都耦合到存储器单元470中的数据TLB单元472。L2高 速缓存单元476耦合到一个或多个其他级别的高速缓存,最终耦合到主存储器。
[0078] 作为示例,示例性寄存器重叠、无序发布/执行核架构可以按如下方式实现流水 线400 :指令获取438执行获取和长度解码级402以及404 ;解码单元440执行解码级406 ; 重命名/分配器单元452执行分配级408和重命名级410 ;调度器单元456执行调度级412 ; 物理寄存器组单元458和存储器单元470执行寄存器读取/存储器读取级414 ;执行群集 460执行〃执行级416〃 ;存储器单元470和物理寄存器组单元458执行写回/存储器写入 级418 ;涉及异常处理级422中可以涉及各种单元;以及,隐退单元454和物理寄存器组单 元458执行提交级424。
[0079] 核111可以支持一个或多个指令集(例如,x86指令集(带有与较新的版本一起添 加的某些扩展);位于美国加州桑尼维尔的MIPS Technologies的MIPS指令集;位于美国 加州桑尼维尔的ARM Holdings的ARM指令集(带有诸如NEON之类的可选的额外的扩展)。
[0080] 在某些实现中,核可以支持多线程(执行操作或线程的两个或更多并行组),并可 以以各种方式达到这一目的,包括时间切片多线程、同时的多线程(其中,单个物理核为物 理核同时正在多线程处理的每一个线程提供一种逻辑核)或其组合(例如,时间切片获取 和解码和此后的同时的多线程处理,诸如在丨ntel? Hyperthreading技术中)。
[0081] 尽管寄存器重叠使用是在无序执行的上下文中描述的,但是,应该理解,寄存器重 叠可以用于有序架构中。尽管处理器的所示出的实施例还包括单独的指令和数据高速缓存 单元434/474以及共享的L2高速缓存单元476,但是,替换实施例对于指令和数据两者可以 具有单个内部高速缓存,诸如,例如,1级(LI)内部高速缓存,或多级内部高速缓存。在某些 实施例中,系统可以包括内部缓存和核和/或处理器外部的外部缓存的组合。可另选地,全 部缓存都可以核和/或处理器外部的。
[0082] 在某些实现中,处理器核111可以被设计为无序(000)核,以便通过一旦其操作数 可用,就执行指令,而并非按程序顺序,来改善性能。然而,性能优点可能会被相当大的功率 消耗增大抵消。当有多个执行线程可以供操作系统调度时,使用多个有序核而并非大的无 序核可以改善处理器的能源消耗概况,而不会损害总体性能。如此,为改善处理器的性能和 能源消耗可缩放性,后者可以被设计为支持可变数量的核,这取决于性能需求和可以用来 供操作系统调度的线程的数量。
[0083] 图7描绘了根据本公开的一个或多个方面的示例计算机系统的框图。如图7所示, 多处理器系统700是点对点互连系统,并包括通过点对点互连750耦合的第一处理器770 和第二处理器780。处理器770和780中的每一个都可以通过能够实现基于虚拟机的保护 的视频路径的处理系统100的某个版本来提供,如上文比较详细地描述的。尽管只利用两 个处理器770、780来示出,但是,可以理解,本发明的范围不仅限于此。在其他实施例中,一 个或多个额外的处理器可以存在于示例计算机系统中。
[0084] 处理器770和780被示为分别包括集成存储器控制器单元772和782。处理器770 还包括点对点(P-P)接口 776和778,作为其总线控制器单元的一部分;类似地,第二处理 器780包括P-P接口 786和788。处理器770、780可以使用P-P接口电路778, 788通过点 对点(P-P)接口 750来交换信息。如图7所示,頂C 772和782将处理器耦合到相应的存储 器,即存储器732和存储器734,它们可以是本地连接到相应的处理器的主存储器的部分。
[0085] 处理器770、780中的每一个都可以使用点对点的接口电路776、790、794、798,通 过单个P-P接口 752、754与芯片组786交换信息。芯片组790还可以通过高性能的图形接 口 739与高性能的图形电路738交换信息。
[0086] 共享高速缓存器(未示出)可以被包括在任一处理器中或者两个处理器的外面, 通过P-P互连与处理器相连接,以便如果处理器被置于低功率模式下,处理器中的任何一 个或两者的本地缓存信息可以存储在共享高速缓存器中。
[0087] 芯片组790可以通过接口 796耦合到第一总线716。在一个实施例中,第一总线 716可以是外围组件互连(PCI)总线,或诸如PCI Express总线之类的总线,或另一第三代 I/O互连总线,虽然本公开的范围不仅限于此。
[0088] 如图7所示,各种I/O设备714可以耦合到第一总线716,以及将第一总线716耦合 到第二总线720的总线桥接器718。在一个实施例中,第二总线720可以是低管脚数(LPC) 总线。在一个实施例中,各种设备可以耦合到第二总线720,包括例如键盘和/或鼠标722、 通信设备727和存储单元728 (诸如磁盘驱动器或可以包括指令/代码和数据730的其他 大容量存储设备)。进一步地,音频I/O 724可以耦合到第二总线720。
[0089] 图8描绘了根据本公开的一个或多个方面的示例芯片上系统(SoC)的框图。应用 程序处理器910可以通过能够实现基于虚拟机的保护的视频路径的处理系统100的某个版 本来提供,如上文比较详细地描述的。如由图8所示意地示出的,互连单元902可以耦合 到 :包括一组一个或多个核902A-N和共享高速缓存器单元906的应用处理器910 ;系统代 理单元910 ;总线控制器单元916 ;集成存储器控制器单元914 ;一组或一个或多个媒体处 理器920,可以包括集成的图形逻辑908、用于提供静止和/或视频摄像机功能的图像处理 器924、用于提供硬件音频加速的音频处理器926、以及用于提供视频编码/解码加速的视 频处理器928 ;静态随机存取存储器(SRAM)单元930 ;直接存储器访问(DMA)单元932 ;以 及,用于耦合到一个或多个外部显示器的显示单元940。
[0090] 图10描绘了根据本公开的一个或多个方面的示例计算机系统的框图。处理器 1610可以通过能够实现基于虚拟机的保护的视频路径的处理系统100的某个版本来提供, 如上文比较详细地描述的。
[0091] 由图10所示意地示出的系统1600可以包括实现为1C,其一些部分,单独的电子设 备,或其他模块、逻辑、硬件、软件、固件的组件的任何组合,或,适用于计算机系统中的其组 合,或作为以别的方式包括在计算机系统的机架内的组件。图10的框图旨在示出计算机系 统的许多组件的高级别视图。然而,可以理解,可以省略所示出的某些组件,可以存在额外 的组件,并且在其他实现中可以有所示出的组件的不同的布局。
[0092] 处理器1610可以通过微处理器、多核处理器、多线程处理器、超低电压处理器、嵌 入式处理器,或其他已知处理元件来提供。在所示出的实现中,处理器1610充当主处理单 元,以及用于与系统1600的许多各种组件进行通信的中心枢纽。作为一个示例,处理器 1600可以实现为芯片上系统(SoC)。作为特定的说明性示例,处理器1610包括基于丨ntel? 架构Core?的处理器,诸如i3、i5、i7或位于美国加利福尼亚州圣克拉拉市的英特尔公司 所提供的另一这样的处理器。
[0093] 处理器1610可以与系统存储器1615进行通信。在各实现中,单个存储器设备可以 是不同的封装类型,诸如单管芯封装(SDP),双管芯封装(DDP)或四管芯封装(IP)。在某些 实现中,这些设备可以直接焊接到主板中,以提供较低剖面的解决方案,而在其他实现中, 设备可以被配置为一个或多个存储器模块,这些存储器模块又可以通过给定连接器耦合到 主板。其他存储器实现也是可以的,诸如其他类型的存储器模块,例如,不同的双列直插存 储器模块(DIMM),包括但不限于microDDM、MiniDML在一个说明性示例中,存储器的大 小在2GB和16GB之间,并可被配置成DDR3LM封装或LPDDR2或LPDDR3存储器,其通过球栅 阵列(BGA)焊接到主板中。
[0094] 为提供诸如数据、应用程序、一个或多个操作系统等信息的持久性存储,大容量存 储器1620还可以耦合到处理器1610。在某些实现中,为实现较薄的和较轻的系统设计以及 改善系统响应性,大容量存储器1620可以通过SSD来实现。在其他实现中,大容量存储器 可以主要通过带有较小量的SSD存储器的硬盘驱动器(HDD)来实现,以充当SSD缓存,以在 断电情况下实现上下文状态及其他这样的信息的非易失性存储,以便在系统活动的重新启 动时可以进行快速的通电。
[0095] 也如图10所示出的,闪存设备1622可以例如通过串行外围接口(SPI)耦合到处 理器1610。闪存设备1622可以提供系统软件的非易失性存储器,包括基本输入/输出软件 (BIOS)以及系统的其他固件。
[0096] 在各实现中,系统的大容量存储器可以通过SSD单独地提供或作为带有SSD缓存 的磁盘、光学或其他驱动器来提供。在某些实现中,大容量存储器可以通过SSD来提供或作 为与恢复(RST)缓存模块一起的HDD来提供。SSD缓存可被配置成单级缓存(SLC)或多级 缓存(MLC)选项,以提供响应性的合适的级别。
[0097] 各种输入/输出(IO)设备可以存在于系统1600内,包括例如可以通过在机架的 盖子部分内配置的高清晰度IXD或LED面板提供的显示器1624。此显示器面板还可以提供 触摸屏1625,其在显示器面板上方从外部适应,以便通过用户与此触摸屏的交互,用户输入 可以被提供到系统,以实现所需操作,例如,关于信息显示,访问信息等等。在某些实现中, 显示器1624可以通过显示器互连耦合到处理器1610,该显示器互连可被实现为高性能图 形互连。触摸屏1625可以通过另一互连(在一个实施例中,可以是I2C
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1