一种基于软件无线电的基带射频接口及其应用方法
技术领域
本发明涉及软件无线电领域,尤其涉及一种基于软件无线电的基带射频接口及其应用方法。
背景技术
随着无线通信技术的发展,出现了多种模式的通信体制,为了满足不同模式的互通性问题,人们提出了软件无线电(SoftwareDefinedRadio,SDR)的概念。软件无线电的中心思想是:构造一个具有开放性、标准化和模块化的通用硬件平台,将通信的各种功能通过软件来实现,并使宽带模拟/数字(A/D)转换器和数字/模拟(D/A)转换器尽可能靠近天线,以研制出具有高度灵活性、开放性的新一代无线通信系统。由于软件无线电可通过增加软件模块来增加新的功能,而且硬件也可随着器件的发展而不断升级,因此大大降低了开发成本和周期。所以,软件无线电的概念一经提出就受到了广泛的关注。
目前,软件无线电主要通过矢量处理器或多核数字信号处理器(DSP)两种方式实现,软件无线电与无线通信的基带射频接口的实现包括以下两种常见的设计方法。
其一为矢量处理器CEVA-XC321,该矢量处理器采用通用AXIslave接口和AXImaster接口将其内部数据存储器与外界的数据相连接,但是该矢量处理器没有配置与无线通信的基带射频接口。由于CEVA-XC321矢量处理器采用AXI通用接口,所以AXI标准总线方便扩展,但是,如果要配置与AXI通用接口相连的基带射频接口,则也必须使用AXI标准总线。因标准总线连线多,且AXI标准总线之间的通信需要握手,则要求基带射频接口两侧电路需要增加很多逻辑。为了使AXImaster接口和AXIslave接口能工作在不同频率下,也需在基带射频接口两侧分别设置很多寄存器片做缓存。此外,所述基带射频接口如果与ARM处理器、双倍速率同步动态随机存储器(DDR)等系统级芯片(SoC)器件挂在同一个AXI交换矩阵上,由于所述基带射频接口在长期演进(LTE)模式下需要数Gbps的带宽,可能会影响AXI交换矩阵上其它模块的工作;或者需要将AXI交换矩阵带宽加大,导致电路很复杂,且面积增大,相应增加功耗。
其二为TIkeystone的多核DSP架构,多核DSP采用片上交换架构TeraNet交换矩阵,速度高达每秒2兆兆位,可为所有SoC组成部分提供高带宽和低时延互连,各AXImaster接口到AXIslave接口均是点对点连接。TI的这款芯片配置有无线通信的基带射频接口,为(AntennaInterface,AIF)。AIF支持宽带码分多址(WCDMA)、全球微波互联接入(WiMAX)、LTE、全球移动通讯系统(GSM)、时分同步码分多址(TD-SCDMA)和TD-SCDMA的长期演进(TD-LTE)共六种通信模式,内部设有通用packet接口、帧同步模块、动态内存存取(DMA)控制器和先入先出队列(FIFO),同时,对应连接的六种通信模式还需要六个AIF。
TIkeystone多核DSP的基带射频接口AIF功能强大,但因其需考虑支持多达六种无线通信模式,所以其内部的FIFO会很大,并且还包含通用paket模式DMA等等,所以电路很复杂,且面积很大。
可见,上述两种现有的实现方式都存在一定缺陷,即:电路很复杂,导致占用较大面积,从而功耗也较大,同时基带射频接口所需的缓存也很大。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于软件无线电的基带射频接口及其应用方法,可保证基带射频接口在具有通用性的同时具备电路简单,功耗低的优点,且可简单实现对矢量处理器或多核DSP的调度。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种基于软件无线电的基带射频接口,包括:上行数据处理模块和对应于不同通信模式的下行数据处理模块、上行事件表模块、下行事件表模块、配置寄存器、选择器和通信模块;其中,
所述上行数据处理模块,用于缓存和转换通信模块所发的上行数据,并将所得数据发送到射频控制器RFC;
所述下行数据处理模块,用于转换和缓存从选择器接收到的下行数据,并在接收到通信模块的通知后,将所述下行数据经通信模块发送给矢量处理器;
所述上行事件表模块,用于存储预先配置的上行事件表,并根据已配置的时刻产生tick发送到矢量处理器;
所述下行事件表模块,用于存储预先配置的下行事件表,并根据已配置的时刻产生tick发送到矢量处理器;
所述配置寄存器,用于存储由ARM处理器已配置的信息;
所述选择器,用于根据配置寄存器中存储的已配置的信息选择对应通信模式的下行数据处理模块,并将从RFC接收到的下行数据转发给对应通信模式的下行数据处理模块;
所述通信模块,用于向矢量处理器发出写请求,并在收到回复后,通知下行数据处理模块;向矢量处理器发出读请求,并在请求被允许后,将从矢量处理器读出的数据转发给上行数据处理模块。
其中,所述上行事件表和下行事件表由矢量处理器或上层ARM处理器配置;对于不同的通信模式上行事件表和下行事件表的表项相同,表项对应的内容不同。
其中,所述通信模式包括:长期演进LTE模式和时分同步码分多址TD-SCDMA模式。
其中,所述通信模式为LTE模式时,所述下行数据处理模块设有两路下行数据输入端;所述通信模式为TD-SCDMA模式时,所述下行数据处理模块设有一路下行数据输入端。
本发明还提供了一种基于软件无线电的基带射频接口下行数据的处理方法,该方法包括:
将从RFC接收到的天线基带下行数据转换后,写入自身内部缓冲,向矢量处理器发出写请求,并在写请求被回复后,将缓冲中的数据发送给矢量处理器。
该方法具体为:
基带射频接口基于RFC的基本时钟,并根据已配置的采样间隔从RFC采样一个数据,采样所得的数据经定点到浮点转换之后,存入基带射频接口的内部缓冲,即乒乓缓冲器Buffer;数据存满乒乓Buffer两个缓存中的任一个后,向矢量处理器中的内部存储器访问仲裁器Arbitor发出写请求,并在写请求被Arbitor回复后,经Arbitor将缓冲中的天线基带下行数据发送给矢量处理器中的数据存储器DM。
本发明还提供了一种基于软件无线电的基带射频接口上行数据的处理方法,该方法包括:
向矢量处理器发出读请求,在读请求被允许后,从矢量处理器读出数据,并存储在自身内部缓冲中,再经转换后将缓冲中的上行数据发送到RFC。
该方法具体为:
基带射频接口在上行帧定时下,向矢量处理器中的Arbitor发出读请求,在读请求被允许后,经Arbitor读取矢量处理器DM中的数据,每次读取256bits数据,并将读取的上行数据存储在乒乓Buffer两个缓存中的任一个;基带射频接口分八次取出乒乓Buffer中缓存的数据,并进行浮点到定点的转换后,根据RFC给出的定时信息将数据发送到RFC。
本发明还提供了一种基于软件无线电的基带射频接口通过事件表调度矢量处理器的方法,预先配置上行、下行两个事件表存储于基带射频接口中;该方法还包括:事件表根据已配置的时刻产生tick发送到矢量处理器中的事件模块TickUnit启动矢量处理器。
本发明提供的基于软件无线电的基带射频接口及其应用方法,数据通道与事件表独立控制,上下行数据通道时钟根据通信模式可选,数据的帧头脉冲和数据有效信号可选,可以来自上游信号连线也可由ARM处理器配置,因此具备更大的灵活性与通用性。本发明基带射频接口向矢量处理器发出的读请求或写请求都具有最高优先级,这样可保证数据的写入或读出具有最低且固定的延时,相当于透传,且比现有的通用接口有更大的带宽,所以数据传输效率高。
本发明考虑LTE和TD-SCDMA两种通信模式,针对性强,采用最简单的存储器总线方式,数据缓存处理只需要一套电路,不需运用很大的FIFO,只用64字节的乒乓Buffer即可,所以本发明的电路结构简单,功耗也相对较低。
此外,本发明采用事件表来调度矢量处理器的运行,事件表由矢量处理器或ARM处理器配置,可以根据不同的通信模式配置不同的事件表,实现了多种通信模式调度的通用性,硬件资源上能共用相同的事件表项,实际应用时,事件表根据已配置的时刻产生相应的事件tick即可触发矢量处理器运行,实现方法简单,且能适用不同的通信模式。
本发明的基带射频接口对于不同通信模式的差别都由矢量处理器或上层ARM处理器来配置,所以本案硬件具有极好的通用性和扩展性。
附图说明
图1为本发明软件无线电系统的结构示意图;
图2为本发明基于软件无线电的基带射频接口的结构示意图;
图3为本发明基于软件无线电的基带射频接口实施例的结构示意图;
图4为本发明基带射频接口下行数据处理流程框图;
图5为本发明基带射频接口上行数据处理流程框图;
图6为本发明基带射频接口下行事件示意图;
图7为本发明基带射频接口上行事件示意图。
具体实施方式
软件无线电可通过矢量处理器或多核DSP两种方式实现,下面仅以矢量处理器为例对本发明进行描述。
本发明的基本思想是:设置专用的总线与矢量处理器内部的存储器进行通信,并通过配置事件表来调度矢量处理器的运行。
其中,所述专用总线的上下行各为256bit位宽,当然,考虑到不同通信模式中最大数据量的不同,该值可适当减小;所述事件表分为上行事件表和下行事件表,由矢量处理器或上层ARM处理器配置,可根据不同的通信模式配置不同的事件表,从而实现了多种模式调度的通用性,不同通信模式共用相同的事件表项,表项对应的内容不同。
本发明中,所述通信模式以LTE模式和时分同步码分多址(TD-SCDMA)模式为例进行阐述,当然除了这两种通信模式外,本发明还可应用于其它通信模式。
下面结合附图及具体实施例对本发明作进一步详细说明。
图1为本发明软件无线电系统的结构示意图,如图1所示,该系统包括:ARM处理器、DDR、AXI交换矩阵(AXIMatrix)、矢量处理器、RFC和基带射频接口。除基带射频接口外,其它组成部分为现有模块,其中,所述矢量处理器可由ARM处理器通过AXI总线配置,配置接口为BMI接口和APB3接口;矢量处理器还设置有AXIMaster接口,可通过该接口直接读写外围的DDR等存储器,矢量处理器中DMA控制器可通过该接口在外围存储器与矢量处理器内部的存储器之间进行数据搬运。因为矢量处理器设置有AXIMaster接口,且AXIMatrix是全互联的交换矩阵,所以矢量处理器也可以配置基带射频接口。
图2为本发明基于软件无线电的基带射频接口的结构示意图,如图2所示,包括:上行数据处理模块和对应于不同通信模式的下行数据处理模块、上行事件表模块、下行事件表模块、配置寄存器、选择器和通信模块;其中,
所述上行数据处理模块,用于缓存和转换通信模块所发的上行数据,并将所得数据发送到RFC;
所述下行数据处理模块,用于转换和缓存从选择器接收到的下行数据,并在接收到通信模块的通知后,将所述下行数据经通信模块发送给矢量处理器;
所述上行事件表模块,用于存储预先配置的上行事件表,并根据已配置的时刻产生tick发送到矢量处理器;
所述下行事件表模块,用于存储预先配置的下行事件表,并根据已配置的时刻产生tick发送到矢量处理器;
所述配置寄存器,用于存储由ARM处理器已配置的信息;
其中,所述已配置的信息包括:通信模式以及与通信模式对应的计数器、基准时钟、帧定时脉冲以及数据有效信号等。
所述选择器,用于根据配置寄存器中存储的已配置的信息选择对应通信模式的下行数据处理模块,并将从RFC接收到的下行数据转发给对应通信模式的下行数据处理模块;
所述通信模块,用于向矢量处理器发出写请求,并在收到回复后,通知下行数据处理模块;向矢量处理器发出读请求,并在请求被允许后,将从矢量处理器读出的数据转发给上行数据处理模块。
图3为本发明基于软件无线电的基带射频接口实施例的结构示意图,从图中可以看出,如图3所示,基带射频接口可适用于LTE和TD-SCDMA两种通信模式。其中,Lte_mrtr和TD_mrtr分别表示两种通信模式的计数器,mrtr为外部输入的计数值,为29bit宽。
对于LTE模式有两路天线下行数据输入端,包括rx0和rx1,rx0为图3中所述rx_i0[11:0]和rx_q0[11:0];rx1为图3中所述rx_i1[11:0]和rx_q1[11:0];LTE模式具有单天线上行数据输出tx,即tx_i[10:0]和tx_q[10:0];对于TD-SCDMA模式,具有下行rx和上行tx各一路,分别为:rx_i[10:0]和rx_q[10:0],以及tx_i[10:0]和tx_q[10:0]。
通过图3中所示的选择器根据ARM处理器通过BMI接口在配置寄存器中存储的配置情况,选择LTE模式、或TD-SCDMA模式的下行天线数据输入端,例如:模式配置为mode_sel=0时,表示选择LTE模式;mode_sel=1时,表示选择TD-SCDMA模式。同时,选择器还根据配置选择对应的计数器,并选择选定模式的基准时钟TD_clk或LTE_clk作为本案的基本工作时钟,选择与选定模式对应的帧定时脉冲rx_sf_tick和tx_sf_tick,以及对应的数据有效信号rx_valid;而对于TD-SCDMA模式,其不存在帧定时脉冲rx_sf_tick和tx_sf_tick,也不存在数据有效信号rx_valid。
这里,由ARM处理器通过BMI接口配置所述配置寄存器产生数据有效信号指示下行数据处理模块rx0_data_proc和rx1_data_proc,以及上行数据处理模块tx_data_proc何时开始处理数据。对于不同的通信模式,所述有效信号可通用,例如:下行数据有效信号可为:rx_data_valid_start和rx_data_valid_end,上行数据有效信号可为:tx_data_valid_start和tx_data_valid_end,有效信号只在一帧或子帧中的有效数据的开始和结束位置,以帧或子帧边界为起点。
图3中所述Tx_event_tab和rx_event_tab分别为上行事件表模块和下行事件表模块,用于依据事件表的配置产生tick发送到矢量处理器中的事件模块(TickUnit);所述ri_dm_arb对应于图2中的通信模块,执行上、下行数据处理模块与矢量处理器间数据的传输,并向矢量处理器发出读、写请求。图3中所述ri_tu_tx_tick为:输出到TickUnit的下行事件信号,为一个时钟周期宽的脉冲;所述ri_tu_tx_type为:下行事件的类型,1表示子帧事件;0表示符号事件。TickUnit收到ri_tu_tx_tick的同时将ri_tu_tx_type存入其内部的FIFO;所述ri_tu_rx_tick和ri_tu_rx_type与下行类似,表示上行事件信号和上行事件的类型。
图3中所述ri_dm_req表示本发明基带射频接口向矢量处理器中的DM所发的请求;所述ri_dm_wr表示请求的类型,0表示读请求,1表示写请求;所述ri_dm_addr[14:0]表示读写请求的地址;所述ri_dm_mask[7:0]表示写请求的mask,即读写1次256bits数据,相当于8个32bits数据,第ibit=0,即第i个数据不被写入DM,所有bit均为1时,表示8个32bits数据允许写入;均为0时,则表示8个32bits数据不允许写入DM。所述ri_dm_wdata[255:0]表示写入DM的数据总线256bit宽;所述ri_dm_rdata[255:0]表示读出DM的数据总线256bit宽。
下面对本发明基于软件无线电的基带射频接口的应用方法进行描述。
首先介绍本发明基带射频接口上、下行数据的处理方法,其中,所述基带射频接口下行数据的处理方法如下:
基带射频接口将从RFC接收到的天线基带下行数据转换后,写入自身内部缓冲,向矢量处理器发出写请求,并在写请求被回复后,将缓冲中的数据发送给矢量处理器;具体为:
基带射频接口基于RFC的基本时钟,并根据已配置的采样间隔从RFC采样一个数据,采样所得的数据经定点到浮点转换之后,存入基带射频接口的内部缓冲,即乒乓缓冲器(Buffer);数据存满乒乓Buffer两个缓存中的任一个后,向矢量处理器中的内部存储器访问仲裁器(Arbitor)发出写请求,并在写请求被Arbitor回复后,经Arbitor将缓冲中的天线基带下行数据发送给矢量处理器中的数据存储器(DM)。
其中,所述下行数据写入内部缓冲是基于通信模式的基带频率;所述发出写请求要求将下行数据写入矢量处理器的这部分电路采用与矢量处理器相同的高频工作时钟,从而可保证快速将缓冲中的下行数据发出;下行数据的采样间隔可以根据不同信道带宽以及不同通信协议模式配置,由ARM处理器通过BMI接口配置于配置寄存器中,例如:可配置两个、四个、八个或十六个时钟周期。
所述基带射频接口上行数据的处理方法如下:
基带射频接口向矢量处理器发出读请求,在读请求被允许后,从矢量处理器读出数据,并存储在自身内部缓冲中,再经转换后将缓冲中的上行数据发送到RFC;具体为:
基带射频接口在上行帧定时下,向矢量处理器中的Arbitor发出读请求,在读请求被允许后,经Arbitor读取矢量处理器DM中的数据,每次读取256bits数据,即每次读取的数据存满乒乓Buffer中的任一个缓存,并将读取的上行数据存储在基带射频接口的乒乓Buffer两个缓存中的任一个;基带射频接口分八次取出乒乓Buffer中的数据,进行浮点到定点的转换后,根据RFC给出的定时信息将数据发送到RFC。
其中,所述发出读请求要求从矢量处理器读出数据的部分电路采用与矢量处理器相同的高频时钟;所述从基带射频接口将数据发送到RFC采用通信模式基带工作频率时钟。
本发明中,基带射频接口向矢量处理器发出的读请求或写请求都是具有最高优先级的,可以直接透传,所以数据写入矢量处理器以及从矢量处理器读出数据的路径延时是固定的,可保证RFC的严格定时要求。其中,本发明的矢量处理器中的Arbitor预先设定读、写请求的优先级为最高,因此不会被其它任何对于DM的请求阻塞。
此外,下行数据的采样定时或上行数据的发送定时都由RFC给出的数据帧定时以及数据有效信号控制,当然,数据帧定时以及数据有效信号也可通过ARM处理器来配置基带射频接口的寄存器,使基带射频接口得到这些信息。
下面介绍本发明基带射频接口通过事件表调度矢量处理器的方法,如下:
预先配置上行、下行两个事件表存储于基带射频接口中;事件表根据已配置的时刻产生tick发送到矢量处理器中的TickUnit,TickUnit执行FIFO操作,当TickUnit确定事件FIFO不为空,且矢量处理器处于空闲状态时,启动矢量处理器;具体为:
矢量处理器或上层ARM处理器预先配置上、下行事件表开始的帧定时,其可以与数据帧定时相同也可以不同,可根据实际需要配置。一般情况下,下行事件表开始的帧定时滞后于数据子帧边界一个符号,上行事件表开始的帧定时则提前两到三个符号,因为需要一定时间来处理需发送的上行数据。
事件表中的事件都在事件表的帧中产生,每到帧头自动在相应时刻重新产生事件表中定义的事件tick,发送到矢量处理器中的TickUnit。之后,TickUnit将执行FIFO操作,确定事件FIFO不为空,且矢量处理器处于空闲状态时,自动启动矢量处理器。
其中,所述TickUnit位于矢量处理器中,一般包括上行和下行共2个FIFO,FIFO中的每行内容为事件的类型,为:帧事件或符号事件。
这里,简单介绍矢量处理器是如何启动的。矢量处理器是由图1中所示的已有时钟控制模块启动的,时钟控制模块控制矢量处理器各部分的时钟开关,设置矢量处理器的启动信号,所述启动信号通常为一个寄存器,设置为1则维持一个时钟周期,即产生一个启动脉冲启动矢量处理器。矢量处理器启动后转到pc=0处执行代码,弹出TickUnit中的事件,查询上次执行代码时设置的状态寄存器,并跳转到相应的位置处开始执行。通常,矢量处理器上电第一次执行过程是:由ARM处理器配置图1中的DMA控制器,启动DMA控制器将矢量处理器需要执行的程序代码从外部DDR搬运到矢量处理器的内部PM-程序存储器中,之后配置时钟控制模块启动矢量处理器。
矢量处理器程序启动后,会弹出存储在TickUnitFIFO中的事件,并根据事件表项的内容进行不同的处理,例如:上行某符号数据的处理或下行某符号数据的处理。矢量处理器也可以根据当前处理的结果,决定是否删除TickUnitFIFO中剩余的事件表项,以减少矢量处理器不必要的启动,减少功耗,这在通信系统中根据前期解码的结果判断后续是否还需要解码操作等场景中很有用处。可见,通过事件表的配置可以灵活地调度矢量处理器进行通信的物理层功能处理。
下面结合具体实施例对本发明基带射频接口的应用进行详细描述。
实施例一
图4为本发明基带射频接口下行数据处理流程框图,如图4所示,基带射频接口基于RFC的基本时钟,并根据已配置的采样间隔,如每个时钟周期、或两个、四个、八个或十六个时钟周期等采样一个数据,采样数据通过定点到浮点转换(FixedtoFlating-point)之后存入乒乓Buffer,当存满8个数据,即256bits,也就是存满图4中的缓存Buf0或缓存Buf1后,向矢量处理器发出写请求。
图4中所述Write_Ptr为写入乒乓Buffer的地址,以32bits的数据,即以一对iq数据为单位,Write_Ptr[3:0]为4bit宽,表示0~15个32bits数据,共将两个256bits,即共十六个32bits数据写入乒乓Buffer;所述ri_dm_arb即为图2中的通信模块,对下行的写请求或读请求进行仲裁,并将请求发送到矢量处理器中的Arbitor;所述Read_Sel表示从下行乒乓buffer中输出256bits数据到矢量处理器中的DM。
这里,所述写请求比本发明所述的读请求优先级低,因为RFC对发送上行数据的延时要求更严格。其中,所述乒乓Buffer应用目的为:将天线数据,即下行数据写入缓存Buf0或缓存Buf1的同时,基带射频接口能将缓存Buf1或缓存Buf0中的数据写入矢量处理器,因此可提高基带射频接口传输数据的效率。
本发明中,乒乓Buffer中的两个缓存是交替使用的,当收到的8对iq数据写满其中一个,如缓存Buf0时,基带射频接口则向矢量处理器中发出写请求,将缓存Buf0中的数据写入矢量处理器中的DM;同时,缓存Buf1开始接收RFC的下行iq数据。
实施例二
图5为本发明基带射频接口上行数据处理流程框图,如图5所示,在上行帧定时下,基带射频接口向矢量处理器发出读请求,每次读到256bits数据后,存入乒乓Buffer中的缓存Buf0或缓存Buf1,之后分八次取出缓存中的数据进行浮点到定点的转换(Flating-pointToFixed)后,根据RFC给的定时信息将数据发送到RFC。
图5中所述Write_Buf_sel表示选择将上行数据写入乒乓buffer的哪个缓存中,如0表示写入缓存Buf0,1表示写入缓存Buf1;所述Read_Ptr表示从乒乓buffer中取出0~15个32bits数据发送到RFC,所述Read_Ptr[3:0]为4bit宽,表示0~15个32bits数据,即16个32bits数据;所述tx_idata11和tx_qdata11表示发送到RFC的是11bit宽的i数据和11bit宽的q数据。
这里,所述乒乓Buffer应用目的为:将从矢量处理器DM中读出的数据写入缓存Buf0或缓存Buf1的同时,基带射频接口能将缓存Buf1或缓存Buf0中的数据发送到外部RFC,因此可提高基带射频接口传输数据的效率。
实施例三
图6为本发明基带射频接口下行事件示意图,以LTE模式为例,如图6所示,其上半部分的两个箭头表示帧定时,下半部分为事件表产生的事件时刻示意图。LTE模式的普通(normal)模式下,两个子帧事件之间一般产生13个symbol事件;扩展(Extend)模式下,两个子帧事件之间一般产生11个symbol事件。事件定时比帧定时滞后大约1symbol,即每个事件时刻启动矢量处理器,由矢量处理器处理接收到的天线数据或其它任务。
图6中所述hw_rx_sf表示硬件下行的子帧边界;所述Sym0/event_sf表示第0个符号的结束位置以及我们定义的事件表的子帧边界,因为下行过程中需先接收1个符号iq数据后再进行处理,所以事件表的子帧边界滞后于下行物理子帧边界1个符号。
下面以LTE模式的下行事件表为例介绍事件表的配置过程。
首先需要配置事件表开始的帧定时,可以与数据帧定时相同也可以不同,事件表中的事件都在事件表的帧中产生,每到帧头自动在相应时刻重新产生事件表中定义的事件tick,发送到TickUnit。事件tick的周期为帧周期:LTE模式对应1ms的子帧周期;TD-SCDMA模式对应5ms的帧周期。事件表的具体配置如下表:
表1
且配置effects_event_num[4:0]=2;total_event_num[5:0]=13。
其中,所述RX,表示该事件表为下行事件表,当然,TX则对应上行事件表;所述Event0、Event1、...Event15用于标识各事件;所述Times表示事件重复的次数;所述Eventinc表示事件计数器;所述arbitrary表示任意值。
此外,有效事件数effects_event_num[4:0]=2,则表示有2个有效事件,即Event0和Event1有效;需要产生的事件总数total_event_num[5:0]=13,则表示总共需产生13个事件。
这里,图6中所示sym0由硬件在检测到配置事件表帧定时脉冲时,已经产生作为子帧tick发送给TickUnit,所以不需要产生sym0tick,只需要产生sym1~sym13即可,包括子帧tick,基带射频接口共发给TickUnit14个tick。其中,所述sym0表示第0个符号symbol的开始边界,在LTE模式中,一个子帧有12或14个符号,1个符号有2560、或2192、或2208对iq数据。
实施例四
图7为本发明基带射频接口上行事件示意图,如图7所示,其上半部分的两个箭头表示帧定时,下半部分为事件表产生的事件时刻示意图。与下行事件表的区别在于,上行事件定时比帧定时提前2~3个symbol,这是因为上行过程基带射频接口需要处理完需要发送的数据之后,再将数据发送到RFC。
其中,所述Warmupsf为warmupsubframe,表示矢量处理器软件处理的子帧边界,因为上行过程中需矢量处理器的软件先处理相应的数据后,才能在上行物理的子帧边界开始发送数据到RFC,所以此Warmupsf比物理的子帧边界提前几个符号,一个子帧一般对应14个符号或12个符号。
综上所述,本发明考虑LTE和TD-SCDMA两种通信模式,针对性强,采用最简单的存储器总线方式,数据缓存处理只需要一套电路,不需运用很大的FIFO,只用64字节的乒乓Buffer即可,所以本发明的电路结构简单,功耗也相对较低。此外,本发明采用事件表的方式调度矢量处理器,事件表由上层ARM处理器或矢量处理器配置,事件表产生脉冲存入矢量处理器内部的TickUnit的FIFO中,由CCM根据FIFO的非空状态启动矢量处理器。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。