JP2010278829A - Software radio set - Google Patents

Software radio set Download PDF

Info

Publication number
JP2010278829A
JP2010278829A JP2009130000A JP2009130000A JP2010278829A JP 2010278829 A JP2010278829 A JP 2010278829A JP 2009130000 A JP2009130000 A JP 2009130000A JP 2009130000 A JP2009130000 A JP 2009130000A JP 2010278829 A JP2010278829 A JP 2010278829A
Authority
JP
Japan
Prior art keywords
processing
time
progress
processing unit
software defined
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.)
Pending
Application number
JP2009130000A
Other languages
Japanese (ja)
Inventor
Tomoya Suzuki
智哉 鈴木
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2009130000A priority Critical patent/JP2010278829A/en
Publication of JP2010278829A publication Critical patent/JP2010278829A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Transceivers (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a software radio set which performs communication corresponding to a time restriction determined by the standards even if a delay time is varied during execution. <P>SOLUTION: The software radio set includes, for example: a reception processing section 12 for executing predetermined baseband processing utilizing software; and a progress management section 11 for confirming, in a predetermined timing, the progress of the baseband processing being executed by the reception processing section 12 and determining processing contents to be executed in the subsequent baseband processing by the reception processing section 12 on the basis of a progress confirmation result. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、ソフトウェア無線機に関する。   The present invention relates to a software defined radio.

近年、無線通信のベースバンド処理において、ソフトウェア/プロセッサベースの処理システムが注目されてきている(たとえば、下記特許文献1参照)。このような処理システムでは、ソフトウェアを用いて処理を実現するため、設計効率の改善や複数の無線規格(通信規格)に容易に対応することができるなどのメリットがある。   In recent years, software / processor-based processing systems have attracted attention in wireless communication baseband processing (see, for example, Patent Document 1 below). In such a processing system, since processing is realized using software, there are advantages such as improvement of design efficiency and easy correspondence to a plurality of wireless standards (communication standards).

たとえば、プロセッサを用いた実装において1つの汎用プロセッサだけでは処理能力が足りない場合には、特殊なプロセッサを用いる,マルチプロセッサ構成とする,一部の処理については専用のハードウェアブロックで実施する,などの方法を利用することによって所望の無線機を実現する。以下、このようにして実現されている無線機を「ソフトウェア無線機」と呼ぶ。   For example, if a single general-purpose processor does not have enough processing power in an implementation using a processor, a special processor is used, a multiprocessor configuration is used, and some processing is performed using dedicated hardware blocks. A desired radio is realized by using a method such as Hereinafter, the wireless device realized in this way is referred to as a “software wireless device”.

ここで、上述したソフトウェア無線機を実現する際に考慮しなければならないことの一つとして、処理の遅延時間が挙げられる。一般に、無線信号処理において、対応しているそれぞれの無線規格で遅延時間が定められている場合、それを守らなければならない。例えば、無線LANシステムでは、信号を受信後、SIFS(Short Interframe space)以内にACKを返さなければならないことになっている。そのため、受信信号処理は、SIFS(=16μs)以内にACKの返答ができるくらいの遅延時間で終えなければならないが、ソフトウェア無線機で信号処理を行う場合には、この遅延時間に特別な配慮が必要となる。なぜなら、専用ハードウェアによる実装と違い、処理の遅延時間が実行時の状況に依存して変動する可能性があるためである。   Here, one of the things that must be taken into account when realizing the above-described software defined radio is a processing delay time. In general, when a delay time is defined in each corresponding wireless standard in wireless signal processing, it must be observed. For example, in a wireless LAN system, ACK must be returned within SIFS (Short Interframe space) after receiving a signal. For this reason, received signal processing must be completed with a delay time that allows an ACK to be returned within SIFS (= 16 μs). However, when performing signal processing with a software defined radio, special consideration must be given to this delay time. Necessary. This is because, unlike the implementation using dedicated hardware, the processing delay time may vary depending on the execution situation.

信号処理を専用ハードウェアで作りこむ場合は、基本的にシステム設計者が設計した遅延時間で処理が終了し、遅延時間が変動することはない。しかしながら、ソフトウェア無線機の場合には、その構成にもよるが、キャッシュミスやリソース競合など、実行時のさまざまな要因によって遅延時間が変動する。例えば、マルチプロセッサ構成の実装でプロセッサ間の同期が必要な場合、同期に必要な時間によって遅延時間が変動する可能性がある。一般的にプロセッサ間の同期に必要な時間は静的に決まらないからである。また、別の例として、プロセッサやハードウェアブロック間を共有バスで結合している場合、バスの競合が発生すると待たされるハードウェアブロックが出てくる。バス競合はバスの使用度合によって発生したりしなかったりするので、基本的に静的に見積もることはできない。他にも、あるプロセッサが各種ハードウェアブロックに処理を割り当てて、処理が終わったら割り込みを受け付けるようなシステム実装の場合、多重割り込みが発生して優先度の低い割り込み処理が待たされる可能性がある。このように、ソフトウェア無線機の構成によっては、専用ハードウェアにて実現された無線機にはない遅延時間の変動要因が存在する。   When signal processing is created with dedicated hardware, processing is basically completed with a delay time designed by the system designer, and the delay time does not vary. However, in the case of a software defined radio, the delay time varies depending on various factors such as cache miss and resource contention, depending on the configuration. For example, when synchronization between processors is required in the implementation of a multiprocessor configuration, the delay time may vary depending on the time required for synchronization. This is because the time required for synchronization between processors is generally not determined statically. As another example, when a processor or hardware block is connected by a shared bus, a hardware block to be waited for appears when a bus conflict occurs. Since bus contention may or may not occur depending on the usage of the bus, it cannot basically be estimated statically. In addition, in the case of a system implementation in which a processor allocates processing to various hardware blocks and accepts an interrupt when processing is completed, there is a possibility that multiple interrupts may occur and low priority interrupt processing may be waited for . As described above, depending on the configuration of the software defined radio, there is a variation factor of the delay time that is not included in the radio realized by dedicated hardware.

したがって、ソフトウェア無線機の設計では、上記のような実行時に現れる処理遅延に関して何も考慮しないでシステムを設計すると、実行時に遅延時間が延びることで無線規格の時間制約を守れない可能性が出てくる。たとえば、無線LANの場合であれば、処理遅延に起因してSIFS以内にACKを返せなくなり、受信側がACKを返さなければ、送信側で受信失敗として扱われてしまう。そのため、実行時に現れる処理遅延を考慮し、無線規格の時間制約を守れるようなシステムの実現が望まれており、従来のソフトウェア無線機では、主に、実行時に現れる処理遅延分をマージンとして考慮して設計する手法が採用されていた。例えば、ある無線規格から導かれる処理遅延余裕が16μsの場合に、このタイミングバジェット16μsに対し、処理の実行時には2μs分の処理遅延が発生すると見込まれれば、14μs以内に処理が終わるように設計する、というような手法が採用されていた。   Therefore, in designing software radios, if the system is designed without considering the processing delay that appears at the time of execution as described above, there is a possibility that the time limit of the wireless standard cannot be observed due to the extended delay time at the time of execution. come. For example, in the case of a wireless LAN, ACK cannot be returned within SIFS due to processing delay, and if the receiving side does not return ACK, it is treated as reception failure on the transmitting side. For this reason, it is desired to realize a system that can observe the processing delay that appears at the time of execution and comply with the time constraints of the wireless standard. Conventional software defined radios mainly consider the processing delay that appears at the time of execution as a margin. The design method was adopted. For example, when the processing delay margin derived from a certain wireless standard is 16 μs, if it is expected that a processing delay of 2 μs will occur at the time of execution of processing for this timing budget of 16 μs, the processing is designed to finish within 14 μs. , A technique like this was adopted.

しかしながら、上記のような設計手法を採用した場合、考慮しておいた遅延量(マージン)を超える処理遅延が発生した場合には対処することができず、システムで規定された時間制約を満足できない。一方、全ての遅延要因が重なった最悪ケースを想定してマージン設計を行うことによりマージンを超える処理遅延の発生は回避できるが、タイミングバジェットは非常に小さくなり設計が困難になる。   However, when the design method as described above is adopted, if a processing delay exceeding the considered delay amount (margin) occurs, it cannot be dealt with and the time constraint specified by the system cannot be satisfied. . On the other hand, it is possible to avoid the processing delay exceeding the margin by designing the margin assuming the worst case where all delay factors overlap, but the timing budget becomes very small and the design becomes difficult.

特開2004−40256号公報JP 2004-40256 A

本発明は、実行時に遅延時間が変動しても規格で定められた時間制約に対応した通信を行うソフトウェア無線機を提供することを目的とする。   An object of the present invention is to provide a software defined radio that performs communication corresponding to the time constraint defined by the standard even when the delay time varies during execution.

本願発明の一態様によれば、ソフトウェアを利用して所定のベースバンド処理を実行する信号処理部と、前記信号処理部が実行しているベースバンド処理の進捗を所定のタイミングで確認し、進捗確認結果に基づいて、前記信号処理部がその後のベースバンド処理で実行する処理内容を決定する進捗管理部と、を備えるソフトウェア無線機が提供される。   According to one aspect of the present invention, a signal processing unit that executes predetermined baseband processing using software, and the progress of the baseband processing that is being executed by the signal processing unit are confirmed at a predetermined timing. There is provided a software defined radio including a progress management unit that determines the processing content to be executed by the signal processing unit in the subsequent baseband processing based on the confirmation result.

本発明によれば、処理の実行中に想定外の遅延が発生した場合であっても、発生した遅延をキャンセルして予定通りに処理を終了させることができる。そのため、遅延時間が変動しても無線規格で定められた時間制約に対応した通信を行うことが可能となり、設計時に確保しておく処理遅延についてのマージンを極力少なくすることができる、という効果を奏する。   According to the present invention, even when an unexpected delay occurs during the execution of a process, the generated delay can be canceled and the process can be terminated as scheduled. Therefore, even if the delay time fluctuates, it is possible to perform communication corresponding to the time constraint defined in the wireless standard, and the margin of processing delay secured at the time of design can be reduced as much as possible. Play.

図1は、ソフトウェア無線機のシステム構成例を示す図。FIG. 1 is a diagram illustrating a system configuration example of a software defined radio. 図2は、ソフトウェア無線機の機能ブロック図。FIG. 2 is a functional block diagram of the software defined radio. 図3は、ソフトウェア無線機の動作を説明するための図。FIG. 3 is a diagram for explaining the operation of the software defined radio. 図4は、ソフトウェア無線機の動作を説明するための図。FIG. 4 is a diagram for explaining the operation of the software defined radio. 図5は、ソフトウェア無線機の動作を説明するための図。FIG. 5 is a diagram for explaining the operation of the software defined radio. 図6は、ソフトウェア無線機の動作を説明するための図。FIG. 6 is a diagram for explaining the operation of the software defined radio. 図7は、ソフトウェア無線機の動作を説明するための図。FIG. 7 is a diagram for explaining the operation of the software defined radio. 図8は、ソフトウェア無線機の動作を説明するための図。FIG. 8 is a diagram for explaining the operation of the software defined radio. 図9は、ソフトウェア無線機の動作を説明するための図。FIG. 9 is a diagram for explaining the operation of the software defined radio. 図10は、ソフトウェア無線機の動作を説明するための図。FIG. 10 is a diagram for explaining the operation of the software defined radio. 図11は、受信処理部の内部構成例を示す図。FIG. 11 is a diagram illustrating an internal configuration example of a reception processing unit.

以下に添付図面を参照して、本発明の実施の形態にかかるソフトウェア無線機を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。   Hereinafter, a software defined radio according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings. In addition, this invention is not limited by this embodiment.

(実施の形態)
本実施の形態では、一例として、ソフトウェア無線機の受信動作について説明する。図1は、本実施の形態にかかるソフトウェア無線機のシステム構成例を示す図である。
(Embodiment)
In this embodiment, as an example, the reception operation of the software defined radio will be described. FIG. 1 is a diagram illustrating a system configuration example of a software defined radio according to the present embodiment.

図1に示したように、本実施の形態のソフトウェア無線機は、プロセッサ1,2、入力信号に対して特定の信号処理を行うハードウェアエンジン3、および、入力信号に対してFIRフィルタ処理を行うフィルタ4,5を備え、これらの各構成要素は、図示を省略した内部メモリをそれぞれ有し、また、バス6に接続されている。なお、図1は、説明を簡単化するため、ソフトウェア無線機の特徴的な動作を実現するために必要な部分を抽出して示したものである。そして、本実施の形態にかかるソフトウェア無線機においては、対向する通信装置(通信相手)から送信された信号を受信した場合、ソフトウェアを利用したベースバンド処理を行い、送信信号を復元する。具体的には、まず、図示を省略した2系統のアンテナで信号を受信した場合、受信した各アナログ信号に対して、図示を省略したアナログ信号処理部が所定の処理を実行し、その結果に基づいて生成された2系統のデジタル信号それぞれに対して、フィルタ4,5がFIRフィルタ処理を行う。次に、FIRフィルタ処理を実施して得られた各信号に対し、プロセッサ1,2およびハードウェアエンジン3が、復調処理や復号処理を含む所定のデジタル信号処理(ベースバンド処理)を実施して、送信されてきたデータ系列を復元する。   As shown in FIG. 1, the software defined radio of this embodiment includes processors 1 and 2, a hardware engine 3 that performs specific signal processing on an input signal, and FIR filter processing on the input signal. Filters 4 and 5 are provided, and each of these components has an internal memory (not shown) and is connected to the bus 6. Note that FIG. 1 shows an extracted portion necessary for realizing the characteristic operation of the software defined radio for the sake of simplicity. In the software defined radio according to the present embodiment, when a signal transmitted from the opposite communication device (communication partner) is received, baseband processing using software is performed to restore the transmission signal. Specifically, first, when signals are received by two systems of antennas (not shown), the analog signal processing unit (not shown) performs predetermined processing on each received analog signal, and the result is Filters 4 and 5 perform FIR filter processing on each of the two systems of digital signals generated based thereon. Next, the processors 1 and 2 and the hardware engine 3 perform predetermined digital signal processing (baseband processing) including demodulation processing and decoding processing on each signal obtained by performing the FIR filter processing. The data series transmitted is restored.

図2は、図1に示したアーキテクチャを有するソフトウェア無線機の機能ブロック図である。図示したように、本実施の形態のソフトウェア無線機は、進捗管理部11、受信処理部12および計時部13を備える。なお、図2では、図1と同様に、特徴的な動作を実現するために必要な構成要素を抽出して示している。また、本実施の形態では受信動作について説明を行うため、信号の受信動作に関連しない機能ブロックについては省略している。   FIG. 2 is a functional block diagram of a software defined radio having the architecture shown in FIG. As illustrated, the software defined radio according to the present embodiment includes a progress management unit 11, a reception processing unit 12, and a time measuring unit 13. In FIG. 2, as in FIG. 1, constituent elements necessary for realizing a characteristic operation are extracted and shown. Further, in this embodiment, in order to describe the reception operation, functional blocks that are not related to the signal reception operation are omitted.

進捗管理部11は、受信処理部12が実行している処理の進捗を管理する。受信処理部12は、信号処理部(図示せず)を構成しており、対向通信装置から受信した信号が入力された場合、復調処理や復号処理を含む所定のデジタル信号処理(ベースバンド処理)を実行する。すなわち、受信処理部12は、図1に示したプロセッサ1,2およびハードウェアエンジン3により実現される。計時部13は、時間の管理を行う。なお、進捗管理部11および計時部13はプロセッサ1および/またはプロセッサ2により実現される。   The progress management unit 11 manages the progress of processing executed by the reception processing unit 12. The reception processing unit 12 constitutes a signal processing unit (not shown), and when a signal received from the opposite communication device is input, predetermined digital signal processing (baseband processing) including demodulation processing and decoding processing Execute. That is, the reception processing unit 12 is realized by the processors 1 and 2 and the hardware engine 3 illustrated in FIG. The timer unit 13 manages time. The progress management unit 11 and the time measuring unit 13 are realized by the processor 1 and / or the processor 2.

つづいて、上記構成のソフトウェア無線機の特徴的な動作について、上記の図1,2、および図3〜図10を必要に応じて参照しながら説明する。なお、図3〜図10は、ソフトウェア無線機の動作を説明するための図である。本実施の形態にかかるソフトウェア無線機は、一般的なソフトウェア無線機と比較して、以下の点が異なる。すなわち、本実施の形態のソフトウェア無線機は、信号処理を実施している状態では、時計などを利用し、どのくらいの時間でどのくらい処理が進んだかをモニターする。そして、仮に、処理の進捗がシステムの想定するスピードより遅れていたら(実行時に現れる遅延要因によって予定より遅れ出したことを検出したら)、ソフトウェアによる処理の一部を変更して処理速度を高速化することにより、遅れを取り戻す。たとえば、図2に示した受信処理部12が受信処理を実行する場合、進捗管理部11は、受信処理部12における一連の受信処理が遅延することなく順調に進んだ場合の終了予定時刻を算出し、また、受信処理部12における処理の進捗(処理の進行状況)を適宜確認し、この確認結果、および計時部13から得られる時間情報(確認を行った時刻の情報)に基づいて、受信処理が終了予定時刻までに終了するかどうかを判断する。そして、終了予定時刻までに処理が終了しないと判断した場合、進捗管理部11は、受信処理部12に対して処理の一部を変更して処理速度を高速化するように指示を出す。受信処理部12は、進捗管理部11から変更指示を受けた場合、指示内容に従って処理の一部を変更し、受信処理をスピードアップする。   Subsequently, characteristic operations of the software defined radio having the above-described configuration will be described with reference to FIGS. 1 and 2 and FIGS. 3 to 10 as necessary. 3 to 10 are diagrams for explaining the operation of the software defined radio. The software defined radio according to the present embodiment differs from the general software defined radio in the following points. In other words, the software defined radio according to the present embodiment uses a clock or the like to monitor how much time has passed and how much processing has been performed while signal processing is being performed. And if the progress of the process is behind the speed assumed by the system (when it is detected that the delay has occurred due to the delay factor that appears at the time of execution), a part of the process by the software is changed to increase the processing speed. To make up for the delay. For example, when the reception processing unit 12 illustrated in FIG. 2 executes the reception processing, the progress management unit 11 calculates the scheduled end time when the series of reception processing in the reception processing unit 12 proceeds smoothly without delay. In addition, the progress of processing in the reception processing unit 12 (processing progress status) is appropriately checked, and reception is performed based on the result of this confirmation and time information obtained from the time measuring unit 13 (information on the time of confirmation). It is determined whether or not the process is finished by the scheduled end time. If it is determined that the process will not be completed by the scheduled end time, the progress management unit 11 instructs the reception processing unit 12 to change a part of the process to increase the processing speed. When receiving a change instruction from the progress management unit 11, the reception processing unit 12 changes a part of the process according to the content of the instruction and speeds up the reception process.

この動作を無線LANシステムの受信側の通信装置として動作する場合の例で説明すると次のようになる。ソフトウェア無線機は、無線LANのフレーム受信処理においては、まず、受信処理部12がヘッダ部の受信処理を実行し、データ部のデータ長(Lとする)の情報を得る。そして、データ長Lの情報が得られると、このデータ長Lと受信処理部12の処理能力などから、どのくらいの時間でフレーム全体の受信処理が終了するかを、進捗管理部11が計算する。算出した、受信処理が終わると予定される時刻をTとする。ここで、受信処理の終了時刻が時刻Tより遅くなるとSIFS(規定時間)以内にACKが返せなくなってしまうものと仮定した場合、受信処理部12は、受信処理全体を時刻Tまでに完了させる必要がある。   This operation will be described as an example in the case of operating as a communication device on the receiving side of the wireless LAN system. In the wireless radio frame reception process, first, the reception processing unit 12 executes the header part reception process to obtain information on the data length (L) of the data part. When the information about the data length L is obtained, the progress management unit 11 calculates how long the reception process for the entire frame is completed based on the data length L and the processing capability of the reception processing unit 12. Let T be the calculated time when the reception process ends. Here, if it is assumed that the ACK cannot be returned within SIFS (specified time) when the end time of the reception process is later than the time T, the reception processing unit 12 needs to complete the entire reception process by the time T. There is.

この状況について図3を用いて説明する。図3の直線30は、ソフトウェア無線機の受信処理部12において、実行時の遅延時間の変動がなく順調に処理が進んだ場合の処理の進捗状況を表している。つまり図3は、実行時に現れる遅延が全く無く進んだ場合の動作の進捗状況を示しており、データ長Lを時刻Tだけかかって受信処理することを表している。   This situation will be described with reference to FIG. A straight line 30 in FIG. 3 represents the progress of processing when the reception processing unit 12 of the software defined radio proceeds smoothly without any fluctuation in delay time during execution. That is, FIG. 3 shows the progress status of the operation when there is no delay appearing at the time of execution, and represents that reception processing takes the data length L only at time T.

データ長Lに基づく時刻T(受信処理の終了予定時刻T)の算出処理が終了し、その後、データ部分の受信処理を開始すると、ソフトウェア無線機では、進捗管理部11が、計時部13から得られる時刻情報を使用し、受信処理部12がどのくらいの時間でどのくらいのデータ処理を行ったかをモニターする。例えば、無線LANシステムで扱うフレームのデータ部をシンボルと呼ばれるブロック単位でデータ処理するのであれば、所定数のシンボル(たとえば1シンボル)に対する処理が終了する毎にその時点の時刻を記録することで処理の進捗をモニターする。具体的な動作を示すと、たとえば、受信処理部2は、所定数のシンボルに対する処理が終了する毎にその旨を進捗管理部11に通知し、この通知を受けた進捗管理部11は、その時点の時刻の情報を計時部13から取得する。そして、進捗管理部11は、取得した時刻情報および上記の終了予定時刻Tに基づいて、受信処理部2における受信処理が終了予定時刻Tまでに終了するかどうかを判定する。   When the calculation process of the time T (scheduled end time T of the reception process) based on the data length L is completed and then the reception process of the data portion is started, the progress management unit 11 obtains from the time measurement unit 13 in the software defined radio. The received time information is used to monitor how much data the reception processing unit 12 has processed. For example, if the data portion of a frame handled in a wireless LAN system is processed in units of blocks called symbols, each time a predetermined number of symbols (for example, one symbol) is processed, the current time is recorded. Monitor the progress of the process. Specifically, for example, the reception processing unit 2 notifies the progress management unit 11 every time processing for a predetermined number of symbols is completed, and the progress management unit 11 that has received this notification Information on the time at the time is acquired from the time measuring unit 13. Then, based on the acquired time information and the scheduled end time T, the progress management unit 11 determines whether or not the reception process in the reception processing unit 2 is completed by the scheduled end time T.

実行時に遅延が発生せずに順調に(事前に見積もった処理能力の通りに)受信処理が進めば、1シンボル終了毎に得られる時刻は図3で示した直線上に載ることとなる(図4参照)。なお、図4に示した点はソフトウェア無線機を実際に動作させたときの受信処理部12における処理の進捗を表しており、たとえば1シンボルに対する処理が終了する毎に計測した時間をプロットした結果である。もし何らかの要因で遅延が発生した場合は、これらの点(プロット結果)は、図5に示したようなものとなり、直線より右側にずれてくる。つまり、受信処理の実行中に発生した遅延により、順調に処理が進む場合と比較して遅れる。そして、このまま処理を続けた場合、図5の点線で示したように、その後の処理が順調に進んでも予定終了時刻Tには間に合わない。そのため、ソフトウェア無線機は、このような場合には、以下に示すような手法で受信処理を加速し、予定終了時刻Tに間に合うように動作する。   If the reception process proceeds smoothly without delay in execution (as estimated in advance), the time obtained at the end of each symbol will be on the straight line shown in FIG. 4). The points shown in FIG. 4 represent the progress of processing in the reception processing unit 12 when the software defined radio is actually operated. For example, the result of plotting the time measured each time processing for one symbol is completed. It is. If a delay occurs for some reason, these points (plot results) are as shown in FIG. 5 and are shifted to the right from the straight line. That is, due to the delay that occurred during the execution of the reception process, it is delayed compared to the case where the process proceeds smoothly. If the processing is continued as it is, as shown by the dotted line in FIG. 5, the scheduled end time T is not in time even if the subsequent processing proceeds smoothly. Therefore, in such a case, the software defined radio accelerates the reception process by the following method and operates in time for the scheduled end time T.

