JPH04337851A - メモリアクセス方式 - Google Patents

メモリアクセス方式

Info

Publication number
JPH04337851A
JPH04337851A JP11005591A JP11005591A JPH04337851A JP H04337851 A JPH04337851 A JP H04337851A JP 11005591 A JP11005591 A JP 11005591A JP 11005591 A JP11005591 A JP 11005591A JP H04337851 A JPH04337851 A JP H04337851A
Authority
JP
Japan
Prior art keywords
data
address
bit block
cpu
memory
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
JP11005591A
Other languages
English (en)
Inventor
Hideki Satake
英樹 佐竹
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.)
NEC Engineering Ltd
Original Assignee
NEC Engineering 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 NEC Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP11005591A priority Critical patent/JPH04337851A/ja
Publication of JPH04337851A publication Critical patent/JPH04337851A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は1つのアドレスに対する
メモリのビット長が固定である計算機システムのメモリ
アクセス方式に関し、特にビット単位のメモリアクセス
方式に関する。
【0002】
【従来の技術】従来、1ワード未満のビット長のデータ
(ビットブロック・データ)を扱う場合は、1つのワー
ドに1つのデータを割り当てる方式、あるいは1つのワ
ードをビットブロック・データに区切り、1つのワード
に複数のデータを割り当て、CPUが1ワード単位でデ
ータをアクセスし、ビット操作によって必要なデータを
取り出す方式をとっていた。
【0003】
【発明が解決しようとする課題】上述した1つのワード
に1つのデータを割り当てる方式は、1つのワード中に
使用しないビットが存在し、メモリの無駄ができるとい
う欠点があった。また、1つのワードをビットサイズ・
データに区切り、1つのワードに複数のデータを割り当
てる方式では、データアクセス時にCPUがビット操作
を行なわなければならないという欠点があった。
【0004】本発明の目的は、CPUがメモリ上のビッ
トブロック・データを仮想メモリエリアをアクセスする
ことにより、あたかも1ワードにつき1つのビットブロ
ック・データが存在するように、ビットブロック・デー
タをアクセスすることが出来るメモリアクセス方式を提
供することにある。
【0005】
【課題を解決するための手段】本発明のメモリアクセス
方式は、CPUと、メモリと、この2つを接続するバス
とからなり、メモリエリア上の位置を示すアドレスをメ
モリ上に付与し、1つのアドレスに対応するメモリのビ
ット長が固定である(以下、このメモリ分割のビット長
を1ワードと記す)計算機システムにおいて、データの
サイズが1ワード未満の特定のビット長のデータ(以下
、このデータをビットブロック・データと記す)でメモ
リを区切り、ビットブロック・データのみを集めたメモ
リの先頭アドレス(以下、このアドレスをビットブロッ
ク・データの先頭アドレスと記す)、ビットブロック・
データのビット長、ビットブロック・データのデータ数
、および仮想メモリエリアの先頭アドレスを設定する各
専用のレジスタを有するアドレス・データ変換装置を前
記CPUと前記メモリの間のアドレスバスおよびデータ
バス上に挿入し、このアドレス・データ変換装置は前記
CPUからのメモリアクス要求があると、前記仮想メモ
リエリア先頭アドレスおよびビットブロック・データの
データ数からアクセスするアドレスが仮想メモリエリア
内であるか判断し、アクセスするアドレスが仮想メモリ
エリア外であれば前記CPUと前記メモリのアドレスバ
スおよびデータバスをそれぞれ直接接続し、アクセスす
るアドレスが仮想メモリエリア内であれば該当のビット
ブロック・データを含むワードのアドレスを生成し、こ
の生成したアドレスのワード・データを読み出し、前記
CPUからのアクセスの要求がデータの読み出しであれ
ばビット操作を行ない、読み出した前記ワードデータか
らビットブロック・データを取り出し前記データバスを
使用して前記CPUに送信し、また、前記CPUからの
アクセスの要求がデータの書き込みであれば、前記CP
Uが書き込もうとするデータをデータバスより受け取り
、このデータに対してビット操作を行ない、読み出した
ワードデータ内の該当のビットブロック・データ位置に
書き込み、修正したワードデータをメモリに書き込むこ
とにより、CPUに1ワードにつき1つのビットブロッ
ク・データが存在するように、ビットブロック・データ
をアクセスする。
【0006】
【実施例】次に、本発明について図面を参照して説明す
る。
【0007】図1は本発明の一実施例を示すブロック図
であり、計算機システムのCPU1と、アドレス・デー
タ変換装置4と、この計算機システムのメモリ7とから
構成される。アドレス・データ変換装置4は、ビットブ
ロック・データ先頭アドレスレジスタ12、ビットブロ
ック・データビット長レジスタ13、ビットブロック・
データ数レジスタ14、および仮想メモリエリア先頭ア
ドレスレジスタ15を有している。更にデータ・アドレ
ス変換装置4は、アドレスバス2およびデータバス8に
よってCPU1と接続し、その接続部にはアドレスバッ
ファ3およびデータバッファ9を有している。また、同
様にデータ・アドレス変換装置4は、アドレスバス6お
よびデータバス11によりメモリ7と接続し、その接続
部にはアドレスバッファ5およびデータバッファ10を
有している。
【0008】図2に、このアドレス・データ変換装置4
が、アクセスするアドレスを変換する時の動作概念図を
示す。この例では1ワード中の4つのビットブロック・
データがあり、またビットブロック・データは7a,7
b,7c,…7eの8個あるので、ビットブロック・デ
ータ数レジスタ14のビットブロック・データ数は8と
なる。また、図3に、このアドレス・データ変換装置が
、アクセスするデータを変換する時の動作概念図を示す
。ビットブロック・データを読み込む時には、CPU1
は仮想メモリエリアに対してアクセスを行なう。CPU
1よりアドレスバス2を介してアドレスバッファ3にア
クセスアドレスを受け取ったアドレス・データ変換装置
4は、CPU1のアクセスするアドレスが仮想メモリエ
リア先頭アドレスレジスタ15の値以上で、かつ仮想メ
モリエリア先頭アドレスレジスタ15の値にビットブロ
ック・データ数レジスタ14の値を加えた値未満の仮想
メモリエリア内であるかどうかチェックを行ない、仮想
メモリエリア外であればCPU1側のアドレスバス2と
メモリ7側のアドレスバス6、CPU1側のデータバス
8とメモリ7側のデータバス11をそれぞれ直接接続す
る。CPU1のアクセスするアドレスが仮想メモリエリ
ア内であれば、まずCPU1のアクセスするアドレスと
仮想メモリエリア先頭アドレスレジスタ15の値との差
分からCPU1が何番めのビットブロック・データをア
クセスしようとしているかを求める。次にビットブロッ
ク・データビット長レジスタ13から1ワード中にビッ
トブロック・データがいくつ入るか計算する。たとえば
、1ワードが16ビットでブロック・データビット長が
4であれば1ワード中にビットブロック・データは4入
ることになる。
【0009】CPU1のアクセスしようとしているビッ
トブロック・データの番号と1ワード中に入るビットブ
ロック・データ数とによりアドレスデータ変換装置4は
、CPU1のアクセスしようとしているビットブロック
・データが、ビットブロック・データ先頭アドレスから
何ワード目に含まれるか計算し、この結果とビットブロ
ック・データ先頭アドレスレジスタ12の値を加算する
ことで、該当のビットブロック・データを含むワードの
アドレスを生成し、アドレスバッファ5に書き込み、メ
モリ7に対しその読み出し指示を行なう。メモリ7は指
示されたアドレスのワードデータを、データバス11を
介してアドレス・データ変換装置4に送る。アドレス・
データ変換装置4は、ワードデータをデータバッファ1
0に読み込み、そのワードデータからビットブロック・
データを取出し、データバッファ9に書き込む。このと
き、ビットブロック・データの桁位置が最下位桁でない
場合は、アドレス・データ変換装置4は図3のようにビ
ットブロック・データを最下位桁にそろえる。CPU1
はデータバス8を介してデータバッファ9の内容を読む
ことにより、ビットブロック・データを読み出す。
【0010】ビットブロック・データを書き込む時には
、CPU1は仮想メモリエリアに対してアクセスを行な
う。アドレス・データ変換装置4は、データの読み込み
の時と同様に、CPU1のアクセスするアドレスが仮想
メモリエリア内かどうか判断し、仮想メモリエリア外で
あればCPU1側のアドレスバス2とメモリ7側のアド
レスバス6、CPU1側のデータバス8とメモリ7側の
データバス11をそれぞれ直接接続する。CPU1のア
クセスするアドレスが仮想メモリエリア内であれば、デ
ータの読み込みの時と同様に、CPU1のアクセスする
アドレスと仮想メモリエリア先頭アドレスレジスタ15
の値との差分からCPUが何番目のビットブロック・デ
ータをアクセスしようとしているかを求め、この値と1
ワード中に入るビットブロック・データの数からCPU
のアクセスしようとしているビットブロック・データが
ビットブロック・データ先頭アドレスから何ワード目に
含まれるか計算し、この結果とビットブロック・データ
先頭アドレスレジスタ12の値を加算して、該当のビッ
トブロック・データを含むワードのアドレスを生成し、
アドレスバッファ5に書き込むことで、メモリ7の該当
のビットブロック・データを含むワードデータをデータ
バッファ10に読み込む。その後で、アドレス・データ
変換装置4は、データバッファ9に書き込まれたビット
ブロック・データを図3に示すように、データバッファ
10の該当のビットブロック・データの位置に書き込み
、メモリ7に対しワードデータの書き込み指示を行なう
【0011】図2を使用して具体的に説明する。CPU
1が0から数えて5番目のビットブロック・データ7f
を読みだすときには、CPU1は仮想メモリエリア先頭
アドレスレジスタ15の値に「5」を加算したアドレス
をアクセスする。アドレスデータ変換装置4は、CPU
1のアクセスするアドレスが、仮想メモリエリア先頭ア
ドレスレジスタ12の値以上で、かつ仮想メモリエリア
先頭アドレスレジスタ12の値にビットブロック・デー
タ数レジスタ14の値「8」を加えた値未満であること
から、仮想メモリエリア内へのアクセスであることを認
識する。
【0012】次にCPU1のアクセスするアドレスと、
仮想メモリエリア先頭レジスタ15の値との差分から、
CPU1が5番目のビットブロック・データ7fをアク
セスしようとしていることを認識する。ビットブロック
・データビット長レジスタ13と1ワードのビット長よ
り、アドレス・データ変換装置4は、CPU1のアクセ
スしようとしているビットブロック・データ7fが、ビ
ットブロックデータ先頭アドレスの0から数えて1ワー
ド目に含まれることを知り、ビットブロック・データ先
頭アドレスレジスタ12に「1」を加えたアドレスのワ
ードデータを読み出す。次に読み出した桁位置を最下位
桁にそろえてCPU1に渡す。
【0013】CPU1が0から数えて3番目のビットブ
ロック・データ7dを書き換えるときには、CPU1は
仮想メモリエリア先頭アドレスレジスタ15の値に「3
」を加算したアドレスをアクセスする。アドレス・デー
タ変換装置4は、データを読みだす時と同様に、仮想メ
モリエリア内へのアクセスかどうかチェックし、仮想メ
モリエリア内へのアクセスであるので、CPU1のアク
セスするアドレスと仮想メモリエリア先頭レジスタ15
の値との差分からCPU1が3番目のビットブロック・
データをアクセスしようとしていることを認識する。ビ
ットブロック・データビット長レジスタ13と1ワード
のビット長より、アドレス・データ変換装置4は、CP
U1のアクセスしようとしているビットブロック・デー
タ7dがビットブロック・データ先頭アドレスの0ワー
ド目に含まれていることを知り、ビットブロック・デー
タ先頭アドレスレジスタ12の示すワードデータを読み
だす。
【0014】次に、読みだしたワードーデータの中のC
PU1が指定したビットブロック・データをCPU1が
書き込もうとするデータで更新し、更新後のワードデー
タを読み出した元のエリアに書き込む。以上の手順によ
り、CPU1はメモリ7上のビットブロック・データを
、仮想メモリエリアをアクセスすることにより、あたか
も1ワードにつき1つのビットブロック・データが存在
するようにメモリをアクセスする。
【0015】
【発明の効果】以上説明したように本発明は、CPUが
仮想アドレスをアクセスし、CPUとメモリの間に設け
たアドレス・データ変換装置により、アドレス、および
データを変換することによって、メモリを無駄にするこ
となく、また、ビットブロック・データの実際のアドレ
スやビット位置を意識することなく、あたかも1ワード
につき1つのビットブロック・データが存在するように
、ビットブロック・データをアクセスすることができる
という効果がある。
【図面の簡単な説明】
【図1】本発明のアドレス・データ変換装置を使用した
計算機システムのブロック図である。
【図2】本実施例のアドレス・データ変換装置がアクセ
スするアドレスを変換する時の動作概念図である。
【図3】本実施例のアドレス・データ変換装置がアクセ
スするデータを変換する時の動作概念図である。
【符号の説明】
1    CPU 2    アドレスバス 3    アドレスバッファ 4    アドレス・データ変換装置 5    アドレスバッファ 6    アドレスバス 7    メモリ 8    データバス 9    データバッファ 10    データバッファ 11    データバス

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  CPUと、メモリと、この2つを接続
    するバスとからなり、メモリエリア上の位置を示すアド
    レスをメモリ上に付与し、1つのアドレスに対応するメ
    モリのビット長が固定である(以下、このメモリ分割の
    ビット長を1ワードと記す)計算機システムにおいて、
    データのサイズが1ワード未満の特定のビット長のデー
    タ(以下、このデータをビットブロック・データと記す
    )でメモリを区切り、ビットブロック・データのみを集
    めたメモリの先頭アドレス(以下、このアドレスをビッ
    トブロック・データの先頭アドレスと記す)、ビットブ
    ロック・データのビット長、ビットブロック・データの
    データ数、および仮想メモリエリアの先頭アドレスを設
    定する各専用のレジスタを有するアドレス・データ変換
    装置を前記CPUと前記メモリの間のアドレスバスおよ
    びデータバス上に挿入し、このアドレス・データ変換装
    置は前記CPUからのメモリアクス要求があると、前記
    仮想メモリエリア先頭アドレスおよびビットブロック・
    データのデータ数からアクセスするアドレスが仮想メモ
    リエリア内であるか判断し、アクセスするアドレスが仮
    想メモリエリア外であれば前記CPUと前記メモリのア
    ドレスバスおよびデータバスをそれぞれ直接接続し、ア
    クセスするアドレスが仮想メモリエリア内であれば該当
    のビットブロック・データを含むワードのアドレスを生
    成し、この生成したアドレスのワード・データを読み出
    し、前記CPUからのアクセスの要求がデータの読み出
    しであればビット操作を行ない、読み出した前記ワード
    データからビットブロック・データを取り出し前記デー
    タバスを使用して前記CPUに送信し、また、前記CP
    Uからのアクセスの要求がデータの書き込みであれば、
    前記CPUが書き込もうとするデータをデータバスより
    受け取り、このデータに対してビット操作を行ない、読
    み出したワードデータ内の該当のビットブロック・デー
    タ位置に書き込み、修正したワードデータをメモリに書
    き込むことにより、CPUに1ワードにつき1つのビッ
    トブロック・データが存在するように、ビットブロック
    ・データをアクセスすることを特徴とするメモリアクセ
    ス方式。
