JPH05120124A - マイクロプロセツサ内蔵型のメモリ制御構造 - Google Patents

マイクロプロセツサ内蔵型のメモリ制御構造

Info

Publication number
JPH05120124A
JPH05120124A JP3290711A JP29071191A JPH05120124A JP H05120124 A JPH05120124 A JP H05120124A JP 3290711 A JP3290711 A JP 3290711A JP 29071191 A JP29071191 A JP 29071191A JP H05120124 A JPH05120124 A JP H05120124A
Authority
JP
Japan
Prior art keywords
bus
memory
byte
microprocessor
cpu
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
JP3290711A
Other languages
English (en)
Inventor
Michael Fuccio
フツシオ マイケル
Robert L Caulk
エル コーク ロバート
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.)
LSI Corp
Original Assignee
LSI Logic 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 LSI Logic Corp filed Critical LSI Logic Corp
Publication of JPH05120124A publication Critical patent/JPH05120124A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4009Coupling between buses with data restructuring
    • G06F13/4018Coupling between buses with data restructuring with data-width conversion
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【目的】 アクセスバイト幅を設定可能なPROMイン
ターフェースを内蔵するマイクロプロセッサを提供する
ことを目的とする。 【構成】 外部回路を付加する必要なく、プロセッサ命
令をバイト幅でもワード(複数バイト)幅のいずれでも
実行できる。これは、プログラム設定可能なバイト収集
機能を有するためである。1バイト(あるいはワード)
に対するアクセス時間は、AWGを介してプログラム設
定が可能であり、これにより異なるアクセス時間を有す
る種々のデバイスを自由に選択して用いることができる
ようになる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はマイクロプロセッサのメ
モリインターフェース技術、特に、メモリインターフェ
ース技術のうちバイト収集(byte gathering)、メモリ
制御、およびシステム起動(ブートアップ)に関する。
【0002】
【従来の技術】マイクロプロセッサは、命令および処理
を受けるデータの記憶に通常用いられるRAM(ランダ
ム・アクセス・メモリ)、マイクロプロセッサのブート
アッププログラムなどの記憶に使用されるROM(リー
ド・オンリ・メモリ)、さらに、汎用的なメモリインタ
ーフェースを介して接続される他の記憶媒体など、種々
の形式のメモリに接続される。
【0003】また、他の低速なメモリに記憶されたプロ
セッサ命令やデータのアクセスを高速化するためにキャ
ッシュメモリが用いられるが、このキャッシュメモリ
は、マイクロプロセッサチップに内蔵する場合もある。
【0004】従来のメモリインターフェース方式では、
汎用的なハンドシェイクインターフェースはマイクロプ
ロセッサのピンを介して可能であるが、DRAM制御論
理回路、およびバイト収集(8ビットPROMインター
フェース)は外部回路により行なわれていた。
【0005】たとえば、米国特許第4,943,911号には、
イニシャルプログラムローダ(IPL)ルーチンのため
のシステムが開示されており、この文献はメモリインタ
ーフェースに関する現在の一般的な水準を示すものと考
えてよい。
【0006】
【発明が解決しようとする課題】本発明の目的は、マイ
クロプロセッサレベルで柔軟なバイト収集を行なえるよ
うにすることにある。
【0007】また、本発明は、マイクロプロセッサレベ
ルで柔軟なメモリ制御を行なえるようにすることを目的
とする。
【0008】また、本発明は、マイクロプロセッサを用
いたシステムにおいて、より安価なROMを用いてシス
テムをブートできるようにすることを目的とする。
【0009】また、本発明は、柔軟なDRAM(ダイナ
ミックRAM)制御インターフェース、プログラム可能
なPROM制御インターフェース、さらに、汎用的なメ
モリ制御インターフェースマイクロプロセッサのチップ
上に一体化することを目的とする。
【0010】また、本発明は、種々の回路を内蔵するマ
イクロプロセッサチップを用いたシステムの基板レベル
の構成を簡略化し、その製造コストを低減することを目
的とする。
【0011】さらに、本発明は、部品点数の低減により
マイクロプロセッサべースのシステムの全般的な信頼性
を向上することを目的とする。
【0012】
【課題を解決するための手段】以上の課題を解決するた
めに、本発明においては、複数バイト幅に相当するワー
ド幅の内部バスを有するCPUと、外部ブートPROM
からプロセッサ命令、およびデータを入力するメモリバ
スと、前記メモリバスから前記CPUに制御信号を入力
するBIUと、選択的にイネーブルされ、バイト幅、な
いし複数バイト幅のブートPROMに接続された前記メ
モリバス上で、前記内部バス上の表現にしたがったワー
ド形式となるよう複数バイトを収集するバイト収集手段
を有する構成、あるいは CPUと、外部DRAMから
プロセッサ命令およびデータを入力するメモリバスと、
CPUおよびチップ外部のバスマスタのいずれからもD
RAMアクセスを可能とする手段を有する構成を採用し
ている。
【0013】
【作用】本発明によれば、マイクロプロセッサチップは
CPU(中央処理装置)、柔軟に構成されたDRAMイ
ンターフェース、プログラマブルなPROMインターフ
ェース、および汎用メモリインターフェースを内蔵す
る。CPUは、複数バイトの命令サイズ(たとえば32
ビットワード幅)を有する。さらに好ましくは、キャッ
シュ制御および内蔵キャッシュメモリをCPUとともに
チップ上に内蔵する。
【0014】PROMインターフェースは1バイト幅
で、これによりCPUは8ビットポート、たとえば8ビ
ット幅のブートPROMから1バイトづつ命令をフェッ
チする。プロセッサ命令あるいはデータを8ビット幅の
デバイスからフェッチする場合、4回のフェッチが必要
である。命令コードは外部回路を付加することなく、
8、16、および32ビットデバイスのいずれからも実
行できる。すなわち、本発明によれば、選択的なバイト
収集が可能である。バイト(あるいはワード)に対する
AWG(自動待ち状態発生器)によりアクセス時間はプ
ログラム可能で、これによって、異なるアクセス時間を
もつ種々のPROMを柔軟に選択可能となる。このWS
G(AWG)は無効化することができる。
【0015】8ビットポートへのメモリ書込は、その8
ビットデバイスがたとえば32ビットバスの内、どの8
ビットに存在するかを指定することにより簡略化でき
る。好ましくは、プロセッサ命令はワード境界に整列さ
れる。
【0016】さらに本発明によれば、動的なバス幅設定
が可能である。この機能は、32ビットCPUが8、1
6(あるいは32)ビット幅のメモリシステム(たとえ
ばDRAM)を収容できる場合のものである。メモリデ
バイスのサイズは、トランザクションベースで決定され
る。本発明は、アドレス境界に整列されていないデータ
のフェッチもサポートする。
【0017】さらに、本発明によれば、マイクロプロセ
ッサを用いたシステムを簡略化し、基板レベルのコスト
を低減可能である。
【0018】本発明の他の目的、態様、作用、および効
果は、以下の説明により明らかになろう。
【0019】
【実施例】以下、図面に示す実施例に基づき、本発明を
詳細に説明する。なお、以下の説明では、次のような略
記を用いるものとする。 CPU:中央処理装置、 RAM:ランダム・アクセス・メモリ、 ROM:リード・オンリ・メモリ、 PROM:プログラマブルROM、 DRAM:ダイナミックRAM、 SRAM:スタティックRAM、 I/O:入出力、 k:キロ
【0020】また、種々の信号の機能を説明するため
に、一般に用いられている次のような頭略号を用いる。
これらは、種々の信号名に付して用いられることもあ
る。 EN:イネーブル、 RD:リード(読み出し)、 WR:ライト(書き込み)、 FTCH:フェッチ、 M:メモリ、 D:データ、 I:インストラクション(命令)、 TEST:テスト、 ACK:アクノレッジ、 BLK:ブロック
【0021】場合によっては、上記のような信号は、[#
#:#]、あるいは[B##..B#]のような表記を伴い、これら
はバイト幅の信号を表し、またそのビット数ないし位置
を表現する。
【0022】図1は、主としてCPU(中央制御装置)
102、BIU(バスインターフェースユニット)10
4、およびMEMC(メモリコントロールユニット)1
06からなるマイクロプロセッサ100を示している。
さらに、マイクロプロセッサ100には、前記の米国特
許(代理人摘要番号LLC-2013)内蔵型(オンチップ)の
キャッシュメモリ(不図示)を搭載することができる。
【0023】<CPU102>CPU102には、LS
Iロジック(ミルピタス、カリフォルニア州)製のLR30
00マイクロプロセッサを使用できる。LR3000プロセッサ
は、MIPS(MIPSコンピュータシステムの登録商
標)型のRISC(縮小命令セットコンピュータ)で、
メモリ制御回路、キャッシュインターフェース、および
メインメモリ制御回路をオンチップで内蔵している。通
常のLR3000プロセッサの内蔵メモリ制御機能は64エン
トリTLB(トランスレーションルックアサイドバッフ
ァ)を用いた完全連想方式である。内蔵キャッシュ制御
回路は、それぞれ356kbまでの外部命令およびデー
タキャッシュが可能であり、これらの領域を1CPUサ
イクルでアクセスできる。さらに、LR3000プロセッサ
は、外付けのコプロセッサのために必要なキャッシュお
よびメインメモリ制御信号およびアドレス信号を生成で
きる。
【0024】LR3000プロセッサについての、より詳細な
説明は、付録に付したLSIロジック発行の仕様書(準
備版、1988年発行)を参照されたい。仕様書に記載のよ
うに、LR3000プロセッサは32ビットワード、16ビッ
トハーフワード、8ビットバイトの各サイズを有する。
メモリアドレス上でのバイト順序はビッグエンディアン
およびリトルエンディアンが両方とも設定可能である。
また、LR3000の命令サイズは全て32ビット長で、32
ビット内部バスを有する。現状のLR3000は、32ビット
PROMからのみブートできるように構成されている。
本発明によれば、32ビットないし8ビットPROMの
いずれからもブートできるようになる。
【0025】基本的なLR3000プロセッサの信号は次のよ
うに構成されている。 a)32ビット(D31:0)双方向データバス: 全ての
データおよび命令をCPU、キャッシュメモリ、メイン
メモリ、およびコプロセッサの間で転送する。
【0026】b)18ビット(AdrLo 17:0)低位アドレ
スバス:キャッシュおよびメモリサブシステムに対する
低位アドレスのためのもの。最上位の16ビット(AdrL
o17:2)がキャッシュ領域をアクセスするために使用さ
れる。
【0027】c)20ビット(Tag 31:12)タグバス:
キャッシュ読み出しの間CPUに対してキャッシュタ
グを転送する。キャッシュ書込の間は、このタグバスは
キャッシュに対するタグビットを転送する。メインメモ
リのアクセスに際しては、最上位の16ビットが、前記
の低位アドレスバスAdrLoのアドレスと組み合わされて
32ビットの物理アドレスを形成する。
【0028】d)タグ有効(TagV)信号: LR3000プロ
セッサおよびキャッシュ間のタグ有効ビットである。キ
ャッシュ読み出しの間このタグ有効信号TagVはキャッシ
ュがヒットしたかどうかの検査条件の一つとして用いら
れる。
【0029】e)3ビット(TagP2:0)双方向タグパリ
ティバス: タグバスのパリティおよびタグ有効信号の
ためのもの。タグパリティは、キャッシュ書き込みの際
に生成され、キャッシュ読み出しの際に照合される。タ
グパリティエラーが生じた場合は、キャッシュアクセス
失敗として扱われる。
【0030】f)Iキャッシュ読み出し(IRd1およびIR
d2)、およびDキャッシュ読み出し(DRd1およびDRd2)
信号: Iキャッシュ読み出し、およびDキャッシュ読
み出しの際に有効となり、キャッシュRAMの出力をイ
ネーブルする。
【0031】g)Iキャッシュ書き込み(IWr1およびIW
r2)、およびDキャッシュ書き込み(DWr1およびDWr2)
信号: Iキャッシュ書き込み、およびDキャッシュ書
き込みの際に有効となる。通常、これらの信号は、書き
込みイネーブルあるいは書き込みストローブ信号として
キャッシュRAMに入力される。
【0032】h)Iキャッシュラッチクロック(IClk)
およびDキャッシュラッチクロック(DClk)信号: C
PUサイクルごとに有効となり、外部ラッチへおよびキ
ャッシュRAMのアドレスバスへのアドレスのラッチに
使用される。
【0033】さて、マイクロプロセッサの外部には、
(すなわち、オフチップには)ブート用のPROM10
8、DRAMアレイ(メインメモリ)110、および外
部バスマスタ制御回路112が設けられている。これら
の各ブロックの機能は、いずれも本発明の属する分野で
は公知のものである。
【0034】BIU(バスインターフェースユニット)
104は、CPU102の論理回路と、汎用(外部)メ
モリバス114のインターフェースを行なうもので、B
IUについては、図4に関連して後述する。外部メモリ
バス114は、従来のバスと同様、バス上でのトランザ
クション、あるいはメモリデータ転送などを制御する種
々の制御信号(MDATA、MADDR、MCNTLなど)を有し、チ
ップ100の外部からアクセス可能である。
【0035】外部バス114上でのデータ転送では、1
ワード読み出し、2、4、8、または16ワードのブロ
ック転送、あるいは、32ビットワード内での1〜4バ
イト(8ビットバイト)の書き込みを行なえる。
【0036】さらに、本実施例では、BIU104は、
バイト収集のための論理回路116を有している。バス
読み出しトランザクションが開始されると、入力信号MB
YTEWIDEN(後述)が有効となり、BIU104はバイト
収集を実行する。これにより、安価で、基板上の占有面
積の小さい単一の8ビットブートPROM108を使用
できるようになる。バイト収集が開始されると、各バイ
トが読み出され、保持レジスタ上に集められる。この3
2ビットの保持レジスタ上でのバイト順序は、ビッグエ
ンディアンないしリトルエンディアンのいずれが指定さ
れているかにより設定される。4バイトが保持レジスタ
上に集められると、このデータワード(ないし32ビッ
ト命令)は、CPU/BIU間の内部プロトコルにした
がってCPU102に転送される。
【0037】MEMC106は、BIU104の外部に
あるが、これらは物理的に同じダイ上に配置されるのが
好ましい。MEMC106は、2つの独立した部分から
なる。1つは、2つの独立したメモリチップあるいはア
レイのためIOCS(チップセレクト制御信号)を発生
するAWG(自動待ち状態発生器)118で、もう1つ
は、メモリの1バンク(たとえばDRAMアレイ11
0)に対する制御を全て行なうDRAMC(DRAM制
御回路)120である。
【0038】DRAMC120は、種々のアクセススピ
ードを持つDRAMを使用できるよう柔軟なオプション
設定が可能であり、また、簡単な外部回路によりインタ
ーリーブ配置されたDRAMを制御できるよう工夫され
ている。
【0039】また、DRAMC120は、リフレッシュ
タイマ122の計時に応じてDRAMのリフレッシュ制
御も行なえる。リフレッシュタイマ122は、CPU1
02と同じダイ上に物理的に配置されるのが好ましい。
【0040】<AWG118>たとえば、外部回路がP
ROM108のような外部デバイスに対してアクセスす
る必要を減らすためにAWG118が設けられている。
AWG118は、PROM内のプロセッサ命令、および
IOデータの2つのアドレス空間を独立して制御する。
MXSTARTNが有効となると、それに対応したチップセレク
ト出力(CS)がローレベル有効となる。そして、適当な
WAIT(ウエイト)フィールドの値(WAIT端子は不図示)
によりサイクルがカウントされる。このとき、もし、WA
ITフィールドの値が0であれば、ウエイト状態は挿入さ
れず、次のサイクルでは、そのチップセレクト(CS)は
無効となる。データレディ信号(DRDYN)が内部的な制
御により有効となると、このチップ内部のWSGは0を
カウントし、BIUにシーケンス終了を知らせる。
【0041】もし、チップ外部で発生されたデータレデ
ィ信号DRDYNが、チップ内部のデータレディ信号DRDYNよ
りも先に入力されると、外部のデータレディ信号DRDYN
はそのサイクルを終了し、対応するチップセレクトCSを
無効にする。こうして、入出力セレクト信号IOSELNのう
ち外部メモリセレクト信号EPSELNにより、同じアドレス
範囲ある、アクセス時間の異なるデバイスをセレクトす
ることが可能となる。
【0042】PROMウエイトフィールド(PWAIT)は
リセット時、15に設定される。これにより、メモリ上
の例外処理ベクトルおよびパワーオン・ブートプログラ
ムをフェッチすることが可能となる。高速なPROMチ
ップを用いる場合には、その利点を生かすため、ブート
プログラムは、いつでもPROMウエイトフィールドPW
AITの値をより小さい値に変更できる。
【0043】さらに、信号EPSELが有効になると、信号M
BYTEWIDENがローレベル有効となり、CPU102は8
ビットバスモードに移行する(図2に示すように外部P
ROMセレクト信号EPSELは信号MBYTEWIDENに接続され
ている)。
【0044】AWG118に関するより詳細な説明は、
付録5(COBRAマイクロプロセッサメモリインターフェ
ース)に記載されている。
【0045】<BIU(バスインターフェースユニッ
ト)206>BIU104は、CPU102、キャッシ
ュメモリ204、および、タイマー、DRAM制御回路
などの他のシステム構成部材などの間に配置される制御
論理回路である。BIU104はCPUの外部メモリに
対するインターフェース、および命令およびデータの内
蔵キャッシュとのインターフェース(ICacheおよびDCac
he)を制御する。
【0046】図4はここでは19個の機能ブロックから
なるBIU104の機能的な構造を示している。これら
の各ブロックの機能は、付録6に詳細に示されているの
で、ここでは、本発明に関連する部分、特にキャッシュ
のダイレクトR/Wのテストモードへの移行については
詳細に示し、それ以外の各ブロックの機能は簡単に説明
することにする。
【0047】IASWTCH(命令アドレススイッチ)
401は、外部メモリのトランザクションが必要かどう
かを決定し、それに応じてストール要求430を発生す
る。このトランザクションには命令フェッチ、およびバ
スステータスの検査が含まれる。
【0048】DASWTCH(データアドレススイッ
チ)402は、データメモリとのトランザクションを扱
う他は、IASWTCH401と同じ機能を有する。
【0049】MBQUEUE(メモリブロックキュー)
403は、 a)外部メモリスタートビットBTXSTART b)命令/データトランザクションビットBIPDN c)キャッシュ可/不可トランザクションビットBNCABL
EP d)R/Wトランザクションビット などからなる外部メモリアクセスに関する情報を保持す
る。これらのキュー(待ち行列)データは、並列にロー
ドされる。外部メモリスタートビットBTXSTARTがキュー
の先頭に存在すると、これらの情報をキューの先頭から
順に使用して外部メモリアクセスが開始される。また、
転送元から転送先へ正しく情報を転送するようキューの
先頭の情報により、BIUデータのパスが設定される。
キュー先頭で要求された外部メモリトランザクションが
終了するとキューの内容は順にシフトされ、キュー内に
並んでいる次のアクセス要求がキュー先頭に移動され、
その新しい外部メモリトランザクションが実行に移され
る。
【0050】MXCNTL(メモリトランザクション制
御ブロック)404は、外部メモリ制御信号を発生し、
また外部制御信号の入力に応答する。MXCNTL40
4は、MBQUEUE403内の情報に基づきCPUに
対するメモリ制御シーケンスを発生する。
【0051】XMSWTCHCNTL(外部メモリスイ
ッチ制御ブロック)405は、データバス制御信号BC1
〜BC12を発生し、これにより種々の動作期間におけるB
IUのデータパス設定を制御する。
【0052】DATLATCH(データラッチ)406
は、外部メモリデータバス436およびBIUの内部デ
ータバス438間で入出力データをラッチする。DAT
LATCH(データラッチ)406の機能は、データバ
スのビット0〜7の8ビットポート機能によりバイト収
集が要求されている場合、複雑なものとなる。各バイト
のロードは、他の機能ブロック(BUTECTR:後述)によ
り個々に制御される。
【0053】BPAR(ブロックパリティ)407は読
み出し動作においてパリテチェックを行なう。データ
(命令およびデータ)は、外部メモリデータバス436
からDATLATCH406を介してBPAR407に
入力される。もしパリティエラーが検出されると、BP
AR407はパリティエラー信号をCPUに出力する。
【0054】BYTECTR(バイトカウンタ)408
は、バイト収集を行なう場合、8ビットポートフェッチ
のバイトアドレスを発生する。BYTECTR408は
初期値設定可能なモジュロ(法):4のカウンタを有す
る。アドレスビット[1:0]は、このカウンタにロードさ
れ、バイトはモジュロ4によりインクリメントされる。
BYTECTR408は、バイト順序(ビッグ/リトル
エンディアン)の設定に応じて、どのようにDATLA
TCH406上にバイト収集を行なうかを決定する。
【0055】BAMUX(ブロックアドレスマルチプレ
クサ)409は、外部メモリアドレスバス436上に適
切な数のビットを配列するものである。ブロックアドレ
スのインクリメントは、MXCNTL404で行なわれ
る。
【0056】ADRLATCH(アドレスラッチ)41
0は、外部バスが能動化された時、バス検査アドレスを
ラッチする。
【0057】INTERRUPT(インタラプトブロッ
ク)411は、信号線440上の外部インタラプト信号
をラッチし、信号線442を介してCPU102に出力
する。
【0058】RESET(リセットブロック)412
(付録6では”BRST”)は、信号線444にリセッ
ト信号を発生し、BIUの各素子およびCPUのコール
ドおよびウォームリセットを行なう。
【0059】BLTXVRAL(ブロックトランシーバ
ラッチ)413は、BIUの内部データバス438上の
データラッチをCIBP(CPUの32ビット命令バ
ス)446に3ステートトランシーバにより接続する。
【0060】BXXTXVR(バストランシーバラッ
チ)414は、CDATAP(CPUデータバス)44
8を、BIUの内部データバス438上のデータラッチ
に3ステートトランシーバにより接続する。
【0061】BABTXVR(アドレスバストランシー
バ、U11)415aは、I(命令)キャッシュアドレ
スバス426をBIUの内部データバス428上のデー
タラッチに3ステートトランシーバにより接続する。
【0062】第2のBABTXVR(アドレスバストラ
ンシーバ、U9)415bは、D(データ)キャッシュ
アドレスバス432をBIUの内部データバス428上
のデータラッチに3ステートトランシーバにより接続す
る。
【0063】BAWBUF(バスアドレス書き込みバッ
ファ)416はバッファ書き込み機能のうちアドレス書
き込みを担当する。BAWBUF416では、書き込み
トランザクションのアドレスは外部書き込みトランザク
ションで使用されるまで記憶される。
【0064】BDWBUF(バスデータ書き込みバッフ
ァ)417は、バッファ書き込み機能のうちデータ書き
込みを担当する。BDWBUF417では、書き込みト
ランザクションのデータは外部書き込みトランザクショ
ンで使用されるまで記憶される。
【0065】BXCINV(キャッシュ無効化ブロッ
ク)418は、Iキャッシュアドレスバス426上に無
効なアドレスを発生させるマルチプレクサを有する。
【0066】<PROMインターフェース>図2は、8
ビットPROMアレイ202およびCPU102間のイ
ンターフェースの例を示している。もし、簡単なPRO
MないしEPROMがブートデバイスとして使用されて
おり、処理スピードが重視されていない場合には、CP
Uとのインターフェースは簡単である。唯一つ必要な外
部チップは、通常、低速なPROMに対して比較的長い
3ステートディスエーブル期間を設定するための8ビッ
トの3ステートドライバ(不図示)のみでよい。8ビッ
トPROMとのインターフェースにおいては、CPUが
出力する外部PROMセレクト信号EPSELは、8ビット
ポートを指定するため、信号MBYTEWIDENに接続される。
これにより、有効(ローレベル能動)となった場合、信
号MBYTEWIDENはメモリインターフェースが8ビット幅で
行なわれることを示す。この信号MBYTEWIDENを検出する
と、CPU102は、生成されたバイトアドレス開始点
からワードデータが収集されるまで、8ビットPROM
202から4バイトのフェッチを行なう。
【0067】外部PROMセレクト信号EPSELの有効
(ローレベル能動)状態は、CPU102がPROMア
ドレス空間をアクセスしていることを意味し、またこの
信号はチップセレクト信号として使用できる。CPU1
02は、自身のデータレディ信号DRDYとして、トランザ
クション開始後、設定可能なウエイト数を発生する。外
部PROM回路は、内部のAWG118を無効にし、こ
のデータレディ信号DRDYをウエイト数の制御に使用す
る。
【0068】上記制御は、AWG118(図1)の機能
を利用するので、外部制御回路は必要としない。電源投
入後のリセットでは、命令およびデータは、AWG設定
レジスタのウエイトフィールドレジスタ(PWAIT)の値
がソフトウェア的に変更されるまでの間、15ウエイト
(AWG118参照)を挟んでPROM202からフェ
ッチされる。
【0069】図3は、32ビットPROMアレイおよび
CPU102間のインターフェースの例を示している。
図2のPROMインターフェースとの相違は、バス30
4が32ビットであることを示すために、信号MBYTEWID
ENがハイレベル(+5V)にプルアップされている点のみ
である。
【0070】信号MXSTARTN(不図示)は、1CPUサイ
クルごとに有効となり、トランザクションの開始タイミ
ングを示す。同時に、信号MADDR、信号MIPUN(不図
示)、信号MPWRN(不図示)、および信号BLKFREQP(不
図示)が入力される。これらの うち、まず信号MIPUNの
ハイレベルによりプロセッサ命令のフェッチが示される
。また、信号MPWRNにより、トランザクションが読み出
しあるいは書き込みのい ずれであるかが示される。さ
らに、信号BLKFREQPのハイレベルによりブロックフェッ
チトランザクションが要求される。
【0071】信号MASN(不図示)は1クロック位相遅れ
で有効となる。
【0072】信号MRDN(不図示)は、読み出しトランザ
クションが要求されている場合に信号MASNと同じタイミ
ングで有効となる。
【0073】トランザクションが完了すると、信号MRDY
N(不図示)がBIU104によりローレベルに設定さ
れる。信号MADDR、および信号MXSTART(不図示)を除く
全てのメモリ制御信号MCntlの状態は、トランザクショ
ン終了まで保持される。
【0074】<DMA(ダイレクトメモリアクセス)制
御>図5は、図1と同様の様式で、外部DMAバスマス
タ(コントローラ)502(図1の外部バスマスタ11
2に相当)の構成および動作を示している。マイクロプ
ロセッサ100は、外部DMAコントローラ502内蔵
DRAMコントローラ(図1の120)により制御され
るDRAM110にアクセスできるよう構成されてい
る。これにより、外部のDRAM制御回路を用いる必要
なく、安価にマイクロプロセッサの基本構成を拡張でき
るが、このことは、付録5(COBRAマイクロプロセッサ
メモリインターフェース第14〜15頁参照)にも記載
されている。すなわち、(DMAコントローラのよう
な)外部バスマスタにより、ブロックデータフェッチな
どを含むDRAMアクセスが可能となる。
【0075】DMAコントローラ502は、DRAMサ
イクルを要求する場合、バスの制御権を獲得するため、
信号BREQを有効にする。そしてマイクロプロセッサ10
0が信号BGNTを有効にすると、DMAコントローラ50
2はバスの制御権を獲得し、所望のDRAMアドレスを
信号線MADDRに発生でき、また、所望のアクセス動作を
信号RDN、I/DNおよびBLKFREQにより指定し、さらに信号
ASNをローレベル有効とし、トランザクションを開始す
る。一方、DRAMコントローラは、信号BGNTが有効と
なると、上記信号線をモニタし、信号ASNがローレベル
有効となった 時、対応する処理を開始する。たとえ
ば、信号RDNがローレベル有効の場合には 、読み出しサ
イクルが開始される。同様に、信号BLKFREQが有効であ
れば、高速 なページモードのブロック転送シーケンス
が開始される。この転送ブロックのサイズは、信号I/DN
により決定される。たとえば、信号I/DNがハイレベルの
場合には、プロセッサ命令のブロックサイズが使用さ
れ、ローレベルの場合にはメモリ設定レジスタにプログ
ラムされたデータブロックサイズが使用される。
【0076】以上の構成は、前述のDRAMコントロー
ラ内蔵方式に比して、チップ内部のマイクロプロセッサ
およびチップ外部のコントローラ(バスマスタ)のいず
れからもDRAMアクセスが可能である、という利点が
ある。
【0077】<付録>上述の実施例に関するより詳細な
記述は以下の参考文献に見ることができる。 1.『高性能RISCマイクロプロセッサLR3000(準備
版)』、1988年9月、LSIロジック社発行、ミルピタ
ス、カリフォルニア(注文番号LR3000) 2.『キャッシュ・メガセルのモジュール定義』、サン
ジェイ・デサイ著、1989年12月7日、(1990
年9月25日第3版発行)、LSIロジック社発行、ミ
ルピタス、カリフォルニア 3.『BIUモジュール定義』、マイケル・L・フッシ
オ著、1989年12月4日、(1990年1月8日第1版発行)、
LSIロジック社発行、ミルピタス、カリフォルニア 4.『COBRA-MIPS高性能内蔵プロセッサ(準備版)』、
1990年4月30日(第1.6版)、LSIロジック社発行、ミ
ルピタス、カリフォルニア 5.『Cobraマイクロプロセッサメモリインターフェー
ス』、1990年7月20日(第1.2版)、LSIロジック社発
行、ミルピタス、カリフォルニア 6.『8ビットバスサイズについて』、マイケル・L・
フッシオ著、1989年12月14日、LSIロジック社発行、
ミルピタス、カリフォルニア
【0078】
【発明の効果】以上から明らかなように、本発明によれ
ば、複数バイト幅に相当するワード幅の内部バスを有す
るCPUと、外部ブートPROMからプロセッサ命令、
およびデータを入力するメモリバスと、前記メモリバス
から前記CPUに制御信号を入力するBIUと、選択的
にイネーブルされ、バイト幅、ないし複数バイト幅のブ
ートPROMに接続された前記メモリバス上で、前記内
部バス上の表現にしたがったワード形式となるよう複数
バイトを収集するバイト収集手段を有するあるいは C
PUと、外部DRAMからプロセッサ命令およびデータ
を入力するメモリバスと、CPUおよびチップ外部のバ
スマスタのいずれからもDRAMアクセスを可能とする
手段を有する構成を採用している。
【0079】したがって、異なるアクセス時間を有する
PROMなど種々のデバイスを自由に選択して用いるこ
とができる。たとえばブートPROMの場合、プログラ
ム設定可能なバイト収集機能により、外部回路を付加す
る必要なく、プロセッサ命令をバイト幅でもワード(複
数バイト)幅のいずれでも実行できるため、より安価な
8ビットPROMなどによってもシステムをブートでき
るようになる。
【0080】また、汎用的なメモリ制御インターフェー
スマイクロプロセッサのチップ上に一体化することがで
き、さらに、マイクロプロセッサを用いたシステムの基
板レベルの構成を簡略化し製造コストを低減するととも
に、信頼性を向上できる。
【0081】すなわち、本発明によれば、外部回路を必
要としない簡単安価かつ小型軽量な構成によりマイクロ
プロセッサレベルでの柔軟なメモリ制御が行なえるとい
う優れた効果がある。
【図面の簡単な説明】
【図1】本発明によるシステム構成を示したブロック図
である。
【図2】本発明による8ビットPROMインターフェー
スを例示したブロック図である。
【図3】本発明による32ビットブートPROMインタ
ーフェースを例示したブロック図である。
【図4】図1のBIU(バスインターフェースユニッ
ト)の構成を示したブロック図である。
【図5】図1のシステム構成に対応した外部DMAバス
マスタのブロック図である。
【符号の説明】
100 マイクロプロセッサ 102 CPU 104 BIU 106 メモリコントローラ 108 PROM 110 DRAMアレイ 112 外部バスマスタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロバート エル コーク アメリカ合衆国、カリフオルニア州 94588、プレザントン、ページ コート 4020

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数バイト幅に相当するワード幅の内部
    バスを有するCPUと、 外部ブートPROMからプロセッサ命令、およびデータ
    を入力するメモリバスと、 前記メモリバスから前記CPUに制御信号を入力するB
    IUと、 選択的にイネーブルされ、バイト幅、ないし複数バイト
    幅のブートPROMに接続された前記メモリバス上で、
    前記内部バス上の表現にしたがったワード形式となるよ
    う複数バイトを収集するバイト収集手段を有することを
    特徴とするマイクロプロセッサ内蔵型のメモリ制御構
    造。
  2. 【請求項2】 前記内部バスを共有する内蔵キャッシュ
    メモリを有し、複数バイトまたはワードが前記ブートP
    ROMから前記BIUを介してキャッシュメモリに供給
    されることを特徴とする請求項1に記載のマイクロプロ
    セッサ内蔵型のメモリ制御構造。
  3. 【請求項3】 前記構成部材の全てが単一チップ上に構
    成されることを特徴とする請求項1に記載のマイクロプ
    ロセッサ内蔵型のメモリ制御構造。
  4. 【請求項4】 前記内部バスが32ビット幅で、かつバ
    イト幅が8ビットに相当することを特徴とする請求項1
    に記載のマイクロプロセッサ内蔵型のメモリ制御構造。
  5. 【請求項5】 プログラム設定可能な入出力インターフ
    ェース手段を有することを特徴とする請求項1に記載の
    マイクロプロセッサ内蔵型のメモリ制御構造。
  6. 【請求項6】 前記メモリ制御構造は、AWGを有する
    ことを特徴とする請求項1に記載のマイクロプロセッサ
    内蔵型のメモリ制御構造。
  7. 【請求項7】 CPUと、 外部DRAMからプロセッサ命令およびデータを入力す
    るメモリバスと、 CPUおよびチップ外部のバスマスタのいずれからもD
    RAMアクセスを可能とする手段を有することを特徴と
    するマイクロプロセッサ内蔵型のメモリ制御構造。
