JP3369227B2 - プロセッサ - Google Patents

プロセッサ

Info

Publication number
JP3369227B2
JP3369227B2 JP29852692A JP29852692A JP3369227B2 JP 3369227 B2 JP3369227 B2 JP 3369227B2 JP 29852692 A JP29852692 A JP 29852692A JP 29852692 A JP29852692 A JP 29852692A JP 3369227 B2 JP3369227 B2 JP 3369227B2
Authority
JP
Japan
Prior art keywords
bus
data
width
external
processor
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 - Fee Related
Application number
JP29852692A
Other languages
English (en)
Other versions
JPH06149723A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP29852692A priority Critical patent/JP3369227B2/ja
Priority to DE69327703T priority patent/DE69327703T2/de
Priority to EP93118142A priority patent/EP0597441B1/en
Publication of JPH06149723A publication Critical patent/JPH06149723A/ja
Priority to US08/456,618 priority patent/US5613078A/en
Application granted granted Critical
Publication of JP3369227B2 publication Critical patent/JP3369227B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • 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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1678Details of memory controller using bus width

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、外部メモリのデータ
幅に応じて、外部メモリへのアクセスの際に使用するデ
ータ幅を可変することができるプロセッサに関する。
【0002】
【従来の技術】取り扱うデータ幅が異なるマイクロプロ
セッサと外部メモリを使用してシステムを構築する場合
には、データ幅の相違を調整する必要が生じる。
【0003】以下に、例えばデータバス幅が32ビット
のマイクロプロセッサと、プログラム(命令)格納用の
8ビットのROMと、データ格納用の8ビットのRAM
を4つ用いて構成されたシステムを一例として、データ
幅調整の従来技術とその問題点について説明する。
【0004】まず、データ幅を調整する機能がマイクロ
プロセッサに備えられていない場合は、図16に示すよ
うに、MPU101の32ビットのデータバス102と
8ビットのROM103とをバス幅変換回路104を介
して接続し、ROM103から読出された8ビットの命
令を32ビット構成の命令に変換してMPU101に供
給するという手法がある。
【0005】また、バス幅変換回路104を使用しない
場合には、図17に示すようにROM103を4個使用
してデータバス102にそれぞれ接続し、データバス1
02のバス幅とROM103全体としての出力ビット幅
を32ビットに揃えるという手法がある。
【0006】図16に示す手法にあっては、バス幅を変
換するバス幅変換回路104が必要となり、図17に示
す手法にあっては、1個のROM103で十分にシステ
ムが構成できるにもかかわらず余分に3個のROMが必
要となる。このため、両手法ともに、構成が大型化する
とともにシステムのコストが上昇することになる。
【0007】一方、一部のマイクロプロセッサには、外
部からの信号によってデータバスのバス幅を半固定的に
変更できるものがある。このようなマイクロプロセッサ
を使用した場合には、図18に示すように、外部からの
信号によりデータバス105のバス幅を8ビットに設定
し、4個のRAM106をデータバス105に対して並
列接続するという手法がある。
【0008】しかしながら、このような手法にあって
は、8ビットのRAM106を4個使用しているにもか
かわらず、RAM106のデータ幅は8ビットとなり、
図16乃至図17に示した構成に比べて、データのビッ
ト幅が減少することになる。このため、システムの処理
能が低下し、性能の低下を招くことになる。
【0009】これに対して、上述したような不具合を解
消する機能を備えたマイクロプロセッサがある。この機
能は、ダイナミックバスサイジング機能と呼ばれ、バス
サイクル毎にそのバス幅を指定する信号をマイクロプロ
セッサに入力することにより、必要に応じてプロセッサ
が自動的にバスサイクルを繰り返し行う機能であり、モ
トローラ社製のマイクロプロセッサ「MC68020」
をはじめとする多くのプロセッサに採用されている。
【0010】このようなダイナミックバスサイジング機
能では、バスサイクル毎にバス幅を指定する信号が必要
となるため、それぞれのバスサイクルでアクセスされる
外部メモリのビット幅を認識する必要がある。このた
め、図19に示すように、ダイナミックバスサイジング
機能を有するMPU107のアドレスバス108に与え
られたアドレス信号をデコードして、アクセスされる外
部メモリを判別し、判別された外部メモリのデータ幅に
応じたバス幅指定信号(DSIZK#)を生成する回路
109がシステムの構築に必要不可欠となる。
【0011】このような回路109によって生成された
バス幅指定信号が、それぞれのバスサイクル毎にMPU
107に与えられるわけであるが、ダイナミックバスサ
イジング機能を備えたプロセッサを使用して構成された
図20に示すようなシステムにあっては、バス幅指定信
号は、MPU110から出力されるアドレス信号をメモ
リ111に与えるアドレスドライバ112と、アドレス
ドライバ112の出力をデコードしてメモリ111の選
択信号(CS)を生成するアドレスデコーダ113と、
アドレスデコーダ112の選択信号から選択されたメモ
リのビット幅に応じてバス幅指定信号を生成するバス幅
指定信号生成回路114とによって生成される。
【0012】したがって、バス幅指定信号が生成される
タイミングを示す図21のタイミングチャートに示すよ
うに、メモリ111のアクセスに許されるバスサイクル
の時間をtcyc 、クロック信号に同期してMPU110
から出力されるアドレス信号の遅延時間をta 、アドレ
ス信号のアドレスドライバ112による遅延時間を
b 、アドレスデコーダ113による遅延時間をtc
生成回路114による信号生成に必要な時間をtd 、バ
ス幅指定信号のセットアップ時間をte とすると、セッ
トアップ時間te は次式で示すようになる。
【0013】 tcyc −(ta +tb +tc +td )>te したがって、クロック信号すなわち動作周波数を高めて
バスサイクル時間を短縮しようとすると、上式から明ら
かなように、バス幅指定信号のセットアップ時間が短か
くなり、タイミングが厳しくなる。このため、バス幅指
定信号のセットアップ時間の余裕なくなり、誤動作が生
じるおそれがある。また、バスサイクル時間のより一層
の短縮が要求される場合には、バス幅指定信号の出力条
件を満足させることができなくなり、高速動作の障害と
なる。
【0014】また、上述したダイナミックバスサイジン
グ機能と類似した機能を有するマイクロプロセッサが、
特開平3−98145号公報に提案されている。
【0015】このマイクロプロセッサは、アクセスしよ
うとするデータのアドレス領域に応じてバス幅を動的に
変化させる機能を備えている。このようなマイクロプロ
セッサにあっても、バス幅を指定する信号の生成は、ダ
イナミックバスサイジング機能を有するプロセッサと同
様にアドレス信号のデコード結果に基づいており、この
アドレス信号のデコード結果と特定アドレスとの比較結
果の後にバス幅を指定する信号が生成されている。
【0016】このため、デコード動作ならびに比較動作
をプロセッサの内部で行う場合であっても、バス幅を指
定する信号を生成するまでに時間がかかり上述したと同
様の不具合を招くことになる。
【0017】
【発明が解決しようとする課題】以上説明したように、
データ幅の異なるプロセッサと外部メモリを用いて構築
されたシステムにおけるデータ幅を調整する従来の手法
にあっては、データ幅を調整するめの専用の構成を必要
としたり、外部メモリの使用が非効率的となり、構成の
大型化ならびにシステムコストの増加を招いていた。
【0018】また、データバス幅を外部からの信号にし
たがって半固定的に変更するプロセッサを用いてシステ
ムを構成した場合には、外部メモリの有効利用が図られ
ず、処理能力の低下を招いていた。
【0019】一方、ダイナミックバスサイジング機能又
はこれに類似する機能を備えたマイクロプロセッサを用
いてシステムを構成した場合には、動作周波数の向上に
ともなって動作タイミングに余裕がなくなり、高速動作
が困難になるという不具合を招いていた。
【0020】そこで、この発明は、上記に鑑みてなされ
たものであり、その目的とするところは、外部にデータ
幅の異なるメモリを接続した場合に、システムコストの
増加や処理能力の低下を招くことなく、データ幅の調整
が可能となり、かつ動作周波数の向上にともなう動作マ
ージンの減少を回避して、高速動作を達成し得るプロセ
ッサを提供することにある。
【0021】
【課題を解決するための手段】上記目的を達成するため
に、この発明は、命令フェッチ要求により外部メモリか
ら命令をフェッチし、データアクセス要求により外部メ
モリとの間でデータの転送を行い、フェッチした命令を
実行処理し、命令をフェッチする際に、命令をフェッチ
するアドレスがプロセッサから出力される前に、命令フ
ェッチのバスサイクルであることを示す第1のバスアク
セスタイプ信号を出力し、データをアクセスする際に、
データをアクセスするアドレスがう前記プロセッサから
出力される前に、データアクセスのバスサイクルである
ことを示す第2のバスアクセスタイプ信号を出力するプ
ロセッサコア部と、プロセッサと外部メモリとの間で転
送される情報の転送路となる外部データバスと、前記プ
ロセッサコア部に入出力される情報の転送路となる内部
データバスと、命令フェッチのバスサイクル時における
前記外部データバスのバス幅を指定する第1のバス幅指
定情報と、データアクセスのバスサイクル時における前
記外部データバスのバス幅を指定する第2のバス幅指定
情報を保持する記憶手段と、バスサイクル時に使用可能
となるバス幅の前記外部データバスと前記内部データバ
スとの接続を切り換えて、情報転送路を形成するバス切
換え手段と、前記プロセッサコア部から出力される第1
のバスアクセスタイプ信号と前記記憶手段に保持された
第1のバス幅指定情報に基づいて、前記プロセッサコア
部の命令フェッチ要求により前記外部データバスのバス
幅を指定し、前記プロセッサコア部から出力される第2
のバスアクセスタイプ信号と前記記憶手段に保持された
第2のバス幅指定情報に基づいて、前記プロセッサコア
部のデータアクセス要求により前記外部データバスのバ
ス幅を指定し、それぞれ指定されたバス幅で情報の転送
が行われるように、前記バス切換え手段の切換え動作を
制御するバス切換え制御手段と、リセット信号が有効の
場合は、外部から与えられる前記外部データバスのバス
幅を指定する情報を選択し、リセット信号が無効の場合
は、内部から与えられる前記外部データバスのバス幅を
指定する情報を選択し、選択した情報を前記記憶手段の
初期値として設定する選択手段とを有することを特徴と
する。
【0022】
【作用】上記構成において、この発明は、命令フェッチ
のバスサイクル又はデータアクセスのバスサイクルが開
始される前に、それぞれのバスサイクルにおける外部デ
ータバスのバス幅を設定し、設定したバス幅で情報の転
送を行なうようにしている。
【0023】
【実施例】以下、図面を用いてこの発明の実施例を説明
する。
【0024】図1はこの発明の一実施例に係るプロセッ
サの構成を示す図である。同図に示す実施例のプロセッ
サは、内部に設定されたバス幅にしたがって、命令のフ
ェッチとオペランドのアクセスとでそれぞれ別々にバス
幅を指定するようにしたものである。
【0025】図1において、32ビットのプロセッサ
(MPU)1は、MPU1の主要な機能を果たすMPU
コア部2と、バス幅を指定する情報が保持される制御レ
ジスタ3と、32ビット幅の外部データバス(D0〜D
31)6と32ビット幅の内部データバス(IBD0〜
IBD31)8のバス幅変換を制御するバスステート制
御回路4と、このバスステート制御回路4の制御の下に
バス幅を変換するバス切換え回路5とを主要な構成要素
として備え、例えば図2に示すように、プログラム(命
令)格納用の8ビットのROMと、データ格納用の8ビ
ットのRAMを4つ使用したシステムを構築する。
【0026】MPUコア部2は、32ビットのアドレス
信号とデータを取り扱い、図3に示すように、命令フェ
ッチユニット21 、命令デコードユニット22 ・実行ユ
ニット23 を備えている。命令フェッチユニット2
1 は、命令のフェッチを要求する際に、外部に接続され
たメモリへのアクセス要求信号となり、バスサイクルの
種類を示すバスアクセスタイプ(BAT(0))信号を
出力する。また、実行ユニット23 は命令を実行するに
あたってオペランドデータをアクセスする際に、上記と
同様に外部に接続されたメモリへのアクセス要求信号と
なり、バスサイクルの種類を示すバスアクセスタイプ
(BAT(1))信号を出力する。
【0027】したがって、BAT(0,1)信号が例え
ば“1,0”である場合は、これから実行しようとする
バスサイクルが命令フェッチのためのバスサイクルであ
り、一方、BAT(0,1)信号が例えば“0,1”で
ある場合には、これから実行しようとするバスサイクル
がデータアクセスのためのバスサイクルであることにな
る。すなわち、この2つのBAT(0,1)信号によっ
てバスサイクルの種類が判明することになる。
【0028】また、このBAT信号は、外部メモリをア
クセスする際に必要となるアドレス信号がMPU1から
出力される前にMPUコア部2から出力される。このた
め、バスサイクルの種類は、バスサイクルの開始時には
判明していることになる。
【0029】制御レジスタ3は、外部データバス6のう
ち実際にデータ転送に使用する外部データバス6のバス
幅を指定する情報を保持するレジスタであり、図4に示
すように、4ビットのフィールドから構成されている。
フィールドR0,R1は、オペランドアクセス時に使用
する外部データバス6のバス幅を指定するフィールドで
あり、フィールドR0,R1の値により8ビット、16
ビット、32ビットのバス幅の指定が可能となる。一
方、フィールドR2,R3は、命令フェッチ時に使用す
る外部データバス6のバス幅を指定するフィールドであ
り、フィールドR2,R3の値により8ビット,16ビ
ット、32ビットのバス幅の指定が可能となる。
【0030】この制御レジスタ3は、プロセッサ1の初
期化のためのリセット信号がセレクタ7に入力されてい
る時には、外部から与えられるバス幅指定信号がセレク
タ7によって選択されて入力される。一方、プロセッサ
1が通常動作を行っている時には、MPUコア部2から
内部データバス8を介して与えられるバス幅指定信号が
セレクタ7によって選択されて入力され、また、制御レ
ジスタ3の内容は内部データバス8を介してMPUコア
部2に与えられる。
【0031】このように、外部データバス6の実質的な
バス幅は、プロセッサ1の初期化の際には外部から与え
られるバス幅指定信号により初期値として設定され、以
後必要に応じてプログラムにより変更可能に設定され
る。
【0032】バスステート制御回路4は、図5に示すよ
うに、制御レジスタ3の内容(R0〜R3)とMPUコ
ア部2から与えられるバスアクセスタイプ(BAT)信
号を受けて、バス幅指定信号B8,B16,B32を生
成するバス幅指定信号生成回路11と、この生成回路1
1によって生成されたバス幅指定信号B8,B16,B
32とMPUコア部2から与えられる内部バスサイクル
開始信号IBBS及び外部バスサイクル終了信号DCを
受けて、バス切換え回路5の切換え動作を制御する切換
え制御信号S2,S4,S6,S8,S10と内部バス
サイクル終了信号IBDC及び外部バスサイクル開始信
号BSを生成するバスステート制御信号生成回路12と
から構成されている。
【0033】バス幅指定信号生成回路11は、例えば図
6に示すように、論理ゲートから構成され、表1に示す
ように、入出力の論理を実現している。
【0034】
【表1】 すなわち、BAT信号によってオペランドアクセスが設
定された場合の外部データバス6のバス幅は、制御レジ
スタR0,R1が“0,0”で8ビットとなり切換え制
御信号B2が“1”となり、R0,R1が“0,1”で
16ビットとなり信号B16が“1”、R0,R1が
“1,0”で32ビットとなり信号B32が“1”とな
る。
【0035】一方、BAT信号によって命令フェッチが
設定された場合の外部データバス6のバス幅は、R0,
R1が“0,0”で8ビットとなり信号B2が“1”と
なり、R0,R1が“0,1”で16ビットとなり信号
B16が“1”、R0,R1が“1,0”で32ビット
となり信号B32が“1”となる。
【0036】バスステート制御信号生成回路12は、図
7の状態遷移図に示すように、バス切換え回路5の切換
え動作を制御する切換え制御信号S2,S4,S6,S
8,S10を生成する。
【0037】図7において、それぞれの状態はクロック
信号の立ち上がりに同期して遷移し、状態S1はバスサ
イクルの行われていない状態であり、状態S2,S4,
S6,S8,S10は外部バスサイクル終了信号(D
C)がロウレベルにならない場合にはウェイト状態とな
り、現在の状態が維持される。
【0038】図7において、外部データバス6のバス幅
が、バスサイクルが開始される際に32ビットに設定さ
れて、バス幅指定信号B32が出力された場合に、内部
バスサイクルが開始されて(内部バスサイクル開始信
号、IBBS信号=ロウレベル)、外部バスサイクルが
開始されると(外部バスサイクル開始信号、BS信号=
ロウレベル)、状態S1から状態S2に遷移して、切換
え制御信号S2が出力され、32ビットの情報(オペラ
ンドデータ又は命令)が外部データバス6及び内部デー
タバス8を介して転送される。転送が終了すると(外部
バスサイクル終了信号、DC信号=ロウレベル)、状態
2から状態1に遷移する。
【0039】外部データバス6のバス幅が、バスサイク
ルが開始される際に16ビットに設定されて、バス幅指
定信号B16が出力された場合に、内部バスサイクル及
び外部バスサイクルが開始されると、状態1から状態2
に遷移して、切換え制御信号S2が出力され、16ビッ
トの情報が転送される。転送が終了すると(DC信号=
ロウレベル)、状態2から状態3へ遷移する。状態3に
遷移すると、再び外部バスサイクルが開始されて、状態
3から状態4へ遷移し、切換え信号S4が出力され、1
6ビットの情報が転送される。転送が終了すると、状態
4から状態1へ遷移し、これにより、32ビットの情報
が2回の外部バスサイクルで16ビットづつ転送され
る。
【0040】外部データバス6のバス幅が、バスサイク
ルが開始される際に8ビットに設定されて、バス幅指定
信号B8が出力された場合に、内部バスサイクル及び外
部バスサイクルが開始されると、状態1から状態2→状
態5→状態6→状態7→状態8→状態9→状態10へと
遷移し、状態2,6,8,10のそれぞれの状態で外部
バスサイクルが開始され、8ビットの情報がそれぞれ転
送される。したがって、32ビットの情報が4回の外部
バスサイクル(状態2,6,8,10)で8ビットづつ
転送される。
【0041】バスステート制御信号生成回路12におい
て、外部バスサイクル開始信号(BS信号)と、内部バ
スサイクル終了信号(IBDC信号)は、図8に示すよ
うに構成された論理ゲートにより生成される。
【0042】バス切換え回路5は、図9に示すように、
セレクタ13〜16と、セレクタ切換え信号生成回路1
7とから構成されており、データをラッチするメモリデ
ータレジスタ(MDR)9を介して内部データバス8に
接続されている。
【0043】セレクタ13〜16は、指定された外部デ
ータバス6のバス幅で情報が転送されるように、内部デ
ータバス8と外部データバス6とを8ビット単位で切換
え接続し、例えば図10乃至図13に示すように構成さ
れる。
【0044】セレクタ13は、バス幅が32ビット、1
6ビット、8ビットのいずれに指定された場合であって
も、外部データバスD0〜D7と内部データバスIBD
B0〜7とを、セレクタ切換え信号S2R,S2Wにし
たがってバッファ接続する。セレクタ13は、信号S2
Rが与えられると、外部メモリから読出された情報を外
部データバスD0〜D7から内部データバスIBDB0
〜7へバッファして転送し、信号S2Wが与えられる
と、MPUコア部2から読出された情報を内部データバ
スIBDB0〜7から外部データバスD0〜D7へバッ
ファして転送する。
【0045】なお、「R」が付記されたセレクタ切換え
信号がセレクタ13〜16に与えられた場合には、外部
メモリから読出された情報が外部データバス6から内部
データバス8にバッファ転送されてMPUコア部2に与
えられ,「W」が付記されたセレクタ切換え信号がセレ
クタ13〜16に与えられた場合には、MPUコア部2
から出力された情報が内部データバス8から外部データ
バス6にバッファ転送されて外部メモリに書込まれる。
【0046】セレクタ14は、外部データバス6のバス
幅が32ビットに指定された場合は、外部データバスD
8〜D15と内部データバスIBD8〜IBD15とを
バッファ接続し、外部データバス6のバス幅が8ビット
に指定された場合には、外部データバスD0〜D7と内
部データバスIBD8〜IBD15とをバッファ接続す
る。
【0047】セレクタ15は、バス幅が32ビットに指
定された場合は、外部データバスD16〜D23と内部
データバスIBD16〜IBD23をバッファ接続し、
バス幅が16ビットあるいは8ビットに指定された場合
には、外部データバスD0〜D7と内部データバスIB
D16〜IBD23をバッファ接続する。
【0048】セレクタ16は、バス幅が32ビットに指
定された場合は、外部データバスD24〜D31と内部
データバスIBD24〜IBD31とをバッファ接続
し、バス幅が16ビットに指定された場合は、外部デー
タバスD8〜D15と内部データバスIBD24〜IB
D31とをバッファ接続し、バス幅が8ビットに指定さ
れた場合には、外部データバスD0〜D8と内部データ
バスIBD24〜IBD31とをバッファ接続する。
【0049】セレクタ切換信号生成回路17は、図10
乃至図13に示すそれぞれのセレクタ13〜セレクタ1
6を切換え制御するセレクタ切換え制御信号S2R,S
2W,S4R,S4W,S6R,S6W,S8R,S8
W,S10R,S10Wを生成する回路であり、例えば
図14に示すように論理ゲートから構成される。
【0050】このように構成された本発明の一実施例に
あっては、図15に示すようなタイミングでバスサイク
ルが実行される。
【0051】まず、バスサイクルが開始される前に、M
PUコア部2の命令フェッチユニット21 又は実行ユニ
ット23 から命令フェッチ又はデータアクセスが要求さ
れて、バスアクセスタイプ信号(BAT信号)がMPU
コア部2からバスステート制御回路4のバス幅指定信号
生成回路11に与えられると、制御レジスタ3に設定さ
れたバス幅を指定する情報にしたがってバス幅指定信号
B8,B16,B32が生成される。
【0052】例えば、バス幅が32ビットに指定され
て、外部メモリから32ビットの情報(A〜D)をMP
U1に読込む場合は、図15に示すように、内部バスサ
イクルと外部バスサイクルがそれぞれIBBS信号、B
S信号がロウレベルになることによって開始されると、
状態1から状態2へ遷移した時に、外部メモリから外部
データバス6に読出された情報(A〜D)はバス切換え
回路5を介してバス幅が切換えられることなくメモリデ
ータレジスタ9にラッチされ、内部データバス8を介し
てMPUコア部2に与えられる。
【0053】次に、バス幅が16ビットに指定されて、
外部メモリから32ビットの情報E〜HをMPU1に読
込む場合は、図15に示すように、内部バスサイクル及
び外部バスサイクルが開始されると、まず、16ビット
の情報E,Fが、最初の外部バスサイクルで外部データ
バスD0〜D15及びバス切換え回路4を介してメモリ
データレジスタ9の下位16ビット側に与えられラッチ
される。これにより、最初の外部バスサイクルが終了
し、続いて、次のバスサイクルで情報G,Hが外部デー
タバスD0〜D15及びバス切換え回路4により切換え
られて、メモリデータレジスタ9の上位16ビット側に
ラッチされる。これにより、32ビットの情報E〜Hは
バスサイクルの開始から4クロック後にMPUコア部2
に与えられる。
【0054】一方、バス幅が8ビット幅に指定されて、
外部メモリから32ビットの情報をMPUコア部2に読
込む場合は、4回のバスサイクルにより外部データバス
6と内部データバス8とが順次切換えられて、情報が8
ビットづつ順次転送される。このように、本発明の一実
施例にあっては、MPU1と外部メモリとの情報の転送
において、そのバスサイクルが命令フェッチ又はデータ
アクセスであるかを、バスアクセスタイプ信号にしたが
ってバスサイクルが開始される前に把握して、バス幅を
指定するようにしているため、バスサイクルが開始され
る時にはバス幅が設定されていることになる。これによ
り、外部メモリをアクセスするためのアドレス信号によ
ってバス幅を指定する従来の手法に比べて、バス幅指定
信号のセットアップ時間に大幅に余裕を持たせることが
可能となる。したがって、動作周波数を高めた場合であ
っても、十分にバスサイクルを実行することができるよ
うになり、高速動作が要求されるシステムに極めて好適
なプロセッサを提供することができる。
【0055】なお、本発明は、上記実施例に限ることな
く、様々な設計的変更が可能である。
【0056】例えば、制御レジスタ3のフィールド構成
やプロセッサ1の内部回路の具体的な構成は、開示され
たものに限らず、制御レジスタ3のフィールド構成はオ
ペランドデータのアクセスであっても、読出しと書込み
とで分けるようにしてもよい。また、制御レジスタ3の
初期値は、リセット時に外部信号により設定する外に、
例えばオペランドのアクセスを32ビット、命令フェッ
チのアクセスを8ビットというように固定値に設定する
方法や、固定値に設定した後にリセットベクタ内で再設
定可能とするようにしてもよい。
【0057】一方、MPU1内に制御レジスタ3を設け
ることなく、外部信号により直接命令フェッチのデータ
転送幅とオペランドアクセスのデータ転送幅をそれぞれ
別々に指定するようにしてもよい。これは、制御レジス
タ3への入力信号(R0〜R3)に代えて、直接MPU
1の外部から指定することによって容易に実現すること
ができる。
【0058】
【発明の効果】以上説明したように、この発明によれ
ば、外部メモリのデータ幅に応じて外部データバスのバ
ス幅を、命令フェッチとデータアクセスとでダイナミッ
クに可変するようにしたので、バス幅変換のための専用
の構成が不要となり、外部データバスの非効率的な使用
による処理能力の低下を防止できる。
【0059】さらに、命令フェッチあるいはデータアク
セスが開始される前に外部データバス幅が設定されるよ
うにしているので、バスサイクル時間におけるバス幅設
定に必要な時間が不要となり、十分な動作マージンでバ
スサイクルを実行することができる。これにより、バス
サイクル時間の短縮が可能となり、高速動作を達成する
ことができる。
【図面の簡単な説明】
【図1】この発明の一実施例に係るプロセッサの構成を
示す図である。
【図2】図1に示すプロセッサを使用したシステムの構
成を示す図である。
【図3】図1に示すプロセッサにおけるプロセッサコア
部の構成を示す図である。
【図4】図1に示すプロセッサにおける制御レジスタの
構成を示す図である。
【図5】図1に示すプロセッサにおけるバスステート制
御回路の構成を示す図である。
【図6】図5に示すバスステート制御回路におけるバス
幅指定信号生成回路の構成を示す図である。
【図7】図5に示すバスステート制御回路におけるバス
ステート制御信号生成回路の状態遷移を示す図である。
【図8】図5に示すバスステート制御回路におけるバス
ステート制御信号生成回路の一部構成を示す図である。
【図9】図1に示すプロセッサにおけるバス切換え回路
の構成を示す図である。
【図10】図9に示すバス切換え回路におけるセレクタ
の構成を示す図である。
【図11】図9に示すバス切換え回路におけるセレクタ
の構成を示す図である。
【図12】図9に示すバス切換え回路におけるセレクタ
の構成を示す図である。
【図13】図9に示すバス切換え回路におけるセレクタ
の構成を示す図である。
【図14】図9に示すバス切換え回路におけるセレクタ
切換え信号生成回路の構成を示す図である。
【図15】図1に示すプロセッサにおけるリードバスサ
イクルのタイミングを示すタイミングチャートである。
【図16】データ幅が異なるプロセッサと外部メモリに
よって構築された従来のシステムの構成を示す図であ
る。
【図17】データ幅が異なるプロセッサと外部メモリに
よって構築された従来のシステムの構成を示す図であ
る。
【図18】データ幅が異なるプロセッサと外部メモリに
よって構築された従来のシステムの構成を示す図であ
る。
【図19】データ幅が異なるプロセッサと外部メモリに
よって構築された従来のシステムの構成を示す図であ
る。
【図20】従来のダイナミックサイジングを実施するた
めの構成を示す図である。
【図21】図20に示す構成におけるタイミングを示す
タイミングチャートである。
【符号の説明】
1 プロセッサ 2 MPUコア部 3 制御レジスタ 4 バスステート制御回路 5 バス切換え回路 6 外部データバス 7 セレクタ 8 内部データバス 9 メモリデータレジスタ
フロントページの続き (56)参考文献 特開 平4−162159(JP,A) 特開 平1−302443(JP,A) 特開 昭61−139866(JP,A) 特開 平3−98145(JP,A) 特開 昭62−173557(JP,A) 実開 平3−34149(JP,U) (58)調査した分野(Int.Cl.7,DB名) G06F 9/30 - 9/36 G06F 12/00 - 12/06 G06F 13/16 - 13/18 G06F 13/36 G06F 15/78

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 命令フェッチ要求により外部メモリから
    命令をフェッチし、データアクセス要求により外部メモ
    リとの間でデータの転送を行い、フェッチした命令を実
    行処理し、命令をフェッチする際に、命令をフェッチす
    るアドレスがプロセッサから出力される前に、命令フェ
    ッチのバスサイクルであることを示す第1のバスアクセ
    スタイプ信号を出力し、データをアクセスする際に、デ
    ータをアクセスするアドレスが前記プロセッサから出力
    される前に、データアクセスのバスサイクルであること
    を示す第2のバスアクセスタイプ信号を出力するプロセ
    ッサコア部と、 プロセッサと外部メモリとの間で転送される情報の転送
    路となる外部データバスと、 前記プロセッサコア部に入出力される情報の転送路とな
    る内部データバスと、 命令フェッチのバスサイクル時における前記外部データ
    バスのバス幅を指定する第1のバス幅指定情報と、デー
    タアクセスのバスサイクル時における前記外部データバ
    スのバス幅を指定する第2のバス幅指定情報を保持する
    記憶手段と、 バスサイクル時に使用可能となるバス幅の前記外部デー
    タバスと前記内部データバスとの接続を切り換えて、情
    報転送路を形成するバス切換え手段と、 前記プロセッサコア部から出力される第1のバスアクセ
    スタイプ信号と前記記憶手段に保持された第1のバス幅
    指定情報に基づいて、前記プロセッサコア部の命令フェ
    ッチ要求により前記外部データバスのバス幅を指定し、
    前記プロセッサコア部から出力される第2のバスアクセ
    スタイプ信号と前記記憶手段に保持された第2のバス幅
    指定情報に基づいて、前記プロセッサコア部のデータア
    クセス要求により前記外部データバスのバス幅を指定
    し、それぞれ指定されたバス幅で情報の転送が行われる
    ように、前記バス切換え手段の切換え動作を制御するバ
    ス切換え制御手段と、 リセット信号が有効の場合は、外部から与えられる前記
    外部データバスのバス幅を指定する情報を選択し、リセ
    ット信号が無効の場合は、内部から与えられる前記外部
    データバスのバス幅を指定する情報を選択し、選択した
    情報を前記記憶手段の初期値として設定する選択手段と
    を有することを特徴とするプロセッサ。
  2. 【請求項2】 前記記憶手段は、その保持内容がプログ
    ラムにより変更可能に設定されてなることを特徴とする
    請求項1記載のプロセッサ。
  3. 【請求項3】 前記記憶手段は、その保持内容がプロセ
    ッサの初期化後に再設定可能となることを特徴とする請
    求項1又は2記載のプロセッサ。
JP29852692A 1992-11-09 1992-11-09 プロセッサ Expired - Fee Related JP3369227B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP29852692A JP3369227B2 (ja) 1992-11-09 1992-11-09 プロセッサ
DE69327703T DE69327703T2 (de) 1992-11-09 1993-11-09 Mikroprozessor mit Busbreite-Wechselfunktion
EP93118142A EP0597441B1 (en) 1992-11-09 1993-11-09 Microprocessor having a bus-width change function
US08/456,618 US5613078A (en) 1992-11-09 1995-06-01 Microprocessor and microprocessor system with changeable effective bus width

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29852692A JP3369227B2 (ja) 1992-11-09 1992-11-09 プロセッサ

Publications (2)

Publication Number Publication Date
JPH06149723A JPH06149723A (ja) 1994-05-31
JP3369227B2 true JP3369227B2 (ja) 2003-01-20

Family

ID=17860871

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29852692A Expired - Fee Related JP3369227B2 (ja) 1992-11-09 1992-11-09 プロセッサ

Country Status (4)

Country Link
US (1) US5613078A (ja)
EP (1) EP0597441B1 (ja)
JP (1) JP3369227B2 (ja)
DE (1) DE69327703T2 (ja)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE59209600D1 (de) * 1992-03-27 1999-02-04 Siemens Ag Integrierter Mikroprozessor
US5742840A (en) 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
US7301541B2 (en) 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
US6643765B1 (en) 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
US5812798A (en) * 1996-01-26 1998-09-22 Motorola, Inc. Data processing system for accessing an external device and method therefore
JPH09231130A (ja) * 1996-02-26 1997-09-05 Mitsubishi Electric Corp マイクロコンピュータ
DE19636381C1 (de) * 1996-09-09 1998-03-12 Ibm Bus mit anforderungsabhängiger Anpassung der in beiden Richtungen zur Verfügung stehenden Bandbreite
US5911053A (en) * 1996-09-30 1999-06-08 Intel Corporation Method and apparatus for changing data transfer widths in a computer system
US6226736B1 (en) * 1997-03-10 2001-05-01 Philips Semiconductors, Inc. Microprocessor configuration arrangement for selecting an external bus width
US5919254A (en) * 1997-06-25 1999-07-06 Intel Corporation Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple processing system
US7272703B2 (en) * 1997-08-01 2007-09-18 Micron Technology, Inc. Program controlled embedded-DRAM-DSP architecture and methods
US6427179B1 (en) * 1997-10-01 2002-07-30 Globespanvirata, Inc. System and method for protocol conversion in a communications system
KR100265362B1 (ko) * 1997-12-30 2000-09-15 김영환 직병렬 방식을 이용한 마이크로프로세서의 데이터송수신 방법
US6298431B1 (en) * 1997-12-31 2001-10-02 Intel Corporation Banked shadowed register file
JPH11259238A (ja) * 1998-03-11 1999-09-24 Matsushita Electric Ind Co Ltd 信号処理装置
US6101567A (en) * 1998-06-03 2000-08-08 Lucent Technologies Inc. Parallel backplane physical layer interface with scalable data bandwidth
US6202116B1 (en) * 1998-06-17 2001-03-13 Advanced Micro Devices, Inc. Write only bus with whole and half bus mode operation
EP2241968B1 (en) 1998-08-24 2012-06-27 MicroUnity Systems Engineering, Inc. System with wide operand architecture, and method
US7932911B2 (en) 1998-08-24 2011-04-26 Microunity Systems Engineering, Inc. Processor for executing switch and translate instructions requiring wide operands
JP4933693B2 (ja) * 1998-08-24 2012-05-16 マイクロユニティ システムズ エンジニアリング インコーポレイテッド ワイド・オペランド・アーキテクチャを含むシステムおよび方法
US6611891B1 (en) * 1998-11-23 2003-08-26 Advanced Micro Devices, Inc. Computer resource configuration mechanism across a multi-pipe communication link
US6510472B1 (en) * 1999-09-23 2003-01-21 Intel Corporation Dual input lane reordering data buffer
US6609171B1 (en) * 1999-12-29 2003-08-19 Intel Corporation Quad pumped bus architecture and protocol
US6622194B1 (en) * 2000-08-28 2003-09-16 Intel Corporation Efficient use of multiple buses for a scalable and reliable high-bandwidth connection
TW507128B (en) * 2001-07-12 2002-10-21 Via Tech Inc Data memory controller supporting the data bus invert
US7051218B1 (en) * 2001-07-18 2006-05-23 Advanced Micro Devices, Inc. Message based power management
US7174467B1 (en) 2001-07-18 2007-02-06 Advanced Micro Devices, Inc. Message based power management in a multi-processor system
JP2003223412A (ja) * 2002-01-30 2003-08-08 Oki Electric Ind Co Ltd 半導体集積回路
DE10204344A1 (de) * 2002-02-01 2003-08-14 Systemonic Ag Konfigurierbares Bussystem
JP4198376B2 (ja) * 2002-04-02 2008-12-17 Necエレクトロニクス株式会社 バスシステム及びバスシステムを含む情報処理システム
US8832346B2 (en) * 2003-06-16 2014-09-09 Nvidia Corporation Data packing and unpacking engine
JP2005190092A (ja) * 2003-12-25 2005-07-14 Matsushita Electric Ind Co Ltd メモリアクセスコントロール回路
JP4489454B2 (ja) * 2004-02-16 2010-06-23 富士通マイクロエレクトロニクス株式会社 半導体集積回路
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7590797B2 (en) * 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
JP2005309229A (ja) * 2004-04-23 2005-11-04 Matsushita Electric Ind Co Ltd 情報処理装置
US7844767B2 (en) * 2004-05-21 2010-11-30 Intel Corporation Method for identifying bad lanes and exchanging width capabilities of two CSI agents connected across a link
WO2006013498A1 (en) * 2004-07-30 2006-02-09 Koninklijke Philips Electronics N.V. Data processing device adaptable to variable external memory size and endianess
US7392331B2 (en) * 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US7328299B2 (en) * 2004-11-23 2008-02-05 Atmel Corporation Interface for compressed data transfer between host system and parallel data processing system
JP4565090B2 (ja) * 2005-12-26 2010-10-20 タイヨーエレック株式会社 弾球遊技機
US7536490B2 (en) * 2006-07-20 2009-05-19 Via Technologies, Inc. Method for link bandwidth management
KR100805836B1 (ko) * 2006-07-26 2008-02-21 삼성전자주식회사 버스 폭 설정 장치, 디스플레이 장치 그리고 버스 폭 설정방법
US7624211B2 (en) * 2007-06-27 2009-11-24 Micron Technology, Inc. Method for bus width negotiation of data storage devices
US8587337B1 (en) * 2009-01-31 2013-11-19 Xilinx, Inc. Method and apparatus for capturing and synchronizing data
JP2010287150A (ja) * 2009-06-15 2010-12-24 Sanyo Electric Co Ltd データ転送回路
US9892068B2 (en) * 2012-12-06 2018-02-13 Rambus Inc. Local internal discovery and configuration of individually selected and jointly selected devices
US9990246B2 (en) 2013-03-15 2018-06-05 Intel Corporation Memory system
JP2015053095A (ja) * 2013-09-09 2015-03-19 ソニー株式会社 メモリ、メモリシステムおよびメモリの制御方法
US9785565B2 (en) 2014-06-30 2017-10-10 Microunity Systems Engineering, Inc. System and methods for expandably wide processor instructions
US10163508B2 (en) 2016-02-26 2018-12-25 Intel Corporation Supporting multiple memory types in a memory slot
US10459855B2 (en) 2016-07-01 2019-10-29 Intel Corporation Load reduced nonvolatile memory interface
US10489056B2 (en) * 2017-11-09 2019-11-26 Nvidia Corporation Queue manager for streaming multiprocessor systems
CN115221078A (zh) * 2021-04-14 2022-10-21 瑞昱半导体股份有限公司 数据传输方法与数据处理电路

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0172493B1 (en) * 1980-03-19 1990-11-14 Kabushiki Kaisha Toshiba Information processing system
KR900007564B1 (ko) * 1984-06-26 1990-10-15 모토로라 인코포레이티드 동적 버스를 갖는 데이터 처리기
JPS6226561A (ja) * 1985-07-26 1987-02-04 Toshiba Corp パ−ソナルコンピユ−タ
US5125084A (en) * 1988-05-26 1992-06-23 Ibm Corporation Control of pipelined operation in a microcomputer system employing dynamic bus sizing with 80386 processor and 82385 cache controller
JPH0398145A (ja) * 1989-09-11 1991-04-23 Hitachi Ltd マイクロプロセッサ
US5220651A (en) * 1989-10-11 1993-06-15 Micral, Inc. Cpu-bus controller for accomplishing transfer operations between a controller and devices coupled to an input/output bus
JPH03216776A (ja) * 1990-01-22 1991-09-24 Mitsubishi Electric Corp 集積回路装置及びそれにより構成されたマイクロプロセッサ
JPH0484253A (ja) * 1990-07-26 1992-03-17 Mitsubishi Electric Corp バス幅制御回路
US5191653A (en) * 1990-12-28 1993-03-02 Apple Computer, Inc. Io adapter for system and io buses having different protocols and speeds

Also Published As

Publication number Publication date
DE69327703D1 (de) 2000-03-02
US5613078A (en) 1997-03-18
EP0597441B1 (en) 2000-01-26
EP0597441A1 (en) 1994-05-18
JPH06149723A (ja) 1994-05-31
DE69327703T2 (de) 2000-06-15

Similar Documents

Publication Publication Date Title
JP3369227B2 (ja) プロセッサ
JPH0786870B2 (ja) コプロセツサのデータ転送制御方法およびその回路
JPH0395629A (ja) データ処理装置
JPH0528097A (ja) マイクロプロセツサ
JPH11272546A (ja) 可変長レジスタ装置
JP4865960B2 (ja) データ処理装置およびその制御方法
JP3342352B2 (ja) 表示用メモリ制御装置
JP3096576B2 (ja) メモリ制御回路とその回路を内蔵した集積回路素子
JP3593348B2 (ja) 集積回路
JPH11259417A (ja) バスアクセス方式およびバスアクセス制御装置
JP2601055B2 (ja) マイクロプログラム・シーケンサ
JP3242474B2 (ja) データ処理装置
JP3182796B2 (ja) 中央演算処理装置
US5524221A (en) Next instruction pointer calculation system for a microcomputer
JPH08263367A (ja) 集積回路
KR950003883B1 (ko) 메모리제어논리장치
JP2000172553A (ja) データ処理装置
JPH04291641A (ja) レジスタ装置
JP2001202326A (ja) ダイナミックバスサイジングにおける高速ブロック転送回路
JPH06180681A (ja) 中央処理装置
JPH04186431A (ja) データプロセッサ
JPH0228739A (ja) キャッシュメモリコントローラ
JP2003015866A (ja) プロセッサ
JPS59106048A (ja) マイクロプロセツサシステム
JPH10161927A (ja) ロードバッファ装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees