JP5292706B2 - コンピュータシステム - Google Patents

コンピュータシステム Download PDF

Info

Publication number
JP5292706B2
JP5292706B2 JP2007049458A JP2007049458A JP5292706B2 JP 5292706 B2 JP5292706 B2 JP 5292706B2 JP 2007049458 A JP2007049458 A JP 2007049458A JP 2007049458 A JP2007049458 A JP 2007049458A JP 5292706 B2 JP5292706 B2 JP 5292706B2
Authority
JP
Japan
Prior art keywords
instruction
error
circuit
register
cpu
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.)
Expired - Fee Related
Application number
JP2007049458A
Other languages
English (en)
Other versions
JP2008217070A (ja
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.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
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 Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2007049458A priority Critical patent/JP5292706B2/ja
Priority to US12/036,634 priority patent/US8423834B2/en
Publication of JP2008217070A publication Critical patent/JP2008217070A/ja
Application granted granted Critical
Publication of JP5292706B2 publication Critical patent/JP5292706B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Description

本発明は、一般にコンピュータシステム及びメモリシステムに関し、詳しくはエラーチェック機能付きのメモリを使用したコンピュータシステム及びメモリシステムに関する。
例えば自動車に搭載する用途のマイコンシステムにおいては、安全性を確保するために、ECCチェック機能やパリティチェック機能を備えたメモリが要求される。ECCによるデータ訂正機能を有したECCメモリ(Error Check and Correct Memory)においては、書き込み対象であるデータからエラー訂正用の冗長ビットを計算し、計算された冗長ビットを書き込み対象であるデータとともにメモリコアに格納する。読み出し時には、読み出したデータ及び冗長ビットにより、データ(及び冗長ビット)にエラーがあるか否かを検出し、エラーがある場合にはエラー訂正を行う。例えばハミング符号を用いてエラー訂正を実現する場合には、符号中に1ビットの誤りが発生した場合にエラー訂正が可能であり、2ビットの誤りが発生した場合にエラー検出が可能である。パリティチェック機能を有したECCメモリでは、書き込み対象であるデータからエラー検出用のパリティビットを計算し、計算されたパリティビットを書き込み対象であるデータとともにメモリコアに格納する。読み出し時には、読み出したデータ及びパリティビットにより、データ(及びパリティビット)にエラーがあるか否かを検出する。
CPUがメモリから命令コードをフェッチする際に、メモリでエラーが発生し、正しい命令コードをCPUコアに供給することができない場合がある。このような場合、誤った命令を実行してしまうことを避けるためにCPUを停止させるのでは、マイコンシステムとしての処理が停止してしまい、車載システム等の場合には安全性に問題が生じてしまう。そこでこれを回避する1つの方法として、命令コードのアクセス時にエラーが発生すると、エラー発生に応答して外部割込みをCPUコアに入力する方法がある。
しかしエラー発生に応答して外部割込みをCPUに入力する構成では、割込みルーチンにジャンプする前に、エラーが発生した命令コード(エラー発生中のメモリが出力しCPUが読み込んだ誤った命令コード)を実行してしまう可能性がある。また命令フェッチ、命令デコード、演算実行、及びメモリアクセス等の各段階を重複させて実行するパイプライン構造となっているCPUにおいて、現在デコード中のジャンプ命令がジャンプすると命令デコード部で判断した場合、命令フェッチ部にフェッチされている次の命令を使用しないことがある。このような場合にも命令フェッチ時のエラー発生に応答して外部割込みをかけてしまうと、実際には実行しない命令(ジャンプ命令の次の命令でありジャンプの結果実行されない命令)に対してエラーが発生したのにも関わらず、無意味な割込みを発生させてしまうことがある。
従来技術には、アクセス動作の度にアクセス先のアドレスをレジスタに常に格納するようにしておき、エラーが発生した時点でレジスタへの格納動作を停止することにより、エラー発生時のアクセス先のアドレスをレジスタ値として記録する技術がある(例えば、特許文献1参照。)。またリード時にメモリエラー等が発生した時に、エラーとなったデータの代りにCPUが実行できるデータをバス上に出力し、同時に割込みをかける技術がある(例えば、特許文献2参照。)。
特開平03−098129号公報 特開平01−100636号公報
以上を鑑みて本発明は、メモリにおいて読み出しデータにエラーが発生した場合に、CPUを停止させることなく且つ無駄な割込みを実行することがないコンピュータシステム及びメモリシステムを提供することを目的とする。
コンピュータシステムは、CPUと、少なくとも命令コードを格納するメモリ回路と、該CPUから供給される命令アドレスに応じて該メモリ回路から読み出された命令コードのエラーをチェックするエラーチェック回路と、エラーが発生した時に該メモリ回路からのデータの代わりに該CPUへ出力するデータを保持するコード格納回路と、該メモリ回路と該コード格納回路とに入力が結合され、該エラーチェック回路によりエラー検出されない場合に該メモリ回路から読み出された該命令コードを選択的に出力し、該エラーチェック回路によりエラー検出された場合に該コード格納回路からの該データを選択的に出力する選択回路と、該選択回路の出力と該CPUとを接続するバスと、該エラーチェック回路によりエラー検出された場合にエラー発生有を示す値を格納する命令エラーレジスタとを含み、該CPUは、該バスを介してフェッチした命令を使用しない場合に該命令を使用しない旨を示す信号を出力するよう構成され、該命令エラーレジスタは該信号に応答してエラー発生無を示す値を格納する状態に設定され、該コード格納回路が保持する該データは、該CPUが該データをデコードすると、それに応じて該CPUが例外処理を実行するコードであり、該CPUは、該データをデコードした場合には該エラー検出による例外処理を実行し、該データデコードしない場合には該エラー検出による例外処理を実行しないことを特徴とする。
本発明の少なくとも1つの実施例によれば、読み出し命令コードにエラーが発生した場合には、未定義命令コードレジスタに格納される未定義命令コードをCPU回路にフェッチさせることにより、実際にCPU回路がその未定義命令コードを実行したときにのみCPU回路に例外処理を実行させることができる。従って、命令フェッチ時のエラー発生に応答してCPU回路に外部割込みをかけてしまう構成のように、実際には実行しない命令に対してエラーが発生したのにも関わらず、無意味な割込み/例外処理を発生させてしまうことがない。
また実際には実行しない命令に対してエラーが発生した場合には、CPU回路からアサートされる信号に応答して、エラー発生無を示す値を格納する状態に命令エラーレジスタを設定する。これにより、その後他の何らかの要因により外部からCPU回路への割込み処理やCPU回路内部での例外処理等が発生した場合でも、実際には例外処理の要因ではない命令読み出しエラー(実行されなかった命令の読み出し時に発生したエラー)が現在実行中の例外処理の要因であると誤って認識されることがない。
以下に、本発明の実施例を添付の図面を用いて詳細に説明する。
図1は、本発明によるコンピュータシステムの第1の実施例の構成の一例を示す図である。図1のコンピュータシステム10は、CPU回路11、フラッシュメモリ12、RAM13、選択回路14、未定義命令コードレジスタ15、ECC回路16、エラーアドレスレジスタ17、エラーデータレジスタ18、命令エラーレジスタ19、命令アドレスバス20、命令データバス21、データアドレスバス22、データバス23、及び制御信号線24を含む。命令アドレスバス20、命令データバス21、及び命令制御バス(図示せず)で命令バスを構成し、データアドレスバス22、データバス23、及びデータ制御バス(図示せず)でデータバスを構成する。また命令アドレスバス20、命令データバス21、データアドレスバス22、データバス23、及び制御信号線24を全て纏めてバスと呼ぶ場合がある。
フラッシュメモリ12は不揮発性の半導体記憶装置であり、CPU回路11が実行するプログラムを格納する。即ち、フラッシュメモリ12には、CPU回路11が実行するプログラムを構成する各命令の命令コードをプログラムの構成に応じた順番に格納されている。なお、フラッシュメモリ12からCPU回路11が命令を読み出す構成を例として本発明のシステムを説明するが、CPU回路11が命令を読み出す対象のメモリは不揮発性である必要はなく、例えばDRAM等の揮発性のメモリであってもよい。
ECC回路16は、CPU回路11から命令アドレスバス20を介して供給される命令アドレスに応じてフラッシュメモリ12から読み出された命令コードのエラーをチェックするエラーチェック回路である。ECC回路16は、エラーを検出するとECC_ERR信号をアサートする。ECC_ERR信号は選択回路14に供給されるとともに、エラーアドレスレジスタ17、エラーデータレジスタ18、及び命令エラーレジスタ19からなるレジスタ群に供給される。この例では、ECCによるデータ訂正・エラー検出機能を備えたエラーチェック回路を想定しているが、パリティチェックに基づくエラーチェック回路等でもよく、エラーチェックについては特定の方式に限定されるものではない。
未定義命令コードレジスタ15は、未定義命令コードを保持する格納回路である。ここで未定義命令コードとは、CPU回路11で未定義命令コードをデコードすると、それに応じてCPU回路11が例外処理を実行するようなコードである。この例外処理において、CPU回路11はベクタアドレスを出力し、フラッシュメモリ12のベクタアドレスから例外ハンドラの開始アドレスをフェッチする。CPU回路11は、この例外ハンドラの開始アドレスからプログラムの実行を開始することで、未定義命令発生時に実行すべき処理を実行する。
選択回路14は、(ECC回路16を介して)フラッシュメモリ12と未定義命令コードレジスタ15とに入力が結合され、ECC回路16によりエラー検出されない場合にフラッシュメモリ12から読み出された命令コードを選択的に出力し、ECC回路16によりエラー検出された場合に未定義命令コードレジスタ15からの未定義命令コードを選択的に出力する。即ち、選択回路14は、ECC回路16からのECC_ERR信号のデアサート状態に応答してフラッシュメモリ12から読み出された命令コードを選択的に出力し、ECC_ERR信号のアサート状態に応答して未定義命令コードレジスタ15からの未定義命令コードを選択的に出力する。選択回路14の出力は命令データバス21に接続されており、命令データバス21はCPU回路11に接続されている。
エラーアドレスレジスタ17は、ECC回路16によりエラー検出された場合にエラー発生時の命令アドレスバス20のアドレスを格納する。またエラーデータレジスタ18は、ECC回路16によりエラー検出された場合にエラー発生時のフラッシュメモリ12からの読み出しデータを格納する。
命令エラーレジスタ19は、ECC回路16によりエラー検出された場合にエラー発生有を示す値を格納する。即ち、命令エラーレジスタ19は、ECC_ERR信号のアサート状態に応答してエラー発生有を示す値として例えば1を格納する。CPU回路11は、選択回路14及び命令データバス21を介してフェッチした命令を使用しない場合には、その命令を使用しない旨を示す信号Not_usedを出力(アサート)するよう構成される。命令エラーレジスタ19は、信号Not_usedのアサートに応答してエラー発生無を示す値(例えば0)を格納する状態に設定される。例えば、信号Not_usedはCPU回路11から制御信号線24を介して命令エラーレジスタ19のリセット端子に供給されてよい。同様に、エラーアドレスレジスタ17及びエラーデータレジスタ18についても、信号Not_usedのアサートに応答して例えば0にリセットするよう構成してよい。
上記のようにCPU回路11が信号Not_usedを出力(アサート)する場合としては、CPU回路11がフェッチした命令がジャンプ命令であり、デコードしたジャンプ命令がジャンプすると判断した場合等である。即ちCPU回路11は、命令フェッチ、命令デコード、演算実行、及びメモリアクセス等の各段階を重複させて実行するパイプライン構造となっており、現在デコード中のジャンプ命令がジャンプすると命令デコード部で判断した場合、命令フェッチ部にフェッチされている次の命令を使用しない。この場合、CPU回路11が信号Not_usedを出力(アサート)することにより、現在フェッチ中の命令或いは最後にフェッチした命令が、実際には実行されない旨をアナウンスする。
上記の構成においては、読み出し命令コードにエラーが発生した場合には、未定義命令コードレジスタ15に格納される未定義命令コードをCPU回路11にフェッチさせることにより、実際にCPU回路11がその未定義命令コードを実行したときにのみCPU回路11に例外処理を実行させることができる。従って、命令フェッチ時のエラー発生に応答してCPU回路11に外部割込みをかけてしまう構成のように、実際には実行しない命令(ジャンプ命令の次の命令でありジャンプの結果実行されない命令)に対してエラーが発生したのにも関わらず、無意味な割込み/例外処理を発生させてしまうことがない。
また実際には実行しない命令に対してエラーが発生した場合には、CPU回路11からアサートされる信号Not_usedに応答して、エラー発生無を示す値(例えば0)を格納する状態に命令エラーレジスタ19を設定する。即ち、実行しない命令に対してエラーが発生した場合には、エラー発生有に一端セットされた命令エラーレジスタ19をリセットしてエラー発生無を示す状態にする。これにより、その後他の何らかの要因により外部からCPU回路11への割込み処理やCPU回路11内部での例外処理等が発生し、命令エラーレジスタ19を含めて種々のレジスタをチェックした場合に、実際には例外処理の要因ではない命令読み出しエラー(実行されなかった命令の読み出し時に発生したエラー)が、現在実行中の例外処理の要因であると誤って認識されることがない。
なおCPU回路11が未定義命令コードレジスタ15からの未定義命令コードを実行して例外処理を開始する場合には、その例外処理において、命令エラーレジスタ19をチェックしてよい。命令エラーレジスタ19をチェックすることにより、例外処理の要因がECC回路16によるエラー検出であると判断することができる。また更に、その例外処理において、エラーアドレスレジスタ17及びエラーデータレジスタ18の内容をチェックしてよい。これにより、エラーが発生した時のアドレス及びデータ内容を解析することが可能となる。
図2は、CPU回路11の構成の一例を示す図である。図2に示すCPU回路11は、
フェッチ部(F部)31、デコード部(D部)32、エグゼキュート部(E部)33、メモリアクセス部(M部)34、及び汎用レジスタ部35を含む。
汎用レジスタ部35は、汎用レジスタR0乃至R15及びプログラムカウンタPCを含む。プログラムカウンタPCは命令アドレスIA[31:0]を格納し、命令アドレスバス20(図1参照)に出力する。ここで[31:0]は32ビット幅のデータ(アドレス)のうちの第0ビットから第31ビットを示す。
フェッチ部31は、命令バスアクセス制御部40、命令レジスタTf、命令アドレスフェッチレジスタTia_fを含む。デコード部32は、命令シーケンサ41、切換回路42、選択回路43、命令アドレスデコードレジスタTia_dec、デコード結果レジスタTdec、演算レジスタTa及びTb、及びデータレジスタTddを含む。エグゼキュート部33は、算術論理演算ユニット(ALU)44、命令アドレスエグゼキュートレジスタTia_e、演算結果レジスタTe、及びデータレジスタTedを含む。メモリアクセス部34は、データバスアクセス制御部45、出力バッファ46及び47、入力バッファ48、及び命令アドレスメモリレジスタTia_mを含む。
プログラムカウンタPCから命令アドレスIA[31:0]が命令アドレスバス20に送出されると、それに応じた命令がフェッチ部31にフェッチされ、命令がデコード部32によりデコードされ、対応する演算がエグゼキュート部33により実行され、最後にメモリアクセスがメモリアクセス部34により実行される。この各段階に対応して、プログラムカウンタPCからの命令アドレスIA[31:0]は、命令アドレスフェッチレジスタTia_f、命令アドレスデコードレジスタTia_dec、命令アドレスエグゼキュートレジスタTia_e、及び命令アドレスメモリレジスタTia_mに順番に伝搬し格納される。
まずフェッチ部31において、プログラムカウンタPCから送出した命令アドレスに応じてフラッシュメモリ12(又は未定義命令コードレジスタ15)から読み出された命令コードID[31:0]が、命令データバス21を介して命令レジスタTfに格納される。この際、命令バスアクセス制御部40は命令シーケンサ41の制御下で動作して、命令バスアクセス動作を制御する。命令バスアクセス制御部40は例えば、命令アドレスバス20上に命令アドレスが出力されていることを示す命令アドレスストローブ信号を命令バスに出力したり、命令アクセス可能状態であることを示すレディ信号を命令バスから受け取ったりする。
デコード部32において、命令シーケンサ41は、命令レジスタTfに格納された命令コードをデコードして、その結果に応じて命令シーケンスを制御する。即ち命令シーケンサ41は、レジスタ操作、演算、データ転送等の各種動作について、命令レジスタTfに格納された命令コードの内容に応じて指定された動作を指定された順番で実行することにより、命令コードが要求する動作を実現する。この動作は、命令シーケンサ41がCPU回路11の各部の動作を制御することにより実現される。
例えば、命令シーケンサ41は、命令レジスタTfに格納された命令コードの内容に応じた演算モードを示すデコード結果を、デコード結果レジスタTdecに書き込む。これにより命令シーケンサ41は、算術論理演算ユニット44の演算動作を制御することができる。また命令シーケンサ41は、命令レジスタTfに格納された命令コードの内容に応じて切換回路42及び選択回路43を制御することにより、所望のレジスタに格納される値を演算対象として算術論理演算ユニット44に供給することができる。また同様に、命令レジスタTfに格納された命令コードの内容に応じて指定されるレジスタの内容を、データレジスタTdd、データレジスタTed、出力バッファ47を介してデータバス23に出力することができる。
また更に命令シーケンサ41は、命令レジスタTfに格納された命令コードをデコードした結果としてこの命令コードが未定義命令コードであることが判明すると、前述のようにベクタアドレスを送出して例外ハンドラの開始アドレスを読み込むための例外処理シーケンスを実行する。また更に命令シーケンサ41は、命令レジスタTfに格納された命令コードをデコードした結果としてこの命令コードがJUMP命令であることが判明すると、次に命令レジスタTfに格納される命令コードを実行しないことを示す信号Not_usedを送出する。この信号Not_usedにより、次の命令コードのデコード処理等を実行しないような制御がCPU回路11内部で行われる。またこの信号Not_usedは、前述のように、CPU回路11外部に送出される。
エグゼキュート部33において、算術論理演算ユニット44は、デコード結果レジスタTdecに格納された演算モードに従って論理算術演算を実行する。演算結果は、演算結果レジスタTeに格納される。演算結果レジスタTeに格納された演算結果は、メモリアクセス部34の出力バッファ46を介してデータアドレスバス22に出力することができる。
メモリアクセス部34において、データバスアクセス制御部45は、デコード部32の命令シーケンサ41の制御下で動作して、データバスアクセス動作を制御する。データバスアクセス制御部45は例えば、データアドレスバス22上にアドレスが出力されていることを示すアドレスストローブ信号をデータバスに出力したり、データアクセス可能状態であることを示すレディ信号をデータバスから受け取ったりする。入力バッファ48は、データバス23から受け取ったデータを汎用レジスタ部35に供給する。
図3は、図1のコンピュータシステム10において命令読み出しエラーが発生したが当該命令が実行されない場合の動作を説明するタイミングチャートである。図3には、命令1、命令2、及びJUMP先命令の3つの命令が、パイプライン動作により順番に重複して実行される様子が示されている。各命令において、F、D、E、及びMはそれぞれフェッチ部31の動作、デコード部32の動作、エグゼキュート部33の動作、及びメモリアクセス部34の動作を示している。図3の最上部に、第1乃至第8の動作サイクルのタイミングがそれぞれT1乃至T8として示されている。
まず第1の動作サイクルで、命令1(遅延スロット無しJUMP命令)が命令コードIDとしてフェッチされ命令レジスタTfに格納される。
次に第2の動作サイクルで、命令レジスタTfの内容がデコードされ(デコード動作を
Figure 0005292706
で表現してある)、JUMP命令であるのでnop(ノーオペレーション)がデコード結果レジスタTdecに格納されると共に、プログラムカウンタPCにJUMP先のアドレスが格納される。この時、信号Not_usedが生成される。
またこの第2の動作サイクルで、命令2が命令コードIDとしてフェッチされ命令レジスタTfに格納される。この際、命令2の読み出し時にECC回路16がエラーを検出し、未定義命令コードが命令レジスタTfに格納される。
次に第3の動作サイクルで、命令1の演算動作(演算動作を
Figure 0005292706
で表現してある)が実行されるが、デコード結果レジスタTdecの中身がnopであるので実際の演算は実行されない。また命令1であるJUMP命令のジャンプ先の命令アドレスIAが、プログラムカウンタPCから命令アドレスバス20に出力される。
またこの第3の動作サイクルで、本来実行される筈であった命令2のデコード動作は、
信号Not_usedが生成されたことを受けて実行されない。デコード動作(
Figure 0005292706
で示す)が実行されないことは、命令レジスタTfとデコード動作との間の記号×で示されている。この結果、未定義命令コードに基づく例外処理は実行されることなく、nop(ノーオペレーション)がデコード結果レジスタTdecに格納される。
またこの第3の動作サイクルで、JUMP先命令が命令コードIDとしてフェッチされ命令レジスタTfに格納される。また命令2の読み出し時にECC回路16がエラーを検出したことによりECC_ERR(図1参照)がアサートされるが、信号Not_usedのアサートにより命令エラーレジスタ19へのエラー発生有の設定を禁止する(既に設定されていればエラー発生有の設定を解除する)。命令エラーレジスタ19がエラー発生有の状態に設定されないことは、図示される"ECC_ERR"の下に示される線が点線となっていることで表現されている。
以降の動作サイクルで、JUMP先命令のデコードD、演算E、及びメモリアクセス動作Mが順次実行される。またこれに並行して、このJUMP先命令の次の命令、またその次の命令等が、パイプライン化されて重複して実行される。
図4は、図1のコンピュータシステム10において命令読み出しエラーが発生し当該命令が実行される場合の動作を説明するタイミングチャートである。図4において、命令1、命令2、及び命令3の3つの命令が、パイプライン動作により順番に重複して実行される様子が示されている。各命令において、F、D、E、及びMはそれぞれフェッチ部31の動作、デコード部32の動作、エグゼキュート部33の動作、及びメモリアクセス部34の動作を示している。図4の最上部に、第1乃至第8の動作サイクルのタイミングがそれぞれT1乃至T8として示されている。
まず第1の動作サイクルで、命令1が命令コードIDとしてフェッチされ命令レジスタTfに格納される。
次に第2の動作サイクルで、命令レジスタTfの内容がデコードされ(デコード動作を
Figure 0005292706
で表現してある)、デコードの結果得られる演算モードがデコード結果レジスタTdecに格納される。この時信号Not_usedは生成されない。信号Not_usedが生成されないことは、図示される"Not_used"の下に示される線が点線となっていることで表現されている。
またこの第2の動作サイクルで、命令2が命令コードIDとしてフェッチされ命令レジスタTfに格納される。この際、命令2の読み出し時にECC回路16がエラーを検出し、未定義命令コードが命令レジスタTfに格納される。
次に第3の動作サイクルで、デコード結果レジスタTdecの内容に応じて、命令1の演算動作(演算動作を
Figure 0005292706
で表現してある)が実行される。演算結果は、演算結果レジスタTeに格納される。
またこの第3の動作サイクルで、命令2に対して命令レジスタTfの内容がデコードされる(デコード動作を
Figure 0005292706
で表現してある)。命令2は、未定義命令コードレジスタ15から読み出された未定義命令コードであるので、例外処理が実行されることになる。このこの結果、nop(ノーオペレーション)がデコード結果レジスタTdecに格納される。また命令2の読み出し時にECC回路16がエラーを検出したことによりECC_ERR(図1参照)がアサートされるが、信号Not_usedがアサートされていないので、命令エラーレジスタ19にエラー発生有を示す状態が設定される。命令エラーレジスタ19がエラー発生有の状態に設定されたことは、図示される"ECC_ERR"の下に示される線が実線となっていることで表現されている。
またこの第3の動作サイクルで、命令3が命令コードIDとしてフェッチされ命令レジスタTfに格納される。
次に第4の動作サイクルで、データバスに対する命令1のメモリアクセス動作Dbusが実行される。また命令2の演算動作(演算動作を
Figure 0005292706
で表現してある)が実行されるが、デコード結果レジスタTdecの中身がnopであるので実際の演算は実行されない。
またこの第4の動作サイクルで本来実行される筈であった命令3のデコード動作は、例外処理が起動されたことを受けて実行されない。命令3のデコード動作(
Figure 0005292706
で示す)が実行されないことは、命令レジスタTfとデコード動作との間の記号×で示されている。その代わり、例外処理による種々の設定動作が行われる。具体的には、デコード結果レジスタTdecに加算を指示する演算モードが格納され、演算レジスタTaにテーブルベースレジスタTBRの内容が格納され、演算レジスタTbにベクタ番号VectNoが格納される。ここでテーブルベースレジスタTBRの内容は、複数の異なる例外ハンドラの開始アドレスをリストしたテーブルであるベクタテーブルの先頭アドレスである。またベクタ番号VectNoは、例外処理の種別毎に割り当てられた番号である。
次に第5の動作サイクルで、例外処理に対応する演算動作(演算動作を
Figure 0005292706
で表現してある)が実行される。これによりベクタテーブルの先頭アドレスにベクタ番号を加算した結果が演算結果レジスタTeに格納される。
次に第6の動作サイクルで、例外処理に対応するメモリアクセス動作が実行される。即ち、ベクタテーブルの先頭アドレスにベクタ番号を加算した値がデータアドレスDAとしてデータアドレスバス22に送出される。これに応じて、このデータアドレスに格納されている値がフラッシュメモリ12から読み出されてデータDDとしてプログラムカウンタPCに格納される。未定義命令コードに対する例外処理に例えばベクタ番号#5が割り当てられているとすると、フラッシュメモリ12に格納されるベクタテーブル中の先頭から5番目の例外ハンドラの開始アドレスが読み出され、この読み出された開始アドレスがプログラムカウンタPCに格納されることになる。次の第7の動作サイクルで、プログラムカウンタPCからこの開始アドレスが命令アドレスIAとして命令アドレスバス20に送出されて、例外ハンドラのプログラム処理が開始される。
図5は、本発明によるコンピュータシステムの第2の実施例の構成の一例を示す図である。図5において、図1と同一の構成要素は同一の番号で参照し、その説明は適宜省略する。
図5のコンピュータシステム10Aは、CPU回路11、フラッシュメモリ12、RAM13、選択回路14、未定義命令コードレジスタ15、ECC回路16、エラーアドレスレジスタ17、エラーデータレジスタ18、命令エラーレジスタ19、命令アドレスバス20、命令データバス21、データアドレスバス22、データバス23、制御信号線24、バスユニット60、ベクタレジスタ61、ベクタエラーレジスタ62、データエラーレジスタ63、命令制御バス65、データ制御バス66、共通アドレスバス67、共通データバス68、エラー通知信号線69、アクセス種別制御線70、及び制御信号線71を含む。
命令アドレスバス20、命令データバス21、及び命令制御バス65で命令バスを構成し、データアドレスバス22、データバス23、及びデータ制御バス66でデータバスを構成する。また共通アドレスバス67、共通データバス68、及びアクセス種別制御線70で共通バスを構成する。命令制御バス65の信号は、例えばアドレスストローブ信号Ias及びレディ信号Irdyを含む。データ制御バス66の信号は、例えばデータストローブ信号Das、レディ信号Drdy、及びベクタスアクセス信号Vect_acを含む。ベクタスアクセス信号Vect_acは、CPU回路11がベクタアクセス動作をするときにアサートされる。
バスユニット60は、CPU回路11が使用する命令バス及びデータバスを1つの共通バスに纏める機能を有する。またバスユニット60は、CPU回路11から制御信号線24を介して受け取る信号Not_usedを、そのまま信号Not_usedとして制御信号線71に送出する。
CPU回路11が命令アドレスバス20に命令アドレスを送出して命令アクセス動作を実行中である場合、バスユニット60は、アクセス動作が命令アクセス動作であることを示す種別特定信号をアクセス種別制御線70に送出する。またCPU回路11がデータアドレスバス22にデータアドレスを送出してデータアクセス動作を実行中である場合、バスユニット60は、アクセス動作がデータアクセス動作であることを示す種別特定信号をアクセス種別制御線70に送出する。またCPU回路11がデータアドレスバス22にベクタアドレスを送出するとともにベクタスアクセス信号Vect_acをアサートしてベクタアクセス動作を実行中である場合、バスユニット60は、アクセス動作がベクタアクセス動作であることを示す種別特定信号をアクセス種別制御線70に送出する。
ECC回路16は、バスユニット60から共通アドレスバス67を介して供給される命令アドレスに応じてフラッシュメモリ12から読み出された命令コードのエラーをチェックするエラーチェック回路である。ECC回路16は、エラーを検出するとECC_ERR信号をアサートする。ECC_ERR信号は、選択回路14に供給されるとともに、エラー通知信号線69に送出される。エラー通知信号線69のECC_ERR信号は、エラーアドレスレジスタ17、エラーデータレジスタ18、命令エラーレジスタ19、ベクタエラーレジスタ62、及びデータエラーレジスタ63からなるレジスタ群に供給される。この例では、ECCによるデータ訂正・エラー検出機能を備えたエラーチェック回路を想定しているが、パリティチェックに基づくエラーチェック回路等でもよく、エラーチェックについては特定の方式に限定されるものではない。
図5の構成では、未定義命令コードレジスタ15に加えベクタレジスタ61が設けられている。ベクタレジスタ61は、未定義命令発生時に実行すべき処理を行う例外ハンドラの開始アドレスを保持する。即ち、ベクタレジスタ61の内容は、フラッシュメモリ12に格納されるベクタテーブルに記録されている未定義命令発生時に実行すべき処理を行う例外ハンドラの開始アドレスと同一であってよい。
選択回路14は、(ECC回路16を介して)フラッシュメモリ12と、未定義命令コードレジスタ15と、データバッファ64とに入力が結合され、ECC回路16によりエラー検出されない場合にフラッシュメモリ12から読み出された命令コードを選択的に出力する。選択回路14は、ECC回路16によりエラー検出され且つ種別特定信号が命令アドレス出力(命令アクセス動作)を示す場合に未定義命令コードレジスタ15からの未定義命令コードを選択的に出力し、ECC回路16によりエラー検出され且つ種別特定信号がベクタアドレス出力(ベクタアクセス動作)を示す場合にベクタレジスタ61からの例外ハンドラの開始アドレスを選択的に出力するよう構成される。選択回路14の出力は共通データバス68に接続されており、共通データバス68及び命令データバス21を介してCPU回路11に接続されている。
エラーアドレスレジスタ17は、ECC回路16によりエラー検出された場合にエラー発生時の共通アドレスバス67のアドレスを格納する。エラーデータレジスタ18は、ECC回路16によりエラー検出された場合にエラー発生時のフラッシュメモリ12からの読み出しデータを格納する。命令エラーレジスタ19はECC回路16によりエラー検出され且つアクセス種別制御線70の種別特定信号が命令アドレス出力を示す場合にエラー発生有を示す値を格納する。ベクタエラーレジスタ62はECC回路16によりエラー検出され且つアクセス種別制御線70の種別特定信号がベクタアドレス出力を示す場合にエラー発生有を示す値を格納する。データエラーレジスタ63は、ECC回路16によりエラー検出され且つアクセス種別制御線70の種別特定信号がデータアドレス出力を示す場合にエラー発生有を示す値を格納する。なおエラー通知信号線69のECC_ERR信号のアサート状態/デアサート状態により、ECC回路16によるエラー検出の有無が各レジスタに通知される。
命令エラーレジスタ19は、制御信号線71の信号Not_usedのアサートに応答してエラー発生無を示す値(例えば0)を格納する状態に設定される。同様に、エラーアドレスレジスタ17及びエラーデータレジスタ18についても、信号Not_usedのアサートに応答して例えば0にリセットするよう構成してよい。またデータエラーレジスタ63にエラー発生有を示す値が格納された場合には、CPU回路11に外部割込みを入力するように構成してよい。
上記の構成においては、ベクタアドレスに応じてフラッシュメモリ12から読み出した例外ハンドラの開始アドレスに対してECC回路16でエラーが発生した場合には、ベクタレジスタ61に格納される例外ハンドラの開始アドレスをCPU回路11にフェッチさせることができる。従って、ベクタアクセス動作においてメモリ読み出しにエラーが発生しても、未定義命令コードレジスタ15の内容を再度出力して無限ループに嵌り込んでしまうことがない。
図6は、図5のコンピュータシステム10Aにおいて命令読み出しエラーが発生したが当該命令が実行されない場合の動作を説明するタイミングチャートである。図6には、命令1、命令2、JUMP命令である命令3、命令4、JUMP先命令である命令5、及び命令6の6つの命令が、パイプライン動作により順番に重複して実行される様子が示されている。各命令において、F、D、E、及びMはそれぞれフェッチ部31の動作、デコード部32の動作、エグゼキュート部33の動作、及びメモリアクセス部34の動作を示している。図6の最上部に、第1乃至第9の動作サイクルのタイミングがそれぞれT1乃至T9として示されている。
図6において、Ibusは命令バスのアドレス及びデータ信号、Iasは命令ストローブ信号、Irdyは命令のレディ信号、Not_usedは前述の信号Not_used、Dbusはデータバスのアドレス及びデータ信号、Dasはデータストローブ信号、Drdyはデータのレディ信号、Fbusは共通バスのアドレス及びデータ信号、Fasは共通ストローブ信号、Frdyは共通バスアクセスのレディ信号、FERRはエラー通知信号線69の信号を示す。Ias、Irdy、Not_used、Das、Drdy、Fas、Frdy、FERRの各欄において、実線はその信号がアサートされていることを意味する。
まず第1の動作サイクルで、CPU回路11が命令バスを用いて命令フェッチ動作を実行すると、図6のIbusに示すように、CPU回路11とバスユニット60との間の命令バスに信号I1(最初に命令アドレスでその後に命令コード)が現れる。このときバスユニット60とフラッシュメモリ12との間の共通バスには、図6のFbusに示すように、同一の信号I1(最初に命令アドレスでその後に命令コード)が現れていることになる。これにより命令1に対する命令フェッチ動作が実行される。同様に第2の動作サイクルで命令2に対する命令フェッチ動作が実行され、第3の動作サイクルで命令3に対する命令フェッチ動作が実行される。
第4の動作サイクルは、前半と後半の2つの動作サイクルから構成される。第4の動作サイクルの前半では、共通バスにおいて(Fbus)、第4の命令に対する命令フェッチ動作I4が実行される。第4の動作サイクルの後半では、共通バスにおいて(Fbus)、第1の命令に対するメモリアクセス動作D1が実行される。即ち、第4の命令をフェッチして、その後第1の命令の実行に起因するデータ読み書き動作がフラッシュメモリ12又はRAM13に対して実行される。Ibusに示すように、CPU回路11とバスユニット60との間の命令バスでは、第4の命令に対する命令フェッチ動作I4が第4の動作サイクルの全体の期間を使って実行される。またDbusに示すように、CPU回路11とバスユニット60との間のデータバスでは、第1の命令に対するデータアクセス動作D1が第4の動作サイクルの後半の期間を使って実行される。
この第4の動作サイクルにおいて、第3の命令がJUMP命令であったことに応答して信号Not_usedが発生し、第4の命令を実行しない旨を通知する。またFERRに示すように、第4の命令の読み出しにおいてECCエラーが発生し、エラー通知信号線69にエラー発生を示す信号(図5のECC_ERR)がアサートされる。但し、信号Not_usedのアサートにより命令エラーレジスタ19へのエラー発生有の設定を禁止する(既に設定されていればエラー発生有の設定を解除する)。命令エラーレジスタ19がエラー発生有の状態に設定されないことは、図6の最下段に示される"命令エラーレジスタ"の欄に示される線が点線となっていることで表現されている。
第5の動作サイクルは、前半と後半の2つの動作サイクルから構成される。第5の動作サイクルの前半では、共通バスにおいて(Fbus)、第5の命令(JUNP先命令)に対する命令フェッチ動作I5が実行される。第5の動作サイクルの後半では、共通バスにおいて(Fbus)、第2の命令に対するメモリアクセス動作D2が実行される。即ち、第5の命令をフェッチして、その後第2の命令の実行に起因するデータ読み書き動作がフラッシュメモリ12又はRAM13に対して実行される。Ibusに示すように、CPU回路11とバスユニット60との間の命令バスでは、第5の命令に対する命令フェッチ動作I5が第5の動作サイクルの全体の期間を使って実行される。またDbusに示すように、CPU回路11とバスユニット60との間のデータバスでは、第2の命令に対するデータアクセス動作D2が第5の動作サイクルの後半の期間を使って実行される。第6の動作サイクルについても同様である。
図7は、図5のコンピュータシステム10Aにおいて命令読み出しエラーが発生し当該命令が実行される場合の動作を説明するタイミングチャートである。図7には、命令1、命令2、JUMP命令である命令3、命令4、命令5及びその後の例外処理が、パイプライン動作により順番に重複して実行される様子が示されている。図7において、図6と同一の部分は同一の動作内容であるので適宜説明を省略する。
図7の動作においては、JUMP命令である命令3が、ジャンプ条件が成立せずにジャンプしないことが図6の動作と異なる。この場合、信号Not_usedがアサートされない。信号Not_usedがアサートされないことは、"Not_used"の欄に示される線が点線となっていることで表現されている。
図6の場合と同様に、FERRに示すように、第4の命令の読み出しにおいてECCエラーが発生し、エラー通知信号線69にエラー発生を示す信号(図5のECC_ERR)がアサートされる。図7の場合には、信号Not_usedがアサートされていないので、命令エラーレジスタ19へエラー発生有が設定される(エラー発生有の設定が解除されることがない)。命令エラーレジスタ19がエラー発生有の状態に設定されていることは、図6の最下段に示される"命令エラーレジスタ"の欄に示される線が実線となっていることで表現されている。
第4の命令の読み出しにおけるECCエラー発生により、第4の命令として未定義命令コードレジスタ15に格納される未定義命令コードがフェッチされ実行される。従って、図3において説明したのと同様に、次の命令である命令5のデコード動作のタイミングにおいて、例外処理が代わりに実行される。この例外処理では、第6乃至第8の動作サイクルでベクタフェッチが実行されるとともに、プログラムカウンタPC及びプロセッサステータスレジスタPSの待避が行われる。なお図7において、これら例外処理に対応する欄のED、EE、及びEMは、例外処理(Exception)のデコード(D)、演算(E)、メモリアクセス(M)であることを示している。
図8は、図5のコンピュータシステム10Aにおいてベクタアクセス動作時に読み出しエラーが発生した場合の動作を説明するタイミングチャートである。図8には、命令1、命令2及びその後の例外処理、更に未定義命令処理ルーチン(例外ハンドラのプログラム)が、パイプライン動作により順番に重複して実行される様子が示されている。図6及び図7と信号等の表記は同一である。図8の最上部に、第1乃至第10の動作サイクルのタイミングがそれぞれT1乃至T10として示されている。
まず第1の動作サイクルで命令1に対する命令フェッチ動作が実行され、第2の動作サイクルで命令2に対する命令フェッチ動作が実行される。第2の動作サイクルにおける命令1のデコード動作で例外が発生し、第3の動作サイクルから例外処理が実行される。即ち、ベクタフェッチ、PS(プロセッサステータスレジスタ)待避、及びPC(プログラムカウンタ)待避がそれぞれ実行される。これら例外処理に対応する欄のED、EE、及びEMは、例外処理(Exception)のデコード(D)、演算(E)、メモリアクセス(M)であることを示している。
この例外処理では、第5の動作サイクルにおいて、メモリアクセス動作EMとしてベクタアクセス動作が実行される。図8のDbusに示すように、CPU回路11とバスユニット60との間のデータバスに信号ED1(最初にベクタアドレスでその後に例外ハンドラ開始アドレス)が現れる。このときバスユニット60とフラッシュメモリ12との間の共通バスには、図8のFbusに示すように、同一の信号ED1(最初にベクタアドレスでその後に例外ハンドラ開始アドレス)が現れていることになる。これによりベクタアクセス動作が実行される。
この際、FERRに実線として示すように、ベクタテーブルの内容の読み出しにおいてECCエラーが発生し、エラー通知信号線69にエラー発生を示す信号(図5のECC_ERR)がアサートされる。これに応じて、ベクタエラーレジスタ62へエラー発生有が設定される。ベクタエラーレジスタ62がエラー発生有の状態に設定されていることは、図8の最下段に示される"ベクタエラーレジスタ"の欄に示される線が実線となっていることで表現されている。
このベクタアクセス動作時の読み出しにおけるECCエラー発生により、ベクタレジスタ61に格納される未定義命令処理ベクタ(未定義命令発生時に実行すべき処理を行う例外ハンドラの開始アドレス)がフェッチされる。従って、ベクタアクセス動作時の読み出しにおけるECCエラーの発生にも関わらず、未定義命令発生時に実行すべき処理を行う例外ハンドラを問題なく実行することができる。
その後、第5の動作サイクルで読み込んだ未定義命令処理ベクタをプログラムカウンタPCに設定して、未定義命令処理ルーチン(例外ハンドラのプログラム)を実行する。図8に示されるように、この未定義命令処理ルーチンの第1番目の命令は第6乃至第9の動作サイクルで実行され、第2番目の命令は第7乃至第10の動作サイクルで実行されている。
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。
本発明によるコンピュータシステムの第1の実施例の構成の一例を示す図である。 CPU回路の構成の一例を示す図である。 図1のコンピュータシステムにおいて命令読み出しエラーが発生したが当該命令が実行されない場合の動作を説明するタイミングチャートである。 図1のコンピュータシステムにおいて命令読み出しエラーが発生し当該命令が実行される場合の動作を説明するタイミングチャートである。 本発明によるコンピュータシステムの第2の実施例の構成の一例を示す図である。 図5のコンピュータシステムにおいて命令読み出しエラーが発生したが当該命令が実行されない場合の動作を説明するタイミングチャートである。 図5のコンピュータシステムにおいて命令読み出しエラーが発生し当該命令が実行される場合の動作を説明するタイミングチャートである。 図5のコンピュータシステムにおいてベクタアクセス動作時に読み出しエラーが発生した場合の動作を説明するタイミングチャートである。
符号の説明
10 コンピュータシステム
11 CPU回路
12 フラッシュメモリ
13 RAM
14 選択回路
15 未定義命令コードレジスタ
16 ECC回路
17 エラーアドレスレジスタ
18 エラーデータレジスタ
19 命令エラーレジスタ
20 命令アドレスバス
21 命令データバス
22 データアドレスバス
23 データバス
24 制御信号線

Claims (8)

  1. CPUと、
    少なくとも命令コードを格納するメモリ回路と、
    該CPUから供給される命令アドレスに応じて該メモリ回路から読み出された命令コードのエラーをチェックするエラーチェック回路と、
    エラーが発生した時に該メモリ回路からのデータの代わりに該CPUへ出力するデータを保持するコード格納回路と、
    該メモリ回路と該コード格納回路とに入力が結合され、該エラーチェック回路によりエラー検出されない場合に該メモリ回路から読み出された該命令コードを選択的に出力し、該エラーチェック回路によりエラー検出された場合に該コード格納回路からの該データを選択的に出力する選択回路と、
    該選択回路の出力と該CPUとを接続するバスと、
    該エラーチェック回路によりエラー検出された場合にエラー発生有を示す値を格納する命令エラーレジスタと
    を含み、
    該CPUは、該バスを介してフェッチした命令を使用しない場合に該命令を使用しない旨を示す信号を出力するよう構成され、該命令エラーレジスタは該信号に応答してエラー発生無を示す値を格納する状態に設定され、
    該コード格納回路が保持する該データは、該CPUが該データをデコードすると、それに応じて該CPUが例外処理を実行するコードであり、
    該CPUは、該データをデコードした場合には該エラー検出による例外処理を実行し、該データデコードしない場合には該エラー検出による例外処理を実行しないことを特徴とするコンピュータシステム。
  2. 前記コード格納回路に、未定義命令例外を引き起こすコードを格納することを特徴とする請求項1記載のコンピュータシステム。
  3. 該信号は該CPUから信号線を介して該命令エラーレジスタのリセット端子に供給されることを特徴とする請求項1記載のコンピュータシステム。
  4. 該CPUは、該メモリ回路からフェッチした命令がジャンプ命令であり、デコードした該ジャンプ命令がジャンプすると判断した場合に前記信号を出力するように構成されることを特徴とする請求項1記載のコンピュータシステム。
  5. 該CPUは該例外処理においてベクタアドレスを出力し、該メモリ回路の該ベクタアドレスから例外ハンドラの開始アドレスをフェッチするように構成されることを特徴とする請求項1記載のコンピュータシステム。
  6. 該CPUは該命令アドレスと該ベクタアドレスとの何れを出力しているのかを示す種別特定信号を出力するよう構成されることを特徴とする請求項5記載のコンピュータシステム。
  7. ベクタエラーレジスタを更に含み、該命令エラーレジスタは該エラーチェック回路によりエラー検出され且つ該種別特定信号が命令アドレス出力を示す場合にエラー発生有を示す値を格納するよう構成され、該ベクタエラーレジスタは該エラーチェック回路によりエラー検出され且つ該種別特定信号がベクタアドレス出力を示す場合にエラー発生有を示す値を格納するよう構成されることを特徴とする請求項6記載のコンピュータシステム。
  8. 例外処理において前記CPUは前記命令エラーレジスタをチェックすることを特徴とする請求項1記載のコンピュータシステム。
JP2007049458A 2007-02-28 2007-02-28 コンピュータシステム Expired - Fee Related JP5292706B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007049458A JP5292706B2 (ja) 2007-02-28 2007-02-28 コンピュータシステム
US12/036,634 US8423834B2 (en) 2007-02-28 2008-02-25 Computer system and memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007049458A JP5292706B2 (ja) 2007-02-28 2007-02-28 コンピュータシステム

Publications (2)

Publication Number Publication Date
JP2008217070A JP2008217070A (ja) 2008-09-18
JP5292706B2 true JP5292706B2 (ja) 2013-09-18

Family

ID=39717315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007049458A Expired - Fee Related JP5292706B2 (ja) 2007-02-28 2007-02-28 コンピュータシステム

Country Status (2)

Country Link
US (1) US8423834B2 (ja)
JP (1) JP5292706B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5604904B2 (ja) * 2010-02-22 2014-10-15 富士電機株式会社 組込み機器及びipアドレス取得管理方法
US10496461B2 (en) * 2011-06-15 2019-12-03 Arm Finance Overseas Limited Apparatus and method for hardware initiation of emulated instructions
US10394647B2 (en) * 2017-06-22 2019-08-27 International Business Machines Corporation Bad bit register for memory
US11314583B2 (en) 2020-08-18 2022-04-26 Micron Technology, Inc. Memory data correction using multiple error control operations
WO2023107532A1 (en) * 2021-12-07 2023-06-15 Microchip Technology Incorporated Vector fetch bus error handling
US12001270B2 (en) * 2021-12-07 2024-06-04 Microchip Technology Incorporated Vector fetch bus error handling

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6312030A (ja) * 1986-07-02 1988-01-19 Nec Corp 情報処理装置のエラ−処理機構
US5274825A (en) * 1987-09-03 1993-12-28 Bull Hn Information Systems Inc. Microprocessor vectored interrupts
JPH01100636A (ja) * 1987-10-14 1989-04-18 Hitachi Ltd エラー制御回路
JP2531791B2 (ja) * 1989-06-09 1996-09-04 富士電機株式会社 フエッチアクセス時の異常処理方法
JPH0398129A (ja) 1989-09-11 1991-04-23 Fujitsu Ltd パリティエラー検出方式
JPH03209523A (ja) * 1990-01-11 1991-09-12 Fujitsu Ltd 命令データエラー検出方式
JPH04290130A (ja) * 1991-03-19 1992-10-14 Fujitsu Ltd プロセッサのエラー管理方式
NL9100740A (nl) 1991-04-29 1992-11-16 Eduard Naumovich Lerner Inrichting voor toepassing bij het bepalen van de toestand van het vegetatieve deel van het zenuwstelsel van een organisme.
JP3157242B2 (ja) * 1992-01-14 2001-04-16 株式会社ピーエフユー マイクロ・プログラム制御におけるエラー処理方法
JP3822885B2 (ja) * 1994-09-09 2006-09-20 株式会社ルネサステクノロジ 1チップデータプロセッサ
JP2001092662A (ja) * 1999-09-22 2001-04-06 Toshiba Corp プロセッサコア及びこれを用いたプロセッサ
US7206971B2 (en) * 2003-04-07 2007-04-17 Lsi Logic Corporation Selectable and updatable computer boot memory
TW594570B (en) * 2003-04-15 2004-06-21 Sunplus Technology Co Ltd Processor for executing conditional instruction and the method thereof
US7328368B2 (en) * 2004-03-12 2008-02-05 Intel Corporation Dynamic interconnect width reduction to improve interconnect availability
JP4135680B2 (ja) * 2004-05-31 2008-08-20 ソニー株式会社 半導体記憶装置および信号処理システム
US8898246B2 (en) * 2004-07-29 2014-11-25 Hewlett-Packard Development Company, L.P. Communication among partitioned devices
US20060282755A1 (en) * 2005-05-31 2006-12-14 Jong-Hoon Oh Random access memory having ECC
US8190830B2 (en) * 2005-12-23 2012-05-29 Intel Corporation Method, apparatus, and systems to support execution pipelining in a memory controller

Also Published As

Publication number Publication date
JP2008217070A (ja) 2008-09-18
US8423834B2 (en) 2013-04-16
US20080209277A1 (en) 2008-08-28

Similar Documents

Publication Publication Date Title
JP5129450B2 (ja) 情報処理装置
KR900002604B1 (ko) 제어기억장치를 갖는 정보처리장치내의 에러회복 장치 및 방법.
JP5292706B2 (ja) コンピュータシステム
JP4703718B2 (ja) 選択的サブルーチンリターン構造
JP2005317023A (ja) データ処理装置のブレークポイント論理ユニット、デバッグ論理、およびブレークポイントの方法
US20150234661A1 (en) Semiconductor integrated circuit device and system using the same
US8032794B2 (en) Error processing method and information processing apparatus
US7716537B2 (en) Information processing apparatus and error correction method
EP1770507A2 (en) Pipeline processing based on RISC architecture
US8516303B2 (en) Arithmetic device for concurrently processing a plurality of threads
US8176301B2 (en) Millicode assist instructions for millicode store access exception checking
US6990569B2 (en) Handling problematic events in a data processing apparatus
US9256495B2 (en) Processing unit and error processing method
JP5012562B2 (ja) マイクロコンピュータ
US6662296B1 (en) Method and system for testing millicode branch points
JP3616588B2 (ja) マイクロプログラムチェックシステム
JP3171615B2 (ja) データ転送のリトライ制御方式
JP4702004B2 (ja) マイクロコンピュータ
CN117234967A (zh) 数据处理方法、装置、存储节点及存储介质
JPH11353011A (ja) シーケンス制御装置
JPH0991167A (ja) 命令検出装置
JPH03225433A (ja) シングルチップマイクロコンピュータ
JP2010152640A (ja) 情報処理装置およびパイプライン処理方法
JPH03164945A (ja) データ処理装置
JPS60193047A (ja) マイクロプログラムのロ−ドチエツク方式

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110801

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120612

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130422

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: 20130514

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130527

R150 Certificate of patent or registration of utility model

Ref document number: 5292706

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees