JP2009043256A - 記憶装置のアクセス方法及び装置 - Google Patents

記憶装置のアクセス方法及び装置 Download PDF

Info

Publication number
JP2009043256A
JP2009043256A JP2008200750A JP2008200750A JP2009043256A JP 2009043256 A JP2009043256 A JP 2009043256A JP 2008200750 A JP2008200750 A JP 2008200750A JP 2008200750 A JP2008200750 A JP 2008200750A JP 2009043256 A JP2009043256 A JP 2009043256A
Authority
JP
Japan
Prior art keywords
storage device
main
interface
interrupt
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.)
Granted
Application number
JP2008200750A
Other languages
English (en)
Other versions
JP4855451B2 (ja
Inventor
Michal Schramm
シャラン マイケル
Nir Tasher
タシャー ニール
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.)
Nuvoton Technology Corp
Original Assignee
Nuvoton Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nuvoton Technology Corp filed Critical Nuvoton Technology Corp
Publication of JP2009043256A publication Critical patent/JP2009043256A/ja
Application granted granted Critical
Publication of JP4855451B2 publication Critical patent/JP4855451B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Storage Device Security (AREA)
  • Bus Control (AREA)

Abstract

【課題】本発明はシステム装置を提供する。
【解決手段】本発明によるシステム装置は、記憶装置、バス、第一主装置、及び第二主装置を有する。記憶装置は自由なハンドシェークプロトコルに合わせた記憶装置インターフェースを有し、該記憶装置インターフェースは記憶装置とアクセス主装置の間にある。バスは記憶装置に電気接続される。第一主装置はバスと記憶装置インターフェースを介して記憶装置をアクセスし、及び割り込みインターフェースを介して割り込み要求を受信した後、割り込み操作を実行する。第二主装置はバスと記憶装置アクセスインターフェースを介して記憶装置をアクセスし、記憶装置をアクセスする前に第一主装置に割り込み要求を伝送する。
【選択図】 図1

Description

