JP3525070B2 - アクセス制御装置及びアクセス方法 - Google Patents

アクセス制御装置及びアクセス方法

Info

Publication number
JP3525070B2
JP3525070B2 JP01887899A JP1887899A JP3525070B2 JP 3525070 B2 JP3525070 B2 JP 3525070B2 JP 01887899 A JP01887899 A JP 01887899A JP 1887899 A JP1887899 A JP 1887899A JP 3525070 B2 JP3525070 B2 JP 3525070B2
Authority
JP
Japan
Prior art keywords
access
address
dram
management unit
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.)
Expired - Fee Related
Application number
JP01887899A
Other languages
English (en)
Other versions
JP2000222226A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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
Priority to JP01887899A priority Critical patent/JP3525070B2/ja
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to US09/647,196 priority patent/US6742089B1/en
Priority to KR10-2000-7010638A priority patent/KR100419682B1/ko
Priority to PCT/JP2000/000265 priority patent/WO2000045261A1/ja
Priority to IDW20002178A priority patent/ID27388A/id
Priority to CNB008000786A priority patent/CN1145101C/zh
Priority to TW089101000A priority patent/TW463130B/zh
Publication of JP2000222226A publication Critical patent/JP2000222226A/ja
Application granted granted Critical
Publication of JP3525070B2 publication Critical patent/JP3525070B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1647Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、アクセス制御装置
及びアクセス方法に関し、特に、CPU(Central Pro
cessing Unit )からメモリへのアクセスを制御するア
クセス制御装置及びアクセス方法に関する。
【0002】
【従来の技術】図4は、従来の情報処理装置の構成を一
部示すブロック図で、CPU160又は第1及び第2の
処理回路500、510からDRAM(Dynamic Random
Access Memory)120へのアクセスに関わる構成を
示す。図4に示された情報処理装置は、CPU160
と、アクセスポート140と、DRAM120と、バス
アービタ130と、第1及び第2の処理回路500、5
10とを備える。アクセスポート140と、DRAM1
20と、バスアービタ130と、第1及び第2の処理回
路500、510とは、LSI110上に作製されてい
るとする。
【0003】CPU160は、情報処理装置全体の動作
を制御する。DRAM120は、情報処理装置の動作に
関わる情報を書き込み、保持し、読み出す機能をもつメ
モリである。バスアービタ130は、CPU160及び
第1及び第2の処理回路500、510からDRAM1
20へのアクセスが要求されると、優先度の高い要求か
らアクセスを許可する。アクセスポート140は、CP
U160から出されるDRAM120へのアクセス要求
に関わる情報を書き込むためのレジスタを備え、アクセ
ス要求をバスアービタ130へ伝える。第1及び第2の
処理回路500、510は、任意の処理回路であって、
2つとは限らない。
【0004】図5は、アクセスポート140の構成を示
すブロック図である。アクセスポート140は、さら
に、DRAMバイトアドレス指定用レジスタ141と、
DRAMワードデータ読み書き用レジスタ142と、ア
クセスモード指定用レジスタ143とを備える。アクセ
スモード指定用レジスタ143は、さらに、DRAMア
ドレス可変指定ビット144と、DRAMアドレス増加
/減少指定ビット145とを備える。
【0005】DRAMバイトアドレス指定用レジスタ1
41は、CPU160がアクセスしたいDRAMのアド
レスを書き込むためのレジスタである。DRAMワード
データ読み書き用レジスタ142は、DRAMバイトア
ドレス指定用レジスタ141に書き込まれたアドレスの
データ、あるいはDRAMバイトアドレス指定用レジス
タ141に書き込まれたアドレスに書き込むためのデー
タを保持する。アクセスモード指定用レジスタ143
は、DRAM120へのアクセスの仕方を指定する。D
RAMアドレス可変指定ビット144は、DRAMバイ
トアドレス指定用レジスタ141に書き込まれたアドレ
スを連続的に変化させるか否かを1又は0で指定する。
DRAMアドレス増加/減少指定ビット145は、DR
AMバイトアドレス指定用レジスタ141に書き込まれ
たアドレスを連続的に増加させるのか、減少させるのか
を1又は0で指定する。
【0006】次に図4及び図5を用いてアクセス動作に
ついて説明する。CPU160が所定のアドレス、例え
ば0x0500番地のデータを読み出したい場合、DR
AMアドレス可変指定ビット144に0を書き込み、D
RAMバイトアドレス指定用レジスタ141に0x05
00番地を書き込む。また、CPU160が、連続した
アドレス、例えば、0x0500番地〜0x0508番
地にアクセスするならば、DRAMアドレス可変指定ビ
ット144に1を書き込み、DRAMアドレス増加/減
少指定ビット145に1を書き込み、DRAMバイトア
ドレス指定用レジスタ141に0x0500番地を書き
込む。また、CPU160が、0x0508番地〜0x
0500番地のように減少方向に連続したアドレスにア
クセスするならば、DRAMアドレス可変指定ビット1
44に1を書き込み、DRAMアドレス増加/減少指定
ビット145に0を書き込み、DRAMバイトアドレス
指定用レジスタ141に0x0508番地を書き込む。
【0007】CPU160はアクセスポート140を経
由してアクセス要求をバスアービタ130に出す。第1
及び第2の処理回路500、510からもDRAM12
0へのアクセスを要求していれば、バスアービタ130
は、CPU160と第1及び第2の処理回路500、5
10の要求とを比較して、優先度の高い要求にアドレス
へのアクセスを許可する。例えば、CPU160の要求
の優先度が高い場合、バスアービタ130は、CPU1
60が要求するアドレスにアクセスし、アクセスされた
アドレスのデータは、DRAMワードデータ読み書き用
レジスタ142に読み出される。CPU160は、DR
AMワードデータ読み書き用レジスタ142にアクセス
すれば、アクセス要求したアドレスのデータを読み出す
ことができる。このとき、DRAMアドレス可変ビット
144に0が書き込まれていると、読み出しは終了す
る。DRAMアドレス可変ビット144に1が書き込ま
れていると、DRAMバイトアドレス指定用レジスタ1
41に書き込まれたアドレスはDRAMアドレス増加/
減少指定ビット145の指定に従いインクリメント又は
デクリメントされ、バスアービタ130を経由して、イ
ンクリメント又はデクリメントされたアドレスのデータ
がDRAMワードデータ読み書き用レジスタ142に読
み出される。
【0008】また、CPU160がDRAM120の所
定のアドレスにデータを書き込みたい場合、CPU16
0は、DRAMバイトアドレス指定用レジスタ141に
アドレスを書き込んだ後、書き込みたいデータをDRA
Mワードデータ読み書き用レジスタ142に書き込む。
バスアービタ130を経由して、CPU160の要求す
るアドレスにアクセスすると、DRAMワードデータ読
み書き用レジスタ142に書き込まれたデータが、アク
セスされたアドレスに書き込まれる。CPU160が連
続したアドレスにデータを書き込みたい場合は、上記で
説明したDRAMアドレス可変ビット144及びDRA
Mアドレス増加/減少指定ビット145を用いて、DR
AMバイトアドレス指定用レジスタ141のアドレスを
インクリメント又はデクリメントし、その都度、書き込
みたいデータをDRAMワードデータ読み書き用レジス
タ142に書き込んでいけば、所望のアドレスにデータ
を連続的に書き込むことができる。
【0009】一方、特開平2−253440号公報に
は、ファームウェアを用いて、複数のレジスタファイル
に書き込まれたタスクを切り替えながら実行する時分割
マルチタスク実行装置が開示されている。
【0010】
【発明が解決しようとする課題】CPU160がアクセ
スポート140を介してDRAM120にアクセスして
いる途中で、CPUマルチタスク処理による複数のタス
クや割り込み処理がDRAM120へのアクセス要求を
出すと、それまで実行されていたアクセスは中断され、
CPUマルチタスク処理によるタスクや割り込み処理に
合わせて、アクセスポート140の各レジスタに保持さ
れている情報が書き換えられる。
【0011】しかしながら、上記のような従来の技術に
よるDRAM120へのアクセスシステムでは、中断さ
れたアクセスが再開されても、途中で書き換えられたア
ドレスやデータが何らかの原因で残り、誤った処理が実
行されるという問題があった。
【0012】例えば、DRAMの0x0500番地のデ
ータを読み出すタスクを実行するため、CPU160が
DRAMアドレス可変指定ビット144に0を書き込
み、DRAMバイトアドレス指定用レジスタ141に0
x0500を書き込む。ここで、CPU160がDRA
Mワードデータ読み書き用レジスタ142を読み出す直
前に、割り込み処理が命令されると、CPU160は、
タスクを中断して、割り込み処理が要求するアドレス、
例えば0x0800をDRAMバイトアドレス指定用レ
ジスタ141に書き込み、DRAMワードデータ読み書
き用レジスタ142を読み出す。割り込み処理が終了す
ると、CPU160は中断されていたタスクを実行する
が、何らかの原因で、アドレス0x0500番地のデー
タが、割り込み処理で読み出された0x0800番地の
データに置き変わることがある。
【0013】また、別の例としては、DRAM120の
0x0500番地から+2ずつ増える方向に連続する番
地(0x0500、0x0502、0x0504、・・
・)に所望のデータを書き込むタスクを実行するため、
CPU160がDRAMアドレス可変指定ビット144
に1を、DRAMアドレス増加/減少指定ビット145
に1を、それぞれ書き込み、DRAMバイトアドレス指
定用レジスタ141に0x0500を書き込み、DRA
Mワードデータ読み書き用レジスタ142に所望のデー
タを書き込む。DRAMワードデータ読み書き用レジス
タ142に書き込まれたデータを0x0500番地と0
x0502番地とに書き込んだ後、割り込み処理が命令
されると、CPU160はタスクを中断し、割り込み処
理が要求するアドレス、0x0800をDRAMバイト
アドレス指定用レジスタ141に書き込み、DRAMワ
ードデータ読み書き用レジスタ142に読み出されてい
る0x0800番地のデータを読みだす。再びCPU1
60がタスクを実行すると、タスクはDRAMアドレス
0x0504番地に引続きデータを書き込むつもりで
も、何らかの原因で0x0802番地にデータを書き込
むことがある。
【0014】上記のように、中断されたタスクが再開さ
れた時に誤ったアドレスやデータを処理するという問題
を回避するために、CPU160を制御するファームウ
ェア側で対策する手法がある。例えば、あるタスクを実
行するために、CPU160がDRAMアドレス可変指
定ビット144に0を書き込み、DRAMバイトアドレ
ス指定用レジスタ141に0x0500を書き込む。C
PU160がDRAMワードデータ読み書き用レジスタ
142を読み出す直前に、割り込み処理が命令される
と、CPU160は、DRAMバイトアドレス指定用レ
ジスタ141と、DRAMワードデータ読み書き用レジ
スタ142と、アクセスモード指定用レジスタ143の
各情報をCPU160配下のメモリ等に退避させる。次
に、CPU160は、割り込み処理が要求するアドレ
ス、0x0800をDRAMバイトアドレス指定用レジ
スタ141に書き込み、DRAMワードデータ読み書き
用レジスタ142から0x0800のデータを読み出
す。CPU160が中断されたタスクを再開すると、C
PU160配下のメモリ等に退避させた各レジスタ値を
元のレジスタに復帰させる。
【0015】以上のように、CPUマルチタスク処理に
おける複数のタスクや割り込み処理でタスクが中断され
ると、レジスタに書き込まれた情報をCPU160配下
のメモリに退避させ、中断されたタスクを再開するとき
に、退避させておいた情報をレジスタに復帰させると、
CPUマルチタスク処理によるタスクや割り込み処理で
用いたアドレスやデータがレジスタに残らず、タスクを
正常に実行できる。しかし、上記手法では、CPU16
0を制御するファームウェアの構造が複雑になり、ま
た、タスクの切り替わりが頻繁に起こると、アクセスポ
ート140内のレジスタを退避/復帰する回数が増え、
CPU処理負荷がさらに増大するという問題があった。
【0016】また、特開平2−253440号公報に開
示されている時分割マルチタスク実行装置では、ファー
ムウェアにより各レジスタファイルに書き込まれたタス
クの実行が自動的に切り替えられ、レジスタファイルの
使用状況もCPUが直接管理しているので、CPUの負
担が増加する。
【0017】本発明は、上記の問題点を解決するために
なされたものであり、CPUマルチタスク処理における
複数のタスクや割り込み処理等によって中断されたタス
クが再開されたときに、誤ったアドレスにアクセスしな
い機能をもったアクセス制御装置を提供することを目的
とし、特に、CPU処理負荷を抑え、複雑なファームウ
ェアの記述を必要としないアクセス制御装置を提供する
ことを目的とするものである。
【0018】
【課題を解決するための手段】上記目的を達成するため
に、請求項1に係るアクセス制御装置は、複数のタスク
の時分割処理と割り込み処理とを実行できるCPUから
所定のメモリへのアクセスを中継するアクセス制御装置
において、CPUからのアクセスに関する情報をアクセ
ス毎に格納する複数のアクセスポートと、複数のアクセ
スポートの使用状況を管理し、使用状況をCPUに通知
する管理部と、を備え、CPUは、管理部から提供され
る使用状況を基に、複数のアクセスポートのうちの未使
用のものにアクセスに関する情報を書き込む、ことを特
徴とするものである。
【0019】また、請求項2に係るアクセス制御装置
は、管理部がさらに、複数のアクセスポートがすべて使
用されているときに、別のタスクあるいは割り込み処理
が起動された場合、該起動された別のタスクあるいは割
り込み処理のアクセス要求に関する情報を、任意の1つ
のアクセスポートに格納できるよう、該任意の1つのア
クセスポートに格納されている情報を退避させる退避領
域と、起動されたタスクあるいは割り込み処理が終了す
ると、退避領域に退避された情報を元のアクセスポート
に復帰させる復帰手段と、を備えることを特徴とするも
のである。
【0020】また、請求項3に係るアクセス制御装置
は、アクセスポートが、各々、CPUがアクセスしたい
メモリのアドレスを指定するアドレス指定手段と、アド
レス指定手段によって指定されたアドレスから読み出さ
れたデータ、あるいはアドレス指定手段によって指定さ
れたアドレスに書き込むためのデータを一時的に保持す
る保持手段と、アドレス指定手段に指定されたアドレス
をインクリメントあるいはデクリメントすることを指定
するアドレス可変指定手段と、を備えることを特徴とす
るものである。
【0021】また、請求項4に係るアクセス方法は、複
数のタスクの時分割処理と割り込み処理とを実行できる
CPUから、複数のアクセスポートと管理部とを有する
アクセス制御装置を介して、所定のメモリへアクセスす
るアクセス方法において、記管理部が、複数のアクセス
ポートの使用状況を認識し、CPUが、管理部によって
未使用であると認識された任意の1つのアクセスポート
に、アクセスに関する情報を格納し、管理部が、上記任
意の1つのアクセスポートへの格納が行われる際、任意
の1つのアクセスポートの使用状況として使用中である
ことを上記管理部に記録し、管理部が、格納された情報
に基づいて、メモリへのアクセスを行わしめ、管理部
が、アクセスが終了したのち、任意の1つのアクセスポ
ートの使用状況として待機中であることを管理部に記録
する、ことを特徴とするものである。
【0022】また、請求項5に係るアクセス方法は、管
理部が、複数のアクセスポートがすべて使用中であると
認識すると、任意の1つのアクセスポートに格納されて
いる情報を管理部に退避させ、CPUは、アクセスに関
する情報を任意の1つのアクセスポートに格納し、管理
部は、格納された情報に基づいて、メモリへアクセス
し、管理部は、アクセスが終了したのち、管理部に退避
させられた情報を任意の1つのアクセスポートに復帰さ
せる、ことを含むことを特徴とするものである。
【0023】
【発明の実施の形態】実施の形態1.以下、本発明の実
施の形態1によるアクセス制御装置について、図面を参
照しながら説明する。図1は、本実施の形態1によるア
クセス制御装置に相当する回路、すなわちアクセス制御
回路10を備えた情報処理装置の構成を概略して示すブ
ロック図である。情報処理装置は、CPU16と、アク
セス制御回路10と、DRAM12と、バスアービタ1
3と、第1及び第2の処理回路50、51とを備える。
アクセス制御回路10と、DRAM12と、バスアービ
タ13と、第1及び第2の処理回路50、51とは、L
SI11上に作製されている。アクセス制御回路10
は、さらに、第1〜第3のアクセスポート1、2、3
と、バンク管理部5とを備える。
【0024】CPU16は、情報処理装置全体の動作を
制御する。DRAM12は、情報処理装置の動作に関わ
る情報を書き込み、保持し、読み出す機能をもつメモリ
である。バスアービタ130は、CPU16及び第1及
び第2の処理回路50、51からDRAM12へのアク
セスを要求されると、優先度の高い要求にアドレスへの
アクセスを許可する。第1〜第3のアクセスポート1、
2、3は、CPU16からDRAM12へのアクセスに
必要な情報を格納するためのレジスタを備え、アクセス
要求をバスアービタ13へ伝える。バンク管理部5は、
第1〜第3のアクセスポート1、2、3の使用状況を管
理し、使用状況をCPU16に通知する。さらに、CP
U16のコマンドに従い、第1のアクセスポート21に
書き込まれた情報を退避させたり復帰させたりする。
【0025】図2は、第1〜第3のアクセスポート1、
2、3の各々に共通する構成を示すブロック図である。
第1〜第3のアクセスポート1、2、3は、さらに、D
RAMバイトアドレス指定用レジスタ21と、DRAM
ワードデータ読み書き用レジスタ22と、アクセスモー
ド指定用レジスタ23とを備える。アクセスモード指定
用レジスタ23は、さらに、DRAMアドレス可変指定
ビット24と、DRAMアドレス増加/減少指定ビット
25とを備える。
【0026】DRAMバイトアドレス指定用レジスタ2
1は、CPU16がアクセスしたいDRAMアドレスを
格納する。DRAMワードデータ読み書き用レジスタ2
2は、DRAMバイトアドレス指定用レジスタ21に格
納されたアドレスから読み出したデータ、あるいはDR
AMバイトアドレス指定用レジスタ21に格納されたア
ドレスに書き込むためのデータを一時的に保持する。ア
クセスモード指定用レジスタ23は、DRAM12への
アクセスの仕方を指定する。DRAMアドレス可変指定
ビット24は、DRAMバイトアドレス指定用レジスタ
21に書き込まれたアドレスを連続的に変化させるか否
かを1又は0で指定する。DRAMアドレス増加/減少
指定ビット25は、番号が増える方向にアドレスを変化
させるのか、減る方向にアドレスを変化させるのかを1
又は0で指定する。
【0027】例えば、CPU16がDRAM12の0x
0500〜0x0508番地に連続してアクセスしたい
場合、DRAMアドレス可変指定ビット24に1を書き
込み、DRAMアドレス増加/減少指定ビット25に1
を書き込み、DRAMバイトアドレス指定用レジスタ2
1に0x0500を書き込むと、DRAMワードデータ
読み書き用レジスタ22に0x0500〜0x0508
番地のデータが読み込まれる。また、アクセスしたい番
地が0x0508〜0x0500番地ならば、DRAM
アドレス可変指定ビット24に1を書き込み、DRAM
アドレス増加/減少指定ビット25に0を書き込み、D
RAMバイトアドレス指定用レジスタ21に0x050
8を書き込む。また、アクセスしたい番地が0x050
8番地ならば、DRAMアドレス可変指定ビット24に
0を書き込み、DRAMバイトアドレス指定用レジスタ
21に0x0508を書き込む。なお、連続するデータ
の個数、あるいは連続するデータの最終データのアドレ
スをアクセスモード指定用レジスタ23で指定できるよ
うにしておくとよい。DRAMアドレス増加/減少指定
ビット25によってインクリメント又はデクリメントさ
れる値は、予め決められている数値である。
【0028】図3は、バンク管理部5の構成を示すブロ
ック図である。バンク管理部5は、DRAMバイトアド
レス退避用レジスタ26と、DRAMワードデータ退避
用レジスタ27と、アクセスモード退避用レジスタ28
と、バンク管理用レジスタ31とを備える。
【0029】DRAMバイトアドレス退避用レジスタ2
6は、第1のアクセスポート1のDRAMバイトアドレ
ス指定用レジスタ21の値を一時的に格納しておく領域
すなわちレジスタである。DRAMワードデータ退避用
レジスタ27は、第1のアクセスポート1のDRAMワ
ードデータ読み書き用レジスタ22の値を一時的に格納
しておくレジスタである。アクセスモード退避用レジス
タ28は、第1のアクセスポート1 のアクセスモード指
定用レジスタ23の値を一時的に格納しておくレジスタ
であり、DRAMアドレス可変指定退避用ビット29と
DRAMアドレス増加/減少指定退避用ビット30とを
備える。バンク管理用レジスタ31は、3つのアクセス
ポート1、2、3の使用状況を管理し、CPU16に対
して通知する。
【0030】バンク管理部レジスタ31は、さらに、第
1のアクセスポート使用状況フラグ32、第2のアクセ
スポート使用状況フラグ33、第3のアクセスポート使
用状況フラグ34、及び優先アクセス指定ビット35を
備える。第1のアクセスポート使用状況フラグ32が0
の時は、第1のアクセスポート1が待機中であることを
意味し、第1のアクセスポート使用状況フラグ32が1
の時は、第1のアクセスポート1は使用中であることを
意味する。第2のアクセスポート使用状況フラグ33、
第3のアクセスポート使用状況フラグ34についても同
様である。優先アクセス指定ビット35は、第1のアク
セスポートにある各レジスタの情報の退避と復帰を指定
する。CPU16が優先アクセス指定ビット35に1を
書き込むと、第1のアクセスポート1のDRAMバイト
アドレス指定用レジスタ21にある情報はDRAMバイ
トアドレス退避用レジスタ26に、DRAMワードデー
タ読み書き用レジスタ22にある情報はDRAMワード
データ退避用レジスタ27に、アクセスモード指定用レ
ジスタ23にある情報はアクセスモード退避用レジスタ
28に、退避する。また、優先アクセス指定ビット35
にCPU16が0を書き込むと、DRAMバイトアドレ
ス退避用レジスタ26にある情報は第1のアクセスポー
ト1のDRAMバイトアドレス指定用レジスタ21に、
DRAMワードデータ退避用レジスタ27にある情報は
DRAMワードデータ読み書き用レジスタ22に、アク
セスモード退避用レジスタ28にある情報はアクセスモ
ード指定用レジスタ23に、復帰する。
【0031】図1、図2、及び図3を用いて、CPU1
6を制御するファームウェアがマルチタスク処理を行な
い、第1、第2、及び第3のタスクが時分割多重で実行
される状況下でのDRAM12へのアクセス動作につい
て説明する。
【0032】第1のタスクは、DRAM12の0x04
00番地から1番地おきに0x040E番地までのアド
レスにあるデータの読み込みを指示し、第2のタスク
は、DRAM12の0x0800番地から1番地おきに
減る方向に0x07F6番地までのアドレスにデータの
書き込みを指示し、第3のタスクは、DRAM12の0
x1000、0x1004、0x1004番地のアドレ
スにデータの書き込みを指示すると仮定する。タスク
は、第1、第2、第3の順序で実行され、3つのアクセ
スポートは、第1、第2、第3の順序で使用されるとす
る。また、DRAMアドレス可変指定ビット24に1が
書き込まれた場合、アドレスは2つずつ変化するものと
する。
【0033】まず、第1のタスクは、バンク管理部5の
バンク管理用レジスタ31を読みとり、すべてのアクセ
スポートが使用可能であることを認識する。第1のタス
クは、第1のアクセスポート使用状況フラグ32に1を
書き込むことによって、第1のアクセスポートが使用中
になったことを記録し、次に、第1のアクセスポート1
のDRAMアドレス可変指定ビット24に1を、DRA
Mアドレス増加/減少指定ビットに1をそれぞれ書き込
み、DRAMバイトアドレス指定用レジスタに21に0
x0400を書き込み、DRAMワードデータ読み書き
用レジスタ22を読みだして、所望のデータを得る。第
1のタスクが0x0400番地、0x0402番地、0
x0404番地のデータを読みとったときに、第2のタ
スクに制御が移ると、第1のタスクは一時中断される。
【0034】第2のタスクは、バンク管理用レジスタ3
1を読みとり、第2及び第3のアクセスポート2、3が
使用可能であることを認識する。第2のタスクは、第2
のアクセスポート使用状況フラグ33に1を書き込んだ
後、第2のアクセスポート2のDRAMアドレス可変指
定ビット24に1を、DRAMアドレス増加/減少指定
ビット25に0をそれぞれ書き込み、DRAMバイトア
ドレス指定用レジスタ21に0x0800を書き込み、
DRAMワードデータ読み書き用レジスタ22にデータ
を書き込むと、DRAMワードデータ読み書き用レジス
タ22に書き込まれたデータがDRAM12の所望の番
地に書き込まれる。第2のタスクが0x0800番地と
0x07FE番地にデータを書き込んだときに、第3の
タスクに制御が移ると、第2のタスクは一時中断され
る。
【0035】第3のタスクは、バンク管理用レジスタ3
1を読みとり、第3のアクセスポートが使用可能である
ことを認識する。第3のタスクは、第3のアクセスポー
ト使用状況フラグ34に1を書き込んだ後、第3のアク
セスポート3のDRAMアドレス可変指定ビット24に
1を、DRAMアドレス増加/減少指定ビット25に1
をそれぞれ書き込み、DRAMバイトアドレス指定用レ
ジスタ21に0x1000を書き込み、DRAMワード
データ読み書き用レジスタ22にデータを書き込むと、
DRAMワードデータ読み書き用レジスタ22に書き込
まれたデータがDRAM12の所望の番地に書き込まれ
る。0x1000番地と0x1002番地にデータが書
き込まれたときに、第3のタスクから第1のタスクに制
御が移ると、第3のタスクは一時中断される。
【0036】第1のタスクは、0x0406番地から読
み出しを再開し、0x0408番地、0x040A番
地、0x040C番地、0x040E番地のデータを読
み取って、データの読みとりを終了する。続いて、第1
のアクセスポート使用状況フラグ32に0を書き込むこ
とで、第1のアクセスポートが待機中になったことを記
録し、第1のアクセスポート1を解放する。
【0037】次に、第2のタスクに制御が移り、第2の
タスクは、第2のアクセスポート2のDRAMワードデ
ータ読み書き用レジスタ22に残りのデータ、つまり0
x07FC番地、0x07FA番地、0x07F8番
地、0x07F6番地に書き込むためのデータを書き込
む。DRAMワードデータ読み書き用レジスタ22に書
き込まれたデータがDRAM12の所望の番地に書き込
まれると、第2のタスクによるデータの書き込みは終了
する。続いて、第2のアクセスポート使用状況フラグ3
3に0を書き込み、第2のアクセスポート2を解放す
る。
【0038】次に、第3のタスクに制御が移り、第3の
タスクは、第3のアクセスポート3のDRAMワードデ
ータ読み書き用レジスタ22に残りのデータ、つまり、
0x1004番地に書き込むためのデータを書き込む。
DRAMワードデータ読み書き用レジスタ22に書き込
まれたデータがDRAM12の0x1004番地に書き
込まれると、第3のタスクによるデータの書き込みは終
了する。続いて、第3のアクセスポート使用状況フラグ
34に0を書き込み、第3のアクセスポート3を解放す
る。
【0039】図1、図2、及び図3を用いて、CPU1
6を制御するファームウェアがマルチタスク処理を行な
い、第1、第2、及び第3のタスクが時分割多重で実行
される状況下で、第1、第2、及び第3のタスクが、そ
れぞれ第1、第2、及び第3のアクセスポート1、2、
3を使用している途中で、割り込み処理Dが起動され、
DRAM12にアクセスしようとした場合の動作につい
て説明する。
【0040】割り込み処理Dは、バンク管理用レジスタ
31を読みとって、3つのアクセスポートが全て使用中
であることを認識し、優先アクセス指定ビット35に1
を書き込む。優先アクセス指定ビット35の指定を受け
て、第1のアクセスポート1の各レジスタ21、22、
23に書き込まれた情報は、バンク管理部5の対応する
退避用レジスタ26、27、28にそれぞれ退避する。
割り込み処理Dは、空になった第1のアクセスポート1
を用いて、DRAM12にアクセスし、アクセスが終了
すると、優先アクセス指定ビット35に0を書き込む。
優先アクセス指定ビット35の指定を受けて、バンク管
理部5の各退避用レジスタ26、27、28に退避した
情報は、第1のアクセスポート1の対応するレジスタ2
1、22、23にそれぞれ復帰する。
【0041】本実施の形態1によるアクセス制御装置
は、上記説明のように、アクセス制御回路10として、
DRAM12のあるLSI11上に設けられているが、
アクセス制御回路10は、上述したように複雑な構成で
はないので、小規模な回路で作製できる。
【0042】また、アクセス制御回路10が、CPU1
6のDRAM12へのアクセスを直接管理するので、フ
ァームウェアでDRAMへのアクセスを制御する特開平
2−253440号公報の装置に比べて、ファームウェ
アの記述が単純になり、CPU処理の負荷が軽減され
る。また、アクセスポートが複数あるので、退避機能を
備えているがアクセスポートが1つの従来例よりも、タ
スクの切り替わりの回数が減り、故に効率よくタスクを
処理でき、CPU処理負荷が減る。
【0043】さらに、アクセス制御回路10は退避用レ
ジスタを備えているので、アクセスポートがすべて使用
中のときに、割り込み処理があっても、使用中のアクセ
スポートの1つを退避用レジスタに退避させ、割り込み
処理を実行することができる。従って、CPUに退避用
レジスタを備えた従来例に比べ、CPU処理の負荷を軽
減できる。
【0044】本実施の形態1では、CPU16がDRA
M12にアクセスする場合について説明したが、DRA
M以外のメモリ、例えばSRAMやROMであってもよ
い。なお、ROMは、読み出し専用メモリなので、上記
のアクセス制御回路10のデータを読み込む機能を備え
たアクセス制御装置を用いればよい。
【0045】また、本実施の形態1では、アクセスポー
トを3つと、任意の1つのアクセスポートに格納された
情報を退避させるための領域すなわち退避用レジスタを
1つと、を備えたアクセス制御装置について説明した
が、アクセスポートの数と、退避用レジスタの数とは、
本実施の形態1で説明した数に限定されるものでなく、
アクセス制御装置の用途に合わせて適宜決めればよい。
【0046】
【発明の効果】以上の説明より明らかなように、本発明
のアクセス制御装置によれば、複数のアクセスポートを
備えているので、時分割多重でタスクが実行されても、
各タスクの情報は、別々のアクセスポートに書き込まれ
ているので、アクセスするアドレスや、読み込んだり書
き込んだりするデータを誤ることがないという効果が得
られる。また、アクセスポートが複数なので、退避機能
を備えているがアクセスポートが1つの従来例よりも、
タスクの切り替わりの回数が減るので、効率よくタスク
を処理でき、CPU処理負荷が減るという効果が得られ
る。さらに、バンク管理部が退避用レジスタを備えてい
るので、アクセスポートがすべて使用中のときに、割り
込み処理があっても、使用中のアクセスポートの1つを
退避用レジスタに退避させ、割り込み処理を実行できる
という効果が得られる。
【0047】また、アクセスポートの使用状況とアクセ
スポートに書き込まれた情報の退避及び復帰を小規模の
回路で制御しているので、ファームウェアの記述が単純
になり、CPUの負荷を軽減することができるという有
利な効果が得られる。
【図面の簡単な説明】
【図1】本発明の実施の形態1によるアクセス制御装置
の構成の概略を示すブロック図である。
【図2】第1、第2、及び第3のアクセスポート1、
2、3の各々に共通する構成を示すブロック図である。
【図3】バンク管理部5の構成を示すブロック図であ
る。
【図4】従来のアクセス制御装置の構成を概略して示す
ブロック図である。
【図5】従来のアクセスポート140の構成を示すブロ
ック図である。
【符号の説明】
1 第1のアクセスポート 2 第2のアクセスポート 3 第3のアクセスポート 5 バンク管理部 10 アクセス制御回路 11 LSI 12 DRAM 13 バスアービタ 16 CPU 21 DRAMバイトアドレス指定用レジスタ 22 DRAMワードデータ読み書き用レジスタ 23 アクセスモード指定用レジスタ 24 DRAMアドレス可変指定ビット 25 DRAMアドレス増加/減少指定ビット 26 DRAMバイトアドレス退避用レジスタ 27 DRAMワードデータ退避用レジスタ 28 アクセスモード退避用レジスタ 29 DRAMアドレス可変指定退避用ビット 30 DRAMアドレス増加/減少指定退避用ビット 31 バンク管理用レジスタ 32 第1のアクセスポート使用状況フラグ 33 第2のアクセスポート使用状況フラグ 34 第3のアクセスポート使用状況フラグ 35 優先アクセス指定ビット 50 第1の処理回路 51 第2の処理回路
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平2−253440(JP,A) 特開 平4−241032(JP,A) 特開 平2−163834(JP,A) 特開 平5−61692(JP,A) 特開 昭62−20042(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 9/46 G06F 12/00 G06F 13/16

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のタスクの時分割処理と割り込み処
    理とを実行できるCPUから所定のメモリへのアクセス
    を中継するアクセス制御装置において、 上記CPUからのアクセスに関する情報をアクセス毎に
    格納する複数のアクセスポートと、 上記複数のアクセスポートの使用状況を管理し、上記使
    用状況を上記CPUに通知する管理部と、を備え、 上記CPUは、上記管理部から提供される使用状況を基
    に、上記複数のアクセスポートのうち未使用のものに、
    上記アクセスに関する情報を書き込む、ことを特徴とす
    るアクセス制御装置。
  2. 【請求項2】 請求項1記載のアクセス制御装置におい
    て、 上記管理部はさらに、 上記複数のアクセスポートがすべて使用されているとき
    に、別のタスクあるいは割り込み処理が起動された場
    合、該起動された別のタスクあるいは割り込み処理のア
    クセス要求に関する情報を、任意の1つのアクセスポー
    トに格納できるよう、該任意の1つのアクセスポートに
    格納されている情報を退避させる退避領域と、 上記起動されたタスクあるいは割り込み処理が終了する
    と、上記退避領域に退避された情報を元のアクセスポー
    トに復帰させる復帰手段と、を備えることを特徴とする
    アクセス制御装置。
  3. 【請求項3】 請求項1又は2記載のアクセス制御装置
    において、 上記アクセスポートは、各々、 上記CPUがアクセスしたい上記メモリのアドレスを指
    定するアドレス指定手段と、 上記アドレス指定手段によって指定されたアドレスから
    読み出されたデータ、あるいは上記アドレス指定手段に
    よって指定されたアドレスに書き込むためのデータを一
    時的に保持する保持手段と、 上記アドレス指定手段に指定されたアドレスをインクリ
    メントあるいはデクリメントすることを指定するアドレ
    ス可変指定手段と、を備えることを特徴とするアクセス
    制御装置。
  4. 【請求項4】 複数のタスクの時分割処理と割り込み処
    理とを実行できるCPUから、複数のアクセスポートと
    管理部とを有するアクセス制御装置を介して、所定のメ
    モリへアクセスするアクセス方法において、 上記管理部は、上記複数のアクセスポートの使用状況を
    認識し、 上記CPUは、上記管理部によって未使用であると認識
    された任意の1つのアクセスポートに、アクセスに関す
    る情報を格納し、 上記管理部は、上記任意の1つのアクセスポートへの格
    納が行われる際、上記任意の1つのアクセスポートの使
    用状況として使用中であることを上記管理部に記録し、 上記管理部は、格納された情報に基づいて、上記メモリ
    へのアクセスを行わしめ、 上記管理部は、上記アクセスが終了したのち、上記任意
    の1つのアクセスポートの使用状況として待機中である
    ことを上記管理部に記録する、ことを特徴とするアクセ
    ス方法。
  5. 【請求項5】 請求項4記載のアクセス方法において、 上記管理部は、上記複数のアクセスポートがすべて使用
    中であると認識すると、任意の1つのアクセスポートに
    格納されている情報を上記管理部に退避させ、 上記CPUは、アクセスに関する情報を上記任意の1つ
    のアクセスポートに格納し、 上記管理部は、格納された情報に基づいて、上記メモリ
    へアクセスし、 上記管理部は、上記アクセスが終了したのち、上記管理
    部に退避させられた情報を上記任意の1つのアクセスポ
    ートに復帰させる、ことを含むことを特徴とするアクセ
    ス方法。
JP01887899A 1999-01-27 1999-01-27 アクセス制御装置及びアクセス方法 Expired - Fee Related JP3525070B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP01887899A JP3525070B2 (ja) 1999-01-27 1999-01-27 アクセス制御装置及びアクセス方法
KR10-2000-7010638A KR100419682B1 (ko) 1999-01-27 2000-01-20 액세스 제어 장치 및 액세스 방법
PCT/JP2000/000265 WO2000045261A1 (fr) 1999-01-27 2000-01-20 Procede et dispositif de commande d'acces
IDW20002178A ID27388A (id) 1999-01-27 2000-01-20 Pengatur pemasukan dan metoda pemasukan
US09/647,196 US6742089B1 (en) 1999-01-27 2000-01-20 Access controller and access method for controlling access from a CPU to a memory based on use states of plural access ports
CNB008000786A CN1145101C (zh) 1999-01-27 2000-01-20 存取控制装置和存取方法
TW089101000A TW463130B (en) 1999-01-27 2000-01-21 Access control device and access method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01887899A JP3525070B2 (ja) 1999-01-27 1999-01-27 アクセス制御装置及びアクセス方法

Publications (2)

Publication Number Publication Date
JP2000222226A JP2000222226A (ja) 2000-08-11
JP3525070B2 true JP3525070B2 (ja) 2004-05-10

Family

ID=11983822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01887899A Expired - Fee Related JP3525070B2 (ja) 1999-01-27 1999-01-27 アクセス制御装置及びアクセス方法

Country Status (7)

Country Link
US (1) US6742089B1 (ja)
JP (1) JP3525070B2 (ja)
KR (1) KR100419682B1 (ja)
CN (1) CN1145101C (ja)
ID (1) ID27388A (ja)
TW (1) TW463130B (ja)
WO (1) WO2000045261A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003029967A (ja) * 2001-07-17 2003-01-31 Fujitsu Ltd マイクロプロセッサ
US20040128418A1 (en) * 2002-12-30 2004-07-01 Darren Abramson Mechanism and apparatus for SMI generation
JP4827469B2 (ja) * 2005-09-08 2011-11-30 パナソニック株式会社 キャッシュメモリ解析方法、プロセッサおよび模擬情報処理装置
JP4699858B2 (ja) * 2005-10-13 2011-06-15 シャープ株式会社 メモリ装置およびメモリ制御方法
WO2007049482A1 (ja) * 2005-10-26 2007-05-03 Pioneer Corporation 情報記録装置、情報記録方法、情報記録プログラムおよび記録媒体
US8850103B2 (en) * 2009-08-28 2014-09-30 Microsoft Corporation Interruptible NAND flash memory
JP5678962B2 (ja) * 2010-09-17 2015-03-04 コニカミノルタ株式会社 画像形成装置
CN102789439B (zh) * 2012-06-16 2016-02-10 北京忆恒创源科技有限公司 控制数据传输过程中的中断的方法与存储设备
FR3072233B1 (fr) * 2017-10-10 2020-11-27 Bull Sas Procede de generation de requetes pour la segmentation de la surveillance d'un reseau d'interconnexion et materiel associe
JP7240118B2 (ja) * 2018-09-14 2023-03-15 キヤノン株式会社 情報処理装置、その制御方法およびプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61250749A (ja) * 1985-04-30 1986-11-07 Fujitsu Ltd 主記憶アクセス制御方式
JPS6220042A (ja) * 1985-07-19 1987-01-28 Fujitsu Ltd メモリアクセスポ−ト管理装置
JP2574821B2 (ja) * 1987-12-02 1997-01-22 株式会社日立製作所 ダイレクトメモリアクセス・コントローラ
JPH02163834A (ja) * 1988-12-16 1990-06-25 Mitsubishi Electric Corp マルチ・タスク処理方式
KR940002595Y1 (ko) * 1988-12-30 1994-04-21 주식회사 금성사 Cpu보드상의 이중 포트 기억장치 회로
JP2553698B2 (ja) * 1989-03-28 1996-11-13 松下電器産業株式会社 時分割マルチタスク実行装置
US5371887A (en) * 1989-09-05 1994-12-06 Matsushita Electric Industrial Co., Ltd. Time-shared multitask execution device
JPH0415730A (ja) * 1990-04-29 1992-01-21 Fujitsu Ltd シーケンスコントローラ
US5875470A (en) * 1995-09-28 1999-02-23 International Business Machines Corporation Multi-port multiple-simultaneous-access DRAM chip
DE69628798T2 (de) * 1995-10-16 2004-04-29 Hitachi, Ltd. Verfahren zur Übertragung von Multimediadaten
US6314499B1 (en) * 1997-11-14 2001-11-06 Lucent Technologies Inc. Non-preemptive memory locking mechanism in a shared resource system
US6401176B1 (en) * 1997-11-14 2002-06-04 Agere Systems Guardian Corp. Multiple agent use of a multi-ported shared memory

Also Published As

Publication number Publication date
WO2000045261A1 (fr) 2000-08-03
CN1145101C (zh) 2004-04-07
CN1293778A (zh) 2001-05-02
US6742089B1 (en) 2004-05-25
KR20010024958A (ko) 2001-03-26
TW463130B (en) 2001-11-11
ID27388A (id) 2001-04-05
KR100419682B1 (ko) 2004-02-21
JP2000222226A (ja) 2000-08-11

Similar Documents

Publication Publication Date Title
JP2012252576A (ja) 情報処理装置、起動方法およびプログラム
JP3525070B2 (ja) アクセス制御装置及びアクセス方法
JP5131269B2 (ja) マルチプロセッシングシステム
JPH0518143B2 (ja)
JP4334312B2 (ja) 起動時間短縮演算装置およびデータロード方法
JPH1139214A (ja) マルチプロセッサシステムの共有メモリ制御方式
EP0787326B1 (en) System and method for processing of memory data and communication system comprising such system
JP2746189B2 (ja) ファイルアクセス制御システム
JP2701739B2 (ja) プロセッサの系切替え方式
JPH0635800A (ja) マイクロプロセッサ及びそれを使用したデータ処理システム
JPS5924428B2 (ja) 表示装置
JPH01195552A (ja) メモリアクセス制御方式
JP3772003B2 (ja) メモリ管理システムおよびデータ管理方法
JPH0481934A (ja) 情報処理装置
JPH08123725A (ja) ライトバック式キャッシュシステム
JP3127737B2 (ja) ディジタル信号処理装置
JPH05225055A (ja) 情報処理装置
JPH1055308A (ja) キャッシュメモリ
JPH04296954A (ja) メモリシステム
JPH09138752A (ja) 多機能拡張プロセッサ装置
JPH0512028A (ja) 初期プログラムロード(ipl)方式
JPH06161720A (ja) コンピュータシステム
JPH03142544A (ja) メモリのアクセス方式
JPH05314004A (ja) 主記憶制御・管理装置
JPS60132255A (ja) デ−タ処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040216

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080220

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090220

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100220

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100220

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110220

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees