JP4386852B2 - Signal processing device - Google Patents
Signal processing device Download PDFInfo
- Publication number
- JP4386852B2 JP4386852B2 JP2005077058A JP2005077058A JP4386852B2 JP 4386852 B2 JP4386852 B2 JP 4386852B2 JP 2005077058 A JP2005077058 A JP 2005077058A JP 2005077058 A JP2005077058 A JP 2005077058A JP 4386852 B2 JP4386852 B2 JP 4386852B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- coprocessor
- counter
- circuit
- signal processing
- 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.)
- Active
Links
Images
Landscapes
- Advance Control (AREA)
Description
本発明は、信号処理技術に関し、特にマスタコンピュータとスレーブコンピュータを備えた信号処理装置に関する。 The present invention relates to a signal processing technique, and more particularly to a signal processing apparatus including a master computer and a slave computer.
近年、通信回線のブロードバンド化に伴い、データ通信の高速化への要求が高まっている。この高速化は、有線でのデータ通信のみならず、無線でのデータ通信に対しても同様に要求され、ワイヤレスLAN、CDMA、GPRS等の種々の通信方式で開発が進んでいる。 In recent years, with the trend toward broadband communication lines, there is an increasing demand for high-speed data communication. This high speed is required not only for wired data communication but also for wireless data communication, and development is progressing in various communication methods such as wireless LAN, CDMA, GPRS and the like.
図1は、従来の信号処理装置の構成を示す。従来の信号処理装置1では、DSP10が、第1コプロセッサ12、第2コプロセッサ16、第3コプロセッサ20、メモリ22、DMAC30およびクロック制御回路40の動作タイミングを制御する。信号処理装置1における各構成は、バス2により接続されている。なおDSP10ではなく、CPUが各講師の動作タイミングを制御することもある。メモリ14は第1コプロセッサ12により使用され、またメモリ18は第2コプロセッサ16により使用される。DMAC30は、DSP10を介さずに、第1コプロセッサ12と第2コプロセッサ16の間でデータを転送する。例えば、第1コプロセッサ12で処理した演算結果を第2コプロセッサ16で使用する場合、DMAC30が、第1コプロセッサ12の処理結果を第2コプロセッサ16に直接転送する。第3コプロセッサ20は、機能を動的に変更可能なリコンフィギュラブル回路であり、DSP10から所定のデータを供給されることで、所期の回路を構成する。メモリ22はRAMなどから構成される。クロック制御回路40は、信号処理装置1における各構成へのクロック供給のオンオフ機能を有する。
FIG. 1 shows a configuration of a conventional signal processing apparatus. In the conventional
図2は、従来の信号処理装置による信号処理のフローチャートを示す。図2は、第1コプロセッサ12における信号の処理結果を第2コプロセッサ16に転送して処理するときの処理フローを示す。まずDSP10が第1コプロセッサ12に対して信号処理の開始指示を送る(S1)。第1コプロセッサ12は、処理開始指示を受けて信号処理を実行し(S2)、信号処理の終了通知をDSP10に送る(S3)。
FIG. 2 shows a flowchart of signal processing by a conventional signal processing apparatus. FIG. 2 shows a processing flow when the signal processing result in the first coprocessor 12 is transferred to the
DSP10は、DMAC30に対してデータ転送の開始指示を送る(S4)。DMAC30は、転送開始指示を受けて、第1コプロセッサ12の処理結果を第2コプロセッサ16に転送し(S5)、転送処理の終了通知をDSP10に送る(S6)。続いて、DSP10は、第2コプロセッサ16に対して信号処理の開始指示を送る(S7)。第2コプロセッサ16は、処理開始指示を受けて信号処理を実行し(S8)、信号処理の通知をDSP10に送る(S9)。
図2に示されるように、従来の信号処理装置1では、DSP10が、第1コプロセッサ12、DMAC30、第2コプロセッサ16のそれぞれに対して指令を送り、またそれぞれから処理の終了通知を受け取る。このようなスケジュール管理を実行するため、従来の信号処理装置1においてはDSP10に処理負荷が集中し、DSP10の処理パフォーマンスを低下させる。また、DSP10に割込信号が頻繁に入力されるため、DSP本来の処理が中断されることになる。さらに、信号処理データの授受を主目的とするバス2が制御信号に占有されるため、バス2のデータ転送効率が低下し、信号処理装置全体の処理効率を低下させる。
As shown in FIG. 2, in the conventional
また、DSP10の処理パフォーマンスが低下することで、動的に回路を再構成可能な第3コプロセッサ20が、その回路構成速度を制限される事態も発生しうる。第3コプロセッサ20の回路再構成は、動的にリアルタイムで実行されることが好ましく、回路構成速度が低下することで、信号処理装置1におけるリアルタイム処理が損なわれることも予想される。
In addition, the processing performance of the
また、各コプロセッサやDMAC30は、クロック制御回路40によるクロック供給を停止することで、スリープ状態に入ることができ、低消費電力化を実現できる。しかしながら、クロック制御回路40はDSP10により動作制御されるため、DSP10の処理パフォーマンスが低下することで、クロック制御回路40によるきめ細かい電力管理が困難となる事態も生じる。特に、信号処理装置1がバッテリ駆動型の携帯端末装置に組み込まれる場合には、可能な限りバッテリの節約を行うことが理想であり、クロック制御回路40による電力管理能力の低下は、携帯端末装置において深刻な問題となりうる。
In addition, each coprocessor and the
本発明はこうした状況に鑑みてなされたものであり、その目的は、DSPやCPUなどのマスタプロセッサの処理負荷を軽減することのできる信号処理装置を提供することにある。 The present invention has been made in view of such a situation, and an object thereof is to provide a signal processing device capable of reducing the processing load of a master processor such as a DSP or a CPU.
上記課題を解決するために、本発明のある態様の信号処理装置は、装置における各種処理を主体的に実行するマスタプロセッサと、実行開始指示に応じて特定の単位処理を実行するスレーブプロセッサと、実行開始指示をマスタプロセッサに替わって発行するスケジュール管理回路とを備える。スケジュール管理回路は、単位処理ごとにその開始時刻の到来を検出して、その単位処理を実行すべきスレーブプロセッサに実行開始指示を出力する。 In order to solve the above problems, a signal processing apparatus according to an aspect of the present invention includes a master processor that mainly executes various processes in the apparatus, a slave processor that executes a specific unit process according to an execution start instruction, A schedule management circuit that issues an execution start instruction instead of the master processor. The schedule management circuit detects the arrival of the start time for each unit process, and outputs an execution start instruction to the slave processor that should execute the unit process.
この態様によると、DSPやCPUなどのマスタプロセッサによるスケジュール管理機能を、別個のハードウエアコンポーネントとして設けられるスケジュール管理回路に任せることができる。これにより、マスタプロセッサの処理負荷を軽減することができ、信号処理装置全体の処理効率を向上することが可能となる。 According to this aspect, a schedule management function by a master processor such as a DSP or a CPU can be left to a schedule management circuit provided as a separate hardware component. As a result, the processing load on the master processor can be reduced, and the processing efficiency of the entire signal processing apparatus can be improved.
スケジュール管理回路は、単位処理ごとに開始時刻を記録するレジスタと、時刻計時用カウンタとを有するタイミング回路と、レジスタに記録された開始時刻と時刻計時用カウンタのカウント値によって単位処理の開始時刻の到来を検出して、実行開始指示を出力する出力回路とを備えてもよい。時刻計時用カウンタはタイマとして機能し、出力回路がタイミング回路からの情報をもとに実行開始指示を出力することで、時間管理をスケジュール管理回路で収束させて、マスタプロセッサにかかる処理負荷を軽減することができる。 The schedule management circuit includes a register that records a start time for each unit process, a timing circuit having a time counter, and the start time of the unit process according to the start time recorded in the register and the count value of the time counter. An output circuit that detects arrival and outputs an execution start instruction may be provided. The timekeeping counter functions as a timer, and the output circuit outputs an execution start instruction based on information from the timing circuit, so that the time management is converged by the schedule management circuit and the processing load on the master processor is reduced. can do.
なおタイミング回路は、レジスタにおいて単位処理ごとにその処理の終了通知信号を発行するか否かを指定する情報を記録してもよい。このとき出力回路は、時刻計時用カウンタのカウント値によって単位処理ごとにその終了時刻の到来を検出し、終了通知信号を発行する旨が指定された単位処理の終了時刻が到来したとき、マスタプロセッサに対して終了通知信号を発行してもよい。この態様によると、マスタプロセッサに対する終了通知信号は、発行することが指定されたものについてのみ発行される。そのため、マスタプロセッサに対して割込信号が供給される頻度を下げることができ、マスタプロセッサにかかる処理負荷を軽減することができる。 The timing circuit may record information for designating whether or not to issue an end notification signal for each unit process in the register. At this time, the output circuit detects the arrival of the end time for each unit process according to the count value of the time counter, and when the end time of the unit process designated to issue the end notification signal has arrived, the master processor An end notification signal may be issued. According to this aspect, the end notification signal for the master processor is issued only for those designated to be issued. Therefore, the frequency with which the interrupt signal is supplied to the master processor can be reduced, and the processing load on the master processor can be reduced.
マスタプロセッサが通信制御処理を実行する場合、タイミング回路は、複数の時刻計時用カウンタを有し、そのうちの少なくとも1つの時刻計時用カウンタは、通信制御処理による通信動作タイミングにあわせたカウント値を出力してもよい。出力回路が、信号処理に適したカウンタからの出力を選択することで、スレーブプロセッサの動作タイミングを規定したスケジュール情報を修正する必要がなくなるため、スケジュール管理を容易に実現することが可能となる。 When the master processor executes communication control processing, the timing circuit has a plurality of time clock counters, and at least one of the time clock counters outputs a count value in accordance with the communication operation timing by the communication control processing. May be. Since the output circuit selects the output from the counter suitable for signal processing, it is not necessary to modify the schedule information that defines the operation timing of the slave processor, so that schedule management can be easily realized.
タイミング回路は、時刻計時用カウンタのカウント値をマスタプロセッサの通信制御処理における通信動作タイミングにあわせて調整する調整回路をさらに備えてもよい。これにより、時刻計時用カウンタが、通信動作タイミングにあわせたカウント値を出力できるようになる。 The timing circuit may further include an adjustment circuit that adjusts the count value of the timekeeping counter in accordance with the communication operation timing in the communication control process of the master processor. Thereby, the time counter can output a count value in accordance with the communication operation timing.
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。 It should be noted that any combination of the above-described constituent elements and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, etc. are also effective as an aspect of the present invention.
本発明によれば、DSPやCPUなどのマスタプロセッサの処理負荷を軽減する信号処理装置を提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the signal processing apparatus which reduces the processing load of master processors, such as DSP and CPU, can be provided.
本発明を具体的に説明する前に、概要を述べる。本発明の実施例の信号処理装置では、該装置における各種処理を主体的に実行するDSPやCPUなどのマスタプロセッサに加えて、該装置に含まれるコプロセッサやDMACなどの構成の動作を時間管理するスケジュール管理回路が設けられる。このスケジュール管理回路は、装置内の各構成の動作スケジュールを規定したスケジュール情報をマスタプロセッサから受け取り、スケジュール情報をもとに各構成の動作を時間管理する。 Before describing the present invention in detail, an outline will be described. In the signal processing apparatus according to the embodiment of the present invention, in addition to a master processor such as a DSP or a CPU that mainly executes various processes in the apparatus, the operation of a configuration such as a coprocessor or a DMAC included in the apparatus is time-managed. A schedule management circuit is provided. The schedule management circuit receives schedule information defining the operation schedule of each component in the apparatus from the master processor, and performs time management of the operation of each component based on the schedule information.
図3は、本発明の実施例にかかる信号処理装置の構成を示す。実施例にかかる信号処理装置100は、DSP(Digital Signal Processor)10、第1コプロセッサ12、第2コプロセッサ16、第3コプロセッサ20、DMAC(Direct Memory Access Controller)30、クロック制御回路40およびスケジュール管理回路50を備える。信号処理装置100において、DSP10は、本装置における各種処理を主体的に実行するマスタプロセッサとして機能する。マスタプロセッサは、例えばマイクロコードを内蔵するプロセッサであり、図示していないがCPU(Central Processing Unit)を含んでよい。以下ではDSP10をマスタプロセッサの一例として説明する。信号処理装置100にDSP10とCPUとが設けられる場合には、マスタプロセッサが2つ存在することになる。なお信号処理装置100における各構成は、バス2で互いに接続されている。
FIG. 3 shows the configuration of the signal processing apparatus according to the embodiment of the present invention. The
第1コプロセッサ12、第2コプロセッサ16、第3コプロセッサ20、DMAC30およびクロック制御回路40は、実行開始指示に応じて特定の単位処理を実行するスレーブプロセッサとして機能する。スレーブプロセッサはマスタプロセッサおよびスケジュール管理回路50以外の処理回路であり、主体的に処理を実行するのではなく、あくまでも供給される実行開始指示に応じて特定の単位処理を実行する。信号処理装置100を通信制御装置などの特定用途に用いる場合、スレーブプロセッサの単位処理は既知の処理であり、実行時間は予め算出することができる。第1コプロセッサ12および第2コプロセッサ16は処理内容を特化したコプロセッサとして構成され、実行開始指示に応答して特定の単位処理を実行する。
The first coprocessor 12, the
信号処理装置100は、携帯電話などの無線通信端末装置に組み込まれて、通信信号の処理を可能とするものであってよい。このとき信号処理装置100は、無線通信制御装置として機能する。例えば、第1コプロセッサ12は、FIRなどのディジタルフィルタ処理に特化した演算アクセラレータとして構成される。また第2コプロセッサ16は、誤り訂正符号の復号処理に特化した演算アクセラレータとして構成される。信号処理装置100が無線通信制御装置として機能するとき、外部から受信した受信信号は第1コプロセッサ12にてフィルタ処理を行われ、続いて第2コプロセッサ16にて誤り訂正符号の復号処理を行われる。
The
第1コプロセッサ12にてフィルタ処理された処理結果はメモリ14に一時記憶される。DMAC30は、メモリ14に一時記憶された処理結果を読み出し、第2コプロセッサ16に転送する。第2コプロセッサ16は、転送されたデータに含まれる誤り訂正符号を復号処理し、メモリ18に一時記憶する。復号処理されたデータは、その後、例えばDSP10に転送されて、音声再生またはデータ再生に用いられる。
The processing result filtered by the first coprocessor 12 is temporarily stored in the
第3コプロセッサ20は、機能を動的に変更可能なリコンフィギュラブル回路であり、DSP10から所定の設定データを供給されることで、所期の回路を構成する。例えば、第3コプロセッサ20は、複数のALU(Arithmetic and Logic Unit)群を有し、それぞれのALU群の機能を逐次設定することで、動的に回路構成を変化させることができる。このとき設定データは、ALU群の機能やALU群間の接続関係を定義する。
The
クロック制御回路40は、第1コプロセッサ12、第2コプロセッサ16、第3コプロセッサ20、DMAC30などのスレーブプロセッサのクロック制御を行う。クロック制御回路40は、クロック周波数の制御や、クロック供給のオンオフ制御(クロックゲーティング)を可能とする。特に、信号処理装置100がバッテリ駆動型の携帯端末装置に組み込まれる場合、長時間の使用を実現するためには、バッテリの浪費を低減する必要がある。そのためクロック制御回路40は、各スレーブプロセッサが動作しない場合に、クロックの供給を停止して、電力の消費を低減する。
The
メモリ22はRAM(Random Access Memory)などで構成される。メモリ22には、DSP10で処理されたアプリケーションデータなどが記憶される。
The
本実施例の信号処理装置100において、スケジュール管理回路50は、スレーブプロセッサを動作させる実行開始指示を、DSP10などのマスタプロセッサに替わって発行する役割を果たす。スケジュール管理回路50は、マスタプロセッサとは別のハードウエアとして構成され、マスタプロセッサに替わって、信号処理装置100におけるスケジュール管理を実行する。なお、スケジュール管理回路50は、信号処理装置100における少なくとも一部のスレーブプロセッサの時間管理を行えばよく、全てのスレーブプロセッサの時間管理を行う必要はない。またスケジュール管理回路50は、時間管理を行うスレーブプロセッサの全ての処理についてスケジューリングを行う必要はなく、少なくとも一部の処理についてスケジューリングを行うものであってよい。
In the
スケジュール管理回路50は、スレーブプロセッサの単位処理ごとにその開始時刻の到来を検出して、その単位処理を実行すべきスレーブプロセッサに実行開始指示を出力する。これにより、スレーブプロセッサは、単位処理を実行できる。この開始時刻は絶対的な時刻であってもよく、また相対的な時刻であってもよい。例えば、第1コプロセッサ12における処理結果を第2コプロセッサ16に引き渡す場合、第1コプロセッサ12の単位処理の開始時刻を基準として、DMAC30による単位処理(データ転送処理)と、第2コプロセッサ16による単位処理(誤り訂正符号の復号処理)の開始時刻が相対的に設定されていてもよい。
The
スケジュール管理回路50が信号処理装置100のスケジュール管理を担うことで、DSP10などのマスタプロセッサがスケジュール管理にかかる負荷を低減することができ、信号処理装置100における処理効率を向上することができる。
Since the
図4は、スケジュール管理回路の構成を示す。スケジュール管理回路50は、タイミング回路120および出力回路130を備える。タイミング回路120は、タイマとして機能する複数のカウンタを有して、複数の所望のタイミングを発生することができる。例えば基準となるカウント値を出力するカウンタ、通信制御処理における受信動作タイミングにあわせたカウント値を出力するカウンタ、通信制御処理における送信動作タイミングにあわせたカウント値を出力するカウンタの3つのカウンタが設けられてもよい。
FIG. 4 shows the configuration of the schedule management circuit. The
タイミング回路120は、設定レジスタ110、フリーランカウンタ112、時間調整回路114、第1オフセットカウンタ116および第2オフセットカウンタ118を備える。フリーランカウンタ112、第1オフセットカウンタ116および第2オフセットカウンタ118は、外部からクロックの供給を受けて、タイミング回路120における時刻計時用カウンタとして機能する。フリーランカウンタ112、第1オフセットカウンタ116および第2オフセットカウンタ118は、所定の周期でカウント値を更新するカウンタである。それぞれのカウンタは、同一の構造を有してもよく、また別個の構造を有してもよい。例えば、カウンタは12ビット×5段の構造を有し、各段においてきめ細かく周期を設定できるようにしてもよい。
The
設定レジスタ110には、DSP10などのマスタプロセッサから予め提供されるスレーブプロセッサのスケジュール情報が記録されている。スケジュール情報は、動作させるスレーブプロセッサの識別番号と、そのスレーブプロセッサによる単位処理の開始時刻および終了時刻を含む。複数のスレーブプロセッサによる単位処理の開始時刻および終了時刻は時間軸上で定義される。なお、スレーブプロセッサが複数種類の動作を実行可能に構成されている場合には、スケジュール情報が、スレーブプロセッサに実行させる動作を特定する情報を含む。スケジュール情報は、カウント値との比較のために出力回路130に供給される。
In the
一例として、外部からの受信信号を第1コプロセッサ12でフィルタ処理し、その処理結果を第2コプロセッサ16に転送して、第2コプロセッサ16にて誤り訂正符号の復号処理を行う場合のスケジュール情報について説明する。このとき、任意の時間Tを基準とする。なお、第1コプロセッサ12によるフィルタ処理にかかる時間を100クロック、DMAC30によるデータ転送処理にかかる時間を10クロック、第2コプロセッサ16による復号処理にかかる時間を100クロックとする。第1コプロセッサ12および第2コプロセッサ16は、特定の処理を実行する場合を想定しており、その処理時間は正確に算出することができる。時間Tが、第1コプロセッサ12のフィルタ処理の開始時刻に設定される。
As an example, when the received signal from the outside is filtered by the first coprocessor 12, the processing result is transferred to the
スケジュール情報では、第1コプロセッサ12のフィルタ処理の時間情報に関して、開始時刻が時間T、終了時刻が時間(T+99)に設定される。DMAC30のデータ転送処理の時間情報に関しては、開始時刻が時間(T+100)、終了時刻が時間(T+109)に設定され、第2コプロセッサ16のフィルタ処理の時間情報に関しては、開始時刻が時間(T+110)、終了時刻が時間(T+209)に設定される。ここでは、各スレーブプロセッサの処理時間を正確に算出しているため、単位処理の間に時間マージンをとる必要がない。
In the schedule information, the start time is set to time T and the end time is set to time (T + 99) for the time information of the filter processing of the first coprocessor 12. Regarding the time information of the data transfer processing of the
また、既述したように、スケジュール情報には、第1コプロセッサ12、DMAC30および第2コプロセッサ16で実行する単位処理の内容が含まれてもよい。第1コプロセッサ12の単位処理は、受信信号をフィルタ処理することであり、DMAC30の単位処理は、第1コプロセッサ12においてフィルタ処理されたデータを第2コプロセッサ16に転送することであり、第2コプロセッサ16の単位処理は、転送されたデータを誤り訂正復号処理することである。スケジュール情報において、第1コプロセッサ12の処理結果を格納するメモリ14のアドレス領域、第2コプロセッサ16に転送されるデータを一旦記憶するメモリ18のアドレス領域が含まれてもよい。なお、第1コプロセッサ12および第2コプロセッサ16の処理内容が特定されているのであれば、それぞれの単位処理の内容をスケジュール情報から省略することができる。
Further, as described above, the schedule information may include the contents of the unit processes executed by the first coprocessor 12, the
初期設定時に、以上のスケジュール情報が設定レジスタ110に記録される。初期設定時とは、例えば信号処理装置100に電源が投入されたときであってよい。DSP10は、スケジュール情報を予め保持しておき、初期設定時に設定レジスタ110に提供する。
The above schedule information is recorded in the
また、設定レジスタ110は、フリーランカウンタ112、第1オフセットカウンタ116、第2オフセットカウンタ118のそれぞれの周期を保持する。この周期も初期設定時にDSP10から供給される。設定レジスタ110は、設定された周期をそれぞれのカウンタに供給し、各カウンタは、供給された周期に基づいてカウント値を更新する。なお、各カウンタに設定される周期は同一であってもよく、またそれぞれ異なっていてもよい。
The
フリーランカウンタ112は、タイミング回路120において基準となるタイミングを示すカウント値を出力する。これに対して、第1オフセットカウンタ116および第2オフセットカウンタ118は、フリーランカウンタ112で生成される基準となるタイミングから、DSP10の通信制御処理による通信動作タイミングにあわせた時間だけオフセットされたタイミングを生成する。通信動作タイミングは、通信信号のトラッキング処理を実行することで定められる。具体的に、第1オフセットカウンタ116は、DSP10の通信制御処理による受信動作タイミングにあわせたカウント値を出力する。また第2オフセットカウンタ118は、DSP10の通信制御処理による送信動作タイミングにあわせたカウント値を出力する。
The free-
時間調整回路114は、第1オフセットカウンタ116および第2オフセットカウンタ118のカウント値を、DSP10の通信制御処理における通信動作タイミングにあわせて調整する調整回路として機能する。具体的に時間調整回路114は、設定レジスタ110より受信処理のオフセット時間と、送信処理のオフセット時間を受け取る。この2つのオフセット時間は、DSP10が通信制御処理を行うことで判明し、DSP10から設定レジスタ110に供給される。なお、通信環境によりオフセット時間は刻々と変動する可能性があり、時間調整回路114は、常に最新のオフセット時間を更新して保持することが好ましい。時間調整回路114は、受信処理のオフセット時間を第1オフセットカウンタ116に供給し、送信処理のオフセット時間を第2オフセットカウンタ118に供給する。
The
第1オフセットカウンタ116は、受信処理のオフセット時間をもとに基準タイミングを遅延させ、または進めて、受信処理に同期させたタイミングを生成する。同様に第2オフセットカウンタ118は、送信処理のオフセット時間をもとに基準タイミングを遅延させ、または進めて、送信処理に同期したタイミングを生成する。なお、各カウンタのカウント値は位相をずらすものではなく、オフセット時間として決定されるクロック数分を、基準タイミングに対して前または後ろにずらすものである。 The first offset counter 116 delays or advances the reference timing based on the offset time of the reception process, and generates a timing synchronized with the reception process. Similarly, the second offset counter 118 delays or advances the reference timing based on the offset time of the transmission process, and generates a timing synchronized with the transmission process. Note that the count value of each counter does not shift the phase, but shifts the number of clocks determined as the offset time forward or backward with respect to the reference timing.
出力回路130は、コンペアマッチ出力回路として構成され、設定レジスタ110に記録された開始時刻と、フリーランカウンタ112、第1オフセットカウンタ116、第2オフセットカウンタ118のいずれかから出力されるカウント値によって、スレーブプロセッサの単位処理の開始時刻の到来を検出する。具体的に出力回路130は、フリーランカウンタ112、第1オフセットカウンタ116、第2オフセットカウンタ118のいずれかから出力されるカウント値と、設定レジスタ110から供給されるスケジュール情報のうちの時間情報とを比較し、カウント値が時間情報に到達したときに、スレーブプロセッサの単位処理の開始時刻の到来を検出する。出力回路130は、開始時刻の到来を検出すると、そのスレーブプロセッサに対して実行開始指示を発行して出力する。既述した例では、スケジュール情報において、時間Tで第1コプロセッサ12の単位処理が開始される時間情報が設定されており、出力回路130は、タイミング回路120から供給されるカウント値がTとなったときに、第1コプロセッサ12に対して、単位処理の実行開始指示を発行する。他のスレーブプロセッサによる単位処理の開始時刻についても同様である。
The
なお、タイミング回路120は、3種類のカウンタ、すなわちフリーランカウンタ112、第1オフセットカウンタ116、第2オフセットカウンタ118を有しており、それぞれ異なるカウント値を出力している。例えば、第1コプロセッサ12で処理するデータが受信処理に関するものである場合、出力回路130は、受信処理に同期したタイミングを生成する第1オフセットカウンタ116からのカウント値を選択して、スケジュール情報の時間情報と比較する。また、第1コプロセッサ12で処理するデータが送信処理に関するものである場合、出力回路130が、送信処理に同期したタイミングを生成する第2オフセットカウンタ118からのカウント値を選択して、スケジュール情報の時間情報と比較する。また、第1コプロセッサ12で処理するデータが送受信処理に関係しないものである場合、出力回路130が、基準タイミングを生成するフリーランカウンタ112からのカウント値を選択して、スケジュール情報の時間情報と比較する。
The
このように、出力回路130が、処理するデータの種類に応じてカウンタを選択することで、適切なタイミングで、スレーブプロセッサの実行開始指示を出力できる。なお、フリーランカウンタ112のみで時間管理することも可能であるが、その場合には、トラッキング処理などによる基準タイミングとのオフセット時間をもとに、スケジュール情報の時間情報を修正する必要がある。例えば、時間(T+100)でDMAC30のデータ転送処理が始まるところが、受信処理にクロック2つ分の時間遅延が発生している場合には、データ転送処理の開始時刻を時間(T+102)に書き換える必要がある。これは、スケジュール管理回路50におけるスケジュール管理を複雑なものとする。
In this way, the
一方、本実施例のように複数種類のカウンタを予め用意し、例えば信号の送受信に同期したカウンタ値を生成させることで、送受信処理に関するスケジュール情報の時間情報を補正することなく、適切なカウンタを選択することで、そのまま利用することが可能となる。これにより、スケジュール管理を容易にできる。 On the other hand, a plurality of types of counters are prepared in advance as in this embodiment, and for example, by generating a counter value synchronized with signal transmission / reception, an appropriate counter can be set without correcting time information of schedule information related to transmission / reception processing. By selecting, it can be used as it is. Thereby, schedule management can be facilitated.
設定レジスタ110は、単位処理ごとにその処理の終了通知信号を発行するか否かを指定する情報を、スケジュール情報の一つとして記録してもよい。第1コプロセッサ12、DMAC30、第2コプロセッサ16のそれぞれの単位処理が一連の受信制御処理として進行する場合、それぞれの単位処理の時間は既知である。出力回路130は、カウンタのカウント値によって単位処理ごとにその終了時刻の到来を検出する。例えば出力回路130は、タイミング回路120から供給されるカウント値が(T+99)となったときに、第1コプロセッサ12の単位処理の終了時刻の到来を検出する。
The
このように、出力回路130は、単位処理ごとにその終了時刻を検出することができるが、複数のスレーブプロセッサが介在する一連の受信制御処理においては、最後の単位処理が終了したこと以外の情報を、DSP10に通知する必要はない。DSP10に対して、単位処理の終了を通知する処理通知信号を発行すると、それはDSP10における割込信号として処理されるため、DSP10における円滑な処理動作を妨害する可能性がある。
In this way, the
そのため、設定レジスタ110は、単位処理ごとに終了通知信号を発行するか否かを指定するフラグを設定しておく。例えば、複数の単位処理で構成される一連の受信制御処理については、最後の単位処理に対してのみ、終了通知信号を発行するフラグが設定される。出力回路130は、最後の単位処理に対して終了通知信号を発行するフラグが設定されていることを認識すると、最後の単位処理の終了時刻が到来したとき、DSP10に対して終了通知信号を発行する。既述した例では、カウント値が、第2コプロセッサ16における誤り訂正符号の復号処理が終了する時刻(T+209)に到達したときに、DSP10に対して終了通知信号を発行し、出力する。
Therefore, the
図5は、実施例にかかる信号処理装置による信号処理のフローチャートを示す。図5は、第1コプロセッサ12における信号の処理結果を第2コプロセッサ16に転送して処理するときの処理フローを示す。初期設定時にDSP10が、スケジュール管理回路50に対してスケジュール情報を送る(S10)。
FIG. 5 is a flowchart of signal processing performed by the signal processing apparatus according to the embodiment. FIG. 5 shows a processing flow when the signal processing result in the first coprocessor 12 is transferred to the
スケジュール管理回路50は、スケジュール情報に含まれた時間情報にしたがって、第1コプロセッサ12に対して単位処理の実行開始指示を送る(S12)。第1コプロセッサ12は、実行開始指示を受け取ると、受信信号のフィルタ処理を実行する(S14)。この受信信号は、フィルタ処理の直前にメモリ14に書き込まれている。フィルタ処理されたデータは、メモリ14に一時記憶される。
The
スケジュール管理回路50は、第1コプロセッサ12における単位処理が終了し、第1コプロセッサ12における単位処理の開始時刻の到来を検出すると、DMAC30に対して単位処理の実行開始指示を送る(S16)。DMAC30は、実行開始指示を受け取ると、フィルタ処理されてメモリ14に一時記憶されたデータを読み出して、第2コプロセッサ16のメモリ18に書き込む(S18)。
When the unit processing in the first coprocessor 12 ends and the arrival of the unit processing start time in the first coprocessor 12 is detected, the
スケジュール管理回路50は、DMAC30における単位処理が終了し、第2コプロセッサ16における単位処理の開始時刻の到来を検出すると、第2コプロセッサ16に対して単位処理の実行開始指示を送る(S20)。DMAC30は、実行開始指示を受け取ると、メモリ18に記憶したデータを読み出して、誤り訂正符号の復号処理を実行する(S22)。
When the unit process in the
スケジュール管理回路50は、第2コプロセッサ16における単位処理の終了時刻の到来を検出すると、DSP10に対して終了通知信号を送る。なお、これは、第2コプロセッサ16における単位処理に対してのみ終了通知信号を発行することが指定されている場合の処理である。
When the
本実施例の信号処理装置100においては、DSP10の他に、スケジュール管理を実行するスケジュール管理回路50を別途設けることで、DSP10の処理負荷を大幅に軽減することが可能となる。図2と比較すると明らかであるが、スレーブプロセッサの時間制御をスケジュール管理回路50に任せることで、DSP10は、スケジュール管理に関する処理から解放されて、主信号の演算処理や制御処理などの他の処理を効率的に実行することができる。
In the
また、スケジュール管理回路50がDSP10に対して送る割込信号の数を減らすことで、DSP10は、円滑な動作状態を維持できる。図5に示す処理フローでは、スケジュール管理回路50が、第2コプロセッサ16における単位処理の終了後にのみ終了通知信号をDSP10に送っており、それ以外のタイミングでは送らない。このように、DSP10にとって割込信号となる信号の送信頻度を下げることで、DSP10の処理負荷を軽減して、処理効率を向上することが可能となる。
Further, the
従来、DSP10がスケジュール管理する場合、ソフトウエア制御によるオーバーヘッドが生じることで、正確に時間を管理することが困難であったが、本実施例ではスケジュール管理回路50を設けることで、その問題を解消することが可能となる。例えば、第3コプロセッサ20は回路を再構成するコプロセッサであるが、スケジュール管理回路50により正確なスケジュール管理が可能となることで、第3コプロセッサ20の処理効率を向上できる。
Conventionally, when the
また、スケジュール管理回路50は、クロック制御回路40によるクロック供給のオンオフ制御を正確に実行できる。これにより、信号処理装置100が組み込まれた装置ないしはシステムの省電力化を効率的に実行することができる。特に、携帯端末装置として構成される場合には、効率的な省電力化を図ることで、バッテリ残存時間を長くできる。
Further, the
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。 In the above, this invention was demonstrated based on the Example. This embodiment is an exemplification, and it will be understood by those skilled in the art that various modifications can be made to the combination of each component and each processing process, and such modifications are also within the scope of the present invention. .
2・・・バス、10・・・DSP、12・・・第1コプロセッサ、14・・・メモリ、16・・・第2コプロセッサ、18・・・メモリ、20・・・第3コプロセッサ、22・・・メモリ、30・・・DMAC、40・・・クロック制御回路、50・・・スケジュール管理回路、100・・・信号処理装置、110・・・設定レジスタ、112・・・フリーランカウンタ、114・・・時間調整回路、116・・・第1オフセットカウンタ、118・・・第2オフセットカウンタ、120・・・タイミング回路、130・・・出力回路。
2 ... bus, 10 ... DSP, 12 ... first coprocessor, 14 ... memory, 16 ... second coprocessor, 18 ... memory, 20 ... third coprocessor , 22 ... Memory, 30 ... DMAC, 40 ... Clock control circuit, 50 ... Schedule management circuit, 100 ... Signal processing device, 110 ... Setting register, 112 ... Free run Counter ... 114
Claims (3)
実行開始指示に応じて特定の単位処理を実行するスレーブプロセッサと、
前記実行開始指示をマスタプロセッサに替わって発行するスケジュール管理回路と、
を備え、
前記スケジュール管理回路は、
単位処理ごとに開始時刻を記録するレジスタと、第1の時刻計時用カウンタと、第2の時刻計時用カウンタとを有するタイミング回路と、
前記レジスタに記録された開始時刻と、前記第1の時刻計時用カウンタまたは前記第2の時刻計時用カウンタのカウント値によって、単位処理の開始時刻の到来を検出して、その単位処理を実行すべきスレーブプロセッサに実行開始指示を出力する出力回路と、を有し、
前記マスタプロセッサは、通信制御処理を実行し、
前記第1の時刻計時用カウンタは、前記タイミング回路において基準となるタイミングを示すカウント値を出力し、
前記第2の時刻計時用カウンタは、前記第1の時刻計時用カウンタで生成される基準となるタイミングから、前記マスタプロセッサの通信制御処理による通信動作タイミングにあわせた時間だけオフセットされたカウント値を出力することを特徴とする信号処理装置。 A master processor that mainly executes various processes in the device;
A slave processor that executes a specific unit process in response to an execution start instruction;
A schedule management circuit for issuing the execution start instruction instead of the master processor;
With
The schedule management circuit includes:
A timing circuit having a register for recording a start time for each unit process, a first time counter, and a second time counter ;
The arrival of the start time of the unit process is detected based on the start time recorded in the register and the count value of the first time counter or the second time counter , and the unit process is executed. An output circuit for outputting an execution start instruction to the slave processor to be
The master processor executes communication control processing,
The first time point measurement counter outputs a count value indicating a timing to be a reference in the timing circuit,
The second time counting counter has a count value that is offset from a reference timing generated by the first time counting counter by a time according to the communication operation timing by the communication control processing of the master processor. A signal processing device for outputting.
前記タイミング回路は、前記第2の時刻計時用カウンタのカウント値を前記マスタプロセッサの通信制御処理における通信動作タイミングにあわせて調整する調整回路をさらに備えることを特徴とする信号処理装置。 The signal processing device according to claim 1,
The signal processing device, wherein the timing circuit further includes an adjustment circuit that adjusts a count value of the second timekeeping counter in accordance with a communication operation timing in a communication control process of the master processor.
前記タイミング回路は、前記レジスタにおいて単位処理ごとにその処理の終了通知信号を発行するか否かを指定する情報を記録し、
前記出力回路は、前記第1の時刻計時用カウンタまたは前記第2の時刻計時用カウンタのカウント値によって単位処理ごとにその終了時刻の到来を検出し、前記終了通知信号を発行する旨が指定された単位処理の終了時刻が到来したとき、前記マスタプロセッサに対して終了通知信号を発行することを特徴とする信号処理装置。 The signal processing device according to claim 1 or 2,
The timing circuit records information designating whether or not to issue an end notification signal for each unit process in the register,
The output circuit is designated to detect the arrival of the end time for each unit process and issue the end notification signal for each unit process based on the count value of the first time counter or the second time counter. A signal processing device that issues an end notification signal to the master processor when the end time of the unit processing has arrived.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005077058A JP4386852B2 (en) | 2005-03-17 | 2005-03-17 | Signal processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005077058A JP4386852B2 (en) | 2005-03-17 | 2005-03-17 | Signal processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006260195A JP2006260195A (en) | 2006-09-28 |
JP4386852B2 true JP4386852B2 (en) | 2009-12-16 |
Family
ID=37099372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005077058A Active JP4386852B2 (en) | 2005-03-17 | 2005-03-17 | Signal processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4386852B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015501025A (en) | 2011-10-05 | 2015-01-08 | オプテオン コーポレーション | Method, apparatus and system for monitoring and / or controlling a dynamic environment |
JP7025966B2 (en) * | 2018-03-20 | 2022-02-25 | 日立Astemo株式会社 | Vehicle control device |
-
2005
- 2005-03-17 JP JP2005077058A patent/JP4386852B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2006260195A (en) | 2006-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005202767A (en) | Processor system, dma control circuit, dma control method, control method for dma controller, image processing method, and image processing circuit | |
JP4386852B2 (en) | Signal processing device | |
CN1983085A (en) | Device and method for realizing alarm clock function | |
JP2006178854A (en) | Electronic circuit | |
JP2008152409A (en) | Semiconductor integrated circuit | |
JP2007058331A (en) | Processor system and multithread processor | |
JP2001282398A5 (en) | ||
JP3699947B2 (en) | Microcontroller | |
JPS60218152A (en) | Microprocessor | |
JP2968749B2 (en) | Microprogram speed control circuit | |
JPH07244588A (en) | Data processor | |
JPH04275603A (en) | Programmable controller | |
JPH1020959A (en) | Low power consumption micro processor | |
JP2007207121A (en) | Data processor and control method therefor | |
JPH10171654A (en) | Fast data arithmetic processor | |
JP2008197943A (en) | Computer system | |
JP2003114866A (en) | Micro processor and operating system | |
JP2000215152A (en) | Dma control circuit | |
JPH07295956A (en) | Microcontroller | |
JPH10283186A (en) | Processor | |
JPH0498558A (en) | Microcomputer | |
JP2768878B2 (en) | Data processing device, method for synchronizing instruction execution, method for saving instruction address when exception occurs, and method for invalidating instruction processing when exception occurs | |
JP2011150636A (en) | Microprocessor and control method thereof | |
JP2008299740A (en) | Asynchronous microprocessor and electronic information device | |
JPH0535651A (en) | Digital signal processing lsi |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070328 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080715 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080729 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080917 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090317 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090512 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090929 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090929 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4386852 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121009 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121009 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131009 Year of fee payment: 4 |