JP2009514084A - リセット装置を具えたデータ処理装置 - Google Patents

リセット装置を具えたデータ処理装置 Download PDF

Info

Publication number
JP2009514084A
JP2009514084A JP2008537240A JP2008537240A JP2009514084A JP 2009514084 A JP2009514084 A JP 2009514084A JP 2008537240 A JP2008537240 A JP 2008537240A JP 2008537240 A JP2008537240 A JP 2008537240A JP 2009514084 A JP2009514084 A JP 2009514084A
Authority
JP
Japan
Prior art keywords
reset
data processing
signal
data
request
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
JP2008537240A
Other languages
English (en)
Inventor
パイロット ローラン
ハーミュリー アルバート
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.)
NXP BV
Original Assignee
NXP BV
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 NXP BV filed Critical NXP BV
Publication of JP2009514084A publication Critical patent/JP2009514084A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

データ処理装置(MPS)が、独立してリセットすることのできる複数のデータプロセッサ(SPR,PM1,...,PM4)を具えている。リセットモジュール(RSM)が、種々のリセット要求信号(HRG,SRG,SRP1,...,SRP4)を、優先順位付け及びタイミング方式に従って処理して、それぞれのデータプロセッサ(SPR,PM1,...,PM4)用のそれぞれのリセット信号(GRS,PRS1,...,PRS4)を得る。リセットモジュール(RSM)は、それぞれのリセット要求信号が搬送するそれぞれのリセット要求を記憶するリセット要求レジスタ、及びリセット信号が搬送するそれぞれの許可されたリセット要求を記憶するリセット実行レジスタを具えていることが好ましい。

Description

