JPWO2013080289A1 - Signal processing apparatus and signal processing method - Google Patents
Signal processing apparatus and signal processing method Download PDFInfo
- Publication number
- JPWO2013080289A1 JPWO2013080289A1 JP2013546871A JP2013546871A JPWO2013080289A1 JP WO2013080289 A1 JPWO2013080289 A1 JP WO2013080289A1 JP 2013546871 A JP2013546871 A JP 2013546871A JP 2013546871 A JP2013546871 A JP 2013546871A JP WO2013080289 A1 JPWO2013080289 A1 JP WO2013080289A1
- Authority
- JP
- Japan
- Prior art keywords
- data
- arithmetic
- unit
- cycle
- control unit
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 145
- 238000003672 processing method Methods 0.000 title claims 2
- 238000012546 transfer Methods 0.000 claims abstract description 201
- 238000000034 method Methods 0.000 claims description 78
- 230000001360 synchronised effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 40
- 238000004891 communication Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 13
- 235000019800 disodium phosphate Nutrition 0.000 description 13
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000001364 causal effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000000969 carrier Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Advance Control (AREA)
Abstract
信号処理装置は、演算ユニットにより実行される演算処理のタイミングを制御する演算制御ユニットと、前記演算ユニットにより前記演算処理の対象となるデータがロードできるように、該演算処理の対象となるデータを転送するためのタイミングを制御する転送制御ユニットとを有する。The signal processing device includes an arithmetic control unit that controls timing of arithmetic processing executed by the arithmetic unit, and data that is subject to the arithmetic processing so that the arithmetic processing unit can load the data subject to the arithmetic processing. A transfer control unit that controls timing for transfer.
Description
本発明は、信号処理装置に関する。 The present invention relates to a signal processing apparatus.
移動通信の分野では、次々に新たな通信方式が標準化されて実用化されている。新たな通信方式が実用化される際には、現状の通信方式から、新たな通信方式に徐々に切り替えられる。従って、現状の通信方式から、新たな通信方式への移行期においては、一つの携帯端末で複数の通信方式をサポートすることが行われる場合もある。 In the field of mobile communication, new communication methods are standardized one after another and put into practical use. When a new communication method is put into practical use, the current communication method is gradually switched to a new communication method. Therefore, in a transition period from the current communication method to a new communication method, a plurality of communication methods may be supported by one mobile terminal.
一つの携帯端末で複数の通信方式をサポートする場合に、通信方式毎に専用のハードウェアを用意することが考えられる。しかし、通信方式毎に専用のハードウェアを用意する方法では、携帯端末の回路規模が大きくなる。携帯端末の回路規模が大きくなると、コストの増加や消費電力の増加などの問題が生じるおそれがある。 When a plurality of communication methods are supported by one mobile terminal, it is conceivable to prepare dedicated hardware for each communication method. However, the method of preparing dedicated hardware for each communication method increases the circuit scale of the mobile terminal. If the circuit scale of the mobile terminal increases, problems such as an increase in cost and an increase in power consumption may occur.
また、標準化規格が更新された場合には、更新された規格に、携帯端末を柔軟に対応させることが必要である。通信方式毎に専用のハードウェアを用意する方法では、更新された規格に迅速に対応できない。 In addition, when the standardization standard is updated, it is necessary to make the mobile terminal flexibly correspond to the updated standard. The method of preparing dedicated hardware for each communication method cannot quickly respond to the updated standard.
以上の理由から、一つの携帯端末で複数の通信方式をサポートすることを、ソフトウェアデファインドラジオ(SDR: Software Defined Radio)で実現することが望まれている。ソフトウェアデファインドラジオは、通信方式の実装をソフトウェアで行うことである。具体的には、無線処理をプロセッサのプログラムや書き換え可能ロジック等を使用して実現できるように無線機を構成する。ソフトウェアデファインドラジオで実現することにより、ハードウェアに変更を加えることなく、ソフトウェアを変更することによって、通信方式を切り替えることが可能である。 For the above reasons, it is desired to support a plurality of communication schemes with a single mobile terminal using software-defined radio (SDR). Software-defined radio is a software implementation of a communication method. Specifically, the wireless device is configured such that wireless processing can be realized using a processor program, rewritable logic, or the like. By realizing the software defined radio, it is possible to switch the communication method by changing the software without changing the hardware.
ソフトウェアで無線機(ラジオ)を実現する方法には、プロセッサを用いる方法やリコンフィギャラブルハードウェアを用いる方法などがある。ソフトウェアで無線機を実現する際には、開発手法が一般的であるプロセッサで実現する方が容易であるため、プロセッサを用いる方法が主流になっている。リコンフィギャラブルハードウェアを用いることにより、実行時にハードウェアの構成が動的に組み替えられる。 As a method for realizing a radio (radio) by software, there are a method using a processor and a method using reconfigurable hardware. When implementing a wireless device with software, it is easier to implement with a processor whose development method is general, and therefore, a method using a processor has become the mainstream. By using reconfigurable hardware, the hardware configuration is dynamically reconfigured at runtime.
一方、近年の無線通信方式が要求する伝送レートは非常に高くなっている。伝送レートの高レート化に伴い、携帯端末に要求される演算処理性能も非常に高くなっている。近年の無線通信方式には、LTE(Long Term Evolution)方式に代表される、OFDM(Orthogonal Frequency Division Multiplex)方式を採用する無線通信方式が含まれる。OFDM方式を採用する無線通信方式では、周波数方向及び時間方向に展開された無線リソースを多数用意することで、全体としての伝送レートを向上させる。 On the other hand, the transmission rate required by recent wireless communication systems is very high. As the transmission rate is increased, the arithmetic processing performance required for the portable terminal is also very high. Recent wireless communication systems include a wireless communication system that employs an OFDM (Orthogonal Frequency Division Multiplex) system, represented by the LTE (Long Term Evolution) system. In a wireless communication system employing the OFDM system, a large number of wireless resources deployed in the frequency direction and the time direction are prepared, thereby improving the overall transmission rate.
OFDM方式のような無線通信方式を実現する処理には、複雑な制御は殆ど必要なく、単純な処理の繰返しを効率よく実行できる構成が適している。ここで、複雑な制御には、演算結果を利用した分岐処理等が含まれる。 A process that realizes a wireless communication system such as the OFDM system requires almost no complicated control, and a configuration capable of efficiently executing simple process repetition is suitable. Here, the complicated control includes branch processing using the calculation result.
また、演算性能を向上させる一方法として、複数の命令を結合して、語長の長い一命令に構成し、同時に実行するようにした方法がある。例えば、VLIW(Very Long Instruction Word)を利用した技術が挙げられる。VLIWは、プロセッサのアーキテクチャの一種であり、複数の機能を用意し、各機能を動作させる命令を一つの命令に結合して、語長の長い一命令として実行する方式である。 Further, as one method for improving the calculation performance, there is a method in which a plurality of instructions are combined into one instruction having a long word length and executed simultaneously. For example, there is a technique using VLIW (Very Long Instruction Word). VLIW is a type of processor architecture, and is a method in which a plurality of functions are prepared and instructions for operating each function are combined into one instruction and executed as one instruction having a long word length.
信号処理装置に関して、演算器の並列度を高めても、急激な回路規模の増大を抑えることができるものが知られている(例えば、特許文献1参照)。 Regarding a signal processing device, there is known a signal processing device that can suppress a rapid increase in circuit scale even if the degree of parallelism of arithmetic units is increased (see, for example, Patent Document 1).
VLIWを利用した方法では、結合された複数の命令に直接的な因果関係がない場合が多い。VLIWを利用した方法では、結合された複数の命令が略同時に実行されようとする結果、ある命令の実行が、該ある命令と因果関係のない他の命令によって生じるストールにより阻害されるという問題がある。ストールとは、何らかの要因で処理が停止することをいう。例えば、プロセッサのサイクル時間とメモリのサイクル時間とが異なる場合に、早いサイクル時間のデバイスの動作が停止(ストール)することがある。プロセッサのサイクル時間よりもメモリのサイクル時間の方が遅い場合には、プロセッサの動作が停止する。 In the method using VLIW, there are many cases where there is no direct causal relationship between a plurality of combined instructions. In the method using the VLIW, there is a problem that execution of a certain instruction is hindered by a stall caused by another instruction not having a causal relationship with the certain instruction as a result of the combined instructions being executed almost simultaneously. is there. Stall means that the process is stopped for some reason. For example, when the cycle time of the processor is different from the cycle time of the memory, the operation of the device having an early cycle time may stop (stall). If the memory cycle time is slower than the processor cycle time, the processor operation stops.
具体的には、ロード(LOAD)命令と演算(OPERATION)命令とが略同時に実行され、ロード命令がストールすると、該ストールの影響を受けて演算命令もストールする。 Specifically, a load (LOAD) instruction and an operation (OPERATION) instruction are executed substantially simultaneously, and when the load instruction is stalled, the operation instruction is also stalled under the influence of the stall.
図1は、VLIWを利用した処理のタイムチャートの一例を示す。図1において、横軸は時間を表す。例えば、横軸は「サイクル」により表される。図1では、各サイクルに対応して、(1)−(10)が付される。図1には、オペレーション1−1(OP1−1)の実行に、ロードされたデータが利用される場合について示す。つまり、オペレーション1−2(OP1−2)、オペレーション1−3(OP1−3)の実行には、ロードされたデータは直接的には利用されない。 FIG. 1 shows an example of a time chart of processing using VLIW. In FIG. 1, the horizontal axis represents time. For example, the horizontal axis is represented by “cycle”. In FIG. 1, (1) to (10) are attached corresponding to each cycle. FIG. 1 shows a case where the loaded data is used to execute the operation 1-1 (OP1-1). That is, the loaded data is not directly used for the execution of the operation 1-2 (OP1-2) and the operation 1-3 (OP1-3).
サイクル(1)では、データ1(data1)をロードする処理が実行される(LD1)。 In cycle (1), a process of loading data 1 (data1) is executed (LD1).
サイクル(2)では、サイクル(1)でロードされたデータ1を利用して、オペレーション1−1が実行される。
In cycle (2), operation 1-1 is executed using
サイクル(3)では、オペレーション1−2が実行される。 In cycle (3), operation 1-2 is executed.
サイクル(4)では、データ2(data2)をロードする処理が実行されるとともに(LD2)、オペレーション1−3が実行される。 In cycle (4), a process of loading data 2 (data2) is executed (LD2) and operation 1-3 is executed.
サイクル(5)では、サイクル(4)でロードされたデータ2を利用して、オペレーション1−1が実行される。
In cycle (5), operation 1-1 is executed using
サイクル(6)では、オペレーション1−2が実行される。 In cycle (6), operation 1-2 is executed.
サイクル(7)では、データ3(data3)をロードする処理が実行されるとともに(LD3)、オペレーション1−3が実行される。 In cycle (7), the process of loading data 3 (data3) is executed (LD3), and operation 1-3 is executed.
サイクル(8)では、サイクル(7)でロードされたデータ3を利用して、オペレーション1−1が実行される。
In cycle (8), operation 1-1 is executed using
サイクル(9)では、オペレーション1−2が実行される。 In cycle (9), operation 1-2 is executed.
サイクル(10)では、データ4をロードする処理が実行されるとともに(LD4)、オペレーション1−3が実行される。
In cycle (10), the process of
図1に示される例では、ロード処理、演算処理ともに、一サイクルで実行される。図1では、ストールは発生しない。 In the example shown in FIG. 1, both the load process and the arithmetic process are executed in one cycle. In FIG. 1, no stall occurs.
図2は、VLIWを利用した処理のタイムチャートの一例(その2)を示す。図2において、横軸は時間を表す。例えば、横軸は「サイクル」により表される。図2では、各サイクルに対応して、(1)−(14)が付される。図2には、オペレーション1−1(OP1−1)の実行に、ロードされたデータが利用される場合について示す。つまり、オペレーション1−2(OP1−2)、オペレーション1−3(OP1−3)が実行される際には、ロードされたデータは直接的には利用されない。 FIG. 2 shows an example (part 2) of a time chart of processing using VLIW. In FIG. 2, the horizontal axis represents time. For example, the horizontal axis is represented by “cycle”. In FIG. 2, (1)-(14) are attached corresponding to each cycle. FIG. 2 shows a case where the loaded data is used to execute the operation 1-1 (OP1-1). That is, when operation 1-2 (OP1-2) and operation 1-3 (OP1-3) are executed, the loaded data is not directly used.
サイクル(1)、サイクル(2)では、2サイクルでデータのロードが実行される(LD1)。データのロードが実行される2サイクルの前半の1サイクルの間でストールが発生している。つまり、メモリからデータを読み出す際に、1サイクルのストールが発生する。 In cycle (1) and cycle (2), data loading is executed in two cycles (LD1). A stall occurs during one cycle of the first half of the two cycles in which data loading is executed. That is, one cycle stall occurs when reading data from the memory.
サイクル(3)では、サイクル(2)で読み出されたデータ1(data1)を利用して、オペレーション1−1が実行される。 In cycle (3), operation 1-1 is executed using data 1 (data1) read in cycle (2).
サイクル(4)では、オペレーション1−2が実行される。 In cycle (4), operation 1-2 is executed.
サイクル(5)、サイクル(6)では、2サイクルでデータのロードが実行される(LD2)。さらに、サイクル(5)、サイクル(6)では、2サイクルで、オペレーション1−3が実行される。しかし、データのロードが実行される2サイクルの前半の1サイクルの間でストールが発生しているため、オペレーション1−3が実行される2サイクルの前半の1サイクルの間でストールが発生している。本来、演算命令は、必要なデータがそろっている場合には、1サイクルで実行可能である。しかし、データのロードの際に発生するストールの影響により、オペレーション1−3でもストールが発生し2サイクルとなっている。 In cycle (5) and cycle (6), data loading is executed in two cycles (LD2). Further, in cycle (5) and cycle (6), operation 1-3 is executed in two cycles. However, a stall has occurred during the first half of the two cycles in which data loading is executed, so a stall has occurred during the first half of the two cycles in which operation 1-3 is executed. Yes. Basically, an operation instruction can be executed in one cycle when necessary data is available. However, due to the influence of a stall that occurs when data is loaded, a stall also occurs in operation 1-3, resulting in two cycles.
サイクル(7)では、サイクル(6)で読み出されたデータ2を利用して、オペレーション1−1が実行される。
In cycle (7), operation 1-1 is executed using
サイクル(8)では、オペレーション1−2が実行される。 In cycle (8), operation 1-2 is executed.
サイクル(9)、サイクル(10)では、2サイクルでデータのロードが実行される(LD3)。さらに、サイクル(9)、サイクル(10)では、2サイクルで、オペレーション1−3が実行される。しかし、データのロードが実行される2サイクルの前半の1サイクルの間でストールが発生しているため、オペレーション1−3が実行される2サイクルの前半の1サイクルの間でストールが発生している。 In cycle (9) and cycle (10), data loading is executed in two cycles (LD3). Further, in cycle (9) and cycle (10), operation 1-3 is executed in two cycles. However, a stall has occurred during the first half of the two cycles in which data loading is executed, so a stall has occurred during the first half of the two cycles in which operation 1-3 is executed. Yes.
サイクル(11)では、サイクル(10)で読み出されたデータ3を利用して、オペレーション1−1が実行される。
In cycle (11), operation 1-1 is executed using
サイクル(12)では、オペレーション1−2が実行される。 In the cycle (12), the operation 1-2 is executed.
サイクル(13)、サイクル(14)では、2サイクルでデータのロードが実行される(LD4)。さらに、サイクル(13)、サイクル(14)では、2サイクルで、オペレーション1−3が実行される。しかし、データのロードが実行される2サイクルの前半の1サイクルの間でストールが発生しているため、オペレーション1−3が実行される2サイクルの前半の1サイクルの間でストールが発生している。 In cycle (13) and cycle (14), data loading is executed in two cycles (LD4). Further, in cycle (13) and cycle (14), operation 1-3 is executed in two cycles. However, a stall has occurred during the first half of the two cycles in which data loading is executed, so a stall has occurred during the first half of the two cycles in which operation 1-3 is executed. Yes.
図2に示される例では、ロード命令によりロードされたデータが、続いて実行されるロード命令により上書きされる前に、該データを利用した演算命令が実行されるようにプログラムを記述する必要がある。具体的には、サイクル(2)でロードされたデータが、サイクル(6)でロードされるデータにより上書きされる前に、サイクル(2)でロードされたデータを利用した演算命令が実行される必要がある。つまり、転送命令、演算命令が実行されるタイミングを厳密に定義する必要がある。転送命令、演算命令は互いに影響を及ぼし合うためである。図2に示される例では、ストールが頻繁に発生し得るため、ストールの発生を回避するようにプログラムを記述するのは難しい。 In the example shown in FIG. 2, before the data loaded by the load instruction is overwritten by the subsequent load instruction, it is necessary to describe the program so that the operation instruction using the data is executed. is there. Specifically, before the data loaded in cycle (2) is overwritten by the data loaded in cycle (6), an arithmetic instruction using the data loaded in cycle (2) is executed. There is a need. That is, it is necessary to strictly define the timing at which transfer instructions and arithmetic instructions are executed. This is because the transfer instruction and the operation instruction influence each other. In the example shown in FIG. 2, stalls can occur frequently, so it is difficult to write a program so as to avoid the occurrence of stalls.
また、ストールが発生することにより演算効率が低下すると、同じ処理量を実現するために多くのハードウェアが必要になる。多くのハードウェアが用いられると、回路規模や消費電力が大きくなるという問題が発生する。 Further, if the calculation efficiency decreases due to the occurrence of a stall, a lot of hardware is required to realize the same processing amount. When a lot of hardware is used, there arises a problem that the circuit scale and power consumption increase.
開示の信号処理装置は、ロード命令と演算命令とを独立して制御することを目的とする。 It is an object of the disclosed signal processing apparatus to independently control a load instruction and an operation instruction.
開示の一実施例の信号処理装置は、
演算ユニットにより実行される演算処理のタイミングを制御する演算制御ユニットと、
前記演算ユニットにより前記演算処理の対象となるデータがロードできるように、該演算処理の対象となるデータを転送するためのタイミングを制御する転送制御ユニットと
を有する。A signal processing apparatus according to an embodiment of the disclosure includes:
An arithmetic control unit that controls the timing of arithmetic processing executed by the arithmetic unit;
A transfer control unit that controls timing for transferring the data to be subjected to the arithmetic processing so that the data to be subject to the arithmetic processing can be loaded by the arithmetic unit.
開示の信号処理装置によれば、ロード命令と演算命令とを独立して制御することができる。 According to the disclosed signal processing apparatus, the load instruction and the operation instruction can be controlled independently.
100 携帯端末
102 無線部
104 L1処理部
106 L2処理部
108 通信制御CPU
110 アプリケーションCPU
112 ユーザインターフェース回路
142 復調部
144 復号化部
146 符号化部
148 変調部
202 RFインターフェース
204 バスインターフェース
2061−2063 DSP
2081−2082 アクセラレータ
210 メモリ
212 バス
302 転送制御ユニット
304 データ転送ユニット
306 入力側一時記憶ユニット
308 出力側一時記憶ユニット
310 演算制御ユニット
312 演算ユニット
314 転送シーケンサ
316 演算シーケンサ
318 DMA転送制御ユニットDESCRIPTION OF
110 Application CPU
112
208 1 -208 2
以下、図面に基づいて、実施例を説明する。
なお、実施例を説明するための全図において、同一機能を有するものは同一符号を用い、繰り返しの説明は省略する。Embodiments will be described below with reference to the drawings.
In all the drawings for explaining the embodiments, the same reference numerals are used for those having the same function, and repeated explanation is omitted.
<携帯端末100>
図3は、携帯端末100の一実施例を示す。図1には、主に、ハードウェア構成が示される。<
FIG. 3 shows an embodiment of the
携帯端末100は、無線部102と、L1処理部104と、L2処理部106と、通信制御CPU108と、アプリケーションCPU110と、ユーザインターフェース回路112とを有する。
The
無線部102は、L1処理部104からの変調波を高周波信号に変換する。無線部102は、高周波信号を電力増幅器により増幅し、アンテナから送信する。また、無線部102は、アンテナからの無線信号を増幅し、L1処理部104に入力する。
The
L1処理部104は、無線部102と接続される。L1処理部104は、無線信号に関する処理、つまり物理層に関する処理を行う。L1処理部104は、無線部102からの信号を復調する復調部142を有する。L1処理部104は、復調部142により復調された信号を復号する復号化部144を有する。復号化部144により復号された信号は、L2制御部106に入力される。また、L1処理部104は、送信データの符号化処理を行う符号化部146を有する。L1処理部104は、符号化部146により符号化された送信データの変調処理を行う変調部148を有する。変調部148により変調された信号は、無線部102に入力される。
The
L2処理部106は、L1処理部104と接続される。L2処理部106は、基地局(図示無し)との間で、レイヤー2に関する処理を行う。レイヤー2は、レイヤー3に、論理チャネルの伝送サービスを提供する。論理チャネルは、制御チャネル(CCH: Control Channel)とトラヒックチャネル(TCH: Traffic Channel)から構成される。これらのチャネルの伝送は、RLC(Radio Link Control)副層およびMAC(Medium Access Control)副層の機能により実現される。RLC副層は、上位層に、透過型伝送、非送達確認型伝送、送達確認型伝送、伝送品質設定等のサービスを提供する。MAC副層は、上位層に、論理チャネルのトランスポートチャネルへのマッピング、優先制御、フロー制御、流量監視とRRC(Radio Resource Control)への報告等のサービスを提供する。
The
通信制御CPU108は、L2処理部106と接続される。通信制御CPU108は、制御信号の送受信などの通信制御を行う。
The
アプリケーションCPU110は、通信制御CPU108と接続される。アプリケーションCPU110は、携帯端末100に搭載されたアプリケーションを処理する。
ユーザインターフェース回路112は、アプリケーションCPU110と接続される。ユーザインターフェース回路112は、ユーザに対して、情報を出力する。ユーザインターフェース回路112からは、アプリケーションCPU110による処理結果が出力されてもよい。
The
携帯端末100の一実施例では、L1制御部104は、複数の無線通信方式に対応できるようにするために、ソフトウェアデファインドラジオで実現される。L1制御部104は、複数の機能を有する。図3には、複数の機能の例として、復調部142、復号化部144、符号化部146、変調部148が示される。他の機能が含まれてもよいし、図3に示される複数の機能のいずれかが含まれてもよい。各機能は、1又は複数のプロセッサにより実行される。具体的には、ソフトウェアデファインドラジオで実現するために、L1制御部104は、DSP(Digital Signal Processor)、アクセラレータ、メモリなどを含む。
In one embodiment of the
図4は、L1制御部104の復調部142の一実施例を示す。図4には、ハードウェア構成が主に示される。
FIG. 4 shows an embodiment of the
復調部142は、RFインターフェース202と、バスインターフェース204と、DSP2061−2063と、アクセラレータ2081−2082と、メモリ210とを有する。RFインターフェース202、バスインターフェース204、DSP2061−2063、アクセラレータ2081−2082、及びメモリ210は、バス212を介して互いに接続される。図4には、復調部142に、3個のDSPが含まれる例が示されるが、DSPは、1、2個でもよいし、4個以上でもよい。また、図4には、復調部142に、2個のアクセラレータが含まれる例が示されるが、アクセラレータは、1個でもよいし、3個以上でもよい。The
L1処理部104の回路規模は、各部に含まれるプロセッサの数により影響される。プロセッサの演算性能を向上させることにより、各部に含まれるプロセッサの数を減少させることができる。各部に含まれるプロセッサの数が減少することにより、L1処理部104の回路規模を小さくできる。
The circuit scale of the
変調部148についても、復調部142と略同一のハードウェア構成で実現されてもよい。復号化部144、符号化部146についても、復調部142と略同一のハードウェア構成で実現されてもよい。但し、RFインターフェース202の代わりに、バスインターフェース204を有するようにしてもよい。
The
RFインターフェース202は、復調部142と無線部102との間のインターフェースである。
The
バスインターフェース204は、復調部142と符号化部144との間のインターフェースである。
The
DSP2061−2063は、無線部102からの信号を処理する。つまり、DSP2061−2063は、無線部102からの信号を復調する処理を実行する。以下、DSP2061−2063は、信号処理装置と呼ばれることもある。無線部102からの信号を復調する処理を実行する際に、全てのDSPにより処理を分担して実行するようにしてもよいし、一部のDSPにより実行されてもよい。The DSPs 206 1 -206 3 process signals from the
アクセラレータ2081−2082は、DSP2061−2063の処理能力を向上させる。DSP2061−2063の処理能力によっては、必ずしもアクセラレータ2081−2082は必要ない。The accelerators 208 1 -208 2 improve the processing capabilities of the DSPs 206 1 -206 3 . Depending on the processing capabilities of the DSPs 206 1 -206 3 , the accelerators 208 1 -208 2 are not necessarily required.
メモリ210は、無線部102からの信号を一時的に格納する。
The
<信号処理装置>
図5は、信号処理装置の機能の一実施例を示す。図5には、信号処理装置の一実施例として、DSP2061−2063の機能の一実施例を示す。<Signal processing device>
FIG. 5 shows an embodiment of the function of the signal processing device. FIG. 5 shows an embodiment of the functions of the DSPs 206 1 to 206 3 as an embodiment of the signal processing apparatus.
DSP2061−2063は、略同一の機能ブロック図により表されるため、図3では、代表して、DSP2061について説明する。Since the DSPs 206 1 to 206 3 are represented by substantially the same functional block diagrams, the DSP 206 1 will be described as a representative in FIG.
DSP2061は、転送制御ユニット302と、データ転送ユニット304と、入力側一時記憶ユニット306と、出力側一時記憶ユニット308と、演算制御ユニット310と、演算ユニット312と、転送シーケンサ314と、演算シーケンサ316とを有する。The DSP 206 1 includes a
転送制御ユニット302は、入力側一時記憶ユニット306へ、必要に応じてメモリ210に格納されたデータを書き込む制御を行う。また、転送制御ユニット302は、復号化部144へ、出力側一時記憶ユニット308に書き込まれたデータを転送する制御を行う。出力側一時記憶ユニット306に書き込まれるデータには、演算ユニット312により処理されたデータが含まれる。転送制御ユニット302は、バス212、バスインターフェース204を介して、符号化部144へ、データを転送する制御を行うようにしてもよい。また、転送制御ユニット302は、メモリ210へ、データを転送する制御を行うようにしてもよい。
The
具体的には、転送制御ユニット302は、復調処理のためのプログラムを実行することにより起動する転送シーケンサ314により発行された命令に従って、上述したデータを転送する処理を行う。例えば、転送シーケンサ314は、プログラムメモリに格納された命令を順次取り出して、転送制御ユニット302へ、命令を発行する。転送シーケンサ314は、現在実行しているプログラムメモリ上のアドレスを記憶する。転送シーケンサ314は、現在実行しているプログラムメモリ上のアドレスを記憶するためにレジスタを利用してもよい。
Specifically, the
転送制御ユニット302は、転送シーケンサ314からの命令に従って、メモリ210へのアクセスを開始する。転送制御ユニット302は、メモリ210へアクセスを開始する際に、アクセスすることを表す情報を出力する。該アクセスすることを表す情報に対する応答として、メモリ210は、当該メモリ210がアクセス可能であるか否かを表す情報により応答する。アクセス可能であるか否かを表す情報には、メモリ210からデータを読み出し可能であるか否かを表す情報が含まれる。また、アクセス可能であるか否かを表す情報には、メモリ210へ、書き込み可能であるか否かを表す情報が含まれてもよい。転送制御ユニット302は、メモリ210からのアクセス可能であるか否かを表す信号に基づいて、アクセス可能である場合には、データ転送ユニット304を制御することにより、演算ユニット312へ、メモリ210から読み出したデータを転送する。この場合、必要に応じて、入力側一時記憶ユニット306に、メモリ210から読み出したデータが記憶された後に、演算ユニット312へ転送される。
The
例えば、VLIWを利用して処理が行われる場合には、転送制御ユニット302は、一つの機能を有する処理を一つの命令として扱う。転送制御ユニット302は、複数の命令を束ねて長い一命令として実行する。命令には、メモリ210からデータを読み出す「ロード」、メモリ210にデータを書き込む「ストア」、メモリ210から読み出されたデータの演算を行う「演算」、「分岐」等が含まれる。転送制御ユニット302は、これらの各ジャンルの命令を結合して一つの長い命令を作成する。具体的には、転送制御ユニット302は、これらの各ジャンルの命令のうち、「ロード」と、「ストア」とを結合して一つの命令を作成するようにしてもよい。
For example, when processing is performed using VLIW, the
命令を結合して一つの長い命令を作成することにより、一つの命令で複数の処理を実行できる。一つの命令で複数の処理を実行できるため、処理性能を向上させることができる。処理性能を向上させることができるため、処理のためのプロセッサを減少させることができる。但し、ジャンル分けされた処理の実行タイミング等が違っている場合もあり、通常1つの命令に含まれる命令が互いに関係している訳ではない。つまり、結合された命令中のロード命令によりロードされたデータは、同じ命令中の演算命令では使用されない場合もある。 By combining instructions to create one long instruction, multiple processes can be executed with one instruction. Since a plurality of processes can be executed with one instruction, the processing performance can be improved. Since the processing performance can be improved, the number of processors for processing can be reduced. However, there are cases where the execution timings of processes classified by genre are different, and the instructions included in one instruction are not usually related to each other. In other words, the data loaded by the load instruction in the combined instruction may not be used in the operation instruction in the same instruction.
データ転送ユニット304は、転送制御ユニット302と、バス212と接続される。データ転送ユニット304は、演算ユニット312へ、メモリ210から読み出したデータを入力する処理を行う。データ転送ユニット304は、転送制御ユニット302による制御に従って、入力側一時記憶ユニット306へ、メモリ210から読み出したデータを書き込む処理を行う。また、データ転送ユニット304は、転送制御ユニット302による制御に従って、バス212に、出力側一時記憶ユニット308に書き込まれたデータを転送する処理を行う。出力側一時記憶ユニット308に書き込まれたデータには、演算ユニット312により処理されたデータが含まれる。データ転送ユニット304は、バス212、バスインターフェース204を介して、符号化部144に、データを転送する。
The
入力側一時記憶ユニット306は、データ転送ユニット304と接続される。入力側一時記憶ユニット306は、データ転送ユニット304からのデータを一時的に格納する。
The input side
出力側一時記憶ユニット308は、データ転送ユニット304と接続される。出力側一時記憶ユニット308は、演算ユニット312からのデータを一時的に格納する。
The output side
演算制御ユニット310は、演算ユニット312により実行される演算処理の制御を行う。例えば、演算制御ユニット310は、復調処理のための行列演算に関する制御を行う。例えば、演算制御ユニット310は、演算ユニット312を制御することにより、データ転送ユニット304からのデータに対して、演算処理を行う制御を行う。また、例えば、演算制御ユニット310は、演算ユニット312を制御することにより、入力側一時記憶ユニット306に書き込まれたデータを取得させる制御を行う。また、例えば、演算制御ユニット310は、演算ユニット312を制御することにより、入力側一時記憶ユニット306からのデータに対して、演算処理を行う制御を行う。また、例えば、演算制御ユニット310は、演算ユニット312を制御することにより、出力側一時記憶ユニット308へデータを出力させる制御を行う。
The
例えば、演算制御ユニット310は、「演算」命令を作成するようにしてもよい。具体的には、演算制御ユニット310は、復調処理のためのプログラムを実行することにより起動する演算シーケンサ316により発行された命令に従って、上述した演算処理に関する制御を行う。例えば、演算シーケンサ316は、プログラムメモリに格納された命令を順次取り出して、演算制御ユニット310に、命令を発行する。演算シーケンサ316は、現在実行しているプログラムメモリ上のアドレスを記憶する。演算シーケンサ316は、現在実行しているプログラムメモリ上のアドレスを記憶するためにレジスタを利用してもよい。
For example, the
演算ユニット312は、演算制御ユニット310と、入力側一時記憶ユニット306と、出力側一時記憶ユニット308と接続される。演算ユニット312は、演算制御ユニット310による制御に従って、復調処理に関する演算処理を行う。具体的には、演算ユニット312は、データ転送ユニット304からのデータを、必要に応じて入力側一時記憶ユニット306を介して取得する。演算ユニット312は、該データを利用して復調に関する演算を行う。演算ユニット312は、データ転送ユニット304へ、演算結果を出力する。演算結果をデータ転送ユニット304へ出力する際に、必要に応じて、出力側一時記憶ユニット308を介して出力する。
The
転送シーケンサ314、演算シーケンサ316の上位には、プロセッサ(図示無し)や制御回路(図示無し)が存在する。転送シーケンサ314、演算シーケンサ316は、プロセッサや制御回路の指示で動作する。
A processor (not shown) and a control circuit (not shown) exist above the
プロセッサや制御回路の指示で、転送命令シーケンサ314と演算命令シーケンサ316は略同時にプログラムの実行を開始する。又は、プロセッサや制御回路の指示で、転送命令シーケンサ314が、演算命令シーケンサ316より、若干早く処理を開始するようにしてもよい。
In response to an instruction from the processor or control circuit, the
データ転送ユニット304によりメモリ210からロードされたデータは、必要に応じて、入力側一時記憶ユニット306に、一時的にバッファされる。演算ユニット312は、入力側一時記憶ユニット306にバッファされたデータを読み出して、演算処理を実行する。演算ユニット312は、FIFO(First−In First−Out)方式により、入力側一時記憶ユニット306にバッファされたデータを読み出すようにしてもよい。演算ユニット312は、演算処理したデータを、必要に応じて、出力側一時記憶ユニット308に出力する。
The data loaded from the
転送シーケンサ314は、出力側一時記憶ユニット308にデータが格納されている場合に、メモリ210へ、該データをストアする命令を発行する。転送制御ユニット302は、該データをストアする命令に従ってデータ転送ユニット304を制御する。
When data is stored in the output-side
転送シーケンサ314と演算シーケンサ316は、FIFOのフルフラグ、エンプティフラグを使用して命令の同期を取るようにしてもよい。このような構成にすることで、演算ユニット312は、常に処理するデータにアクセスできる。演算ユニット312が常に処理するデータにアクセスできることにより、ストールの発生を低減できる。また、データ転送ユニット304によるロードの実行の際にストールが発生した場合でも、入力側一時記憶ユニット306により吸収される。このため、演算ユニット312におけるストールを低減できる。
The
<タイムチャート(その1)>
図6は、信号処理装置により実行される処理を示す。図6において、横軸は時間を表す。例えば、横軸は「サイクル」により表される。図6では、各サイクルに対応して、(1)−(11)が付される。演算ユニット312は、オペレーション1−1(OP1−1)の実行に、ロードされたデータを利用する。つまり、オペレーション1−2(OP1−2)、オペレーション1−3(OP1−3)の実行には、ロードされたデータを直接的には利用しない。<Time chart (part 1)>
FIG. 6 shows processing executed by the signal processing device. In FIG. 6, the horizontal axis represents time. For example, the horizontal axis is represented by “cycle”. In FIG. 6, (1)-(11) are attached corresponding to each cycle. The
転送制御ユニット302による制御に従って、データ転送ユニット304は、時間的に連続して、データのロードを実行する。例えば、転送シーケンサ314から、ロード命令が順次発行される。データ転送ユニット304は、ロード命令に従って、最大能力で転送処理を行う。演算ユニット312は、一時記憶されたデータを読み出せる状態になった場合に、処理を開始する。
According to the control by the
サイクル(1)、サイクル(2)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(1)、サイクル(2)では、転送制御ユニット302による制御に従って、データ転送ユニット304により2サイクルでデータのロードが実行される(LD1)。データのロードが実行される2サイクルの前半の1サイクルの間でストールが発生している。該ストールは、他の転送による影響により発生することもあるし、転送速度が遅いことにより発生することもある。データのロードが実行される2サイクルは一例であり、1サイクルでもよいし、3サイクル以上であってもよい。
In cycle (1) and cycle (2), an instruction for executing data loading is issued from the
サイクル(3)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(3)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される(LD2)。サイクル(3)では、ストールが発生している。サイクル(3)では、転送制御ユニット302による制御に従って、データ転送ユニット304は、入力側一時記憶ユニット306へ、データ転送ユニット304によりサイクル(2)でロードされたデータ1(data1)を書き込む。さらに、サイクル(3)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−1を実行するための命令が入力される。演算ユニット312は、オペレーション1−1を実行するため、入力側一時記憶ユニット306から、データ1を取得する。演算ユニット312は、入力側一時記憶ユニット306から、データ1を廃棄する。
In cycle (3), an instruction for executing data loading is issued from the
サイクル(4)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが継続される(LD2)。サイクル(4)では、データのロードが実行される。サイクル(4)では、演算シーケンサ316から、オペレーション1−2を実行するための命令が発行される。サイクル(4)では、演算ユニット312に、演算制御ユニット310からオペレーション1−2を実行するための命令が出力される。オペレーション1−2は、オペレーション1−1の結果を利用する処理であってもよい。
In cycle (4), data loading is continued by the
サイクル(5)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(5)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される(LD3)。サイクル(5)では、ストールが発生している。サイクル(5)では、転送制御ユニット302による制御に従って、データ転送ユニット304は、入力側一時記憶ユニット306へ、データ転送ユニット304によりサイクル(4)でロードされたデータ2を書き込む。さらに、サイクル(5)では、演算シーケンサ316からオペレーション1−3を実行するための命令が発行される。サイクル(5)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−3を実行するための命令が出力される。オペレーション1−3は、オペレーション1−2の結果を利用する処理であってもよい。演算ユニット312は、入力側一時記憶ユニット306から、データ2を取得しないため、入力側一時記憶ユニット306にはデータ2が書き込まれたままである。
In cycle (5), the
サイクル(6)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが継続される(LD3)。サイクル(6)では、データのロードが実行される。さらに、サイクル(6)では、演算シーケンサ316からオペレーション1−1を実行するための命令が発行される。サイクル(6)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−1を実行するための命令が出力される。演算ユニット312は、オペレーション1−1を実行するため、入力側一時記憶ユニット306から、データ2を取得する。演算ユニット312は、入力側一時記憶ユニット306から、データ2を廃棄する。
In cycle (6), data loading is continued by the
サイクル(7)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(7)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される(LD4)。サイクル(7)では、ストールが発生している。サイクル(7)では、転送制御ユニット302による制御に従って、データ転送ユニット304は、入力側一時記憶ユニット306へ、データ転送ユニット304によりサイクル(6)でロードされたデータ3(data3)を書き込む。さらに、サイクル(6)では、演算シーケンサ316からオペレーション1−2を実行するための命令が発行される。サイクル(7)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−2を実行するための命令が出力される。オペレーション1−2は、オペレーション1−1の結果を利用する処理であってもよい。演算ユニット312は、入力側一時記憶ユニット306から、データ3を取得しないため、入力側一時記憶ユニット306にはデータ3が書き込まれたままである。
In cycle (7), the
サイクル(8)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが継続される(LD4)。サイクル(8)では、データのロードが実行される。さらに、サイクル(8)では、演算シーケンサ316からオペレーション1−3を実行するための命令が発行される。サイクル(8)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−3を実行するための命令が出力される。オペレーション1−3は、オペレーション1−2の結果を利用する処理であってもよい。演算ユニット312は、入力側一時記憶ユニット306から、データ3を取得しないため、入力側一時記憶ユニット306にはデータ3が書き込まれたままである。
In cycle (8), the
サイクル(9)では、演算シーケンサ316からオペレーション1−1を実行するための命令が発行される。サイクル(9)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−1を実行するための命令が出力される。演算ユニット310は、オペレーション1−1を実行するため、入力側一時記憶ユニット306から、データ3を取得する。演算ユニット312は、入力側一時記憶ユニット306から、データ3を廃棄する。
In cycle (9), an instruction for executing operation 1-1 is issued from
サイクル(10)では、演算シーケンサ316からオペレーション1−2を実行するための命令が発行される。サイクル(10)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−2を実行するための命令が出力される。
In cycle (10), an instruction for executing operation 1-2 is issued from
サイクル(11)では、演算シーケンサ316からオペレーション1−3を実行するための命令が発行される。サイクル(11)では、演算制御ユニット310から演算ユニット312へ、オペレーション1−3を実行するための命令が出力される。
In cycle (11), an instruction for executing operation 1-3 is issued from
データ転送ユニット304によりデータのロードが複数回実行された場合には、入力側一時記憶ユニット306へ、データが順次記憶されるようにしてもよい。演算ユニット312は、オペレーションを実行するため、入力側一時記憶ユニット306から、FIFO方式に従ってデータを取得するようにしてもよい。この場合、複数種類のデータが存在して、データの識別が必要となる場合があるが、演算される順序にデータが並ぶように転送順序が制御される。
When data loading is executed a plurality of times by the
例えば、VLIWを利用して作成される命令に基づいて、転送制御を行う場合、VLIWを利用して作成される命令の転送命令に該当する部分を抜き出して、データ転送ユニット304は入力側一次記憶ユニット306で使用される順にデータを並べる。
For example, when transfer control is performed based on an instruction created using VLIW, a portion corresponding to the transfer instruction of an instruction created using VLIW is extracted, and
また、入力側一時記憶ユニット306から、FIFO方式に従ってデータを取得する代わりに、データが供給されるパスを識別できるようにしてもよい。データが供給されるパスを識別できることにより、データ転送ユニット304によりデータのロードが複数回実行された場合であっても、データを識別することができる。データを識別することができることにより、演算命令の対象となるデータを取得することができる。
Further, instead of acquiring data from the input-side
例えば、演算命令に従って演算する複数種類のデータが存在することにより、データの識別が必要な場合には、演算するデータと同数の入力側一次記憶ユニットを用意するようにしてもよい。演算ユニット312は、複数の入力側一時記憶ユニットから、使用するデータが書き込まれたものを選択する。
For example, if there is a plurality of types of data to be calculated in accordance with the calculation instruction and it is necessary to identify the data, the same number of input side primary storage units as the data to be calculated may be prepared. The
図6に示されるタイムチャートによれば、データのロードと、演算処理とを独立に制御できるため、ロード命令を時間的に連続したサイクルで実行できる。ロード命令を時間的に連続したサイクルで実行できるため、メモリからの読み出しの際にストールが発生した場合であっても、演算命令を実行する際には、演算命令を実行するデータを予め用意することができる。演算命令を実行するデータを予め用意できるため、演算命令のストールを低減できる。 According to the time chart shown in FIG. 6, since the data loading and the arithmetic processing can be controlled independently, the load instruction can be executed in a temporally continuous cycle. Since the load instruction can be executed in a continuous cycle in time, even when a stall occurs when reading from the memory, data for executing the arithmetic instruction is prepared in advance when the arithmetic instruction is executed. be able to. Since data for executing the operation instruction can be prepared in advance, the stall of the operation instruction can be reduced.
仮に、データ転送命令と演算命令が略同時に実行されるように命令が発行される場合、予め転送するデータの順序が明確になっている場合でも、転送命令が発行されるまで転送は行われない。転送命令が発行されて、データの転送命令が実行された際に、メモリの速度に起因するストールが発生したり、他のデバイスのバス使用によるストールが発生したりする場合がある。このため、転送命令と略同時に実行されるようにプログラムされていた演算命令の実行まで遅延してしまう場合がある。図6に示されるタイムチャートによれば、ロードされたデータを一時記憶することにより、データ転送ユニット304と、演算ユニット312との間で、データが必要となる時間差を吸収できる。このため、メモリの速度に起因するストールや、他のデバイスのバス使用によるストールを低減できる。このため、演算命令の実行の遅延を低減できる。
If the instruction is issued so that the data transfer instruction and the arithmetic instruction are executed substantially simultaneously, even if the order of data to be transferred is clear, the transfer is not performed until the transfer instruction is issued. . When a transfer command is issued and a data transfer command is executed, a stall due to the speed of the memory may occur or a stall due to the use of a bus of another device may occur. For this reason, there may be a delay until the execution of the arithmetic instruction programmed to be executed almost simultaneously with the transfer instruction. According to the time chart shown in FIG. 6, by temporarily storing the loaded data, it is possible to absorb a time difference that requires data between the
<タイムチャート(その2)>
図7は、信号処理装置により実行される処理を示す。図7において、横軸は時間を表す。例えば、横軸は「サイクル」により表される。図7では、各サイクルに対応して、(1)−(13)が付される。<Time chart (2)>
FIG. 7 shows processing executed by the signal processing device. In FIG. 7, the horizontal axis represents time. For example, the horizontal axis is represented by “cycle”. In FIG. 7, (1) to (13) are attached corresponding to each cycle.
サイクル(1)、サイクル(2)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(1)、サイクル(2)では、転送制御ユニット302による制御に従って、データ転送ユニット304により各サイクルでデータのロードが実行される。
In cycle (1) and cycle (2), an instruction for executing data loading is issued from the
さらに、サイクル(2)では、演算ユニット312に、演算制御ユニット310からメモリ210にデータをストアするための命令が出力される。しかし、メモリ210はストールしているため、演算ユニット312は、出力側一時記憶ユニット308に、データを書き込む。
Further, in cycle (2), an instruction for storing data from the
サイクル(3)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(3)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(1)によりロードされたデータを利用した演算が実行される。また転送制御ユニット302による制御に従って、データ転送ユニット304は、メモリ210に、出力側一時記憶ユニット308に書き込まれたデータを転送する。データ転送ユニット304は、出力側一時記憶ユニット308に書き込まれたデータをFIFO方式により出力する。出力側一時記憶ユニット308を有することにより、データのロードと、演算処理とを独立に制御できるため、輻輳を回避できる。また、転送されるデータに複数の種類がある場合には、データの識別が必要になり、転送命令が発行される順にデータが供給される必要がある。FIFO方式により出力することにより、転送命令が発行される順にデータを供給することができる。
In cycle (3), an instruction for executing the operation is issued from the
サイクル(4)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(4)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される。サイクル(4)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(4)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(2)によりロードされたデータを利用した演算が実行される。
In cycle (4), the
サイクル(5)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(5)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される。サイクル(5)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(5)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(4)によりロードされたデータを利用した演算が実行される。
In cycle (5), the
サイクル(6)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(6)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される。さらに、サイクル(6)では、演算ユニット312へ、演算制御ユニット310からメモリ210にデータをストアするための命令が出力される。しかし、メモリ210はストールしているため、演算ユニット312は、出力側一時記憶ユニット308に、データを書き込む。
In cycle (6), the
サイクル(7)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(7)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(5)によりロードされたデータを利用した演算が実行される。また転送制御ユニット302による制御に従って、データ転送ユニット304は、メモリ210に、出力側一時記憶ユニット308に書き込まれたデータを転送する。データ転送ユニット304は、出力側一時記憶ユニット308に書き込まれたデータをFIFO方式により出力する。
In cycle (7), an instruction for executing the operation is issued from the
サイクル(8)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(8)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される。サイクル(8)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(8)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(6)によりロードされたデータを利用した演算が実行される。
In cycle (8), the
サイクル(9)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(9)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される。サイクル(9)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(9)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(8)によりロードされたデータを利用した演算が実行される。
In cycle (9), the
サイクル(10)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(10)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される。さらに、サイクル(10)では、演算ユニット312へ、演算制御ユニット310からメモリ210にデータをストアするための命令が出力される。しかし、メモリ210はストールしているため、演算ユニット312は、出力側一時記憶ユニット308に、データを書き込む。
In cycle (10), the
サイクル(11)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(11)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(9)によりロードされたデータを利用した演算が実行される。また転送制御ユニット302による制御に従って、データ転送ユニット304は、メモリ210に、出力側一時記憶ユニット308に書き込まれたデータを転送する。データ転送ユニット304は、出力側一時記憶ユニット308に書き込まれたデータをFIFO方式により出力する。
In the cycle (11), an instruction for executing an operation is issued from the
サイクル(12)では、転送シーケンサ314から、データのロードを実行するための命令が発行される。サイクル(12)では、転送制御ユニット302による制御に従って、データ転送ユニット304によりデータのロードが実行される。サイクル(12)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(12)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(10)によりロードされたデータを利用した演算が実行される。
In cycle (12), the
サイクル(13)では、演算シーケンサ316からオペレーションを実行するための命令が発行される。サイクル(13)では、演算制御ユニット310による制御に従って、演算ユニット312によりサイクル(12)によりロードされたデータを利用した演算が実行される。
In the cycle (13), an instruction for executing an operation is issued from the
サイクル(3)において、データ転送ユニット304により、出力側一時記憶ユニット308に書き込まれたデータ(演算結果)がFIFO方式により出力される代わりに、データが供給されるパスを識別できるようにしてもよい。データが供給されるパスが識別できることにより、複数の種類のデータを転送する場合であっても、データを識別することができる。データを識別することができることにより、転送命令が発行される順にデータを供給することができる。
In the cycle (3), the
データが供給されるパスを識別できることにより、演算ユニット312により演算処理が複数回実行された場合であっても、演算結果を識別することができる。演算結果を識別することができることにより、演算処理に従って演算結果を取得することができる。
Since the path to which the data is supplied can be identified, the calculation result can be identified even when the calculation process is executed a plurality of times by the
例えば、演算命令に従って演算処理された複数の演算結果が存在することにより、演算結果の識別が必要な場合には、演算結果と同数の出力側一次記憶ユニットを用意するようにしてもよい。 For example, when there are a plurality of calculation results that have been processed in accordance with a calculation command and it is necessary to identify the calculation results, the same number of output side primary storage units as the calculation results may be prepared.
図8は、従来構成による処理を示す。図8において、横軸は時間を表す。例えば、横軸は「サイクル」により表される。図8では、各サイクルに対応して、(1)−(13)が付される。 FIG. 8 shows processing according to the conventional configuration. In FIG. 8, the horizontal axis represents time. For example, the horizontal axis is represented by “cycle”. In FIG. 8, (1)-(13) are attached corresponding to each cycle.
サイクル(1)では、データのロードが実行される。 In cycle (1), data loading is executed.
サイクル(2)では、データのロードが試みられる。しかし、メモリがストアするため、データのロードは実行されない。データのロードが実行されないのは、メモリへのアクセスポートが1つであるため、ロードとストアとを同時に行うことができないことに起因する。図7に示されるタイムチャートでは、出力側一時記憶部108により、該ストールが回避される。
In cycle (2), an attempt is made to load data. However, no data is loaded because the memory stores. The reason why the data is not loaded is that the load and store cannot be performed simultaneously because there is one access port to the memory. In the time chart shown in FIG. 7, the output side
サイクル(3)では、サイクル(2)によりロードされるはずであったデータのロードが実行される。メモリには、サイクル(2)によりストアされたデータが保持される。 In cycle (3), the data that was supposed to be loaded in cycle (2) is loaded. The memory stores the data stored in cycle (2).
サイクル(4)では、サイクル(1)によりロードされたデータを利用した演算が実行される。 In cycle (4), an operation using the data loaded in cycle (1) is executed.
サイクル(5)では、データのロードが実行される。サイクル(5)では、サイクル(3)によりロードされたデータを利用した演算が実行される。 In cycle (5), data loading is executed. In cycle (5), an operation using the data loaded in cycle (3) is executed.
サイクル(6)では、データのロードが実行される。サイクル(6)では、サイクル(5)によりロードされたデータを利用した演算が実行される。 In cycle (6), data loading is executed. In cycle (6), an operation using the data loaded in cycle (5) is executed.
サイクル(7)では、データのロードが試みられる。しかし、メモリがストアするため、データのロードは実行されない。データのロードが実行されないのは、メモリへのアクセスポートが1つであるため、ロードとストアとを同時に行うことができないことに起因する。 In cycle (7), an attempt is made to load data. However, no data is loaded because the memory stores. The reason why the data is not loaded is that the load and store cannot be performed simultaneously because there is one access port to the memory.
サイクル(8)では、サイクル(7)によりロードされるはずであったデータのロードが実行される。メモリには、サイクル(7)によりストアされたデータが保持される。 In cycle (8), the data that was supposed to be loaded in cycle (7) is loaded. The memory stores the data stored in cycle (7).
サイクル(9)では、サイクル(6)によりロードされたデータを利用した演算が実行される。 In cycle (9), an operation using the data loaded in cycle (6) is executed.
サイクル(10)では、データのロードが実行される。サイクル(10)では、サイクル(8)によりロードされたデータを利用した演算が実行される。 In cycle (10), data loading is executed. In the cycle (10), an operation using the data loaded in the cycle (8) is executed.
サイクル(11)では、データのロードが実行される。サイクル(11)では、サイクル(10)によりロードされたデータを利用した演算が実行される。 In cycle (11), data loading is executed. In the cycle (11), an operation using the data loaded in the cycle (10) is executed.
サイクル(12)では、データのロードが試みられる。しかし、メモリはストアするため、データのロードは実行されない。データのロードが実行されないのは、メモリへのアクセスポートが1つであるため、ロードとストアとを同時に行うことができないことに起因する。 In cycle (12), an attempt is made to load data. However, since the memory is stored, no data is loaded. The reason why the data is not loaded is that the load and store cannot be performed simultaneously because there is one access port to the memory.
サイクル(13)では、サイクル(12)によりロードされるはずであったデータのロードが実行される。メモリには、サイクル(12)によりストアされたデータが保持される。 In cycle (13), loading of data that should have been loaded in cycle (12) is performed. The memory stores the data stored in cycle (12).
図8に示されるタイムチャートでは、サイクル(2)、(7)、(12)でメモリの輻輳が生じているため、演算効率が低下しているのが分かる。 In the time chart shown in FIG. 8, it can be seen that the calculation efficiency is reduced because memory congestion occurs in cycles (2), (7), and (12).
<信号処理装置の動作>
図9、図10は、信号処理装置の動作の一実施例を示すフローチャートである。<Operation of signal processing device>
9 and 10 are flowcharts showing an embodiment of the operation of the signal processing apparatus.
図9は、転送制御ユニット302による制御に従ってデータ転送ユニット304により実行される処理が主に示される。
FIG. 9 mainly shows processing executed by the
図10は、演算制御ユニット310による制御に従って演算ユニット312により実行される処理が主に示される。
FIG. 10 mainly shows processing executed by the
転送制御ユニット302による制御に従ってデータ転送ユニット304により実行される処理について、図9を参照して説明する。
Processing executed by the
ステップS902で、データ転送ユニット304が起動される。例えば、携帯端末100の電源がオンにされることによりデータ転送ユニット304の電源がオンにされてもよい。
In step S902, the
ステップS904で、転送制御ユニット302は、転送するデータが存在するか否かを判定する。
In step S904, the
転送するデータが存在する場合に、ステップS906で、転送制御ユニット302は、入力側一時記憶ユニット306に空き容量があるか否かを判定する。例えば、転送制御ユニット302は、入力側一時記憶ユニット306に、ステップ904により存在すると判定されたデータに相当する空き容量があるか否かを判定する。
If there is data to be transferred, in step S906, the
ステップS908で、転送制御ユニット302は、データ転送ユニット304を制御することにより、入力側一時記憶ユニット306へ、メモリ210からのデータを転送する。
In step S908, the
ステップS904により転送するデータが存在しない場合には、ステップS906、ステップS908の処理は実行されない。ステップS906により入力側一時記憶ユニット306に空き容量がない場合には、ステップS908の処理は実行されない。
If there is no data to be transferred in step S904, the processes in steps S906 and S908 are not executed. If there is no free space in the input side
ステップS910で、転送制御ユニット302は、出力側一時記憶ユニット308に、転送するデータが存在するか否かを判定する。
In step S910, the
ステップS912で、転送するデータが存在する場合、転送制御ユニット302は、データ転送ユニット304を制御することにより、出力側一時記憶ユニット308からメモリ210へ、データを転送する。
If there is data to be transferred in step S912, the
ステップS910により転送するデータが存在しない場合には、ステップS912の処理は実行されない。 If there is no data to be transferred in step S910, the process in step S912 is not executed.
ステップS914で、転送制御ユニット302は、データ転送処理が終了したか否かを判定する。データ転送処理が終了した場合、転送制御ユニット302は、処理を終了する。データ転送処理が終了しない場合、転送制御ユニット302は、ステップS904から処理を実行する。
In step S914, the
図9に示されるフローチャートにおいて、ステップS904−S908の処理と、ステップS910−S912の処理とを入れ替えてもよい。 In the flowchart shown in FIG. 9, the processes in steps S904 to S908 and the processes in steps S910 to S912 may be interchanged.
演算制御ユニット310による制御に従って演算ユニット312により実行される処理について、図10を参照して説明する。
Processing executed by the
ステップS1002で、演算ユニット312が起動される。例えば、携帯端末100の電源がオンにされることにより演算ユニット312の電源がオンにされてもよい。
In step S1002, the
ステップS1004で、演算制御ユニット310は、入力側一時記憶ユニット306に未処理のデータが存在するか否かを判定する。
In step S1004, the
未処理のデータが存在する場合に、ステップS1006で、演算制御ユニット310は、演算ユニット312を制御することにより、入力側一時記憶ユニット306からデータを読み出して、演算処理を実行する。
If unprocessed data exists, in step S1006, the
ステップS1008で、演算制御ユニット310は、出力側一時記憶ユニット308に空き容量があるか否かを判定する。例えば、演算制御ユニット310は、出力側一時記憶ユニット308に、ステップ1006により演算処理されたデータに相当する空き容量があるか否かを判定する。
In step S1008, the
ステップS1010で、演算制御ユニット310は、演算ユニット312を制御することにより、出力側一時記憶ユニット308へ、データを転送する。
In step S <b> 1010, the
ステップS1004により未処理のデータが存在しない場合には、再度ステップS1004による判定が行われる。ステップS1008により出力側一時記憶ユニット308に空き容量がない場合には、再度ステップS1008による判定が行われる。
If there is no unprocessed data in step S1004, the determination in step S1004 is performed again. If the output side
ステップS1012で、演算制御ユニット310は、演算処理が終了したか否かを判定する。演算処理が終了した場合、演算制御ユニット310は、処理を終了する。演算処理が終了しない場合、演算制御ユニット310は、ステップS1004から処理を実行する。
In step S1012, the
<本実施例の効果>
図11は、信号処理装置の一実施例の効果を示す。<Effect of this embodiment>
FIG. 11 shows the effect of an embodiment of the signal processing apparatus.
左側の図(1)は従来の信号処理装置による処理を表し、右側の図(2)は本実施例の信号処理装置による処理を表す。 The diagram (1) on the left represents the processing by the conventional signal processing device, and the diagram (2) on the right represents the processing by the signal processing device of the present embodiment.
「a」はプロセッサの処理能力全体を表す。「b」はストールの発生により失われる能力を表す。「c」、「d」は処理実行に使用できる実効的な能力を表す。 “A” represents the entire processing capacity of the processor. “B” represents the ability lost due to the occurrence of a stall. “C” and “d” represent effective abilities that can be used to execute the process.
所要の演算量を処理できるプロセッサの個数は、該所要の演算量を「c」の部分の処理能力で割ったものとなる。 The number of processors capable of processing the required calculation amount is obtained by dividing the required calculation amount by the processing capacity of the portion “c”.
従来の信号処理装置は、プロセッサの処理能力全体のうち、ストールの発生により失われる能力の割合が大きい。その結果、従来の信号処理装置は、プロセッサの必要数が増えることになる。 In the conventional signal processing apparatus, the ratio of the capacity lost due to the occurrence of the stall is large in the entire processing capacity of the processor. As a result, the required number of processors increases in the conventional signal processing apparatus.
本実施例の信号処理装置は、従来の信号処理装置と比べて、プロセッサの処理能力全体のうち、ストールの発生により失われる能力の割合が小さい。その結果、本実施例の信号処理装置は、プロセッサの必要数を減少させることができる。プロセッサの必要数を減少させることができるため、目的の処理を実現するための回路規模を小さくすることができる。 In the signal processing apparatus according to the present embodiment, the ratio of the capacity lost due to the occurrence of the stall is small in the entire processing capacity of the processor as compared with the conventional signal processing apparatus. As a result, the signal processing apparatus of this embodiment can reduce the required number of processors. Since the required number of processors can be reduced, the circuit scale for realizing the target processing can be reduced.
<変形例>
図12は、信号処理装置の機能の一変形例を示す。<Modification>
FIG. 12 shows a modification of the function of the signal processing device.
信号処理装置の一変形例では、図5を参照して説明した信号処理装置において、転送シーケンサ314の代わりに、DMA(Direct Memory Access)転送制御ユニット318を有する点で異なる。DMA転送制御ユニット318の機能は、転送制御ユニット302の機能と略同一である。DMA転送制御ユニット318は、ロード用のDMA転送制御ユニットと、ストア用のDMA転送制御ユニットとを含むように構成してもよい。DMA転送制御ユニット318は、プログラムメモリに格納された命令に依存せずに、データの転送処理を行う。例えば、DMA転送制御ユニット318は、転送内容を設定する。該転送内容には、データの存在するアドレスを表す情報、転送するデータのサイズを表す情報が含まれる。DMA転送制御ユニット318は、演算シーケンサ316による設定に従って起動する点で異なる。この場合、DMA転送制御ユニット318は、演算シーケンサ316からの演算命令を実行することにより起動するようにしてもよい。また、DMA転送制御ユニット318は、上位の機能ブロックレベルの制御プロセッサや制御回路からの制御信号により起動するようにしてもよい。
A modification of the signal processing apparatus is different in that the signal processing apparatus described with reference to FIG. 5 includes a DMA (Direct Memory Access)
DMA転送制御ユニット318を有することにより、演算シーケンサ316による設定に従って起動した後は、直接メモリにアクセスするように転送制御ユニット302に命令を発行するため、処理速度を向上させることができる。
By having the DMA
本実施例、変形例の信号処理装置は、特に、OFDMに代表される比較的簡単な演算を大量に実行する通信方式に適用されることで効果が得られる。OFDMは、周波数分割多重の一方式であり、キャリアを互いに直交するように配置することによりキャリア周波数の密度を高め周波数効率を向上させた方式である。OFDMは、LTEやWiMAX、地上ディジタル放送などに使用されている。該通信方式では、転送されるデータの順序が予め明確であるため、命令の並列実行を行いながら互いへの影響を軽減させることができるためである。つまり、演算に使用されるデータ転送の制御と、実際の演算を行う制御とを分けることにより、データの転送で生じるストールが演算処理に与える影響を低減できるためである。このため、演算ユニットを効率よく動作させることができる。 The signal processing apparatus according to the present embodiment and the modification can achieve an effect by being applied to a communication system that executes a large amount of relatively simple operations represented by OFDM. OFDM is a method of frequency division multiplexing, in which carriers are arranged so as to be orthogonal to each other, thereby increasing the carrier frequency density and improving the frequency efficiency. OFDM is used for LTE, WiMAX, terrestrial digital broadcasting, and the like. This is because the order of data to be transferred is clear in advance in the communication method, and the influence on each other can be reduced while executing instructions in parallel. That is, by separating the control of the data transfer used for the calculation and the control for performing the actual calculation, it is possible to reduce the influence of the stall caused by the data transfer on the calculation process. For this reason, the arithmetic unit can be operated efficiently.
Claims (12)
該演算制御ユニットにより制御される演算処理のタイミングに従って前記演算ユニットにより前記演算処理の対象となるデータがロードできるように、該演算処理の対象となるデータを転送するためのタイミングを制御する転送制御ユニットと
を有する、信号処理装置。An arithmetic control unit that controls the timing of arithmetic processing executed by the arithmetic unit;
Transfer control for controlling the timing for transferring the data subject to the arithmetic processing so that the data subject to the arithmetic processing can be loaded by the arithmetic unit according to the timing of the arithmetic processing controlled by the arithmetic control unit A signal processing device having a unit.
を有し、
前記転送制御ユニットは、前記演算処理の対象となる複数のデータを転送するためのタイミングを制御する際に、前記1又は複数の記憶部に、前記演算処理の対象となる複数のデータを転送するためのタイミングを制御する、請求項1に記載の信号処理装置。One or more storage units for storing data transferred according to the timing controlled by the transfer control unit;
The transfer control unit transfers a plurality of data to be subjected to the arithmetic processing to the one or a plurality of storage units when controlling timing for transferring the plurality of data to be subjected to the arithmetic processing. The signal processing apparatus according to claim 1, wherein timing for controlling the signal is controlled.
該演算処理のタイミングに従って前記演算ユニットにより前記演算処理の対象となるデータがロードできるように、該演算処理の対象となるデータを転送するためのタイミングを制御する、信号処理方法。Control the timing of arithmetic processing executed by the arithmetic unit,
A signal processing method for controlling a timing for transferring data to be subjected to the arithmetic processing so that the arithmetic unit can load the data to be the arithmetic processing according to the timing of the arithmetic processing.
を有し、
前記演算制御ユニットは、前記演算処理された複数のデータを転送するためのタイミングを制御する際に、前記1又は複数の記憶部に、前記演算処理された複数のデータを転送するためのタイミングを制御する、請求項9に記載の信号処理装置。Having one or a plurality of storage units for storing data transferred according to the timing controlled by the arithmetic control unit;
When the arithmetic control unit controls the timing for transferring the plurality of arithmetically processed data, the arithmetic control unit sets the timing for transferring the arithmetically processed plurality of data to the one or more storage units. The signal processing device according to claim 9, wherein the signal processing device is controlled.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013546871A JPWO2013080289A1 (en) | 2011-11-28 | 2011-11-28 | Signal processing apparatus and signal processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013546871A JPWO2013080289A1 (en) | 2011-11-28 | 2011-11-28 | Signal processing apparatus and signal processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2013080289A1 true JPWO2013080289A1 (en) | 2015-04-27 |
Family
ID=53013413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013546871A Pending JPWO2013080289A1 (en) | 2011-11-28 | 2011-11-28 | Signal processing apparatus and signal processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPWO2013080289A1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63240664A (en) * | 1987-03-27 | 1988-10-06 | Masahiro Sowa | Fast processing computer |
JP2000330788A (en) * | 1999-05-03 | 2000-11-30 | Stmicroelectronics Sa | Computer system |
JP2002268876A (en) * | 2001-03-14 | 2002-09-20 | Denso Corp | Pipeline processing method and information processor |
JP2002358288A (en) * | 2001-05-31 | 2002-12-13 | Hitachi Ltd | Semiconductor integrated circuit and computer readable recording medium |
JP2007317152A (en) * | 2006-05-29 | 2007-12-06 | Yuundo:Kk | Information processor |
JP2008181535A (en) * | 2000-12-07 | 2008-08-07 | Koninkl Philips Electronics Nv | Digital signal processing apparatus |
-
2011
- 2011-11-28 JP JP2013546871A patent/JPWO2013080289A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63240664A (en) * | 1987-03-27 | 1988-10-06 | Masahiro Sowa | Fast processing computer |
JP2000330788A (en) * | 1999-05-03 | 2000-11-30 | Stmicroelectronics Sa | Computer system |
JP2008181535A (en) * | 2000-12-07 | 2008-08-07 | Koninkl Philips Electronics Nv | Digital signal processing apparatus |
JP2002268876A (en) * | 2001-03-14 | 2002-09-20 | Denso Corp | Pipeline processing method and information processor |
JP2002358288A (en) * | 2001-05-31 | 2002-12-13 | Hitachi Ltd | Semiconductor integrated circuit and computer readable recording medium |
JP2007317152A (en) * | 2006-05-29 | 2007-12-06 | Yuundo:Kk | Information processor |
Non-Patent Citations (6)
Title |
---|
CSND200600610001; 須賀 敦浩: '「スーパーコンの技術を民生機器向けプロセサに適用 マルチコア向け性能チューニングの勘所」' 日経エレクトロニクス no.908 , 20050912, 119頁〜130頁, 日経BP社 * |
CSNG200800573057; 宮本 孝道: '「情報家電用マルチコア上におけるマルチメディア処理のコンパイラによる並列化」' 先進的計算基盤システムシンポジウム SACSIS2008 論文集 第2008巻, 20080604, 社団法人情報処理学会 * |
JPN6012013625; Assia Djabelkhir et al.: '"Characterization of embedded applications for decoupled processor architecture"' IEEE International Workshop on Workload Characterization, 2003. WWC-6. 2003 , 20031027, pages:119-127, IEEE * |
JPN6012068678; JAMES E. SMITH: '"Decoupled Access/Execute ComputerArchitectures"' ACM Transactions on Computer Systems Vol.2,No.4, 198411, Pages 289-308, ACM * |
JPN6015008195; 須賀 敦浩: '「スーパーコンの技術を民生機器向けプロセサに適用 マルチコア向け性能チューニングの勘所」' 日経エレクトロニクス no.908 , 20050912, 119頁〜130頁, 日経BP社 * |
JPN6015008197; 宮本 孝道: '「情報家電用マルチコア上におけるマルチメディア処理のコンパイラによる並列化」' 先進的計算基盤システムシンポジウム SACSIS2008 論文集 第2008巻, 20080604, 社団法人情報処理学会 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8565811B2 (en) | Software-defined radio using multi-core processor | |
CN107066408B (en) | Method, system and apparatus for digital signal processing | |
US20110136439A1 (en) | Analyzing Wireless Technologies Based On Software-Defined Radio | |
US20110078355A1 (en) | Radio-Control Board For Software-Defined Radio Platform | |
TWI392298B (en) | Method, apparatus, and computer program product for zeroing-out llrs using demod-bitmap to improve performance of modem decoder | |
US20220046543A1 (en) | Information sending and receiving method and device, terminal, and base station | |
US10481957B2 (en) | Processor and task processing method therefor, and storage medium | |
CN102693193B (en) | Interrupt auxiliary processing device, real-time system and interrupt processing method | |
WO2021139576A1 (en) | Time domain resource determination method, device and medium | |
US10496329B2 (en) | Methods and apparatus for a unified baseband architecture | |
JP2022516534A (en) | Data processing methods, appliances, equipment and storage media | |
US9350584B2 (en) | Element selection unit and a method therein | |
WO2013080289A1 (en) | Signal processing device and signal processing method | |
US20130166794A1 (en) | Interrupt event management | |
JPWO2013080289A1 (en) | Signal processing apparatus and signal processing method | |
US9917789B2 (en) | Computing element allocation in data receiving link | |
US20230111984A1 (en) | Methods and Apparatus for Adaptive Power Profiling in A Baseband Processing System | |
JP6321324B2 (en) | Program control in parallel processing systems | |
JPWO2007060932A1 (en) | Multi-thread processor with dynamically reconfigurable logic | |
US8769142B2 (en) | Data transfer apparatus, information processing apparatus and method of setting data transfer rate | |
KR102363181B1 (en) | Digital signal processing device of base station and method for processing data thereof | |
CN111901878A (en) | Uplink signal transmission method, device, communication node and storage medium | |
EP3273357B1 (en) | Dma controller, implementation method and computer storage medium | |
WO2022017236A1 (en) | Data processing method and apparatus, and device and storage medium | |
JP2018537791A (en) | Operation of VLIW processor in wireless sensor device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150303 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150414 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20151208 |