例えば、ソフトウェア無線機の受信処理部12は、Equalize処理における、補正量の更新間隔を伸ばして処理の負荷を軽くすることにより、処理速度を加速する。Equalize処理は通信路により影響を受けた受信信号を数値計算により補正する処理であるが、一般的には無線通信路は時刻とともに変動するので、補正量も無線通信路の変動に合わせて更新していく必要がある。この補正量の更新処理を省く(たとえば、定期的に実行する更新処理を間引いて更新間隔を広げる)ことで受信時の計算負荷を軽くしてスピードアップすることができる。このようにEqualize処理の補正量の更新間隔を伸ばすことで、受信処理のスピードアップが実現され、上記の図5に示した受信処理が遅れた状態を、図6に示したように、モニター結果を示す点が太線60上となるまで改善できる。図6は、点Aまで処理が進んだ時点で処理を切り替えて受信処理を高速化することで、予定終了時刻Tに間に合わせた場合の例を示している。   For example, the reception processing unit 12 of the software defined radio increases the processing speed by extending the correction amount update interval and reducing the processing load in the equalize processing. Equalize processing is processing that corrects the received signal affected by the communication channel by numerical calculation, but generally the wireless communication channel changes with time, so the correction amount is also updated according to the change of the wireless communication channel. It is necessary to continue. By omitting this correction amount update process (for example, by thinning out the update process executed periodically to widen the update interval), the calculation load at the time of reception can be reduced and the speed can be increased. Thus, by extending the update interval of the correction amount of the Equalize process, the speed of the reception process is increased, and the state where the reception process shown in FIG. 5 is delayed is shown in FIG. It can be improved until the point indicating is on the thick line 60. FIG. 6 shows an example in which the process is switched to the point A and the process is switched to speed up the reception process so that the scheduled end time T is met.