(発明の分野)
本発明は、データ処理装置の一部を形成する1つ以上のプロセッサモジュールをリセットするリセット装置を具えたデータ処理装置に関するものである。このデータ処理装置は例えば、セルラ電話機用のマルチプロセッサシステムとすることができる。本発明はさらに、データ処理装置をリセットする方法、データ処理装置用のコンピュータプログラム製品、及びデータ処理装置に関するものである。
(従来技術の説明)
米国特許第6665795号明細書
米国特許第6665795号明細書は、リセットユニットを含むパイプライン型プロセッサを記載し、このリセットユニットは出力リセット信号をパイプラインの少なくとも1段に供給する。このリセットユニットは少なくとも、ハードリセット要求、ソフトリセット要求、及びエミュレーション・リセット要求を検出する。このリセットユニットは、リセット要求がクリア(消去)された後の少なくともNクロックサイクルの間リセット信号をアサート(有効に、アクティブに)する。このリセットユニットは、リセット要求を、優先順位(プライオリティ)を割り当てられたリセットイベント(事象)として処理する。イベント・ペンディングレジスタ内のビットが更新されて、リセットイベントが現在ペンディング(処理待ち)であることを示す。イベントハンドラ(処理装置)がリセットイベントを受け付けると、イベント状態レジスタ内のビットが更新される。
(発明の概要)
本発明の態様によれば、データ処理装置が、個別にリセットすることのできる複数のデータプロセッサを具えている。リセットモジュールが、種々のリセットイベントを優先順位付け及びタイミング方式に従って処理して、それぞれのデータプロセッサ用のそれぞれのリセット信号を得る。
本発明は、次の態様を考慮に入れる。データプロセッサは一般にリセット装置を有し、このリセット装置はデータプロセッサをリセットすることを可能にする。リセットはデータプロセッサに明確な初期状態をもたらす。リセットは、例えばボタンを押すことのような物理的原因を有することができる。こうしたリセットはハードウェアリセットと称されることが多い。リセットは、例えばリセット命令を具えたソフトウェアプログラムのような論理的原因を有することもでき、このリセット命令はソフトウェアプログラムの実行の途上で到達する。こうしたリセットはソフトウェアリセットと称される。
データプロセッサは一般に、このデータプロセッサに供給されるリセット信号によってリセットされる。リセット信号は一般にバイナリ(2進数)信号であり、所定瞬時にバイナリ1またはバイナリ0のいずれかをとることができる。データプロセッサは、リセット信号がバイナリ1である際に解放(リリース)状態になり、リセット信号がバイナリ0である際にリセット状態になるか、あるいはその逆である。バイナリ1からバイナリ0、あるいはその逆の遷移がリセットを生じさせる。バイナリ0からバイナリ1、あるいはその逆である反対向きの遷移が、リセット後にデータプロセッサを解放する。
マルチプロセッサシステムの一部を形成するデータプロセッサをリセットすることは特別な考慮を必要とする。このデータプロセッサは一般に、他の1つ以上のプロセッサと機能的に相互に関係する。このデータプロセッサは演算を実行し、この演算が他のデータプロセッサが実行する演算に影響するか、あるいはその逆である。結果的に、特定のデータプロセッサのリセットを処理する方法は、他のデータプロセッサが実行する演算に影響し得る。従って、マルチプロセッサシステム全体の動作に影響し得る。種々のデータプロセッサ間のこうした機能的相互関係が、リセットを重大かつ複雑な問題とする。
例えば、マルチプロセッサシステムにおいて、次のことを想定する:データプロセッサ「A」がリセットされ、その直後に他のデータプロセッサ「B」がリセットされる。このように比較的短い時間間隔内に「Bより前にAがリセットされる」シーケンスはマルチプロセッサシステムに不所望な状態をもたらし得る。データプロセッサ「B」がリセットされるまでデータプロセッサ「A」のリセットを引き止めた方が良く、「Aより前にB」のシーケンスがより適切であったものとする。
各々がリセット状態にある種々のデータプロセッサを解放することも、重大かつ複雑な問題となり得る。例えば、次のことを想定する:2つのデータプロセッサ「C」及び「D」が丁度リセットされ、これらを解放すべきである。データプロセッサ「C」と「D」とを同時に解放することはマルチプロセッサシステムに不所望な状態をもたらし得る。このことは新たなリセットを必要とし得る。データプロセッサ「C」より前にデータプロセッサ「D」を解放するか、あるいはその逆の方がより適切である。データプロセッサ「C」より前に「D」を解放する方がより適切であるか、「D」より前に「C」を解放する方がより適切であるかは、マルチプロセッサシステム内の他のデータプロセッサ、あるいは例えばメモリのような他の要素に依存し得る。このことはさらに複雑な問題である。
マルチプロセッサシステムにおけるリセットの問題はソフトウェアレベルで対処することができる。例えば、マルチプロセッサシステムは、システムタスクを実行するデータプロセッサ用のシステムソフトウェアプログラムを具えることができる。このシステムソフトウェアプログラムは、マルチプロセッサシステム内で発生し得る可能なリセット形態毎に、不所望な状態を防止するように設計することができる。このマルチプロセッサシステムはさらに、専用処理タスクを実行するデータプロセッサ用の種々の専用処理ソフトウェアを具えることができる。各専用処理ソフトウェアプログラムは、専用処理ソフトウェアプログラムを実行するデータプロセッサが、他のデータプロセッサにあり得るリセット並びにマルチプロセッサシステム内に発生し得る他の関連イベントに依存してリセットを処理するように設計することもできる。
要約すれば、マルチプロセッサシステム内に発生し得るすべての可能なリセット形態を考慮に入れた注意深いソフトウェア設計が、マルチプロセッサシステムの満足な動作を可能にする。しかし、こうした注意深いソフトウェア設計は相当な労力を必要とし、従って比較的時間を要し高価である。マルチプロセッサシステムの比較的小さい変更が一般に、マルチプロセッサシステム用の各ソフトウェアプログラムの大幅な修正を必要とする。
上述した本発明の態様によれば、データ処理装置がリセットモジュールを具え、このリセットモジュールは、種々のリセット要求信号を優先順位付け及びタイミング方式に従って処理して、それぞれのデータプロセッサ用のそれぞれのリセット信号を得る。
このリセットモジュールは、マルチプロセッサシステムであるデータ処理装置が1つ以上のリセットによって不所望な状態に達することを防止する集中的なリセット処理を可能にする。このリセットモジュールは、リセットを、マルチプロセッサシステム内のデータプロセッサから独立して処理する。これらのデータプロセッサはリセット処理タスクを実行する必要はなく、データプロセッサは単に、適時にリセット要求を発行し、データプロセッサが受信するリセット信号に従い、このことが、データプロセッサが解放状態にあるかリセット状態にあるかを決定する。このことはソフトウェア設計を大幅に簡略化する。システムソフトウェアプログラム及び専用処理ソフトウェアプログラムが存在するならば、これらは種々のリセットの優先順位付け及びタイミングの問題を考慮に入れる必要がない。結果的に、マルチプロセッサシステムの比較的小さい変更は、ソフトウェアレベルまたはハードウェアレベルでの、あるいはその両方における比較的小さい変更を必要とするに過ぎない。これらの理由により、本発明は比較的高速の設計を可能にし、このことはコストを低減する。
本発明によるデータ処理装置の実現は、リセット要求レジスタ及びリセット実行レジスタを具えていることが好ましい。リセット要求レジスタは、それぞれのリセット要求信号が搬送するそれぞれのリセット要求を記憶する。リセット実行レジスタは、リセット信号が搬送するそれぞれの許可されたリセット要求を記憶する。このことは、マルチプロセッサシステムのいわゆるデバッグを促進する、というのは、リセットレベルで起きることをデバッガが監視することができるからである。リセット要求レジスタ及びリセット実行レジスタは可観測性を提供する。
以下、本発明のこれら及び他の態様について図面を参照しながらより詳細に説明する。
(実施例の詳細な説明)
図1に、セルラ電話機CPHを示す。セルラ電話機CPHは、送信−受信回路TXC、マルチプロセッサシステムMPS、及びヒューマンインタフェース装置HIDを具えている。ヒューマンインタフェース装置HIDは一般に、小型スピーカ、小型マイクロホン、表示装置、及び番号をダイヤルするための数字キーボードを具えている。
マルチプロセッサシステムMPSは、セルラ電話通信のユーザ制御またはシステム制御、あるいはその両方に関係する演算を実行する。例えば、ユーザがセルラ電話機CPHに、特定電話番号の発呼をすることを命令することを想定する。マルチプロセッサシステムMPSは、例えばユーザが要求すれば個人用電話帳を表示することによってこの処理を行う。マルチプロセッサシステムMPSは、発呼を行うために必要な種々の演算を実行する。例えば、グローバルシステム・フォー・モバイル・コミュニケーション(GSM:Global System for Mobile Communication:欧州の移動電話方式)では、マルチプロセッサシステムMPSは一般に、シグナリング(発着信制御信号送受信)及びタイムスロット管理を含むGSMシステムレベルの演算を処理する。
受信モードでは、送信−受信回路TXCが、受信した無線周波数信号PFRに応答して復調信号DSを供給する。マルチプロセッサシステムMPSは復調信号DSを処理し、復調信号DSは、発呼者からのデータ、または基地局または他のセルラ電話網からのデータ、あるいはこうしたデータの組合せを含むことができる。例えば、マルチプロセッサシステムMPSは、ヒューマンインタフェース入力信号HIを復調信号DSから導出することができる。ヒューマンインタフェース入力信号HIは例えば、小型スピーカ用のオーディオ信号とすることができる。この復調信号処理は一般に、例えばビタビ復号化のような1つ以上のチャンネル復号化演算及び1つ以上のエラー訂正演算を含む。
送信モードでは逆の信号の流れが存在し、ヒューマンインタフェース出力信号HOから始まる。例えば、マルチプロセッサシステムMPSは、小型マイクロホンが発声された言葉に応答して供給するオーディオ信号を受信することができる。マルチプロセッサシステムMPSは、ヒューマンインタフェース出力信号HOを処理して変調信号MSを得る。変調信号処理は一般に、1つ以上のチャンネル符号化演算及び1つ以上のエラー訂正演算を含み、これらは前述した復調信号処理と相補的なものである。送信−受信回路TXCは、送信無線周波数信号RETを発生し、この信号は変調信号MSを含む。
図2に、マルチプロセッサシステムMPSを示す。マルチプロセッサシステムMPSは、システムプロセッサSPR、種々のデータ処理モジュールPM1,...,PM4、メモリMEM、及びインタフェースモジュールIFMを具えている。前述したセルラ電話網どうしはバスBS経由で互いに通信することができる。マルチプロセッサシステムMPSはさらに、リセットモジュールRSMを具えている。リセットモジュールRSMは、種々のリセット要求信号HRG、SRG、SPR1,...,SPR4及び状態信号STA、STBに基づいて、種々のリセット信号FRS、PRS1,...,PRS4をシステムプロセッサSPR及びデータ処理モジュールPM1,...,PM4に供給する。これについては以下により詳細に説明する。前述した電話網は異なるクロック信号を受信することができる。図2は、システムプロセッサSPR、データ処理モジュールPM3、PM4がクロック信号CK1を受信し、データ処理モジュールPM1、PM2がクロック信号CK2を受信することを示す。即ち、マルチプロセッサシステムMPSはマルチ(多)クロック方式で動作する。
システムプロセッサSPRは、システムソフトウェアプログラムを記憶するプログラムメモリを具えることができる。このシステムソフトウェアプログラムは、システムプロセッサSPRが実行する1つ以上の機能を規定する一組の命令を具えている。同様に、データ処理モジュールが、専用ソフトウェアプログラムを記憶するプログラムメモリを具えることができる。この専用ソフトウェアプログラムは、データ処理モジュールが実行する1つ以上の処理機能を規定する一組の命令を具えている。あるいはまた、上記データ処理モジュールは、ソフトウェアではなくハードウェアで規定された1つ以上の機能を実行する専用回路の形態とすることができる。こうした実現では、回路のそれぞれの素子及びこれらの素子間のそれぞれの接続が、データ処理モジュールが実行する1つ以上の機能を規定する。マルチプロセッサシステムMPSは、例えば単一集積回路で実現することができる。こうした実現はいわゆるシステムオンチップ(SoC:System on Chip)を構成する。
マルチプロセッサシステムMPSは基本的に次のように動作する。インタフェースモジュールIFMは、ヒューマンインタフェース出力信号HO及び復調信号DSに含まれる入力データを受信する。この入力データは処理される前に一時的にメモリMEMに記憶される。1つ以上のデータ処理モジュールPM1,...,PM4は入力データの種類に応じて入力データを処理する。
例えば、次のことを想定する:データ処理モジュールPM1がビタビ復号化を実行する。そして、復調信号DSに含まれる畳み込み符号化された入力データをデータ処理モジュールPM1に供給することができる。従って、データ処理モジュールPM1は復号化された入力データを供給し、この入力データは一時的にメモリMEMに記憶することができる。データ処理モジュールPM2はその後に、この復号化された入力データを処理する。こうして、マルチプロセッサシステムMPSは、復調信号DSから生じる入力データ用の処理チェーンを提供する。この処理チェーンは次のように記述することができる:入力データ処理モジュールPM1(ビタビ復号化)−データ処理モジュールPM2(さらなる処理)−出力。
マルチプロセッサシステムMPSは種々の異なる処理チェーンを提供することができる。より詳細には、マルチプロセッサシステムMPSは、1つの処理チェーンによって特定種類の入力データを処理し、同時に、他の処理チェーンによって他の種類の入力データを処理することができる。即ち、マルチプロセッサシステムMPSは種々の異なる処理を同時に実行する。特に、マルチプロセッサシステムMPSは前述したようにマルチクロック方式で動作するので、このことは同期及び優先順位付けの意味での調整を必要とする。
システムプロセッサSPRは調整機能を有する。例えば、システムプロセッサSPRはマルチプロセッサシステムMPS内の種々のイベントの発生を監視し、そして特定イベントが発生した際に適切な行動をとることができる。それにもかかわらず、マルチプロセッサシステムMPSは、1つ以上のデータ処理モジュールPM1,...,PM4のリセット、あるいはマルチプロセッサシステムMPS全体のリセットを必要とする状態に達し得る。リセットは、システムプロセッサSPRがとる適切な行動を構成することもできる。電力消費を節減することは、1つ以上のデータ処理モジュールPM1,...,PM4、さらにはマルチプロセッサシステムMPS全体をリセットする他の理由となり得る。
データ処理モジュールをリセットすることは、データ処理モジュールを明確な初期状態にもっていく。このことは、ブロック(阻止)されていた1つ以上の処理のブロックを解除することができ、これにより適正に再開することができる。マルチプロセッサシステムMPSがリセットされる際にも同じことが当てはまり、リセットはマルチプロセッサシステムMPSを明確な初期状態にもっていき、このことは、処理を再開するか新たな処理を開始するための適正な開始点を提供する。
前述したように、リセットモジュールRSMは種々のリセット要求信号HRG、SRG、SRP1,...,SRP4を受信する。これらの要求は、ハードウェア・グローバル(全体)リセット要求信号HRG、ソフトウェア・グローバルリセット要求信号SRG、及びデータ処理モジュールPM1,...,PM4毎に1つの種々のプロセッサリセット要求信号SRP1,...,SRP4を含む。リセット要求信号は、例えば2つの異なる値をとることのできるバイナリ信号の形にすることができる。これらの値の1つは例えばバイナリ0であり、リセット要求を表現する。
例えば、ハードウェア・グローバルリセット要求信号HRGがバイナリ0である際に、マルチプロセッサシステムMPS全体をリセットする要求が存在する。ソフトウェア・グローバルリセット要求信号SRGがバイナリ0である際にも同様の要求が存在する。リセット要求信号SRP1がバイナリ0である際に、データ処理モジュールPM1をリセットする要求が存在する。同様に、プロセッサの要求信号SRP2、SRP3、SRP4がそれぞれバイナリ0である際に、データ処理モジュールPM2、PM3、PM4をリセットする要求が存在する。
「リセット要求」に関連する「ハードウェア」とは、リセット要求が、例えばボタンを押すことまたはマルチプロセッサシステムMPS内の特定の物理的事象(イベント)の発生のような物理的起源を有することを示す。逆に、「リセット要求」に関連する「ソフトウェア」とは、リセット要求が、例えばソフトウェアプログラムの一部を形成するリセット命令を実行するソフトウェアプログラムのような論理的起源を有することを示す。このリセット命令はリセットレジスタ内の特定ビットの形をとることができる。
ハードウェア・グローバルリセット要求信号HRGは、例えば外部押しボタンから発生することができ、このことはユーザがマルチプロセッサシステムをリセットすることを可能にする。外部押しボタンが押されると、ハードウェア・グローバルリセット要求信号HRGはリセット要求を表現する値をとる。ハードウェア・グローバルリセット要求信号HRGは、例えば、特定電圧が所定しきい値電圧を超えているか否かを検出する検出回路から発生することもできる。
ソフトウェア・グローバルリセット要求信号SRGはシステムプロセッサSPRから発生することができる。イベントの特定シーケンスがマルチプロセッサシステムMPS内に発生すると、システムプロセッサSPRはグローバルリセット要求を発行することができる。即ち、このイベントの特定シーケンスはシステムソフトウェアをリセット命令に到達させる。このリセット命令は、ソフトウェア・グローバルリセット要求信号SRGをバイナリ0にし、これがグルーバルリセット要求を表現する。
1つ以上のプロセッサリセット要求信号SRP1,...,SRP4もシステムプロセッサSPRから発生することができる。プロセッサリセット要求は、ソフトウェア・グローバルリセット要求に関して前述したものと同様のソフトウェアベースのメカニズムから発生することができる。プロセッサリセット要求信号は、1つ以上のデータ処理モジュールPM1,...,PM4からも発生することができる。
例えば、次のことを想定する:データ処理モジュールPM3及びデータ処理モジュールPM4が処理チェーンを形成する。データ処理モジュールPM3は、処理チェーン内のリセットを要求するイベントの発生を検出することができる。これに応答して、データ処理モジュールPM3は、プロセッサリセット要求信号SRP4をバイナリ0にすることによって、データ処理モジュールPM4に関係するプロセッサリセット要求を発行することができる。データ処理モジュールPM3はプロセッサリセット要求信号SRP3をバイナリ0にすることもでき、このことは自動リセット要求と考えることができる。
前述したように、リセットモジュールRSMは、リセットモジュールRSMが受信する種々のリセット要求信号HRG、SRG、SRP1,...,SRP4及び状態信号STA、STBに基づいて種々のリセット信号GRS、PRS1,...,PRS4を供給する。より詳細には、リセットモジュールRSMはグローバルリセット信号GRSをシステムプロセッサSPRに供給し、そして、種々のプロセッサリセット信号PRS1,...,PRS4を、データ処理モジュールPM1,...,PM4毎にそれぞれ1つ供給する。グローバルリセット信号GRSは、1つ以上のデータ処理モジュールPM1,...,PM4にも供給することができる。例えば、グローバルリセット信号GRS及びリセット信号PRS1をOR(論理和)ゲートに供給することができる。こうした変形例では、このORゲートがデータ処理モジュールPM1用のリセット信号を供給する。データ処理モジュールPM2,...,PM4用のそれぞれのリセット信号も同様の方法で得ることができる。
リセット信号は、例えば2つの異なる値をとることのできるバイナリ信号の形にすることができる。例えば、バイナリ1からバイナリ0への遷移がリセットを開始する。リセットは関係する実体を明確な初期状態にもっていくことができ、この実体はデータ処理モジュールPM1,...,PM4またはシステムプロセッサSPRのうちの1つであり得る。関係する実体は、逆の遷移後に初期状態を離れることができ、このことはリセット信号が再びバイナリ1になることを意味する。従って、リセットモジュールRSMは、リセット信号のバイナリ1への再度のリセット設定後に、関係する実体を解放することができる。
リセットモジュールRSMは、種々のリセット要求信号HRG、SRG、SRP1,...,SRP4及び状態信号STA、STBを受信し、リセット要求を優先順位付け及びタイミング方式に従って処理する。この方式は、マルチプロセッサシステムMPSがリセット後に正しく動作することを保証すべきである。優先順位付け及びタイミング方式の1つの態様は、異なるリセット要求に異なる優先順位を割り当てることである。
例えば、次のことを想定する:2つのリセット要求が同時または比較的短い時間間隔内に発生し、一方のリセット要求はデータ処理モジュールPM1に関係し、他方のリセット要求はデータ処理モジュールPM2に関係する。まずデータ処理モジュールPM1のリセットを開始し、これに続いて所定クロックサイクル数後にデータ処理モジュールPM2のリセットを開始することが有利であり得る。このように優先順位付けしてタイミングをとったリセットは、マルチプロセッサシステムMPSが1つ以上の処理を適切な方法で終了することを可能にする。このことは、マルチプロセッサシステムMPSが、それぞれのリセット後に適正に再起動することを可能にする。
優先順位付け及びタイミング方式の他の態様は、リセット後の解放に関係するものとすることができる。例えば、次のことを想定する:データ処理モジュールPM2及びデータ処理モジュールPM3が処理チェーンを形成する。まずデータ処理モジュールPM2が、リセットによって生じた初期状態から起動し、そして所定の最小クロックサイクル数後に初めて、データ処理モジュールPM3が初期状態から起動する。即ち、リセットモジュールRSMは、データ処理モジュールPM2が初期状態から解放されて初めて、データ処理モジュールPM3を初期状態から解放する。従って、リセットモジュールRSMは、リセット後に「物事が再び混乱する」ことを防止する。
マルチプロセッサシステムMPSの異なる実現の各々が、ハードウェア及びソフトウェアの意味で、その実現に特有の異なる優先順位付け及びタイミング方式を必要とする。例えば、特定実現では、メモリMEMがレディ(動作準備完了)状態である際のみに、リセットモジュールRSMがデータ処理モジュールを、リセットによって生じた初期状態から解放することができる。メモリMEMがレディ状態であることは、データ処理モジュールPM1,...,PM4がメモリMEMにデータを書き込み、メモリMEMからデータを読み出すことができることを意味する。
状態信号STAは、メモリMEMがレディ状態であるか否かを示すことができる。例えば、状態信号STAがバイナリ1である際にはメモリMEMがレディ状態であり、状態信号STAがバイナリ0である際にはメモリMEMがレディ状態ではない。こうした実現では、優先順位付け及びタイミング方式は、状態信号STAを考慮に入れてデータ処理モジュールを解放する時点を決定する。
リセットモジュールRSMはマルチプロセッサシステムMPSの特定実現の開発を促進する。このことは、ソフトウェア関係では特に正しい。システムソフトウェアプログラム、及びデータ処理モジュールPM1,...,PM4用の種々の処理ソフトウェアプログラムを開発しなければならないソフトウェア設計者(デザイナー)は、リセット関係の問題を考慮に入れる必要がない。このことは、リセットモジュールRSMが、マルチプロセッサシステムMPSの特定ハードウェア実現における多くのリセット関係の問題に対処することによる。前に説明したように、リセットモジュールRSMは、マルチプロセッサシステムMPS内に発生し得る種々の異なるリセット要求に関係する優先順位付け及び同期の問題に対処する。ソフトウェア設計者は、例えば新たなシステムソフトウェアプログラムまたは新たな処理ソフトウェアプログラム、あるいはその両方を所定のハードウェアプラットフォーム用に開発しなければならない際に、その作業をより容易にすることができる。
図3に、リセットモジュールRSMを示す。リセットモジュールRSMは、リセット要求レジスタRQR、要求処理モジュールRHM、及びリセット実行レジスタRERを具えている。リセット要求レジスタRQRは種々のセルを、リセット要求信号HRG、SRG、SRP1,...,SRP4毎に1つ具えている。リセット実行レジスタRERにも同じことが当てはまる。
要求処理モジュールRHMは、例えば1つ以上のカウンタ、ラッチ、ゲート等のような種々の論理回路を具えることができる。要求処理モジュールRHMは、要求処理モジュールRHMのそれぞれの入力とそれぞれの出力との間のそれぞれの転送機能を規定するプログラマブル論理回路も具えることができる。不揮発性メモリに含まれ、プログラマブル論理回路に供給されるプログラミングデータがこれらの論理転送機能を規定する。要求処理モジュールRHMはソフトウェアベースのものとすることもできる。こうした実現では、要求処理モジュールRHMは、それぞれの論理転送機能を提供する適切にプログラムされたプロセッサを具えている。
リセットモジュールRSMは次のように動作する。リセット要求レジスタRQRは、リセット要求信号HRG、SRG、SRP1,...,SRP4が搬送するリセット要求信号を記憶する。例えば、ハードウェア・グローバルリセット要求信号HRGが、グローバルリセット要求を負の小パルスの形で含むものと仮定する。バイナリ1からバイナリ0への遷移が存在し、比較的短時間後に逆の遷移が存在する。最初に述べた遷移は、ハードウェア・グローバルリセット要求信号HRG用のセル内のビットをクリア(消去)する。このビットはバイナリ0になり、逆の遷移が生じた後にもこの値に留まる。このビットは、例えばグローバルリセット要求信号が許可されると再びバイナリ1に設定することができる。
ハードウェア・グローバルリセット要求信号HRG用のセルは、記憶中のハードウェア・グローバルリセット要求信号MHRGを要求処理モジュールRHMに供給する。記憶中のハードウェア・グローバルリセット要求信号MHRGは、このセル内のビットの値に対応する値を有する。同様の方法で、リセット要求レジスタRQRは、受信したソフトウェア・グローバルリセット要求信号SRG及びそれぞれのプロセッサリセット要求信号SRP1,...,SRP4に基づいて、記憶中のソフトウェア・グローバルリセット要求信号MSRG、及び記憶中のプロセッサリセット要求信号MSRG、MSRP1,...,MSRP4のそれぞれを要求処理モジュールRHMに供給する。従ってリセット要求レジスタRQRは、種々の異なる記憶中のリセット要求信号MHRG、MSRG、MSRP1,...,MSRP4を要求処理モジュールRHMに供給する。
要求処理モジュールRHMは、種々の異なる記憶中のリセット要求信号MHRG、MSRG、MSRP1,...,MSRP4に応答して、種々の異なる許可リセット要求信号GHRG、GSRG、GSRP1,...,GSRP4を供給する。許可リセット要求信号は、特定の記憶中のリセット要求信号に関連し、リセット要求信号が搬送したリセット要求が許可されたか否かを示す。従って、要求処理モジュールRHMは許可ハードウェア・グローバルリセット要求信号GHRGを供給し、この信号はハードウェア・グローバルリセット要求が許可されたか否かを示す。
許可ハードウェア・グローバルリセット要求信号CHRGは、例えば、ハードウェア・グローバルリセット要求信号が許可されたことを示すバイナリ0であるか、あるいは、前述した要求が許可されていないことを示すバイナリ1であるバイナリ信号とすることができる。同様の方法で、リセット要求レジスタRQRは許可ソフトウェア・グローバルリセット要求信号CSRG、及びそれぞれの許可プロセッサリセット要求信号GSRP1,...,GSRP4を供給する。
リセット実行レジスタRERは、リセット処理モジュールRHMが許可したリセット要求を記憶する。リセット実行レジスタRERは、これらの許可されたリセット要求を、リセットモジュールRSMが受信したリセット要求をリセット要求レジスタRQRが記憶するのと同様の方法で記憶する。リセット実行レジスタRERは、許可ハードウェア・グローバルリセット要求信号GHRG用のセル、及び許可ソフトウェア・グローバルリセット要求信号GSRG用のセルを具えている。これらのセルはそれぞれ、実行ハードウェア・グローバルリセット要求信号EHRG及び実行ソフトウェア・グローバルリセット信号ESRGをORゲートに供給する。このORゲートは、図2に示すグローバルリセット信号GRSを供給する。リセット実行レジスタRERは、それぞれの許可プロセッサリセット要求信号GSRP1,...,GSRP4毎にセルを具えている。これらのセルは、図2に示すそれぞれのプロセッサリセット信号PRS1,...,PRS4を直接供給する。
リセット要求レジスタRQR及びリセット実行レジスタRERは、マルチプロセッサシステムMPSのいわゆるデバッグを促進する。デバッグは一般に特定のソフトウェアプログラムが関与し、このソフトウェアプログラムは一般にデバッガと称され、監視機能を有する。即ち、デバッガは、マルチプロセッサシステム内で発生していることを監視して、不具合にあり得る原因を検出する。またデバッガは、リセット関係の信号に特定の値を与えてマルチプロセッサシステムを制御する。
例えば、マルチプロセッサシステムMPSは、特定のイベント・シーケンスの結果として不所望な状態に達することがあり、このシーケンスは1つ以上のリセットを含み得る。リセット要求レジスタRQR及びリセット実行レジスタRERはそれぞれ、要求されたリセット及び実行されるリセットについての正確な情報を提供する。デバッガは、これらのレジスタを読み取って、マルチプロセッサシステムMPS内で発生していることのより良好な図式を有することができる。従って、リセット要求レジスタRQR及びリセット実行レジスタRERはマルチプロセッサシステムMPS内のイベントの可観測性に寄与し、このことは不具合にあり得る原因のより良好な理解を可能にする。マルチプロセッサシステムMPSが満足に機能する点に達するために必要とする開発労力は一般に、比較的少なくなる。
(結言)
以上の図面を参照した詳細な説明は、種々の独立請求項に挙げる次の特徴を例示している。データ処理装置(MPS)が、独立してリセットすることのできる複数のデータプロセッサ(SPR、PM1,...,PM4)を具えている。リセットモジュール(RSM)が、種々のリセット要求信号(HRG、SRG、SRP1,...,SRP4)を優先順位付け及びタイミング方式に従って処理して、それぞれのデータプロセッサ(SPR、PM1,...,PM4)用のそれぞれのリセット信号(GRS、PRS1,...,PRS4)を得る。
以上の詳細な説明はさらに、従属請求項に挙げる種々の随意的な特徴を例示している。これらの特徴は、前述した特徴と組み合わせて有利に応用することができる。種々の随意的特徴は以下の段落で強調する。各段落が特定の従属請求項に対応する。
リセットモジュール(RSM)が、それぞれのリセット要求信号(HRG、SRG、SRP1,...,SRP4)が搬送するそれぞれのリセット要求を記憶するためのリセット要求レジスタ(RQR)を具えている。このことは比較的高速かつ低コストの設計に寄与する、というのは、例えば、リセットモジュール(RSM)に与えられたリセット要求をデバッガが監視することができるからである。
リセットモジュール(RSM)が、それぞれのリセット信号(GRS、PRS1,...,PRS4)が搬送するそれぞれの許可されたリセット要求を記憶するためのリセット実行レジスタ(RER)を具えている。このことは、比較的高速かつ低コストの設計に寄与する、というのは、例えば、リセットモジュール(RSM)が許可したリセット要求をデバッガが監視することができるからであり、これらのリセット要求がリセットを生じさせる。
リセットモジュール(RSM)が、データ処理装置(MPS)内の状態を示す少なくとも1つの状態信号(STA、STB)に基づいて、それぞれのリセット要求信号(HRG、SRG、SRP1,...,SRP4)を処理する。このことは不適切なリセットを防止して、マルチプロセッサシステムの満足な動作に寄与する。
リセットモジュール(RSM)が、優先順位付け及びタイミング方式を規定する論理回路のアセンブリを具えている。このことは、比較的低コストの実現を可能にする。
リセットモジュール(RSM)が、優先順位付け及びタイミング方式を規定するプログラマブル論理回路を具えている。このことは適度なコストでのフレキシビリティ(柔軟性)を可能にする。
前述した特徴は多くの異なる方法で実現することができる。このことを例示するために、いくつかの代案を簡単に示す。
前述した特徴はあらゆる種類のデータ処理装置において実現することができる。セルラ電話機、及びセルラ電話機用のマルチプロセッサシステムは単なる例に過ぎない。このデータ処理装置は、これらと同等に、例えばテレビジョン受像機、携帯型ビデオプレーヤ及びパーソナルコンピュータ、セットトップボックス、パーソナル・ディジタル・アシスタント(個人用携帯情報端末)、等、あるいは前述した製品のいずれかのためのシステムオンチップとすることができる。
リセット要求信号はあらゆる形をとることができる。以上の詳細な説明は、バイナリ信号の形であるリセット要求信号の例を記載している。バイナリ0がリセット要求を表現する。逆に、他のリセット要求信号では、バイナリ1がリセット要求を表現することができる。リセット要求信号は必ずしもバイナリ信号である必要はない。重要なことは、リセット要求信号がリセット要求を搬送することができることに尽きる。同様の所見はリセット信号にも当てはまり、あらゆる形をとることができる。重要なことは、リセット信号がデータプロセッサをリセット状態にもっていき、その後にこのデータプロセッサをリセット状態から解放することができることに尽きる。
リセット要求信号はあらゆる発生源を有することができる。状態信号にも同じことが当てはまる。リセット要求信号は、例えばデータ処理装置上で実行されるあらゆるソフトウェアプログラムから発生することができる。リセット要求信号は、他の外部のデータ処理装置上で実行されるソフトウェアプログラムからも発生することができる。状態信号も外部の実体から発生することができる。同じデータプロセッサに関係するリセット要求を搬送するための、異なるリセット要求信号が存在し得る。例えば、図2に示すマルチプロセッサシステムは、処理モジュールPM1用に2つのリセット要求信号が存在し、一方はハードウェアリセットに関係するリセット要求信号、他方はソフトウェアリセットに関係するリセット要求信号とすることができる。
リセットモジュールは多くの異なる方法で実現することができる。リセットモジュールは、リセットモジュールの動作を規定する種々の素子及びこれらの素子間の相互接続を具えた専用回路とすることができる。リセットモジュールは、プログラミングデータを有するプログラマブルメモリを具えたプログラマブル回路とすることもできる。こうした実現では、プログラミングデータを変更することによってリセットモジュールが実行する動作を変更することができる。実現を例示する図3を参照すれば、リセットモジュールが、リセット要求レジスタとリセットモジュールのそれぞれの出力との間に結合される論理回路の多くの異なる構成を具えることができる。リセット要求レジスタは、論理回路の介在なしにそれぞれのリセット信号を直接供給することもできる。
「データプロセッサ」は広い意味に理解すべきである。この用語は、あらゆる種類の入力データを処理することのできるあらゆる回路またはシステムを含む。
ハードウェアまたはソフトウェア、あるいはその両方のアイテム(品目)によって機能を実現する多くの方法が存在する。この関係では、各図面は非常に概略的なものであり、各々が本発明の1つの可能な実施例を表現するに過ぎない。従って、図面は異なる機能を異なるブロックとして示しているが、このことは決して、単一のハードウェアまたはソフトウェアのアイテムがいくつかの機能を実行することを排除するものではない。また、ハードウェアまたはソフトウェア、あるいはその両方のアイテムのアセンブリが1つの機能を実行することを排除するものでもない。
以上で行った説明は、図面を参照した詳細な説明が本発明を限定するものではなく例示するものであることを明らかにするものである。請求項の範囲内に入る多くの代案が存在する。「具える」等は、請求項中に挙げた以外の要素またはステップの存在を排除するものではない。各構成要素またはステップは複数存在し得る。
セルラ電話機を示すブロック図である。 セルラ電話機の一部を形成するマルチプロセッサシステムを示すブロック図である。 マルチプロセッサシステムの一部を形成するリセットモジュールを示す図である。

