用于应对通用处理器在实现算法上的效率低下的设备和方法

文档序号:5831137阅读:202来源:国知局
专利名称:用于应对通用处理器在实现算法上的效率低下的设备和方法
用于应对通用处理器在实现算法上的效率低下的设备和方法
相关申请的交叉引用
本申请根据35 U.S.C. § 119(e)要求于2006年6月21日提交并已转让给本申请 受让人的题为"Methods for Coping with Inefficiency from General Purpose Processors in Implementing Signal Detection Algorithms (用于应对通用处理器在 实现信号检测算法上的效率低下的方法)"的临时美国专利申请No. 60/815,675的
优先权,其公开整体被明确援引纳入于此。
祖旦 冃足
1. 领域
本文中所描述的方法和设备一般涉及应对和补偿诸如在实现信号处理和类似 算法时,尤其是在实现用于定位应用的信号检测算法时在通用处理器中遭遇的效率低下。
2. 背景信息
诸如移动站等许多设备包括用于实现诸如用于检测无线信号等的算法之类的 算法的电路。当实现诸如信号检测算法之类的算法时,需要用低等待时间、高中断 能力以及高带宽来处理。因此,这些算法常规地是使用由定制微控制器代替通用处 理器控制的专用硬件块来实现的。
这样的常规设备的一个示例在

