具有辅助异步向量处理器的异步处理器的方法和装置技术领域
本发明一般涉及异步电路技术,尤其涉及一种具有辅助异步向量处理器
的异步处理器。
背景技术
高性能的同步数字处理系统利用流水线来增加并行性能和吞吐量。在
同步系统中,流水线导致划分出或细分出许多更小的块或级,并在位于各
块/级之间的寄存器中应用系统时钟。系统时钟启动处理过程以及数据由
一级至另一级的移动,各级中的所述处理必须在一个固定的时钟周期内完
成。当某些级完成处理所花费的时间少于时钟周期时,下一处理级必须等
待-增加了处理延迟(其为附加的)。
相比之下,异步系统(即,无时钟)不利用系统时钟,并且一般而言,
一旦前一级中的处理完成,下一级便开始其自己的处理。异步处理系统具
有一些有益效果或特点。每个处理级可以具有不同的处理延迟,输入数据
可以一经抵达就进行处理,并且仅在有需要的时候消耗功率。
图1示出了现有技术的萨瑟兰(Sutherland)异步微流水线架构100。
所述萨瑟兰异步微流水线架构是使用穆勒-C(Muller-C)元件构建的握手
协议来控制微流水线构件的异步微流水线架构的一种形式。该架构100包
括通过触发器或锁存器104(例如,寄存器)依次相连的多个计算逻辑102。
控制信号通过穆勒-C元件106在计算块之间传递并通过延迟逻辑108进
行延迟。描述这种架构100的进一步信息由伊万·萨瑟兰(IvanSutherland)
发表在1989年6月的ACM通讯(CommunicationsoftheACM)第32卷
第6期第720-738页,ACM纽约,美国纽约,其通过引用结合于本申请
中。
现在参考图2,其示出了同步系统200的典型部分。该系统200包括
用于为逻辑块210的输出信号(数据)206定时的触发器或寄存器202,204。
在图2的右侧,示出了亚稳态概念的图示。为了避免亚稳态,必须考虑设
置时间和保持时间。换言之,在设置时间和保持时间过程中,数据必须是
有效的并被保持,否则可能会发生设置违例212或保持违例214。如果发
生任一所述违例,同步系统则可能会出现故障。亚稳态概念也适用于异步
系统。因此,设计异步系统以使其避免亚稳态是很重要的。此外,正如同
步系统一样,异步系统也需要处理各种潜在的数据/指令冲突,并且应包
括检测和解决这些冲突的绕开机构和流水线互锁机构。
因此,需要稳定且能够检测并解决潜在冲突的异步处理系统、异步处
理器以及异步处理方法。
发明内容
根据一实施例,提供了一种异步处理系统,包括:异步标量处理器和耦
合到所述标量处理器的异步向量处理器。所述异步标量处理器用于对输入数
据执行处理功能并输出指令。所述异步向量处理器用于响应于从所述标量处
理器接收的超长指令字(VLIW)执行处理功能。所述VLIW包括第一部分
和第二部分,至少所述第一部分包括向量指令。
在另一实施例中,提供了一种异步处理系统的操作方法,该异步处理系
统包括异步标量处理器和耦合到该异步标量处理器的异步向量处理器。所述
方法包括:在所述标量处理器对输入数据执行处理功能,并且向所述向量处
理器发送超长指令字(VLIW)。所述VLIW包括第一部分和第二部分,至
少所述第一部分包括向量指令。所述方法包括:对所接收的VLIW执行处理
功能。
附图说明
为了更全面地理解本发明及其优点,现结合说明书附图进行以下描述,
其中相同的附图标记指示相同对象,其中:
图1示出了现有技术的一种异步微流水线架构;
图2为示出了一种同步系统中亚稳态概念的方框图;
图3A示出了根据本发明公开实施例的一种异步处理系统;
图3B示出了根据本发明公开实施例的图3A所示的异步标量处理器的示
例的方框图;
图3C示出了根据本发明公开实施例的图3A所示的异步向量处理器的示
例的方框图;
图4示出了根据本发明公开实施例的一种由两个标量指令形成的向量处
理器VLIW指令的示例;
图5示出了根据本发明公开实施例的图3C所示的向量指令提取块的示例
的方框图;
图6示出了根据本发明公开实施例的一种令牌环架构的示例;
图7示出了根据本发明公开实施例的一种异步处理器架构的示例;
图8示出了根据本发明公开实施例的在ALU内进行选通的基于令牌的流
水线;
图9示出了根据本发明公开实施例的用于ALU间令牌传递系统的基于令
牌的流水线;
图10示出了一种可在其中使用异步处理器和处理系统的通信系统的示
例;以及
图11A和图11B示出了一种可在其中使用异步处理器和处理系统的设备
的示例。
具体实施方式
异步技术旨在消除同步技术对全局时钟树的需求,该全局时钟树不仅大
量消耗芯片能量和芯片面积,同时也降低了电路较快部分的速度(S)以匹配
较慢部份(即,最终时钟树速率取决于电路最慢部分)。为了去除时钟树(或
使时钟树最小化),异步技术需要一种特殊的逻辑来实现两个连续的无时钟
处理电路之间的握手协议。一旦无时钟处理电路完成其操作并进入稳定状态,
则触发一个信号(例如,“请求”信号),并下发给其后续电路。如果后续
电路已准备好接收数据,则后续电路向前述电路发送信号(例如,“ACK”
信号)。虽然这两个电路的处理延迟是不同的,并随时间而变化,但握手协
议确保了电路或电路级联的正确性。
Hennessy和Patterson为流水线中的指令会产生错误回复这种情况创造了
术语“冲突”。当两个指令可能试图同时使用相同资源的时候,会发生结构
冲突。当盲目调度的指令尝试在寄存器文件中的数据可用之前使用该数据的
时候,会发生数据冲突。
参照图3A,示出了根据本发明的一种异步处理系统300的方框图。所述
系统300包括异步标量处理器310、异步向量处理器330、缓存控制器320和
L1/L2缓存存储器340。应理解,术语“异步处理器”可以指处理器310、
处理器330或者二者的组合。虽然仅示出了一个处理器310、330,处理系统
300可以包括这些处理器中的多个。此外,应理解,每个处理器中可以包括
多个CPU、控制单元、执行单元和/或ALU等。例如,异步标量处理器310
可以包括多个执行单元,其中每个执行单元具有所需数量的流水线级。在一
个示例中,处理器310可以包括16个执行单元,且每个执行单元具有五个级。
类似地,异步向量处理器330可以包括多个执行单元,且每个执行单元具有
所需数量的流水线级。
L1/L2缓存存储器340可以细分为L1和L2缓存,并且还可以细分为指
令缓存和数据缓存。同样地,缓存控制器320可以按功能进行细分。
现在参考图3B,其更详细地示出了图3A中所示的异步标量处理器310
的方框图。异步标量处理器310包括耦合到资源总线3112的寄存器文件3102。
标量处理器310还包括指令调度器3105、多个CPU(也称为执行单元(XU))
3122和交叉总线3124。如前所述,异步标量处理器310耦合到缓存控制器
320和/或L1/L2缓存340,以及异步向量处理器330。
指令调度器3105用于调度一个或多个指令并驱动多个CPU3122。当指
令正在由指定CPU执行时,指令调度器3105用于将另一指令调度给该指定
CPU(例如,预取其它指令)。每个CPU的预取指令存放在相应的CPU指
令寄存器3114中。
指令调度器3105包括指令定时历史表3115以及反馈引擎3120。指令调
度器3105用于解码从存储器/缓存接收到的指令,确定该指令的定时,基于
历史表3115计算数据相关性,并更新历史表3115。例如,反馈引擎3120用
于从存储器和/或缓存接收指令,解码接收到的指令,并通过历史表3115检
测数据相关性。举例说明,反馈引擎3120用于访问历史表3115,以确定该
数据是否在交叉总线3124上或在寄存器文件3102中。为了确定这一点,反
馈引擎3115可以追踪寄存器文件3102的指定寄存器最后修改的时间。这个
时间可以存储在历史表3115中。
交叉总线3124用于解决数据冲突,并通过从指定CPU访问寄存器写入
操作的结果来提供寄存器文件3102的旁路,而不必从寄存器文件3102中读
取寄存器写入操作的结果。
多个CPU3122由令牌环3125连接。令牌环3125用于通过沿令牌信号路
径将给定令牌从一个处理组件传播给其它处理组件来解决公共资源的结构冲
突。
现在参考图3C,其更详细地示出了图3A中所示的异步向量处理器330
的方框图。本发明的各方面提供了包括异步向量协处理器的无时钟异步处理
器体系的架构和技术。
异步向量处理器330包括寄存器文件3302、乘法/累加(MAC)单元3304、
算术逻辑单元(ALU)3306、特殊的寄存器文件3308和耦合到公共资源多路
复用器3312的查找表(LUT)3310。向量处理器330还包括输入FIFO3314、
指令预解码器3316、预加载模块3318、反馈引擎3320、多个CPU(也称为
向量执行单元(VXU))3322和VXU多路复用器(VMUX)3324。如前所
述,异步向量处理器330耦合到缓存控制器320和/或L1/L2缓存340,以及
异步标量处理器310。
向量处理器330操作超长指令字(VLIW)。图4示出了一种由两个标量
指令N和N+1形成向量处理器VLIW指令3200的示例。如图所示,VLIW
指令3200包括64比特和3个时隙。VLIW指令在64比特前加有前缀“11”。
每个时隙包含可以并行执行的“子”指令。每个“子”指令是单独的指令、
多数据(SIMD)指令。例如,第一时隙3202(即“时隙-0”)是支持向量加
载/存储、向量ALU、MOVE和CONV、特殊寄存器读/写、查找表(LUT)
和短标量指令(SSI)的23位时隙。第二时隙3204(例如,“时隙-1”)是
支持向量MUL/MAC指令的16位时隙,第三时隙3206(例如,“时隙-2”)
是类似于第一时隙3202的23位时隙。对于时隙-0和时隙-2,MSB为0时,
SSI嵌入子指令内。向量引擎指令3200中的未使用时隙可填充NOP指令。如
图所示,向量引擎指令3200内的指令仅使用62比特。两个最高有效位(MSB)
3210用于区分VLIW与纯标量指令。
这些VLIW指令由从指令缓存中读取标准指令的标量处理器310产生。
标量处理器310通过执行特定解码功能(例如,加载/存储指令的地址计算),
并向向量处理器330提供相关联的标量数据和/或存储器地址以生成VLIW指
令令。向量处理器VLIW指令的执行独立于标量处理器指令的执行。根据这
些指令,向量处理器330可以将执行结果返回给标量处理器310。
用于追踪目的的信息也可以随VLIW指令发送至向量处理器330。该追
踪信息有助于识别启动VLIW和相关的程序计数器先进先出(FIFO)指针的
标量处理器执行单元对,参见下文中结合图5的详细描述。该追踪信息还有
助于指示向量处理器330返回给标量处理器310的任何数据。
输入FIFO3314存储来自标量处理器310的VLIW指令和标量寄存器内
容。其还接收来自标量处理器310的其它信息,例如标量执行单元ID、LOAD
指令和SSI的PCFIFO计数和指示符。只要输入FIFO3314不为空,指定VXU
3322就可以从输入FIFO3314中读取指令。只要输入FIFO3314未满,输入
FIFO3314将继续从标量处理器3100接收VLIW指令。当VLIW指令占用最
后一个存储时隙时,输入FIFO将被填满。输入FIFO3314将通知标量处理器
310不再给向量处理器310发送VLIW指令。换言之,即使标量处理器310
内的执行单元接收到向量处理器令牌,它将保留该令牌直到来自输入FIFO
3314的变满通知被删除。
当VLIW指令从标量处理器310到达输入FIFO3314时,解除输入FIFO
空信号的有效状态(de-asserted)。当指定VXU3322从输入FIFO读取最后
一个VLIW指令时,激活输入FIFO空信号的有效状态(asserted)。
指令预解码器3316对VLIW指令执行一些预解码功能,例如分析指令类
型并确定VLIW内是否存在任何SSI或标量指令。向预加载模块3318发送加
载(LOAD)请求,该预加载模块3318发送地址、请求和其它信息给缓存控
制器320。缓存控制器320从L1/L2缓存340中请求该数据。并且,缓存控
制器320向请求该加载的指定VXU3322发送数据。
反馈引擎3320负责确定指令的输入参数的来源。输入参数可以来自向量
寄存器和VMUX3324。为了确定这一点,反馈引擎3320追踪每个向量寄存
器最后修改的时间。这个时间可以存储在历史表中。历史表中的每个表项可
以对应于一个向量寄存器,并且可以包含指定向量寄存器最后修改的时间。
应理解,输入FIFO3314、指令预编码器3316、预加载模块3318和反馈
引擎3320可以统称为向量处理器接口(VPI)或向量指令提取(VIF)块350。
当指定VXU3322读取VLIW指令时,时间增加。基于所读取的指令,
VFB指向VR表项并提取其最后一次修改的时间。然后将最后一次修改时间
与指令执行的当前时间进行比较。如果差值等于或小于6(所示的VXU的数
目),则意味着VMUX3324中指定向量寄存器的内容可用。否则,当时间
差值大于6时,指令必须直接从向量寄存器中检索参数。
VXU3322也可按照与向量寄存器相类似的方式,使用特殊寄存器3308
(选择/布尔(Boolean)寄存器)。反馈引擎3320确定是否应从VMUX3324
或指定的特殊寄存器3308中读取特殊寄存器3308的输入参数。
VXU3322监督向量处理器330的操作并控制向量处理器330内所有的令
牌和脉冲发生。指定VXU3322在执行当前VLIW指令时,从反馈引擎3320
中接收VLIW指令。根据嵌入在VLIW指令中的具体指令,指定VXU3322
从多个可能的源头收集输入操作数。指令由指定VXU或其它计算资源来执
行。
令牌流过各VXU3322。在所示实施例中,向量处理器330中共有6个相
同的VXU。每个VXU3322用于执行一个VLIW指令内的三个子指令,每个
时隙执行一个子指令。每个时隙有其自己的解码器。各所述VXU3322的输
出被耦合到VMUX3324。这使得其它VXU一旦做好准备就能使用这些向量
输出。
VXU3322的代表功能包括:为向量处理器的操作生成异步脉冲;执行可
以分成两个独立的64位部分的简单的128位SIMD操作;管理令牌的流动;
执行不使用对齐寄存器的向量加载/存储指令;执行一些最常用的和非计算密
集型的指令;在一个VLIW指令中支持三个独立的指令;解码每个指令并生
成用于在VXU中执行的内部控制信号;每个时隙支持多达三个输入向量寄存
器和一个输出向量寄存器;并支持通过寄存器返回端口向量寄存器回写。
仍参考图3C,向量处理器330包括多种接口或端口。这些接口或端口包
括指令端口3402、复位和异常端口3404、加载数据端口3406、存储数据端
口3408和寄存器返回端口3410。
标量处理器310和向量处理器330之间通过复位和异常端口3404交换复
位指示或异常报告。当用户复位标量处理器310时,标量处理器310通过复
位和异常端口3404将复位信号传递到向量处理器330。类似地,向量处理器
330使用复位和异常端口3404将异常信息返回给标量处理器310。此信息可
用来识别导致异常的指令。
标量处理器330和向量引擎处理器330之间通过加载数据端口3406交换
加载操作。向量处理器330用于生成地址/宽度请求并通过存储数据端口3408
向缓存控制器320和L1/L2缓存340发送该请求。
寄存器返回端口3410向寄存器提供对标量处理器310中的寄存器的回
访。向量处理器330执行的计算结果可通过寄存器返回端口3410反馈给标量
处理器310,并进入标量寄存器中。寄存器返回端口3410将值返回给标量处
理器310中启动VLIW的执行单元对。向量处理器330内部的寄存器返回令
牌控制对访问寄存器返回端口3410的访问,以避免指令竞争。
现在参考图5,其更详细地示出了示例性的向量处理器接口(VPI)或向
量指令提取(VIF)块350。如前所述,VIF块350包括输入FIFO3314、指
令预解码器3316、预加载模块3318以及反馈引擎3320。VIF块350与标量
处理器310连接并接收用于向量处理器330的指令。如图所示,将第一标量
执行单元3502生成的第一标量指令3512与第二执行单元3504生成的第二标
量指令3514相结合以形成一条VLIW指令3520。VIF块350存储所接收的
VLIW和输入FIFO3314中与其相关联的信息,并且根据请求将它们发送给
指定VXU3322。在指定VXU3322准备好操作加载指令之前,VIF块350将
向量加载地址提取至缓存控制器320,以预先启动加载操作。VIF块350还通
过指令预解码器3316对VLIW指令中的多个指令进行预处理,以确定在何处
检索输入操作数。加载模块3318为缓存控制器320提取向量加载地址,以进
行数据相关性解析。
图6示出了作为图1所示架构的替换方案的一种令牌环架构600的示例。
这种架构的组件由芯片实现的标准函数库所支持。例如,令牌环架构600包
括令牌处理逻辑单元610。令牌处理逻辑610包括令牌感测锁存逻辑612和
可变延迟链614。在一些实施例中,令牌处理逻辑单元610还可以包括脉冲/
激活生成逻辑616。令牌处理逻辑单元610可以包括用于检测令牌接收的任
意适当电路。令牌处理逻辑单元610用于沿令牌信号路径将令牌从一个处理
组件传播到其它处理组件。
正如上述图1所描述的,萨瑟兰异步微流水线架构需要由非标准穆勒-C
元件实现的握手协议。为了避免使用穆勒-C元件(如图1中所示),采用一
系列令牌处理逻辑单元来控制不同计算逻辑(未示出)的处理,例如芯片上
的处理单元(例如,ALU)或者其它功能计算单元,或者控制计算逻辑对诸
如寄存器或存储器等系统资源的访问。为了克服某些计算逻辑的较长延迟,
将令牌处理逻辑单元610复制几份拷贝并设置成如620中所示的串联的令牌
处理逻辑单元。串联620中的每个令牌处理逻辑单元610控制一个或多个令
牌信号630(与一个或多个资源相关联)的传递。通过串联620中的令牌处
理逻辑单元传递的令牌信号630形成令牌环640。令牌环640控制计算逻辑
(未示出)对与该令牌信号相关联的系统资源(例如,存储器、寄存器)的
访问。令牌处理逻辑按顺序接受、保持并传递彼此间的令牌信号630。当令
牌信号630由令牌处理逻辑单元610保持时,与该令牌处理逻辑单元相关联
的计算逻辑被授权独占访问对应于该令牌信号的资源,直到该令牌信号被传
递给该令牌环中的下一令牌处理逻辑单元。保持并传递令牌信号使计算逻辑
终止对于对应的资源的访问或使用,本文中称其为对令牌的消耗。一旦令牌
被消耗,其由给定令牌处理逻辑单元释放给该令牌环中的后续令牌处理逻辑
单元。
图7示出了一种异步处理器架构3101。该架构包括如上述图6所示的令
牌环架构中并联的多个自定时(异步)算术逻辑单元(ALU)3122。每个ALU
3122可以对应于图6所示的令牌处理逻辑单元610。异步处理器架构3101还
包括:反馈引擎3120、指令/定时历史表3115、寄存器(存储器)3102和交
叉开关3124,其中所述反馈引擎3120用于在ALU3122之间恰当地分配输入
指令,所述指令/定时历史表3115能够被反馈引擎3120访问以便确定指令的
分配,所述寄存器(存储器)3102能够被ALU3122访问,所述交叉开关3124
用于在ALU3122之间交换所需信息。所述历史表3115用于指示传输到处理
器系统的多条输入指令之间的定时和相关性信息。来自指令缓存/存储器的指
令由反馈引擎3120接收,该反馈引擎利用历史表3115检测或计算数据相关
性并确定指令时序。反馈引擎3120对每条指令进行预解码以判断该指令需要
多少输入操作数。之后,反馈引擎3120查找历史表3115以查明该片数据是
否在交叉开关3124上或寄存器文件3102上。如果数据是在交叉总线3124上
找到的,则反馈引擎3120计算是哪个ALU产生的数据。将该信息标记为分
配给ALU3122的指令。反馈引擎3120也相应地更新历史表3115.
图8示出了在ALU内进行选通的基于令牌的流水线,本文中也称为ALU
内令牌选通系统(tokengatingsystem)2800的基于令牌的流水线。ALU内令
牌选通系统2800包括多个令牌,该多个令牌包括:与开始和解码指令相关联
的发射令牌2802、与从寄存器文件读取数值相关联的寄存器访问令牌2804、
与程序计数器跳转相关联的跳转令牌(jumptoken)2806、与访问存储器相关
联的存储器访问令牌2808、与读取下一条指令相关联的指令预取令牌2810、
与使用其它资源相关联的其它资源令牌2812以及与寄存器和存储器提交相
关联的提交令牌(committoken)2814。
按照流水线的给定顺序采用指定令牌来对其它指定令牌进行选通。这意
味着,当指定令牌经过ALU时,允许令牌环架构中的该同一ALU随后对第
二指定令牌进行处理并传递。换言之,ALU释放一个令牌成为以该给定顺序
消耗(处理)该ALU中另一令牌的条件。
图8中示出了令牌选通关系的一个具体示例。本领域技术人员应理解可
以使用其它令牌选通关系。在所示示例中,发射令牌(L)2802选通寄存器
访问令牌(R)2804,寄存器访问令牌(R)又依次选通跳转令牌(PC令牌)
2806。跳转令牌2806选通存储器访问令牌(M)2808、指令预取令牌(F)
2810以及可能使用的其它可能的资源令牌2812。这意味着,令牌M2808、
令牌F2810和其它资源令牌2812只能在传递跳转令牌后由ALU消耗掉。这
些令牌选通提交令牌(W)2814到寄存器或存储器。提交令牌2814在本文中
也称为一种用于写入指令的令牌。提交令牌2814依次选通发射令牌2802。
来自选通令牌(流水线中的一令牌)的选通信号被用作传输到选通令牌(流
水线下一顺序中的令牌)的消耗条件逻辑的输入。例如,当发射令牌(L)2802
被释放给下一ALU时,向寄存器访问或读取令牌(R)2804产生激活信号
(activesignal)。这确保了直到发射令牌2802真正发射指令时,任意ALU
才读取寄存器文件。
图9示出了ALU间令牌传递系统2900的基于令牌的流水线。ALU令牌
间传递系统2900包括第一ALU2902和第二ALU2904。消耗掉的令牌信号
向公共资源触发脉冲。例如,第一CPU2902中的寄存器访问令牌2804向寄
存器文件(未示出)触发脉冲。该令牌信号在释放给下一ALU(例如,第二
ALU2904)之前被延迟这样一段时间,即,第一ALU2902和第二ALU2904
之间的公共资源(例如,寄存器文件)上没有发生结构冲突。这些令牌不仅
保护多个ALU免于按照程序计数器(PC)的顺序开始并提交(或写入)指
令,也避免了多个ALU之间的结构冲突。
图10示出了可用于实现本文所公开的设备和方法的通信系统1400的示
例。通常,系统1400能够使多个无线用户发送并接收数据和其它内容。系统
1400可以实现一种或多种信道接入方法,例如,码分多址(CDMA)、时分
多址(TDMA)、频分多址(FDMA)、正交FDMA(OFDMA)或单载波
FDMA(SC-FDMA)。
在本示例中,通信系统1400包括用户设备(UE)1410a-1410c、无线接
入网络(RAN)1420a-1420b、核心网络1430、公共交换电话网络(PSTN)
1440、因特网1450和其它网络1460。虽然图10中示出了一定数量的这些组
件或元件,但是系统1400中可以包括任意数量的这些组件或元件。
UE1410a-1410c用于在系统1400中操作和/或通信。例如,UE
1410a-1410c用于发送和/或接收无线信号或有线信号。每个UE1410a-1410c
表示任何合适的终端用户设备,并且可以包括这样的装置例如(或可以称为),
用户设备/设备(UE)、无线发射/接收单元(WTRU)、移动站、固定或移
动用户单元、寻呼机、蜂窝电话、个人数字助理(PDA)、智能电话、笔记
本电脑、计算机、触控板、无线传感器或消费电子设备。
这里的RAN1420a-1420b分别包括基站1470a-1470b。每个基站
1470a-1470b设置成与一个或多个UE1410a-1410c无线连接,以便能够访问
核心网络1430、PSTN1440、因特网1450和/或其它网络1460。例如,基站
1470a-1470b可以包括(或者是)几个众所周知的设备中的一种或多种,例如:
基站收发台(BTS)、基站(NodeB)、演进型基站(eNodeB)、家庭NodeB、
家庭eNodeB、站点控制器、接入点(AP)或无线路由器、或服务器、路由
器、交换机、或其它具有有线或无线网络的处理实体。
在图10所示示例中,基站1470a形成RAN1420a的一部分,RAN1420a
可以包括其它基站、元件和/或设备。同样,基站1470b形成RAN1420b的一
部分,RAN1420b可以包括其它基站、元件和/或设备。每个基站1470a-1470b
适于发送和/或接收某一特定地理区域或范围内的无线信号,有时称为“小
区”。在一些实施例中,可以采用多输入多输出(MIMO)技术,其中每个
小区具有多个收发器。
基站1470a-1470b利用无线通信链路通过一个或多个空中接口1490与一
个或多个所述UE1410a-1410c进行通信。空中接口1490可以利用任何适当
的无线接入技术。
设想所述系统1400可以使用多信道访问功能,包括如上所述的方案。在
具体实施例中,基站和UE实现LTE、LTE-A和/或LTE-B。当然,也可以使
用其它多址方案和无线协议。
RAN1420a-1420b与核心网络1430进行通信以提供语音、数据、应用、
网络电话(VoIP)或其它服务给UE1410a-1410c。可以理解的是,RAN
1420a-1420b和/或核心网络1430可以与一个或多个其它RAN(未示出)直接
或间接通信。核心网络1430还可以作为访问其它网络(诸如PSTN1440、因
特网1450和其它网络1460)的网关。此外,部分或全部UE1410a-1410c可
以包括采用不同无线技术和/或协议在不同无线链路上与不同无线网络进行
通信的功能。
虽然图10示出了通信系统的一个示例,但可以对图10进行各种改变。
例如,通信系统1400可以包括任意数量的UE、基站、网络或任何合适配置
的其它组件,并且还可以包括本文中任意附图所示的EPC。
图15A和图15B示出了可以实现本发明的方法和教导的设备的示例。具
体地,图11A示出了示例性UE1410,图11B示出了示例性基站1470。这些
组件可以用于系统1400或任何其它合适的系统中。
如图11A中所示,UE1410包括至少一个处理单元1500。处理单元1500
实现UE1410的各种处理操作。例如,处理单元1500可以执行信号编码、数
据处理、功率控制、输入/输出处理或任何其它能够使UE1410在系统1400
中操作的功能。处理单元1500还支持上文中详细描述的方法和教导。每个处
理单元1500包括用于执行一个或多个操作的任何合适的处理或计算设备。例
如,每个处理单元1500可以包括微处理器、微控制器、数字信号处理器、现
场可编程门阵列或专用集成电路。处理单元1500可以是异步处理器310,330
或本文中所描述的处理系统300。
UE1410还包括至少一个收发器1502。收发器1502用于调制至少一个天
线1504所发送的数据或其它内容。收发器1502还用于解调所述至少一个天
线1504所接收的数据或其它内容。每个收发器1502包括任何用于生成以无
线方式接收的无线传输和/或处理信号的信号的合适结构。每个天线1504包
括任何用于发送和/或接收无线信号的合适结构。UE1410中可以使用一个或
多个收发器1502,UE1410中可以使用一个或多个天线1504。虽然收发器1502
示为单个功能单元,但是也可以采用至少一个发送器和至少一个独立的接收
器来实现。
UE1410还包括一个或多个输入/输出设备1506。输入/输出设备1506有
助于与用户的交互。每个输入/输出设备1506包括任何用于向诸如扬声器、
麦克风、小键盘、键盘、显示器或触摸屏等用户提供信息或从中接收信息的
合适结构。
此外,UE1410包括至少一个存储器1508。存储器1508存储由UE1410
使用、生成或收集的指令和数据。例如,存储器1508可以存储由处理单元
1500执行的软件或固件指令以及用于降低或消除输入信号中的干扰的数据。
每个存储器1508包括任何合适的易失性和/或非易失性存储和检索设备。可
以使用任何合适类型的存储器,例如,随机存取存储器(RAM)、只读存储
器(ROM)、硬盘、光盘、用户身份识别(SIM)卡、记忆棒、安全数字(SD)
存储卡等等。
如图11B所示,基站1470包括至少一个处理单元1550、至少一个发送
器1552、至少一个接收器1554、一个或多个天线1556、一个或多个网络接
口1560和至少一个存储器1558。处理单元1550实现基站1470的各种处理
操作,例如信号编码、数据处理、功率控制、输入/输出处理或任何其它功能。
处理单元1550还可以支持上文中详细描述的方法和教导。每个处理单元1550
包括用于执行一个或多个操作的任何合适的处理或计算设备。例如,每个处
理单元1550可以包括微处理器、微控制器、数字信号处理器、现场可编程门
阵列或专用集成电路。处理单元1550可以是本文中所描述的异步处理器310,
330或处理系统300。
每个发送器1552包括任何用于生成向一个或多个UE或其它设备无线传
输的信号的合适结构。每个接收器1554包括任何用于处理从一个或多个UE
或其它设备无线接收的信号的合适结构。虽然至少一个发送器1552和至少一
个接收机1554示为分离的部件,但是可以组合成收发器。每个天线1556包
括任何用于发送和/或接收无线信号的合适结构。共用天线1556在这里示意
为耦合到发送器1552和接收器1554,可以将一个或多个天线1556耦合到发
送器1552,可以将一个或多个单独的天线1556耦合到接收器1554。每个存
储器1558包括任何合适的易失性和/或非易失性存储和检索设备。
本领域技术人员已知关于UE1410和基站1470的其它细节。因此,为了
清楚起见,这里对这些细节进行了省略。
在一些实施例中,一个或多个设备的部分或者全部功能或进程由计算机
程序实现或支持,该计算机程序由计算机可读程序代码形成并且包含在计算
机可读介质中。短语“计算机可读程序代码”包括任何类型的计算机代码,
包括:源代码、目标代码和可执行代码。短语“计算机可读介质”包括任何
能够由计算机访问的介质,例如,只读存储器(ROM)、随机存取存储器
(RAM)、硬盘驱动器、光盘(CD)、数字视频光盘(DVD)或者任何其
它类型的存储器。
阐述一下本专利文件中使用的特定词语和短语的定义是非常有利的。术
语“包括”和“包含”及其衍生词是指没有限制的包括。术语“或”是指包
含在内的,意味着和/或。短语“与...相关联”和“与其相关联”及其衍生词
是指包括、被包括在内、与...互连、包含、被包含在内、连接到或与…连接、
耦合到或与…耦合、与…通信、与…配合、交织、并列、与…邻近、绑定到
或与…绑定、具有、具有...的属性等等。
尽管本发明已经描述了一些实施例和通常相关联的方法,本领域技术人
员可以对这些实施例和方法进行显而易见的改变和变换。相应地,示例性实
施例的上述描述并不限定或限制本发明。在不偏离所附权利要求所限定的本
发明精神和范围的前提下,可以进行其它改变、替换和变换。