Claims (10)

  1. 独立してリセットすることのできる複数のデータプロセッサと;
    種々のリセット要求信号を、優先順位付け及びタイミング方式に従って処理して、それぞれの前記データプロセッサ用のそれぞれのリセット信号を得るためのリセットモジュールと
    を具えていることを特徴とするデータ処理装置。
  2. 前記リセットモジュールが、
    前記リセット要求信号が搬送するそれぞれのリセット要求を記憶するためのリセット要求レジスタを具えていることを特徴とする請求項1に記載のデータ処理装置。
  3. 前記リセットモジュールが、
    前記リセット信号のそれぞれが搬送するそれぞれの許可されたリセット要求を記憶するためのリセット実行レジスタを具えていることを特徴とする請求項1に記載のデータ処理装置。
  4. 前記リセットモジュールが、前記リセット要求信号のそれぞれを、前記データ処理装置内の状態を示す少なくとも1つの状態信号に基づいて処理するように構成されていることを特徴とする請求項1に記載のデータ処理装置。
  5. 前記リセットモジュールが、前記優先順位付け及びタイミング方式を規定する論理回路のアセンブリを具えていることを特徴とする請求項1に記載のデータ処理装置。
  6. 前記リセットモジュールが、前記優先順位付け及びタイミング方式を規定するプログラマブル論理回路を具えていることを特徴とする請求項1に記載のデータ処理装置。
  7. 独立してリセットすることのできる複数のデータプロセッサによってデータを処理する方法において、
    種々のリセット要求信号を、優先順位付け及びタイミング方式に従って処理して、それぞれの前記データプロセッサ用のそれぞれのリセット信号を得るリセット処理ステップを具えていることを特徴とするデータ処理方法。
  8. 独立してリセットすることのできる複数のデータプロセッサを具えたデータ処理装置用のコンピュータプログラム製品において、
    前記データ処理装置にロードした際に、前記データ処理装置に請求項7に記載の方法を実行させる一組の命令を具えていることを特徴とするコンピュータプログラム製品。
  9. 請求項1に記載のデータ処理装置を具えている装置。
  10. さらに、送信−受信回路を具え、前記データ処理装置が、前記送信−受信回路からの信号を処理するように構成されていることを特徴とする請求項9に記載の装置。