图10中示出,图10示出用于在移动站等中使 用的典型常规电路1000,其具有由定制微控制器Pmicro 1004控制的专用硬件块S 1006。这样的定制微控制器一般被称为数字信号处理(DSP)处理器、调制解调器、 调制解调器DSP、处理器、搜索引擎等等。电路1000典型地包括诸如Pmacro 1002 之类的通用处理器以经由总线/存储器接口 1014向Pmicro 1004提供控制信号或提 供Pmicro 1004的控制。这些控制信号典型地是高级指令。Pmicro 1004对专用硬件 块S 1006的控制是经由接口 1018的。
该常规设备的定制微控制器Pmicro 1004是为其应用而专门设计的(专用的)。定制微控制器Pmicro 1004被配置成使用专门指令来控制专用硬件块S 1006。 Pmicro 1004典型地被配置成维持高中断速率并且能用低等待时间和高带宽与专用 硬件块S 1006通信。这部分是由于Pmicro 1006具有高度集成设计这一事实。此安 排在诸如信号检测之类的数字信号处理中尤为有用。
然而,有数个源自于在这些类型的应用中使用诸如Pmicro 1004之类的定制微 控制器的问题和缺点。例如,这样的定制设备在致使较高制造成本、复杂性等的管 芯尺寸方面具有高实现成本。诸如Pmicro 1004之类的定制微控制器使用的代码的 维护和开发也会增加成本。具体而言,这样的代码维护和开发需要专门技能。这些 技能可能涉及使用定制微控制器的实际目的,包括例如定制微控制器的定制汇编编 程和定制微控制器的基础设施。
实现成本可以通过消除定制微控制器来减少。在没有定制微控制器的情况下, 电路1000可能必须直接从通用处理器控制专用硬件块S 1006。然而,由通用处理 器控制可能有显著问题和缺点,包括高等待时间、低可维持中断速率以及低通信带 宽,如此使得熟练技术人员可能不会认为这样的办法是可行的。特别地,由于与包 括定制微控制器的设计相比这些因素可能会不利地被影响几个数量级,因此熟练技 术人员可能会拒绝该办法。
因此,需要以比常规定制微控制器实现提供的更高效和成本更有效的方式来 执行复杂信号处理算法——具体而言是用于定位应用的信号检测算法,而同时 提供用定制微控制器设计能达成的低等待时间、高可维持中断速率和大带宽。
概述
本文中所描述的方法和设备通过使用通用处理器代替定制微控制器经由使用 一种或更多种应对技术来执行信号处理算法从而达到前述需要并且避免现有技术 的弊端和缺点,这些应对技术允许通用处理器更高效地操作。这些新颖的应对方法 结果得到显著的实现成本节省以及从本文中的讨论显而易见的其他优点。
虽然本文中所描述的对于在卫星定位系统(SPS)的移动站中使用的信号检测 算法尤为有利,但是熟练技术人员将领会到,这些方法和设备可应用于其他应用, 包括其中能采用长信号积分又希望在没有定制微控制器的情况下操作的任何信号 检测和解调应用。因此,这些方法和设备可应用于专用处理器和执行不涉及数字信 号处理的算法但具有与本文中所描述的那些类似的问题的处理器。
根据一方面,用以在移动站中检测位置信号的电路包括通用处理器,用以生成用于执行至少一种信号检测算法的指令并实现至少一种与信号检测算法不相关 联的其他功能;专用硬件块,用以响应于通用处理器的指令执行该至少一种信号检 测算法;以及该通用处理器和专用硬件块之中的至少一者被配置成执行至少一种高 效处理以优化该至少一种信号检测算法的性能。
该至少一种高效处理可以包括搜索持续期处理、指令依存性减少处理、数据 交换减少处理、代码组织处理、以及存储器高速缓存处理之中的至少一者。搜索持 续期处理可以包括当有严格时间约束时执行较短搜索以及当对通用处理器有较少 需求时执行较长搜索。依存性减少处理可进一步包括并行运行算法和/或使用浮点 单元来运行多层算法。数据交换减少处理可以包括确定要在通用处理器与专用硬件 块之间交换的关键数据,并且仅向通用处理器传达关键数据。代码组织处理可以包 括前视指令处理和流水线化之中的至少一者。存储器高速缓存可以包括高速缓存专 用硬件块的输出。存储器高速缓存可以包括例如当通用处理器不可用时高速缓存专 用硬件块的输出。
根据另一方面, 一种在移动站中检测位置信号的方法包括以下步骤在通用 处理器中生成用于执行至少一种信号检测算法的指令并实现至少一种与信号检测 算法不相关联的其他功能;响应于来自通用处理器的指令在专用硬件块中执行该至 少一种信号检测算法;以及执行至少一种优化该算法的性能的效率处理。
执行至少一种效率处理的步骤可以包括以下步骤之中的至少一个实现搜索 持续期处理、实现指令依存性减少处理、实现数据交换减少处理、实现代码组织处 理、以及实现存储器高速缓存处理。实现搜索持续期处理的步骤可以包括当有严格 时间约束时执行较短搜索以及当对通用处理器有较少需求时执行较长搜索。实现依 存性减少处理的步骤可进一步包括并行运行算法、和/或使用浮点单元来运行多层 算法。实现数据交换减少处理的步骤可以包括确定要在通用处理器与专用硬件块之 间交换的关键数据,并且仅向通用处理器传达关键数据。实现代码组织处理的步骤 可以包括前视指令处理和流水线化之中的至少一者。实现存储器高速缓存的步骤可 以包括高速缓存专用硬件块的输出,例如当通用处理器不可用时。
在另一方面, 一种包括在被通用处理器和专用硬件块之中的至少一者执行时 导致专用硬件块检测位置信号的指令的机器可读介质,这些指令包括用以在通用 处理器中生成指令以执行至少一种信号检测算法的指令、用以在通用处理器中执行 与信号检测算法不相关联的至少一种其他功能的指令、用于响应于来自通用处理器 的指令在专用硬件块中执行该至少一种信号检测算法的指令、以及用于在通用处理器和专用硬件块之中的至少一者中执行至少一种效率处理以优化该算法的性能的 指令。
用于执行至少一种效率处理的指令可以包括以下各项中的至少一项用于执 行搜索持续期处理的指令、用于执行指令依存性减少处理的指令、用于执行数据交 换减少处理的指令、用于执行代码组织处理的指令、以及用于执行存储器高速缓存 处理的指令。用于执行搜索持续期处理的指令可以包括当有严格时间约束时执行较 短搜索以及当对通用处理器有较少需求时执行较长搜索。用于执行依存性减少处理 的指令可进一步包括用于并行运行算法和/或使用浮点单元来运行多层算法的指 令。用于执行数据交换减少处理的指令可以包括确定要在通用处理器与专用硬件块 之间交换的关键数据、并且仅向通用处理器传达关键数据的指令。用以执行代码组 织处理的指令可以包括前视指令处理和流水线化之中的至少一者。用于执行存储器 高速缓存的指令可以包括高速缓存专用硬件块的输出,例如当通用处理器不可用 时。
在又一方面中, 一种在移动站中检测位置信号的电路包括用于在通用处理
器中生成用于执行至少一种信号检测算法的指令并实现至少一种与信号检测算法
不相关联的其他功能的装置;用于响应于来自通用处理器的指令在专用硬件块中执
行该至少一种信号检测算法的装置;以及用于在通用处理器和专用硬件块之中的至 少一者中执行至少一种效率处理以优化该至少一种信号检测算法的性能的装置。
该至少一种高效处理包括搜索持续期处理、指令依存性减少处理、数据交换 减少处理、代码组织处理、以及存储器高速缓存处理之中的至少一者。搜索持续期 处理可以包括当有严格时间约束时执行较短搜索以及当对通用处理器有较少需求 时执行较长搜索。依存性减少处理可进一步包括并行运行算法和/或使用浮点单元 来运行多层算法。数据交换减少处理可以包括确定要在通用处理器与专用硬件块之 间交换的关键数据,并且仅向通用处理器传达关键数据。代码组织处理可以包括前 视指令处理和流水线化之中的至少一者。存储器高速缓存可以包括高速缓存专用硬 件块的输出,例如当通用处理器不可用时。
本文中所描述的方法和设备的附加特征、优点、和实施例将被阐述或从对以 下详细说明、附图、以及权利要求书的考虑而显而易见。而且应理解,以上概述和 以下详述都是示例性的,并且旨在提供进一步解释而不限定所要求保护的方法和设 备的范围。
11附图简要说明
被包括于此以提供对本文中所描述的方法和设备的进一步理解、并被纳入在 本说明书中且构成其一部分的附图示出这些方法和设备的诸方面,并且与详细说明 一起用来解释这些方法和设备的原理。并未作出尝试要以比对这些方法和设备以及 它们可在其中被实践的各种方式的基本理解所必要的更详细地示出这些方法和设 备的结构性细节。在附图中
图1是示出移动站中的根据本文中所描述的原理构造的用于应对通用处理器 在实现算法上的效率低下的设备的示意图2是示出在使用通用处理器代替定制微控制器的情况下可用来执行算法的 各种应对方法的流程图3是示出搜索持续期应对方法的流程图4是示出减少指令间依存性应对方法的流程图5是示出减少数据交换应对方法的流程图6是示出代码组织应对方法的流程图7是示出存储器高速缓存应对方法的流程图8是示出在根据本文中所描述的原理构造的卫星和/或蜂窝系统中一起实现 两个不同移动站的示意图9是示出根据本文中所描述的原理构造的可在非移动站的其他应用中使用 的另一种电路的示意图;以及
图10是具有控制执行数字信号检测算法的专门硬件块的定制微控制器的常规 电路。
详细说明
本文中所描述的方法和设备的各方面以及其有利细节参考在附图中描述和/或 图解以及在以下说明中详述的非限定性实施例和示例来更完整地解释。应注意在附 图中所图解的特征不必是按比例绘制的,并且如熟练技术人员能意识到的, 一个实 施例的特征可以用其他实施例来采用,即便在本文中没有明确记载。公知组件和处 理技术的描述可能被省略从而不会不必要地湮没诸实施例。本文中所使用的示例仅 旨在便于理解可用以实践本文中所描述的方法和设备的原理的方式,并且进一步使 得本领域技术人员能实践本发明。因此,本文中的示例和实施例不应被解释为限定
本发明的范围,本发明的范围单单由所附权利要求书和适用法律来定义。而且,应注意相同的附图标记贯穿附图之中的若干视图代表相同的部件。
图1是示出移动站中的根据本发明原理构造的示例性设备的示意图。更具体 地,图l示出用于在接收来自卫星定位系统(SPS)(未示出)的无线信号时使用 的移动站100的示例性安排和配置。移动站100包括可以实现诸如用于从SPS进
行信号检测或获取的数字信号处理算法之类的算法的电路102。
移动站100可以被配置成在无线环境中操作。更具体地,移动站100可以包 括天线120用以接收无线信号。无线信号可以是以下描述的无线电接入技术(RAT) 中的任一种。可以用本领域中公知的方式将无线信号接收到射频单元122中。如图 1中所示的接口 124可响应于射频单元122。接口 124可以包括一个或更多个组 件——包括链路126、 126——用以处理无线信号并将其引导进电路102以如以下 所描述地进行处理,并且这在本领域中是公知的。
专用硬件块106被安排在该电路中用于执行诸如信号检测或获取算法之类的 信号处理算法。专用硬件块106可以与经由接口 114到总线110的数据和/或控制 信号交互。通用处理器104提供对专用硬件块106的控制。没有控制硬件块106 的定制微控制器。对专用硬件块106的控制可以是经由总线/存储器接口 112经由 接口H6、 116到总线110的。这样的接口是可任选的,并且通用处理器104可以 用任何已知方式与专用硬件块106通信。
此外,电路102可以包括经由接口 118来接口总线110的存储器108。而且, 通用处理器104可以包括硬件加速器,这在本领域中是公知的。应注意,图1中所 示的各种组件的安排仅是示例性的。这样,电路102可以包括更多或更少组件、有 更多或更少组件的不同安排等等。图1的安排是示例性的,并且其他安排只要电路 102不包括用于控制专用硬件块106的定制微控制器那么就落入本发明的精神和范 围之内。缺少定制微控制器极大地减少了电路102的实现成本。更具体地,部分由 于减小的制造管芯尺寸和复杂性,电路102可以用更少成本来制造。而且,电路 102关于代码、编码定制微控制器以及代码维护具有减少的实现成本。然而,电路 102在没有本发明的以下描述的应对配置和/或方法的情况下当与采用了定制微控 制器的常规电路(如图IO中所示的)相比时可能会遭受众多显著(呈数量级)的 缺点,包括高等待时间、低可维持性中断速率、减少的带宽等等。
以下分开讨论本发明用于减轻这些缺点并且应对通用处理器在没有定制微控 制器的情况下在实现算法时的效率低下的各种方法。然而,图2图形地示出本发明 的这些方法之中的一种或更多种可以一起使用。由此,本发明的这些应对方法可以一起使用或者一种或更多种方法可以分开实现。而且,本领域中已知的其他应对方 法也被预期并且由此落入本发明的范围和精神之内。
图3是示出本发明的搜索持续期应对方法的流程图。具体而言,图3方法涉 及用于改变与给予专用硬件块106用于用搜索进行信号检测算法的每条指令相关
联的搜索持续期的搜索持续期300方法。通过在与每条指令相关联的特定场景期间
延长搜索持续期,控制流可以被最小化。而且,搜索持续期的选择性延长由此能通 过如所需地实现较短搜索来避免对整个算法性能的负面影响。
具体而言,时间约束和搜索条件可以是用于改变搜索持续期的基础。在步骤
302中,当应用具有严格搜索时间约束或者展示出在比例上很高的衰落速率的搜索 条件时,该搜索持续期方法可以实现较短的个体搜索由此实现较高搜索速率。
改变搜索持续期也可以是基于其他准则的。在一方面中,图3中所示的搜索 持续期300方法的技术可以利用对于提供给专用硬件块106的个体搜索指令的长度 的限制可以从高级应用参数来推导出这一事实。这些高级应用参数可以包括用户交 互性因素、低级信道参数等等,例如高于毫秒或微秒的用户交互性。用户交互性因 素可进一步包括位置应用,其可以要求以某一标称速率例如1/秒从搜索引擎产生的 结果计算出移动用户的定位。由于预期用户位置不会以高速率改变,因此不需以比 这样的标称速率更高的速率发生新位置以及由此的新搜索。另一个示例是用于用户 从一个蜂窝小区移动到另一个的移交支持。对信号环境的周期性采样(信号检测和 /或解调)可以允许对来自新基站的信号的检测以及由此允许移交过程的发起。然 而,可再次认为改变速率是较低的,例如不高于1/ms。低级信道参数可以包括衰 落速率、时钟漂移等等。
如步骤304中所示的,当确定用户交互性、信道衰落、时钟漂移的速率相对 于通用处理器104等的处理速度来说较小时,就可以用较长的持续期来执行搜 索,同时达到合需搜索速率约束。当然,搜索持续期可基于任何类型的准则被改 变以使得通用处理器104更高效。
因此,通过选择性地改变与给予专用硬件块106的每条指令相关联的搜索持 续期,可使调用控制最小化并且使整个算法性能最小地受影响。
图4是示出本发明的减少指令间依存性应对方法的流程图。具体而言,本发 明的这方面减少提供给专用硬件块106的指令之间的依存性,如步骤400所示的。 在步骤402,指令之间依存性的减少首先利用许多搜索指令可被视为是彼此独立的 并且在专用硬件块106中可以并行运行这一事实。更具体地,如步骤402中所示,搜索诸如不同时间、频率、代码假言等各种参数可以并行进行。该并行搜索允许以 经加速的速率获得搜索结果的能力。
接下来,现有办法典型地要求对于给定的时间和/或频率代码假言组合顺序地 进行多层搜索。这部分是由于在搜索的动态范围方面的限制。例如,可能必须执行 搜索以覆盖合需动态范围的每一个1/N段。典型地,这N个搜索可能必须顺序并 以依存性方式执行以减少对不必要的信号搜索和不可应用的范围的需要。该顺序操
作增加了为实现这N个搜索所需的时间量。
如步骤404中所示的,本发明搜索可以使用浮点单元办法来实现。浮点单元 的使用允许整个动态范围用单个搜索操作来覆盖。通过减少搜索操作的数目、对顺 序搜索和/或搜索操作的需要,避免了指令依存性。由此,可以极大地减少搜索处 理时间。此外,其他类型的算法可以采用并行和浮点单元方法。由此,图3方法的 各方面减少了指令之间的依存性并且由此减少了执行搜索的时间量。
图5是示出本发明的减少数据交换应对方法的流程图。本发明该方法的这方 面具体指向减少通用处理器104与专用硬件块106之间的数据交换。具体而言,本 发明的这方面利用算法一般产生大量信号检测数据但只需要其中一部分数据这一 事实。通过确定值得检查的数据("关键数据块")并且在专用硬件块106和通用 处理器104之间仅传送这些数据,可以减少整个数据交换。例如,信号检测算法仅 需要为信号检测过程检査与最强信号峰值或较强信号峰值中的一些相关联的数据。
在步骤502中,专用硬件块106可以确定哪些是值得通用处理器104检査的 关键数据。例如,在信号处理中,这可以实现为在专用硬件块106中实现的峰值分 序器。峰值分序器随后可以确定最强峰值或较强峰值的索引和值。在步骤504中, 仅最强峰值和/或较强峰值数据被传达给通用处理器104。较不"关键的数据"不发 送给通用处理器104且由此减少了数据交换,并且通用处理器104能够更高效地操 作。
图6是示出本发明的代码组织应对方法的流程图。本发明这方面可以使用图5 中所示的步骤中的一些并且进一步使用各种代码组织办法。更具体地,本发明的这 方面可以在通用处理器104中使用各种形式的代码组织以更高效地执行算法。
可在本发明这方面中使用的各种类型的代码组织600中的一些包括使用前视 和/或流水线化指令以供在通用处理器104和/或专用硬件块106中使用。前视办法 可被认为是趋向于预见选取分支变量来评估其值中的一个的效果的子程序。前视办 法的两个主要目标是选取接下来评估的变量以及指派给该变量的值的次序。流水线化办法可以利用一组串联的数据处理元件,因此一个元件的输出是下一个元件的输 入。流水线化减少处理器的循环时间并且增加指令吞吐量、以及在单位时间内能执 行的指令的数目。流水线指令可防止在串行指令被并发执行时的分支延迟和其他问 题。
因此,前视和/或流水线指令与图5减少数据交换技术一起使用提供通用处理 器在执行算法时有更高效率的操作。此外,本领域中已知的其他代码组织办法也被 预期并且落入本发明的范围之内。
图7是示出本发明的存储器高速缓存应对方法的流程图。具体而言,存储器 缓冲器的使用隐藏或减少通用处理器104的等待时间并且允许专用硬件块106更高 效地运行。更具体地,本发明的这方面可以使用存储器高速缓存技术700以提供更 高效的算法实现。例如,来自专用硬件块106的输出数据可以如步骤702中所示地 被缓冲达通用处理器104不可用的一个持续期。这样,通用处理器104可能遭受与 性能问题相关的各种等待时间。而且,在本发明图3和图5技术中使用的各种存储 器分配约束的存在使得来自专用硬件块106的输出数据率最小化,保持数据被传达 到通用处理器104。为克服该限制,通用处理器104需要的数据可以存储在存储器 缓冲器中。因此,存储器缓冲器的使用减少或隐藏通用处理器104的等待时间并且 允许专用硬件块106更高效地运行。
本文中所描述的位置确定技术——包括信号处理和获取——可用于各种无线 通信网络906,诸如与图8中所示的与各种移动站100 —起使用的天线904相关联 的那些,诸如无线广域网(WWAN)、无线局域网(WLAN)、无线个人区域网
(WPAN),等等。如本文中所使用的,移动站(MS)是指诸如蜂窝电话、无线 通信设备、用户装备、其他个人通信系统(PCS)设备、采用定位技术的定位设备 等设备。术语"网络"和"系统"常被可互换地使用。WWAN可以是码分多址(CDMA) 网络、时分多址(TDMA)网络、频分多址(FDMA)网络、正交频分多址(OFDMA) 网络、单载波频分多址(SC-FDMA)网络,等等。CDMA网络可实现诸如cdma2000、 宽带CDMA (W-CDMA)等的一种或更多无线电接入技术(RAT) 。 cdma2000 包括IS-95、 IS-2000和IS-856标准。TDMA网络可实现全球移动通信系统(GSM)、 数字高级移动电话系统(D-AMPS)、或其他某种RAT。 GSM和W-CDMA在来 自名为"第三代伙伴项目(3GPP)"的联盟的文献中描述。Cdma2000在来自名为
"第三代伙伴项目2 (3GPP2)"的联盟的文献中描述。3GPP和3GPP2文献是公 众可获取的。WLAN可以是IEEE 802.1 lx网络,并且WPAN可以是蓝牙网络、IEEE802.15x、或其他某种类型的网络。这些技术也可用于WWAN、 WLAN和/或WPAN
的任意组合。
如图8中进一步所示的,移动站100、 100可以接收来自(诸)卫星902的信 号,该卫星可以来自全球定位系统(GPS) 、 Galileo、 GLONASS、 NAVSTAR、 GNSS、使用来自这些系统的组合的卫星的系统、或将来开发的任何SPS,其每一 个在本文中被通称为卫星定位系统(SPS)。如本文中所使用的,SPS还将被理解 为包括伪卫星系统。
本文中所描述的方法和装置可与各种卫星定位系统(SPS) —起使用,诸如美 国全球定位系统(GPS)、俄罗斯Glonass系统、欧洲Galileo系统、使用来自卫星 系统的组合的卫星的系统、或将来开发的任何卫星系统。此外,所公开的方法和装 置可与利用伪卫星或卫星与伪卫星组合的定位确定系统一起使用。伪卫星是广播 被调制在L带(或其他频率)载波信号上的PN码或其他测距码(类似于GPS 或CDMA蜂窝信号)的基于地面的发射机,该载波信号可以与GPS时间同步。 每一个这样的发射机可以被指派唯一性的PN码从而准许被远程接收机标识。伪卫 星在其中来自环地轨道卫星的GPS信号可能不可用的境况中是有用的,诸如在隧 道、矿区、建筑、市区峡谷或其他封闭地区中。伪卫星的另一种实现被公知为无线 电信标。如本文中所使用的术语"卫星"旨在包括伪卫星、伪卫星的等效卫星、以 及可能的其他卫星。如本文中所使用的术语"SPS信号"旨在包括来自伪卫星或伪 卫星的等效卫星的类SPS信号。
虽然以上描述的本发明的应对技术用于在接收来自SPS的无线信号的移动站 中使用时尤其有利,但是这些应对技术中的一种或更多种可在SPS信号检测和/或 获取环境以外的其他数字信号处理环境中使用。而且,熟练技术人员将领会以上的 各种技术可等同地应用于遭受类似约束的非数字信号处理环境。图9示出移动站环 境以外的其中组件基本类似于图1中的那些被安排和操作、但在本发明之前其也需 要定制微控制器以高效地操作的电路实现。然而,设备800已被修改以根据本发明 的原理来操作。由此,以上描述的本发明的各种应对方法可实现在非数字信号处理 应用中,诸如设备800中在图9中示出的那些。而且,图9中所示的设备800可以 使用专用处理器。图9中所示的这样的安排当在其中用户交互性要求比毫秒或微秒 相对更低的设备800中操作时最为有利。类似地,设备800当实现在具有更长积分 或长相干积分周期的设备中最为有利。
本文中所描述的各种方法取决于应用可藉由各种手段来实现。例如,这些方法可以在硬件、固件、软件、或其组合中实现。对于硬件实现,这些处理单元可以
在一个或更多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处 理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理 器、控制器、微控制器、微处理器、电子器件、设计成执行本文中所描述的功能的 其它电子单元、或其组合内实现。
对于固件和/或软件实现,这些方法可以用执行本文中所描述的功能的模块(例 如,程序、函数等等)来实现。有形地体现指令的任何机器可读介质可用于实现 本文中所描述的方法。例如,软件代码可被存储在存储器中——例如移动站100 的存储器108中,并由处理器执行,例如通用处理器104。存储器可以实现在处理 器内部或处理器外部。如本文中所使用的,术语"存储器"是指任何类型的长期、 短期、易失性、非易失性、或其他存储器,并且不被限定于任何特定类型的存储器 或存储器数目、或存储器存储于其上的介质的类型。
虽然本发明已用示例性实施例的形式进行了描述,但本领域技术人员将认识 到,本发明可以用落在所附权利要求书的精神和范围内的修改来实践。以上给出的 这些示例仅仅是例示说明性的且并非意味着本发明的所有可能设计、实施例、应用 或修改的详尽列表。
权利要求
1. 一种在移动站中检测位置信号的电路,包括通用处理器,用以生成用于执行至少一种信号检测算法的指令并实现至少一种与所述信号检测算法不相关联的其他功能;专用硬件块,响应于所述通用处理器的所述指令执行所述至少一种信号检测算法;以及所述通用处理器和所述专用硬件块之中的至少一个被配置成执行至少一种效率处理以优化所述至少一种信号检测算法的性能。
2. 如权利要求1所述的电路,其特征在于,所述至少一种效率处理包括搜索 持续期处理、指令依存性减少处理、数据交换减少处理、代码组织处理、以及存储 器高速缓存处理之中的至少一者。
3. 如权利要求2所述的电路,其特征在于,所述搜索持续期处理包括当有严 格时间约束时执行较短搜索以及当对所述通用处理器有较少需求时执行较长搜索。
4. 如权利要求2所述的电路,其特征在于,所述指令依存性减少处理进一步 包括并行运行算法。
5. 如权利要求4所述的电路,其特征在于,所述指令依存性减少处理包括使 用浮点单元来运行多层算法。
6. 如权利要求2所述的电路,其特征在于,所述数据交换减少处理包括确定 要在所述通用处理器与所述专用硬件块之间交换的关键数据。
7. 如权利要求6所述的电路,其特征在于,所述数据交换减少处理包括仅向 所述通用处理器传达所述关键数据。
8. 如权利要求2所述的电路,其特征在于,所述代码组织处理包括前视指令处理和流水线化之中的至少一者。
9. 如权利要求2所述的电路,其特征在于,所述存储器高速缓存包括高速缓 存所述专用硬件块的输出。
10. 如权利要求2所述的电路,其特征在于,所述存储器高速缓存处理步骤包括当所述通用处理器不可用时高速缓存所述专用硬件块的输出。
11. 一种在移动站中检测位置信号的方法,包括以下步骤在通用处理器中生成用于执行至少一种信号检测算法的指令并实现至少一种 与所述信号检测算法不相关联的其他功能;响应于来自所述通用处理器的所述指令在专用硬件块中执行所述至少一种信号检测算法;以及执行至少一种优化所述算法的性能的效率处理。
12. 如权利要求11所述的方法,其特征在于,所述执行至少一种效率处理 的步骤包括以下步骤中的至少一项实现搜索持续期处理; 实现指令依存性减少处理; 实现数据交换减少处理; 实现代码组织处理;以及 实现存储器高速缓存处理。
13. 如权利要求12所述的方法,其特征在于,所述实现搜索持续期处理的 步骤包括当有严格时间约束时执行较短搜索以及当对所述通用处理器有较少需求 时执行较长搜索。
14. 如权利要求12所述的方法,其特征在于,所述实现指令依存性减少处 理的步骤进一步包括并行运行算法。
15. 如权利要求12所述的方法,其特征在于,所述实现指令依存性减少处理的步骤包括使用浮点单元来运行多层算法。
16. 如权利要求12所述的方法,其特征在于,所述实现数据交换减少处理 的步骤包括确定要在所述通用处理器与所述专用硬件块之间交换的关键数据。
17. 如权利要求16所述的方法,其特征在于,所述实现数据交换减少处理的步骤包括仅向所述通用处理器传达所述关键数据。
18. 如权利要求12所述的方法,其特征在于,所述实现代码组织处理的步 骤包括前视指令处理和流水线化之中的至少一者。
19. 如权利要求12所述的方法,其特征在于,所述实现存储器高速缓存处 理的步骤包括高速缓存所述专用硬件块的输出。
20. 如权利要求12所述的方法,其特征在于,所述实现存储器高速缓存处 理的步骤包括当所述通用处理器不可用时高速缓存所述专用硬件块的输出。
21. —种包括在被通用处理器和专用硬件块中的至少一者执行时导致所述 专用硬件块检测位置信号的指令的机器可读介质,所述指令包括用以在通用处理器中生成指令以执行至少一种信号检测算法的指令; 用于在所述通用处理器中执行至少一种与所述信号检测算法不相关联的其他 功能的指令;用于响应于来自所述通用处理器的所述指令在专用硬件块中执行所述至少一 种信号检测算法的指令;以及用于在所述通用处理器和所述专用硬件块之中的至少一者中执行至少一种效 率处理以优化所述算法的性能的指令。
22. 如权利要求21所述的机器可读介质,其特征在于,所述用于执行至少 一种效率处理的指令包括以下各项的至少一项用于执行搜索持续期处理的指令;用于执行指令依存性减少处理的指令;用于执行数据交换减少处理的指令; 用于执行代码组织处理的指令;以及 用于执行存储器高速缓存处理的指令。
23. 如权利要求22所述的机器可读介质,其特征在于,所述用于执行搜索 持续期处理的指令包括当有严格时间约束时执行较短搜索以及当对所述通用处理 器有较少需求时执行较长搜索。
24. 如权利要求23所述的机器可读介质,其特征在于,所述用于执行指令 依存性减少处理的指令进一步包括用于并行执行算法的指令。
25. 如权利要求22所述的机器可读介质,其特征在于,所述用于执行指令 依存性减少处理的指令进一步包括用于使用浮点单元执行多层算法的指令。
26. 如权利要求22所述的机器可读介质,其特征在于,所述用于执行数据 交换减少处理的指令包括用于确定要在所述通用处理器与所述专用硬件块之间交 换的关键数据的指令。
27. 如权利要求26所述的机器可读介质,其特征在于,所述用于执行数据 交换减少处理的指令包括仅传达所述关键数据。
28. 如权利要求22所述的机器可读介质,其特征在于,所述用于执行代码 组织处理的指令包括前视指令处理和流水线化之中的至少一者。
29. 如权利要求22所述的机器可读介质,其特征在于,所述用于执行存储 器高速缓存指令的指令包括高速缓存所述专用硬件块的输出。
30. 如权利要求22所述的机器可读介质,其特征在于,所述用于执行高速 缓存处理的指令包括当所述通用处理器不可用时高速缓存所述专用硬件块的输出。
31.—种在移动站中检测位置信号的电路,所述电路包括:用于在通用处理器中生成用于执行至少一种信号检测算法的指令并实现至少 一种与所述信号检测算法不相关联的其他功能的装置;用于响应于所述通用处理器的所述指令在专用硬件块中执行所述至少一种信 号检测算法的装置;以及用于在所述通用处理器和所述专用硬件块之中的至少一者中执行至少一种效 率处理以优化所述至少一种信号检测算法的性能的装置。
32. 如权利要求31所述的电路,其特征在于,所述至少一种效率处理包括 搜索持续期处理、指令依存性减少处理、数据交换减少处理、代码组织处理、以及 存储器高速缓存处理之中的至少一者。
33. 如权利要求32所述的电路,其特征在于,所述搜索持续期处理包括当 有严格时间约束时执行较短搜索以及当对所述通用处理器有较少需求时执行较长 搜索。
34. 如权利要求32所述的电路,其特征在于,所述依存性减少处理进一步 包括并行运行算法。
35. 如权利要求34所述的电路,其特征在于,所述依存性减少处理包括使 用浮点单元来运行多层算法。
36. 如权利要求32所述的电路,其特征在于,所述数据交换减少处理包括 确定要在所述通用处理器与所述专用硬件块之间交换的关键数据。
37. 如权利要求36所述的电路,其特征在于,所述数据交换减少处理包括 仅向所述通用处理器传达所述关键数据。
38. 如权利要求32所述的电路,其特征在于,所述代码组织处理包括前视 指令处理和流水线化之中的至少一者。
39. 如权利要求32所述的电路,其特征在于,所述存储器高速缓存处理包括高速缓存所述专用硬件块的输出。
40. 如权利要求32所述的电路,其特征在于,所述存储器高速缓存处理包 括当所述通用处理器不可用时高速缓存所述专用硬件块的输出。
全文摘要
一种在移动站中检测位置信号的电路,包括通用处理器,用以生成用于执行至少一种信号检测算法的指令并实现至少一种与信号检测算法不相关联的其他功能;专用硬件块,用以响应于通用处理器的指令执行该至少一种信号检测算法;以及该通用处理器和专用硬件块之中的至少一个被配置成执行至少一种效率处理以优化该至少一种信号检测算法的性能。也公开了实现这些方法步骤的方法和机器可读介质。
文档编号G01S1/00GK101473241SQ200780023204
公开日2009年7月1日 申请日期2007年1月25日 优先权日2006年6月21日
发明者C·赛伯特, D·格文, D·法默 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1