发明内容
因此,本发明的一个目的在于提供一种需要较小存储单元空间的基带处理器。
考虑到下列及其他目的,提供了一种根据本发明的基带处理器,其中,基带处理器还包括:
-存储下列内容的存储单元:
-描述符表,每个描述符包括:
指针字段,指向由所述接口在帧处理期间实施的操作的定义;
绝对操作时间字段,指示从帧处理开始起应在何时通过所述接口实施对应的操作;
-操作定义表,包括每个操作的操作定义,每个定义具有通过接口执行的事件序列,以便实施所述操作,定义表的每个事件与相关事件时间字段相关联,所述相关事件时间字段指示从操作开始起应在何时执行对应的事件;并且
其中,所述计算器被设计成自动从描述和操作表中计算出所述事件列表。
利用此基带处理器,如果操作A必须在一个帧的处理期间重复两次,则存储单元仅包括分别用于操作A的第一和第二发生的第一和第二描述符编码。第一和第二描述符包括指向操作定义表中相同操作定义的指针字段。因此,对应于操作A的事件序列只被存储一次,即使此操作必须在帧处理期间执行若干次。结果,由描述符表和定义表构成的数据结构节省了存储单元的空间。
如下的这些特征:
-存储单元还包括具有参数值的数据表;
-操作定义表的至少一个定义具有与未知参数值相关联的事件;
-每个描述符包括指向操作定义的指针字段,包括与未知参数值相关联的事件的定义与数据表的参数值相关联;以及
-计算器用与描述符相关联的参数值替换定义中的未知参数值,而描述符包括指向所述定义的指针字段,以便计算出所述事件列表;
具有进一步节省存储单元空间的优点,因为仅相差一个或多个参数值的操作只在操作定义表中被记录一次。
如下的这些特征:
-存储器包括非专用随机存取存储器,该非专用随机存取存储器通过共享存储器访问总线连接计算器和接口;
-计算器使用共享存储器访问总线将事件列表存储在所述存储器中;以及
-接口使用共享存储器访问总线读取所述存储器中的事件列表;
-接口使用直接存储器存取技术(DMA)读取事件列表;
允许将接口未使用的随机存取存储器的存储空间重新分配给由计算器实施的其他应用。这种可能性在事件列表存储在基带处理器接口专用的存储器中时不存在。
计算器包括如下的这些特征:
-主处理器,被编程为更新存储单元中的描述表,以便调谐用于处理下一帧的射频子系统;以及
-与主处理器相关联的协处理器,所述协处理器能够从存储单元中存储的表中计算出所述事件列表;
具有减少主处理器工作负荷的优点。甚至,描述符的数量远远低于事件列表中的事件数量。因此,由于主处理器处理较少的数据,所以处理器的工作负荷被减少。
所要求的基带处理器的其他特征进一步阐述在从属权利要求中。
本发明还涉及通过上述基带处理器实施的方法和用于实现所述基带处理器的存储单元。
本发明还涉及包括所要求的基带处理器的无线电电信设备。
具体实施方式
图1示出了无线电电信设备6的一部分。经由例示,此无线电电信设备是GSM无线蜂窝移动电话6。电话6能够使用无线电信号8与无线蜂窝电话网络的基站4进行通信。为此,电话6采用了TDMA(时分多址)技术。
基站4装备有发送与接收来自电话6的无线电信号8的发射机和接收机。无线电信号8按照1250比特信息的帧来编制。图2例示了这种帧10。帧10包括RX时隙(slot)、“Mon”时隙和TX时隙。在RX和“Mon”时隙期间,信息被电话6接收。在TX时隙,信息被电话6发送到基站4。更确切地说,RX时隙表示正常脉冲串的接收。“Mon”时隙表示相邻蜂窝的功率监控。
为了接收或发送这种无线电信号,电话6包括常规的可调射频子系统16和基带处理器18。子系统16被连接到天线20,以便接收或发送无线电信号。
子系统16能够将接收的无线电信号转换为基带信号,反之亦然。换言之,子系统16的主要任务是从无线电信号中去除载波,或把这种载波添加到基带信号上。基带信号通过连接子系统16和处理器18的线路22,在处理器18与子系统16之间进行交换。
为了设置或调谐子系统16,处理器18通过三线总线24、数字输出线路26和一个或多个模拟线路28连接子系统16。
三线总线24用于传输称为“电报”的控制消息。例如,这种电报用于改变子系统16的频道。
线路26是双态线路,其可以被设置成逻辑“1”或逻辑“0”的状态。例如,线路26用于在子系统16中控制天线前端的开关从接收方式转换到发送方式,反之亦然。
线路28用于发送模拟信号。这种模拟信号例如用于控制子系统16的基准频率和用于控制传输功率电平。
图2的线30~32表示了线路26在帧10的处理期间的时间变化。
图2的线34表示了处理帧10的电报在总线24上被发送的时间。电报的传输用逻辑“1”的状态来说明,而用逻辑“0”的状态说明空闲状态。
在图2的时间t0和t1之间发送的命令序列,用于在帧10的RX时隙开始之前立即将子系统16转为接收方式。该命令序列对应于操作A1。
同样,在图2上,五个其他操作B1、C、D、A2和B2分别表示对应于在时间t2和t3之间、在时间t4和t5之间、在时间t6和t7之间、在时间t8和t9之间以及在时间t10和t11之间发送的命令序列。这里,操作B1和B2使子系统退出接收方式。操作C使子系统16转为发送模式。操作D使子系统16退出发送模式。操作A2使子系统16再次转为接收方式。操作A2和B2分别类似于或等同于操作A1和B1。
为了在适当时间向子系统16发送每个命令,处理器18包括硬连接的射频控制接口40和随机存取存储器42。
存储器42被设计成包含事件列表44。在此列表中,每个事件与绝对事件时间字段和事件类型字段相关联。绝对事件时间字段指示了在帧的处理期间应在何时执行关联事件。事件类型字段指示总线24、线路26和线路28中的哪一个涉及关联的事件。例如,列表44是三列表,表的第一列包含即将执行的事件,第二列包含关联事件的时间字段,第三列包含事件类型字段。
绝对事件时间字段中的时间从处理帧的开始起计数。对于GSM帧,此绝对事件时间字段包含了范围从1到5000的整数。此整数对应于GSM帧的四分之一比特周期数。因此,数字1对应于GSM帧的第一个四分之一比特周期,而数字5000对应于GSM帧的最后一个四分之一比特周期。
存储器42通过存储器访问总线46连接接口40。
接口40能够在对应的绝对事件时间执行列表44的每个事件。为此,接口40包括GSM计时器50,其计数从GSM帧的处理开始起已经过去的四分之一比特周期的数量。计时器50连接在比较器52的第一输入。比较器52的第二输入被设计成接收存储在列表44的绝对事件时间字段中的数字。为了读取存储器42中的数据,接口40使用常规的DMA(直接存储器存取)技术。比较器52的输出连接三块54、56和58的启动输入。
块54被设计成在总线24上发送电报。
块56被设计成改变线路26的状态。
块58控制模拟线路28。
接口40还包括硬连线控制器60,其根据事件列表44来控制块52、56和58。
为了计算列表44并将其存储在存储器42中,处理器18包括计算器70和存储单元72。
对于更快的性能,计算器70包括主处理器74和协处理器76。主处理器74是常规可编程的微控制器。协处理器76例如可以DSP(数字信号处理器)芯片。
微控制器74被编程以执行图3所述的方法。然而,微控制器74一般还被编程,以控制电话6的每个用户接口,例如监视器、键盘、扬声器及其他元件。
协处理器76特别被设计成处理通过线路22接收或发送的基带信号。为此,它包括模拟/数字转换器78,其将通过线路22接收的模拟基带信号转换成数字信号,反之亦然。
更具体而言,协处理器76还被设计成构建列表44并将其存储在存储器42中。为此,协处理器76通过总线46被连接至存储器42。连接访问存储器42的总线46是接口40和协处理器76之间的共享资源。因为存储器42可以通过公共总线46被电话6的不同电子应用来访问,所以这种存储器42是非专用的存储器。
存储单元72是双端口随机存取存储器(DPRAM)或允许数据在微控制器74和协处理器76之间进行交换。存储单元72的第一个端口连接微控制器74,而存储单元72的第二个端口连接协处理器76。
为了节省存储单元72的空间,使用专门的数据结构78。
数据结构78更详细地例示在图3中。它包括描述符表80,操作定义表82和数据表84。
表82包括每个相似操作的一个操作定义。此处表示了四个定义86~89。定义86~89分别对应于操作A1和A2、B1和B2、C、以及D的定义。
每个操作的定义具有类似的结构因此,将只描述定义86的结构。
例如,在图3中,定义86具有四列的表结构。四列表结构包括每一行针对形成操作A1或A2的事件序列的每个事件。
第一列的单元是事件字段。每个事件字段包括通过接口40执行的事件。第二列的单元是事件类型字段,包括块54、56和58之一的标识符。该标识符确定块52、56和58中的哪一块执行第一列的事件。
第三列的单元是相关事件时间字段。每个相关事件时间字段包含应在何时执行第一列的关联事件的时间。相关事件时间从操作的开始起计数,而不是从帧的开始起计数。该相关事件时间例如被记录为从操作开始起已经过去的整数个四分之一比特周期。所以,第三行的相关事件时间字段中的值“200”指示了定义86的第三个事件在操作开始后将被执行200个四分之一比特周期。
最后一列的单元是参数字段,其包括数字值,或者包括例如用符号“*”指示的未知值。
有利地,表82是预先记录的表。
描述符表80包括在一个帧的处理期间将要执行的每个操作的至少一个描述符。此处,表80包括的描述符数量等于在一个帧的处理期间将要执行的操作的最大数。例如在GSM帧的情况下,最大数等于16。
在图3中,只表示了七个第一描述符90~96。描述符90~95分别对应于操作A1、A2、B1、B2、C和D的定义。描述符96不是帧10的处理所必需的描述符。
每个描述符包括至少三个字段:
-指针字段98,指向表82中第一行的对应操作定义;
-连续的事件编号字段99,指示该行在关联定义中的编号;以及
-绝对操作时间字段100,指示在该帧内应该在何时执行对应的操作。绝对操作时间从帧的处理开始起计数。此绝对操作时间例如被记录为从帧的处理开始起已经过去的整数个四分之一比特周期。
例如,描述符90的指针字段包括第一行定义86的地址,连续的事件编号字段99等于4,而绝对时间字段等于0。
在图3中,箭头指示每个描述符目前指向的定义。
表84包括了应该用于替代操作定义中出现的符号“*”的参数值。仅仅作为例示,表84是一列的表,其包括针对表80的每个描述符的每一行。更确切地说,第一行与表80的第一个描述符相关联,第二行与表18的第二描述符相关联,依次类推。
最后,数据结构78还包括启动表100。例如,表100只包括一行,其包含每个描述符的一个单元102。第一单元与第一个描述符相关联,第二单元与第二个描述符相关联,依次类推。每个单元包含布尔值“真”或“伪”。
当一个单元102的值被设置成“真”时,这意味着关联的描述符将用于计算列表44。
另一方面,如果一个单元102的值被设置成“伪”,则关联的描述符不准用于计算列表44。
处理器18工作的方法现将参照图4按照处理帧10的特殊情况来阐述。
例如,在初始化阶段,在电话6的制作过程期间,表82在步骤110被记录在存储单元72中。然后,表82在每个帧的处理期间保持恒定且未修改的。
在开始处理帧之前,计算器70在步骤112计算新的列表44。
在步骤112的开始时,微控制器74在子步骤114更新表80、84和100中所包含的值。即将被更新到处理帧10的值,根据帧10的结构用常规的方法来确定。
具体而言,在操作116期间,微控制器74将与描述符90~95相关联的单元102的值设为“真”。与诸如不是处理帧10所必需的描述符96之类的描述符有关的单元102被设置成“伪”。
然后,微控制器74在操作118期间,如有必要,修改存储在描述符90~95的绝对操作时间字段100中的值。这里,微处理器74在描述符90~95的绝对操作时间字段中存储对应于时间t0、t8、t2、t10、t4、t6的相应值(图3)。
微控制器74在操作120期间,如有必要,还修改存储在表84中的参数值。
一旦已经在表80、84和100中存储了处理帧10所必需的每个值,微控制器74就激活协处理器76。
协处理器76一旦被激活,就在子步骤124从数据结构78中记录的数据中计算出列表44。
为此,协处理器76在操作126期间构建描述符的排序表。此列表包括表80中与包含“真”值的单元102相关联的描述符。此列表根据绝对操作时间字段的值来排序,从第一个要执行的操作到最后一个。
然后,在描述符的排序表中,协处理器76在操作128期间,用通过指针字段98指向的对应定义来替换每个描述符。在操作128期间,协处理器76用从表84第一行读取的对应参数值来替换在定义86的第一行中出现的符号“*”。
在操作128期间,协处理器76还计算每个事件的绝对事件时间,这是通过相加存储在绝对操作时间字段100中和存储在相关事件时间字段中的值实现的。
因此,在操作128的结尾,协处理器76已经构建了按照绝对事件时间排序的事件列表。
在操作132期间,此列表然后作为新的列表44存储在存储器42中。为了执行操作132,协处理器76使用总线46。步骤112结束,并且接口40在步骤140开始处理帧10。
在步骤140中,在操作142期间,计时器50计数从帧10的处理开始起已经过去的四分之一比特周期的数量。此数量被发送给比较器52的第一个输入。
并行地,在操作144期间,接口40读取包含在与列表44的第一个事件相关联的绝对事件时间字段中的值。
依然并行地,在操作146期间,控制器60读取包含在列表44第一个事件的事件类型字段中的标识符,并从块54、56、58中选择将要用于执行对应的事件的那一块。
在操作148期间,比较器52比较其第一和第二输入上的值。当这些值匹配时,在操作150期间,由控制器60选择的块执行对应事件,然后返回操作144和146,以便读取和执行列表44中的下一个事件。
在操作150中,所选块向子系统16发送对应于所执行的事件的命令。
在接收到发送的命令以后,子系统16的设置被改变。
步骤112和140对于每个帧的处理都要被执行。
由于使用了数据结构78,所以操作的定义只被存储一次,即使此定义在一个帧的处理期间的不同时间使用。
而且,由于使用了数据结构78,所以对于相差单个参数值的操作,只存储了一个定义。
因此,数据结构78节省了存储单元的空间。
数据结构78还减少了微控制器74的工作负荷。事实上,如果即将构建的新列表44仅仅在一个操作被延迟的事实上不同于先前的列表,则微处理器74只要修改对应描述符的绝对时间字段。相反,在常规的处理器中,为了执行这一任务,微处理器必须更新对应于此操作的事件序列的每个事件的事件时间字段。
处理器18已经用存储器42为非专用随机存取存储器的特殊情况进行了描述。因为存储器42是非专用存储器,所以这意味着存储列表44未使用的存储空间,能被用于计算器70执行的其他应用。这同样节省了存储空间,因为存储器42中闲置的存储空间能被用于其他的应用处理。
在另一实施例中,存储器42用一组寄存器来替代,其中每个寄存器是用来只接收一个事件及其关联的事件时间和事件类型的字段。在这一实施例中,此组寄存器通过读取总线连接接口40,通过独立的写入总线连接计算器70。因此不用于存储列表44的寄存器不能被计算器70用于其他应用。
在当前实施例中,存储器42和存储单元72已被描述为独立且分离的存储器。然而,在另一实施例中,存储器42和存储单元72可以是公用信息存储装置的不同部分。
电话6已经用子系统16通过使用总线24和线路26与28来控制的特殊情况进行了描述。然而,取决于电话6中实现的射频子系统,这些总线或线路之一可以不被使用,并且可以被压缩。例如,如果电话6中实现的射频子系统只需通过三线式总线来控制,则电话6的结构被简化。甚至,线路26和28以及块56、58被压缩,并且控制器60和表82的事件类型字段不再是必需的。
使用协处理器76计算列表44提高了处理速度,因为这种协处理器针对此处理进行了优化。然而,在另一实施例中,整个步骤112由微控制器74执行。另一方面,为了进一步提高处理速度,在另一实施例中,整个步骤112用专用的硬连线电路来实现。
处理器18和电话6已经用处理GSM帧的具体情况进行了描述。然而,本发明同样适用于GPRS或EGPRS的帧或任何必须用非常精确的时间分辨来调谐射频子系统的无线电话。