显示表面的安全绘制的制作方法

文档序号:13771605阅读:309来源:国知局
显示表面的安全绘制的制作方法

本文通常涉及处理器图形设备,其有时被称为图形处理器或图形处理单元。



背景技术:

处理器图形设备越来越暴露于需要一定程度的安全性的工作负荷。对处理器图形设备的安全性敏感的工作负荷依赖操作系统来提供必要的安全性。然而,越来越多的恶意软件攻击显示这些解决方案不满足多个工作负荷的安全性要求。

可需要图形处理单元上的可信的计算框架的工作负荷的示例包含银行交易(其中浏览器将部分交易卸下到图形引擎)、反病毒引擎(其中部分图案匹配被卸下到图形引擎)、以及医学成像。此外,当存在恶意软件时,许多非安全性工作负荷(例如,计算机辅助设计)需要额外的安全性,并且图形和其它工作负荷需要无障碍的执行。此外,由于图形处理器所实现的功率、效率和性能改进,对安全性敏感的工作负荷被卸下到处理器图形设备。示例可包含密码功能、图案匹配原语和脸部检测算法、以及用于采矿、炼油、财务计算和涉及金钱的其它计算的某些工作负荷。

对安全性敏感的工作负荷可需要处理器图形设备上的可信框架,它不仅执行工作负荷的执行的正确性,也允许图形资产只到授权实体的严格的访问控制。

一般而言,工作负荷的输出需要在显示屏幕上显示。显示引擎负责在屏幕上显示输出缓冲器。显示引擎是相对原始的装置,它不支持具有命令流传送器或支持复杂命令。其主要任务是刮除缓冲器并且将它粘贴在显示屏幕上。因此,缓冲器内容的显示产生恶意干预的机会。

附图说明

相对于以下图来描述一些实施例:

图1是一个实施例的直观图;

图2是根据一个实施例的受保护图形模块的生命周期的图表;

图3是一个实施例的流程图;

图4是安全显示的第一实施例的示意描绘;

图5是第一实施例的流程图;

图6是第二实施例的流程图;

图7是一个实施例的系统描绘;以及

图8是一个实施例的前面正视图。

具体实施方式

受保护图形模块可以将其输出安全地发送到显示引擎。与显示的安全通信可以提供由受保护的图形模块生成的内容对于软件和硬件攻击的机密性级别。

根据一些实施例,可为处理器图形设备定义受保护的执行环境。此框架不只保护工作负荷免受运行在图形处理单元上的恶意软件影响,也保护那些工作负荷免受运行在中央处理单元上的恶意软件影响。此外,可信框架可通过测量用来执行工作负荷的代码和数据结构而促进安全执行的证明。如果此框架或受保护的执行环境的可信计算基础的一部分陷入危险,则可以远程修补那个部分并且在一些实施例中可以遍及认证来远程检验该修补。

参考图1,驻留在处理器图形设备上的受保护的图形模块12(即,PGM1、PGM2和PGM3)包含处理器图形设备中的工作负荷的正确执行所需的代码、数据和状态。类似于非安全图形工作负荷,受保护的图形模块由在中央处理单元(CPU)上运行的软件通过特殊CPU指令来产生。然而,在一些实施例中,受保护的图形模块只可以在图形处理单元上执行。它可具有能力来将执行的正确性主张到远程方。在一个实施例中,模块依赖安全隔离区基础结构来提供此主张。参见公布于2010年5月20日的专利合作条约申请第WO/2010/057065号。

在安全隔离区中,受保护的执行环境建立在应用内部。操作系统使用一组特权指令来构造隔离区。一旦构造了隔离区,则应用可以使用一组无特权指令来进入和退出隔离区。隔离区执行存储器的物理上受保护区域(被称为隔离区页面高速缓存)。硬件确保属于隔离区页面高速缓存的存储器页面只可以被拥有这些页面的隔离区访问,并且也确保恶意特权软件不能以不期望的方式重新引导来源于隔离区的存储器访问。在隔离区内部执行的软件可以验证隔离区由操作系统经由基于硬件的认证而正确地构造。