なお、ここでは無線LANシステムの受信動作において処理速度を高速化し、処理を予定終了時刻Tまでに終了させる場合の例について示したが、さまざまなバリエーションが考えられる。すなわち、送信動作や他の通信システムにおける信号処理動作(送受信動作)においても同様の手法(所定の処理についての負荷を軽減すること)で全体の処理速度を高速化できる。   Although an example in which the processing speed is increased in the reception operation of the wireless LAN system and the processing is ended by the scheduled end time T has been described here, various variations are conceivable. In other words, the overall processing speed can be increased by a similar method (reducing the load on a predetermined process) in the transmission operation and the signal processing operation (transmission / reception operation) in another communication system.

また、本実施の形態にかかるソフトウェア無線機の特徴的な動作は、以下の(ステップS1)〜(ステップS3)で示した3つの要素から成り立っている。   Further, the characteristic operation of the software defined radio according to the present embodiment is composed of the following three elements (step S1) to (step S3).

(ステップS1):「時刻および当該時刻までに終了した作業量の組」を進捗管理部11が取得する。
(ステップS2):進捗管理部11は、ステップS1で取得した情報に基づいて、処理の進捗(予定終了時刻よりも遅れているか、または進んでいるか)を判断する。
(ステップS3):ステップS2で「遅れている」と判断した場合は、高速な処理に切り替える。すなわち、進捗管理部11は、受信処理部12に対して処理速度を加速するように指示を行い、この指示内容に従い、受信処理部12では、処理速度を加速する。
(Step S <b> 1): The progress management unit 11 acquires “the set of time and the amount of work completed by that time”.
(Step S2): The progress management unit 11 determines the progress of the process (whether it is delayed or advanced from the scheduled end time) based on the information acquired in step S1.
(Step S3): If it is determined in step S2 that it is “delayed”, the processing is switched to high-speed processing. That is, the progress management unit 11 instructs the reception processing unit 12 to accelerate the processing speed, and the reception processing unit 12 accelerates the processing speed according to the content of the instruction.

