CN102099801B - 实现多个空中接口标准的可重新配置的无线调制解调器子电路 - Google Patents

实现多个空中接口标准的可重新配置的无线调制解调器子电路 Download PDF

Info

Publication number
CN102099801B
CN102099801B CN200980110460.7A CN200980110460A CN102099801B CN 102099801 B CN102099801 B CN 102099801B CN 200980110460 A CN200980110460 A CN 200980110460A CN 102099801 B CN102099801 B CN 102099801B
Authority
CN
China
Prior art keywords
wcsmsc
assignment instructions
storer
task
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200980110460.7A
Other languages
English (en)
Other versions
CN102099801A (zh
Inventor
A·乔杜里
I·姚
J·H·林
A·罗斯坦皮舍
R·沙拉
H·桑帕特
M·吴
J·扎诺泰利
M·纳特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN102099801A publication Critical patent/CN102099801A/zh
Application granted granted Critical
Publication of CN102099801B publication Critical patent/CN102099801B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7842Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)

Abstract

一种灵活的、可重新配置的数字系统(例如,无线调制解调器)包括一组子电路。每个子电路包括任务管理器和一些用于对数据流执行一类操作的可配置硬件电路。子电路的任务管理器可以配置并控制该子电路的可配置硬件。中央处理器通过在紧密耦合的存储器中保持一组任务列表来配置并协调子电路的操作。每个任务列表包括用于相应子电路的任务指令。子电路的任务管理器从它的任务列表读取任务指令,并按照指令的指挥来控制相关硬件电路。时间戳任务指令和推送任务指令以及任务列表体系结构允许调制解调器子电路很容易地重新配置,以便根据第一空中接口标准或第二空中接口标准进行操作。

Description