存储器14中的图形页面高速缓存18保存受保护的图形模块(PGM)12所使用的代码和数据。在一个实施例中,此部分存储器实现在系统动态随机存取存储器(DRAM)中并且由存储器加密引擎加密保护。在又一实施例中,此部分存储器作为静态随机存取存储器(SRAM)或嵌入式DRAM(eDRAM)而实现在处理器封装内部。此部分存储器可由操作系统图形驱动器使用一组特权CPU指令来管理。不可为了读取或写入或执行的目的而访问它们中的任一个。模块12驻留在图形页面高速缓存18内部。在一个实施例中,图形页面高速缓存可与隔离区页面高速缓存16组合。

隔离区10负责创建并且初始化模块12。一旦隔离区10创建并且初始化模块,则处理器图形设备上的各种硬件引擎可以使用具体入口点来进入模块12。此外,在模块启动之后,隔离区自身可以实现安全计算的部分,并且可以经由图形页面高速缓存18与模块通信。在这点上,隔离区10是模块12的中央处理单元(CPU)对应物并且它可以与模块12具有一对多关系。

从开发者的角度,隔离区10和模块12都是可选的实施例。在一些实施例中,应用开发者可决定应用是否需要由隔离区和受保护的图形模块12的组合提供的安全性级别。

因此,在存储器内的可以是隔离区页面高速缓存16、包含模块12和隔离区10的图形页面高速缓存18、以及一个或多个加密表面20(来保存必要的数据和/或指令)。

在图2中示出的处理器图形设备26包含受保护的图形模块12而应用28驻留在CPU24内。CPU 24可包含准时执行引擎(跳动)30和隔离区32。它还可支持内核驱动器34。共享的虚拟存储器36可在中央处理单元24与处理器图形设备26之间共享。共享的系统存储器38可存储隔离区页面高速缓存16和图形页面高速缓存18。

最初,将应用28装入在CPU 24上。该应用典型地是在其自己的处理中装入的环形三个应用。应用创建隔离区32。为隔离区分配的页面除去隔离区页面高速缓存16而被分配。隔离区可包含元数据和元代码来创建受保护的图形模块12。隔离区也包含跳动30用于将模块元代码从高级别语言转换成图形硬件可以识别的二进制格式。隔离区也包含元数据和元代码来创建模块12。

为创建模块12,隔离区从图形工作负荷加载元代码和元数据并且使用适当的加密操作来测量或检验工作负荷。这由图2中的箭头1和2来指示。然后,隔离区建立图形页面高速缓存18中的模块12的执行所需的处理器图形状态和数据结构。

模块调用如下进行。隔离区通过应用来请求内核模式图形驱动器34通过向它提供有关的元数据来执行模块。这由图2中的箭头3来指示。内核模式图形驱动器34(环形零)获取元数据并且按照元数据来建立图形引擎状态(箭头4)。然后,内核图形驱动器经由环形缓冲器37将处理器图形设备指向模块12的入口点(如箭头5所指示的)。内核模式图形驱动器通过适当地修改共享的虚拟存储器36表来将图形页面高速缓存映射到图形地址空间。

处理器图形设备26执行模块12(如箭头6所指示的)。在处理器图形设备26内的图形调度器41通知驱动器34,它然后关闭到为模块12的执行所提供的图形页面高速缓存的访问。当调度模块12来再次执行时,图形驱动器向模块提供图形页面高速缓存访问并且执行模块。在模块完成其执行之后,它将其执行的结果39写入图形页面高速缓存内的输出地址(如箭头6所指示的)。如在模块12的创建期间在元数据中所规定的,然后前面的隔离区读取输出并且将它提供到在隔离区内部执行的中央处理单元代码。

根据一个实施例,模块12可在存储器中具有良好定义的格式并且该格式用于测量模块的独特部件并且绑定它们与结果。微代码在隔离区执行时测量模块并且将加密有符号测量提供到隔离区。隔离区包含模块的测量和隔离区的测量并且组合数据用于使用隔离区认证协议的认证。

在另一实施例中,模块具有任意的格式并且只被隔离区内部的加载器理解。隔离区使用公用密钥密码系统来检验模块BLOB的来源。隔离区的测量暗含地证明了隔离区执行公开验证的事实。

即使以上实施例与处理器图形设备有关,但是这些过程可以适用于包含集成在与中央处理单元相同的芯片上的加密加速器的任何协处理器/加速器/装置。