JP2008537240A 2005-10-25 2006-09-26 リセット装置を具えたデータ処理装置 Pending JP2009514084A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05300857 2005-10-25
PCT/IB2006/053501 WO2007049162A2 (en) 2005-10-25 2006-09-26 Data processing arrangement comprising a reset facility.

Publications (1)

Publication Number Publication Date
JP2009514084A true JP2009514084A (ja) 2009-04-02

Family

ID=37899112

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008537240A Pending JP2009514084A (ja) 2005-10-25 2006-09-26 リセット装置を具えたデータ処理装置

Country Status (5)

Country Link
US (1) US8176302B2 (ja)
EP (1) EP1943580A2 (ja)
JP (1) JP2009514084A (ja)
CN (1) CN101297256A (ja)
WO (1) WO2007049162A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012198805A (ja) * 2011-03-22 2012-10-18 Denso Corp 制御装置
JP2012198806A (ja) * 2011-03-22 2012-10-18 Denso Corp 制御装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5063212B2 (ja) 2007-06-25 2012-10-31 株式会社日立産機システム 複数コンポーネントシステム
US8495422B2 (en) 2010-02-12 2013-07-23 Research In Motion Limited Method and system for resetting a subsystem of a communication device
CN102385433B (zh) * 2010-08-31 2014-08-06 无锡中星微电子有限公司 一种系统级复位的方法及装置
DE102012204644B4 (de) 2011-03-22 2018-08-09 Denso Corporation Steuervorrichtung
US20130185547A1 (en) * 2012-01-13 2013-07-18 Rick Sturdivant Signal reset circuit for wireless communication systems
CN102981587A (zh) * 2012-12-28 2013-03-20 中国电子科技集团公司第五十四研究所 一种适用于多核处理器的复位方法
US20160070320A1 (en) * 2014-09-10 2016-03-10 Microsoft Corporation Individual Device Reset and Recovery in a Computer
CN108121571A (zh) * 2017-12-21 2018-06-05 郑州云海信息技术有限公司 一种基于系统硬件模块的独立复位设计与实现
IT202200006458A1 (it) * 2022-04-01 2023-10-01 Stmicroelectronics Application Gmbh Sistema di elaborazione, relativo circuito integrato, dispositivo e procedimento

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189089A (ja) * 1991-12-13 1993-07-30 Mitsubishi Electric Corp データ処理システム
JPH05324597A (ja) * 1992-05-20 1993-12-07 Mutoh Ind Ltd マルチプロセッサシステムのリセット回路
JPH08179857A (ja) * 1994-12-22 1996-07-12 Nec Eng Ltd リセット回路
JPH1020968A (ja) * 1996-07-08 1998-01-23 Matsushita Electric Ind Co Ltd 選択的ハードウェア・リセット回路
JP2002312334A (ja) * 2001-04-16 2002-10-25 Sharp Corp マルチプロセッサシステム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55118225A (en) * 1979-03-05 1980-09-11 Nec Corp Priority competition circuit
US5070450A (en) * 1990-05-25 1991-12-03 Dell Usa Corporation Power on coordination system and method for multiple processors
JPH04205118A (ja) * 1990-11-30 1992-07-27 Hitachi Ltd データ処理システム
EP0591437B1 (en) * 1991-06-26 1997-10-01 AST RESEARCH, Inc. Multiprocessor distributed initialization and self-test system
JPH05210529A (ja) * 1992-01-31 1993-08-20 Fujitsu Ltd マルチプロセッサシステム
GB2290891B (en) * 1994-06-29 1999-02-17 Mitsubishi Electric Corp Multiprocessor system
US6601165B2 (en) * 1999-03-26 2003-07-29 Hewlett-Packard Company Apparatus and method for implementing fault resilient booting in a multi-processor system by using a flush command to control resetting of the processors and isolating failed processors
US6467007B1 (en) * 1999-05-19 2002-10-15 International Business Machines Corporation Processor reset generated via memory access interrupt
JP4144990B2 (ja) * 2000-01-14 2008-09-03 富士通株式会社 データ処理システム及び初期化方法
US6665795B1 (en) * 2000-10-06 2003-12-16 Intel Corporation Resetting a programmable processor
US7251723B2 (en) * 2001-06-19 2007-07-31 Intel Corporation Fault resilient booting for multiprocessor system using appliance server management
JP4353005B2 (ja) * 2004-06-29 2009-10-28 株式会社日立製作所 クラスタ構成コンピュータシステムの系切替方法
US7734903B2 (en) * 2005-12-08 2010-06-08 Electronics And Telecommunications Research Institute Multi-processor system and method for controlling reset and processor ID thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189089A (ja) * 1991-12-13 1993-07-30 Mitsubishi Electric Corp データ処理システム
JPH05324597A (ja) * 1992-05-20 1993-12-07 Mutoh Ind Ltd マルチプロセッサシステムのリセット回路
JPH08179857A (ja) * 1994-12-22 1996-07-12 Nec Eng Ltd リセット回路
JPH1020968A (ja) * 1996-07-08 1998-01-23 Matsushita Electric Ind Co Ltd 選択的ハードウェア・リセット回路
JP2002312334A (ja) * 2001-04-16 2002-10-25 Sharp Corp マルチプロセッサシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012198805A (ja) * 2011-03-22 2012-10-18 Denso Corp 制御装置
JP2012198806A (ja) * 2011-03-22 2012-10-18 Denso Corp 制御装置