实现多个空中接口标准的可重新配置的无线调制解调器子电路
相关申请的交叉引用
本申请根据35U.S.C§119要求于2008年3月26日提交的、序号为61/039,774的临时申请以及2008年3月29日提交的、序号为61/040,654的临时申请的优先权,将所述临时申请合并于此作为参考。
技术领域
本发明涉及含多个子电路的数字系统的控制,这些子电路一起用来处理数据流,具体地,本发明涉及采用离线任务列表对无线调制解调器子电路进行控制。
背景技术
数字数据处理系统有时包括可分解为几个较小子操作的大量操作。在一种技术中,诸如无线通信系统调制器/解调器(MODEM)集成电路中通常采用的技术,设计一个独立的专用硬件电路来执行各子操作中的每一个。该独立的专用硬件电路受中央处理器的控制。通常有一个主数据路径通过各个独立的专用硬件电路。在处理器上执行的软件结合实时时钟(RTC)进行操作。在实时时钟所确定的某些时间间隔,软件使得处理器配置或控制各个硬件电路中的一些,使得硬件电路以期望的方式处理数据流中的数据。可以用中断来警告处理器出现某些状况。例如,处理器通过中断可以知道特定硬件电路已完成数据处理,并且作为对该中断的响应,处理器可以开始后续硬件电路处理数据。可以要求处理器进行异常处理。
图1(现有技术)是无线调制解调器集成电路1的接收信道的一部分的简化框图。在该集成电路中,处理器2执行存储器3中的代码,并配置各种硬件电路3-8。为了配置一个集成电路,处理器2经总线9将配置信息写入要配置硬件电路的配置寄存器中。附图标记10标识硬件电路4中的一组配置/控制寄存器。处理器2通常还控制各种硬件电路。例如,处理器2可以开始硬件电路的操作,或通过将控制信息写入硬件电路的控制寄存器来改变其操作。处理器也可以通过总线9读取由硬件电路输出的选定数据,基于该数据作出决定,然后通过总线9向选定的配置/控制寄存器写入配置/控制信息,基于该数据来改变一个或多个硬件电路的操作方式。各硬件电路4-8通常也通过经线路11进行通信的中断来警告处理器2出现特定的状况。在一个示例中,特定硬件电路在特定时刻开始执行特定操作。作为对从实时时钟16接收的中断信号的响应,软件执行从执行主例程12跳至中断子例程13-15中适当的一个。在执行子例程后,如紧接着中断时间之后所要求的,处理器2对特定硬件电路进行配置或控制。因此,可以对各硬件电路4-8进行控制以便在响应于处理器2控制的某些事件或在某些时间执行期望的功能。
虽然在很多应用中图1的结构可以良好地运行并具有优势,但其也具有某些缺点。例如,处理器2可能是吞吐率受限的,并且通过诸如总线9之类的总线的写入很慢,这是不期望的。由于处理器2可以将大量配置/控制信息写入许多配置/控制寄存器中,因此该问题会被放大。第二个潜在的问题是处理器2可能需要同时或几乎同时开始对多于一个硬件电路进行操作。然而,处理器2是顺序执行指令的。在针对该问题的一个解决办法中,单个硬件方框具有多组配置/控制寄存器。处理器2事先在硬件电路中写入未使用的多组配置/控制寄存器,然后在多个硬件电路要开始的时候,处理器可以写入较少次数,以便用额外配置/控制寄存器中先前提供的配置/控制信息来发起操作。然而,不期望的是需要提供数量增加的配置/控制寄存器。
发明内容
在第一方面,数字系统包括通过第一总线与存储器紧密耦合的处理器。数字系统还包括一组子电路。每个子电路包括任务管理器以及用于执行一类数据处理的可配置数量的但是专用的硬件电路。子电路的任务管理器可以配置并控制子电路的可配置硬件。在操作中,系统的处理器通过在存储器中保存一组任务列表来配置子电路的操作,并协调它们的操作及时序。每个任务列表包括用于每个相应子电路的任务指令。每个子电路的任务管理器通过第二总线从存储器中的相应任务列表中读出任务指令。任务管理器通过第二总线访问存储器的存储器访问等待时间,通常高于处理器通过第一总线访问存储器的存储器访问等待时间。使子电路的任务管理器通过较慢的第二总线从存储器读出任务指令减少了处理器必须通过第二总线进行许多相对较慢的传递。这避免出现由于处理器必须通过相对较慢的第二总线进行读取导致的软件执行等待时间。在任务管理器通过第二总线读取了任务指令后,任务管理器解释任务指令并使子电路的相关可配置硬件执行任务指令指示的操作。
在一个示例中,任务列表可以包括“时间戳”型任务指令。当子电路的任务管理器读取这种时间戳任务指令时,不会立即执行时间戳任务指令所指示的操作,而是在时间戳所指示的时刻启动该操作。中央挂钟计时器提供当前时间指示,该时间用于确定何时到达时间戳所指示的时间。所有子电路的任务管理器参考一个中央挂钟计时器提供的一个时间计数标准。通过将时间戳任务指令写入到各子电路的任务列表中,处理器可以事先建立多个子电路要执行某些操作的时间。在另一个示例中,任务列表包括推送(push)任务指令。子电路对推送任务指令的执行使得任务管理器通过第二总线将推送任务指令所指定的某信息写入到存储器中。一旦所推送的信息在存储器中,那么处理器可以访问该信息并利用该信息作出决定。例如,处理器可以用该信息改变子电路执行进一步处理的方式。认为所描述的离线任务列表体系结构一般适用于涉及多个子电路的大数字系统设计中。具体地说,认为离线任务列表体系结构具体适用于涉及单个硬件处理子电路的数字系统设计中,相对于其他子电路,这些涉及单个硬件处理子电路的操作受到灵活地控制并进行计时,使得子电路一起作用以便处理数据流。
在第二方面,移动通信设备的无线通信系统调制解调器包括通过第一总线与存储器紧密耦合的处理器。调制解调器还包括多个无线通信系统调制解调器子电路(WCSMSC)。每个WCSMSC包括任务管理器和一些用于执行一类数据处理的可配置但专用的硬件电路。WCSMSC的任务管理器可以通过第二总线从存储器中读取任务指令,然后可以根据所读取的任务指令的指示对其相关WCSMSC的可配置硬件进行配置和/或控制。多个WCSMSC一起形成可重新配置的无线调制解调器接收信道。本文的术语“接收信道”指的是基带硬件接收机处理链路。如果以存储在存储器中的任务指令所指示的第一种方式来配置WCSMSC,那么根据第一空中接口标准(例如,LTE)来配置该信道以便进行通信,然而,如果以存储在存储器中的任务指令所指示的第二种方式来配置WCSMSC,那么根据第二空中接口标准(例如,UMB或者WiMAX)来配置接收信道以便进行通信。时间戳任务指令、推送任务指令、硬件事件发起任务指令以及在以下详细说明书中说明的其它类型的任务指令在任务列表中无需硬件设计改变就可用来便于重新配置接收信道(基带接收机处理链路硬件),例如,将相同调制解调器硬件从接收一个空中接口标准的通信切换到接收另一个空中接口标准的通信,或者适应制造调制解调器硬件后的通信标准变化。
前述是一个概述,这样无法避免地包含了对细节的简化、概括和省略;因此,本领域普通技术人员会认识到概述仅为说明性质,并不意味着任何方式的限制。通过本文阐述的非限制性的具体描述,由权利要求唯一定义的本文描述的其它方面、发明特点以及设备和/或过程的优点变得显而易见。
附图说明
图1(现有技术)是采用常规无线调制解调器体系结构的无线调制解调器集成电路图。
图2是根据一个新颖方面的移动通信设备的简化图。
图3是图2的移动通信设备的RF收发机集成电路103的详细示图。
图4是图2移动通信设备的数字基带集成电路104的详细示图。
图5是含有任务管理器功能的示例性调制解调器子电路的图。
图6是任务列表图,其中,任务列表中的所有任务指令已完成。
图7是包括未执行的任务指令的任务列表图。
图8是说明处理器为准备和保持任务列表所采取的步骤的简化流程图。
图9是说明任务管理器为读取和初始化执行任务指令的操作所采取的步骤的简化流程图。
图10是图4的数字基带集成电路104的挂钟计时器129的简化方框图。
图11是说明任务管理器在读取和初始化执行时间戳任务指令时所采取的步骤的简化流程图。
图12A是在所有任务指令中出现的公共头部图。
图12B是FFT任务指令图。
图12C是采样缓冲器推送任务指令图。
图12D是FFT和采样缓冲器推送任务指令图。
图12E是符号缓冲器推送任务指令图。
图12F是解调器配置任务指令图。
图12G是解调器MMSE任务指令图。
图12H是解调器MRC任务指令图。
图12I是DDE配置任务指令图。
图12J是DDE清除LLR任务指令图。
图12K是DDE推送任务指令图。
图13是示出在处理输入LTE帧期间何时出现各种类型处理的时间线图。
图14是示出在处理输入UMB帧期间何时出现各种类型处理的时间线图。
图15是说明在处理LTE帧期间FFT WCSMSC操作图。
图16是说明如何创建任务列表以执行图15所示操作的示图。
图17是图4的数字基带集成电路104的解调器WCSMSC 141的方框图。
图18是图4的数字基带集成电路104的DDE WCSMSC 142的方框图。
具体实施方式
图2是根据一方面的一个特定类型移动通信设备100的十分简化的高级别方框图。在该特定示例中,移动通信设备100是蜂窝电话。移动通信设备100包括(有几部分没有示出)两个天线101和102以及两个集成电路103和104。集成电路103是RF收发机集成电路。因为RF收发机集成电路103包括发射机和接收机,所以将它称为“收发机”。原则上,RF收发机集成电路103是包括模拟电路的模拟集成电路。另一方面,集成电路104原则上是包括数字电路的数字集成电路。通常把集成电路104称为“数字基带集成电路”或“基带处理器集成电路”。有其他方式可以划分移动通信设备的电子设备,但这是一种示例性方法。
图3是RF收发机集成电路103的详细的方框图。该特定收发机包括两个收发机。第一收发机包括接收链路105A和发射链路105B。第二收发机包括接收链路106A和发射链路106B。当蜂窝电话100正在接收时,在一个或两个天线上接收到高频RF信号。对于天线101上接收到的RF信号而言,信号通过双工器108、匹配网络109以及通过接收链路105A进行传递。通过低噪声放大器(LNA)110对该信号进行放大,并且由混频器111对其进行下变频。通过基带滤波器112对产生的下变频信号进行滤波,并且通过适当控制的复用器113将其传给数字基带集成电路104。数字基带集成电路104中的模数转换器(ADC)将该信号转换为数字采样流。然后,由数字基带集成电路104内的接收信道115(见图4)处理该采样流。
如果蜂窝电话100要从天线101进行发送,那么要传送的信息由数字基带集成电路104的发射信道116(见图4)处理,并由数模转换器(DAC)117转换为模拟形式。经由适当控制的解复用器118将产生的模拟信号提供给RF收发机集成电路103的“发射链路”105B。基带滤波器119滤除了由数模转换处理引入的噪声。然后混频器方框120将信号上变频为高频信号。驱动器放大器121和外部功率放大器122放大高频信号以驱动天线101,使得从天线101发射高频RF信号。在移动通信设备100中,可以根据操作模式使用一个或两个天线。
图4是图2的数字基带集成电路104更详细的方框图。除了ADC 114、接收信道115、发射信道116以及DAC 117之外,数字基带集成电路104还包括处理器123、第一总线124以及一些高速多组双端口存储器125。处理器123可以通过第一总线124对存储器125进行读取和写入。处理器123是多核处理器或多线程处理器,并且实际上可以包括多个处理器。第一总线124是高速、点对点总线,涉及一个主控装置(处理器123)以及一个从属装置(存储器125)。处理器123、第一总线124以及存储器125一起形成所谓的紧密耦合存储器(TCM)系统126。存储器125不仅是程序存储器,而且是高速、二级缓冲、多端口多组的、用于存储变量和数据以及控制信息的存储器。
另外,数字基带集成电路104包括第二总线127、一些程序存储器128、挂钟计时器129、数据移动器方框130、编解码器方框131、视频处理器方框132、一组二对一解复用器133以及一组一对二复用器134。程序存储器128存储处理器123执行的指令程序135。挂钟计时器129用外部晶振136提供的参考时钟信号来增加计数器。计数器输出作为实际时间指示的持续增加的计数值序列。如以下进一步详细解释的,处理器123以及第二总线127上的其它电路可以通过第二总线127对挂钟计时器129进行写入或读取。相比通过第二总线127访问存储器125,处理器123通过第一总线124访问存储器125的存储器访问等待时间较小。图4的数字基带集成电路104也通过第二总线127连接到外部FLASH非易失性存储器设备137,并连接到外部动态同步随机存取存储器(SDRAM)138。如以下进一步详细解释的,数据移动器方框130和处理器123可以通过第二总线127对外部设备137和138进行读取或写入。
接收信道115(基带接收硬件)包括多个功能方框139-142,这指的是无线通信系统调制解调器子电路(WCSMSC)。WCSMSC 139-142包括前端子电路139、快速傅立叶变换(FFT)子电路140、解调(DEMOD)子电路141以及解映射/解交织/解码(DDE)子电路142。一些存储器(本文称为“采样缓冲器”143)对从前端WCSMSC 139传到FFT WCSMSC 140的数据进行缓存。相同数量的存储器(本文)称为“符号缓冲器”144)对从FFTWCSMSC 140传到解调WCSMSC 142的数据进行缓存。另一些存储器(本文称为“数据片缓冲器”145)对从解调WCSMSC 141传到DDE WCSMSC142的数据进行缓存。“解码输出缓冲器”146对从DDE WCSMSC 142传到第二总线127的数据进行缓存。接收信道数据的通用路径是在图4中从左向右通过电路114、134、139、143、140、144、141、145、142和146到第二总线127。
发射信道116包括另一些无线通信系统调制解调器子电路(WCSMSC)147-150。WCSMSC 147-150包括编码/交织/映射子电路147、调制子电路148、反快速傅立叶变换(IFFT)子电路149以及窗口和相加子电路150。如本文所示,发射信道的各子电路由一组缓冲器缓存。发射信道数据的通用路径是从右往左通过电路151、147、152、148、153、149、154、150、133以及1117到RF收发机集成电路103。
在一个新颖方面,如本文所示,紧密耦合的存储器系统126的存储器125存储了多个任务列表。每个任务列表包含由数字基带集成电路104的相关子电路执行的一系列任务指令。在所示示例中,任务列表TL1包含用于FFT WCSMSC 140的任务指令。任务列表TL2包含用于解调WCSMSC 141的任务指令。任务列表TL3包含用于DDE WCSMSC 142的任务指令。任务列表TL4包含用于数据移动器方框130的任务指令。虽然在图4中未示出,但存储器125还包括用于作为整体的发射信道电路116、用于编解码器方框131以及用于视频处理器方框132的任务列表。处理器123可以如所期望的通过第一总线124将任务指令写入这些任务列表,修改这些任务列表,删除任务列表以及保存这些任务列表。将每个任务列表保存在蜂窝缓冲器的存储器中。每个任务列表包含当由适当子电路执行时用于配置并控制子电路的任务指令。每个相关子电路既包括与第二总线127相耦合的任务管理器电路又包括一些用于执行数据处理操作的专用功能电路。图4中附图标记155标识了FFT WCSMSC 140的任务管理器电路155。
图5是一个代表性WCSMSC的更详细的图。所描绘的WCMSC是FFTWCSMSC 140。任务管理器电路155包括通用任务管理器部分156、FFT控制状态机部分177、一组指针寄存器157-160以及DMA(直接存储器存取)引擎161。FFT WCSMSC 140包括一些用于执行WCSMSC的主要数据处理操作的专用硬件电路162。专用硬件电路162通过第一接口电路163从缓冲器143接收数据。专用硬件电路162通过第二接口电路164将数据提供到缓冲器144中。如以下进一步说明的,通用任务管理器部分156适用于通过第二总线127从存储器125中的相应任务列表(TL1)逐条读取任务指令。处理器123可以通过第二总线127将写指针WR_PTR写入到任务管理器155的寄存器159中。DMA引擎161从FFT硬件方框165读取信息并通过第二总线127将该信息写入到第二总线127上的电路中(例如存储器125)。FFT控制电路177解释了通用任务管理器156读取的任务指令,然后用信号导线166来控制并配置FFT硬件方框165。通过这种方式,任务管理器155可以控制接口163,使得从采样缓冲器143(见图4)的特定部分读取数据并将数据传递到FFT专用硬件电路162以便进行处理。类似地,任务管理器155可以控制接口164,使得将FFT专用硬件电路162输出的数据写入到符号缓冲器144(见图4)的特定部分中。虽然在图5和图4中对于每个附图和示例将第二总线127描绘成一条单独的线,但第二总线127可以包括第一子总线,用于将处理器123与各种WCSMSC的各任务管理器中的指针寄存器相耦合,并且还可以包括第二子总线,用于将各WCSMSC的任务管理器与存储器125相耦合。通用任务管理器156之所以称为“通用”是因为在每个WCSMSC的任务管理器中都复制了它的硬件。另一方面,在图5的椭圆中示出的控制电路是专用于受控制的特定WCSMSC的任务指令的状态机电路。通过以诸如Verilog或VHDL的硬件描述语言来描述该任务管理器电路的各组成部分的功能、然后用商业上可得的合成工具来生成执行所述功能的硬件电路设计,来实现任务管理器的电路。
图6是说明任务列表的图。在所示特定示例中,任务列表是用于FFTWCSMSC 140的任务列表TL1。将任务列表TL1存储在存储器125内的循环缓冲器中。该循环缓冲器开始于寄存器157中的指针STAR_ADDR所识别的存储器125中的位置。循环缓冲器终止于寄存器158中的指针END_ADDR所识别的存储器125中的位置。通过存储在任务管理器155的寄存器157和158中的START_ADDR和END_ADDR指针,FFT WCSMSC140的任务管理器155知道循环缓冲器在存储器125中存储任务列表TL1开始和终止的位置。对于通用任务管理器156,这些寄存器是可存取的。图6中的每个矩形代表了存储器125中的一个字。在图6的示例中,在任务列表TL1中有几条任务指令(TASK#1、TASK#2、TASK#3、TASK#4、TASK#5)。应注意的是,这些任务指令包括的字比其它的多。指针EXEC_PTR识别出WCSMSC执行最终任务指令终止之后的下一个位置(下一个字)。指针WR_PTR标识出要执行的最后任务指令的最后一个字的终止。在图6的示例中,FFT WCSMSC执行任务列表TL1中的所有任务指令。因此,EXEC_PTR和WR_PTR指针指向相同的位置。如果这些指针处于该状况,则任务管理器155不会再试图从任务列表TL1中读取任何任务指令。
图7是说明处理器123将新任务指令(TASK#6)写入到任务列表TL1之后的TL1任务列表的图。处理器123将任务指令TASK#6加到存储器125中的TL1任务列表,然后通过第二总线127将新WR_PTR值写入寄存器159,将任务管理器155的寄存器159中的WR_PTR指针加3。任务管理器155检测到WR_PTR已被更新的状况,并通过第二总线127读出存储器125的下一个任务指令(TASK#6)来作出响应。在读取任务指令之后,任务管理器155更新了EXEC_PTR,以便在读取了最后任务指令之后指向任务列表中的下一个位置。通过这种机制,通过高速的第一总线124将适当任务指令写入到用于特定WCSMSC的任务列表中,处理器123使该WCSMSC执行特定任务。一旦已更新了存储器125中的任务列表,则处理器123仅需通过第二总线127进行一次写入,就可以更新该WCSMSC的WR_PTR,使得适当WCSMSC的任务管理器作出响应、读取下一条任务指令,对其进行解释,并使其指定的操作得以执行。
图8是示出处理器123如何使所期望的WCSMSC执行所期望的操作的简化流程图。在第一步骤(步骤200)中,处理器123为存储器125中的WCSMSC准备任务列表,该任务列表包括命令WCSMSC执行所期望的操作的任务指令。例如,如上所述,处理器123可以通过高速第一总线124将任务指令写入到存储器125中的目标WCSMSC的任务列表末尾上。在第二步骤(步骤201)中,处理器123通过较慢总线127更新目标WCSMSC的任务管理器中的WR_PTR的值,使得任务管理器的WR_PTR指向在终止位置之后新添加的任务指令的任务列表位置。通过较慢总线127仅需一次写入,以便开始执行任务列表中的任务指令。
图9是说明目标WCSMSC的任务管理器如何响应图8的处理器操作的简化流程图。在第一步骤(步骤202)中,任务管理器认识到其WR_PTR已被更新,并作为响应从存储器125内的任务列表中读出下一条任务指令。任务管理器通过第二总线127执行该读取。然后,任务管理器解释(步骤203)该任务指令并产生(例如,通过图5中的导线166)提供给WCSMSC的硬件方框部分的控制和/或配置信号。控制和/或配置信号使硬件方框部分执行由任务指令指定的操作。本文也将执行该操作称为“执行”任务或执行任务指令。接着,如果EXEC_PRT不等于WR_PTR(步骤204),则在任务列表上还有任务指令要被读取和执行。处理返回到步骤202。然而,如果EXEC_PTR等于WR_PTR(步骤204),则在任务列表上没有任务指令要被执行。只有处理器123将WR_PTR再次写入以表示还有任务指令要被执行(步骤205),任务管理器才返回到步骤202以便从存储器125中读取任务指令。任务管理器将存储器125中的START_PTR与END_PTR之间的位置视为循环缓冲器。因此,如果最后执行的任务指令位于该循环缓冲器的末尾,则任务管理器在该循环缓冲器的开始处寻找新增加的任务指令。可以合并缓冲器上溢和下溢错误检查。
某些任务指令是本文称为“时间戳任务指令”或“计时任务指令”的一类任务指令。时间戳任务指令包括具有时间戳的字段。该时间戳对应于图4的挂钟计时器方框129中由挂钟计数器输出的计时器计数值。读取这种时间戳任务指令的任务管理器解释该任务指令,但在到达任务指令的时间戳字段所表示的时间之前,不使目标WCSMSC的相关硬件开始执行指定操作。因此,处理器123可以将时间戳任务指令写入到多个不同的任务列表中,并且可以更新相应任务管理器的WR_PTR,使得相应任务管理器读取时间戳任务指令。如果将这些时间戳任务指令的所有时间戳都设定在相同的未来时间,则任务管理器将不会使它们各自的硬件方框开始执行指定操作。当图4的挂钟计数器129保持的时间计数值到达时间戳值时,那么所有的任务管理器将在如处理器先前建立的它们各自操作的执行中同时启动它们各自的硬件方框。以这种方式,处理器123可以控制多个WCSMSC同时执行操作,尽管事实上处理器123是顺序地执行指令。
图10是图4的挂钟计时器129的方框图。挂钟计时器129包括32比特的挂钟计数器167,其包括如此多的比特,以至于它的计数在贯穿调制解调器(挂钟计时器129作为其中的一部分)的整个使用期限(例如,十年)中都不会循环。因此,计时器计数值168对应于实际时间并表示实际时间。该实际时间的表示(通过使用时间戳任务指令)可用于调制解调器的所有各子电路,并将其称为“挂钟时间(wall clock time)”。在该示例中,挂钟计数器167在每个采样传入图4的接收信道115时递增一次。对挂钟计数器167进行计时的时钟信号是与通过线170提供给图4的ADC 114相同的信号ADC_CLK。挂钟计时器129包括可以通过第二总线127写入的控制寄存器171。挂钟计时器129包括为两个不同的空中接口标准产生具有正确采样频率的时钟信号的两个锁相环(PLL)172和173。在所示示例中,PLL 172输出LTE(长期演进)空中接口标准所需的正确15.36MHz的时钟信号,而PLL 173输出UMB(超级移动宽带)空中接口标准所需的正确9.83MHz的时钟信号。通过将适当控制比特写入到控制寄存器171的比特174中,处理器123针对调制解调器要处理的通信设定正确采样频率。LTE是本领域已知的技术,并且在名为“第三代合作项目”(3GPP)的组织处可得的文献中对其进行说明。UMB是本领域已知的技术,并且在名为“第三代合作项目2”(3GPP2)的组织的文献中对其进行说明。
挂钟计时器129还包括多个可编程计时器方框175A、175B至175N。这些可编程计时器方框均包括比较器,该比较器可以受控用来将INIT_VALUE与挂钟计数器167输出的计时器计数值168相比较。如上所述,各WCSMSC的任务管理器与第二总线127相耦合。由于第二总线127与可编程计时器方框175A、175B至175N相耦合,所以WCSMSC的任务管理器可以通过第二总线127写入适当地址来将INIT_VALUE和CONTROL值写入可编程计时器。如果通过这些INIT_VALUE和CONTROL值来正确配置可编程计时器,那么当挂钟计数器167输出的计时器计数值168达到INIT_VALUE时,可编程计时器方框的比较器将确认触发信号。例如,图7中的线176识别载有第一可编程计时器方框175A产生的一比特数字触发信号的信号导线。该触发信号通过适当硬线连接耦合到特定WCSMSC中的专用硬件电路的适当输入,因此如果确认了触发信号,则专用硬件电路将开始进行为它配置的操作。在使用时间戳任务指令的一个特定示例中,将触发信号导线176硬连线到在特定时间启动的专用硬件电路。WCSMSC的任务管理器读取它的任务列表并获取时间戳任务指令。作为解释时间戳任务指令的结果,任务管理器通过第二总线127将其写入挂钟计时器方框129,并设定可编程计时器,该可编程计时器的触发信号输出引线与专用硬件电路启动输入引线连接。任务管理器将从时间戳任务指令获得的时间戳值写入到可编程计时器的INIT_VALUE寄存器中。因为还未确认触发信号,因此WCSMSC中的专用硬件电路不会在此时开始执行由任务指令指定的操作。当到达所指定的时间时,可编程计时器中的比较器检测到作为挂钟计数器167输出的计时器计数值168与INIT_VALUE相匹配。作为该检测的结果,比较器确认触发信号,从而启动WCSMSC中的硬件电路。
图11是说明使用时间戳任务指令的简化流程图。在第一个步骤(步骤206)中,任务管理器通过第二总线127从存储器125读取下一条任务指令。然后,任务管理器解释(步骤207)时间戳任务指令。作为对任务指令解释的结果,任务管理器的控制电路部分设定挂钟计时器方框129,以便确认要提供给WCSMSC的专用硬件电路部分的触发信号。如上所述,在一个示例中,任务管理器通过第二总线127将各值写入到挂钟计时器129,以便设定适当的可编程计时器。然后,在时间戳表示的随后时刻,挂钟计时器确认(步骤208)触发信号。触发信号的确认启动了WCSMSC的专用硬件电路执行特定操作。例如,通过时间戳任务指令的其它字段中的值可以确定所执行的操作。
有很多方式可以实现执行时间戳任务指令的电路。上述目标WCSMSC的任务管理器将可编程计时器设置在挂钟中以生成触发信号的示例仅是一种可能的方式。在其它示例中,将时间戳值与挂钟时间相比较的比较器位于任务管理器内,并将计时器计数值168(挂钟时间)提供给比较器。
除了在时间戳所示时刻开始执行任务指令之外,还有三种可以启动执行任务指令的其它方式。也可以将指定应如何执行任务指令的四种不同方式称为“启动模式”。除了上述时间戳启动模式之外,还有一种立即启动模式。在该立即启动模式中,一旦任务管理器解释了任务指令就启动与任务指令相关的操作。然后,无需任何资格就开始进行任务指令所指定的操作。也有一种称为“HW事件驱动”的启动模式。在该模式中,在出现特定硬件事件的时刻启动要执行的操作。用于启动执行HW事件驱动任务指令的硬件事件例子是硬件任务完成或资源可用指示。还有第四种启动模式称为“SW事件驱动”启动模式。在该模式中,当软件写入一个识别的寄存器时启动要执行的操作。通过任务指令的第一个字中的两比特字段来指定所采用的特定启动模式。处理器123通过将任务指令中的这两个比特设定为适当值来指定将如何执行任务。
图12A是任务指令的头64比特的图。这些比特也称为“公共头部”。头四个比特“OP”是操作码。任务管理器的通用任务管理器部分对该操作码进行解码,以确定任务指令的类型以及如何处理任务指令的各字段。接下来的八个“LN”比特是保存一个数字的长度字段。该数字表示任务指令中的字数。任务管理器的通用任务管理器部分使用该长度字段来确定要从存储器125读取多少字。“AT2”字段包含表示要使用四个启动模式中哪一个的代码。“RTC COUNT”字段是时间戳。
图12B是称为“FFT任务”的任务指令图。FFT任务的公共头部如图12A所示。接下来的六十四个比特包括各种字段:源地址字段、目标地址字段以及四比特的FFT大小字段。四比特的FFT大小字段包含缓冲器中的若干位置。对于读入FFT WCSMSC的每个缓冲器值,FFT WCSMSC输出一个值。源地址字段包含采样缓冲器143中的第一位置的地址,FFTWCSMSC从该采样缓冲器143读取数据以便处理。目标字段包含符号缓冲器144中的第一位置的地址,FFT WCSMSC在该符号缓冲器中放置处理后的数据。在FFT大小字段中说明了:要从采样缓冲器143读取的连续缓冲器位置的数目以及对应的要写入符号缓冲器144的连续缓冲器位置的数目。
图12C是称为“采样缓冲器推送任务”的任务指令图。源地址字段表示推送数据的采样缓冲器143中的开始地址。目标地址字段表示所推送的数据应写入的存储器125中的开始地址。采样缓冲器推送长度字段包含表示要推送的连续缓冲器位置数目的数字。
图12D是称为“FFT采样缓冲器推送任务”的任务指令图。执行该任务指令使FFT WCSMSC执行如该任务指令第二个六十四比特指定的FFT操作,除此之外,执行该任务指令使数据从采样缓冲器143推送到存储器125。
图12E是称为“符号缓冲器推送任务”的另一个推送任务指令图。执行该任务指令使FFT WCSMSC 140将多个单独指定的缓存位置从符号缓冲器144推送到存储器125中。在图12A中说明了该任务指令的公共头部。将推送的值写入到存储器125中以目标地址字段所表示的地址开始的连续地址处。用源地址字段的序列表示要推送的单个值的地址。在“Num符号”字段中说明任务指令的字数以及由此要推送的值的数目。
图12F是称为“解调配置任务”的任务指令图。图12G是称为“解调MMSE任务”的任务指令图。图12H是称为“解调MRC任务”的任务指令图。通常,解调配置任务包含解调WCSMSC 141的配置参数,与通常较频繁变化的、解调MMSE和解调MRC任务指令中说明的参数相比较,这些配置参数是相对静止的。在使用中,将单个解调配置任务用于配置解调WCSMSC 141,以及随后的解调MMSE任务指令或解调MRC任务指令的序列,以使解调WCSMSC执行单独的解调操作。一般有两种解调操作可以执行:最小均方差(MMSE)型解调或最大比合并(MRC)型解调。解调MMSE任务指令用于执行MMSE型解调,而解调MRC任务指令用于执行MRC型解调。
图12I是称为“DDE配置任务”的任务指令图。在上述解调配置任务的情况下,DDE配置任务包含用于相对静止的DDE WCSMSC 142的配置参数。一个注解字段是一比特的“SCE”软合并使能字段。如果设置了该比特,则对DDE WCSMSC 142的解码器部分进行配置以便根据HARQ协议对来自比当前传输早的数据传输的数据执行软合并。
图12J是称为“DDE清除LLR任务”的任务指令图。执行该任务使DDE WCSMSC 142的软合并缓冲器(见图18的LLR缓冲器)内的数据将被清除。
图12K是称为“DDE推送任务”的任务指令图。执行该指令使信息将被推送至存储器125中。将DDE WCSMSC 142的解映射部分输出的信息推送至“解映射推送TCM目标地址”字段指定的存储器125中的位置。将DDE WCSMSC 142的解码部分输出的信息推送到“解码推送TCM目标地址”指定的存储器125中的位置。由DDE WCSMSC 142的解码器部分执行的许多操作之一是执行循环冗余校验(CRC),以判断是否成功解码接收到的数据。CRC校验是通过还是失败都是状态信息。以适当值设置两比特PSH字段使得以相对“解码推送TCM目标地址”值中的地址的已知偏移量将状态信息推送至存储器125。
图12A-12K中所述的任务指令仅是图4的数字基带集成电路104中所用的一些任务指令的示例。在一个采用此处所述的新型离线任务列表方法的典型设计中,如图4的数字基带集成电路104的情况,定义许多任务指令用来由具有任务管理器的每个WCSMSC执行。其它任务指令包括:DPICH XFER任务、CPICH XFER任务、数据移动器任务、分散收集任务、声音输出推送任务、VDEC输出推送任务、TDEC输出推送任务、ACK/NACK检测推送数据任务、TX帧状态推送数据任务。
图13是说明当接收信道处理输入LTE帧的示例期间发生各种类型处理的时间线图。图14是说明当接收信道处理输入UMB帧的示例期间发生各种类型处理的时间线图。应注意的是,在LTE示例中,在解调操作中处理七个OFDM符号FFT操作的结果之前收集了这些结果。在图13中,箭头指定的T0′-T6′表示七个FFT处理任务结束的时间。图13中的箭头T0-T6指定这七个FFT处理任务开始的时间。紧接着在FFT处理结果T6′产生之后开始进行控制信道解调。在控制信道信息的解调和解码之后,在如图13所示的时刻开始及终止解调和解码七个符号的业务信道数据。在图14的UMB示例中,相比之下在符号速率跳变模式中,对每个OFDM符号执行解调任务和解码任务。每个循环前缀的采样数目与图13的LTE示例不同。在接收LTE传输所需的处理类型与接收UMB传输所需的处理类型之间有很多不同格式和计时差异。尽管如此,操作的类型有很多相似。在两种传输的接收处理中,进行如下操作:FFT处理、解调以及解映射/解交织/解码。因此,在一个新颖方面,通过离线任务列表对无线调制解调器的接收信道的WCSMSC进行配置和控制,使得相同硬件可用来以两个空中接口标准(LTE或UMB)中的任一个进行通信传输。在一个示例中,在集成电路104上电之前,将处理器123执行(见图4)的程序135初始存储在外部闪存137中。在上电后,通过第二总线127将程序读入集成电路104,并载入程序存储器128中。处理器123执行来自程序存储器的程序135。程序135指示处理器123如何形成并控制存储器125中的任务列表,并由此确定如何配置集成电路104的各种子电路、如何启动它们的操作以及这些子电路如何一起工作来接收并发送无线通信。在一种模式下,处理器123在程序135的指导下形成并控制任务列表,使得集成电路104的各子电路一起工作,以便根据第一空中接口标准(例如,LTE)进行通信;在第二种模式下,在程序135的指导下处理器123形成并控制任务列表,使得集成电路104的各子电路一起工作,以便根据第二空中接口标准(例如,UMB)进行通信。由于WCSMSC子电路的适当的可重新配置性,因此从一种模式变为另一种模式不涉及任何硬件的重新设计。通过灵活且易于理解的任务指令以及采用离线任务列表体系结构有利于对数字基带集成电路104编程以适应变化的标准。
在任务列表体系结构的一个方面,如果在调制解调器的特定WCSMSC中以硬件形式实现的处理因标准变化而变得不兼容通信标准,并且如果WCSMSC硬件没有设计成适应变化标准的新需求,则通常仍然相对容易地修改完全相同的数字基带集成电路104以根据变化的标准进行操作。不是使WCSMSC执行需求已改变的操作,而是采用推送任务指令来推送WCSMSC另外用于执行操作的数据。处理器123从存储器125存取所推送的数据,并通过软件执行变化标准所要求的新类型的处理,然后基于软件处理的结果在数据路径上控制后续WCSMSC。处理器123通过酌情修改各WCSMSC的任务列表来控制后续WCSMSC。因此,可以从接收或发送信道有效地移除所选定的专用硬件子电路,然后常以所期望的软件实现来代替有效移除的子电路的功能。
图15在示例中说明了FFT WCSMSC 140的操作,其中,对一个时隙的输入LTE帧进行了处理。处理器123首先对挂钟计时器129进行配置,使得对于所涉及的LTE标准,ADC_CLK信号具有正确的采样频率(在该情况下为15.36MHz)。将输入ADC采样流写入采样缓冲器143中,使得将采样写入连续的缓冲器位置中。如图13中所表示的,在LTE示例中,OFDM符号包含1024个采样。除具有80个采样的长度的最后一个前缀以外,在符号之前的前缀均具有72个采样的长度。当输入采样流出现在采样缓冲器143中时,在图15中标记为“采样缓冲器”的列中对它们进行描述。在右边的下一列中给出采样缓冲器143中对应于各种符号和前缀的地址。要通过FFT WCSMSC 140进行的FFT操作的结果包括:对于从采样缓冲器143中读取的每个采样值将输出值置入符号缓冲器144中。因此,图15中标记为“符号缓冲器”的列示出了符号序列。在FFT操作中未使用并且忽略来自采样缓冲器的前缀采样值。不将前缀值向下传送经过FFT WCSMSC140的接收信道。因此,示出图15的“符号缓冲器”列的1024个位置符号彼此邻接而无任何干扰前缀。
图16说明如何创建用于FFT WCSMSC 140的任务列表,以便执行在图13和15中所列出的LTE FFT处理。任务列表中的第一个任务(任务#1)是从采样缓冲器143读取采样,如图15中所说明的在地址X+72处开始。将结果写入符号缓冲器144是在如图15中所说明的地址Y处开始的。读取的采样和写入的符号值的数目是1024。在已经将所有采样读入FFTWCSMSC 140之后,才对FFT操作进行初始化。从而FFT操作自身应该开始的时间是计时器计数值169到达值X+1024+72的时间。在图16最右边列中的上面四项指示应该在“FFT任务”的相关字段中给出的值。图12B给出了FFT任务的格式。以类似的形式创建添加到FFT任务列表的接下来六个任务。指定采样缓冲器143中的起始地址,使得在从采样缓冲器读取采样时略过前缀采样值。在已经进行了七个FFT操作(针对每个符号执行一个操作)之后,可以在图13中所说明的时间T7’处开始解调操作。
然而,在所说明的例子中,必须首先通过处理器123完成特定类型的信道估计操作。本文将信道估计操作描述为不适合于在专用硬件电路中执行、而较有利于通过处理器123在较灵活的软件中执行的操作的例子。某些导频信号采样以LTE标准指定的模式散布在符号缓冲器内的位置。因此,图16中的任务#8是图12E所给出的符号缓冲器推送任务。“符号缓冲器推送任务”指令中的源地址字段是符号缓冲器144中发现这些导频的位置。将启动模式指定为即时模式。在通过FFT WCSMSC 140执行推送任务指令之后,处理器123使用存储器125中的导频信息,以便在软件中执行特定的信道估计操作。在通过解调WCSMSC 141执行的解调中使用的解调参数(例如,信道估计参数和干扰估计参数)取决于信道估计的结果。在本例子中,处理器123通过在解调任务指令的各个实数和虚数参数字段中提供这些参数来改变这些解调参数,其中解调任务指令被写入用于解调WCSMSC 141的任务列表。例如,如果将要使用MMSE型解调,那么在解调MMSE任务指令中提供参数(见图12G),该解调MMSE任务指令启动所说明的在紧跟图13中时间T7′开始的解调操作。
通过处理器123在软件中执行的操作的另一个例子是ACK/NACK处理的例子,随后,在任务指令中使用其结果,以便对后续处理进行控制。将DDE推送任务(见图12K)置入用于DDE WCSMSC 142的任务列表。将该任务指令中的两比特PSH字段设置为使DDE WCSMSC 142的任务管理器将CRC校验的结果推送入存储区125内。在该例子中,处理器123取回所推送的CRC校验信息,并且使用该信息来判断解码成功还是解码失败。如果解码成功,那么在HARQ软合并中不使用所接收的业务数据。因此,处理器123可以将DDE清除LLR任务(见图12J)写入用于DDE WCSMSC142的任务列表,使得清除DDE WCSMSC 142解码部分中的软合并缓冲器。还可以将软合并使能(SCE)比特设置为零的DDE配置任务指令(见图12I)写入任务列表,以便使得不能通过DDE WCSMSC 142进行软合并。处理器123还可以通过将合适的任务指令写入用于发射信道116的任务列表,使ACK消息被发送。另一方面,如果处理器123确定解码失败,那么处理器123将不清除DDE软缓冲器,并且将不能进行软合并,使得将来自后续传输的信息与来自最后一个失败传输的缓冲消息进行软合并。处理器123还可以通过将合适的任务指令写入用于发射信道116的任务列表,使NACK消息被发送。
图17是图4的解调WCSMSC 141的方框图。解调WCSMSC 141包括任务管理器电路300、IQ收取器(fetcher)301、信道估计电路302、MMSE/MRC解调器引擎303以及写入管理器304。任务管理器电路300包括通用任务管理器部分305、包括指针寄存器在内的一系列寄存器306、AHB总线接口307、解调器控制状态机部分308以及一组先前任务寄存器309。通用任务管理器部分305作为主控装置与第二总线127的AXI总线部分进行耦合。AHB总线接口307作为从属装置与第二总线127的AHB总线部分进行耦合。通用数据流经过流水线数据路径从符号缓冲器144、经过解调WCSMSC 141到数据片缓冲器145。任务管理器300使用AXI总线接口,以便从紧密耦合的存储器125中读取任务指令。处理器123在AHB总线上作为主控装置,并且使用从属AHB接口307,以便读取解调WCSMSC的内部寄存器,并且写入寄存器306的WR_PTR寄存器,通过解调WCSMSC141读取数据片缓冲器145。解调WCSMSC 141可以执行三种通用类型的任务指令:配置任务指令,当执行时,加载用于将要进行将来解调操作的WCSMSC硬件引擎的配置参数;MMSE任务指令,当执行时,接收用于MMSE操作的参数并且实行解调;以及MRC任务指令,当执行时,接收用于MRC操作的参数并且实行解调。
在操作中,处理器123对解调WCSMSC 141的寄存器306中的WR_PTR进行更新,从而指示存在解调WCSMSC 141的至少一个额外的任务指令要执行。通用任务管理器305确定在紧密耦合的存储器125内是否存在新的任务指令由解调WCSMSC 141来执行。如果通用任务管理器305确定存在另一个任务指令,那么通用任务管理器305通知解调控制逻辑308,并且与解调控制逻辑308一起工作,以便通过第二总线127读取任务指令,并将其读入具有先前任务寄存器部分309的寄存器。通用任务管理器305对任务指令的头部进行解释,而解调控制逻辑308对任务指令的剩余部分进行解释。取决于任务指令解释的结果,解调控制逻辑308将配置参数提供给解调WCSMSC 141的其它部分。随后,解调控制逻辑308使那些其它部分被触发,以便在各个时间执行各种操作,使得实现由任务指令所指定的和任务指令中的全部操作。解调控制逻辑308为每个任务指令执行不同的状态机。在进入或者退出状态机的状态后,解调控制逻辑308确认控制信号。在解调WCSMSC设计的一个例子中,以硬件描述语言定义状态机,并且使用商业可得的合成工具将该描述合成到硬件逻辑。在任务管理器300的控制下,IQ收取器301从符号缓冲器144进行读取,以便从任务指令所指定的位置得到IQ采样。输入I采样值(实数)及其相应的输入Q采样值(虚数)共同包含IQ采样。信道估计电路302开始对信道进行估计、生成信道插入值并且将所生成的插入结果与相应的IQ采样进行联合,使得将IQ采样和相关的插入结果同时提供给MMSE/MRC引擎303。存在两个这种IQ收取器,一个用于天线101和102中的每个。MMSE/MRC引擎303使用两组IQ采样(一组用于一个天线)和相关的信道估计值,执行由任务指令所确定的一种解调,并输出解调输出值I、解调输出值Q以及SNR值。取决于接收信道激活的数目以及层的数目,使用MMSE解调或者MRC解调。可能存在输入引擎303的一个集合和输出的一个集合、输入的两个集合和输出的两个集合或者输入的两个集合和输出的一个集合。通过任务管理器300指示写入管理器304将解调输出值I、解调值Q以及SNR值的每个集合写入到数据片缓冲器145。以这种方式,解调控制逻辑308使解调WCSMSC 141一次处理一个音调,从符号缓冲器144读取音调、进行解调并且将结果写入数据片缓冲器。当通过任务指令指定的所有这些解调完成时,解调控制逻辑308在状态寄存器306中设定任务结束标记。如果任务指令指示应该从解调WCSMSC 141输出硬件选通信号以便对DDEWCSMSC 142内的操作进行初始化,那么将确认选通信号在导线310上。导线310从解调WCSMSC 141扩展到DDE WCSMSC 142。
图18是DDE(解映射/解交织/解码引擎)WCSMSC 142的图。DDEWCSMSC 142包括两个解映射引擎DEMAP1 400和401、解码器方框402(包括第一维特比解码器403、第二维特比解码器404、第一turbo解码器405和第二turbo解码器406)、推送引擎407、AHB总线接口408、包括配置寄存器和状态寄存器以及指针寄存器在内的寄存器409以及存储器接口410。每个解映射引擎400和401具有任务管理器功能,但是一些功能是共用的。例如,在图18中,AHB总线接口408、指针寄存器409和推送引擎407是共用的,并且将其描述为在解映射引擎外。解映射引擎400包括任务管理器电路411,以及包括解除覆盖(unpaint)电路412、LLR(对数似然比)发生器413、解扰器414以及解交织器415的数据流处理电路。类似地,解映射引擎401包括任务管理器电路416、解除覆盖电路417、LLR发生器418、解扰器419以及解交织器420。通用数据流从数据片缓冲器145、经过解映射器400和401并且经由总线422和423进入LLR缓冲器412,随后从LLR缓冲器421经由总线424返回解码器方框402、经过解码并且经由总线425输出到解码器输出缓冲器146。解映射引擎400的吞吐量性能比解映射引擎402的低,但是解映射引擎400还具有较低的功耗,并且在处理控制分组上受到限制。解映射引擎400具有到LLR缓冲器421的两个读/写信道,并且因此可以一次将两个LLR值输出给LLR缓冲器421的两个不同PBRI(删减式比特反转交织器)地址。另一方面,解映射引擎401用于处理数据分组,并且具有到LLR缓冲器421的六个读/写信道。解映射引擎401可以同时将六个不同PBRI地址处的六个LLR值输出并且写入LLR缓冲器412。因为解映射引擎400和401并行运行,所以每个解映射引擎具有其自己的任务管理器。DDE任务指令可能需要将信息推送回紧密耦合的存储器125。因此,DDE WCSMSC 142包括经由AHB从属接口连接到第二总线127的推送引擎407。
在操作中,处理器123将DDE任务列表中的任务指令置入存储器125内,并且对寄存器409内的WR_PTR进行更新。任务管理器416的通用任务管理器部分426确定存在由DDE WCSMSC 142执行的任务指令。通用任务管理器部分426从存储器125中读出任务指令。DDE任务指令的第一部分是用于控制解映射,而DDE任务指令的第二部分是用于控制解码。控制逻辑427使用第一部分,以便对方框417-420执行的解映射操作进行配置和控制。控制逻辑427可以采用经由信号导线310从解调WCSMSC 141接收的硬件触发信号,以便确定何时对任务指令所定义的某些操作进行初始化。控制逻辑427通过控制导线(未示出)将控制信号发送到方框417-420。解映射/解交织操作可以包括从LLR缓冲器421读取信息、一些处理并且随后在HARQ(混合自动重传请求)软合并操作中将信息写回LLR缓冲器421,或者解映射/解交织操作可以仅包括写入LLR缓冲器421而不进行任何软合并。如果将指示解映射操作结果的DDE任务指令推送到存储器125,那么控制逻辑427使推送引擎407将所指示的信息通过第二总线127推送到存储器125。在已经进行了解映射/解交织操作并且结果在LLR缓冲器421中之后,那么,控制逻辑427和解码器任务写入器428使用任务指令的第二部分,以便对执行解码操作的解码器方框硬件进行配置和控制。解码器任务写入器428触发解码器方框402的操作,并且给解码器方框402提供在解码中使用的合适配置和参数。解码器方框402读取信息以便在LLR缓冲器421之外进行处理,根据任务指令的第二部分并且根据控制逻辑427所配置和控制的来进行解码,将结果写入解码输出缓冲器146中。如果任务指令指示将解码操作的结果推送到存储器125,那么控制逻辑427使推送引擎407通过第二总线127将所指示的信息推送到存储器125。可以以这种方式推送的信息的例子是通过解码器方框402生成的CRC通过/失败信息。
在一个或多个示例性实施例中,可以在硬件、软件、固件或者其任何组合中实现所描述的功能。如果在软件中实现,可以将功能作为一个或多个指令或代码存储在计算机可读媒体上或者在其上发送。计算机可读媒体包括计算机存储媒体以及包括有助于将计算机程序从一个地方传送到另一个地方的任何媒体在内的通信媒体。存储媒体可以是通过通用或者专用计算机接入的任何可用媒体。通过举例而不是限制的方式,这种计算机可读媒体可以包括RAM、ROM、EEPROM、CD-ROM或者其它光盘存储器、磁盘存储器或者其它磁存储器件、或者可以用于以指令或者数据结构的形式携带或者存储所期望的程序代码模块、并且可以通过通用或专用计算机或者通用或专用处理器接入的任何其它媒体。同时,可以适当地将任何连接称为计算机可读媒体。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线(DSL)、或者诸如红外、无线电和微波的无线技术从网址、服务器、或者其它远程源发送软件,那么,将同轴电缆、光纤电缆、双绞线、DSL、或者诸如红外、无线电和微波的无线技术包括在媒体的定义中。如本文所使用的,磁盘和光盘包括紧凑式光盘(CD)、激光光盘、光学光盘、数字多用光盘(DVD)、软磁盘和蓝光光盘,其中,磁盘通常对数据进行磁复制,而光盘以激光对数据进行光复制。还应该将上述的组合包括在计算机可读媒体的范围内。
虽然上面为了指示的目的对某些特定实施例进行了描述,但是本专利文件所公开的内容具有通用适用性,并且不受限于本文所描述的特定实施例。离线任务列表结构不受限于用于实现根据诸如LTE、UMB或者WiMAX的任何特定空中接口标准进行通信的调制解调器,离线任务列表结构具有对其它空中接口标准的通用适用性,并且更广地适用于具有多个子电路的、用于对数据流执行不同操作的大型数字系统。虽然上面描述了处理器经由第一总线将任务指令写入紧密耦合的存储器中、并且任务管理器经由第二总线从紧密耦合的存储器中读出任务指令的例子,但这只是一个例子。在其它例子中,处理器和任务管理器经由相同的总线访问存储有任务指令的存储器。因此,可以实现对所描述实施例的各个特征的各种修改、改编和组合,而不脱离下面所给出的权利要求的范围。

Claims (32)

1.一种集成电路,包括:
存储器,存储第一任务列表和第二任务列表;
第一缓冲器;
第二缓冲器;
第三缓冲器;
耦合到所述存储器的总线;
第一无线通信系统调制解调器子电路(WCSMSC),适用于通过所述总线从所述存储器中读取所述第一任务列表的任务指令,其中,所述第一任务列表的第一任务指令包括源地址字段和目标地址字段,其中,所述源地址字段包含源地址值,所述源地址值标识由所述第一WCSMSC执行的第一操作的输入数据存储在所述第一缓冲器中的位置,其中,所述目标地址字段包含目标地址值,所述目标地址值标识所述第一WCSMSC将所述第一操作的数据结果写入所述第二缓冲器中的位置,其中,所述第一任务列表的第二任务指令是使所述第一WCSMSC将所识别的数据写入所述存储器内的推送任务指令;
第二WCSMSC,适用于通过所述总线从所述存储器中读取所述第二任务列表的任务指令,其中,所述第二任务列表的第一任务指令对所述第二WCSMSC进行配置,以便按照所述第一任务指令所指定的方式执行第二操作,其中,所述第二任务列表的第二任务指令包括源地址字段和目标地址字段,其中,所述源地址字段包含源地址值,所述源地址值标识由所述第二WCSMSC执行的第二操作的输入数据存储在所述第二缓冲器中的位置,其中,所述目标地址字段包含目标地址值,所述目标地址值标识所述第二WCSMSC将所述第二操作的数据结果写入所述第三缓冲器中的位置;以及
处理器,适用于维护所述第一和第二任务列表,其中,根据所述推送任务指令,所述处理器使用被写入所述存储器的数据来进行确定。
2.如权利要求1所述的集成电路,其中,所述确定是信道估计确定。
3.如权利要求1所述的集成电路,其中,所述确定是关于是生成确认(ACK)消息还是生成否定确认(NACK)消息的确定。
4.如权利要求1所述的集成电路,其中,所述确定是关于是发生还是不发生软合并操作的确定。
5.如权利要求1所述的集成电路,其中,所述确定是对解调参数的确定。
6.如权利要求1所述的集成电路,其中,所述处理器至少部分基于所述确定将任务指令写入所述存储器。
7.如权利要求1所述的集成电路,其中,所述第二WCSMSC是可配置的解调电路,其中,所述确定是对解调参数的确定,其中,所述处理器还适用于将所述第二任务列表的所述第一任务指令写入所述第二任务列表,使得所述第二任务列表的所述第一任务指令包括所确定的解调参数。
8.如权利要求1所述的集成电路,其中,写入所述存储器的所识别的数据包括关于循环冗余校验(CRC)是通过还是失败的指示。
9.如权利要求1所述的集成电路,其中,所述第一WCSMSC是执行快速傅立叶变换操作的可配置电路,其中,所述第二WCSMSC是执行解调操作的可配置电路,其中,所述第一和第二WCSMSC是无线通信调制解调器的接收信道的部分。
10.如权利要求1所述的集成电路,其中,所述第一WCSMSC是解调子电路,所述第二WCSMSC是执行解码的子电路,其中,所述第一和第二WCSMSC是无线通信调制解调器的接收信道的部分。
11.如权利要求1所述的集成电路,其中,所述第一和第二WCSMSC是通过执行特定任务指令以第一种方式可配置的,使得具有所述第一和第二WCSMSC部分的无线通信调制解调器能根据第一空中接口标准进行通信,其中,所述第一和第二WCSMSC是通过执行其它任务指令而以第二种方式可配置的,使得具有所述第一和第二WCSMSC部分的所述无线通信调制解调器能根据第二空中接口标准进行通信。
12.一种数据流处理装置,包括:
存储器;
处理器,将多个任务指令存储到所述存储器中;以及
可重新配置的无线调制解调器接收信道,包括多个无线通信系统调制解调器子电路(WCSMSC),其中,如果以第一种方式对所述多个WCSMSC进行配置,则将所述可重新配置的无线调制解调器接收信道配置为根据第一空中接口标准进行通信,其中,如果以第一种方式对所述多个WCSMSC进行配置,则将所述可重新配置的无线调制解调器接收信道配置为根据第二空中接口标准进行通信,其中,每个WCSMSC根据从所述存储器中读出的一个或多个所述任务指令的结果对其自身进行配置。
13.如权利要求12所述的装置,其中,所述处理器、第一总线以及所述存储器一起构成紧密耦合的存储器系统,其中,所述多个WCSMSC通过第二总线从所述存储器读出任务指令。
14.如权利要求12所述的装置,其中,存储在所述存储器内的所述任务指令之一是推送任务指令,其中,所述WCSMSC中的一个读取所述推送任务指令,并且执行所述推送任务指令,从而将所述推送任务指令指定的信息写入所述存储器中,其中,所述处理器从所述存储器读取所述信息,并且至少部分基于所述信息进行确定。
15.如权利要求14所述的装置,其中,所述确定是信道估计确定。
16.如权利要求14所述的装置,其中,所述确定是对解调参数的确定。
17.如权利要求14所述的装置,其中,所述确定是关于是生成确认(ACK)消息还是生成否定确认(NACK)消息的确定。
18.如权利要求14所述的装置,其中,所述处理器根据所确定的结果将任务指令写入所述存储器。
19.一种数据流处理方法,包括:
使用存储在存储器内的多个任务指令对多个无线通信系统调制解调器子电路(WCSMSC)进行控制,其中,每个WCSMSC从所述存储器中读取任务指令,并且执行所述任务指令指定的操作,使得所述多个WCSMSC一起作用为无线调制解调器的接收信道的部分。
20.如权利要求19所述的方法,还包括:
使用处理器,以便将每个WCSMSC的所述任务指令写入所述存储器中,其中,所述处理器、所述存储器和所述多个WCSMSC是集成电路的部分。
21.如权利要求20所述的方法,其中,所述处理器将第一组任务指令写入所述存储器,从而以第一种方式对所述多个WCSMSC进行配置,使得所述接收信道根据第一空中接口标准来接收通信,其中,所述处理器将第二组任务指令写入所述存储器,从而以第二种方式对所述多个WCSMSC进行配置,使得所述接收信道根据第二空中接口标准来接收通信。
22.如权利要求20所述的方法,其中,通过所述WCSMSC之一读取的所述任务指令是推送任务指令,其中,通过所述WCSMSC执行所述推送任务指令使所述WCSMSC将所述推送任务指令指定的信息写入所述存储器。
23.如权利要求20所述的方法,其中,通过所述WCSMSC之一读取的所述任务指令是配置任务指令,其中,通过所述WCSMSC执行所述配置任务指令使所述WCSMSC以所述配置任务指令确定的特定方式进行配置。
24.如权利要求20所述的方法,其中,通过所述WCSMSC之一读取的所述任务指令是时间戳任务指令,其中,通过所述WCSMSC执行所述时间戳任务指令使所述WCSMSC在所述时间戳任务指令指示的时间执行操作。
25.如权利要求24所述的方法,还包括:
维护用于输出当前时间的指示的挂钟计时器,其中,在所述时间戳任务指令的执行中使用所述当前时间的指示,以便确定何时到达由所述时间戳任务指令指示的时间。
26.一种数据流处理装置,包括:
存储器,适用于对多个任务指令进行存储;
处理器,经由第一总线耦合到所述存储器,使得所述处理器、所述存储器和所述第一总线构成紧密耦合的存储器系统;
第二总线;
第一模块,用于经由所述第二总线从所述存储器读取任务指令并且用于对数据流执行第一种操作;以及
第二模块,用于经由所述第二总线从所述存储器读取任务指令并且用于对所述数据流执行第二种操作,其中,所述数据流经过所述第一模块并且随后经过所述第二模块,其中,所述第一和第二模块是无线通信调制解调器的接收信道的部分,其中,以第一种方式对所述接收信道进行配置,使得所述接收信道能根据第一空中接口标准来接收通信,其中,以第二种方式对所述接收信道进行配置,使得所述接收信道能根据第二空中接口标准来接收通信。
27.如权利要求26所述的装置,其中,所述第一种操作是快速傅立叶变换(FFT)操作,其中,通过所述第一模块从所述存储器读取的所述任务指令中的一些任务指令是要执行FFT操作的指令,其中,所述第二种操作是解调操作,其中,通过所述第二模块从所述存储器读取的所述任务指令中的一些任务指令是要执行解调操作的指令。
28.如权利要求26所述的装置,其中,所述任务指令之一是推送任务指令,使得通过所述第一模块将信息写入所述存储器,其中,所述处理器从所述存储器读取所述信息,并且使用所述信息来确定由所述处理器随后写入所述存储器的任务指令。
29.如权利要求26所述的装置,其中,所述任务指令之一是硬件信号事件任务指令,所述硬件信号事件任务指令是通过所述第二模块从所述存储器读取的,其中,所述第二模块通过在接收到在信号导线上从所述第一模块接收的信号后初始化操作,来执行所述硬件信号事件任务指令。
30.一种集成电路,包括:
处理设备,适用于将任务指令存储到存储器内;以及
可重新配置的无线调制解调器数据路径,包括:
第一无线通信系统调制解调器子电路(WCSMSC),其适用于从所述存储器读取任务指令,并且根据所述第一WCSMSC读取的任务指令中的一个或多个任务指令的指定对其自身进行配置;以及
第二WCSMSC,其适用于从所述存储器读取任务指令,并且根据所述第二WCSMSC读取的任务指令中的一个或多个任务指令的指定对其自身进行配置,其中,根据从所述存储器读取的第一任务指令的结果,以第一种方式对所述第一和第二WCSMSC进行配置,使得将所述可重新配置的无线调制解调器数据路径配置为根据第一空中接口标准对数据进行处理,其中,根据从所述存储器读取的第二任务指令的结果,以第二种方式对所述第一和第二WCSMSC进行配置,使得将所述可重新配置的无线调制解调器数据路径配置为根据第二空中接口标准对数据进行处理。
31.如权利要求30所述的集成电路,其中,所述处理设备通过到所述存储器的专用存储器接口将任务指令写入所述存储器,其中,所述第一和第二WCSMSC通过总线而不通过所述专用存储器接口从所述存储器读取任务指令。
32.如权利要求30所述的集成电路,其中,从下列各项构成的群组中获得所述可重新配置的无线调制解调器数据路径:可重新配置的接收信道数据路径;以及可重新配置的发射信道数据路径。
CN200980110460.7A 2008-03-26 2009-03-07 实现多个空中接口标准的可重新配置的无线调制解调器子电路 Expired - Fee Related CN102099801B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US3977408P 2008-03-26 2008-03-26
US61/039,774 2008-03-26
US4065408P 2008-03-29 2008-03-29
US61/040,654 2008-03-29
US12/396,270 2009-03-02
US12/396,270 US8520571B2 (en) 2008-03-26 2009-03-02 Reconfigurable wireless modem sub-circuits to implement multiple air interface standards
PCT/US2009/036438 WO2009120480A1 (en) 2008-03-26 2009-03-07 Reconfigurable wireless modem sub-circuits to implement multiple air interface standards

Publications (2)

Publication Number Publication Date
CN102099801A CN102099801A (zh) 2011-06-15
CN102099801B true CN102099801B (zh) 2015-01-14

Family

ID=40785459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980110460.7A Expired - Fee Related CN102099801B (zh) 2008-03-26 2009-03-07 实现多个空中接口标准的可重新配置的无线调制解调器子电路

Country Status (7)

Country Link
US (1) US8520571B2 (zh)
EP (1) EP2266053A1 (zh)
JP (1) JP5518831B2 (zh)
KR (1) KR101257320B1 (zh)
CN (1) CN102099801B (zh)
TW (1) TW201001182A (zh)
WO (1) WO2009120480A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8458380B2 (en) * 2008-03-26 2013-06-04 Qualcomm Incorporated Off-line task list architecture utilizing tightly coupled memory system
US8787433B2 (en) * 2008-03-28 2014-07-22 Qualcomm Incorporated Wall clock timer and system for generic modem
US8699529B2 (en) * 2008-03-28 2014-04-15 Qualcomm Incorporated Broadband pilot channel estimation using a reduced order FFT and a hardware interpolator
CN101820459A (zh) * 2010-02-10 2010-09-01 青岛海信移动通信技术股份有限公司 一种通信设备的接口电路及一种智能移动通信终端
KR101233214B1 (ko) * 2011-06-02 2013-02-15 엘지전자 주식회사 이동통신 단말기 및 그 동작방법
US9223376B2 (en) 2012-03-23 2015-12-29 Qualcomm Incorporated Managing electrical current in a portable computing device when two or more communications overlap in drawing power during a transmission
US9672519B2 (en) 2012-06-08 2017-06-06 Fmr Llc Mobile device software radio for securely passing financial information between a customer and a financial services firm
CN104573347A (zh) * 2014-12-26 2015-04-29 北京空间机电研究所 一种确定蜂窝缓冲器在着陆缓冲过程中冲击力的方法
US10320407B1 (en) * 2018-02-06 2019-06-11 Analog Devices Global Unlimited Company Low power synchronization of multiple analog to digital converters
CN108415859B (zh) * 2018-04-28 2023-10-27 珠海一微半导体股份有限公司 一种激光陀螺仪数据的硬件加速电路
TWI692746B (zh) * 2018-11-27 2020-05-01 瑞鼎科技股份有限公司 應用於行動裝置之顯示驅動器的資料快取方法
CN110383232B (zh) * 2019-05-05 2021-03-23 长江存储科技有限责任公司 具有序列处理单元的存储器控制系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5790817A (en) * 1996-09-25 1998-08-04 Advanced Micro Devices, Inc. Configurable digital wireless and wired communications system architecture for implementing baseband functionality
US6128307A (en) * 1997-12-01 2000-10-03 Advanced Micro Devices, Inc. Programmable data flow processor for performing data transfers

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2311882B (en) 1996-04-04 2000-08-09 Videologic Ltd A data processing management system
US6125404A (en) * 1998-04-17 2000-09-26 Motorola, Inc. Data processing system having a protocol timer for autonomously providing time based interrupts
US6795442B1 (en) 1998-04-23 2004-09-21 Emulex Design & Manufacturing Corporation System and method for scheduling message transmission and processing in a digital data network
TW381213B (en) * 1998-07-31 2000-02-01 Via Tech Inc Surge detector for power supply
FR2785405B1 (fr) 1998-11-04 2001-01-19 Matra Nortel Communications Sequenceur d'actions synchrones dans un systeme a processeur, et circuit integre comportant un tel sequenceur
US6292887B1 (en) 1999-03-31 2001-09-18 International Business Machines Corp. System and method for synchronizing instruction execution with external events
US6577678B2 (en) * 2001-05-08 2003-06-10 Quicksilver Technology Method and system for reconfigurable channel coding
US7028118B2 (en) * 2001-12-12 2006-04-11 Texas Instruments Incorporated Multi-channel buffered serial port debugging
US7142551B2 (en) 2002-07-15 2006-11-28 Zarlink Semiconductor V.N. Inc. Hardware implementation of Voice-over-IP playback with support for comfort noise insertion
US7240231B2 (en) * 2002-09-30 2007-07-03 National Instruments Corporation System and method for synchronizing multiple instrumentation devices
US7937591B1 (en) * 2002-10-25 2011-05-03 Qst Holdings, Llc Method and system for providing a device which can be adapted on an ongoing basis
US7421694B2 (en) 2003-02-18 2008-09-02 Microsoft Corporation Systems and methods for enhancing performance of a coprocessor
WO2005010798A2 (en) * 2003-07-29 2005-02-03 Dan Raphaeli Method and corresponding system for hand-held rf tag locator
US7623894B2 (en) 2003-10-09 2009-11-24 Freescale Semiconductor, Inc. Cellular modem processing
TWI234714B (en) * 2003-12-03 2005-06-21 Ind Tech Res Inst Reconfigurable radio processor architecture
US8533716B2 (en) * 2004-03-31 2013-09-10 Synopsys, Inc. Resource management in a multicore architecture
JP4643583B2 (ja) * 2004-09-10 2011-03-02 株式会社日立製作所 表示装置及び撮像装置
JP4559192B2 (ja) 2004-11-08 2010-10-06 株式会社日立国際電気 ソフトウェア無線機
US7649968B2 (en) * 2004-11-12 2010-01-19 Mediatek Inc. Timing system and method for a wireless transceiver system
US20060179436A1 (en) 2005-02-07 2006-08-10 Sony Computer Entertainment Inc. Methods and apparatus for providing a task change application programming interface
JP2006270910A (ja) 2005-02-22 2006-10-05 Mitsubishi Electric Corp ソフトウェア無線携帯電話通信システム及びソフトウェア無線携帯電話端末
GB0519981D0 (en) 2005-09-30 2005-11-09 Ignios Ltd Scheduling in a multicore architecture
US7954114B2 (en) 2006-01-26 2011-05-31 Exegy Incorporated Firmware socket module for FPGA-based pipeline processing
JP4751735B2 (ja) 2006-02-15 2011-08-17 富士通株式会社 通信リンク確立方法および通信リンク確立プログラム
US7693544B2 (en) * 2006-06-29 2010-04-06 Intel Corporation System, method and device of receiving signals of a plurality of communication services
US8326906B2 (en) * 2007-01-25 2012-12-04 Positron Access Solutions, Inc. Efficient multiple input multiple output signal processing method and apparatus
US8458380B2 (en) * 2008-03-26 2013-06-04 Qualcomm Incorporated Off-line task list architecture utilizing tightly coupled memory system
US8787433B2 (en) * 2008-03-28 2014-07-22 Qualcomm Incorporated Wall clock timer and system for generic modem

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5790817A (en) * 1996-09-25 1998-08-04 Advanced Micro Devices, Inc. Configurable digital wireless and wired communications system architecture for implementing baseband functionality
US6128307A (en) * 1997-12-01 2000-10-03 Advanced Micro Devices, Inc. Programmable data flow processor for performing data transfers

Also Published As

Publication number Publication date
WO2009120480A1 (en) 2009-10-01
KR20100122527A (ko) 2010-11-22
TW201001182A (en) 2010-01-01
EP2266053A1 (en) 2010-12-29
US20090245192A1 (en) 2009-10-01
JP2011519445A (ja) 2011-07-07
JP5518831B2 (ja) 2014-06-11
US8520571B2 (en) 2013-08-27
CN102099801A (zh) 2011-06-15
KR101257320B1 (ko) 2013-04-23

Similar Documents

Publication Publication Date Title
CN102099800B (zh) 离线任务列表结构
CN102099801B (zh) 实现多个空中接口标准的可重新配置的无线调制解调器子电路
TWI392298B (zh) 用於使用解調-位元映像來增進數據機解碼器之效能的清零對數概度比(llrs)之方法、裝置及電腦程式產品
CN103986680B (zh) 一种小型化双通道ofdm通信系统及其实现方法
EP1540848B1 (en) Flexible tdma system architecture
WO2019128763A1 (zh) 一种极化码译码器及译码方法
CN106559204B (zh) 一种导频的配置方法及装置
Anwar et al. A software defined approach for common baseband processing
Lapotre et al. Stopping-free dynamic configuration of a multi-ASIP turbo decoder
Baruffa et al. Real-time generation of standard-compliant DVB-T signals
Kröll et al. Physical layer development framework for OsmocomBB
CN115865584A (zh) 基带数据流的处理方法、装置、设备及存储介质
CN113225161A (zh) 一种5g终端pdcch mimo检测加速器及设计方法
Radhakrishnan Implementation of Soft-output sphere decoder by rapid prototyping methodology

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150114

Termination date: 20190307