JPH0528092A - マイクロプロセツサ - Google Patents
マイクロプロセツサInfo
- Publication number
- JPH0528092A JPH0528092A JP3180750A JP18075091A JPH0528092A JP H0528092 A JPH0528092 A JP H0528092A JP 3180750 A JP3180750 A JP 3180750A JP 18075091 A JP18075091 A JP 18075091A JP H0528092 A JPH0528092 A JP H0528092A
- Authority
- JP
- Japan
- Prior art keywords
- general
- data
- register file
- purpose register
- register
- 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
- Bus Control (AREA)
- Microcomputers (AREA)
Abstract
(57)【要約】
【構成】レジスタファイル2及びレジスタファイル3な
どの複数のレジスタファイルに対してレジスタ切替及び
DMA制御回路4を設け、コンテキストスイッチ発生時
にレジスタファイルを切替えコンテキストスイッチの処
理を完了し、その後、次のコンテキストスイッチが発生
するまでにDMA転送により未使用レジスタとメモリ間
のデータ転送を行なうことによりデータの退避及び復帰
を行なう。 【効果】レジスタファイルの規模が小さくても多くのネ
スティングに対して高速なコンテキストスイッチがで
き、高速でCPUコアチップサイズの小さいマイクロプ
ロセッサを構成することができる効果がある。
どの複数のレジスタファイルに対してレジスタ切替及び
DMA制御回路4を設け、コンテキストスイッチ発生時
にレジスタファイルを切替えコンテキストスイッチの処
理を完了し、その後、次のコンテキストスイッチが発生
するまでにDMA転送により未使用レジスタとメモリ間
のデータ転送を行なうことによりデータの退避及び復帰
を行なう。 【効果】レジスタファイルの規模が小さくても多くのネ
スティングに対して高速なコンテキストスイッチがで
き、高速でCPUコアチップサイズの小さいマイクロプ
ロセッサを構成することができる効果がある。
Description
【0001】
【産業上の利用分野】本発明は組込みコントローラ用マ
イクロプロセッサの汎用レジスタファイルの構成及び制
御方法に関する。
イクロプロセッサの汎用レジスタファイルの構成及び制
御方法に関する。
【0002】
【従来の技術】従来のマイクロプロセッサは、複数の汎
用レジスタファイルを設け、コンテキストスイッチが発
生すると汎用レジスタを切替える方法によりコンテキス
トスイッチの高速化を図っていた。
用レジスタファイルを設け、コンテキストスイッチが発
生すると汎用レジスタを切替える方法によりコンテキス
トスイッチの高速化を図っていた。
【0003】尚、マイクロプロセッサの汎用レジスタフ
ァイル構成方法の公知例として特開昭62−5467、
特開昭62−154166が挙げられる。
ァイル構成方法の公知例として特開昭62−5467、
特開昭62−154166が挙げられる。
【0004】
【発明が解決しようとする課題】複数レジスタファイル
を設けてコンテキストスイッチを行なう場合に設けたレ
ジスタファイルより多いネスティングが発生するとレジ
スタファイルの退避又は復帰に多くの処理時間を必要と
し割込み処理の多いコントローラの場合に性能が落ちる
問題があった。
を設けてコンテキストスイッチを行なう場合に設けたレ
ジスタファイルより多いネスティングが発生するとレジ
スタファイルの退避又は復帰に多くの処理時間を必要と
し割込み処理の多いコントローラの場合に性能が落ちる
問題があった。
【0005】また、レジスタファイルを多くするとレジ
スタファイルをアクセスするスピードが遅くなり、ハー
ド量が多くなるため組込みコントローラ用プロセッサの
CPUコアチップサイズが大きくなり、プロセッサのマ
シンサイクルが遅い問題があった。
スタファイルをアクセスするスピードが遅くなり、ハー
ド量が多くなるため組込みコントローラ用プロセッサの
CPUコアチップサイズが大きくなり、プロセッサのマ
シンサイクルが遅い問題があった。
【0006】本発明の目的は、CPUコアのチップサイ
ズが小さく、ネスティング数に関係なく高速なコンテキ
ストスイッチが可能なマイクロプロセッサを提供するこ
とにある。
ズが小さく、ネスティング数に関係なく高速なコンテキ
ストスイッチが可能なマイクロプロセッサを提供するこ
とにある。
【0007】
【課題を解決するための手段】複数のレジスタファイル
の各レジスタファイルに対するDMA転送機能を設け、
コンテキストスイッチが発生した時にレジスタファイル
を切替える又はデータをシフトすることによりデータの
復帰又は一時的なデータ退避を行ないコンテキストスイ
ッチの処理を完了し、その後、DMA転送により次の復
帰データの転送又は一時的に退避したデータの転送をメ
モリとレジスタファイル間で行なう。
の各レジスタファイルに対するDMA転送機能を設け、
コンテキストスイッチが発生した時にレジスタファイル
を切替える又はデータをシフトすることによりデータの
復帰又は一時的なデータ退避を行ないコンテキストスイ
ッチの処理を完了し、その後、DMA転送により次の復
帰データの転送又は一時的に退避したデータの転送をメ
モリとレジスタファイル間で行なう。
【0008】
【作用】レジスタファイルの切替え又はデータのシフト
によりデータの退避又は復帰が行なわれるため1サイク
ルでコンテキストスイッチのデータ処理が完了し高速な
コンテキストスイッチができる。
によりデータの退避又は復帰が行なわれるため1サイク
ルでコンテキストスイッチのデータ処理が完了し高速な
コンテキストスイッチができる。
【0009】また、その後、次のコンテキストスイッチ
までにDMA転送によりデータをメモリ上へ退避又はメ
モリ上からレジスタファイルへ復帰するのでネスティン
グ数が多くても2〜3個程度のレジスタファイルで前記
高速なコンテキストスイッチが可能なためCPUコアの
チップサイズを小さくでき、さらにレジスタファイルの
規模が小さいため高速アクセスが可能となるためプロセ
ッサのマシンサイクルを速くすることができる。
までにDMA転送によりデータをメモリ上へ退避又はメ
モリ上からレジスタファイルへ復帰するのでネスティン
グ数が多くても2〜3個程度のレジスタファイルで前記
高速なコンテキストスイッチが可能なためCPUコアの
チップサイズを小さくでき、さらにレジスタファイルの
規模が小さいため高速アクセスが可能となるためプロセ
ッサのマシンサイクルを速くすることができる。
【0010】
【実施例】本発明の一実施例を図1に示す。図1に示す
ように、演算器1、レジスタファイル2、レジスタファ
イル3、レジスタファイル切替え及びDMA制御回路
4、及びRAM5で構成され、演算器1とレジスタファ
イル2、3をソース1バス11、ソース2バス12、及
びディストネーションバス13で接続し、レジスタファ
イル2、3とRAM5をメモリバス14で接続する。一
般のレジスタ間演算を行なう場合、オペランドデータ2
1と汎用レジスタ指定データ22よりレジスタ切替及び
DMA制御回路4からソース1バス11、ソース2バス
12、ディストネーションバス13にレジスタファイル
のアドレスを出力しレジスタファイルをアクセスする。
これにより、レジスタファイル切替及びDMA制御回路
4が演算器が使用するレジスタファイルを指定する。仮
にレジスタファイル2が演算器1に使用されている場合
にコンテキストスイッチが発生すると汎用レジスタ指定
データが変更され、次の演算でアクセスされるレジスタ
ファイルはレジスタファイル3へ切替わる。この切替え
が完了するとレジスタファイル2のDMA転送が起動さ
れ、プロセッサの処理を遅らせないようにプロセッサが
メモリバス14を未使用時にレジスタファイル2とRA
M5間のDMA転送をレジスタファイル切替及びDMA
制御回路4が行なう。尚、レジスタ切替え時に切替えレ
ジスタのDMA転送が行なわれている場合はレジスタ切
替処理と同一方向のDMA転送がある場合は、DMA転
送が終わるまでウェイトし、逆方向のDMA転送は不要
な為キャンセルする。これら動作のフローを図3に示
す。
ように、演算器1、レジスタファイル2、レジスタファ
イル3、レジスタファイル切替え及びDMA制御回路
4、及びRAM5で構成され、演算器1とレジスタファ
イル2、3をソース1バス11、ソース2バス12、及
びディストネーションバス13で接続し、レジスタファ
イル2、3とRAM5をメモリバス14で接続する。一
般のレジスタ間演算を行なう場合、オペランドデータ2
1と汎用レジスタ指定データ22よりレジスタ切替及び
DMA制御回路4からソース1バス11、ソース2バス
12、ディストネーションバス13にレジスタファイル
のアドレスを出力しレジスタファイルをアクセスする。
これにより、レジスタファイル切替及びDMA制御回路
4が演算器が使用するレジスタファイルを指定する。仮
にレジスタファイル2が演算器1に使用されている場合
にコンテキストスイッチが発生すると汎用レジスタ指定
データが変更され、次の演算でアクセスされるレジスタ
ファイルはレジスタファイル3へ切替わる。この切替え
が完了するとレジスタファイル2のDMA転送が起動さ
れ、プロセッサの処理を遅らせないようにプロセッサが
メモリバス14を未使用時にレジスタファイル2とRA
M5間のDMA転送をレジスタファイル切替及びDMA
制御回路4が行なう。尚、レジスタ切替え時に切替えレ
ジスタのDMA転送が行なわれている場合はレジスタ切
替処理と同一方向のDMA転送がある場合は、DMA転
送が終わるまでウェイトし、逆方向のDMA転送は不要
な為キャンセルする。これら動作のフローを図3に示
す。
【0011】また、レジスタファイルは図2に示すよう
にデータをシフトするためのバス15、16を設け、切
替時にシフトする構成があり、図1に示す構成は、ロー
カルレジスタのコンテキストスイッチの切替えに使用さ
れ、図2の構成は、グローバルレジスタのスタックポイ
ンタへの退避に使用される。
にデータをシフトするためのバス15、16を設け、切
替時にシフトする構成があり、図1に示す構成は、ロー
カルレジスタのコンテキストスイッチの切替えに使用さ
れ、図2の構成は、グローバルレジスタのスタックポイ
ンタへの退避に使用される。
【0012】さらに、2個以上のレジスタファイルがあ
る場合、次のコンテキストスイッチまでDMA転送が完
了しなくても、切替えるレジスタファイルがあるため、
切替えが可能であり、レジスタファイルを全て使用する
まで1サイクルで切替えるので有効である。
る場合、次のコンテキストスイッチまでDMA転送が完
了しなくても、切替えるレジスタファイルがあるため、
切替えが可能であり、レジスタファイルを全て使用する
まで1サイクルで切替えるので有効である。
【0013】
【発明の効果】本発明によれば、レジスタファイルの数
が少なくても、多くのネスティングに対して高速なコン
テキストスイッチが可能であり、CPUコアチップサイ
ズを小さくする効果がある。
が少なくても、多くのネスティングに対して高速なコン
テキストスイッチが可能であり、CPUコアチップサイ
ズを小さくする効果がある。
【0014】また、レジスタファイルの規模が小さいた
めレジスタファイルのアクセスが高速にできマシンサイ
クルを上げることができる効果がある。
めレジスタファイルのアクセスが高速にできマシンサイ
クルを上げることができる効果がある。
【図1】本発明の演算部ブロック図である。
【図2】本発明のレジスタファイルの構成図である。
【図3】本発明の動作フロー図である。
1…演算器、
2…レジスタファイル、
3…レジスタファイル、
4…レジスタファイル切替及びDMA制御回路、
5…RAM、
11…ソース1バス、
12…ソース2バス、
13…ディストネーションバス、
14…メモリバス、
15…シフト用バス、
16…シフト用バス、
21…オペランドデータ、
22…汎用レジスタ指定データ。
Claims (5)
- 【請求項1】汎用レジスタファイル用DMAコントロー
ラと複数の汎用レジスタファイルをプロセッサに設け、
プロセッサの処理を切替える時点では使用する該複数の
汎用レジスタファイルを切替えてデータの退避又は復帰
を行ない、切替え後の処理中に該汎用レジスタファイル
用DMAコントローラで複数の汎用レジスタファイルの
データをメモリ上へ退避又は復帰することを特徴とする
マイクロプロセッサ。 - 【請求項2】汎用レジスタファイル用DMAコントロー
ラと複数の汎用レジスタファイルを設け、該複数の汎用
レジスタファイルを汎用レジスタファイル間でデータの
シフトが出来るように構成し、プロセッサの処理を切替
える時点では汎用レジスタファイルのデータをシフトし
データの退避又は復帰を行ない、切替え後の処理中に該
汎用レジスタファイル用DMAコントローラで複数の汎
用レジスタファイルのデータをメモリ上へ退避又は復帰
することを特徴とするマイクロプロセッサ。 - 【請求項3】請求項1または2のマイクロプロセッサに
おいて、該複数の汎用レジスタファイルの各レジスタフ
ァイルにデータ退避用DMA転送完了フラグとデータ復
帰用DMA転送フラグを設け、データ退避時に切替え対
象の汎用レジスタファイルのデータ退避完了フラグをチ
ェックし、データ復帰時に切替え対象の汎用レジスタフ
ァイルのデータ復帰DMA転送完了フラグをチェック
し、DMA転送が完了し各フラグがセットされるまでプ
ロセッサを停止することを特徴とするマイクロプロセッ
サ。 - 【請求項4】汎用レジスタファイル用DMAコントロー
ラにおいて、プロセッサのバス使用権より優先順位を低
くしたことを特徴とするDMAコントローラ。 - 【請求項5】汎用レジスタファイル用DMAコントロー
ラにおいて、プロセッサのメモリバスと異なるデータ転
送バスを設けてDMA転送することを特徴とするDMA
コントローラ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3180750A JPH0528092A (ja) | 1991-07-22 | 1991-07-22 | マイクロプロセツサ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3180750A JPH0528092A (ja) | 1991-07-22 | 1991-07-22 | マイクロプロセツサ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0528092A true JPH0528092A (ja) | 1993-02-05 |
Family
ID=16088665
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3180750A Pending JPH0528092A (ja) | 1991-07-22 | 1991-07-22 | マイクロプロセツサ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0528092A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100770034B1 (ko) * | 2006-03-02 | 2007-10-26 | 삼성전자주식회사 | 복수의 레지스터 파일을 이용한 문맥 교환 방법 및 시스템 |
| US7590774B2 (en) | 2005-12-01 | 2009-09-15 | Kabushiki Kaisha Toshiba | Method and system for efficient context swapping |
-
1991
- 1991-07-22 JP JP3180750A patent/JPH0528092A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7590774B2 (en) | 2005-12-01 | 2009-09-15 | Kabushiki Kaisha Toshiba | Method and system for efficient context swapping |
| KR100770034B1 (ko) * | 2006-03-02 | 2007-10-26 | 삼성전자주식회사 | 복수의 레지스터 파일을 이용한 문맥 교환 방법 및 시스템 |
| US8327122B2 (en) | 2006-03-02 | 2012-12-04 | Samsung Electronics Co., Ltd. | Method and system for providing context switch using multiple register file |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH06149545A (ja) | Cpuと乗算器とを有する半導体集積回路 | |
| JPH09330236A (ja) | マイクロプロセッサ及びその周辺装置 | |
| JPH0528092A (ja) | マイクロプロセツサ | |
| JP2503984B2 (ja) | 情報処理装置 | |
| JPH07219766A (ja) | 演算処理装置 | |
| KR100639146B1 (ko) | 카테시안 제어기를 갖는 데이터 처리 시스템 | |
| JPH07325805A (ja) | ベクトル処理装置 | |
| JPH0245207B2 (ja) | ||
| JP2744152B2 (ja) | データ駆動型データ処理装置 | |
| JP3855069B2 (ja) | 論理回路 | |
| JPH05334233A (ja) | データ転送装置 | |
| JPS63268032A (ja) | ル−プ制御回路 | |
| JP3723311B2 (ja) | 並列演算プロセッサ | |
| JPH06161708A (ja) | 浮動小数点演算装置 | |
| JPS5942331B2 (ja) | プロセツサソウチノセイギヨホウシキ | |
| JPS6352240A (ja) | デ−タ処理装置 | |
| JPH0661039B2 (ja) | メモリアクセス制御回路 | |
| JPS6273335A (ja) | スタツク管理方式 | |
| JPS6120139A (ja) | 割込み制御方式 | |
| JPH058645U (ja) | マイクロプロセツサの割り込み制御装置 | |
| JPH0266625A (ja) | データ処理装置 | |
| JPH01309174A (ja) | ベクトル処理装置 | |
| JPH0222766A (ja) | 情報処理装置 | |
| JPH0689349A (ja) | マイクロプロセッサ | |
| JPS6269350A (ja) | マイクロプロセツサ |