接着参考图3,在那里描绘的序列可采用软件、固件和/或硬件实现。在软件和固件实施例中,它可由存储在一个或多个非暂时性计算机可读介质(例如磁性、光或半导体存储)中的计算机执行的指令来实现。

序列开始于框40,那里系统启动并且中央处理单元和受保护的图形设备两者配置有受保护的隔离区页面高速缓存。然后,在框42中,中央处理单元根据应用的请求而装载隔离区。隔离区可由处理器中的硬件保护以免受任何不可信的CPU或受保护的图形代码影响。然后,如框44中示出的,隔离区加载页面高速缓存内的受保护的图形模块,将模块代码转换成模块二进制,建立数据并且然后将模块提交到处理器图形设备来执行。

图形调度器或命令流传送器41(其为可信的实体)获得上下文,将它识别为受保护的上下文,设置图形硬件用于受保护的上下文并且从上下文读取状态并开始执行上下文(如在框46中所指示的)。受保护的上下文允许访问隔离区页面高速缓存。然后,在菱形48处检查确定上下文是否导致故障(例如,页面故障、错误配置或访问许可)。如果是,则调度器将中间状态写入加密的存储器缓冲器,禁用范围寄存器,并且加载下一上下文(如在框52中指示的)。然后,操作系统通过清除导致故障的状况来处理故障(如在框54中所指示的)。调度器挑出换出的受保护的图形模块并且将它调度回去(如在框56中所指示的)。然后,流程返回到在菱形48处的检查。

如果上下文不导致故障,则上下文将结果写入隔离区页面高速缓存并且调度器换出上下文,并且清除硬件状态并且挑出下一上下文(如在框58中所指示的)。工作负荷可决定将其结果发送到显示引擎。

调度受保护的图形模式模块的调度器可以被受保护的图形模块信任并且可享受与受保护的图形模块相同的保护或它不能读取或写入受保护的图形模块但可以如黑盒那样调度它。调度器可以是软件调度器或硬件调度器或两者的组合。隔离区基础结构可以是受保护的图形模块的可信创建或执行的一个实施例。受保护的图形模块还可创建在可信的云环境中并且在客户端上执行。

虽然以上论述强调图形装置,然而在其它实施例中,具有可用作计算或安全的卸下装置的计算能力的任何装置可受益于本文描述的原理。在对消费者的分配模块之后,可向模块供应秘密。

根据第一实施例,受保护的音频视频路径(PAVP)硬件可用于实现安全显示(PAVP设计用于保证优质内容重放的安全并且保证屏幕上的显示位图或图像的安全)。受保护的图形模块可以将表面宣布为显示表面。这可以使用与安全表面绑定表链接的表面状态来实现。表面是由图形/显示引擎访问的数据元件。每个表面具有例如位置、格式、大小等关联状态,它由数据结构SURFACE_STATE来规定。图形引擎在被称为表面绑定表的表中保持到表面状态块的指针列表。当访问表面时,通过对表面绑定表的索引来查找其对应状态。属性可被添加到通过表面绑定表而链接的此表面状态。这些属性表明表面是受保护的图形模块显示表面并且密钥与对表面的写入关联。由图形引擎对此表面的写入可以被加密,并且读取可能不被允许或它们应该返回密码文本。这在生成显示表面的图形引擎只需要写入这些表面而不需要读取访问时进行。而且,一个受保护的图形模块能够读取其它受保护的图形模块的显示表面可能是不合需要的。

因此如图4中示出的,受保护的图形模块写入使用密钥K来加密(enc)并且存储在表面上。表面通过状态绑定表中的表面状态而被宣布为显示表面。写入显示表面的任何数据用当前显示上下文的表面加密密钥来得以加密。加密的显示表面可以只被显示引擎读取和解密(如图4中指示的),而不被例如处理器图形(GEN)或任何其它实体读取和解密。加密的显示表面不可被任何其它软件部件(包含其它受保护的图形模块)读取访问。因此,禁止任何软件部件对表面的读取访问或引起返回加密的数据(如图4中指示的)。为了读取数据,数据必须使用加密密钥来解密并且传到显示器。

因此参考图5,序列60可采用软件、固件和/或硬件实现。在软件和固件实施例中,它可以由存储在一个或多个非暂时性计算机可读介质(例如,磁性、光或半导体存储)中的计算机执行的指令来实现。