JP11005591A 1991-05-15 1991-05-15 メモリアクセス方式 Pending JPH04337851A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11005591A JPH04337851A (ja) 1991-05-15 1991-05-15 メモリアクセス方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11005591A JPH04337851A (ja) 1991-05-15 1991-05-15 メモリアクセス方式

Publications (1)

Publication Number Publication Date
JPH04337851A true JPH04337851A (ja) 1992-11-25

Family

ID=14525948

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11005591A Pending JPH04337851A (ja) 1991-05-15 1991-05-15 メモリアクセス方式

Country Status (1)

Country Link
JP (1) JPH04337851A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222519A (ja) * 2004-02-09 2005-08-18 Arm Ltd メモリに記憶されたデータワード内のビット値へのアクセス
DE102013221214A1 (de) 2012-10-19 2014-04-24 Honda Motor Co., Ltd. Wassermantelstruktur in einem Zylinderkopf

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222519A (ja) * 2004-02-09 2005-08-18 Arm Ltd メモリに記憶されたデータワード内のビット値へのアクセス
DE102013221214A1 (de) 2012-10-19 2014-04-24 Honda Motor Co., Ltd. Wassermantelstruktur in einem Zylinderkopf

Similar Documents

Publication Publication Date Title
US5274795A (en) Peripheral I/O bus and programmable bus interface for computer data acquisition
JPH04314163A (ja) バッファ管理方式
JPS62274444A (ja) アドレス変換方式
JPH0250499B2 (ja)
JPS5868286A (ja) キヤツシユメモリおよびその作動方法
JPH04337851A (ja) メモリアクセス方式
JPH0227696B2 (ja) Johoshorisochi
JPS6113633B2 (ja)
JPS63255750A (ja) メモリ・システム
JPS60128543A (ja) アドレス交換仮想記憶装置
JPS6022777B2 (ja) デ−タ転送方式
JPS6019816B2 (ja) マイクロプログラム制御アダプタ
JP2612715B2 (ja) アドレスバス制御装置
JPH04348442A (ja) アドレス変換装置
JPH05197617A (ja) マルチプロセッサシステム
JP3036809B2 (ja) マイクロコンピュータにおけるバッファ管理方式
JPH04195563A (ja) メモリシステムの制御装置
JP2503059B2 (ja) 異種バス間接続装置
JP2581144B2 (ja) バス制御装置
JPH1040213A (ja) 情報処理装置のdmaデータ転送方法
JPH0556545B2 (ja)
JPS63184601A (ja) 情報処理装置
JPH11184797A (ja) Dma制御装置及びその制御方法並びにその制御プログラムを記録した記録媒体
JPH07262125A (ja) 情報処理装置
JPH0784871A (ja) 連続アドレスデータ用メモリのアクセス回路