JPH05173944A - コンピューターの入出力装置に対するアドレス割当て方法 - Google Patents

コンピューターの入出力装置に対するアドレス割当て方法

Info

Publication number
JPH05173944A
JPH05173944A JP11959092A JP11959092A JPH05173944A JP H05173944 A JPH05173944 A JP H05173944A JP 11959092 A JP11959092 A JP 11959092A JP 11959092 A JP11959092 A JP 11959092A JP H05173944 A JPH05173944 A JP H05173944A
Authority
JP
Japan
Prior art keywords
address
register
computer
bus
program
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
JP11959092A
Other languages
English (en)
Inventor
W David Isenberg
イーサンバーグ ダブリュー.デイヴィッド
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.)
NCR Voyix Corp
Original Assignee
NCR 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 NCR Corp filed Critical NCR Corp
Publication of JPH05173944A publication Critical patent/JPH05173944A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment
    • G06F12/0661Configuration or reconfiguration with centralised address assignment and decentralised selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】ユーザーがソフトウェアの命令を使っていくつ
かのデバイスにアドレスを割当てできるシステムを与え
る。 【構成】ユーザーが使用するデバイスのアドレスはプロ
グラムで割当でき、ユーザーがレジスタに負荷する。コ
ンピューターの動作中、アドレスバス上に存在するアド
レスとレジスタに負荷したアドレスとが等しいか否かに
ついて比較器が継続的に質問を発する。両者が一致した
ときは比較器が当該デバイスをイネーブル化(作動可能
化)する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピューター内の入出
力デバイス(I/Oデバイス)に対しユーザーが特定の
アドレスを割当てできることにより、異なるデバイスの
アドレス間に生じうる衝突を低減することのできるシス
テムに関する。
【0002】
【従来の技術】簡単な例によりI/Oデバイスに起こり
うる衝突を説明する。図1はコンピューターを簡単化し
て示す図面である。アドレスバスは一般的にプロセッサ
(CPU)により与えられる多重ビットアドレスワード
を担持する。このアドレスバスは他のデバイス、例えば
メモリ、I/Oデバイス(ディスクドライブ等)に接続
されており、これらのデバイスはこのアドレスバスを常
時「聞いて」いる。デバイスの一つが自分のアドレスを
「聞く」と、適当な方法でそれに応答する。さらに詳細
なコンピューターのアーキテクチャーに付いてはウィリ
アムスターリングス著の「コンピューターアーキテクチ
ャーおよび組織(Computer Architecture and Organiza
tion, MacMillan Pub. Co., 1987)に解説されており、
これを参考としてここに引用する。
【0003】一般的に、コンピューターのユーザーは追
加的デバイスを追加したい希望を持っているが、これら
はアドレスバスに接続される。これらのデバイスはコン
ピューター製作者以外の第三者によっても製作される。
この設置を許容するため、一般にコンピューターメーカ
ーは後に設置されるデバイスのための一定範囲の空のア
ドレスを用意している。しかしながら、時折、デバイス
メーカーは異なるデバイスに同一のアドレスを割当てる
ことがあり、もしもこれら異なるデバイスが同一のコン
ピューターに設置されると衝突を引き起こす。
【0004】衝突に対する一つの解決方法は、前記第三
者の製作者ならぬユーザーがDIPスイッチの設定をす
ることによりアドレスの選択ができるようにすることで
ある。しかしDIPスイッチの操作にすべての人が習熟
し、あるいはDIPスイッチの設定が表す二進数に習熟
してはいないこと、また誤ってスイッチを設定する可能
性があることがこの解決法の欠点である。さらにそのデ
バイスにもしも他のDIPスイッチがあれば、ユーザー
が誤って間違ったスイッチを設定する可能性がある。
【0005】
【発明が解決しようとする課題】本発明はコンピュータ
ーのデバイス又は機能にアドレスを割当てるための改良
システムを与えることを課題とする。
【0006】本発明の別の課題は、ユーザーがソフトウ
ェア上の命令を使ってデバイスにアドレスを割当てでき
るシステムを与えることである。
【0007】
【課題を解決するための手段】本発明の一態様ではユー
ザーが、問題としているデバイス用のアドレスをレジス
タに負荷する。アドレスバス上に存在するアドレスがレ
ジスタに負荷したアドレスに等しいか否かについて比較
器が継続的に質問を発する。もしも等しいと、この比較
器がデバイスを作動させる。
【0008】本発明を簡単に述べると、デバイスはその
アドレスがプログラムできる要になっており、各デバイ
スに連関されたアドレスレジスタと比較器は設けられ
る。そのアドレスが負荷された後は比較器がコンピュー
ターの動作中、アドレスバスに対比させて当該アドレス
レジスタを継続的に検査する。両者のアドレスが一致し
たとき、比較器が当該デバイスをイネーブル化(作動可
能化)する。
【0009】
【実施例】
<プログラミング>
【0010】問題としているデバイスにアドレスを割当
てるため、以下の事象のシーケンスが実行される。簡単
のためデバイスはディスクドライブ用の制御器(コント
ローラ)であると仮定する。本装置例を図2に線図で示
すが、各ブロックは真理表で示してある(例えばSETUP
_REGISTER)。ハードウェアを真理表で表すことは当業
界で公知の事実であり、これは直に理解できよう。この
ためハードウェアは英数字で示す。さらに多数の異なる
装置の組立が可能である。
【0011】 <SETUP_REGISTERへの「 OXOX XXXX 」の負荷>
【0012】初めに、SETUP_REGISTERのアドレスがADD
RESS_BUS上に置かれ、DATA_BUS上に、従ってSETUP_R
EGISTER中に、特定のデータワードが書き込まれる。こ
のワードは、それが第五および第七ビット位置にゼロを
含む(すなわちワードは 0X0X XXXX となっている。
ここに「X」はそのXのある位置の数が0又は1のいず
れでもよく、また「0」はもちろんその桁の数が0であ
る)という点で特定のワードである。
【0013】 <PROGRAM_MODE_SELECTORのアドレス指定>
【0014】SETUP_REGISTERはPROGRAM_MODE線を作動
させることにより上記の特定のワードに応答する。この
作動によって、ADDRESS_REGISTERは以下のシーケンス
に従ってデータを受信することができるようになる。そ
のシーケンスとは、PROGRAM_MODE_SELECTORがADDRESS
BUS上の適切なアドレスを受信し、PROGRAM_MODE_SE
LECTORが線ADDR_RG_CS(これはaddress register chi
p select の略)に或信号を印加し、この線がADDRESS_
REGISTERのチップ選択線(CS線)に接続することであ
る。このCS線上の信号はADDRESS_REGISTERがデータを
受信することを可能にする。
【0015】すなわち、ADDRESS_REGISTERがデータを
受信するための「イネーブル化」は実際にはPROGRAM_M
ODE_SELECTORを「プログラムモード」にする第一のス
テップと、この後でPROGRAM_MODE_SELECTORが適切な
アドレスを受信することによりADDRESS_REGISTERをイ
ネーブル化するステップからなる二ステップのプロセス
である。
【0016】PROGRAM_MODE_SELECTORは「プログラム
モード」にあるときはその正規のオペレーションを保留
する。正規の動作時ではPROGRAM_MODE_SELECTORはADD
RESS_BUS上に存在するデータワードがある特定のアド
レス、すなわち図2でMISC_ADDRESSと記したアドレ
ス、に同一であるか否かの質問をする。もしも同じであ
ればPROGRAM_MODE_SELECTORは線MISC_ADDRESS_DECO
DEを作動し、この線がイネーブル化すべき第二のデバイ
ス(これは問題にしているドライブコントローラとは異
なる)につながる。しかしながら、「プログラムモー
ド」にある期間中はMISC_ADDRESS_DECODEは非作動状
態に留まるよう拘束され、第二デバイスが作動停止状態
に留まる。
【0017】 <ADDRESS_REGISTERへのコントローラのアドレスの負
荷>
【0018】この時点で、ADDRESS_REGISTERがイネー
ブル化される一方、ADDRESS_REGISTERはDATA_BUSから
データを受信し、格納する。このDATA_BUSはコンピュ
ーター内のシステムデータバスである。このデータはコ
ントローラに割当てられたアドレスである。ADDRESS_R
EGISTERはこのデータをPRGMD_ADDR(「programmed add
ress」の略である)と記されたバス上に提示する。
【0019】ADDRESS_REGISTERは、負荷された後、ENA
BLE_IF_PROGRAMMED線上に信号を発生する。この信号
はADDRESS_COMPARATORにADDRESS_REGISTERがデータを
収容していることを示す。もしもENABLE_IF_PROGRAMM
ED線が何も信号を生じないと、ADDRESS_COMPARATORは
何らの比較オペレーション(後述する)も行なわない。
なぜならば当該デバイスのためのアドレスが全くないか
らである。
【0020】 <再度の考察>
【0021】前節の手順について次の点を強調してお
く。 一.例えばSETUP_REGISTERの場合と異なり、ADDRESS_
REGISTERがADDRESS_BUSによって直接にアドレス指定さ
れることはない。そのかわり、次のシーケンスをもつデ
ータ移動を使用してデータ受容のためのADDRESS_REGIS
TERのイネーブル化を行なう。 1.SETUP_REGISTERのブロックがアドレス指定される
(そしてもちろん書き込みが可能化される)。 2.SETUP_REGISTERに特定のワード 0X0X XXXX が書
き込まれる(これによりPROGRAM_MODE線が作動され
る)。 3.PROGRAM_MODE_SELECTORのブロックがアドレス指
定を受ける。これにより線ADDR_RG_CSが作動される。
なぜならば線PROGRAM_MODEが作動されるからである。 すなわち、(a)予定のアドレス書き込み、(b)予定
のデータ書き込み、および(c)第二の予定のアドレス
書き込み、と言うシーケンスがADDRESS_REGISTERをイ
ネーブル化する。「プログラムモード」にあるときは、
ADDRESS_REGISTERの「アドレス」はある意味ではPROGR
AM_MODE_SELECTORのブロックのアドレスである。 二.データがADDRESS_REGISTERに書き込まれた後、特
定ワード 0X0X XXXX がSETUP_REGISTERから除去さ
れ、これによりSETUP_REGISTERの正規の機能を回復す
る。
【0022】 <オペレーション>
【0023】コンピューターのオペレーション中は、AD
DRESS_COMPARATORは継続的にADDRESS_BUSにより担持
されたアドレスをPRGMD_ADDR上のアドレスと比較する
(システムクロックにより支配される適当な周期的時間
間隔で)。これら両アドレスが一致すると、ADDRESS_C
OMPARATORは線SPEC_FUN_CS(「special function chi
p select」の略である)を作動させることにより、本例
のコントローラを作動させる。
【0024】正規のオペレーション中におけると同様、
ワード 0X0X XXXX がDATA_BUSにないと、当業界で知
られているように、また信号線SETUP_BUSに示すよう
に、セットアップオペレーション期間中周辺デバイスに
送るべき情報を保持するためのレジスタとしてSETUP_R
EGISTERが使用される。さらにこのワード 0X0X XXXXの
ないことによって、線PROGRAM_MODEの動作が停止さ
れ、従ってチップ選択線(CSと略す)がADDRESS_REGIS
TERのブロックへのデータ書き込みを防止する。
【0025】 <さらに考慮すべき事項>
【0026】SPECIAL_FUNCTION_CSでイネーブル化さ
れるデバイスはいくつかあるタイプのいずれでもよい。
たとえば「拡張カード」として知られるタイプのもので
よい。これはパーソナルコンピューターの拡張スロット
に適用されるものである。この代わりとしてメインシス
テムボード上に配置された回路でもよい。これは取外し
できるものである必要はない。
【0027】さらに一般的言って、デバイスはアドレス
空間内にアドレスを必要とする任意の特定機能体でよ
い。さらにデバイスをイネーブル化する図2の装置はメ
インシステムボード上に含めることができる。しかも特
定機能(本装置によりイネーブル化される)はメインシ
ステムボードの製造時点に存在していたものである必要
はない。すなわちメインシステムボードは図2の装置を
装備されているが、本装置がイネーブル化するデバイス
を装備していなくてもよい。そのデバイスは後に追加さ
れると期待されるものに過ぎない場合もある。さらにま
た図2のタイプの装置をいくつか使用することができ
る。この場合、各々の装置について「SETUP_REGISTE
R」型式のレジスタを別個に用意すべきである。そして
各々に異なるアドレス(例えば93、94、95(16
進法)等)を与えることとする。
【0028】図2においてはADDRESS_COMPARATORは、D
ATA_BUS上のアドレスがSETUP_REGISTERにより保持さ
れているアドレスと一致するとき、SPECIAL_FUNCTION
_CSを発生する。二つのアドレスが同一であるときが
「一致」の一タイプである。しかしながら他のタイプの
一致も考えることができる。それは例えば二つのアドレ
スが1だけ異なる場合などである。
【0029】すなわち「一致」とは、既知アドレスをAD
DRESS_BUS上においた場合、これに応答してSPECIAL_F
UNCTION_CS信号を作動させることを意味する概念であ
る。アドレスがADDRESS_REGISTER内のアドレスとビッ
ト毎に一致することが必要なわけではない。このような
「一致」は最も単純で理解しやすく、かつ用意し易いに
過ぎないが、ユーザーにとっていかなる特定のアドレス
ワードが作動を生じるかが定められていることが重要な
のである。ADDRESS_COMPARATORは、アドレスワードが
出現すると線SPECIAL_FUNCTION_CSをイネーブル化す
る。
【0030】図2のブロックのいくつか、例えばPROGRA
M_MODE_SELECTORはメモリ内の或アドレスに「常駐す
る」、ということができる。その理由は意図した機能を
実行するための当該ブロックに命令を与えるため、その
アドレスはADDRESS_BUS上に常駐しなければならないか
らである。
【0031】
【効果】本発明によれば、ユーザーが使用せんとするデ
バイスのアドレスはユーザーがレジスタに負荷すること
によりプログラムで割当でき、アドレスバス上に存在す
るアドレスとレジスタに負荷したアドレスとが等しいか
否かについて比較器が継続的に質問を発し、両者が一致
したとき比較器が当該デバイスをイネーブル化(作動可
能化)する。このため追加デバイスがコンピューターに
追加されたときでもそれらのアドレスの衝突を回避する
ことができる。
【0032】本発明の範囲および要旨から逸脱すること
なく多数の設計変更および改変が可能であることに留意
されたい。
【図面の簡単な説明】
【図1】コンピューターの簡単化した略線図である。
【図2】本発明の一実施例を示す図である。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】コンピューターにおけるデバイスをイネー
    ブル化する方法であって、 a)該デバイスのためのアドレスを格納するステップ
    と、 b)アドレスバス上に存在するアドレスを該格納された
    アドレスと比較すると共にこれら二つのアドレスが一致
    するときは該デバイスをイネーブル化するステップとを
    含むことを特徴とする方法。