これらの各ステップについて、詳しく説明する。まず、ステップS1で、「時刻および当該時刻までに終了した作業量の組」を取得する場合、進捗管理部11は、計時部13に対して時刻を問い合わせ、時刻情報を取得する。「時刻情報」はフレームの先頭位置を0とするなど、適切な時点からの時刻とする。「当該時刻までに終了した作業量」は、作業量を定量的に示す情報であれば何でも良い。例えば、処理が終了したデータ量(バイト数やシンボル数など)とすればよい。また、繰り返し復号を行う場合、何回目の繰り返しが終わったかを示す情報を「当該時刻までに終了した作業量」としてもよい。なお、何らかの処理が終了した時点のデータの量と言っても、どの「処理」が終了した時点におけるデータの量とするかは選択肢がある。例えば、処理済のシンボル数とする場合、受信処理が(1)FFT(Fast Fourier Transform)処理、(2)Equalize処理、(3)Demapping処理の順でパイプライン式に実行されるのであれば、(1)を終了したデータシンボル数なのか、(2)を終了したデータシンボルなのか、それとも(3)を終了したデータシンボル数を図るのか…、など適当な位置を選ぶ必要がある。進捗管理部11は、このような作業量の情報を受信処理部12から取得する。   Each of these steps will be described in detail. First, when acquiring “a set of time and work amount completed by the time” in step S1, the progress management unit 11 inquires of the time measuring unit 13 about the time and acquires time information. The “time information” is a time from an appropriate time point such as 0 at the head position of the frame. The “amount of work completed by the time” may be anything as long as it is information that quantitatively indicates the amount of work. For example, the amount of data that has been processed (the number of bytes, the number of symbols, etc.) may be used. In addition, when iterative decoding is performed, information indicating how many iterations have been completed may be set as “the amount of work completed by the time”. Note that even if the amount of data at the time when some processing is completed, there is a choice as to which “processing” the data amount at the time when the processing is completed. For example, when the number of processed symbols is used, if the reception process is executed in a pipeline manner in the order of (1) FFT (Fast Fourier Transform) process, (2) Equalize process, and (3) Demapping process, It is necessary to select an appropriate position, such as whether the number of data symbols for which (1) has been completed, whether the number of data symbols for which (2) has been completed, or the number of data symbols for which (3) has been completed. The progress management unit 11 acquires such work amount information from the reception processing unit 12.

ステップS1の処理を実装する場合の例としては次のようなものがある。ハードウェアで実行する処理の進捗を知りたい場合、データ処理量をカウントするカウンタを用意しておき、そのカウンタが既定値となった時点、すなわち、一定量のデータ(たとえば1シンボルデータ)に対する処理が終了した時点で進捗管理部11が計時部13から時刻情報を取得することで、時刻とデータ処理量の組を得る。また、ソフトウェアで実行する処理の進捗を知りたい場合であれば、処理の終了時点(例えば、特定の関数による処理が終了した時点)で進捗管理部11が計時部13から時刻情報を取得すればよい。また、受信処理がハードウェアとそのハードウェアを制御するプロセッサで構成されている場合、プロセッサがそのハードウェアから割り込みを受けるなどしてハードウェアで所定の処理が終わったことを知ることができるので、その割り込みが入る毎に進捗管理部11が計時部13から時刻情報を取得することにより、そこまでの処理が終わった時点の時刻情報を得ることができる。   The following is an example in which the process of step S1 is implemented. If you want to know the progress of processing executed by hardware, prepare a counter that counts the amount of data processing, and when that counter reaches a predetermined value, that is, processing for a certain amount of data (for example, one symbol data) The progress management unit 11 obtains time information from the time measuring unit 13 at the time when is completed, thereby obtaining a set of time and data processing amount. If it is desired to know the progress of processing executed by software, the progress management unit 11 acquires time information from the time measuring unit 13 at the end of processing (for example, when processing by a specific function is completed). Good. In addition, if the reception process is configured with hardware and a processor that controls the hardware, the processor can know that the predetermined processing has been completed by receiving an interrupt from the hardware. Whenever the interruption is received, the progress management unit 11 acquires time information from the time measuring unit 13, whereby time information at the time when the processing up to that point is completed can be obtained.

ステップS2では、ステップS1で取得した情報(時刻と終了した作業量の組)に基づいて処理の進捗を判断するが、これは、上記の図6に示した点Aを決定する(処理を軽減してスピードアップを図るタイミングを決定する)ことに相当する。このステップS2の実現方法は、大きく分けて、以下の2つがある。   In step S2, the progress of the process is determined based on the information (a set of time and finished work amount) acquired in step S1, and this determines the point A shown in FIG. 6 (reducing the process). To determine the timing of speeding up). The implementation method of step S2 is roughly divided into the following two.

一つ目の方法(方法1)では、一連の受信処理が終了していなければならない予定時間から逆算してそれぞれの処理のデッドラインをあらかじめ求めておき、実際の処理の進捗がそのデッドラインより遅れだしたら、処理を切り替える。   In the first method (method 1), a deadline of each process is obtained in advance by calculating backward from the scheduled time when a series of reception processes must be completed, and the actual progress of the process is determined from the deadline. If it is late, switch the process.

もう一つの方法(方法2)では、期待される処理の進捗を予め決めておき、実際の処理が決めておいた進捗からある一定以上遅れだしたら(許容範囲を超える遅延が発生したら)、処理を切り替える。   In another method (method 2), the expected progress of the process is determined in advance, and if the actual process determines a delay of a certain amount or more (if a delay exceeding the allowable range occurs), the process is performed. Switch.

方法1の具体例について示す。無線LANシステムの例で述べたように、多くの通信方式においては、通信路を流れているデータが終わる時刻(Tendとする)から一定の時間内にACKを返すということが規格で決められている。通信路を流れるデータが終わる時刻Tendは、受信データ(受信したフレーム)に含まれるデータ長の情報をデコードすれば計算できる。データ長の情報は、無線LANシステムの場合に限らず一般的にフレームの先頭に置かれることが多いので、フレームの受信を開始して早い段階でTendは計算できる。よって、ソフトウェア無線機は、時刻Tendに基づき、また、ACKを送信するための処理時間などを考慮して、規格で定められた一定時間内にACKを返すためには、どのくらいの時刻までに受信処理を終えなければならないか、すなわち受信処理終了予定時刻Tを決めることができる(たとえばT<Tend+SIFS)。これらのTendおよびTを算出する場合、ソフトウェア無線機では、受信処理部12が、データ長の情報についてのデコード処理が終了すると、このデータ長の情報を進捗管理部11へ通知し、進捗管理部11は、通知された情報に基づいて、TendおよびTを算出する。 A specific example of Method 1 will be described. As described in the example of the wireless LAN system, in many communication systems, the standard determines that ACK is returned within a certain time from the time when data flowing through the communication path ends ( Tend ). ing. The time T end when the data flowing through the communication path ends can be calculated by decoding data length information included in the received data (received frame). The data length information is not limited to the case of the wireless LAN system, and is generally placed at the beginning of the frame. Therefore, T end can be calculated at an early stage after the reception of the frame is started. Therefore, the software defined radio must return the ACK within a predetermined time determined by the standard based on the time T end and considering the processing time for transmitting the ACK. It is possible to determine whether the reception process has to be completed, that is, the reception process end scheduled time T (for example, T <T end + SIFS). When calculating these T end and T, in the software defined radio, when the decoding process for the data length information is completed, the reception processing unit 12 notifies the progress management unit 11 of the data length information, and the progress management. The unit 11 calculates T end and T based on the notified information.

このようにして終了予定時刻Tを決めた後、ソフトウェア無線機は、上述の無線LANシステムの例(図3〜図6に示した例)のように、遅れを検出したら負荷の軽い処理に変更するものとして、終了予定時刻Tにぎりぎり間に合うようなタイミング(図6に示した点Aに相当)を求める。すなわち、図6において処理の進捗が太線60より右側に行きそうになったところで処理を切り替える。太線60は負荷が軽い処理に切り替えて高速化した場合のソフトウェア無線機の受信処理能力(受信処理部12の処理能力)を表しているので、太線60より右側に入ってしまった場合、高速化したとしても終了予定時刻Tに間に合わせることができない。よって、点Aは処理を切り替えれば時刻Tに間に合うであろうぎりぎりの点である。   After determining the scheduled end time T in this way, the software defined radio changes to a process with a light load when a delay is detected, as in the above-described example of the wireless LAN system (examples shown in FIGS. 3 to 6). As a result, a timing (corresponding to the point A shown in FIG. 6) that is just before the scheduled end time T is obtained. That is, the process is switched when the progress of the process is about to go to the right side of the thick line 60 in FIG. The thick line 60 represents the reception processing capability (processing capability of the reception processing unit 12) of the software defined radio when the processing speed is increased by switching to a process with a light load. Even if it does, it cannot be in time for the scheduled end time T. Therefore, the point A is a point that will be in time for the time T if the process is switched.