JP3290711A 1990-10-11 1991-10-09 マイクロプロセツサ内蔵型のメモリ制御構造 Withdrawn JPH05120124A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US59668090A 1990-10-11 1990-10-11
US07/596680 1990-10-11

Publications (1)

Publication Number Publication Date
JPH05120124A true JPH05120124A (ja) 1993-05-18

Family

ID=24388252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3290711A Withdrawn JPH05120124A (ja) 1990-10-11 1991-10-09 マイクロプロセツサ内蔵型のメモリ制御構造

Country Status (2)

Country Link
EP (1) EP0480417A3 (ja)
JP (1) JPH05120124A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010538376A (ja) * 2007-09-01 2010-12-09 ディーツーオーディオ コーポレーション ハイ・デフィニッション・オーディオ・バスを介したコーデックプロセッサを起動するシステムと方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0600122A1 (de) * 1992-12-02 1994-06-08 Siemens Aktiengesellschaft Mikroprozessor mit einer integrierten Bussteuereinheit
US5448521A (en) * 1993-11-12 1995-09-05 International Business Machines Corporation Connecting a short word length non-volatile memory to a long word length address/data multiplexed bus
US5630099A (en) * 1993-12-10 1997-05-13 Advanced Micro Devices Non-volatile memory array controller capable of controlling memory banks having variable bit widths
US5898857A (en) * 1994-12-13 1999-04-27 International Business Machines Corporation Method and system for interfacing an upgrade processor to a data processing system
US5603041A (en) * 1994-12-13 1997-02-11 International Business Machines Corporation Method and system for reading from a m-byte memory utilizing a processor having a n-byte data bus

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4716527A (en) * 1984-12-10 1987-12-29 Ing. C. Olivetti Bus converter
US4831514A (en) * 1986-02-14 1989-05-16 Dso "Izot" Method and device for connecting a 16-bit microprocessor to 8-bit modules
US5014236A (en) * 1988-01-29 1991-05-07 International Business Machines Corporation Input/output bus expansion interface

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010538376A (ja) * 2007-09-01 2010-12-09 ディーツーオーディオ コーポレーション ハイ・デフィニッション・オーディオ・バスを介したコーデックプロセッサを起動するシステムと方法