序列60开始于表面宣布。表面状态链接到安全表面绑定表(如在框62中指示的)。

在表面创建中(如在框64中指示的),写入用与当前显示上下文关联的密钥得以加密的显示表面。当应用需要安全显示时,它创建受保护的音频视频路径(PAVP)上下文,其实质包含将用于保证会话安全的密钥等。类似地,在一个实施例中,显示上下文实质是与已经请求安全地显示表面的应用(或隔离区)关联的显示状态。显示上下文包含用于加密/解密显示表面的密钥。然后,在表面显示中,将显示表面发送到显示器(框66)。显示引擎用显示上下文密钥来解密表面。如在框68中指示的,不允许在图形侧从表面读取或只返回加密的(不可读)数据。

此机制利用现存的受保护的音频视频路径(PAVP)硬件,并且此外,利用此机制,隔离区页面高速缓存不需要分配显示表面。传统上,受保护的音频视频路径技术允许从显示表面读取并且写出显示表面;然而,利用受保护的图形模块,为了确保与其它受保护的图形模块和软件部件的隔离,阻止来自表面的读取或例如通过返回加密的数据而阻止结果。两个密码库可用在显示引擎中以使不与当前PAVP机制干扰并且不对它们使用的密钥执行任何策略或要求。因此,可能有两个不同的密钥库,一个用于PAVP并且一个用于安全绘制。

根据第二实施例,显示“在逻辑上”进入受保护的图形模块。此机制可允许显示引擎在逻辑上进入受保护的图形模块并且使用受保护的图形入口结构在屏幕上显示表面。引入用于显示引擎新的受保护的图形入口结构硬件通用标识符(ID)(HWU_DISP)。受保护的图形入口结构提供到驻留在隔离区页面高速缓存中的表面的指针或图形地址。当软件想要显示受保护的图形模块表面时,软件将显示引擎指向适当的受保护的图形入口结构。显示引擎使用受保护的图形入口结构来作出到受保护的图形模块的入口。然后,显示引擎加载驻留在受保护的图形入口结构中的显示表面的地址。由显示引擎作出的所有访问可服从如以前描述的访问控制机制。因此,此机制包括对访问控制机制的修改来允许显示器访问驻留在隔离区页面高速缓存中的表面。

此机制也提供显示表面的内容的机密性。攻击者不能在不进行检测的情况下修改表面的内容。因此,该解决方案还可提供对显示表面的完整性保护。

期满计数器可嵌入在受保护的图形入口结构中。显示器在每个刷新周期上递减此计数器,并且无论何时计数器到达零时停止显示表面。修改可有必要允许显示器访问驻留在隔离区页面高速缓存中的表面。

为了不影响其它安全隔离区应用从而用完隔离区页面高速缓存,该机制可保证隔离区页面高速缓存的增加。可通过增加路由计数器的芯片上存储或将树级添加到在隔离区页面高速缓存上建立的重放保护树来增加隔离区页面高速缓存大小。为了不增加芯片上存储要求,可通过将附加级添加到重放保护树来增加隔离区页面高速缓存的大小。

在被发送到显示引擎之前,显示表面在合成管理器上工作。合成管理器负责从各种应用接收表面,以特定顺序安排它们,对最终表面添加效果,并且将最终合成表面发送到显示器。虽然合成用本文描述的实施例仍然是可能的,但合成仍然可能是受限的。利用第一实施例,由于读出表面返回加密的数据,所以合成器不能执行在表面的纯文本上工作的操作(例如混叠)。利用第二实施例,通过保证合成器安全可以支持合成,因为合成器将处理纯文本显示表面数据。该保证安全可以通过将合成器封装在隔离区中来完成。合成器可需要能够访问其它受保护的图形模块表面。此访问可需要方法来支持安全以及有效率的隔离区来隔离通信。

在图6中示出的序列可采用软件、固件和/或硬件实现。在软件和固件实施例中,它可由存储在一个或多个非暂时性计算机可读存储介质(例如磁性、光或半导体存储介质)中的计算机执行的指令来实现。序列可存储在处理器图形设备、中央处理单元或其它装置中。