本発明は、主にコンピューター構造に関し、特に記憶装置のアクセス構造に関する。
処理装置は非常に広範囲で適用され、その応用範囲は数学的計算、データベースの管理、通信及び装置の制御など様々な分野を含む。各種の応用において、処理装置は独立した記憶装置を要し、例えば、実行結果または中間値の保存、動作ソフトウェアの取り出し、或いはデータ入力などの何らかの任務を実行する。通常、記憶装置のアクセスを制御する処理装置を「主装置」と称する。なお、前記主装置はそのほかのものを表すこともでき、前記記憶装置のアクセスを制御する処理装置に限られたものではない。
各種の通信プロトコルは内部通信目的、例えば処理装置と記憶装置間のデータの伝送などを実現ために定義される。ある種のプロトコルは具体的に多重処理装置構造に用いられるように定義され、この複数の処理装置は一つのバスを介して共有記憶装置をアクセスする。多重処理装置が一つの共通の記憶装置または他の資源(resource)を共有するのに用いられる前記プロトコルは、どの処理装置が何時記憶装置をアクセスできるのかを管理する。通常、前記プロトコルはハンドシェーク(hand−shake)方法を使って定義され、該方法は処理装置と記憶装置間の通信に問題が発生した場合、処理装置に通知することができる。しかし、ハンドシェークプロトコルは複雑すぎで、あるアプリケーションはこのような複雑なプロトコルを使う必要がない。
直列周辺インターフェース(Serial Peripheral Interface, SPI)は、簡単な同期データ接続プロトコルである。通常、このプロトコルは、単一の主装置が一つまたは複数の記憶装置をアクセスするのに使われる。従って、直列周辺インターフェース(SPI)は、供給された命令が確かに実行されたかを検証する低層の規定(low layer provision)(例えばハンドシェーク式規定)がない。また、該直列周辺インターフェースは、誤り検出と規範修正の能力が欠いている。しかし、該直列周辺インターフェースは簡単であるため、少数の通信線でも快速実行が可能な利点がある。従って、直列周辺インターフェースは、記憶装置と単一の処理装置間に普及されている。
ところが、二つの処理装置に記憶装置を接続する場合、前記処理装置がどれほどの記憶装置空間を要し、または記憶装置を何回アクセスしても、処理装置はそれぞれ記憶装置を有するべきである。
別の処理方法としては、一つの第一処理装置を用いてLPC(low pin count)規格(bus−busyの表示をサポートすることができる)の下でアクセス命令を共有の記憶装置に伝送する。この場合、第一処理装置から伝送された命令は第二処理装置に伝わられ、第二処理装置でSPI型になり、また記憶装置に転送される。なお、前記方法は第一処理装置がLPC規格をサポートし、同時に第二処理装置が書式転換機能を持っていることを前提としている。
処理装置間で一つの記憶装置を共有する他の方法として、前記記憶装置を共有する二つの処理装置間にハードウェアハンドシェーク(hardware handshake)を実行する。尚、この方法は前記処理装置がハンドシェークプロトコルをサポートすることを前提とし、また処理装置の数量が二つを超える場合、非常に複雑になってしまう。
特許文献1には、キーボードコントローラ(例えば処理装置)及びシステム処理装置間でROMを共有する方法が開示されている。システムを起動する際、このシステム処理装置は共有ROMをアクセスし、基本入出力システム(BIOS)を取り出す。その後、この共有ROMはキーボードコントローラに用いられる。しかし、この方法は二つの処理装置が間歇的に記憶装置をアクセスする構造には適用されない。
特許文献2には、メイン処理装置とキーボードコントローラ間で記憶装置を共有する原理が開示されている。なお、記憶装置は基本入出力システム(BIOS)のアップロードに用いられる。メイン処理装置及びキーボードコントローラに接続された論理回路システムは、キーボードコントローラの機能が抑制された場合(例えば、パソコンが初めて起動する場合)のみに、メイン処理装置の記憶装置へのアクセスを許す。尚、前記メイン処理装置が他の時に記憶装置へのアクセスを求める場合、論理回路システムはオペコード(op−codes)を模擬してメイン処理装置に伝送し、メイン処理装置がメイン処理装置のメイン記憶装置にある基本入出力システム(BIOS)のバックアップをアクセスできるようにする。しかし、前記方法はBIOSのアクセスは解決したが、記憶装置への間歇的なアクセスは許さない。さらに、前記記憶装置は並列アクセスインターフェースを要し、直列アクセスインターフェースには適用されない。
他の特許にも全て類似した問題がある。例えば、特許文献3、4及び5。
米国特許第5603055号(出願人:Evoy;公告期日:1997年2月11日) 米国特許第5892943号(出願人:Rockford、Dunnihoo、Wahler;発明の名称:ホットスタートにおける基本入出力システムの読み出し専用記憶装置の共有) 米国特許第5999476号(出願人:Dutton) 米国特許第5794054号(出願人:Le;公告期日:1998年8月11日) 米国特許第6154838号(出願人:Le;公告期日:2000年11月28日)
本発明は上述の問題を鑑み、複数の処理装置が一つの記憶装置に接続される構造を提供する。
通常、第一処理装置は定常状態で記憶装置に接続される。第二処理装置が前述の記憶装置をアクセスしようとする時、第一処理装置に割り込み要求を発送し、割り込み要求の確認信号を受信した後記憶装置を制御する。第一処理装置は、記憶装置に対する第二処理装置のアクセスが完了した後、中断プログラムから解放される。割り込みの期間の間、第一処理装置はいずれの有効的な任務も実行せず、単にアイドリング状態を維持する。多数の処理装置(multi−processor)が一つの記憶装置をアクセスできる利点で、第二処理装置が記憶装置をアクセスするため第一処理装置がアイドリング状態になる欠点を補うことができる。
前述の記憶装置は単一の主プロトコル(例えば直列周辺インターフェースSPI)又はミクロ配線(Microwire)を使用して稼動する。より具体的には、記憶装置は自由なハンドシェークプロトコルに従って稼動する。記憶装置の稼動を管理するプロトコルは誤り検出(error detection)又は誤り修正(error correction)をサポートしなくてもよい。発明の実施例において、記憶装置へのアクセスは少なくとも10個又は5個のピンを要する。一方、記憶装置は順次アクセス(serial access)記憶装置を含む。
発明の実施例において、第一処理装置はシステムのメイン処理装置であり、一般的に記憶装置に接続されてシステムの主要な任務を実行し、第二処理装置は一般的にサポート機能を果たす。場合によって、メイン処理装置は記憶装置へのアクセスを制御する機能を有する。通常、第一処理装置は第二処理装置より優れた処理能力(processing power)、例えば、少なくとも第二処理装置の5倍又は10倍の処理能力を有している。発明の実施例において、第一処理装置は第二処理装置に比べてより大きな命令伝送量(instruction throughput)(例えば少なくとも5倍又は10倍)を有している。実施例において、第一処理装置のトランジスタ数は第二処理装置より多い(例えば少なくとも10倍又は20倍)。
本発明の実施例において、第一処理装置は主制御器を有し、第二処理装置は組込コントローラを有する。組込コントローラは一つ又は多数のコンピューター周辺機器、例えば電池、キーボード、マウス及び電源供給器などを制御する。
発明の実施例において、記憶装置は第一処理装置又は第二処理装置が実行する任務の実行コードを保存する。例えば、第一処理装置について、記憶装置は基本入出力サービス(Basic Input/Output Services; BIOS)コード、EFI(Extensible Firmware Interface)コード、又はシステム管理コードなどを保存する。通常、記憶装置は第一メイン処理装置のために複数の異なるアプリケーションのブロック符号を保存する。発明の実施例において、記憶装置は第一及び第二処理装置(例えば内部記憶装置(internal memory)をサポートできない処理装置)のため多量の符号を保存し、この処理装置はページング(paging)方法を用いて記憶装置に符号を保存/取出する。
発明の実施例において、第二処理装置はバスに位置され、このバスは第一処理装置及び記憶装置に接続される。第二処理装置は記憶装置へのアクセスを要しない場合、パススルーユニットになって記憶装置及び第一処理装置間の信号を交換する。
本発明の実施例はシステム装置を開示し、該システム装置は記憶装置、バス、第一主装置、及び第二主装置を含む。記憶装置は自由なハンドシェークプロトコルに合わせた記憶装置インターフェースを有し、該記憶装置インターフェースは記憶装置とアクセス主装置の間にある。バスは記憶装置に電気接続される。第一主装置はバスと記憶装置インターフェースを介して記憶装置をアクセスし、割り込みインターフェースを介して割り込み要求を受信した後、割り込み操作を実行する。第二主装置はバスと記憶装置アクセスインターフェースを介して記憶装置をアクセスし、記憶装置をアクセスする前に第一主装置に割り込み要求を伝送する。
前述の記憶装置インターフェースはバスの衝突識別(identification of collisions)プロトコルをサポートしないインターフェースである。記憶装置インターフェースはプロトコルインターフェースでもよい。このプロトコルインターフェースは単一処理装置を選択して記憶装置をアクセスするのをサポートしないプロトコルに従って稼動されてもよいし、直列周辺インターフェースプロトコルに従って稼動されてもよい。
第一主装置はコンピューターの主機を有する。第一主装置は主制御器を介して記憶装置へのアクセス及び/又は割り込みの受信を実行する。第二主装置は組込コンピューター制御器、コンピューターの制御器、ノートパソコンの組込コントローラ、コンピューターのシステム制御器、又はキーボード制御器を含む。また、第一主装置の最大命令伝送量は少なくとも第二主装置の5倍である。第二主装置は第一主装置及び記憶装置に電気接続されるバスに位置する。本発明の実施例において、第二主装置は単に第一主装置より発送された割り込み確認情報を受信した場合にのみ、記憶装置をアクセスする。なお、この割り込み確認情報は第一主装置から割り込み要求に応じて発送された情報である。第二主装置は記憶装置をアクセスする前に前述の割り込み要求を第一主装置に発送する。
一方、第二主装置は割り込み確認情報の受信有無に関わらず、割り込み要求を発送してから所定時間後に記憶装置をアクセスする。或いは、第一主装置はこの割り込み要求に応じて、バスを介して記憶装置をアクセスする動作を止める。本発明の実施例において、第一主装置はただ第二主装置より発送された命令に応じて、記憶装置へのアクセス禁止を停止する。本発明の他の実施例において、第一主装置は第二主装置より発送された命令によって記憶装置へのアクセス禁止を停止する必要がない。
本発明の他の実施例は処理装置を開示し、この処理装置は記憶装置インターフェース、割り込みインターフェース及び処理ユニットを有する。記憶装置インターフェースは自由なハンドシェークプロトコルに従って記憶装置を制御する。割り込みインターフェースは割り込み要求を処理装置に伝送する。なお、処理ユニットは稼動して過程の任務を実行し、記憶装置インターフェースを介して記憶装置からデータを読み出し、又はデータを記憶装置に保存する。処理ユニットは該割り込みインターフェースを介して割り込み要求を伝送し、該記憶装置インターフェースを介して該記憶装置をアクセスする前に、該割り込みインターフェースを介して割り込み確認情報を受信する。
処理ユニットは前述の割り込みインターフェースを介して割り込み確認情報を受信する。処理ユニットは割り込みインターフェースとそれぞれ独立したレジスタを介して割り込み確認情報を受信してもよい。一方、処理ユニットは記憶装置より符号のブロックを読み出す。処理装置は内部記憶装置を有し、この内部記憶装置は処理ユニットより実行されるアプリケーションの部分符号を保存し、該内部記憶装置は記憶装置インターフェースを介して記憶装置から前記符号ブロックを入れ替える。このほか、処理ユニットは以下の二つのステップを実行する。(i)記憶装置インターフェースを介して記憶装置をアクセスする前、該割り込み要求を伝送しない第一状態;ii)割り込み要求を伝送し、更に割り込み確認情報を受信した場合にのみ、記憶装置をアクセスする第二状態。他の主装置より上述の記憶装置をアクセスする危険がない場合、処理ユニットは第一状態で稼動する。
本発明の他の実施例も記憶装置のアクセス方法を開示し、該方法は、(i)少なくとも一つの第一主装置を記憶装置に接続する段階;(ii)第二主装置から少なくとも一つの第一主装置に割り込み要求を発送する段階;(iii)少なくとも一つの第一主装置から割り込み要求に応じて発送された割り込み確認情報を受信する段階;(iv)少なくとも一つの第一主装置が割り込み要求を処理する間に、記憶装置をアクセスする段階を含む。
上述の方法は、記憶装置へのアクセスが完了した後、該少なくとも一つの第一主装置の割り込み要求処理を解放する段階を含む。該記憶装置へのアクセスは、読み出しアクセス、書き込みアクセス及び単一のメインプロトコルに制御されるインターフェースアクセスを含む。
本発明の上述の目的、特徴及び優位性をよりよく理解してもらうため、以下は添付した図面を参照しながら実施例を詳細に説明する。
図1は本発明の第一実施例による複数の処理装置が一つの記憶装置に接続されている構造を示す図である。説明を簡素化するため、本発明の実施例の説明に関する部分のみ示している。記憶装置130は直列周辺インターフェース(SPI)134を設け、直列周辺プロトコルに従って記憶データを記憶装置130に書込/読出する。記憶装置は130、例えばフラッシュ記憶装置、ROMまたは他の不揮発性記憶装置(non−volatile)のいずれでよい。また、記憶装置130はどれほどの記憶容量を有してもよい。例えば、1Mbyte、4Mbyte、16Mbyteなどの記憶容量が可能である。また、記憶装置130はROM又はRWMでもよい。
さらに図1を参照すると、主制御器110(例えば、サウスブリッジチップ(South Bridge chip)及び/又はI/Oコントローラハブ(I/O controller hub))は直列周辺インターフェース114を経由し、第一バス部分102と第二バス部分104から構成されるSPIバスを介して記憶装置130に接続される。本発明の実施例において、主制御器110は直列周辺インターフェース以外に他の記憶装置インターフェースを有さない。前記主制御器110は他の記憶装置インターフェースを有してもよいが、これら記憶装置インターフェースは図1の実施例の記憶装置130のアクセスには使わない。場合によって、主制御器110は記憶装置130をアクセスし、基本入出力システム(BIOS)、ローカルエリアネットワーク(LAN)、及びコンピューター100のシステム管理など、少なくとも一つの応用のソフトウェアコードを得る。一方、取得した情報にはソフトウェアコード部を有し、コードスワッピング(ページング)法(code swapping(paging) method)でソフトウェアコード間の必要な入替を行う。或いは、主制御器110は記憶装置130をアクセスし、更新されたソフトウェアコード、例えばコンピューターとネットを通して更新された基本入出力システム(BIOS)などを保存する。このほか、主制御器110は記憶装置130をアクセスして、コンピューター100のシステム構造の変更を保存する。
組込コントローラ(Embedded controller; EC)120はSPIバスに位置される。組込コントローラ(EC)120は第一バス部分102と第二バス部分104の間に位置される。記憶装置130をアクセスしない場合、組込コントローラ120は状況によってパススルー(pass−through)モードで運行し、該モードにおいて、組込コントローラ120は第一バス部分102と第二バス部分104の間で適当な速度で信号を伝送する。
本発明の実施例において、組込コントローラ120はコンピューター100中の一つ又は複数の周辺機器、例えばキーボード、マウス、ディスプレイ、電源供給器或いは電池(図なし)などを制御することができる。前記コンピューター100はいずれ分野のコンピューターでもよい。例えば、ノートパソコン、デスクトップコンピューター、サーボコンピューター、ポスコンピューター、或いはクライアントコンピューターなどである。組込コントローラ120は状況によって記憶装置130からソフトウェアコードを取り出し、アプリケーションプログラムを実行する。組込コントローラ120はRAM122のような小さい内部記憶装置を備え、該内部記憶装置は実行待のソフトウェアコードを保存してアプリケーションプログラムを適切に実行させる。ある場合、組込コントローラ120は記憶装置130から異なる部分コードを取出し、一つ又は複数部のソフトウェアコードを入れ替える必要がある。組込コントローラ120は直接記憶装置130に保存されているソフトウェアコードを実行することができ、又は記憶装置130に対して、例えばシステム構造パラメータの保存などのアクセス動作を行うことができる。
組込コントローラ120は処理ユニット(processing unit; PU)121を備え、処理ユニット121は記憶装置130より取出されてRAM122に保存されたコードを実行する。前記コードは第二バス部分104に接続された記憶装置インターフェース123を経由し、多重化装置125を介して得る。また、処理ユニット(PU)121は直接に記憶装置インターフェース123に接続されてもよい。これにより、処理ユニット(PU)121はRAM122を経由せず、記憶装置130のデータを直接に受信する。
図2は、本発明の第一実施例による組込コントローラ120が記憶装置130をアクセスするフローチャートである。図1及び図2によると、組込コントローラ120は何れの稼動が始まる前はパススルー(pass−through)素子と見なされ、ほぼ無遅延(ナノ秒レベルの遅延)の状態でバス102及び104の間で簡単な信号伝送を行う(ステップ200)。組込コントローラ120が記憶装置130に対して読出/書込動作を行おうとする場合、組込コントローラ120は状況によって許容自由状態(permission−free state)を確認し(ステップ230)、許容自由状態である場合は、何れの準備も必要せず記憶装置130をアクセスする。尚、許容自由状態でない場合、組込コントローラ120は線路146に位置する主制御器110の割り込みインターフェース(interrupt interface)118に割り込み要求(interrupt request; IRQ)を送る(ステップ202)。また、主制御器110より出力された割り込み確認情報を受信すると(ステップ204)、すぐ第一バス部分102と第二バス部分104の間のパススルー連結を中断し、記憶装置インターフェース123と第二バス部分104を接続する(ステップ206)。割り込み実行が始まると、組込コントローラ120は記憶装置130をアクセスする(ステップ208)。尚、主機(host computer)140の正常的な操作は既に割り込まれたため、主制御器110による記憶装置130のアクセスとか、組込コントローラ120の記憶装置のアクセスを妨害するような危険はない。また、記憶装置へのアクセス動作が完了すると、組込コントローラ120は改めて第一バス部分102及び第二バス部分104とパススルー連結になり(ステップ210)、割り込みを終了し(ステップ212)、同時にパススルー稼動状態に戻る(ステップ200)。
記憶装置130をアクセスする場合、若し組込コントローラ120が既に許容自由状態になると(ステップ230)、組込コントローラ120は直接にパススルー連結を割り込んで前記記憶装置をアクセスする(ステップ206)。発明の実施例において、主機140及び何れのほかの主装置から記憶装置130をアクセスする可能性が確かにない場合(例えば、主機140をリセットする場合)、組込コントローラ120は許容自由状態になる。一方、他の実施例において、組込コントローラ120は許容自由状態にならず、又はステップ230は実行されていない。組込コントローラ120は許容自由状態で記憶装置130をアクセスした後、改めてパススルー連結になり(ステップ210)、割り込み停止のプログラムを実行せず(ステップ240)、自動的にパススルー状態に戻る(ステップ200)。一方、許容自由状態において、組込コントローラ120は連続的に記憶装置に接続され、接続割り込みを繰り返すことや(ステップ206)、改めてパススルー連結になる(ステップ210)ことなどの必要がない。組込コントローラ120の前記許容自由状態が変更されると、パススルー連結が接続される。
本発明の実施例の図1において、多重化装置125または三態緩衝器(TRI−STATE)を用いて、記憶装置130から主制御器110への接続を中断することができる(ステップ206)。
発明の実施例において、組込コントローラ120の割り込み要求は何れの有効目標もない中断プログラムを実行し、主制御器110及び主機140がアイドリング状態になるようにする。一方、この割り込みは、主機140に記憶装置130へのアクセス動作以外のコンピューター100のメンテナンスを実行させる。一方、割り込み要求は主機140に伝送され、組込コントローラ120に制御されるレジスタ128のアサート(assert)の有無を調べ、レジスタ128値がアサートされた場合にのみ割り込み要求を停止する。尚、レジスタ128値は組込コントローラ120が記憶装置へのアクセスを完了した場合、アサートされる。一方、この割り込みは主機140に所定時間の任務を実行させ、この場合組込コントローラ120が記憶装置130をアクセスするのに十分な時間があり、改めて正常な稼動に戻られる。
発明の実施例において、その他の処理装置は主制御器110又は何れの有効的なインターフェースを介して記憶装置130をアクセスする。尚、組込コントローラ120が記憶装置130をアクセスする際、主機140の割り込み実行過程はその他の処理装置にも作用して処理装置の稼動を抑制し、その他の処理装置が記憶装置130をアクセスすることを防止する。或いは、並列方式でその割り込み要求を記憶装置130のアクセスできる多数処理装置にも供給する。或いは、ハードウェアハンドシェーク法によって、一つ又は多数のその他の処理装置に通知し、その他の処理装置が記憶装置130をアクセスすることを抑制する。
本発明の実施例において、主装置154はPCI(Peripheral Controller Interface)バス152を介して主制御器110に電気接続される。場合によって、割り込み要求を主制御器110に通知し、主制御器110が記憶装置130をアクセスすることを避ける。さらに、割り込みが終了する前には、主装置154、或いは何れのその他の処理装置または処理装置以外の主装置がアクセス命令を発送することを禁止する。或いは、割り込みの実行過程は主装置154の稼動を割り込みの終了まで抑制する。これは、組込コントローラ120の記憶装置へのアクセス動作が主装置154に妨害されることを防止するためである。
組込コントローラ120の割り込みのためで、主機140が稼動できない時間は非常に短い。通常、0.5%処理時間又は0.1%処理時間よりも少ない。従って、組込コントローラ120の記憶装置へのアクセス動作は主機140の正常的な稼動を乱さない。発明の実施例において、組込コントローラ120が記憶装置をアクセスする動作は限界性がある。例えば、一秒にただ100回又は50回であり、毎度アクセス時間は状況によって15マイクロ秒又は10マイクロ秒より少ないし、7マイクロ秒よりも少ない場合がある。一方、組込コントローラ120は集中的に記憶装置130をアクセスし、主機140が少なくとも5%処理時間又は10%処理時間アイドリング状態になる。割り込みの実行で主機140の稼動効率が下がってしまうが、組込コントローラ120及び主制御器110が記憶装置130を一つしか使わないため、ある観点から見るとこの優位性が効率降下を補うことができる、と本発明の発明者は考える。
上述のように、組込コントローラ120から出力された割り込み要求信号は主制御器110を経由する。しかし、発明の実施例において、主制御器110を経由せず、直接に線路146を介して主機140に出力されてもよい。
図1及び図2を参照すると、前記割り込み確認情報を受信するステップ204において、確認情報は主制御器110と組込コントローラ120の間にある専用配線144又は主機140に接続された類似線路に供給されて、割り込み要求の起動及び/又は実行のプロトコルとする。一方、この確認情報は割り込み開始ステップとして供給される。例えば、割り込み実行過程を組込コントローラ120のレジスタ128に書き込む。しかしながら、発明の実施例において、組込コントローラ120は割り込み確認情報を必要せず、割り込み要求を出力してから所定の時間、例えば20マイクロ秒が経過してから記憶装置130をアクセスする(ステップ208)。
記憶装置のアクセスステップ208は、1バイト又はその他のデータブロックをアクセスすることができ、または連続的に多数のデータセグメントをアクセスすることができる。記憶装置のアクセスは選択的に所定に時間内(例えば50マイクロ秒又は20マイクロ秒より少ない)に行われる。
発明の実施例において、組込コントローラ120は一部記憶装置130へのアクセス動作を遅延して、ある記憶装置130へのアクセスに対する限定及び主機140の稼動中断に対する限定に合わせる。実施例において、組込コントローラ120は単に前のアクセスが予定時間実行された後、記憶装置130へのアクセスを許す。一方、主制御器110に割り込み要求を送る前、組込コントローラ120はアクセス待ち動作を所定の量まで累積する。しかし、発明のある実施例において、組込コントローラ120は累積量が所定の時間内で所定量に達さなくても、記憶装置130をアクセスすることができる。
図3は、本発明の他の実施例による記憶装置130と別の構成素子との接続を示す図である。図3は図1と類似している。しかし、図3の記憶装置130はスイッチ322を介して主制御器110及び組込コントローラ320に接続されている。スイッチ322の開閉器324は組込コントローラ320に制御され、該制御により記憶装置130と組込コントローラ320又は主制御器110との接続が決まる。
図3にも三つの処理装置が一つの記憶装置130を共有している。通常、主制御器110が記憶装置130に接続されている。組込コントローラ320が記憶装置130へのアクセスを希望する時、組込コントローラ320は主制御器110に割り込み要求を伝送し、また確認情報を受信した後、開閉器324を組込コントローラ320側に設定して記憶装置130をアクセスする。同様に、その他の処理装置350が記憶装置130へのアクセスを希望する時、その他の処理装置350は主制御器110に割り込み要求を伝送する。この場合、主制御器110は単に所定の時間内で割り込みを確認するため、その他の処理装置350が記憶装置130をアクセスする時、組込コントローラ320の稼動を抑制する必要がない。開閉器324は主制御器110からの確認情報を受信し、その他の処理装置350側に設定されて記憶装置をアクセスさせる。或いは、その他の処理装置350の命令によって、組込コントローラ320が開閉器324を設定する。一方、その他の処理装置350は、例えば、多重化装置又は相互制御ライン(mutually controlled line)を介して直接に開閉器324を制御することもできる。データの取出しが完了した後、その他の処理装置350は主制御器110を解放する。
上述の内容においてインターフェースとしてSPIを説明したが、上述の実施例及び方法は他の直列又は並列バスプロトコルによっても実行される。例えば、実施例において、バスプロトコル及び/又はバスプロトコルを実行するユニットはバスに対する制御権の規定がなくてもよい。また、バスプロトコルは送信機がコリジョン(collision)を決定することを許す規定がなくてもよい。本発明の実施例において、処理装置と記憶装置間のバスプロトコルはいずれのハンドシェーク方法も使わない。
また、図1に示された記憶装置130は単一の記憶装置であるが、上述の実施例又は方法は、多数処理装置が多数直列記憶装置を共有する構造にも適用される。
上述の実施例において、主制御器110が連続して記憶装置130に接続され、組込コントローラ120は主制御器110に割り込み要求を発送して記憶装置130へのアクセスを行う。しかし、他の実施例においては、主制御器110が記憶装置130をアクセスしようとする時、組込コントローラ120に割り込み要求を発送する。
上述の内容は記憶装置を共有する場合を例としているが、他の資源を共有する場合にも適用される。
以上、本発明は好ましい実施例を説明したが、本発明はこの実施例に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は本発明の範囲に属する。
本発明の第一実施例による複数の処理装置が一つの記憶装置に接続されている構造を示す図である。 本発明の第一実施例による組込コントローラが記憶装置をアクセスするフローチャートである。 本発明の他の実施例による記憶装置と別の構成素子との接続を示す図である。
符号の説明
100、 コンピューター
102、 第一バス部分
104、 第二バス部分
110、 主制御器(Host Controller)
114、134、 直列周辺インターフェース
118、 割り込みインターフェース
120、 組込コントローラ
121、 処理ユニット
122、 ランダムアクセス記憶装置(RAM)
123、 記憶装置インターフェース
125、 多重化装置
128、 レジスタ
130、 記憶装置
140、 主機(host computer)
144、 配線
146、 線路
154、 主装置
200、202、204、206、208、210、212、230、240、 ステップ
320、 組込コントローラ
322、 スイッチ
324、 開閉器
350、 他の処理装置