JP11959092A 1991-04-15 1992-04-14 コンピューターの入出力装置に対するアドレス割当て方法 Pending JPH05173944A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US68511991A 1991-04-15 1991-04-15
US685119 1991-04-15

Publications (1)

Publication Number Publication Date
JPH05173944A true JPH05173944A (ja) 1993-07-13

Family

ID=24750856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11959092A Pending JPH05173944A (ja) 1991-04-15 1992-04-14 コンピューターの入出力装置に対するアドレス割当て方法

Country Status (3)

Country Link
EP (1) EP0509720B1 (ja)
JP (1) JPH05173944A (ja)
DE (1) DE69210080T2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT355354B (de) * 1978-08-29 1980-02-25 Schrack Elektrizitaets Ag E Schaltungsanordnung mit einer zentraleinheit, an die mehrere peripheriegeraete angeschlossen sind
US4373181A (en) * 1980-07-30 1983-02-08 Chisholm Douglas R Dynamic device address assignment mechanism for a data processing system
US4964038A (en) * 1987-10-28 1990-10-16 International Business Machines Corp. Data processing system having automatic address allocation arrangements for addressing interface cards

Also Published As

Publication number Publication date
EP0509720A1 (en) 1992-10-21
DE69210080D1 (de) 1996-05-30
EP0509720B1 (en) 1996-04-24
DE69210080T2 (de) 1996-12-12