序列开始于受保护的图形入口表面(PGES)提供到隔离区页面高速缓存(EPC)中的表面的指针(如在框70中指示的)。当软件想要显示受保护的图形模块(PGM)的表面时,软件将显示引擎指向适当的受保护的图形入口结构来显示那个表面(如在框72中指示的)。

然后,显示引擎使用受保护的图形入口结构来作出到受保护的图形模块的入口(如在框74中指示的)。显示引擎加载受保护的图形入口结构中的显示表面的地址(如在框76中指示的)。显示器可在每个刷新周期上递减受保护的图形入口结构中的期满计数器(如在框78中指示的)。当计数器到达零时,显示器停止显示表面(如在框80中指示的)。

图7图示系统300的实施例。在实施例中,系统300可以是媒体系统,但是系统300不限于此上下文。例如,系统300可并入到个人计算机(PC)、膝上计算机、超膝上计算机、平板设备、触摸板、便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能装置(例如,智能电话、智能平板设备或智能电视)、移动因特网装置(MID)、通讯装置、数据通信装置等等。

在实施例中,系统300包括耦合到显示器320的平台302。平台302可从内容装置(例如,内容服务装置30或内容输送装置340或其它类似内容来源)接收内容。导航控制器350包括例如可用于与平台302和/或显示器320交互的一个或多个导航特征。以下更详细描述这些部件中的每个部件。

在实施例中,平台302可包括芯片组305、处理器310、存储器312、存储314、图形子系统315、应用316和/或无线电318中的任何组合。芯片组305可提供处理器310、存储器312、存储314、图形子系统315、应用316和/或无线电318之间的互通。例如,芯片组305可包含能够提供与存储314的互通的存储适配器(未描绘)。

处理器310可实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器,可兼容x86指令集的处理器、多核、或任何其它微处理器或中央处理单元(CPU)。在实施例中,处理器310可包括双核处理器、双核移动处理器等等。

存储器312可实现为易失性存储器装置,例如但不限于,随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。

存储314可实现为非易失性存储装置,例如但不限于,磁盘驱动、光盘驱动、磁带驱动、内部存储装置、附属存储装置、闪速存储器、备有电池的SDRAM(同步DRAM)和/或网络可访问存储装置。在实施例中,例如,当包含多个硬驱动时,存储314可包括技术来增加宝贵数字媒体的存储性能增强保护。

图形子系统315可执行用于显示的图像(例如图片或视频)的处理。例如,图形子系统315可以是图形处理单元(GPU)或视觉处理单元(VPU)。模拟或数字接口可用于在通信上耦合图形子系统315和显示器320。例如,接口可以是任何高清晰度多媒体接口、显示端口、无线HDMI、和/或符合无线HD的技术中的任一个。图形子系统315可被集成到处理器310或芯片组305。图形子系统315可以是在通信上耦合到芯片组305的孤立卡。

本文描述的图形和/或视频处理技术可采用各种硬件架构实现。例如,图形和/或视频功能性可被集成在芯片组内。备选地,可使用离散图形和/或视频处理器。作为又一实施例,通用处理器(包含多核处理器)可实现图形和/或视频功能。在另外的实施例中,功能可实现在消费者电子装置中。

