JPS6313278B2 - - Google Patents

Info

Publication number
JPS6313278B2
JPS6313278B2 JP17166684A JP17166684A JPS6313278B2 JP S6313278 B2 JPS6313278 B2 JP S6313278B2 JP 17166684 A JP17166684 A JP 17166684A JP 17166684 A JP17166684 A JP 17166684A JP S6313278 B2 JPS6313278 B2 JP S6313278B2
Authority
JP
Japan
Prior art keywords
address
line
memory
logic
address bits
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
Application number
JP17166684A
Other languages
English (en)
Other versions
JPS60140596A (ja
Inventor
Arusuton Chiiku Erubaato
Rosu Toomasu Deebitsudo
Denisu Zuburozetsuku Jon
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS60140596A publication Critical patent/JPS60140596A/ja
Publication of JPS6313278B2 publication Critical patent/JPS6313278B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/328Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for runtime instruction patching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はアドレス変換を行うためのデータ処理
装置に関する。本発明は、一方のメモリからの情
報を、他方のメモリからの情報で置き換えるのに
特に有効である。これは、最初のメモリの内容が
固定された後に、そのメモリ中の情報が不完全で
あるとか、さもなければ変更を必要とする時のパ
ツチングとして知られている。パツチングは、メ
モリからのデータ全体を修正するために、書き換
え不能なタイプのメモリ、例えば読み取り専用メ
モリ(ROM)に関連して用いられる。
[従来技術] 本発明は、所望のメモリ置き換えのサイズに密
接に関係した可変長のメモリ置き換え又はパツチ
ングをハードウエアにより達成する。IBM
Technical Disclosure Bulletin Vol.24、No.3、
1981年8月、1379頁−1382頁及びVol.24、No.10、
1982年3月、5273頁−5274頁は、ソフトウエア技
術を使つた可変長パツチを開示している。これ等
の技術はパツチの長さを決めるためデータ処理機
への命令コードに依存している。パツチングに於
て普通であるように、そして本明細書で述べられ
る基本的な発明とともに使用されるように、最初
のメモリの最低位のアドレスビツトが、このメモ
リのため置き換えられる、即ち“パツチイン”さ
れる第2のメモリ中の最低位のアドレスビツトを
決めるため直接に使われる。この事は、例えば上
述の文献のうち最初のものに示されている。
加えて、IBM Technical Disclosure Bulletin
Vol.21、No.1、1978年6月、341頁−342頁及び
Vol.23、No.10、1981年3月、4627頁−4628頁は、
変更されない低順位アドレスビツトを使つた固定
長パツチングを開示している。
[発明が解決しようとする問題点] 本発明は或る低順位のアドレスビツトの通過
(pass−through)を使用する。これは、排他的
OR論理の働きを有する論理へ印加すべき適当な
情報の選択によつて達成される。パツチ、即ちア
ドレス長さの置き換えを決めるためではなく、デ
ータを通過させるために論理技術を使用すること
は、IBM Technical Disclosure Bulletin
Vol.17、No.10、1975年3月の2915頁−2916頁に示
されている。
[問題を解決するための手段] 本発明に従つたアドレス置き換えシステム、即
ちパツチングシステムは、最初のメモリのために
意図されたアドレスを受け取るための論理を使用
する。代表的なアドレスは20個の独立したアドレ
スビツトから成り、その各々の重み
(significance)は通常の通りである。置き換え
メモリのアドレスビツトの数は10個程度の大きさ
の小さい数であり、本発明自身の中にこの数を最
小数に制限するものは何も存在しないけれども、
この程度の数で、本発明の利益は達成しうる。
本発明の良好な実施例に於て、アドレスビツト
はフイールド・プログラマブル論理アレー
(PLA)であることが望ましい論理アレーに与え
られる。適当なPLAはフユーズ(fuse)式のプ
ログラマブル・フイールドPLAである。マスク
などによつて、工場でプログラムされたPLAは
含まれた遅延のため好ましくない。
論理アレーへ与えられる同じアドレスビツトは
「通過論理」へ変更なしで与えられ、その個々の
素子はアドレスビツトの1つと、論理アレーから
の出力とを受け取る。その論理は、パツチの長さ
のために、低位のアドレスビツトに対応する信号
が予定の重みを持つように、個性化される。その
重みは例えば、この論理が排他的OR論理である
場合、ゼロである。高位のアドレスビツトは置き
換えメモリ、即ちパツチメモリ中のアドレスの不
変更部分に対応する。それ等は、この論理の出力
からパツチアドレスの不変更部分を発生するよう
に個性化される。良好な実施例に於て、論理アレ
ーはまた、パツチメモリを付勢し且つROMを滅
勢する信号を発生する。
或るパツチブロツクのアドレスが所望のパツチ
の長さに対して増大すると、アドレスの増分的変
更は変化することなく論理素子を通過する。複数
のワード線を有する論理アレーに関連して言え
ば、サイズに関係なく、そのような各パツチのた
めに1本のワード線のみが必要とされる。市場で
入手しうる代表的な論理アレーは70個以下の限ら
れた数のワード線を持つている。
アドレスビツトを感知するとその応答が直接に
生ずるが、代表的なアレー論理が反応又は整定す
るには最小限の時間が必要とされるにすぎない。
同様に、ハードウエアの削減や良好な応答時間
は、例えばランダムアクセス・メモリから個性化
された専用の論理によるなどの他の仕方で実現出
来る。本発明は実質的に、任意のアドレス選択式
メモリシステムに適用しうる。
[実施例] 以下添付図面を参照して本発明を詳細に説明す
る。
第1図に示されたアドレスバス1は20本の独立
したアドレス線を含み、各線は1又はゼロの重み
を有している。このアドレスは、各線が1又はゼ
ロの重みを有するアドレスビツトを転送するとい
う意味に於てバイナリである。そのようなアドレ
スの与え方は、現在、データ処理技術に於て全く
標準的なことである。A15−A19と表記した高位
の5アドレスビツトはバス3を介してチツプ選択
論理5へ送信される。これ等のアドレスビツトが
チツプ選択論理に適合する場合、線7上に信号が
発生されて標準の読み出し専用メモリ(ROM)
9を選択する。
ROM9は、固定された構造によつて表示され
るバイナリデータを各メモリ位置に保持している
ような通常のメモリである。それ故、データはメ
モリが製造された後は変更不能である。代表的な
ROM9は32Kバイトのメモリである。出力バス
11は8ビツトバイトを並列に受け取る8本の線
を含む。アドレスビツトA0−A14はROM9への
アドレスとして、15本の線を含むアドレスバス1
5上に与えられる。
上述の装置は、ROM及びROMをアドレスす
る手段を有する標準のシステムを構成する。本発
明に従つて、アドレスバス1はまた、入力バス1
7を介してフイールド・プログラマブル論理アレ
ー(PLA)19にも接続される。バス17はバ
ス1上のアドレスのうち高位の16アドレスビツト
A19−A4を運ぶ個々の線を含む。
良好なPLA19の細部は市場性によつて決め
られる。入手しうる最も好適な装置は16個の別々
の入力信号を受け取り、48本のワード線を含み、
且つ8個の出力信号を並列に発生する。本実施例
に於て、8個の出力信号の1つが線21に発生さ
れ、それはチツプ選択論理5を滅勢し、且つパツ
チメモリ23を付勢即ち選択するよう機能する。
パツチメモリ23は市場で入手可能な消去可能
プログラマブル読み取り専用メモリ(EPROM)
であるのが好ましい。これは、メモリ中に特定の
データを入れずに製造され、そして製造工場から
離れた場所で特別の機器を使用する個人によつて
選択されたデータでコード化(個性化)すること
が出来るような装置である。(通常、この装置は
紫外線幅射により消去され、次いでメモリ位置を
アドレスすることによつて電気的にプログラムさ
れる。) PLA19からの他の7個の出力は独立した線
25a乃至25gを有する論理バス25上に現わ
れ、各線は排他的OR論理素子27a乃至27g
の2個の入力のうちの1つとしてそれぞれ接続さ
れる。排他的OR素子27a乃至27gの第2の
入力は、アドレスビツトA10乃至A4を運ぶ7本
の線を含む並列のアドレスバス29からのもので
ある。アドレスビツトA4は排他的OR素子27a
の第2入力として線29a上に与えられる。より
高位のアドレスビツトは、他の排他的OR素子の
第2入力として順番に与えられる。例えば最高位
のアドレスビツトA10は排他的OR素子27gの
第2入力として線29g上に加えられる。
4個の別々の線を含む第2の並列アドレスバス
31はPLA19及び論理素子27a乃至27g
をバイパスして最低位の4個のアドレスビツト
A0乃至A3を運び、そして最低位のアドレスビツ
トEA0乃至EA3としてEPROM23へ接続され
る。但し、この場合に於て、A0はEA0として与
えられ、A1はEA1として与えられ、そして残り
の信号は同じ順序で与えられる。
このことは、PLAで利用可能な少数の出力を
補償するために行われる。即ち、若しこれ等の低
位アドレスビツトがPLAによつてそのまま供給
されるとすれば、極めて短い長さのパツチしか与
えることが出来ないからである。最適の実現形態
では、総てのアドレスビツトは説明されたように
PLA19を通過し、そしてPLA19は適当な長
さのパツチを与えるに充分な出力(線25)を持
つであろう。
論理素子27aの出力は次のアドレスビツト
EA4として線33a上に印加され、一方関連した
論理素子の出力も同様にして印加され、そして最
後の論理素子27gの出力はEPROM23への最
高位のアドレスビツトEA10として線33g上に
印加される。線21上の信号はEPROM23を選
択するのに印加される。このようにEPROM23
をその入力に於ける信号によつて選択、即ち付勢
することはチツプ選択とも呼ばれ、当該技術分野
では周知である。
EPROM23の出力は8個のバイナリ・データ
ビツトであつて、出力バス35上に並列に現われ
る。選択された時、ROM9及びEPROM23の
両方はそれ等の出力バス11及び35を介して、
8本の別個の線を有する通常のデータバス37に
8ビツトのデータを与える。バス37はデータ処
理システムの一般使用のためにデータを転送す
る。EPROM23を選択する線21上の同じ信号
がROM9を滅勢するので、バス37上のデータ
はROM9又はEPROM23の一方から来るけれ
ども、両方から同時に来ることはない。
ROM9及びEPROM23の間の選択はPLA1
9の個性化に基づく。PLA19がバス17上の
アドレスビツトA19乃至A4に応答して線21を
付勢しないような場合であつて、しかもチツプ選
択論理5がバス3上のアドレスビツトA19乃至
A15に応答して線7に選択信号を与えるような場
合には、データがROM9によつて供給される。
(勿論、システムはA19乃至A15の他の組合せに
よつて選択される、ROM9以外のメモリを有し
てもよい。)プログラムのブランチなどが遂行さ
れている場合、バス15上のアドレスは、前のア
ドレスとは大幅に異なるだろうけれども、バス1
5上のアドレスはデータを供給するために、1つ
のバイナリ数ずつ増大するに充分大きな部分を持
つている。良好な実施例に於て、そのようなアド
レス、及びアドレスの変更は今述べたように月並
なことである。
任意のアドレスに於て、PLA19はバス17
上のアドレスビツトに応答して線21上に付勢信
号を与えるように個性化されうる。これが惹起す
ると、PLA19はまた、排他的OR素子27a乃
至27gへの入力として接続されるアドレスビツ
トについてバス25上に論理ゼロ信号を与えるよ
うに個性化される。これ等のアドレスビツトは、
A4乃至A19が線21を付勢し且つバス25上に
1組の信号を与える連続アドレス順序の間変化す
るようなものである。
例えば、メモリ置換アドレス、即ちパツチアド
レスは11011101110100000000と
11011101110111111111との間にありうる。(通常
のようにA0は右側に現われる。)ここで、指定さ
れた高位のアドレスビツトが予め定義されている
ものである場合は、パツチ境界が開始することが
わかる。この例に於て、A8乃至A19は同じであ
り、そしてこれはPLA19によつて、線21及
びバス25上に唯1つの連続した選択を達成する
のに使われる。(A10よりも高い桁で変化するア
ドレスは、EPROM23が1個の連続した選択と
して応答することが出来るものよりも大きい。こ
れは、EPROM23、即ちパツチメモリがパツチ
ブロツクより大きくないため、真実である。) この例に於て、アドレスはA0乃至A7について
は変化し、一方A8乃至A19は無変更に留まる。
本発明に従つて、PLA19は、A4乃至A7に対応
するバス25の線上に論理ゼロ(論理1と区別す
るものとして)を与えるように個性化される。従
つて、線25aは排他的OR27aの入力として
ゼロを供給し、線25b(図示せず)は排他的
OR27b(図示せず)にゼロを供給し、線25
cは排他的OR27cへゼロを供給し、そして線
25dは排他的OR27dへゼロを供給する。ア
ドレスビツトA4は排他的OR27aの第2入力と
して印加され、且つ排他的ORはその入力が異な
つた時、1を生ずる論理として定義されるので、
アドレスビツトA4は排他的OR27aの出力とし
て線33a上に現われる。A4のすぐ上にある3
つのアドレスビツトは記載されたように排他的
OR回路27b乃至27dへ印加される。この例
では、線25b乃至25d上の入力はゼロなの
で、アドレスビツトA5乃至A7は出力線33b乃
至33d上に無変更で現われる。それ等は排他的
OR論理27b,27c及び27dを無変更で効
果的に“通過”する。
PLA19はEPROM23中のアドレスの無変
更部分を与えるように個性化されるが、そのビツ
ト位置はバス1上にあるアドレスの無変更部分の
ビツト位置と異なつていてもよい。このアドレス
の特定の無変更部分は対応するデータが貯蔵され
る位置に依存する。通常、データは利用可能な次
の貯蔵位置に貯蔵されるであろう。EPROM23
のような代表的な標準的メモリシステム中の総て
のメモリ位置は、順次に大きくなるバイナリ形式
のアドレスによりアクセスされる。通常、データ
は利用可能な任意の貯蔵位置に貯蔵されるが、選
択される位置は充分なメモリ長を持たねばならな
い。
前述の例に於て、EPROM23中で利用可能な
領域のアドレスが01100000000で開始すると仮定
すると、PLA19は、排他的OR27e(図示せ
ず)への線25eの信号がゼロであるように個性
化される。バス29から排他的OR27eへの他
の入力信号はA8であり、それは1である。それ
故、排他的OR27eはEPROM23のアドレス
EA8として機能する1を線33e上に与える。同
時に、排他的OR27fへの線25f上の信号は
1であり、PLA19はそのように個性化される。
何故ならば、A9がゼロであり且つ置換アドレス
が1を必要とするからである。排他的OR27f
は線33f上に1を与える。排他的OR27gへ
のA10がまた1であり、且つ置換アドレスのその
順位にゼロが必要とされるので、PLA19は同
様に、線25g上に1を与えるよう個性化され
る。
各パツチごとに、可変ブロツク長のパツチが達
成される。本発明の他の顕著な利点はワード線を
有する論理アレーによつて実現されるという適合
性にある。そのようなアレーは充分に速く、容易
に実現され且つコスト効果がある。そのような素
子は第3図に関連して、詳細に説明する。
“パツチイン”される置換の長さ及びEPROM
23中の利用可能スペースはPLA19の個性化
前には既知であり、且つその個性化のための基礎
である。正しいデータはEPROM23中で複製さ
れ、そして正しくない又は変更されるべきデータ
は訂正即ち変更された形でEPROM23中に貯蔵
される。
本発明の範囲内で、各置換即ちパツチを別々の
ワード線の選択と同じにすることは有用である。
この事が真実であるのは、低位の変更ビツトによ
つて或るブロツクの長さが決まる限り、高位の無
変更ビツトによつて選択される各ワード線がこの
ブロツクへパツチするからである。これは、たと
え低位の内容の一部のみが対応する元の情報と異
なるとしても、同様である。
例えば、20個のアドレスビツトのうちの最も高
位の13ビツトが無変更であると仮定する。この場
合、低位の7ビツトが128のパツチ長さを決める。
その128の長さのパツチはEPROM23中で与え
られねばならない。通常、その長さの2分の1ま
では重複データを含み、それはEPROM中にもあ
る。変更されるべき情報は、例えば低位の7ビツ
トが総てゼロ(0000000)であるアドレスで開始
しうる。若し、変更されるデータが69(1000101)
で終るならば、変更されるデータの長さは70であ
るが、パツチの合計長さは128である。最低位の
無変更アドレスビツトは第8番目のものであつ
て、これは開始状態0000000の後、128個のアドレ
ス増分で変化する。この変化は選択されたワード
線を選択解除し、且つパツチを終了させる。
それにも拘らず、パツチのサイズは変更される
データの長さに密接に関連する。すぐ上で掲げた
例に於て、変更されるデータの長さが50であり、
且つ低位の開始アドレスビツトが総てゼロである
とすれば、必要とされるパツチ長さの終端では低
位のアドレスビツトは0110001となるであろう。
上掲の例と反対に、この場合には第7番目の高位
アドレスビツトは必要なパツチ長さの前後で、無
変更である。PLA19はその桁のアドレスビツ
トA6及びより高位の無変更アドレスビツトに応
答するように個性化される。これは、変更される
べきデータの長さに直接関係した量にパツチメモ
リ、即ちEPROM23の使用が制限されることを
説明し、これが本発明の基本的な利点である。
勿論、変更されるべきデータの開始アドレスは
任意のメモリ位置であつてよい。バイナリ順序の
相互作用の故に、パツチ長さが対応して長くなく
とも、必要なパツチ長さは開始アドレスの幾つか
の高位アドレスビツトを変更して得られる或るア
ドレスで終了しうる。(算術的センスで、これは、
繰り上げ動作によつて、即ち111+1は10000であ
ることによつて変換される唯1個の増分を生ず
る。)変更されるべきデータの2分の1より長い
パツチ長さを回避することはこのアドレス変換で
単一のパツチを2個のパツチへ分割することによ
つて達成されうる。(但し、この場合には、第2
ワード線を使用することが必要となる。) 2つのパツチで変更されるデータが連続である
としても、2つのパツチを使用することにより以
下の例に示すような利点が得られる。変更される
べきデータの開始アドレスは
01011000001110110011であり、このデータの終了
アドレスは01011000010000101111である。これ等
の差はたつた124だけである。しかも、低位の11
アドレスビツトが変化するので、パツチ長さは
2048である。この長いパツチを回避するため、こ
れを2つのパツチ、即ち開始アドレス
01011000001110110011から変換を有する変更の直
前のアドレス01011000001111111111までの第1の
パツチと、01011000010000000000から
01011000010000101111までの第2のパツチとへ分
割することが行われる。PLA19は、10個の高
位アドレスビツトA19−A10が第1のパツチの不
変更アドレスビツト0101100000である時、1つの
ワード線を選択するように個性化される。このパ
ツチは128の長さであり、そのうち52個は重複さ
れる必要のないデータに対応する。(即ち、低位
のアドレス0000000から0110010まで。)PLA19
はまた、14個の高位アドレスビツトA19−A6が
第2のパツチの不変更アドレスビツト
01011000010000である時、他のワード線を選択す
るように個性化される。このパツチは64の長さで
あり、そのうち16個は重複される必要のないデー
タに対応する。(低位のアドレス110000から
1111111まで。) 第2図は、より長いパツチメモリEPROM40
が使われるのを除いて、第1図の実施例と極めて
近似した実施例を示す。EPROM40は13個のア
ドレスビツトA12乃至A0を受け取るのに適する
8ビツトの8Kメモリであり、第1図のEPROM
23とその他は基本的に同じである。第1図のそ
れと実質的に同じ素子は同じ参照数字を与えら
れ、ここではこれ以上の説明はしない。
バス1上の14個の高位アドレスビツトA19乃至
A6は入力バス42によりPLA19へ与えられる。
PLA19の2つの入力は使用されず、従つてバ
ス44は接地される。並列アドレスバス46はア
ドレスビツトA12乃至A6を運び、そこで各々は
排他的OR論理素子27a乃至27gの1入力と
して接続される。最低位のアドレスビツトA6は
排他的OR27aの入力として接続され、そして
他のビツトは排他的OR回路27b乃至27gへ
順番に接続される。PLA19の7個の出力は
個々の線25a乃至25gを有する論理バス25
上に現われ、各々は排他的OR論理素子27a乃
至27gの異なつたものへ接続される。
6個の個々の線を含む第2の並列アドレスバス
48はEPROM40へ最低位のアドレスビツト
EA0乃至EA5として6個のアドレスビツトA0乃
至A5を運び、A0はEA0として印加され、A1は
EA1として印加され、そして他のものは同じ順序
で印加される。
16個の位置でなく64個のメモリ位置を定義する
アドレスバス48上の信号を除いて、動作は第1
図に関連して説明されたのと同じである。
EPROM40は出口バス35上に8ビツトバイト
を与え、これはデータバス37へ送られる。
バス48はPLA19をバイパスするので、可
能な最小置換単位は64ポジシヨンである。これ
は、通常望ましくない長い置換を増加させる。然
し、合計のアドレスビツト数がPLA19からの
7とバス48の6を加えたものとなるので、それ
はまた、アドレスビツトの数を増加させる。アド
レスビツトの数が11個に制限された第1図の実施
例は2Kバイトのメモリ23をアドレスしうるに
すぎないが、第2図の実施例はより大きい8Kバ
イトのメモリ40をアドレスすることを許容す
る。
第3図は単に標準的なPLAを示す。図示され
たPLAはマスク技術による工場でのプログラミ
ング即ち個性化を暗示している。それは本願の発
明者によつて明確に理解され且つ充分に説明する
ため、選ばれたものである。フイルドPLAを含
す代替しうるPLAは幾つかの製造業者から市場
で入手しうる。即座に出来るフイルドの個性化は
本発明に使われるPLAにとつて好ましいことで
ある。
そのようなアレーの主要な要素は、このアレー
がコード化された出力信号を発生するために付勢
されうる限られた数のワード線50a乃至50p
を持つているということである。入力線52a乃
至52nにある入力は、ワード線50a乃至50
pの数よりも数に於て膨大な順列を与える。各入
力線52a乃至52nは個性化に基づいてワード
線50a乃至50pの任意の線に相互接続される
能力を有する。入力線52a乃至52n上の低電
位状態に積極的に応答するために、各入力線は
個々のインバータ54a乃至54nと並列に接続
され、その各出力は56a乃至56n上に出る。
入力線52a乃至52n上の信号は線58a乃至
58nを介してアレー中に運ばれる。
スイツチ素子60が線58a乃至58n及び5
6a乃至56nの1つの高電位により付勢された
場合、線58a乃至58n及び56a乃至56n
の各々はワード線50a乃至50pの状態を反転
する。スイツチ素子60は電界効果トランジスタ
であつて、ワード線50a乃至50pを接地電位
に接続する。制御は素子60のゲートへ高い信号
を印加することにより行う。ワード線50a乃至
50pは、素子60の1つにより接地されない
時、その各々に対して直列に接続された抵抗器6
2a乃至62pを通して働く高電位によつて、
「高」に保持されることにより選択される。
最後に、高電位のワード線50a乃至50pは
出力線64a乃至64mへ接続されるスイツチ素
子60のゲートに作用する。線64a乃至64m
は、素子60の1つによつて接地電位にされない
時、抵抗器66a乃至66mを通る高電位により
「高」に保たれる。
スイツチ素子60は通常のゲートの記号を持つ
か又はゲート記号を持たない何れかの電界効果ト
ランジスタとして示されており、ゲートを有する
ものは第3図で丸で囲まれて示される。これは個
性化アレーの製造中にゲートが与えられないこと
を暗示している。勿論、代案として、総てのゲー
トを与えるようにしてもよいが、この場合には線
56a乃至56n及び58a乃至58n及び66
a乃至66mへの接続を個性化に基づいて選択的
に作らなければならない。
スイツチ素子60(第3図で丸で囲まれた素子
60により表示されたもの)のどれもが、58a
のような入力線及び56aのようなその反転信号
線の何れかと線50pのような与えられたワード
線との間に効果的に接続されなかつた場合、その
入力の状態は結果に無関係であることは明らかで
ある。特に第3図に於て、線52a上の状態は線
50pに影響しない。何故なら線58aが向けら
れている素子60aはゲートを有さず、且つ線5
6aが向けられている素子60bもゲートを持た
ないからである。(これは便宜上“don't care”
論理と言われる。) 第1図及び第2図の実施例のPLA19に関連
して、PLA19への変更アドレスビツトにはそ
のような“don,t care”個性化が応答するの
で、ワード線はそれ等の状態に関係なく選択され
る。PLA19への不変更アドレスビツトには、
ワード線50a乃至50pのうち唯1つのワード
線を高にすることにより選択するような個性化が
応答し、そのワード線は変更アドレスビツトのた
め“don,t care”個性化を持つ。所望の出力
は記載されたようなものであつて、これは単に個
性化されるワード線に関連したスイツチ素子60
が付勢されるように個性化することにより達成さ
れるので、出力線64a乃至64mは上に述べた
ように本発明に従う信号を運ぶ。
論理アレーは当該技術分野で既に知られてお
り、且つ本発明に対して等価な種々の形式を取り
得るので、上記の記述は説明目的のみを意図する
ものである。本発明は論理アレーを個性化するこ
とによつて、種々のサイズの置換、即ちパツチの
ために個々のワード線を利用する際、変更アドレ
スが活勢なワード線を選択することに役割を果た
さないようにするものである。従つて、連続した
各置換即ちパツチは、受け取られたアドレスの変
更部分が大きいとしても、1つのワード線のみを
使用する。これは使われるワード線の数を最少限
にし、且つ構成用資源としてのワード線の数を少
くする。(第1図に関連して説明されたように、
原アドレス中の繰り上げ又は変換を含む特定のア
ドレスに於て、分割されたパツチを使うことはパ
ツチメモリ、EPROM23の使用を経済的にする
ため好ましいであろう。) 加えて、PLAなどはメモリ等のアクセス時間
と比較して相対的に速い。表徴的に言えば、最終
的な使用可能出力は、システムの中で特別の待ち
時間が設けられないくらい充分に早くPLAから
発生される。第1図及び第2図に関連して説明す
ると、ROM9を滅勢し且つEPROM23又は
EPROM40を付勢するための制御信号は線21
に速やかに現われ、そしてアドレスビツトもバス
25に速やかに現われるので、システム全体のタ
イミングに遅延を課す必要はない。
第4図は、個性化がハードウエアで固定されて
いないアレー論理の1つのサブ回路を示す。アレ
ー全体は、第1図のサブ回路を第3図の様式で二
次元的に反復することによつて構成されるが、そ
の詳細は以下で説明する。メモリセル80,82
及び84は2個の状態を有するランダムアクセス
の位置であつて、第1の状態で1と印された出力
点に「高」信号を発生し、且つ第2の状態で0と
印された出力点に「高」信号を発生する。
より詳細に説明すると、各セル80,82及び
84は、オンからオフへ状態を切換えるため夫々
制御線86,88及び90で駆動される通常のデ
ザイン交差結合双安定回路の如き任意の標準的メ
モリセルであつてよく、例えば「1」の出力が
「高」で「0」の出力が「低」の状態を第1の状
態とし、「0」の出力が「高」で「1」の出力が
「低」である状態を第2の状態とするように決め
られる。
線92は第3図のワード線50a乃至50nの
1つと対応するワード線である。線92は通常、
高電位にバイアスされる。線92は多数のサブ回
路へ接続され、その各々が実質的に第4図に示さ
れている。線92は通常、非選択の低に保持さ
れ、そして以下に記載されるようにサブ回路によ
り高へ移るのを許容されたとすると、線92は選
択されてコード化出力の発生に関与する。回路全
体はワード線92のような複数個のワード線を有
し、各ワード線に接続された第4図のようなサブ
回路の数はアレーに対する入力アドレスビツトの
数に等しい。
線94は第3図の線58a乃至58nの1つと
対応する直接入力線である。同様に、線96は、
線94が線58aと対応している場合、線56a
と対応する線94上の信号の反転信号を運ぶ。ま
た線98は、通常、高電位へバイアスされる。線
98は1つの出力を運び且つ第3図の出力線64
a乃至64mの1つと対応する。従つて、線92
のような各ワード線と関連した第4図のような各
サブ回路は線98のような異なつた出力線へ接続
される。
線94が高の時で線94上のアドレスビツトが
線92を部分的に選択した時に、メモリセル80
はオンに設定される。(セルが線92を接地電位
へ引き下げないで、総てのセルが部分的に線92
を選択した時、ワード線92は完全に選択され
る。)線94及び96上の信号が不変更アドレス
ビツトである時、メモリセル82はオンに設定さ
れる。(即ち、それ等は“don,t care”信号
ではない。)従つて、セル80及び82がオンで
あり且つ線96が高である時、NAND論理素子
100の3個の入力総てが高であり、結果として
ワード線92へ接続されている出力を低下、即ち
接地し、それを引き下げる。ワード線92は積極
的に選択を妨げられる。
線94上の信号が高であつたとすると、線96
上の信号は低であらねばならず、そしてNAND
100は満足されない。セル80からのゼロ信号
はNAND論理素子102への3個の入力のうち
の1つなので、NAND論理素子102は満足さ
れない。この場合、NAND100及び102の
何れもが満足されず、且つ線92は部分的に選択
されるので、今説明中のサブ回路によつてそれは
低に引き下げられない。
セル80の状態が反転されたとすると、0出力
が高である。即ち(NAND102への前の低入
力は高であり、そして線94が高で且つセル82
がオンである時、NAND102は満足される。
この状態に於て、ワード線92は積極的に選択を
妨げられる。
セル82の1出力はNAND100及びNAND
102両方の3個の入力の1つである。その出力
が低である時、ワード線92は線94及び96上
のアドレス信号及びその反転信号とは関係なく部
分的に選択される。
ワード線92又はワード線92に対応するワー
ド線が選択されるのは、そのワード線へ接続され
ている第4図の如きサブ回路の総てがワード線9
2又は他のワード線上の高信号を許容する場合で
ある。この高信号は、セル82の1出力とメモリ
セル84の0出力と共に、NAND104への3
個の入力の1つとして現われる。セル82の0出
力はワード線92と反転線96と共にNAND1
06の1入力として現われる。セル82がオンに
設定されたか又はオフに設定されたかに依存し
て、NAND104又はNAND106のいずれか
が満足されるが、両方が満足されるということは
ない。セル82は不変更アドレスビツトが線94
及び96に現われた時、オンに設定される。セル
84は置換アドレスの対応するビツトが低である
時、オフに設定される。この場合、NAND10
4への総ての入力は高にあり、そして、出力線9
8は低となる。線98を高にさせるためにセル8
4はオンに設定される。かくて、高信号は
NAND104の1つの入力であるセル84の0
出力に現われず、線98は低にされない。
セル82が低に設定され且つワード線92が選
択された時、NAND106の関連した2個の入
力は高である。他の入力は線96上の反転アドレ
ス信号である。その信号が高である時、NAND
106は満足され且つ線98は低にされる。かく
して、入力するアドレスビツト位置での低状態の
信号は線98上に低信号を生ずる。線96上の信
号が高である時、NAND106は満足されない。
かくして、セル82がオフの時、入力するアド
レスビツト位置における高状態の信号は必然的に
線96が低であり、そしてこれは線98を低にし
ないことを意味する。反対状態のアドレス信号は
NAND106により線98を低にさせる。接続
されているようなNAND106のこの動作はワ
ード線92からの入力によつて選択される通過論
理として特徴づけられうる。選択された時、線9
6上の信号の反転は通過される。
第3図のアレーに関連して言うと、ワード線の
グループのうち、例えばワード線92の如き唯1
個のワード線が代表的に選択される。次に、
NAND素子104及び106と対応し、且つ選
択されたワード線に関連したNAND回路が付勢
される。各ワード線92は複数のNAND素子1
04及び106を持ちその各々は線98の如き異
なる出力線へ接続される。線98の各々は総ての
ワード線によつて制御されるよう同じように接続
される。
第4図に示された上述の可変回路は相対的に高
価で複雑であり、最良ではない。この論理は単に
説明的に示されたものであり、特定のアプリケー
シヨンで最適化されるだろう。
若し、そのような回路が与えられたとすれば、
パツチが達成されない時、種々のシステムのため
に、回路素子の入手可能性に基づいて、付加的な
論理や素子が置き換えのため付加される。これは
メモリ型の回路を製造する際に、全コストを幾分
か低下するだろう。
第3図に示された一般型の固定PLAは入手可
能で、実際的で、高価でなく、信頼性高く且つ高
速である。本発明は各連続パツチ又は他の置き換
えのため、1個又は限られた数のワード線しか必
要としないから、このようなPLAは本発明を使
用するのに好適である。
【図面の簡単な説明】
第1図は、4個の最低位のアドレスビツトを分
離し且つ変更しないことにより置換長さを増加さ
せるようにした、本発明に従つたパツチングシス
テムの主要要素を示す図、第2図は、6個の最低
位のアドレスビツトを分離し且つ変更しないこと
によつて、より大きいパツチメモリの利点の見返
りとして短い最小パツチ長さを容認するようにし
た第1図と近似するシステムを示す図、第3図
は、ワード線を有する論理アレーの基本素子を示
す図、第4図は、電子技術で変更しうるメモリセ
ルを論理に関連させることによりこの論理を可変
にした、本発明に従つた論理システムを示す図で
ある。 1……アドレスバス、5……チツプ選択論理、
9……読み出し専用メモリ(ROM)、17……
入力バス、19……論理アレー(PLA)、23,
40……パツチメモリ(EPROM)、25……論
理バス、27……排他的OR論理素子、60……
スイツチ素子。

Claims (1)

  1. 【特許請求の範囲】 1 下記構成要素(イ)ないし(ホ)を備えて成る、アド
    レス置き換えを行うためのデータ処理装置。 (イ) 第1群のアドレスビツトによつてアドレスさ
    れる第1のメモリ。 (ロ) 第2群のアドレスビツトによつてアドレスさ
    れる第2のメモリ。 (ハ) 前記第1群のアドレスビツトを受取つて第3
    群のアドレスビツトを発生する論理装置。 (ニ) 複数の論理回路手段。該論理回路手段の各々
    は、前記第3群のアドレスビツトのうち1つの
    アドレスビツトを第1の入力として受取り且つ
    前記第1群のアドレスビツトのうち1つのアド
    レスビツトを第2の入力として受取るととも
    に、該受取られた第1の入力が予定の状態にあ
    るときは該第2の入力と論理的に同等の出力信
    号を発生するように構成されている。 (ホ) 前記論理回路手段の出力信号を前記第2群の
    アドレスビツトとして使用して前記第2のメモ
    リをアドレスする手段。
JP59171666A 1983-12-27 1984-08-20 アドレス置き換えを行うためのデ−タ処理装置 Granted JPS60140596A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/565,792 US4603399A (en) 1983-12-27 1983-12-27 Data processing apparatus for address substitution
US565792 1983-12-27

Publications (2)

Publication Number Publication Date
JPS60140596A JPS60140596A (ja) 1985-07-25
JPS6313278B2 true JPS6313278B2 (ja) 1988-03-24

Family

ID=24260113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59171666A Granted JPS60140596A (ja) 1983-12-27 1984-08-20 アドレス置き換えを行うためのデ−タ処理装置

Country Status (4)

Country Link
US (1) US4603399A (ja)
EP (1) EP0146891B1 (ja)
JP (1) JPS60140596A (ja)
DE (1) DE3485686D1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4908859A (en) * 1986-09-19 1990-03-13 M/A-Com Government Systems, Inc. Receiver access interface to service components in television channel
JPH0682324B2 (ja) * 1988-05-23 1994-10-19 三菱電機株式会社 半導体集積回路装置
JPH0296699U (ja) * 1989-01-20 1990-08-01
US5412784A (en) * 1991-07-15 1995-05-02 International Business Machines Corporation Apparatus for parallelizing serial instruction sequences and creating entry points into parallelized instruction sequences at places other than beginning of particular parallelized instruction sequence
US6421679B1 (en) 1995-10-27 2002-07-16 International Business Machines Corporation Concurrent patch to logical partition manager of a logically partitioned system
US6189145B1 (en) 1997-05-28 2001-02-13 International Business Machines Corporation Concurrent patch to logical partition manager of a logically partitioned system
US6073252A (en) * 1997-09-25 2000-06-06 Motorola, Inc. Data processing system with memory patching and method thereof
JP2001125781A (ja) * 1999-10-29 2001-05-11 Matsushita Electric Ind Co Ltd マイクロプロセッサ、およびマイクロプロセッサにおけるプログラム変更方法
US7149878B1 (en) * 2000-10-30 2006-12-12 Mips Technologies, Inc. Changing instruction set architecture mode by comparison of current instruction execution address with boundary address register values
US6678836B2 (en) 2001-01-19 2004-01-13 Honeywell International, Inc. Simple fault tolerance for memory
US7107439B2 (en) * 2001-08-10 2006-09-12 Mips Technologies, Inc. System and method of controlling software decompression through exceptions
US6925521B2 (en) * 2001-09-10 2005-08-02 Texas Instruments Incorporated Scheme for implementing breakpoints for on-chip ROM code patching
US7243206B2 (en) * 2003-04-14 2007-07-10 Arm Limited Method and apparatus for using a RAM memory block to remap ROM access requests
US7533240B1 (en) * 2005-06-01 2009-05-12 Marvell International Ltd. Device with mapping between non-programmable and programmable memory

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4028678A (en) * 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit
US4141068A (en) * 1977-03-24 1979-02-20 Xerox Corporation Auxiliary ROM memory system
US4319343A (en) * 1980-07-16 1982-03-09 Honeywell Inc. Programmable digital memory circuit
JPS5794994A (en) * 1980-12-02 1982-06-12 Fujitsu Ltd Address converting circuit of storage device
US4400798A (en) * 1981-07-13 1983-08-23 Tektronix, Inc. Memory patching system

Also Published As

Publication number Publication date
EP0146891B1 (en) 1992-04-29
EP0146891A2 (en) 1985-07-03
US4603399A (en) 1986-07-29
JPS60140596A (ja) 1985-07-25
DE3485686D1 (de) 1992-06-04
EP0146891A3 (en) 1988-03-30

Similar Documents

Publication Publication Date Title
US5784637A (en) Single-chip semiconductor integrated circuit device and microcomputer integrated on a semiconductor chip
US5867422A (en) Computer memory chip with field programmable memory cell arrays (fpmcas), and method of configuring
US7302545B2 (en) Method and system for fast data access using a memory array
JP2930773B2 (ja) プログラマブル論理装置、この装置で使用する回路ブロック、及び前記装置への入力が論理機能で使用されるかどうかを決定する方法
DE69828564T2 (de) Kombinierter nichtflüchtiger programm-/datenspeicher für gleichzeitiges lesen von programmen und schreiben von daten
US6081442A (en) Contents addressable memory circuit for retrieval operation in units of data blocks
JPS6313278B2 (ja)
US5386523A (en) Addressing scheme for accessing a portion of a large memory space
GB1580313A (en) Rom memory systems
EP0306962B1 (en) Single-chip microcomputer
JPH0845290A (ja) メモリ集積回路およびそのメモリセルのプログラム方法
JPS6132706B2 (ja)
US5987581A (en) Configurable address line inverter for remapping memory
US4318175A (en) Addressing means for random access memory system
US20050180240A1 (en) Method and system for fast memory access
JPS6328129A (ja) 書込み可能な論理アレ−と同論理アレ−をプログラムする方法
ATE332564T1 (de) Unscharf adressierbarer digitaler speicher
US4975882A (en) User programmable redundant memory
EP0210064B1 (en) Variable page rom
JPS593790A (ja) ダイナミツクメモリ素子を用いた記憶装置
US5909703A (en) Method and apparatus for banking addresses for DRAMS
US4675843A (en) Programmable logic controller
US6006305A (en) Method and architecture for non-sequentially programming one-time programmable memory technology without initially erasing the memory
JPS6148174B2 (ja)
KR0154717B1 (ko) 상태 천이 머신을 가지는 시스템의 메모리 관리 구조 및 그 처리방법