JPH0997211A - バス制御装置、及びバス制御装置を含む情報処理装置 - Google Patents
バス制御装置、及びバス制御装置を含む情報処理装置Info
- Publication number
- JPH0997211A JPH0997211A JP7252709A JP25270995A JPH0997211A JP H0997211 A JPH0997211 A JP H0997211A JP 7252709 A JP7252709 A JP 7252709A JP 25270995 A JP25270995 A JP 25270995A JP H0997211 A JPH0997211 A JP H0997211A
- Authority
- JP
- Japan
- Prior art keywords
- data
- byte
- arrangement order
- area
- address space
- 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
Links
Landscapes
- Memory System (AREA)
Abstract
(57)【要約】
【目的】 本来リトルエンディアンデータしか処理でき
ないマイコンで、応用によりビッグエンディアンデータ
の処理が必要である。しかもビッグエンディアンの処理
性能を、リトルエンディアンのそれと比べ劣化させたく
ない。 【構成】 エンディアンを識別するためのアドレス空間
判定器と、その判定の結果に従いデータのエンディアン
を切り替えるバイトアライナーを含む構成をなす。 【効果】 第1に、システムにおいて二つのエンディア
ンのデータ及び装置を両立する。第2に、データ長にか
かわらず、いずれのエンディアンのデータでも同じ速度
で高速に転送できる。第3に、エンディアン判定が容易
である。アドレス空間毎にエンディアンを固定して割り
当てているため、アドレス情報のみからエンディアンを
高速に識別できる。
ないマイコンで、応用によりビッグエンディアンデータ
の処理が必要である。しかもビッグエンディアンの処理
性能を、リトルエンディアンのそれと比べ劣化させたく
ない。 【構成】 エンディアンを識別するためのアドレス空間
判定器と、その判定の結果に従いデータのエンディアン
を切り替えるバイトアライナーを含む構成をなす。 【効果】 第1に、システムにおいて二つのエンディア
ンのデータ及び装置を両立する。第2に、データ長にか
かわらず、いずれのエンディアンのデータでも同じ速度
で高速に転送できる。第3に、エンディアン判定が容易
である。アドレス空間毎にエンディアンを固定して割り
当てているため、アドレス情報のみからエンディアンを
高速に識別できる。
Description
【0001】
【産業上の利用分野】本発明は、情報処理装置におい
て、二通りのバイト並び順形式で表現されたデータを同
等に処理できるバス制御装置に関する。
て、二通りのバイト並び順形式で表現されたデータを同
等に処理できるバス制御装置に関する。
【0002】
【従来の技術】いわゆるマイコン(マイクロコンピュー
タ,マイクロプロセッサ,マイクロコントローラを含
む)は処理するデータの形式により、上位バイトを高い
アドレスに置くバイト並び順形式(以下、リトルエンデ
ィアンと呼ぶ)と上位バイトを低いアドレスに置くバイ
ト並び順形式(以下、ビッグエンディアンと呼ぶ)の2
種類に大別できる。エンディアンにはビット単位のエン
ディアン(ビット極性)とバイト単位のエンディアン
(バイト極性)の2通りの意味があるが、本明細書中で
単にエンディアンと言えばバイト単位のエンディアンを
指す。
タ,マイクロプロセッサ,マイクロコントローラを含
む)は処理するデータの形式により、上位バイトを高い
アドレスに置くバイト並び順形式(以下、リトルエンデ
ィアンと呼ぶ)と上位バイトを低いアドレスに置くバイ
ト並び順形式(以下、ビッグエンディアンと呼ぶ)の2
種類に大別できる。エンディアンにはビット単位のエン
ディアン(ビット極性)とバイト単位のエンディアン
(バイト極性)の2通りの意味があるが、本明細書中で
単にエンディアンと言えばバイト単位のエンディアンを
指す。
【0003】マイコンは、暗黙にリトルまたはビッグい
ずれかのエンディアンで機能することを想定する。現在
利用されているほとんどの32ビット以上のマイコンは、
暗黙のエンディアンと異なる方のエンディアンデータも
処理できるように何らかのエンディアン切り替え機能を
持つ。主なエンディアン切り替え方式として、次のよう
な例が実現されている。
ずれかのエンディアンで機能することを想定する。現在
利用されているほとんどの32ビット以上のマイコンは、
暗黙のエンディアンと異なる方のエンディアンデータも
処理できるように何らかのエンディアン切り替え機能を
持つ。主なエンディアン切り替え方式として、次のよう
な例が実現されている。
【0004】・プログラム状態語(PSW)中のモードビッ
トへ書き込む方法 ・外部制御端子(信号)の値を切替える方法 ・アドレス空間を判定する方法 また、主なバイト並べ換え方式として、次のような例が
実現されている。
トへ書き込む方法 ・外部制御端子(信号)の値を切替える方法 ・アドレス空間を判定する方法 また、主なバイト並べ換え方式として、次のような例が
実現されている。
【0005】・バイト並べ換え命令によりソフトウェア
で交換する方法 ・アドレスの下位ビットを反転させる方法 ・バイトアライナーで並べ換える方法 従来例のバス制御装置を含むシステムの構成を説明す
る。図9,図10,図11は、それぞれ第1,2,3従
来例のバス制御装置を含むシステム構成図を示す。従来
例は必ずしも32ビットのマイコンではないが、以下では
32ビットマイコンに統一して説明する。同図において、
32ビットマイコン901,1001,1101は、シス
テム全体を制御する。バス制御装置902,1002,
1102は、マイコンと外部バスとのインターフェイス
である。CPUコア903,1003,1103は、マイ
コン901,1001,1101の核として汎用的なプ
ログラム処理を行う。これらは、リトルエンディアンデ
ータのみを処理できるとする。内蔵命令メモリ904,
1004,1104は、CPUコア903,1003,1
103が処理する命令を格納する。内蔵データRAM90
5,1005,1105は、CPUコア903,100
3,1103から高速にアクセスできる作業用のデータ
を格納する。DMAコントローラ(DMAC)906,100
6,1106は、CPUコア903,1003,1103
と独立にDMA処理を制御する。32ビットの外部アドレス
バス907,1007,1107は、アドレスデータを
転送する。32ビットの外部データバス908,100
8,1108は、1バイトから4バイトのデータを転送
する。ビッグエンディアン入出力装置909,100
9,1109は、インターフェイスがビッグエンディア
ン形式である周辺機器である。これらは、外部メモリ空
間にアドレスを割り当てられ、CPUコア903,100
3,1103から外部メモリと同様にアクセスできる。
特にビッグエンディアン入出力装置909は、外部メモ
リ空間のビッグエンディアン領域に置かれる。外部メモ
リ910,1010,1110は、通常DRAMなどであ
る。バイトアライナー911,1011,1111は、
データのバイト順を入れ替える。バイトアライナー91
1,1011は、リトルエンディアンのみに対応するデ
ータ転送パスを持つ。バイトアライナー1111は、両
エンディアンに対応するデータ転送パスを持ち、データ
のエンディアンを他方のエンディアンに変換できる。ア
ドレス空間判定器912は、アドレスの一部のビットを
見てアドレス空間を判定し、更に他のビットを見ていず
れのエンディアン領域をアクセスするかを判定する。ア
ドレス下位ビット反転器913,1013は、ビッグエ
ンディアン空間をアクセスする場合アドレスの下位2ビ
ットを反転させる。
で交換する方法 ・アドレスの下位ビットを反転させる方法 ・バイトアライナーで並べ換える方法 従来例のバス制御装置を含むシステムの構成を説明す
る。図9,図10,図11は、それぞれ第1,2,3従
来例のバス制御装置を含むシステム構成図を示す。従来
例は必ずしも32ビットのマイコンではないが、以下では
32ビットマイコンに統一して説明する。同図において、
32ビットマイコン901,1001,1101は、シス
テム全体を制御する。バス制御装置902,1002,
1102は、マイコンと外部バスとのインターフェイス
である。CPUコア903,1003,1103は、マイ
コン901,1001,1101の核として汎用的なプ
ログラム処理を行う。これらは、リトルエンディアンデ
ータのみを処理できるとする。内蔵命令メモリ904,
1004,1104は、CPUコア903,1003,1
103が処理する命令を格納する。内蔵データRAM90
5,1005,1105は、CPUコア903,100
3,1103から高速にアクセスできる作業用のデータ
を格納する。DMAコントローラ(DMAC)906,100
6,1106は、CPUコア903,1003,1103
と独立にDMA処理を制御する。32ビットの外部アドレス
バス907,1007,1107は、アドレスデータを
転送する。32ビットの外部データバス908,100
8,1108は、1バイトから4バイトのデータを転送
する。ビッグエンディアン入出力装置909,100
9,1109は、インターフェイスがビッグエンディア
ン形式である周辺機器である。これらは、外部メモリ空
間にアドレスを割り当てられ、CPUコア903,100
3,1103から外部メモリと同様にアクセスできる。
特にビッグエンディアン入出力装置909は、外部メモ
リ空間のビッグエンディアン領域に置かれる。外部メモ
リ910,1010,1110は、通常DRAMなどであ
る。バイトアライナー911,1011,1111は、
データのバイト順を入れ替える。バイトアライナー91
1,1011は、リトルエンディアンのみに対応するデ
ータ転送パスを持つ。バイトアライナー1111は、両
エンディアンに対応するデータ転送パスを持ち、データ
のエンディアンを他方のエンディアンに変換できる。ア
ドレス空間判定器912は、アドレスの一部のビットを
見てアドレス空間を判定し、更に他のビットを見ていず
れのエンディアン領域をアクセスするかを判定する。ア
ドレス下位ビット反転器913,1013は、ビッグエ
ンディアン空間をアクセスする場合アドレスの下位2ビ
ットを反転させる。
【0006】外部のビッグエンディアン入出力装置また
は外部メモリにCPUコア903,1003,1103が
アクセスする場合について、三つの従来例のバス制御装
置を含むシステムの動作を説明する。 (1)第1従来例 ・アドレスを見て、アドレス空間判定器912でアクセ
スするデータのエンディアンを判定する。 ・ビッグエンディアン領域と判定したら、アドレス下位
ビット反転器913で外部アドレス出力の下位2ビット
を反転する。さもなければ、反転しない。 ・CPUコア903、あるいはDMAC906は、バイト単位
で外部空間とデータを入出力する。 (2)第2従来例 ・リセット後に、CPUコア1003中のPSW中のモードビ
ットにソフトウェアでエンディアンモードを書き込む。 ・ビッグエンディアンモードならば、アドレス下位ビッ
ト反転器1013で外部アドレス出力の下位2ビットを
反転する。さもなければ、反転しない。 ・CPUコア1003、あるいはDMAC1006は、バイト
単位で外部空間とデータを入出力する。 (3)第3従来例 ・リセット後に、CPUコア1103中のPSW中のモードビ
ットにソフトウェアでエンディアンモードを書き込む。 ・バイトアライナー1111は、エンディアンモードで
指定されたエンディアンに対応する転送パスを選択し、
エンディアンを変換しながらデータを入出力する。
は外部メモリにCPUコア903,1003,1103が
アクセスする場合について、三つの従来例のバス制御装
置を含むシステムの動作を説明する。 (1)第1従来例 ・アドレスを見て、アドレス空間判定器912でアクセ
スするデータのエンディアンを判定する。 ・ビッグエンディアン領域と判定したら、アドレス下位
ビット反転器913で外部アドレス出力の下位2ビット
を反転する。さもなければ、反転しない。 ・CPUコア903、あるいはDMAC906は、バイト単位
で外部空間とデータを入出力する。 (2)第2従来例 ・リセット後に、CPUコア1003中のPSW中のモードビ
ットにソフトウェアでエンディアンモードを書き込む。 ・ビッグエンディアンモードならば、アドレス下位ビッ
ト反転器1013で外部アドレス出力の下位2ビットを
反転する。さもなければ、反転しない。 ・CPUコア1003、あるいはDMAC1006は、バイト
単位で外部空間とデータを入出力する。 (3)第3従来例 ・リセット後に、CPUコア1103中のPSW中のモードビ
ットにソフトウェアでエンディアンモードを書き込む。 ・バイトアライナー1111は、エンディアンモードで
指定されたエンディアンに対応する転送パスを選択し、
エンディアンを変換しながらデータを入出力する。
【0007】ビッグエンディアン入出力装置909,1
009,1109として、例えばCD-ROMドライブなどが
具体的に挙げられる。CD-ROMドライブでは、媒体のCD-R
OMのフォーマットがビッグエンディアンとして規定され
ている。逆にリトルエンディアン入出力装置としては、
インテル社のX86系マイクロプロセッサを使用するパソ
コンや、それを組み込んだ周辺機器が挙げられる。この
ように、周辺機器毎にエンディアンがばらばらであるた
め、一つのシステム中で異なるエンディアンの装置が混
在することがある。エンディアンにかかわらず、システ
ム中の両エンディアンデータをひとつのマイコンで同時
に処理することが求められている。
009,1109として、例えばCD-ROMドライブなどが
具体的に挙げられる。CD-ROMドライブでは、媒体のCD-R
OMのフォーマットがビッグエンディアンとして規定され
ている。逆にリトルエンディアン入出力装置としては、
インテル社のX86系マイクロプロセッサを使用するパソ
コンや、それを組み込んだ周辺機器が挙げられる。この
ように、周辺機器毎にエンディアンがばらばらであるた
め、一つのシステム中で異なるエンディアンの装置が混
在することがある。エンディアンにかかわらず、システ
ム中の両エンディアンデータをひとつのマイコンで同時
に処理することが求められている。
【0008】
【発明が解決しようとする課題】第1と第2従来例で
は、ビッグエンディアンデータの転送の場合、1バイ
ト、2バイト、4バイトいずれのデータでもバイト単位に
転送せねばならないので転送速度が遅い。また、反転さ
れるアドレス下位2ビットの出力タイミングが遅れる。
第2と第3従来例では、一つのシステム中で二つのエン
ディアンが両立しないため両エンディアンのデータを同
時に処理できないし、データのエンディアンを変換する
こともできない。実際には、リセット直後にしかエンデ
ィアンモードを変更できない仕様としているマイコンが
多い。
は、ビッグエンディアンデータの転送の場合、1バイ
ト、2バイト、4バイトいずれのデータでもバイト単位に
転送せねばならないので転送速度が遅い。また、反転さ
れるアドレス下位2ビットの出力タイミングが遅れる。
第2と第3従来例では、一つのシステム中で二つのエン
ディアンが両立しないため両エンディアンのデータを同
時に処理できないし、データのエンディアンを変換する
こともできない。実際には、リセット直後にしかエンデ
ィアンモードを変更できない仕様としているマイコンが
多い。
【0009】本発明はかかる点に鑑み、本発明は一つの
システム中で二つのエンディアンが両立し、しかも異な
るエンディアンのデータを処理する場合でも転送速度を
落とさない新規のバス制御装置を提供することを目的と
する。
システム中で二つのエンディアンが両立し、しかも異な
るエンディアンのデータを処理する場合でも転送速度を
落とさない新規のバス制御装置を提供することを目的と
する。
【0010】
【課題を解決するための手段】上記の課題を解決するた
め、本発明のバス制御装置は、アドレスの上位ビットを
見てアクセスするデータ領域がリトルとビッグいずれの
エンディアン領域にあるかを識別するアドレス空間判定
手段と、データ転送時に前記アドレス空間判定手段にお
いて外部データアドレス空間のリトルエンディアン領域
に対しアクセスすると判定した場合、リトルエンディア
ンのバイト並び順を保存するパスを通し、一方外部デー
タアドレス空間のビッグエンディアン領域に対しアクセ
スすると判定した場合、内部のリトルエンディアン形式
と外部のビッグエンディアン形式との間でバイト順を並
べ替えて互いに変換するパスを通すバイト並べ替え手段
を備える。
め、本発明のバス制御装置は、アドレスの上位ビットを
見てアクセスするデータ領域がリトルとビッグいずれの
エンディアン領域にあるかを識別するアドレス空間判定
手段と、データ転送時に前記アドレス空間判定手段にお
いて外部データアドレス空間のリトルエンディアン領域
に対しアクセスすると判定した場合、リトルエンディア
ンのバイト並び順を保存するパスを通し、一方外部デー
タアドレス空間のビッグエンディアン領域に対しアクセ
スすると判定した場合、内部のリトルエンディアン形式
と外部のビッグエンディアン形式との間でバイト順を並
べ替えて互いに変換するパスを通すバイト並べ替え手段
を備える。
【0011】
【作用】本発明のバス制御装置は前記の構成により、内
部においてデータをリトルエンディアン形式で処理し、
外部データアドレス空間をリトルエンディアン形式でデ
ータを格納するリトルエンディアン領域とビッグエンデ
ィアン形式でデータを格納するビッグエンディアン領域
とに分け、リトルエンディアンのデータや外部入出力装
置は、システム中のリトルエンディアン領域にあらかじ
め割り当て、ビッグエンディアンのデータや外部入出力
装置は、システム中のビッグエンディアン領域にあらか
じめ割り当てる。
部においてデータをリトルエンディアン形式で処理し、
外部データアドレス空間をリトルエンディアン形式でデ
ータを格納するリトルエンディアン領域とビッグエンデ
ィアン形式でデータを格納するビッグエンディアン領域
とに分け、リトルエンディアンのデータや外部入出力装
置は、システム中のリトルエンディアン領域にあらかじ
め割り当て、ビッグエンディアンのデータや外部入出力
装置は、システム中のビッグエンディアン領域にあらか
じめ割り当てる。
【0012】外部にデータアクセスする場合、アドレス
空間判定手段でデータアドレスの上位ビットに基づきど
のデータ空間にあるかを識別する。更に、データアドレ
ス中の他の1ビットに基づきいずれのエンディアンのデ
ータであるかを識別する。
空間判定手段でデータアドレスの上位ビットに基づきど
のデータ空間にあるかを識別する。更に、データアドレ
ス中の他の1ビットに基づきいずれのエンディアンのデ
ータであるかを識別する。
【0013】リトルエンディアンデータをアクセスする
場合、バイトアライナーでデータ長に応じて通常の整列
(アラインメント)処理を施した後、入出力する。ビッ
グエンディアンデータをロードする場合、バイトアライ
ナーでデータ長に応じて通常のアラインメント処理を施
すと同時に、データのバイト順をリトルエンディアンの
順序に並べ替え、リトルエンディアンデータに変換して
入力する。内部のリトルエンディアンデータをビッグエ
ンディアン領域にストアする場合、バイトアライナーで
データ長に応じて通常のアラインメント処理を施すと同
時に、データのバイト順をビッグエンディアンの順序に
並べ替え、ビッグエンディアンデータに変換して出力す
る。
場合、バイトアライナーでデータ長に応じて通常の整列
(アラインメント)処理を施した後、入出力する。ビッ
グエンディアンデータをロードする場合、バイトアライ
ナーでデータ長に応じて通常のアラインメント処理を施
すと同時に、データのバイト順をリトルエンディアンの
順序に並べ替え、リトルエンディアンデータに変換して
入力する。内部のリトルエンディアンデータをビッグエ
ンディアン領域にストアする場合、バイトアライナーで
データ長に応じて通常のアラインメント処理を施すと同
時に、データのバイト順をビッグエンディアンの順序に
並べ替え、ビッグエンディアンデータに変換して出力す
る。
【0014】
【実施例】以下の説明中で、右側に表示されるバイトは
左側のバイトより下位である。また、ビット単位の並び
はリトルエンディアンであるとする。メモリ上にあるデ
ータは、その語長境界にアラインメントされたアドレス
に置かれるものとする。本実施例のバス制御装置を含む
システムは、外部32または16または8ビットバスをサポ
ートするものとする。
左側のバイトより下位である。また、ビット単位の並び
はリトルエンディアンであるとする。メモリ上にあるデ
ータは、その語長境界にアラインメントされたアドレス
に置かれるものとする。本実施例のバス制御装置を含む
システムは、外部32または16または8ビットバスをサポ
ートするものとする。
【0015】まず、バイト極性に関連するメモリのアド
レシングとバスインターフェイスについて説明する。4
バイトのデータLを次のように1バイトのa,b,c,dの並び
で表現する。 L = (a b c d) ここでaが最上位バイト、dが最下位バイトである。外部
データバス幅が8ビットである場合、リトルエンディア
ンでは、メモリにLは図8(a)のように格納される。
ビッグエンディアンでは、メモリにLは図8(b)のよ
うに格納される。外部データバス幅が16ビット及び32ビ
ットである場合、リトルエンディアンではメモリにLは
それぞれ図8の(c)と(d)のように格納される。図
中、左側のバイトが外部データバスの上位バイトに接続
されるとする。ビッグエンディアンでは、外部メモリと
システムバスとの物理的な接続方式の違いを反映して、
Lを格納するメモリモデルにいくつかの形式が考えられ
る。ここでは外部データバス幅が16ビット及び32ビット
である場合、Lは物理的にメモリにそれぞれ図8の
(e)と(f)のように格納されるものとする。つま
り、ビッグエンディアン入出力装置の高位側の(低いア
ドレスの)バイトが、16または32ビットのシステムバス
の高位側の(リトルエンディアンにおける高いアドレス
の)バイトに対応するように接続されるものとする。
レシングとバスインターフェイスについて説明する。4
バイトのデータLを次のように1バイトのa,b,c,dの並び
で表現する。 L = (a b c d) ここでaが最上位バイト、dが最下位バイトである。外部
データバス幅が8ビットである場合、リトルエンディア
ンでは、メモリにLは図8(a)のように格納される。
ビッグエンディアンでは、メモリにLは図8(b)のよ
うに格納される。外部データバス幅が16ビット及び32ビ
ットである場合、リトルエンディアンではメモリにLは
それぞれ図8の(c)と(d)のように格納される。図
中、左側のバイトが外部データバスの上位バイトに接続
されるとする。ビッグエンディアンでは、外部メモリと
システムバスとの物理的な接続方式の違いを反映して、
Lを格納するメモリモデルにいくつかの形式が考えられ
る。ここでは外部データバス幅が16ビット及び32ビット
である場合、Lは物理的にメモリにそれぞれ図8の
(e)と(f)のように格納されるものとする。つま
り、ビッグエンディアン入出力装置の高位側の(低いア
ドレスの)バイトが、16または32ビットのシステムバス
の高位側の(リトルエンディアンにおける高いアドレス
の)バイトに対応するように接続されるものとする。
【0016】本実施例のシステム構成を説明する。図1
は、実施例のバス制御装置を含むシステム構成図を示
す。同図において、101から112は、従来例の対応
する構成要素と同等の役割を持つ。CPUコア103はリ
トルエンディアンデータのみを処理できるように設計さ
れているものとする。
は、実施例のバス制御装置を含むシステム構成図を示
す。同図において、101から112は、従来例の対応
する構成要素と同等の役割を持つ。CPUコア103はリ
トルエンディアンデータのみを処理できるように設計さ
れているものとする。
【0017】本実施例のシステムにおいて、図7に示す
ように、32ビットのアドレスマップの内、外部空間に割
り当てる領域を二つのエンディアンデータ用に二分す
る。図7(a)と図7(b)は、それぞれ32ビットマイ
コン101が命令メモリを内蔵する動作モード(メモリ
拡張モード)と、内蔵しない動作モード(プロセッサモ
ード)におけるアドレスマップの一例である。外部空間
をアクセスする際、アドレス空間判定器112は32ビッ
トアドレスA31〜A0の上位3ビットA31〜A29を見て、いず
れのエンディアンの領域にアクセスしているかをアクセ
スの度に判定する。具体的には、A31とA30を見て内部ま
たは外部メモリのいずれにアクセスするかを判定し、外
部メモリ空間へのアクセスの場合、更にA29を見て、ビ
ッグあるいはリトルエンディアンいずれの領域にアクセ
スするかを判定する。但し、同図に示すように内部メモ
リ空間と命令メモリ空間と外部I/O空間は、リトルエン
ディアンデータのみを格納するものとする。従ってアド
レス(A31,A30,..,A0)にアクセスする場合、そのアドレ
スがビッグエンディアン領域にあることを示す論理BER
は、 BER=EXT・(A31・A30・A29)+PROC・(A31・A30・A29+A31
・A30・A29) である。ここで、EXTとPROCはそれぞれメモリ拡張モー
ドとプロセッサモードを示す論理であり、変数の上線は
論理反転を表わす。BERが真ならばビッグエンディアン
領域と、偽ならばリトルエンディアン領域と判断する。
ように、32ビットのアドレスマップの内、外部空間に割
り当てる領域を二つのエンディアンデータ用に二分す
る。図7(a)と図7(b)は、それぞれ32ビットマイ
コン101が命令メモリを内蔵する動作モード(メモリ
拡張モード)と、内蔵しない動作モード(プロセッサモ
ード)におけるアドレスマップの一例である。外部空間
をアクセスする際、アドレス空間判定器112は32ビッ
トアドレスA31〜A0の上位3ビットA31〜A29を見て、いず
れのエンディアンの領域にアクセスしているかをアクセ
スの度に判定する。具体的には、A31とA30を見て内部ま
たは外部メモリのいずれにアクセスするかを判定し、外
部メモリ空間へのアクセスの場合、更にA29を見て、ビ
ッグあるいはリトルエンディアンいずれの領域にアクセ
スするかを判定する。但し、同図に示すように内部メモ
リ空間と命令メモリ空間と外部I/O空間は、リトルエン
ディアンデータのみを格納するものとする。従ってアド
レス(A31,A30,..,A0)にアクセスする場合、そのアドレ
スがビッグエンディアン領域にあることを示す論理BER
は、 BER=EXT・(A31・A30・A29)+PROC・(A31・A30・A29+A31
・A30・A29) である。ここで、EXTとPROCはそれぞれメモリ拡張モー
ドとプロセッサモードを示す論理であり、変数の上線は
論理反転を表わす。BERが真ならばビッグエンディアン
領域と、偽ならばリトルエンディアン領域と判断する。
【0018】エンディアンに関する情報はバイトアライ
ナー111に伝えられる。バイトアライナー111は、
外部データバス幅,エンディアン,転送データの長さの
三つの情報に基づき、転送に必要なパスを選択すること
によりバイト順を並べ変える。図2〜図4にこれら三つ
の情報と選択されるバイトアライナー111のバイト並
べ替えパスとの関係を示す。同図において、BCBUSはCPU
コア103との間を接続する内部バスであり、EXBUSは
外部データバス108との間を接続する内部バスであ
る。矢印付き実線で示される一本のパスの幅は、1バイ
ト即ち8ビットである。外部データバス幅が8,16,32ビ
ットである場合、それぞれ図2,図3,図4に示され
る。各々について、外部のデータがリトル,ビッグエン
ディアンである場合、それぞれ(a),(b)に示され
る。更に各々について、転送するデータ長が4,2,1バ
イトである場合に必要なパスが示される。図2〜図4の
中で、転送にかかるサイクル数と、何番目のサイクルに
どのパスを通るかに関し、丸で囲んだ数字で示す。本実
施例では、転送路が転送するデータ幅より狭い場合、常
に低いアドレスにあるバイトから先に転送するものとす
る。ここで付した数字は、転送するデータが4バイト境
界アドレスに整列されている場合に対応する。丸で囲ん
だ数字を付されていないパスは、4バイト境界に整列さ
れていない場合に使われる。
ナー111に伝えられる。バイトアライナー111は、
外部データバス幅,エンディアン,転送データの長さの
三つの情報に基づき、転送に必要なパスを選択すること
によりバイト順を並べ変える。図2〜図4にこれら三つ
の情報と選択されるバイトアライナー111のバイト並
べ替えパスとの関係を示す。同図において、BCBUSはCPU
コア103との間を接続する内部バスであり、EXBUSは
外部データバス108との間を接続する内部バスであ
る。矢印付き実線で示される一本のパスの幅は、1バイ
ト即ち8ビットである。外部データバス幅が8,16,32ビ
ットである場合、それぞれ図2,図3,図4に示され
る。各々について、外部のデータがリトル,ビッグエン
ディアンである場合、それぞれ(a),(b)に示され
る。更に各々について、転送するデータ長が4,2,1バ
イトである場合に必要なパスが示される。図2〜図4の
中で、転送にかかるサイクル数と、何番目のサイクルに
どのパスを通るかに関し、丸で囲んだ数字で示す。本実
施例では、転送路が転送するデータ幅より狭い場合、常
に低いアドレスにあるバイトから先に転送するものとす
る。ここで付した数字は、転送するデータが4バイト境
界アドレスに整列されている場合に対応する。丸で囲ん
だ数字を付されていないパスは、4バイト境界に整列さ
れていない場合に使われる。
【0019】図5に、図2〜図4に示されたアライナー
パスを外部バス幅毎にまとめた。図5(a),(b),
(c)は、それぞれ図2,図3,図4をまとめたもので
ある。図5(d)はそれらをすべてまとめ、最終的に本
実施例のバイトアライナー111に必要なすべてのパス
を示す。(表1)に、外部データバスサイズとサポート
するエンディアン毎に、本実施例において必要となるバ
イトアライナー111の転送パスの本数を掲げる。
パスを外部バス幅毎にまとめた。図5(a),(b),
(c)は、それぞれ図2,図3,図4をまとめたもので
ある。図5(d)はそれらをすべてまとめ、最終的に本
実施例のバイトアライナー111に必要なすべてのパス
を示す。(表1)に、外部データバスサイズとサポート
するエンディアン毎に、本実施例において必要となるバ
イトアライナー111の転送パスの本数を掲げる。
【0020】
【表1】
【0021】CPUコア103内部には別のバイトアライ
ナーが設けられる。このバイトアライナーは、8ビット
と16ビットのデータアクセス時に内部32ビットのデータ
パスとの間で整合をとる働きをする。このバイトアライ
ナーの動作は、エンディアンと外部データバスサイズに
依存しない。データをロードする場合、データの長さが
8ビットないし16ビットであれば、データを32ビット幅
の右詰めの位置に配置する。データをストアする場合、
データの長さが8ビットないし16ビットであれば、内部
レジスタ内で右詰めされたデータをアドレスに従って32
ビット幅内の適当な位置に配置する。CPUコア103内
部のバイトアライナーのバイト並べ替え操作用のパス構
成を(図6)に示す。データ長が4,2,1バイトである
場合、それぞれ(図6)の(a),(b),(c)にバ
イトアライナーのパスを示す。(図6)(d)にそれら
をまとめ、CPUコア103内部のバイトアライナーに必
要なすべてのパスを示す。CPUコア103内部のバイト
アライナーでは、8本の8ビットパスが必要である。
ナーが設けられる。このバイトアライナーは、8ビット
と16ビットのデータアクセス時に内部32ビットのデータ
パスとの間で整合をとる働きをする。このバイトアライ
ナーの動作は、エンディアンと外部データバスサイズに
依存しない。データをロードする場合、データの長さが
8ビットないし16ビットであれば、データを32ビット幅
の右詰めの位置に配置する。データをストアする場合、
データの長さが8ビットないし16ビットであれば、内部
レジスタ内で右詰めされたデータをアドレスに従って32
ビット幅内の適当な位置に配置する。CPUコア103内
部のバイトアライナーのバイト並べ替え操作用のパス構
成を(図6)に示す。データ長が4,2,1バイトである
場合、それぞれ(図6)の(a),(b),(c)にバ
イトアライナーのパスを示す。(図6)(d)にそれら
をまとめ、CPUコア103内部のバイトアライナーに必
要なすべてのパスを示す。CPUコア103内部のバイト
アライナーでは、8本の8ビットパスが必要である。
【0022】本実施例の動作を以下に説明する。本実施
例は、CPUコア103内部のレジスタと外部との間でリ
トルまたはビッグエンディアンデータを転送することが
できる。また、外部のビッグエンディアンデータをCPU
コア103内部のレジスタに転送した後に、外部のリト
ルエンディアン領域に転送することにより、ビッグエン
ディアンデータをリトルエンディアンデータに変換でき
る。逆も同様である。DMAの場合でも同様のデータ処理
が可能である。以下、(表2)に示すようにデータ転送
を場合分けし、それぞれについて動作の流れを記述す
る。
例は、CPUコア103内部のレジスタと外部との間でリ
トルまたはビッグエンディアンデータを転送することが
できる。また、外部のビッグエンディアンデータをCPU
コア103内部のレジスタに転送した後に、外部のリト
ルエンディアン領域に転送することにより、ビッグエン
ディアンデータをリトルエンディアンデータに変換でき
る。逆も同様である。DMAの場合でも同様のデータ処理
が可能である。以下、(表2)に示すようにデータ転送
を場合分けし、それぞれについて動作の流れを記述す
る。
【0023】
【表2】
【0024】(1)リトルエンディアンデータのロード 外部のリトルエンディアンデータをリトルエンディアン
領域からフェッチし、バイトアライナー111を経由し
てバイト順を並べ変えずにCPUコア103内部のレジス
タに格納する。 (2)リトルエンディアン領域へのストア CPUコア103内部のレジスタ中のデータを読み出し、
バイトアライナー111を経由してバイト順を並べ変え
ずに外部のリトルエンディアン領域に格納する。 (3)ビッグエンディアンデータのロード 外部のビッグエンディアンデータをビッグエンディアン
領域からフェッチする。バイトアライナー111で外部
データバス幅とデータ長に応じてバイト並べ替え操作を
行うことにより、ビッグエンディアンデータをリトルエ
ンディアンデータに変換する。変換されたデータをCPU
コア103内部のレジスタに格納する。 (4)ビッグエンディアン領域へのストア CPUコア103内部のレジスタ中のデータを読み出す。
バイトアライナー111でバイト並べ替え操作を行うこ
とにより、(3)と逆にリトルエンディアンデータをビ
ッグエンディアンデータに変換する。変換されたデータ
を指定された外部のビッグエンディアン領域に格納す
る。 (5)リトルエンディアン領域からリトルエンディアン
領域へのDMA転送 上記(1)の要領でリトルエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(2)の要領でDMAC106内部のレジスタ内の
データをストアする。DMAC106内部でのデータ形式
は、常にリトルエンディアンとする。 (6)ビッグエンディアン領域からリトルエンディアン
領域へのDMA転送 上記(3)の要領でビッグエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(2)の要領でDMAC106内部のレジスタ内の
データをストアする。 (7)リトルエンディアン領域からビッグエンディアン
領域へのDMA転送 上記(1)の要領でリトルエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(4)の要領でDMAC106内部のレジスタ内の
データをストアする。 (8)ビッグエンディアン領域からビッグエンディアン
領域へのDMA転送 上記(3)の要領でビッグエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(4)の要領でDMAC106内部のレジスタ内の
データをストアする。
領域からフェッチし、バイトアライナー111を経由し
てバイト順を並べ変えずにCPUコア103内部のレジス
タに格納する。 (2)リトルエンディアン領域へのストア CPUコア103内部のレジスタ中のデータを読み出し、
バイトアライナー111を経由してバイト順を並べ変え
ずに外部のリトルエンディアン領域に格納する。 (3)ビッグエンディアンデータのロード 外部のビッグエンディアンデータをビッグエンディアン
領域からフェッチする。バイトアライナー111で外部
データバス幅とデータ長に応じてバイト並べ替え操作を
行うことにより、ビッグエンディアンデータをリトルエ
ンディアンデータに変換する。変換されたデータをCPU
コア103内部のレジスタに格納する。 (4)ビッグエンディアン領域へのストア CPUコア103内部のレジスタ中のデータを読み出す。
バイトアライナー111でバイト並べ替え操作を行うこ
とにより、(3)と逆にリトルエンディアンデータをビ
ッグエンディアンデータに変換する。変換されたデータ
を指定された外部のビッグエンディアン領域に格納す
る。 (5)リトルエンディアン領域からリトルエンディアン
領域へのDMA転送 上記(1)の要領でリトルエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(2)の要領でDMAC106内部のレジスタ内の
データをストアする。DMAC106内部でのデータ形式
は、常にリトルエンディアンとする。 (6)ビッグエンディアン領域からリトルエンディアン
領域へのDMA転送 上記(3)の要領でビッグエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(2)の要領でDMAC106内部のレジスタ内の
データをストアする。 (7)リトルエンディアン領域からビッグエンディアン
領域へのDMA転送 上記(1)の要領でリトルエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(4)の要領でDMAC106内部のレジスタ内の
データをストアする。 (8)ビッグエンディアン領域からビッグエンディアン
領域へのDMA転送 上記(3)の要領でビッグエンディアンデータをロード
し、DMAC106内部のレジスタに一旦格納する。続い
て、上記(4)の要領でDMAC106内部のレジスタ内の
データをストアする。
【0025】本実施例によれば、最大3ビットのアドレ
スをデコードしてアクセスすべきデータ領域のエンディ
アンを高速に判定し、更にバイト単位のパスを切り替え
てバイト順を高速に並べ替えることが可能となる。従っ
て、パイプライン制御されるマイコンのデータ転送サイ
クルを伸ばすことなく、データ転送毎のエンディアン切
り替え機能をマイコンに付加することができる。
スをデコードしてアクセスすべきデータ領域のエンディ
アンを高速に判定し、更にバイト単位のパスを切り替え
てバイト順を高速に並べ替えることが可能となる。従っ
て、パイプライン制御されるマイコンのデータ転送サイ
クルを伸ばすことなく、データ転送毎のエンディアン切
り替え機能をマイコンに付加することができる。
【0026】なお本実施例において、ビッグエンディア
ンのみに対応するCPUコアにリトルエンディアンデータ
を扱わせる場合でも、アライナーパスを変更すれば同じ
システム構成が適用できる。実施例の記述中でビッグと
リトルを入れ換えても、本発明は同様に有効である。ビ
ッグエンディアンの外部バス構成が異なる場合でも、ア
ライナーパスを変更すれば同じシステム構成が適用でき
る。
ンのみに対応するCPUコアにリトルエンディアンデータ
を扱わせる場合でも、アライナーパスを変更すれば同じ
システム構成が適用できる。実施例の記述中でビッグと
リトルを入れ換えても、本発明は同様に有効である。ビ
ッグエンディアンの外部バス構成が異なる場合でも、ア
ライナーパスを変更すれば同じシステム構成が適用でき
る。
【0027】
【発明の効果】従来は、アドレス出力の下位2ビットを
反転させてバイト単位でデータを転送することによりエ
ンディアンを交換するため、データ転送性能が劣化して
いた。またエンディアンを状態フラグ中のモードビット
や端子の値で切り替えるため、いずれか一方のエンディ
アンのデータしか処理できなかった。本発明のバス制御
装置によれば、アドレスの上位ビットを見てエンディア
ンを判定し、かつバイトアライナーによりデータのエン
ディアンを切り替えることにより、エンディアンによら
ない高速なデータ転送と両方のエンディアンデータの同
時処理が可能になる。
反転させてバイト単位でデータを転送することによりエ
ンディアンを交換するため、データ転送性能が劣化して
いた。またエンディアンを状態フラグ中のモードビット
や端子の値で切り替えるため、いずれか一方のエンディ
アンのデータしか処理できなかった。本発明のバス制御
装置によれば、アドレスの上位ビットを見てエンディア
ンを判定し、かつバイトアライナーによりデータのエン
ディアンを切り替えることにより、エンディアンによら
ない高速なデータ転送と両方のエンディアンデータの同
時処理が可能になる。
【図1】実施例のバス制御装置を含むシステム構成図
【図2】バス制御装置内のバイトアライナー111のパ
ス構成を示す図
ス構成を示す図
【図3】バス制御装置内のバイトアライナー111のパ
ス構成を示す図
ス構成を示す図
【図4】バス制御装置内のバイトアライナー111のパ
ス構成を示す図
ス構成を示す図
【図5】外部バス幅毎のバイトアライナー111のパス
構成のまとめを示す図
構成のまとめを示す図
【図6】CPUコア内のバイトアライナーのパス構成を示
す図
す図
【図7】エンディアンを識別するためのアドレス空間の
領域分割を示す図
領域分割を示す図
【図8】外部バスと外部メモリモデルの概念図
【図9】第1従来例のバス制御装置を含むシステム構成
図
図
【図10】第2従来例のバス制御装置を含むシステム構
成図
成図
【図11】第3従来例のバス制御装置を含むシステム構
成図
成図
101 32ビットマイコン 102 バス制御装置 103 CPUコア 104 内蔵命令メモリ 105 内蔵データRAM 106 DMAコントローラ(DMAC) 107 外部アドレスバス 108 外部データバス 109 ビッグエンディアン入出力装置 110 外部メモリ 111 バイトアライナー 112 アドレス空間判定器
Claims (8)
- 【請求項1】データアドレス空間を第1のバイト並び順
形式でデータを格納する第1のバイト並び順領域と第2
のバイト並び順形式でデータを格納する第2のバイト並
び順領域とに分け、アドレスの特定のビットに基づいて
アクセスするデータ領域が第1と第2いずれのバイト並
び順領域にあるかを識別するアドレス空間判定手段と、
データ転送時に前記アドレス空間判定手段において第1
のバイト並び順領域に対しアクセスすると判定した場合
受け取った第1のバイト並び順のデータを同じバイト並
び順で入出力し、前記アドレス空間判定手段において第
2のバイト並び順領域に対しアクセスすると判定した場
合第1のバイト並び順形式と第2のバイト並び順形式と
の間でバイト順を並べ替えて変換し入出力するバイト並
べ替え手段を備えることを特徴とするバス制御装置。 - 【請求項2】アドレスの特定の1ビットに基づいてアク
セスするデータ領域が第1と第2いずれのバイト並び順
領域にあるかを識別するアドレス空間判定手段を備える
ことを特徴とする請求項1記載のバス制御装置。 - 【請求項3】データアドレス空間を第1のバイト並び順
形式でデータを格納する第1のバイト並び順領域と第2
のバイト並び順形式でデータを格納する第2のバイト並
び順領域とに分け、アドレスの特定のビットに基づいて
アクセスするデータ領域がどのデータアドレス空間にあ
るかを判断し、アクセスするデータ領域が特定のデータ
アドレス空間にあると判断した場合アドレスの他の特定
のビットに基づいてアクセスするデータ領域が第1と第
2いずれのバイト並び順領域にあるかを識別するアドレ
ス空間判定手段と、データ転送時に前記アドレス空間判
定手段において特定のデータアドレス空間の第1のバイ
ト並び順領域に対しアクセスすると判定した場合第1の
バイト並び順を同じバイト並び順で入出力し、前記アド
レス空間判定手段において特定のデータアドレス空間の
第2のバイト並び順領域に対しアクセスすると判定した
場合第1のバイト並び順形式と第2のバイト並び順形式
との間でバイト順を並べ替えて変換し入出力するバイト
並べ替え手段を備えることを特徴とするバス制御装置。 - 【請求項4】アドレスの特定のビットに基づいてアクセ
スするデータ領域がどのデータアドレス空間にあるかを
判断し、アクセスするデータ領域が特定のデータアドレ
ス空間にあると判断した場合アドレスの他の1ビットに
基づいてアクセスするデータ領域が第1と第2いずれの
バイト並び順領域にあるかを識別するアドレス空間判定
手段を備えることを特徴とする請求項3記載のバス制御
装置。 - 【請求項5】第1のバイト並び順形式で内部データを処
理するデータ処理手段と、外部データアドレス空間を第
1のバイト並び順形式でデータを格納する第1のバイト
並び順領域と第2のバイト並び順形式でデータを格納す
る第2のバイト並び順領域とに分け、アドレスの特定の
ビットに基づいてアクセスするデータ領域が第1と第2
いずれのバイト並び順領域にあるかを識別するアドレス
空間判定手段と、データ転送時に前記アドレス空間判定
手段において外部データアドレス空間の第1のバイト並
び順領域に対しアクセスすると判定した場合受け取った
第1のバイト並び順のデータを同じバイト並び順で入出
力し、前記アドレス空間判定手段において外部データア
ドレス空間の第2のバイト並び順領域に対しアクセスす
ると判定した場合第1のバイト並び順形式と第2のバイ
ト並び順形式との間でバイト順を並べ替えて変換し入出
力するバイト並べ替え手段を備えることを特徴とする情
報処理装置。 - 【請求項6】アドレスの1ビットに基づいてアクセスす
るデータ領域が第1と第2いずれのバイト並び順領域に
あるかを識別するアドレス空間判定手段を備えることを
特徴とする請求項5記載の情報処理装置。 - 【請求項7】第1のバイト並び順形式で内部データを処
理するデータ処理手段と、外部データアドレス空間を第
1のバイト並び順形式でデータを格納する第1のバイト
並び順領域と第2のバイト並び順形式でデータを格納す
る第2のバイト並び順領域とに分け、アドレスの特定の
ビットに基づいてアクセスするデータ領域が外部データ
アドレス空間にあるか否かを判断し、アクセスするデー
タ領域が外部データアドレス空間にあると判断した場合
アドレスの他の特定のビットに基づいてアクセスするデ
ータ領域が第1と第2いずれのバイト並び順領域にある
かを識別するアドレス空間判定手段と、データ転送時に
前記アドレス空間判定手段において外部データアドレス
空間の第1のバイト並び順領域に対しアクセスすると判
定した場合第1のバイト並び順を同じバイト並び順で入
出力し、前記アドレス空間判定手段において外部データ
アドレス空間の第2のバイト並び順領域に対しアクセス
すると判定した場合内部の第1のバイト並び順形式と外
部の第2のバイト並び順形式との間でバイト順を並べ替
えて変換し入出力するバイト並べ替え手段を備えること
を特徴とする情報処理装置。 - 【請求項8】アドレスの特定のビットに基づいてアクセ
スするデータ領域が外部データアドレス空間にあるか否
かを判断し、アクセスするデータ領域が外部データアド
レス空間にあると判断した場合アドレスの他の1ビット
に基づいてアクセスするデータ領域が第1と第2いずれ
のバイト並び順領域にあるかを識別するアドレス空間判
定手段を備えることを特徴とする請求項7記載の情報処
理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7252709A JPH0997211A (ja) | 1995-09-29 | 1995-09-29 | バス制御装置、及びバス制御装置を含む情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7252709A JPH0997211A (ja) | 1995-09-29 | 1995-09-29 | バス制御装置、及びバス制御装置を含む情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0997211A true JPH0997211A (ja) | 1997-04-08 |
Family
ID=17241165
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7252709A Pending JPH0997211A (ja) | 1995-09-29 | 1995-09-29 | バス制御装置、及びバス制御装置を含む情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0997211A (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002269551A (ja) * | 2001-03-08 | 2002-09-20 | Canon Inc | 画像処理装置 |
| JP2008500635A (ja) * | 2004-05-26 | 2008-01-10 | フリースケール セミコンダクター インコーポレイテッド | データ処理システムにおけるエンディアンネス制御方法および装置 |
| WO2010029794A1 (ja) * | 2008-09-12 | 2010-03-18 | 株式会社ルネサステクノロジ | データ処理装置及び半導体集積回路装置 |
| JP2011186545A (ja) * | 2010-03-04 | 2011-09-22 | Nec Corp | メモリデータベースシステム、高速化方法、および、プログラム |
| JP2011227730A (ja) * | 2010-04-20 | 2011-11-10 | Renesas Electronics Corp | マイクロコンピュータ |
-
1995
- 1995-09-29 JP JP7252709A patent/JPH0997211A/ja active Pending
Cited By (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002269551A (ja) * | 2001-03-08 | 2002-09-20 | Canon Inc | 画像処理装置 |
| JP2008500635A (ja) * | 2004-05-26 | 2008-01-10 | フリースケール セミコンダクター インコーポレイテッド | データ処理システムにおけるエンディアンネス制御方法および装置 |
| WO2010029794A1 (ja) * | 2008-09-12 | 2010-03-18 | 株式会社ルネサステクノロジ | データ処理装置及び半導体集積回路装置 |
| CN102150139A (zh) * | 2008-09-12 | 2011-08-10 | 瑞萨电子株式会社 | 数据处理装置及半导体集成电路装置 |
| JP5292406B2 (ja) * | 2008-09-12 | 2013-09-18 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
| JP2014179107A (ja) * | 2008-09-12 | 2014-09-25 | Renesas Electronics Corp | 半導体集積回路装置 |
| CN105893270A (zh) * | 2008-09-12 | 2016-08-24 | 瑞萨电子株式会社 | 数据处理装置及半导体集成电路装置 |
| US9524237B2 (en) | 2008-09-12 | 2016-12-20 | Renesas Electronics Corporation | Data processing device and semiconductor intergrated circuit device for a bi-endian system |
| JP2011186545A (ja) * | 2010-03-04 | 2011-09-22 | Nec Corp | メモリデータベースシステム、高速化方法、および、プログラム |
| JP2011227730A (ja) * | 2010-04-20 | 2011-11-10 | Renesas Electronics Corp | マイクロコンピュータ |
| US9395999B2 (en) | 2010-04-20 | 2016-07-19 | Renesas Electronics Corporation | Microcomputer having processor capable of changing endian based on endian information in memory |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5907865A (en) | Method and data processing system for dynamically accessing both big-endian and little-endian storage schemes | |
| US5642489A (en) | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management | |
| JP2633331B2 (ja) | マイクロプロセッサ | |
| US5542053A (en) | Bridge interface between two buses of a computer system with a direct memory access controller programmed by a scatter/gather programmer | |
| CN101373461B (zh) | 数据共享装置、在数据处理装置中共享数据的方法 | |
| US5623697A (en) | Bridge between two buses of a computer system with a direct memory access controller having a high address extension and a high count extension | |
| US5651138A (en) | Data processor with controlled burst memory accesses and method therefor | |
| US4344130A (en) | Apparatus to execute DMA transfer between computing devices using a block move instruction | |
| US4575796A (en) | Information processing unit | |
| US5535349A (en) | Data processing system and method for providing chip selects to peripheral devices | |
| US6681273B1 (en) | High performance, variable data width FIFO buffer | |
| KR960001023B1 (ko) | 이기종 버스시스템에서의 버스 공유방법 및 버스 스와핑장치 | |
| JP2004355432A (ja) | エンディアン変換回路 | |
| JPH0353363A (ja) | バスアーキテクチャ変換回路 | |
| US5793991A (en) | Method of equalizing loads on a computer bus | |
| US20020188771A1 (en) | Direct memory access controller for carrying out data transfer by determining whether or not burst access can be utilized in an external bus and access control method thereof | |
| JPH0227696B2 (ja) | Johoshorisochi | |
| JPS59206970A (ja) | マイクロプロセツサ | |
| JPH07271654A (ja) | コントローラ | |
| JPS603049A (ja) | バスインタ−フエ−ス装置 | |
| JP2976443B2 (ja) | システムバスを介してデータをやりとりする情報処理装置 | |
| JP2594611B2 (ja) | Dma転送制御装置 | |
| JPS63174157A (ja) | マイクロプロセツサ装置 | |
| JP3242474B2 (ja) | データ処理装置 | |
| JPS6019816B2 (ja) | マイクロプログラム制御アダプタ |