Similar Documents

Publication Publication Date Title
CA1335843C (en) Programmable option select
US3737860A (en) Memory bank addressing
US5517646A (en) Expansion device configuration system having two configuration modes which uses automatic expansion configuration sequence during first mode and configures the device individually during second mode
US4672534A (en) Integrated circuit device incorporating a data processing unit and a ROM storing applications program therein
EP0395377B1 (en) Status register for microprocessor
JPS61500283A (ja) 内部アドレスマツパを具えたマイクロコンピユ−タ
JP2008009721A (ja) 評価システム及びその評価方法
JPH05173944A (ja) コンピューターの入出力装置に対するアドレス割当て方法
US5355465A (en) Data storing device having a plurality of registers allotted for one address
JPH0562380B2 (ja)
CN113312224B (zh) 一种用于测试otp型mcu及其测试方法
US4675843A (en) Programmable logic controller
US6795911B1 (en) Computing device having instructions which access either a permanently fixed default memory bank or a memory bank specified by an immediately preceding bank selection instruction
EP0020972A1 (en) Program controlled microprocessing apparatus
US7600068B2 (en) Programmable control interface device
EP0328422A2 (en) Microcomputer system
JP3315145B2 (ja) マイクロプロセッサシステムにおけるメモリアドレス割付け方式
JP3597548B2 (ja) ディジタルシグナルプロセッサ
JPH0520474A (ja) 1チツプマイクロコンピユータ
JP2002073411A (ja) Eepromの記憶容量判別装置およびeepromの記憶容量判別方法
JPH11184678A (ja) パターン発生器
JPS60225253A (ja) 情報処理装置
JPH05143366A (ja) 割込制御回路
KR20020057544A (ko) 디지털신호프로세서 외부메모리의 억세스제어방법
JPH01315846A (ja) 任意アドレス割付形の並列入力盤