JP2006510966A - カプセル化ハードウェアの構成/制御 - Google Patents

カプセル化ハードウェアの構成/制御 Download PDF

Info

Publication number
JP2006510966A
JP2006510966A JP2004560121A JP2004560121A JP2006510966A JP 2006510966 A JP2006510966 A JP 2006510966A JP 2004560121 A JP2004560121 A JP 2004560121A JP 2004560121 A JP2004560121 A JP 2004560121A JP 2006510966 A JP2006510966 A JP 2006510966A
Authority
JP
Japan
Prior art keywords
configuration
subsystem
control
hardware
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2004560121A
Other languages
English (en)
Other versions
JP2006510966A5 (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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2006510966A publication Critical patent/JP2006510966A/ja
Publication of JP2006510966A5 publication Critical patent/JP2006510966A5/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2289Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4498Finite state machines
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Logic Circuits (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Information Transfer Systems (AREA)

Abstract

システムプログラマにのしかかる負担を緩和し、かつ、すなわち、現在の方法と比較して安全かつ誤りのない、複雑なハードウェアサブシステムを構成しかつ制御するための技術を提供する。本発明の一態様では、ハードウェアサブシステム(110)の構成は、制御装置部(113)および構成パラメータを格納する格納装置部(115)を含む構成制御装置をハードウェアに設けることによって達成される。構成制御装置(113)は、例えば構成/制御・IDに応答して起動され、その後、少なくとも1つの構成パラメータをハードウェアサブシステムのレジスタ(111)に格納することを含め、ハードウェアサブシステム(110)の構成を実行する。一般的に、構成制御装置ハードウェア(113)および格納装置(115)は、構成または制御対象のハードウェアサブシステム内に埋め込まれる。構成/制御・機能はこうして、システムプログラマが詳細を配慮する必要がないように、ハードウェアサブシステム(110)自体の中に「カプセル化」される。

Description

本発明は、ハードウェアサブシステムの構成および制御に関する。
集積密度が増加するにつれて、ハードウェアサブシステムはますます複雑になる。そのようなサブシステムは一般的に、起動時の初期化、およびその後の動作中の構成または再構成を必要とする。動作中のサブシステムの制御もまた、構成または再構成を引き起こすことがある。そのような初期化、構成、再構成、および制御は現在、ハードウェア、ファームウェア、またはソフトウェアに埋め込むことのできる、システムプログラミングを通して達成される。そのようなシステムプログラミングは困難であり、間違いが発生しやすく、かつプログラミングの観点からは安全でない。
現在、システムプログラマは最初に、ハードウェアサブシステムの詳細な仕様を読まなければならない。この仕様はしばしば非常に多量であり、かつ不明瞭であり、矛盾し、時代遅れであり、あるいは誤っていることがある。次に、プログラマは一般的に、ハードウェア抽象化言語(abstraction language)を符号化し、この言語は、仕様に言及している多数のレジスタおよび定義ビットを英数字記述に変換し、この英数字記述は、プログラマが数字の代わりに名前でハードウェアサブシステムを構成しかつ制御することを可能にする。一般的にこのタスクを支援するツールはない。したがって、ハードウェア抽象化言語の構築はえてして、多くのプログラマにとって魅力がなく、したがって間違いを起こしやすい、困難な置換のプロセスを含む。
このプロセスの結果、ハードウェア抽象化インタフェースを通過するコマンドおよびデータを順序付ける際に誤りが発生することがある。また、仕様が間違っていたか誤解されたために、誤りが発生することもある。さらに、ハードウェアサブシステムのインタフェースは事実上グローバルである(つまり、一般的に任意のタスクが任意のサブシステムのレジスタまたはメモリにアクセスすることができる)ので、誤った、または悪意のあるタスクが、大混乱を引き起こすおそれがある。この意味で、複雑なハードウェアサブシステムの構成および制御のための現在のスキームは安全ではない。
必要なのは、システムプログラマにのしかかる上記の負担を緩和し、かつ比較的に安全かつ誤りのない、複雑なハードウェアサブシステムの構成および制御のための技術である。
本発明は、一般的に言うと、システムプログラマにのしかかる上記の負担を緩和し、かつ現在の方法と比較して安全かつ誤りのない、複雑なハードウェアサブシステムを構成しかつ制御するための技術を提供する。本発明の一態様では、ハードウェアサブシステムの構成は、制御装置部(コントローラ部)と構成パラメータを格納する格納装置部(ストーリッジ部)とを含む構成制御装置(configuration/controller)をハードウェアに設けることによって達成される。構成制御装置は、例えば構成/制御(configuration/control)・IDに応答して駆動され、その後、少なくとも1つの構成パラメータをハードウェアサブシステムのレジスタに格納することを含め、ハードウェアサブシステムの構成を実行する。一般的に、構成制御装置ハードウェアおよび格納装置は、構成または制御対象のハードウェアサブシステム内に埋め込まれる。構成/制御・機能はこうして、システムプログラマが該機能の詳細を配慮する必要がないように、ハードウェアサブシステム自体の中に「カプセル化(encapsulated)」される。構成制御装置は例えば状態機械(ステートマシン)の形を取ることができる。
ハードウェアサブシステムは、システムの動作中の異なる時間に異なる構成を取ることがある。この場合、複数の構成/制御・IDを設けることができ、各構成/制御・IDが特定の構成に対応する。
本発明は、以下の詳細な説明および添付の図面を参照することにより、いっそう理解が深まるであろう。
今、図1を参照すると、カプセル化ハードウェア構成/制御を使用するシステムの回路図が示されている。システムは、例えば電子シャーシ、回路基板、マルチチップモジュールもしくは他のモジュール、「システムオンチップ」(SOC)集積回路もしくは他の集積回路等を含め、様々な形のいずれかとすることのできる電子システムである。システムはプロセッサ101およびシステムバス103を含むものとする。システムバスは、必要に応じて1つまたはそれ以上のバスブリッジインタフェースを使用して、他のバス(図示せず)に接続することができる。
システム内では、構成または制御対象のサブシステム110を含め、様々なサブシステムがシステムバスに接続される。例えばSOCの文脈(コンテクスト)において、1つのそのような典型的なサブシステムは、例えばUSB制御装置である。他の典型的なサブシステムとして、例えばSDRAM制御装置、PLL/クロックサブシステムブロック等が挙げられる。
構成または制御対象のサブシステム110は、単純化された形で、様々なハードウェアレジスタ111を含み、かつ加えて構成/制御・状態機械113およびアソシエィテドメモリ115を含むように図示されている。状態機械113は、複雑な命令セットプロセッサにならってパターン化することができる。メモリ115は一般的に読出し専用である。構成/制御・状態機械113はシステムバスと通信し、メモリ115は例えばサブシステムバス117を介して様々なレジスタと通信する。メモリ115の幅はサブシステムバス117の幅と合致することが好ましい。
動作中、サブシステム110を構成または制御するために、単一の簡単な構成/制御・IDがプロセッサ101から構成/制御・状態機械113に渡され、それはシステムソフトウェアには単にレジスタのようにしか見えない。構成/制御・状態機械113は、サブシステムのレジスタセット111への1回またはそれ以上の書込みサイクルを実行させることによって、構成/制御・IDに応答する。システムプログラマは、構成/制御・状態機械113の内部の働きを忘れることができる。
異なる構成または異なる制御動作を考慮して、複数組の構成データをメモリ115の異なる部分内に格納することができる。異なる組の構成データまたは異なる制御動作を指定するために、異なる構成/制御・IDを使用することができる。
単一のサブシステムに対し複数の構成/制御・IDを使用する一例は、特定のポート(つまりエンドポイント)が制御、割込み、アイソクロナス(Isochronous)、またはバルクモード(Bulk Mode)で動作することのできる、USB(ユニバーサルシリアルバス)ブロックである。この場合、異なる構成/制御・IDが各モードに割り当てられる。各々の異なるモードに対し、構成/制御・状態機械113は対応する構成/制御・IDに応答して、先行技術の手法で遭遇した誤りの著しい潜在的可能性なしに、潜在的に多数のレジスタ(例えばエンドポイントイネーブルレジスタ、エンドポイント割込みレジスタ、DMA制御レジスタ等)に書き込む。システムソフトウェアはこれらの「内部」レジスタのいずれについても知る必要がなく、代わりに、システムソフトウェアは単に、比較的少数の構成/制御・IDを知る必要があるだけである。簡単な構成/制御・IDを単一の「レジスタ」(構成/制御・状態機械113)に書き込むことによって、所望の構成が確実に達成される。
構成/制御・IDは、様々なサブシステムハードウェアオプションを使用可能または使用禁止にすることができる。例えばUSB制御装置の場合、制御機能として、USBパケットが無事に受信された後のDMA制御装置の自動再初期化を使用可能にまたは使用禁止にすることが挙げられる。(このオプションを使用可能にした場合、DMA機能はソフトウェアの介在なしに次のパケットをすぐに受け入れることができる)。制御モードに対応する構成/制御・IDは一般的にこのオプションを使用可能にするが、バルクモードに対応する構成/制御・IDは一般的にそうしない。
複数の異なる制御IDを使用して、サブシステムの特定の内部の働きにアクセスすることができる。例えばUSBサブシステムでは、ソフトウェアによって制御される1つの機能は、USBバストラヒックがないときに電力を低減するために、サブシステムをサスペンドモードにすることである。単一の一意(ユニーク)の制御IDをこの機能に割り当てることができる。ソフトウェアは、このモードを使用可能にするために、単にこのIDをサブシステムに書き込むだけである。実際のレジスタおよびこの機能を実行するレジスタ内の特定のビットは、見えないように隠される(つまりカプセル化される)。このスキームの追加の利点は、ソフトウェアを変更することなく、USBブロックの完全な再設計を実現することができることである。
このように特定の実施形態に関して本発明を説明したが、本発明は、その精神または本質的特長から逸脱することなく、他の特定の形態で具現することができることを、当業者は理解されるであろう。したがって、現在開示する実施形態は、あらゆる点において例証であって、限定ではない。発明の範囲は、上記の説明ではなく、むしろ特許請求の範囲の記載によって示され、その均等物の趣旨および範囲内の全ての変形はその中に包含されるものとする。
カプセル化ハードウェア構成/制御を使用するシステムの回路図である。

Claims (10)

  1. サブシステムの構成または制御を実行する方法であって、
    制御装置部(113)と、構成パラメータを格納する格納装置部(115)と、を有する構成/制御・ユニットを、サブシステムと共に設け、
    前記構成/制御・ユニットで駆動信号を受け取り、
    さらに、前記構成/制御・ユニットが、前記駆動信号に応答して、少なくとも1つの構成パラメータを前記サブシステム内のある場所(111)に格納することを含んだ、前記サブシステム(110)の構成または制御、を実行する、
    方法。
  2. 前記サブシステム(110)がハードウェアサブシステムであり、かつ前記構成/制御・ユニットがハードウェア構成/制御・ユニットである請求項1に記載の方法。
  3. 前記ハードウェアサブシステム(110)および前記ハードウェア構成/制御・ユニットが共に同一集積回路内に設けられる請求項1に記載の方法。
  4. 前記駆動信号が構成/制御・IDである請求項1に記載の方法。
  5. 前記構成/制御・ユニットが、前記サブシステム(110)に対し異なる対応する構成または制御・動作を実行するために、複数の異なる構成/制御・IDに応答する請求項4に記載の方法。
  6. 自己構成能力を有するサブシステムであって、
    前記サブシステムがレジスタの内容に応じて異なるように機能するように構成された、複数のレジスタを含むレジスタ部分(111)と、
    制御装置部(113)と、構成パラメータを格納する格納装置部(115)と、を有する構成/制御・ユニットと
    を備え、
    前記構成/制御・ユニットは、少なくとも1つの構成パラメータを前記サブシステム(110)内のある場所(111)に格納することを含んだ、前記サブシステム(110)の構成または制御を、実行するために駆動信号に応答するように構成されている、
    サブシステム。
  7. サブシステム(110)がハードウェアサブシステムであり、かつ前記構成/制御・ユニットがハードウェア構成/制御・ユニットである請求項6に記載の装置。
  8. 前記ハードウェアサブシステム(110)および前記ハードウェア構成/制御・ユニットが共に同一集積回路内に設けられる請求項7に記載の装置。
  9. 前記駆動信号が構成/制御ユニットIDである請求項6に記載の装置。
  10. 前記構成/制御・ユニットが、前記サブシステム(110)に対し異なる対応する構成または制御動作を実行するために、複数の異なる構成/制御・IDに応答する請求項9に記載の装置。
JP2004560121A 2002-12-18 2003-12-17 カプセル化ハードウェアの構成/制御 Withdrawn JP2006510966A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US43473802P 2002-12-18 2002-12-18
PCT/IB2003/006008 WO2004055668A2 (en) 2002-12-18 2003-12-17 Encapsulated hardware configuration/control

Publications (2)

Publication Number Publication Date
JP2006510966A true JP2006510966A (ja) 2006-03-30
JP2006510966A5 JP2006510966A5 (ja) 2007-02-08

Family

ID=32595302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004560121A Withdrawn JP2006510966A (ja) 2002-12-18 2003-12-17 カプセル化ハードウェアの構成/制御

Country Status (6)

Country Link
US (1) US7788416B2 (ja)
EP (1) EP1576468A3 (ja)
JP (1) JP2006510966A (ja)
CN (1) CN100357890C (ja)
AU (1) AU2003292455A1 (ja)
WO (1) WO2004055668A2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9104894B2 (en) * 2005-12-16 2015-08-11 Hewlett-Packard Development Company, L.P. Hardware enablement using an interface
US7650437B2 (en) 2006-08-01 2010-01-19 Research In Motion Limited System and method for managing hardware configuration parameters
EP1909172A1 (en) * 2006-08-01 2008-04-09 Research In Motion Limited System and method for managing hardware configuration parameters
TW201001289A (en) * 2008-06-27 2010-01-01 Silicon Motion Inc Embedded system and hardware setting method
CN105095149B (zh) * 2015-08-10 2018-10-16 青岛中星微电子有限公司 一种片上***参数的批处理方法和装置
US11138140B2 (en) 2020-01-31 2021-10-05 Hewlett Packard Enterprise Development Lp Configuring first subsystem with a master processor and a second subsystem with a slave processor

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6240496B1 (en) * 1989-11-24 2001-05-29 Hyundai Electronics America Architecture and configuring method for a computer expansion board
US5333270A (en) * 1992-12-29 1994-07-26 National Semiconductor Corporation FDDI configuration management state machine controller
FR2700402B1 (fr) * 1993-01-13 1995-04-07 Sgs Thomson Microelectronics Microcontrôleur à mémoire électriquement programmable multimode.
CN1113302C (zh) * 1993-07-30 2003-07-02 佳能株式会社 通过通信线路控制设备的控制器和方法
JP2000513523A (ja) * 1996-06-21 2000-10-10 オーガニック システムズ インコーポレイテッド プロセスの即時制御を行う動的に再構成可能なハードウェアシステム
US5938764A (en) * 1996-10-23 1999-08-17 Micron Electronics, Inc. Apparatus for improved storage of computer system configuration information
US6222757B1 (en) * 1998-02-25 2001-04-24 Xilinx, Inc. Configuration memory architecture for FPGA
US6363437B1 (en) * 1999-01-07 2002-03-26 Telefonaktiebolaget Lm Ericsson (Publ) Plug and play I2C slave
US6542945B1 (en) * 1999-09-28 2003-04-01 Intel Corporation Instant configuration of a digital device
EP1102173A3 (en) * 1999-11-22 2005-01-19 Texas Instruments Incorporated Universal serial bus architecture
US6640262B1 (en) * 1999-12-20 2003-10-28 3Com Corporation Method and apparatus for automatically configuring a configurable integrated circuit
US6606670B1 (en) * 2000-08-16 2003-08-12 Microchip Technology Incorporated Circuit serial programming of default configuration
TW518502B (en) * 2001-07-13 2003-01-21 Prolific Technology Inc USB compound device and the realization method thereof
US7064579B2 (en) * 2002-07-08 2006-06-20 Viciciv Technology Alterable application specific integrated circuit (ASIC)

Also Published As

Publication number Publication date
AU2003292455A8 (en) 2004-07-09
WO2004055668A3 (en) 2005-08-04
EP1576468A2 (en) 2005-09-21
US7788416B2 (en) 2010-08-31
EP1576468A3 (en) 2005-09-28
WO2004055668A2 (en) 2004-07-01
AU2003292455A1 (en) 2004-07-09
CN100357890C (zh) 2007-12-26
CN1729450A (zh) 2006-02-01
US20060123145A1 (en) 2006-06-08

Similar Documents

Publication Publication Date Title
JP3364495B2 (ja) 追加ボード
KR100280637B1 (ko) 고정된플래시롬의데이터갱신이가능한컴퓨터시스템및그제어방법
JPH0583941B2 (ja)
JP2006293544A (ja) 数値制御システム
JP2006510966A (ja) カプセル化ハードウェアの構成/制御
JP2001134629A (ja) シミュレーション方法およびシミュレーション装置
JP2000163268A (ja) コンピュータ
US11586446B1 (en) System and methods for hardware-based PCIe link up based on post silicon characterization
JP2907808B1 (ja) フラッシュメモリエミュレーション装置及びそれを用いたデバッグシステム
JP4083474B2 (ja) メモリ装置の制御方法およびそのプログラムならびに記録媒体
US20020004877A1 (en) Method and system for updating user memory in emulator systems
JPH10283172A (ja) フラッシュromデータ書き換え方式
JP2000029679A (ja) フラッシュメモリをbios―romとして使用したパ―ソナルコンピュ―タ
JPH10198524A (ja) ハードディスク制御装置
JPH11328089A (ja) Pciバスインタフェース用デバイスにおけるid情報書き込み回路
JPH1185529A (ja) データ記憶システム及びコンピュータシステムの起動方法
JPH10312307A (ja) コンピュータシステムに適用するエミュレータ
JP2978008B2 (ja) メモリ管理方式
JPH04313117A (ja) プリンタ
JP2006163555A (ja) メモリ制御装置およびそのメモリ制御方法
JPH10247187A (ja) 1チップマイクロコンピュータ
JP2002373089A (ja) コンピュータ装置
JPH1153224A (ja) ウォッチドッグタイマ及びマイクロコンピュータ
JP2000242516A (ja) エミュレータシステム
JPH09282897A (ja) Romライター装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061215

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061215

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080703

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090928