Also Published As

Publication number Publication date
EP0480417A3 (en) 1994-05-18
EP0480417A2 (en) 1992-04-15

Similar Documents

Publication Publication Date Title
US5745732A (en) Computer system including system controller with a write buffer and plural read buffers for decoupled busses
EP0192202B1 (en) Memory system including simplified high-speed data cache
JP2642027B2 (ja) コンピュータ・システム、アービトレーション方法及びアービトレーション装置
JP4500373B2 (ja) 一体化システムメモリおよび改良されたバス同時実行性を有するコンピュータシステム
US5809524A (en) Method and apparatus for cache memory replacement line identification
EP0700003B1 (en) Data processor with controlled burst memory accesses and method therefor
US5515514A (en) Peripheral processor card for upgrading a computer
US6493774B2 (en) Data processing system and microcomputer
JPH07319767A (ja) コンピュータ・システム
WO1994008296A1 (en) Double buffering operations between the memory bus and the expansion bus of a computer system
JP4226085B2 (ja) マイクロプロセッサ及びマルチプロセッサシステム
US5301281A (en) Method and apparatus for expanding a backplane interconnecting bus in a multiprocessor computer system without additional byte select signals
JPH05128000A (ja) 内蔵キヤツシユメモリを有するマイクロプロセツサおよびその内蔵キヤツシユメモリのテスト方法
TW202234245A (zh) 具有晶片內執行能力的串列式反及閘快閃記憶體
US5448742A (en) Method and apparatus for local memory and system bus refreshing with single-port memory controller and rotating arbitration priority
JPH0260012B2 (ja)
EP3270293B1 (en) Two stage command buffers to overlap iommu map and second tier memory reads
US5860113A (en) System for using a dirty bit with a cache memory
US5603007A (en) Methods and apparatus for controlling back-to-back burst reads in a cache system
JPH05120124A (ja) マイクロプロセツサ内蔵型のメモリ制御構造
US5414815A (en) Method and apparatus for transferring data directly between a memory device and a peripheral device in a single address cycle under the control of a processor
KR960007833B1 (ko) 고속 페이지 모드 선택을 위한 방법 및 장치
US6122696A (en) CPU-peripheral bus interface using byte enable signaling to control byte lane steering
WO1995025309A1 (en) Methods and apparatus for translating incompatible bus transactions
JPH0581941B2 (ja)

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990107