Also Published As

Publication number Publication date
US20090019274A1 (en) 2009-01-15
WO2007049162A3 (en) 2007-07-26
CN101297256A (zh) 2008-10-29
US8176302B2 (en) 2012-05-08
EP1943580A2 (en) 2008-07-16
WO2007049162A2 (en) 2007-05-03

Similar Documents

Publication Publication Date Title
JP2009514084A (ja) リセット装置を具えたデータ処理装置
KR101343714B1 (ko) 공유된 비휘발성 메모리 아키텍쳐
US9939869B2 (en) Methods and systems for coordination of operating states amongst multiple SOCs within a computing device
US20180329837A1 (en) Input/output direction decoding in mixed vgpio state exchange
US9787571B2 (en) Link delay based routing apparatus for a network-on-chip
JP4652394B2 (ja) マルチバーストプロトコルデバイスコントローラ
US4573117A (en) Method and apparatus in a data processor for selectively disabling a power-down instruction
KR19990006743A (ko) 데이타처리장치 및 이동체통신단말장치
CN110955624B (zh) 一种pcie设备的热插拔方法、装置和系统
US6378022B1 (en) Method and apparatus for processing interruptible, multi-cycle instructions
US11663011B2 (en) System and method of VLIW instruction processing using reduced-width VLIW processor
US9990317B2 (en) Full-mask partial-bit-field (FM-PBF) technique for latency sensitive masked-write
JP2006244382A (ja) マイクロプロセッサ
KR101012216B1 (ko) 무선 통신 디바이스에 소프트웨어를 다운로드하기 위한 시스템 및 방법
WO2002061582A2 (en) Event handling
US6041371A (en) Asynchronous input/output for integrated circuits that latches external asynchronous signal in feedback path of state machine
US7434223B2 (en) System and method for allowing a current context to change an event sensitivity of a future context
US20060161422A1 (en) Virtual emulation modules, virtual development systems and methods for system-on-chip development
CN101091159A (zh) 数据处理装置
JP5540678B2 (ja) 情報処理装置
US10101795B2 (en) System-on-chip (SoC) and method for dynamically optimizing power consumption in the SoC
JP2005531084A (ja) 情報を転送する方法および装置
US9716646B2 (en) Using thresholds to gate timing packet generation in a tracing system
CN101911049B (zh) 处理架构
JP2007026091A (ja) 割込み制御回路およびその制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091020

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100119

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100323