无线电318可包含能够使用各种合适的无线通信技术来传送和接收信号的一个或多个无线电。这样的技术可包括跨一个或多个无线网络的通信。示范性无线网络包含(但不限于)无线局域网(WLAN)、无线个人区域网络(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨这样的网络的通信中,无线电318可根据任何版本中的一个或多个可应用标准来操作。

在实施例中,显示器320可包括任何电视型监视器或显示器。例如,显示器320可包括计算机显示屏幕、触摸屏显示器、视频监视器、类似电视的装置和/或电视机。显示器320可以是数字和/或模拟的。在实施例中,显示器320可以是全息显示器。而且,显示器320可以是可接收视觉投影的透明表面。这样的投影可传达各种形式的信息、图像和/或对象。例如,这样的投影可以是移动增强现实(MAR)应用的视觉重叠。在一个或多个软件应用316的控制下,平台302可在显示器320上显示用户接口322。

在实施例中,例如,内容服务装置330可以由任何国家、国际和/或独立服务托管并且因此经由因特网可访问平台302。内容服务装置330可耦合到平台302和/或显示器320。平台302和/或内容服务装置330可耦合到网络360来通信(例如,发送和/或接收)媒体信息到和从网络360。内容输送装置340也可耦合到平台302和/或显示器320。

在实施例中,内容服务装置330可包括有线电视盒、个人计算机、网络、电话、启用因特网的装置或能够输送数字信息和/或内容的器具、以及能够在内容提供商与平台302和/显示器320之间经由网络360或直接地单向或双向通信内容的任何其它类似装置。将意识到,内容可以经由网络360单向和/或双向通信到和从系统300中的任何一个部件和内容提供商。内容的示例可包含任何媒体信息,例如,包含视频、音乐、医学和游戏信息等等。

内容服务装置330接收内容,例如有线电视节目(包含媒体信息、数字信息和/或其它内容)。内容提供商的示例可包含任何有线或卫星电视或无线电或因特网内容提供商。所提供的示例不旨在限制本发明的实施例。

在实施例中,平台302可从具有一个或多个导航特征的导航控制器350接收控制信号。例如,控制器350的导航特征可用于与用户接口322交互。在实施例中,导航控制器350可以是指向装置,它可以是允许用户将空间(例如,连续的和多维的)数据输入到计算机的计算机硬件部件(具体为人机接口装置)。许多系统(例如,图形用户接口(GUI)、以及电视机和监视器)允许用户使用物理手势来控制计算机或电视机以及向计算机或电视机提供数据。

控制器350的导航特征的运动可由指示器、光标、聚焦环或显示器上显示的其它视觉指示符的运动而反应在显示器(例如,显示器320)上。例如,在软件应用316的控制下,位于导航控制器350上的导航特征可映射到在用户接口322上显示的虚拟导航特征。在实施例中,控制器350可以不是单独的部件,而是集成到平台302和/或显示器320。然而,实施例不限于本文示出或描述的元件或上下文。

在实施例中,例如,在启用时,驱动器(未示出)可包括技术来使用户能在初始启动之后通过按钮的触摸来立即打开和关闭类似电视的平台302。当平台“关闭”时,程序逻辑可允许平台302将内容流式传输到媒体适配器或其它内容服务装置330或内容输送装置340。此外,例如,芯片组305可包括支持5.1环绕声音频和/或高清晰度7.1环绕声音频的硬件和/或软件。驱动器可包含用于集成图形平台的图形驱动器。在实施例中,图形驱动器可包括外围部件互连(PCI)快速图形卡。

在各实施例中,可集成系统300中示出的任何一个或多个部件。例如,可集成平台302和内容服务装置330,或可集成平台302和内容输送装置340,或可集成平台302、内容服务装置330和内容输送装置340。在各实施例中,平台302和显示器320可以是集成单元。例如,可集成显示器320和内容服务装置330,或可集成显示器320和内容输送装置340。这些示例不旨在限制本发明。

在各实施例中,系统300可实现为无线系统、有线系统或两者的组合。当实现为无线系统时,系统300可包含适合于在无线共享介质上通信的部件和接口,例如一个或多个天线、传送器、接收器、收发器、放大器、滤波器、控制逻辑等等。无线共享介质的示例可包含无线频谱(例如,RF频谱等)的一部分。当实现为有线系统时,系统300可包含适合于在有线通信介质上通信的部件和接口,例如输入/输出(I/O)适配器、物理连接器(用于连接I/O适配器与对应有线通信介质)、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等等。有线通信介质的示例可包含导线、电缆、金属条、印刷电路板(PCB)、底板、交换机结构、半导体材料、双绞导线、同轴电缆、光纤等等。平台302可包括操作系统370和固件390,其中操作系统370可包括到处理器的接口372并且固件390可包括固件更新模块392。

平台302可建立一个或多个逻辑或物理信道来通信信息。信息可包含媒体信息和控制信息。媒体信息可涉及表示目的是用户的内容的任何数据。例如,内容的示例可包含,来自语音会话的数据、视频会议、流传输的视频、电子邮件(“email”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等等。例如,来自语音会话的数据可以是语音信息、沉默期、背景噪声、舒适噪声、音调等等。控制信息可涉及表示目的是自动系统的命令、指令或控制字的任何数据。例如,控制信息可用于通过系统路由媒体信息,或指示节点以预定方式处理媒体信息。然而,实施例不限于在中示出或描述的元件或上下文。

如以上所描述的,系统300可用变化的物理风格或形状因数来实施。图8图示可实施系统300的小形状因数装置400的实施例。例如,在实施例中,装置400可实现为具有无线能力的移动计算装置。例如,移动计算装置可涉及具有处理系统和移动电源或供应(例如,一个或多个电池380)的任何装置。

如以上所描述的,移动计算装置的示例可包含个人计算机(PC)、膝上计算机、超膝上计算机、平板设备、触摸板、便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视机、智能装置(例如,智能电话、智能平板设备或智能电视)、移动因特网装置(MID)、通讯装置、数据通信装置等等。

移动计算装置的示例也可包含安排为由人穿戴的计算机,例如腕式计算机、手指计算机、戒指计算机、眼镜计算机、背夹式计算机、臂带计算机、鞋式计算机、衣服计算机以及其它可穿戴计算机。例如,在实施例中,移动计算装置可实现为能够执行计算机应用、以及语音通信和/或数据通信的智能电话。虽然一些实施例可用以示例的方式实现为智能电话的移动计算装置来描述,但是可意识到,也可使用其它无线移动计算装置来实现其它实施例。实施例不受限于此上下文。

在一些实施例中,处理器310可与相机323和全球定位系统传感器321通信。在软件和/或固件实施例中,耦合到处理器310的存储器312可存储用于实现图2、图3、图4和图5中示出的序列的计算机可读指令。特别而言,可由存储计算机实现的指令的一个或多个非暂时性存储装置来实现这些序列。

如图8所示,装置400可包括壳体402、显示器404、输入/输出(I/O)装置406和天线408。装置400也可包括导航特征412。显示器404可包括显示用户接口410,并且包括任何合适的显示单元,用于显示适合于移动计算装置的信息。I/O装置406可包括任何合适的I/O装置,用于将信息输入到移动计算装置。I/O装置406的示例可包含字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、摇臂开关、麦克风、扬声器、语音识别装置和软件等等。也可经由麦克风将信息输入到装置400。这样的信息可由语音识别装置数字化。实施例不受限于此上下文。

各实施例可使用硬件元件、软件元件或两者的组合来实现。硬件元件的示例可包含处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等等)、集成电路、专用集成电路(ASIC)、可编程逻辑装置(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体装置、芯片、微芯片、芯片组等等。软件的示例可包含软件部件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、功能、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码片段、计算机代码片段、字、值、符号或任何其组合。确定是否使用硬件元件和/或软件元件来实现实施例可根据任何数量的因素而变化,例如所希望的计算速率、功率电平、耐热性、处理周期预算、输入数据率、输出数据率、存储器资源、数据总线速度和其它设计或性能约束。

至少一个实施例的一个或多个方面可由存储在机器可读介质上的表示性指令来实现,该指令表示处理器内的各种逻辑,当由机器读取时使机器构成逻辑来执行本文描述的技术。这样的表示(被称为“IP核”)可存储在有形的、机器可读介质上并且提供给各种消费者或制造设施来加载到实际作出逻辑或处理器的制作机器。

一个或多个实现的以上描述提供图示和描述,但不旨在是穷尽的或将范围限制到公开的精确形式。修改和变化按照以上教导是可能的或可从本发明的各种实现的实践中获得。

本文描述的图形处理技术可实现在各种硬件架构中。例如,图形功能性可被集成在芯片组内。备选地,可使用离散处理器图形设备。作为又一实施例,可由通用处理器(包含多核处理器)来实现图形功能。

遍及本说明书对“一个实施例”或“一实施例”的提及意味着结合实施例描述的特定特征、结构或特性包含在至少一个实现中。因此,短语“一个实施例”或“在一实施例中”的出现不一定指代相同的实施例。此外,特定特征、结构或特性可以用除所说明的特定实施例以外的其它合适的形式实现并且所有这样的形式可包含在本申请的权利要求内。

虽然已经相对于有限数量实施例来描述了本发明,但是本领域技术人员将意识到根据其的许多修改和变化。旨在所附的权利要求涵盖落入本公开的真正精神和范围的所有这样的修改和变化。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1