上記の太線60をどのように引くかは状況によって異なる。例えば、太線60は高速化した後、順調に(実行時に遅延が発生しないで)処理が進んだ場合の処理能力とすることもできるし、高速化した後にもある程度実行時に発生する遅延を考慮した平均的な処理能力とすることもできる。また、デッドライン(上記の太線60に相当)は本当にぎりぎりのラインで引いてしまうとそのラインより少しでも遅れたら間に合わなくなってしまうので、実際には少し余裕をもって引くことが考えられる。また、処理を切り替える点Aを求める際には、処理の切り替えに伴うオーバーヘッドについても考慮すべきである。処理の切り替えに伴うオーバーヘッドとは、例えばソフトウェアの実行で切り替える場合であれば、分岐による遅延,命令キャッシュや命令メモリの内容の切り替えなどによる遅延である。また、「処理の切り替えができる場所はシンボルの区切れ目だけ」と言う制約がある場合は、処理を切り替えたいからと言ってすぐに切り替えることができないので、それを考慮する必要がある。   How to draw the thick line 60 depends on the situation. For example, the thick line 60 can be set as a processing capability when the processing proceeds smoothly (without a delay at the time of execution) after speeding up, or a delay that occurs at the time of execution to some extent after the speeding up is considered. It can also be an average processing capacity. In addition, if the deadline (corresponding to the above thick line 60) is drawn with a marginal line, it will not be in time if it is delayed even a little behind that line. Further, when obtaining the point A for switching the process, the overhead associated with the process switching should be taken into consideration. For example, when switching is performed by executing software, the overhead associated with the switching of processing is a delay due to branching or a delay due to switching of the contents of the instruction cache or instruction memory. Also, if there is a restriction that “the place where the process can be switched is only the symbol breakpoint”, it is not possible to immediately switch because the process is switched, and it is necessary to consider this.

なお、図6にはソフトウェア無線機の通常の処理能力を示す直線61も描かれているが、この方法1のようにデッドライン(太線60)に基づいて判断する方法では、直線61に対応する情報は必要ない。また、図6では複数の「時刻とデータ処理済量」の点(受信処理の進捗を示すモニター結果)が定期的に描かれており、各点で遅れているかどうかの判断が行われているが、この点は不定期でも良い(処理の進捗確認を実行する周期は不定期でもよい)。   In FIG. 6, a straight line 61 indicating the normal processing capability of the software defined radio is also drawn. However, in the method of determining based on the deadline (thick line 60) as in Method 1, it corresponds to the straight line 61. No information is needed. Further, in FIG. 6, a plurality of “time and data processed amount” points (monitor results indicating the progress of reception processing) are drawn periodically, and it is determined whether each point is delayed. However, this point may be irregular (the period for executing the processing progress confirmation may be irregular).

次に、方法2の具体例について図7を用いて説明する。図7において、直線72は、処理実行時の遅延を含まない通常の処理能力を表している。また、直線70は、直線72から一定量の遅れ、すなわちシステムで許容される最大遅延量を考慮して引かれた直線であり直線72に平行である。また、図中の各点は、受信処理の進捗(モニター結果)を示している。なお、上記最大遅延量は、実行する処理に対応する通信規格などから導き出された時間制約を考慮し、この時間制約を満足できるように決定される。たとえば、ソフトウェア無線機の設計時に決定される。この方法2では、モニター結果を示す点が直線70より右側に行きそうになったら、すなわち、期待される処理の進捗(直線72)から一定以上遅れ出したら、処理を高速化する。図7の例では、点Bで直線70の右側に達し、予定(直線72)から一定以上遅れ出したことを進捗管理部11が検出する。そして、進捗管理部11は受信処理部12に対し、負荷の軽い処理に切り換えるように指示を行い、受信処理部12は、点Bから直線71に示されるような処理速度の処理に変更して加速することで遅れを取り戻している。   Next, a specific example of the method 2 will be described with reference to FIG. In FIG. 7, a straight line 72 represents a normal processing capability that does not include a delay at the time of processing execution. The straight line 70 is a straight line drawn from the straight line 72 in consideration of a certain amount of delay, that is, the maximum delay amount allowed in the system, and is parallel to the straight line 72. Each point in the figure indicates the progress of the reception process (monitor result). The maximum delay amount is determined so as to satisfy the time constraint in consideration of the time constraint derived from the communication standard corresponding to the processing to be executed. For example, it is determined when designing the software defined radio. In this method 2, when the point indicating the monitoring result is likely to go to the right side of the straight line 70, that is, when the point is delayed by a certain amount or more from the expected progress of the processing (straight line 72), the processing is accelerated. In the example of FIG. 7, the progress management unit 11 detects that the point B reaches the right side of the straight line 70 and is delayed by a certain amount or more from the schedule (straight line 72). Then, the progress management unit 11 instructs the reception processing unit 12 to switch to the processing with a light load, and the reception processing unit 12 changes the processing speed from the point B to the processing speed indicated by the straight line 71. The delay is recovered by accelerating.

また、図7に示した動作では、点Bの後、点Cで遅延が解消されたことを進捗管理部11が検出し、その結果、受信処理部12は高速な処理を終了して直線72に対応する処理を開始している。なお、点Cで元の処理(直線72で示された処理速度の処理)に戻したが、点Cの位置の選び方は任意である。また、元の処理に戻るのは必須ではなく、他の処理が選択可能であればそれを開始するようにしてもよい。   In the operation illustrated in FIG. 7, after the point B, the progress management unit 11 detects that the delay has been eliminated at the point C, and as a result, the reception processing unit 12 finishes the high-speed processing, and the straight line 72. Processing corresponding to is started. In addition, although it returned to the original process (process of the processing speed shown by the straight line 72) at the point C, how to select the position of the point C is arbitrary. Also, it is not essential to return to the original process, and if another process can be selected, it may be started.

この方法2は、上述した方法1とは異なり、終了予定時刻Tを求めなくても適用できるので、放送の受信システムなどでも利用可能である。放送受信システムに適用する場合には、放送の無線処理の後段処理(動画像のデコード処理など)から要求される遅延時間に基づいて図7に示した直線70に相当する直線を求めれば良い。   Unlike method 1 described above, this method 2 can be applied without obtaining the scheduled end time T, and thus can be used in a broadcast receiving system or the like. In the case of application to a broadcast receiving system, a straight line corresponding to the straight line 70 shown in FIG. 7 may be obtained based on a delay time required from subsequent processing of broadcast wireless processing (moving image decoding processing or the like).

上記の方法1や2は、一連の受信処理を行っている途中で進捗を判断し高速処理に切り替えるものであるが、高速処理に切り替えるかどうかを過去の進捗状況(動作結果)に基づき判断することも可能である。すなわち、ある処理を実行する場合に、同じ処理を前回実行した際に遅延が発生していた場合には今回も同様の遅延が発生する可能性が高いと推測し、実行する処理の処理負荷を予め軽減する(通常よりも高速な処理を実行する)。例えば、無線LANシステムであれば「1つ前のフレームの処理時は予定より時間がかかったので、今回は高速な処理を使う」というように処理を切り替えていく方法である。これは、以前の進捗が大きく遅れた場合は今回なるべく速い処理を適用し、以前少し遅れただけであれば今回少しだけ高速化する、というように、以前の進捗状況に応じて高速化の適用を変えていく方法である。この方法では、一度高速な処理に切り替えると、逆に想定より早く終わってしまう可能性もある。そのため、想定より早く終わりそうな場合には、元の処理に戻すなどして処理を適切に切り替える。   In the above methods 1 and 2, the progress is determined during the series of reception processing and the high-speed processing is switched. However, whether to switch to the high-speed processing is determined based on the past progress situation (operation result). It is also possible. In other words, when executing a certain process, if a delay occurred when the same process was executed last time, it is estimated that the same delay is likely to occur again, and the processing load of the process to be executed is reduced. Reduce in advance (execute processing faster than normal). For example, in the case of a wireless LAN system, the processing is switched such that “the processing of the previous frame took longer than planned, so this time high-speed processing is used”. Applying acceleration according to the previous progress, such as applying the fastest processing as possible this time if the previous progress is greatly delayed, and slightly increasing the speed this time if it is only a little late before. Is a way of changing. In this method, once switching to high-speed processing, there is a possibility that it will end earlier than expected. Therefore, when it is likely to end earlier than expected, the process is appropriately switched by returning to the original process.

上記の方法1,2,過去の進捗に基づいて高速処理に切り替えるかどうかを判断する方法は、2つ以上を組み合わせて使用することも可能である。たとえば、方法2として示した制御を途中まで行い、最後に終了予定時刻Tに間に合わせるために方法1として示した制御を適用するなどである。   The above methods 1 and 2 and the method for determining whether to switch to high-speed processing based on past progress can be used in combination of two or more. For example, the control shown as the method 2 is performed halfway, and finally the control shown as the method 1 is applied in order to meet the scheduled end time T.

ステップS3を実行し、受信処理部12が実行する処理を高速化する場合、無線LANシステムにおける受信処理であれば、Equalize処理の一部を省くことで処理の負荷を軽減できることを既に述べたが、無線規格や無線機の実装方法に応じて様々な手法が適用可能である。主なものとしては、(手法A)動作周波数を向上させる。(手法B)計算リソースを増強する。(手法C)一部の処理を省く。(手法D)アルゴリズムを変更する。(手法E)扱う処理データ量を減らす。などが挙げられる。   As described above, when executing step S3 and speeding up the processing executed by the reception processing unit 12, if the reception processing is performed in the wireless LAN system, the processing load can be reduced by omitting part of the equalization processing. Various methods can be applied depending on the wireless standard and the wireless device mounting method. Mainly, (Method A) improves the operating frequency. (Method B) Increase computational resources. (Method C) A part of the processing is omitted. (Method D) The algorithm is changed. (Method E) Reduce the amount of processing data to be handled. Etc.