Claims (15)

  1. システム装置であって、
    記憶装置とアクセス主装置の間にあり、自由なハンドシェークプロトコルに合わせた記憶装置インターフェースを有する記憶装置と、
    該記憶装置に電気接続されたバスと、
    該バスと該記憶装置インターフェースを介して該記憶装置をアクセスし、割り込みインターフェースを介して割り込み要求を受信した後、割り込み操作を実行する第一主装置と、
    該バスと該記憶装置インターフェースを介して該記憶装置をアクセスし、該記憶装置をアクセスする前に該第一主装置に該割り込み要求を伝送する第二主装置と、
    を含むシステム装置。
  2. 該記憶装置インターフェースは該バスの衝突識別のプロトコルをサポートしないインターフェースを含む請求項1記載のシステム装置。
  3. 該記憶装置インターフェースはプロトコルインターフェースであり、該プロトコルインターフェースは、直列周辺インターフェースプロトコル又は単一処理装置を選択して記憶装置をアクセスするのをサポートしないプロトコルに従って稼動される、請求項1記載のシステム装置。
  4. 該第一主装置はコンピューターの主機を有し、該コンピューターの主機は主制御器を介して、少なくとも
    (i)該記憶装置をアクセスするステップ、及び
    (ii)割り込み要求を受信するステップ
    を実行する、請求項1記載のシステム装置。
  5. 該第一主装置はコンピューターの主機を有し、該第二主装置は該コンピューターの組込コントローラを有する、請求項1記載のシステム装置。
  6. 該第二主装置はコンピューターの制御器を有し、該制御器はシステム制御器、キーボード制御器又はノートパソコンの組込コントローラである、請求項1記載のシステム装置。
  7. 該第二主装置は該第一主装置及び該記憶装置に電気接続された該バスに位置する、請求項1記載のシステム装置。
  8. 該第二主装置は該第一主装置より発送された割り込み確認情報を受信した後、又は該割り込み要求を発送してから所定時間後に記憶装置をアクセスし、該割り込み確認情報は該第一主装置から該割り込み要求に応じて発送された情報である、請求項1記載のシステム装置。
  9. 該第一主装置と該第二主装置は処理装置を有する、請求項1記載のシステム装置。
  10. 処理装置であって、
    自由なハンドシェークプロトコルに従って記憶装置を制御する記憶装置インターフェースと、
    割り込み要求を処理装置に伝送する割り込みインターフェースと、
    過程の任務を実行し、該記憶装置インターフェースを介して該記憶装置からデータを読み出し又はデータを該記憶装置に保存し、該割り込みインターフェースを介して該割り込み要求を伝送し、該記憶装置インターフェースを介して該記憶装置をアクセスする前に割り込み確認情報を受信する処理ユニットと、
    を含む処理装置。
  11. 該処理ユニットは割り込みインターフェースとそれぞれ独立したレジスタを介して割り込み確認情報を受信する、請求項10記載の処理装置。
  12. 該処理ユニットは該記憶装置から符号のブロックを読み出す、請求項10記載の処理装置。
  13. 前記処理装置は内部記憶装置を有し、該内部記憶装置は処理ユニットより実行されるアプリケーションの部分符号を保存し、該内部記憶装置は該記憶装置インターフェースを介して記憶装置から該符号ブロックを入れ替える、請求項12記載の処理装置。
  14. 記憶装置をアクセスする方法であって、
    少なくとも一つの第一主装置を記憶装置に接続する段階と、
    第二主装置から該少なくとも一つの第一主装置に割り込み要求を発送する段階と、
    該少なくとも一つの第一主装置より割り込み要求に応じて発送された割り込み確認情報を受信する段階と、
    該少なくとも一つの第一主装置が割り込み要求を処理する間に、記憶装置をアクセスする段階と、
    を含む記憶装置をアクセスする方法。
  15. 記憶装置へのアクセスが完了した後、該少なくとも一つの第一主装置の該割り込み要求処理を解放する段階を含む、請求項14記載の記憶装置をアクセスする方法。