(手法A),(手法B)は計算能力を高めることによりノイズ耐性を低下させることなく処理を高速化する方法である。(手法A)の動作周波数を向上させる方法は、低電力動作のためにDVFS(Dynamic Voltage Frequency Scaling)などにより下げていた電圧や周波数を元に戻して動作させるなどして実現する。また、基板バイアス効果を利用することでより高い周波数での動作を可能にすることもできる。これらの方法により、回路のクリティカルパスに間に合う範囲であれば、周波数を高めることができる。(手法B)の実現は、現在利用中の計算リソース以外のリソースがあることが前提になる。例えば、低電力動作のために一部のプロセッサコアの電源を落として動作していた場合に、それらのプロセッサコアの電源を入れて使用するようにして、計算能力を高める。また、他の処理で利用中の計算リソースであっても、そこで実行中の処理がクリティカルなものでなければ、そのリソースを取得して使用することにより計算能力を高める方法も考えられる。例えば、バスリクエストの競合がボトルネックになって現在の処理が遅れている場合、優先させたい処理以外のバスリクエストの優先度を下げる,またはリクエスト自体を発生させないようにする,などの方法を取ることで実現する。   (Method A) and (Method B) are methods for increasing the processing speed without reducing noise tolerance by increasing the calculation capability. The method of improving the operating frequency of (Method A) is realized by returning the voltage or frequency that has been lowered by DVFS (Dynamic Voltage Frequency Scaling) or the like for low power operation to the original operation. Further, it is possible to enable operation at a higher frequency by utilizing the substrate bias effect. By these methods, the frequency can be increased within a range that meets the critical path of the circuit. The realization of (Method B) is based on the premise that there are resources other than the currently used calculation resources. For example, in the case where some processor cores are powered down for low power operation, the processor cores are turned on and used to increase the calculation capability. In addition, even if a calculation resource is being used in another process, if the process being executed is not critical, a method of increasing the calculation capability by acquiring and using the resource can be considered. For example, if the current processing is delayed due to a conflict of bus requests, take a method such as lowering the priority of bus requests other than the processing you want to prioritize or not generating the request itself. It will be realized.

(手法C),(手法D),(手法E)は、ノイズ耐性を犠牲にして処理を高速化させるような方法である。(手法C)は、丸め誤差対策の計算をソフトウェアで行っている場合それをしないように変更する,繰り返し復号を行う誤り訂正処理における繰り返し回数を減らす,組織符号について誤り訂正のデコードをしない,などの変更を行うことにより実現する。また、(手法D)は、Equalizeの方式変更(Sphere Decoder,MMSE,Zero Forcinng)により処理を軽減して高速化することにより実現する。(手法E)は、たとえば、量子化ビット数を減らしてメモリアクセスやバスの負荷を軽減する,マルチプロセッサ構成でMIMO(Multiple Input Multiple Output)デコーディングを行う場合において、デコード時に必要な情報を渡すためのプロセッサ間の通信を省く,などにより実現する。   (Method C), (Method D), and (Method E) are methods that speed up processing at the expense of noise tolerance. (Method C) is such that calculation for rounding error countermeasures is changed so as not to be performed by software, the number of repetitions in error correction processing for iterative decoding is reduced, error correction is not performed for systematic codes, etc. Realized by making changes. Further, (Method D) is realized by reducing the processing and increasing the speed by changing the Equalize method (Sphere Decoder, MMSE, Zero Forcinng). (Method E), for example, reduces the memory access and bus load by reducing the number of quantization bits, and when performing MIMO (Multiple Input Multiple Output) decoding in a multiprocessor configuration, passes information necessary for decoding. For example, by eliminating communication between processors.

なお、(手法A)〜(手法E)のうちの2つ以上を組み合わせて高速化することも可能である。処理を高速化する際、高速化の選択肢(方法)が複数ある場合には、どの処理を変更するか選択する必要がある。一般的に、高速化は消費電力の増大またはノイズ耐性の劣化につながるので、これらと高速化の実現はトレードオフの関係にある。そのため、ソフトウェア無線機では、状況によってどの方法で高速化を行うかを適応的に決定できることが望ましい。例えば、ノイズの多い環境では、あまり処理の軽い処理を選んでノイズ耐性を劣化させてしまうと受信できなくなる(CRCエラーなどになる)可能性があるため、通信路の状態と処理の変更による性能劣化を考慮して、変更する処理を選ぶとよい。通信路の状態を知るためには、一般的なRSSIの値やパイロット信号の電力,EVM(Error Vector Magnitude),誤り訂正のデコーダの状態(ビタビデコーダならばパスメトリックの積算値,ターボ符号などの繰り返し復号を行うデコーダであれば停止までの繰り返し回数),Equalize処理時の補正値の量,などを参照する。   It is also possible to increase the speed by combining two or more of (Method A) to (Method E). When speeding up the processing, if there are a plurality of speed-up options (methods), it is necessary to select which processing to change. In general, speeding up leads to an increase in power consumption or deterioration in noise resistance, and there is a trade-off relationship between these and the realization of speeding up. Therefore, it is desirable that the software defined radio can adaptively determine which method is used for speeding up depending on the situation. For example, in a noisy environment, if you select a process that is too light and degrade the noise tolerance, you may not be able to receive (CRC error, etc.). The process to be changed should be selected in consideration of deterioration. In order to know the state of the communication channel, the general RSSI value, pilot signal power, EVM (Error Vector Magnitude), error correction decoder status (for Viterbi decoder, integrated path metric, turbo code, etc.) For decoders that perform iterative decoding, refer to the number of iterations until stopping), the amount of correction value during Equalize processing, etc.

通信路の状態に応じて処理を切り替える場合の例を図8および図9を使用して説明する。なお、ソフトウェア無線機の受信処理部12は、通常、図8および図9の直線80で示した受信処理能力を持つものとする。また、受信処理部12は負荷軽減の選択肢が直線81で示した処理速度の動作と直線82で示した処理速度の動作の2つであり、直線81に対応する動作は直線80に対応する動作(直線80で示した処理速度の通常動作)より負荷が軽いがノイズ耐性は弱く、直線82に対応する動作は直線81に対応する動作よりさらに負荷が軽く、さらにノイズ耐性が弱いものとする。図8は、ソフトウェア無線機が通信路のノイズが十分に小さい状態で受信処理を行った場合の動作結果の一例を示している。具体的には、処理の途中で遅延増加を検出し、負荷の軽い処理に切り替えた場合の処理の進捗結果の一例を示している。図8に示した例では、直線82は最もノイズ耐性が弱いが、通信路中のノイズが十分に小さいので全体として受信可能な品質を維持したまま時間制約を満たした処理を達成できる。一方、図9は、ソフトウェア無線機が、通信路中のノイズが図8より大きい状態で受信処理を行った場合の動作結果の一例を示している。具体的には、処理の途中で遅延増加を検出し、負荷の軽い処理に切り替えた場合の処理の進捗結果の一例を示している。   An example of switching processing according to the state of the communication path will be described with reference to FIGS. It is assumed that the reception processing unit 12 of the software defined radio usually has a reception processing capability indicated by a straight line 80 in FIGS. The reception processing unit 12 has two load reduction options: a processing speed operation indicated by a straight line 81 and a processing speed operation indicated by a straight line 82. The operation corresponding to the straight line 81 is an operation corresponding to the straight line 80. It is assumed that the load is lighter than that (normal operation at the processing speed indicated by the straight line 80) but the noise resistance is weak, and the operation corresponding to the straight line 82 is lighter than the operation corresponding to the straight line 81 and further has a low noise resistance. FIG. 8 shows an example of an operation result when the software defined radio performs a reception process in a state where the noise on the communication path is sufficiently small. Specifically, an example of the progress result of the process when an increase in delay is detected during the process and the process is switched to a process with a light load is shown. In the example shown in FIG. 8, the straight line 82 has the weakest noise tolerance, but since the noise in the communication path is sufficiently small, the processing satisfying the time constraint can be achieved while maintaining the receivable quality as a whole. On the other hand, FIG. 9 shows an example of an operation result when the software defined radio performs reception processing in a state where noise in the communication path is larger than that in FIG. Specifically, an example of the progress result of the process when an increase in delay is detected during the process and the process is switched to a process with a light load is shown.

図8,図9に示したような動作を行う場合、ソフトウェア無線機では、進捗管理部11が、受信処理部12から取得可能なRSSI値などを参考に通信路中のノイズ量を見積もり、どの処理を負荷の軽い処理に変更することにより全体として受信可能な品質を保つことができるか判断する。例えば図9に示した場合において、進捗管理部11は、現在の通信路の状態では直線82に対応するような負荷の軽い処理に切り替えると品質が低下しすぎてCRCエラーが発生してしまうので、最低限直線81に対応する処理は行って受信品質を維持したいと判断する。そして、受信処理中に遅延が発生して直線80から遅れ出し、処理の進捗確認結果(モニター結果)が直線81より右側に行きそうになった時点で受信処理部12が実行している処理を切り替えて時間制約に間に合わせる。このように制御することにより、ある程度の受信品質を維持したまま、処理実行時に発生する遅延に対応できる。   When performing the operations shown in FIGS. 8 and 9, in the software defined radio, the progress management unit 11 estimates the noise amount in the communication path with reference to the RSSI value that can be acquired from the reception processing unit 12, and which It is determined whether the quality that can be received as a whole can be maintained by changing the process to a process with a light load. For example, in the case shown in FIG. 9, if the progress management unit 11 switches to a process with a light load corresponding to the straight line 82 in the current communication path state, the quality deteriorates too much and a CRC error occurs. It is determined that the reception quality is to be maintained by performing at least processing corresponding to the straight line 81. Then, a delay occurs during the reception process, and the process is executed by the reception processing unit 12 when the process progress confirmation result (monitor result) is likely to go to the right side of the straight line 81. Switch to meet time constraints. By controlling in this way, it is possible to cope with a delay that occurs during processing execution while maintaining a certain level of reception quality.

どの処理を負荷の軽いものに変更するかについては、各処理の特徴と動作環境に着目して決定することもできる。例えば、通常は図10の直線100に示した処理速度で動作するソフトウェア無線機において、処理速度を高速化するための負荷軽減の候補としてEqualize処理(処理#1)とビタビデコード処理(処理#2)の2つがあるとした場合に、処理#1を負荷の軽い処理に変更すると処理速度が直線100から直線101に切り替わり、一方、処理#2を変更すると処理速度が直線100から直線102に切り替わるとする。このような場合には、図10からわかる通り、処理#1と処理#2のどちらを変更しても同程度にしかスピードアップしない。そのため、加速という点では処理#1,#2どちらに切り替えても良いが、進捗管理部11は、処理#1,#2どちらに切り替えるかについてその処理の特徴を考慮して決定する。例えばEqualize時の補正量が大きいときに、処理#1を変更してEqualize処理を丁寧に行わないようなアルゴリズムに変更してしまうと品質劣化が大きいと予想できるので、処理#2のビタビデコード処理の負荷を軽くすることで高速化を図る。逆に、Equalize時の補正量がほとんどなく、ビタビデコードのパスメトリックの積算値が大きい場合は、処理#2は変更せず処理#1のEqualize処理を変更することで高速化を図る。   Which process is to be changed to a lighter one can be determined by paying attention to the characteristics and operating environment of each process. For example, in a software defined radio that normally operates at the processing speed indicated by the straight line 100 in FIG. 10, Equalize processing (processing # 1) and Viterbi decoding processing (processing # 2) are candidates for load reduction to increase the processing speed. ), If the process # 1 is changed to a process with a light load, the processing speed is switched from the straight line 100 to the straight line 101. On the other hand, if the process # 2 is changed, the processing speed is switched from the straight line 100 to the straight line 102. And In such a case, as can be seen from FIG. 10, the speed is increased only to the same extent regardless of which of the process # 1 and the process # 2. Therefore, although it may be switched to processing # 1 or # 2 in terms of acceleration, the progress management unit 11 determines whether to switch to processing # 1 or # 2 in consideration of the characteristics of the processing. For example, if the correction amount at the time of Equalize is large, it can be predicted that the quality degradation will be large if the algorithm is changed so that the Equalize process is not performed carefully by changing the process # 1, so the Viterbi decoding process of the process # 2 Speed up by reducing the load of On the other hand, when there is almost no correction amount at the time of equalization and the integrated value of the Viterbi decoding path metric is large, the processing # 2 is not changed, and the processing # 1 is changed to change the equalization processing.

さらに、負荷の軽い処理に切り替える際に、どの処理を変更するかについて、データの重要度を考慮して処理を選択する方法も考えられる。例えば、通信の制御情報が入っている部分についての受信処理は重要なのでなるべく処理を省かないように制御する方法などが考えられる。   Furthermore, a method of selecting a process in consideration of the importance of data as to which process is to be changed when switching to a process with a light load can be considered. For example, since the reception process for the part containing the communication control information is important, a method of controlling the process so as to omit the process as much as possible can be considered.

最後に、受信処理を変更して処理速度を高速化する場合の具体例について説明する。図11は、受信処理部12の内部構成例を示す図である。図示したように、受信処理部12は、FIRフィルタ21−1および21−2と、AFC部22−1および22−2と、FFT部23−1および23−2と、MIMO decoding部24と、arrangement部25と、Viterbi decoding部26と、を備える。   Finally, a specific example of changing the reception process to increase the processing speed will be described. FIG. 11 is a diagram illustrating an internal configuration example of the reception processing unit 12. As illustrated, the reception processing unit 12 includes FIR filters 21-1 and 21-2, AFC units 22-1 and 22-2, FFT units 23-1 and 23-2, a MIMO decoding unit 24, An arrangement unit 25 and a Viterbi decoding unit 26 are provided.

FIRフィルタ部21−1および21−2は、図示を省略した2系統のアンテナで受信された各アナログ信号に対して所定の処理を実行し、得られた2系統のデジタル信号それぞれに対してFIRフィルタ処理を行う。AFC部22−1および22−2は、前段のFIRフィルタ21−1および21−2から入力された信号に対してAFC(Automatic frequency control)処理を実行して周波数オフセットを補償する。FFT部23−1および23−2は、前段のAFC部22−1および22−2から入力された信号に対してFFT処理を実行する。MIMO decoding部24は、FFT部23−1および23−2から入力された信号に対して、Equalize処理を含むMIMO復号処理を実行する。なお、MIMO decoding部24が出力するMIMO復号処理結果は、軟判定値となる。arrangement部25は、MIMO decoding部24から入力された信号に対して、データの入れ替えや整列処理を実行して、各データを正しい並び順に戻す。Viterbi decoding部26は、arrangement部25から入力された信号に対してビタビ復号処理を実行する。   The FIR filter units 21-1 and 21-2 perform predetermined processing on each analog signal received by two antennas (not shown), and perform FIR on each of the obtained two digital signals. Perform filtering. The AFC units 22-1 and 22-2 perform AFC (Automatic Frequency Control) processing on the signals input from the preceding FIR filters 21-1 and 21-2 to compensate for the frequency offset. The FFT units 23-1 and 23-2 perform FFT processing on the signals input from the preceding AFC units 22-1 and 22-2. The MIMO decoding unit 24 performs a MIMO decoding process including an Equalize process on the signals input from the FFT units 23-1 and 23-2. The MIMO decoding processing result output from the MIMO decoding unit 24 is a soft decision value. The arrangement unit 25 performs data exchange and alignment processing on the signal input from the MIMO decoding unit 24, and returns each data in the correct arrangement order. The Viterbi decoding unit 26 performs Viterbi decoding processing on the signal input from the arrangement unit 25.

このような構成の受信処理部12においては、MIMO復号処理における軟判定値の量子化ビット数を減らすことにより処理負荷を軽減し、受信信号処理の高速化が実現できる。   In the reception processing unit 12 having such a configuration, it is possible to reduce the processing load by reducing the number of quantization bits of the soft decision value in the MIMO decoding process, and to realize high-speed reception signal processing.

軟判定値の量子化ビット数を減らすことで処理負荷を軽減可能な理由について説明する。なお、上述した受信処理部12のFIRフィルタ21−1および21−2の後段で実行する各処理のうち、Viterbi decoding部26における処理を専用のハードウェア(図1に示したハードウェアエンジン3に相当)で実行し、その他の処理はソフトウェア(図1に示したプロセッサ1,2に相当)で実行するものとする。このように処理を切り分けた場合、軟判定値の量子化ビット数を減らすことにより、プロセッサ1や2において内部メモリへの書き込み量を減らせる。そのため、各プロセッサでの処理時間が短縮されて処理速度の高速化が実現される。加えて、プロセッサ1および2からハードウェアエンジン3へ転送するデータ量が減少するため、バスの占有時間が減り、バスアクセスの競合による処理時間の増加が少なくなる。さらに、ハードウェアエンジン3で行うビタビ復号化処理の内部演算精度を下げることができるため、動作周波数を上げることができ、誤り訂正処理の時間短縮が見込める。   The reason why the processing load can be reduced by reducing the number of quantization bits of the soft decision value will be described. Of the processing executed after the FIR filters 21-1 and 21-2 of the reception processing unit 12 described above, the processing in the Viterbi decoding unit 26 is performed by dedicated hardware (in the hardware engine 3 shown in FIG. 1). The other processing is executed by software (corresponding to the processors 1 and 2 shown in FIG. 1). When the processing is divided in this way, the amount of writing to the internal memory in the processors 1 and 2 can be reduced by reducing the number of quantization bits of the soft decision value. Therefore, the processing time in each processor is shortened and the processing speed is increased. In addition, since the amount of data transferred from the processors 1 and 2 to the hardware engine 3 is reduced, the bus occupation time is reduced, and the increase in processing time due to bus access contention is reduced. Furthermore, since the internal calculation accuracy of the Viterbi decoding process performed by the hardware engine 3 can be reduced, the operating frequency can be increased, and the time required for the error correction process can be shortened.

ただし、軟判定値の量子化ビット数を減らして処理負荷を軽減する場合、注意すべき点が存在する。まず、デコードの途中で軟判定値のビット数が変わることへの対応が必要となる。例えば、デコードの途中で軟判定値を6bitから4bitに変更する場合、パスメトリックの積算値が2bit分ずれるのでそれを補正する必要がある。具体的な対応方法としては、4bitに切り替える前までのパスメトリック値を1/4にするか、4bitへ切り替えた後はブランチメトリックを4倍して使用する。また、量子化ビット数を減らして動作周波数を上げる機能を実装する場合、量子化ビット数を減らして動作周波数を上げた後も正しく動作するように考慮した上で回路設計を行う必要である。   However, there are points to be noted when reducing the processing load by reducing the number of quantization bits of the soft decision value. First, it is necessary to cope with the change in the number of bits of the soft decision value during decoding. For example, when the soft decision value is changed from 6 bits to 4 bits during decoding, the integrated value of the path metric is shifted by 2 bits, and it is necessary to correct it. Specifically, the path metric value before switching to 4 bits is set to 1/4, or after switching to 4 bits, the branch metric is multiplied by 4 and used. In addition, when a function for increasing the operating frequency by reducing the number of quantization bits is implemented, it is necessary to design the circuit in consideration of correct operation even after decreasing the number of quantization bits and increasing the operating frequency.

このように、本実施の形態のソフトウェア無線機は、処理の進捗をモニターし、処理の進捗(速度)が予め想定していたスピードより遅れたことを検出した場合(遅延要因によって予定より遅れ出したことを検出した場合)、ソフトウェアによる処理の一部を負荷の軽い処理に変更して処理を高速化し、遅れを取り戻すように動作することとした。これにより、処理の実行中に想定外の遅延が発生した場合であっても、発生した遅延をキャンセルして予定通りに処理を終了させることができる。この結果、遅延時間が変動しても無線規格で定められた時間制約に対応した通信を行うことが可能となり、システム設計時に確保しておく処理遅延についてのマージンを極力少なくすることができる。   As described above, the software defined radio according to the present embodiment monitors the progress of processing, and detects that the processing progress (speed) is delayed from the expected speed (delayed from the schedule due to a delay factor). In the event that it is detected that the process has been performed), a part of the process by software is changed to a process with a lighter load to speed up the process and to operate to recover the delay. Thus, even if an unexpected delay occurs during the execution of the process, the generated delay can be canceled and the process can be terminated as scheduled. As a result, even if the delay time fluctuates, it becomes possible to perform communication corresponding to the time constraint defined by the wireless standard, and it is possible to minimize the margin for the processing delay that is secured at the time of system design.