JP2008200750A 2007-08-06 2008-08-04 記憶装置のアクセス方法及び装置 Active JP4855451B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/834,053 US8285895B2 (en) 2007-08-06 2007-08-06 Handshake free sharing in a computer architecture
US11/834,053 2007-08-06

Publications (2)

Publication Number Publication Date
JP2009043256A true JP2009043256A (ja) 2009-02-26
JP4855451B2 JP4855451B2 (ja) 2012-01-18

Family

ID=40347542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008200750A Active JP4855451B2 (ja) 2007-08-06 2008-08-04 記憶装置のアクセス方法及び装置

Country Status (4)

Country Link
US (1) US8285895B2 (ja)
JP (1) JP4855451B2 (ja)
CN (1) CN101364212B (ja)
TW (1) TWI394048B (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090037932A1 (en) * 2007-08-01 2009-02-05 Clark Michael T Mechanism for broadcasting system management interrupts to other processors in a computer system
TWI397009B (zh) * 2009-04-30 2013-05-21 Inventec Corp 基本輸入輸出系統的資料處理裝置
EP2430528A1 (en) * 2009-05-15 2012-03-21 Thomson Licensing System and method for sharing memory
US8510492B2 (en) * 2010-09-08 2013-08-13 Integrated Device Technology Inc. System and method for communication handshaking between a master processors and a slave processor
US9268721B2 (en) 2010-11-25 2016-02-23 International Business Machines Corporation Holding by a memory controller multiple central processing unit memory access requests, and performing the multiple central processing unit memory requests in one transfer cycle
US9448954B2 (en) * 2011-02-28 2016-09-20 Dsp Group Ltd. Method and an apparatus for coherency control
CN102999471B (zh) * 2011-09-09 2015-11-04 中国科学院声学研究所 一种多处理器共享非易失性存储卡的方法及系统
JP5915192B2 (ja) * 2012-01-12 2016-05-11 ミツミ電機株式会社 センサ出力補正回路及びセンサ出力補正装置
TWI510903B (zh) * 2012-11-19 2015-12-01 Wistron Corp 電腦系統及資料回復方法
US20160350240A1 (en) * 2015-05-29 2016-12-01 Analog Devices Global Serial peripheral interface host port
US20180373653A1 (en) * 2017-06-21 2018-12-27 Hewlett Packard Enterprise Development Lp Commitment of acknowledged data in response to request to commit
US10579280B2 (en) * 2018-06-28 2020-03-03 Montage Technology Co., Ltd. On-die termination control for memory systems
KR102813343B1 (ko) * 2018-08-06 2025-05-27 에스케이하이닉스 주식회사 데이터 처리 시스템 및 그의 동작 방법
TWI775436B (zh) * 2021-05-17 2022-08-21 新唐科技股份有限公司 匯流排系統

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60237566A (ja) * 1984-05-10 1985-11-26 Oki Electric Ind Co Ltd プロセツサ間通信方式
JPS6159516A (ja) * 1984-08-30 1986-03-27 Fujitsu Ltd タイマ機構
JPH03116335A (ja) * 1989-09-29 1991-05-17 Oki Electric Ind Co Ltd 非特権cpuから特権cpuヘの乗り移り方式
JP2003196251A (ja) * 2001-12-27 2003-07-11 Denso Corp マルチcpuシステム
JP2004528656A (ja) * 2001-05-16 2004-09-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 組込み制御環境におけるリモート入出力機能への効率的なアクセスのための方法およびシステム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0601715A1 (en) 1992-12-11 1994-06-15 National Semiconductor Corporation Bus of CPU core optimized for accessing on-chip memory devices
US5603055A (en) 1994-01-27 1997-02-11 Vlsi Technology, Inc. Single shared ROM for storing keyboard microcontroller code portion and CPU code portion and disabling access to a portion while accessing to the other
US5819087A (en) 1996-07-19 1998-10-06 Compaq Computer Corporation Flash ROM sharing between processor and microcontroller during booting and handling warm-booting events
US5794054A (en) 1996-07-19 1998-08-11 Compaq Computer Corporation Flash ROM sharing between a processor and a controller
US5892943A (en) 1996-12-30 1999-04-06 Standard Microsystems Corp. Shared bios ROM warm boot
US5999476A (en) 1997-11-21 1999-12-07 Advanced Micro Devices, Inc. Bios memory and multimedia data storage combination
US6272584B1 (en) 1998-09-10 2001-08-07 Compaq Computer Corporation System board with consolidated EEPROM module
US7089339B2 (en) 2001-03-16 2006-08-08 National Semiconductor Corporation Sharing of functions between an embedded controller and a host processor
US6976136B2 (en) 2001-05-07 2005-12-13 National Semiconductor Corporation Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller
TW515959B (en) * 2001-05-10 2003-01-01 Via Tech Inc Method for memory data access by system management interrupt and computer system thereof
TWI240861B (en) * 2002-01-11 2005-10-01 Integrated Circuit Solution In Data access method and architecture of flash memory
US8037224B2 (en) * 2002-10-08 2011-10-11 Netlogic Microsystems, Inc. Delegating network processor operations to star topology serial bus interfaces
US6886089B2 (en) * 2002-11-15 2005-04-26 Silicon Labs Cp, Inc. Method and apparatus for accessing paged memory with indirect addressing
US7079427B2 (en) * 2004-07-02 2006-07-18 Taiwan Semiconductor Manufacturing Company, Ltd. System and method for a high-speed access architecture for semiconductor memory
US7814377B2 (en) * 2004-07-09 2010-10-12 Sandisk Corporation Non-volatile memory system with self test capability
JP2006172142A (ja) * 2004-12-16 2006-06-29 Matsushita Electric Ind Co Ltd マルチプロセッサシステム
KR100725099B1 (ko) * 2005-12-22 2007-06-04 삼성전자주식회사 멀티패쓰 억세스블 반도체 메모리 장치에서의 메모리확장구조
US7987464B2 (en) * 2006-07-25 2011-07-26 International Business Machines Corporation Logical partitioning and virtualization in a heterogeneous architecture
CN101000596A (zh) 2007-01-22 2007-07-18 北京中星微电子有限公司 一种可实现芯片内多核间通信的芯片及通信方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60237566A (ja) * 1984-05-10 1985-11-26 Oki Electric Ind Co Ltd プロセツサ間通信方式
JPS6159516A (ja) * 1984-08-30 1986-03-27 Fujitsu Ltd タイマ機構
JPH03116335A (ja) * 1989-09-29 1991-05-17 Oki Electric Ind Co Ltd 非特権cpuから特権cpuヘの乗り移り方式
JP2004528656A (ja) * 2001-05-16 2004-09-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 組込み制御環境におけるリモート入出力機能への効率的なアクセスのための方法およびシステム
JP2003196251A (ja) * 2001-12-27 2003-07-11 Denso Corp マルチcpuシステム

Also Published As

Publication number Publication date
TWI394048B (zh) 2013-04-21
JP4855451B2 (ja) 2012-01-18
US20090043916A1 (en) 2009-02-12
CN101364212A (zh) 2009-02-11
CN101364212B (zh) 2013-12-11
TW200907688A (en) 2009-02-16
US8285895B2 (en) 2012-10-09

Similar Documents

Publication Publication Date Title
JP4855451B2 (ja) 記憶装置のアクセス方法及び装置
US8700835B2 (en) Computer system and abnormality detection circuit
KR20110130435A (ko) 메모리 세그먼테이션 및 acpi 기반 컨텍스트 전환을 사용하는 운영 시스템 로딩
KR102805985B1 (ko) 집적 회로에서의 컴퓨트 유닛들의 프로그래밍 및 제어
KR20170013882A (ko) 플래시 메모리 기반 저장 디바이스의 멀티 호스트 전력 제어기(mhpc)
US7007126B2 (en) Accessing a primary bus messaging unit from a secondary bus through a PCI bridge
JP2002245022A (ja) マルチプロセッサシステムとその共有メモリ制御方法、及び共有メモリ制御プログラム
JP2963426B2 (ja) バスブリッジ装置及びトランザクションフォワード方法
US9047264B2 (en) Low pin count controller
US9563775B2 (en) Security co-processor boot performance
JP4359618B2 (ja) コンフィグレーション・レジスター・アクセス方法、設定方法、集積回路部品、コンピューター・システム、製品
US20060190637A1 (en) Control apparatus, information processing apparatus, and data transferring method
CN114253883B (zh) 一种endpoint设备访问方法、系统及endpoint设备
JPH0855097A (ja) データ処理システム及びそのメモリアクセス方法
CN114595188B (zh) 片上系统和事务处理
JP4585249B2 (ja) 情報処理装置
WO2013027297A1 (ja) 半導体装置、管理装置、及びデータ処理装置
JP5146796B2 (ja) ホストコントローラ
US7107373B2 (en) Method of hot switching data transfer rate on bus
CN105468562B (zh) 芯片组以及服务器系统
JPH1185673A (ja) 共有バスの制御方法とその装置
CN119759815A (zh) Ec串口的配置方法、设备及存储介质
JP2001337839A (ja) マルチ機能カード
JPH05242008A (ja) データ処理装置
JPH02190956A (ja) メツセージ・バツフア・システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110308

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110607

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110907

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

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141104

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4855451

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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

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

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