1,2 プロセッサ、3 ハードウェアエンジン、4,5 フィルタ、11 進捗管理部、12 受信処理部、13 計時部、21−1,21−2 FIRフィルタ、22−1,22−2 AFC部、23−1,23−2 FFT部、24 MIMO decoding部、25 arrangement部、26 Viterbi decoding部。   1, 2 processor, 3 hardware engine, 4, 5 filter, 11 progress management unit, 12 reception processing unit, 13 timing unit, 21-1, 21-2 FIR filter, 22-1, 22-2 AFC unit, 23 -23-23 FFT unit, 24 MIMO decoding unit, 25 arrangement unit, 26 Viterbi decoding unit.

Claims (6)

ソフトウェアを利用して所定のベースバンド処理を実行する信号処理部と、
前記信号処理部が実行しているベースバンド処理の進捗を所定のタイミングで確認し、進捗確認結果に基づいて、前記信号処理部がその後のベースバンド処理で実行する処理内容を決定する進捗管理部と、
を備えることを特徴とするソフトウェア無線機。
A signal processing unit that executes predetermined baseband processing using software;
A progress management unit that confirms the progress of baseband processing executed by the signal processing unit at a predetermined timing and determines the processing content that the signal processing unit performs in the subsequent baseband processing based on the progress confirmation result When,
A software defined radio comprising:
前記進捗管理部は、
前記信号処理部が実行しているベースバンド処理に対応する通信規格に基づいて当該ベースバンド処理が順調に進んでいるかどうかを確認し、順調に進んでいない場合には、前記信号処理部に対し、実行中の処理を処理負荷の軽い処理に切り換えるように指示する
ことを特徴とする請求項1に記載のソフトウェア無線機。
The progress management unit
Check whether the baseband processing is proceeding smoothly based on the communication standard corresponding to the baseband processing performed by the signal processing unit, and if not proceeding smoothly, 2. The software defined radio according to claim 1, wherein the software radio is instructed to switch the process being executed to a process with a light processing load.
前記進捗管理部は、
前記信号処理部が実行しているベースバンド処理の終了予定時刻を前記通信規格に基づいて算出し、また、前記信号処理部が所定量の作業を終了するごとに当該ベースバンド処理の開始時からの経過時間を確認し、さらに、前記終了予定時刻および経過時間の確認結果に基づいて、前記ベースバンド処理が順調に進んでいるかどうかを判断する
ことを特徴とする請求項2に記載のソフトウェア無線機。
The progress management unit
The scheduled end time of the baseband processing being executed by the signal processing unit is calculated based on the communication standard, and every time the signal processing unit finishes a predetermined amount of work, from the start of the baseband processing. 3. The software defined radio according to claim 2, further comprising: determining whether the baseband processing is proceeding smoothly based on a confirmation result of the scheduled end time and the elapsed time. Machine.
前記進捗管理部は、
前記信号処理部が所定量の作業を終了するごとに当該信号処理部が実行しているベースバンド処理の開始時からの経過時間を確認し、経過時間の確認結果、および前記通信規格に基づき決定された、システムで許容される最大遅延量、に基づいて、前記ベースバンド処理が順調に進んでいるかどうかを判断する
ことを特徴とする請求項2に記載のソフトウェア無線機。
The progress management unit
Each time the signal processing unit finishes a predetermined amount of work, the elapsed time from the start of the baseband processing executed by the signal processing unit is confirmed, and determined based on the confirmation result of the elapsed time and the communication standard. 3. The software defined radio according to claim 2, wherein whether or not the baseband processing is proceeding smoothly is determined based on the maximum delay amount allowed in the system.
前記進捗管理部は、
前記信号処理部がこれから実行するベースバンド処理が順調に進むかどうかを過去の進捗確認結果に基づいて推測し、順調に進まないと推測した場合には、前記信号処理部に対し、前記過去の進捗確認結果を取得した際に当該信号処理部が実行していた処理よりも処理負荷が軽い処理を実行するように指示する
ことを特徴とする請求項1に記載のソフトウェア無線機。
The progress management unit
If the signal processing unit estimates whether or not the baseband processing to be executed in the future proceeds smoothly based on the past progress confirmation result and estimates that the baseband processing does not proceed smoothly, the signal processing unit 2. The software defined radio according to claim 1, wherein when the progress confirmation result is acquired, the software defined radio is instructed to execute a process having a lighter processing load than the process executed by the signal processing unit.
前記進捗管理部は、さらに、
通信路の状態に応じて前記信号処理部が実行している処理を切り替えるように指示する
ことを特徴とする請求項5に記載のソフトウェア無線機。
The progress management unit further includes:
The software defined radio according to claim 5, wherein an instruction is given to switch processing executed by the signal processing unit in accordance with a state of a communication path.
JP2009130000A 2009-05-29 2009-05-29 Software radio set Pending JP2010278829A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009130000A JP2010278829A (en) 2009-05-29 2009-05-29 Software radio set

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009130000A JP2010278829A (en) 2009-05-29 2009-05-29 Software radio set

Publications (1)

Publication Number Publication Date
JP2010278829A true JP2010278829A (en) 2010-12-09

Family

ID=43425364

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009130000A Pending JP2010278829A (en) 2009-05-29 2009-05-29 Software radio set

Country Status (1)

Country Link
JP (1) JP2010278829A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013162397A (en) * 2012-02-07 2013-08-19 Nippon Telegr & Teleph Corp <Ntt> Signal processing assignment determination apparatus and signal processing assignment determination method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013162397A (en) * 2012-02-07 2013-08-19 Nippon Telegr & Teleph Corp <Ntt> Signal processing assignment determination apparatus and signal processing assignment determination method

Similar Documents

Publication Publication Date Title
JP4157502B2 (en) Control device for processing equipment
US20130036428A1 (en) Event triggering method during sleep mode and related mobile devices
US20130117624A1 (en) Receive data flow path using a single fec decoder
KR20210138730A (en) Transmission processing method, apparatus and computer readable storage medium
US9582284B2 (en) Performance of processors is improved by limiting number of branch prediction levels
EP2281358B1 (en) Efficient parallel sub-packet decoding using multiple decoders, controller and task instructions
US20110078702A1 (en) Multiprocessor system
US20090060093A1 (en) Multi-function decoder engine in wireless receiver
JP2009015359A (en) Computer system, processor device, and method for controlling computer system
CN115865264A (en) System and method for synchronized data processing in a cellular modem
US9077389B2 (en) Method and system for processing radio packages in a multimode software defined radio (SDR) terminal
JP2013510455A (en) Channel estimation in OFDM receiver
CN107872411B (en) Method and device for estimating intermediate frequency offset of optical transmission channel
EP2482189A1 (en) Utilization-based threshold for choosing dynamically between eager and lazy scheduling strategies in RF resource allocation
JP2010278829A (en) Software radio set
US20090041159A1 (en) Power control for respective hardware engines in wireless receiver
US20110285429A1 (en) Microcontroller and method of controlling the same
JP6415556B2 (en) Method, apparatus, and computer program for allocating computing elements within a data receiving link (computing element allocation within a data receiving link)
JP2006065471A (en) Semiconductor integrated circuit, and its power saving control method and power saving control program
CN102508815B (en) Data processing method and system
US8880846B2 (en) Semiconductor device
US20190369698A1 (en) Methods and Apparatus for Adaptive Power Profiling in A Baseband Processing System
JP2008091988A (en) Method of controlling reception and receiver
EP3331180B1 (en) Flexible fec decoder for high speed wdm transmission
US11435809B2 (en) Method and apparatus to improve energy efficiency of parallel tasks