JP4538911B2 - メモリアクセス制御装置および記憶媒体 - Google Patents
メモリアクセス制御装置および記憶媒体 Download PDFInfo
- Publication number
- JP4538911B2 JP4538911B2 JP2000182983A JP2000182983A JP4538911B2 JP 4538911 B2 JP4538911 B2 JP 4538911B2 JP 2000182983 A JP2000182983 A JP 2000182983A JP 2000182983 A JP2000182983 A JP 2000182983A JP 4538911 B2 JP4538911 B2 JP 4538911B2
- Authority
- JP
- Japan
- Prior art keywords
- burst
- access
- request
- memory
- access request
- 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
Links
Images
Description
【発明の属する技術分野】
本発明は、メモリに対するアクセスリクエストとして、いわゆるバーストアクセスリクエストに対応するメモリアクセス制御装置、およびそのメモリアクセス制御装置を制御するためのプログラムを記憶した記憶媒体に関する。
【0002】
【従来の技術】
たとえば、画像読取装置では、イメージセンサより順次得られた読取データをDRAMなどのメモリを介して画像処理する際、画像処理速度を向上するためにメモリのリード/ライト動作として、いわゆるバーストアクセスが実現されている。このバーストアクセスとは、行およびカラムからなるメモリアレイに対し、たとえば1つの行アドレスを1回指定するだけで、同じ行アドレスのデータに関して1クロックでアクセスできることを言う。
【0003】
このようなバーストアクセスは、メモリに対して読取部などから直接バーストアクセスリクエストとして要求されるが、バーストアクセスリクエスト以外にもメモリに対するアクセスリクエストがある。そして、アクセスリクエストには、他のアクセスリクエストに先んじて割り込むべきものもあり、そのため、複数のアクセスリクエストについて、優先順位の高い順に調停してリクエスト内容をメモリに対して指示するメモリアクセス制御回路が実現されている。
【0004】
【発明が解決しようとする課題】
ここで、バーストアクセスリクエストとそれ以外のアクセスリクエストが混在する場合を考えると、メモリアクセス制御回路は、バーストアクセス中であっても他のアクセスリクエストの優先順位が高いと、それに応じたリード/ライト動作を割り込ませるべくメモリに対して指示する。つまり、バーストアクセスによっては、リード/ライト動作を瞬時に終えて次のアクセスに移行できるものであっても、メモリアクセス制御回路は、優先順位に従ってアクセスリクエストを調停するので、バーストアクセスが中断してメモリとの間で効率良くデータが転送されないおそれがあった。
【0005】
一方、低優先順位のバーストアクセス中に高優先順位のアクセスリクエストが発生した場合、その高優先順位のアクセスリクエストをバーストアクセスが終わるまで待たすことも考えられるが、そうすると、画像処理などのようにリアルタイム性が要求される高優先順位のアクセスリクエストによっては、システムに破綻をきたしてしまうおそれもあった。
【0006】
たとえば、カラー画像読取装置からの画像信号を処理する場合、解像度によって、バーストアクセスが非常に効率的であったり、非効率的であったりする。このような場合、他のアクセスリクエストによってバーストアクセスを中断させるか否か任意に選択できれば、非常に好都合である。
【0007】
本発明は、上記の点に鑑みて提案されたものであって、バーストアクセスリクエストに応じたアクセス動作中、それ以外のアクセスリクエストが発生してもアクセス効率の低下やシステムの破綻を招くことなく、複数のアクセスリクエストを巧みに調停することができるメモリアクセス制御装置、およびそのメモリアクセス制御装置を制御するためのプログラムを記憶した記憶媒体を提供することを目的とする。
【0008】
【課題を解決するための手段】
上記目的を達成するために、請求項1に記載した発明のメモリアクセス制御装置は、メモリに対する複数のアクセスリクエストを、優先順位の高い順に調停し、上記メモリに対してリクエスト内容を指示するリクエスト調停手段を有し、バーストアクセスリクエストに対応するメモリアクセス制御装置であって、上記バーストアクセスリクエストに応じたバーストアクセス動作中に他のアクセスリクエストが発生したときに、上記リクエスト調停手段による調停動作を可とするか不可とするかを切り替える切替手段を有することを特徴とする。
【0009】
このようなメモリアクセス制御装置によれば、バーストアクセスリクエストに応じてバーストアクセス動作中、他のアクセスリクエストが発生したときには、アクセスリクエストの調停動作を可とするか不可とするかの切り替えに応じて、バーストアクセス動作を優先させるか否かを任意に切り替えることができる。したがって、ある制御条件下においては、バーストアクセス動作中に、それよりも高優先順位のアクセスリクエストがあっても、バーストアクセスによる高速動作をそのまま続行させることもできるし、また、別の制御条件下においては、バーストアクセス動作中に、それよりも高優先順位のアクセスリクエストがあれば、バーストアクセス動作を中止して、高優先順位のアクセスリクエストを割り込ませることもでき、メモリに対するアクセス効率の低下やシステムの破綻を招くことなく、複数のアクセスリクエストを巧みに調停することができる。
【0010】
また、請求項2に記載した発明のメモリアクセス制御装置は、請求項1に記載のメモリアクセス制御装置であって、上記切替手段は、各ビットが各チャネルに対応する複数ビットのバーストロックレジスタを有し、上記バーストロックレジスタのいずれか1以上のビットが、上記リクエスト調停手段による調停動作を不可とするように設定されている場合、それら1以上のビットに対応するチャネルのうちのいずれか1以上のチャネルからバーストアクセスリクエストが発生し、そのチャネルが選択されている期間中、上記リクエスト調停手段による調停動作を不可とする。
【0011】
このようなメモリアクセス制御装置によれば、請求項1に記載のメモリアクセス制御装置による効果に加えて、バーストロックレジスタのビットに応じて、バーストアクセス動作中に他のアクセスリクエストによるアクセス動作を割り込ませるべきか否かを決定することができる。
【0012】
さらに、請求項3に記載した発明のメモリアクセス制御装置は、請求項1または2に記載のメモリアクセス制御装置であって、上記切替手段は、各ビットが各チャネルに対応する複数ビットのバーストイネーブルレジスタを有し、上記バーストイネーブルレジスタのいずれか1以上のビットが、対応するチャネルのバースト信号をマスクするように設定されている場合、それら1以上のビットに対応するチャネルのバースト信号がマスクされ、上記リクエスト調停手段による調停動作を可とする構成とする。
【0013】
このようなメモリアクセス制御装置によれば、請求項1または2に記載のメモリアクセス制御装置による効果に加えて、バースト信号をマスクするように設定できるバーストイネーブルレジスタのビットに応じて、バーストアクセス動作中に他のアクセスリクエストによるアクセス動作を割り込ませるべきか否かを決定することができる。しかも、バースト信号をマスクするように設定されたチャネルについては、バーストアクセスリクエストがあっても、シングルアクセスとして処理させるようにすることができるので、他のチャネルからのアクセスリクエストを優先的に割り込ませることが可能となる。
【0014】
また、請求項4に記載した発明の記憶媒体は、メモリに対する複数のアクセスリクエストを、優先順位の高い順に調停し、上記メモリに対してリクエスト内容を指示するリクエスト調停手段を有し、バーストアクセスリクエストに対応するメモリアクセス制御装置を制御するためのプログラムを記憶した記憶媒体であって、上記バーストアクセスリクエストに応じたバーストアクセス動作中に他のアクセスリクエストが発生したときに、上記リクエスト調停手段による調停動作を可とするか不可とするかを切り替えるための切替プログラムを含むプログラムを記憶したことを特徴とする。
【0015】
このような記憶媒体によれば、記憶されたプログラムに基づいてCPUを動作させることにより、請求項1に記載のメモリアクセス制御装置の動作を実現することができる。
【0016】
【発明の実施の形態】
以下、本発明の好ましい実施の形態について図面を参照して説明する。
【0017】
図1は、本発明に係るメモリアクセス制御装置の一実施形態として、ファクシミリ装置の構成を示したブロック図である。この図に示すように、本発明に係るファクシミリ装置は、CPU10、NCU11、RAM12、モデム13、ROM14、EEPROM15、ゲートアレイ16、コーデック17、DMAC18、読取部21、印刷部22、操作部23、および表示部24などを具備して概略構成されている。CPU10、NCU11、RAM12、モデム13、ROM14、EEPROM15、ゲートアレイ16、コーデック17、およびDMAC18は、バス線27により相互に接続されている。バス線27には、アドレスバス、データバス、および制御信号線が含まれる。ゲートアレイ16には、読取部21、印刷部22、操作部23、および表示部24が接続されている。NCU11には、公衆電話回線28が接続されている。
【0018】
CPU10は、ファクシミリ装置全体の動作を制御する。NCU11は、公衆電話回線28に接続されて網制御を行う。RAM12は、CPU10の作業領域や各種データの格納領域などを提供するメモリであって、データの読み書きを制御するRAMコントローラや、行およびカラムからなるメモリアレイを有する。このメモリアレイに対してデータを読み書きする際には、通常、後述するアクセスリクエストにより行アドレスおよびカラムアドレスが指定されるが、たとえば1つの行アドレスを1回指定するだけで、同じ行アドレスについての連続データをブロック転送して1クロックで読み書きするといった、いわゆるバーストアクセスも可能である。モデム13は、ファクシミリデータの変調や復調などを行う。ROM14は、CPU10が実行すべきプログラムや設定値などのデータを記憶している。EEPROM15は、各種のフラグや設定データなどを記憶する。ゲートアレイ16は、CPU10と各部21〜24とのインターフェースとして機能する一方、各部21〜24やCPU10などとRAM12との間でメモリアクセスを制御する機能を備える。コーデック17は、ファクシミリデータの符号化や復号化を行う。DMAC18は、直接RAM12へのデータの書き込みや読み出しを行う。
【0019】
読取部21は、イメージセンサや光源などを備え、原稿などから文字や図形などのカラー画像を読み取る。印刷部22は、たとえばインクジェット方式あるいは熱転写方式などにより、文字や図形などのカラー画像を印刷する。操作部23は、テンキーや文字キーなどのキースイッチ群を備え、使用者のキー操作に応じた指示をCPU10に伝える。表示部24は、LCDなどのディスプレイを備え、動作状態や操作ガイダンスなどを表示する。
【0020】
要点について説明すると、本ファクシミリ装置は、所定の解像度でイメージセンサより順次得られた画像データに対し、メインメモリとなるRAM12を共用してフィルタ演算などを施しながら画像処理を行うものである。このような画像処理に際しては、RAM12に対する画像データの読み書きを高速としてメモリのアクセスタイムを向上するため、先述したようにバーストアクセスが行われる。このようなバーストアクセスは、読取部21から直接バーストアクセスリクエストとして要求されるだけでなく、CPU10などからも要求される。また、アクセスリクエストの発生中に他のアクセスリクエストが発生する場合があり、そのため、本ファクシミリ装置では、これらのアクセスリクエストが複数発生した場合に対処すべく、優先順位の高い順に調停してリクエスト内容をRAM12に対して指示するための回路がゲートアレイ16に構築されている。
【0021】
図2は、アクセスリクエストを優先順に調停する回路を示したブロック図であって、この図に示すプライオリティエンコーダ16Aは、サンプリング信号生成回路16Bから出力されるサンプリング信号sample_enbに応じて、複数の機能ch1〜ch3より要求されるアクセスリクエストreq1〜req3を優先順に調停する(ここでは、一例として、機能ch1の順位が最も高く、ついで、機能ch2の順位が2番目に高く、機能ch3の順位が最も低く設定されている場合について説明するが、これらの優先順位は固定的なものであっても、あるいは、異なる制御条件下において順位が適宜変更されるものであってもよい)といった、いわゆるチャネル選択回路として中心的機能を果たす。サンプリング信号生成回路16Bは、プライオリティエンコーダ16Aによる調停動作を許可する場合、イネーブル信号としてサンプリング信号sample_enbをハイレベルで出力するが、サンプリング信号sample_enbの出力レベルは、バーストイネーブルレジスタ16Cおよびバーストロックレジスタ16Dに設定されたビットch(n)bst_enb,ch(n)bst_lockに依存する。要するに、RAMコントローラ12Aに対してバーストアクセスを要求中には、バーストイネーブルレジスタ16Cやロックレジスタ16Dのビットch(n)bst_enb,ch(n)bst_lockに応じて、他のアクセスリクエストによる割り込みを禁止するか否かを切り替えることができる。割り込みを禁止する場合には、サンプリング信号生成回路16Bからサンプリング信号sample_enbがローレベルで出力され、プライオリティエンコーダ16Aによる調停動作が不可とされるのである。
【0022】
バーストロックレジスタ16Dとは、各機能(チャネル)に対応した複数のビットを有し、各チャネルからアクセスリクエストreq1〜req3がある場合、それぞれをバーストアクセスリクエストとして単独動作させるか否かを0,1のビットch1bst_lock〜ch3bst_lockで設定するための置数器である。たとえば、アクセスリクエストreq3がbst3=「1」のバーストアクセスリクエストとして発生中であって、それに対応するバーストロックレジスタ16Dのビットch3bst_lockが「1」に設定された場合、サンプリング信号生成回路16Bからは、サンプリング信号sample_enbがローレベルで出力されることで、プライオリティエンコーダ16Aによる調停動作が禁止される。つまり、この場合には、アクセスリクエストreq3によるバーストアクセスが単独動作とされ、これよりも順位の高い他のアクセスリクエストreq1,req2による割り込みが禁止されるのである。
【0023】
逆に、たとえば、アクセスリクエストreq3がbst3=「1」のバーストアクセスリクエストとして発生中であっても、それに対応するバーストロックレジスタ16Dのビットch3bst_lockが「0」の場合、サンプリング信号生成回路16Bからは、サンプリング信号sample_enbがハイレベルで出力され、プライオリティエンコーダ16Aによる調停動作が許可されることから、これよりも順位の高い他のアクセスリクエストreq1,req2による割り込みが可能とされる。
【0024】
一方、バーストイネーブルレジスタ16Cとは、各機能(チャネル)に対応した複数のビットを有し、各チャネルからのアクセスリクエストreq1〜req3をバーストアクセスリクエストとしてマスクするか否かを0,1のビットch1bst_enb〜ch3bst_enbで設定しておくための置数器である。たとえば、アクセスリクエストreq3に関するbst3=「1」のバーストアクセスリクエストをマスクする場合、バーストイネーブルレジスタ16Cのビットch3bst_enbには、「0」が設定される。そして、そのビットch3bst_enbとバースト信号bst3とが論理積ゲート16Eを介して演算され、ローレベルの出力信号ch3bstがサンプリング信号生成回路16Bに供給される。すると、ch3bst_lockの状態に関わらず、サンプリング信号生成回路16Bからサンプリング信号sample_enbがハイレベルで出力されることで、プライオリティエンコーダ16Aによる調停動作が可とされる。つまり、この場合には、ch3bst_lockが「1」であっても、他のアクセスリクエストreq1,req2による割り込みが許可されるのである。
【0025】
逆に、たとえばアクセスリクエストreq3をマスクしない場合、バーストイネーブルレジスタ16Cのビットch3bst_enbには、「1」が設定され、そのビットch3bst_enbとバースト信号bst3とが論理積ゲート16Eを介して演算される結果、バースト信号bst3がそのまま出力信号ch3bstとしてサンプリング信号生成回路16Bに供給される。すると、サンプリング信号生成回路16Bから出力されるサンプリング信号sample_enbのレベルは、ch3bst_lockの状態に依存して決定される。
【0026】
なお、図2には図示していないが、プライオリティエンコーダ16Aには、論理積ゲート16Eから出力信号ch1bst〜ch3bstが供給されるようになっており、これによって、プライオリティエンコーダ16Aは、各チャネルからアクセスリクエストreq1〜req3があった場合、対応する出力信号ch1bst〜ch3bstがローレベルであると、各チャネルからのアクセス要求がバーストアクセスであったとしても、シングルアクセスとなるように調停動作を行うようになっている。
【0027】
すなわち、プライオリティエンコーダ16Aは、メモリ(RAM12)に対する複数のアクセスリクエストを、優先順位の高い順に調停し、メモリに対してリクエスト内容を指示するリクエスト調停手段を実現している。また、バーストイネーブルレジスタ16Cおよびバーストロックレジスタ16Dを含むサンプリング信号生成回路16Bは、バーストアクセスリクエストに応じたバーストアクセス動作中に他のアクセスリクエストが発生したときに、上記リクエスト調停手段による調停動作を可とするか不可とするかを切り替える切替手段を実現している。
【0028】
なお、上記の手段は、CPU10の一部機能としても実現することができ、その場合、ROM14は、メモリに対する複数のアクセスリクエストを、優先順位の高い順に調停し、上記メモリに対してリクエスト内容を指示するリクエスト調停手段を有し、バーストアクセスリクエストに対応するメモリアクセス制御装置を制御するためのプログラムを記憶した記憶媒体であって、上記バーストアクセスリクエストに応じたバーストアクセス動作中に他のアクセスリクエストが発生したときに、上記リクエスト調停手段による調停動作を可とするか不可とするかを切り替えるための切替プログラムを含むプログラムを記憶した記憶媒体を実現する。
【0029】
さらに詳しく説明するために、サンプリング信号生成回路16Bの構成を図3の回路図に示す。なお、この図においては、主としてバーストロックレジスタ16Dのビットch1bst_lock〜ch3bst_lockを処理するための回路を示す。
【0030】
図3に示すように、サンプリング信号生成回路16Bは、バーストロックレジスタ16Dの各ビットch1bst_lock〜ch3bst_lockに対応するロックフラグ生成部16Ba〜16Bc、入力段の論理積ゲート16Bd〜16Bf、中段のNORゲート16Bh、論理和ゲート16Bi、ならびに出力段の論理和ゲート16Bjなどを有して構成される。各ロックフラグ生成部16Ba〜16Bcには、先述したアクセスリクエストreq1〜req3、論理積ゲート16Eの出力信号ch1bst〜ch3bst、バーストロックレジスタ16Dのビットch1bst_lock〜ch3bst_lockのほか、RAMコントローラ12Aにより選択中のアクセスリクエストに対応したリクエスト選択信号sel_ch1〜sel_ch3や、それに対するRAMコントローラ12Aからの応答信号ackが入力される。ロックフラグ生成部16Ba〜16Bcは、それぞれフリップフロップを含む論理回路で構成されたものであって、一定周期(図4,5に波線で示す周期)のクロック信号をもとに所定の演算動作(リクエスト選択信号sel_ch1〜sel_ch3と関連したタイミングで、バーストロックされたときには「1」となり、ロックされないときには「0」となるロックフラグを生成する動作)を行い、その演算結果をロックフラグch1_lock〜ch3_lockとして出力する。各ロックフラグch1_lock〜ch3_lockは、中段のNORゲート16Bhに入力される。このNORゲート16Bhの出力端は、出力段の論理和ゲート16Bjの入力端に接続され、出力段の論理和ゲート16Bjからは、出力レベルが0,1に対応するサンプリング信号sample_enbが出力される。
【0031】
一方、入力段の各論理積ゲート16Bd〜16Bfには、先の論理積ゲート16Eからの出力信号ch1bst〜ch3bstが反転入力されるほか、リクエスト選択信号sel_ch1〜sel_ch3および応答信号ackが入力される。これらの論理積ゲート16Bd〜16Bfの各出力端は、中段の論理和ゲート16Biの入力端に接続されているとともに、この論理和ゲート16Biの出力端は、出力段の論理和ゲート16Bjの入力端に接続されている。つまり、ch1〜ch3に対応した各ロックフラグ生成部16Ba〜16Bcから出力されるロックフラグch1_lock〜ch3_lockがすべて「0」である場合、または、入力段の各論理積ゲート16Bd〜16Bfから出力される信号のいずれかが「1」である場合に限り、サンプリング信号sample_enbが「1」として出力され、プライオリティエンコーダ16Aによりアクセスリクエストreq1〜req3が調停される。
【0032】
簡単に言えば、バーストロックレジスタ16Dの対応するビットch1bst_lock〜ch3bst_lockに「1」が設定されたバーストアクセスリクエストreq1〜req3については、プライオリティエンコーダ16Aによる調停動作が不可とされ、他のアクセスリクエストによる割り込みが禁止される。逆に「0」が設定されたバーストアクセスリクエストreq1〜req3については、プライオリティエンコーダ16Aによる調停動作が可能とされ、他のアクセスリクエストによる割り込みが許可されるのである。もちろん、バーストイネーブルレジスタ16Cによってバースト信号bst1〜bst3のいずれか1以上がマスクされている場合、マスクされたチャネルについては、バーストロックレジスタ16Dに「1」が設定されていても、割り込みが許可されることになる。
【0033】
図4および図5は、アクセスリクエストreq1〜req3を調停する際に入出力される各種信号のタイミングを示したタイムチャートである。なお、各図は、主としてバーストロックレジスタ16Dの各ビットch1bst_lock〜ch3bst_lockに応じたタイミングを示し、特に図4は、各ビットch1bst_lock〜ch3bst_lockがすべて「1」の場合、一方、図5は、ch3に対応するビットch3bst_lockのみが「0」の場合を示す。また、各図に示すタイミング中においては、バーストイネーブルレジスタ16Cの各ビットch1bst_enb〜ch3bst_enbがすべて「1」に設定された状態とし、したがって、論理積ゲート16Eの出力信号ch1bst〜ch3bstは、バーストアクセスリクエストに該当する場合に「1」として出力されるバースト信号bst1〜bst3のそれぞれと同値で示されるものとする。さらに、応答信号ackは、RAMコントローラ12Aにより各アクセスリクエストreq1〜req3が認められたときにハイレベルとなり、メモリアクセス不可などの状態に応じてローレベルとなるが、応答信号ackと各アクセスリクエストreq1〜req3との対応関係を明らかにするために、図中に番号を付記するとともに、説明においては、その番号をパーレン括弧中に示す。
【0034】
まず、図4に示すように、バーストアクセスリクエスト(1〜4)req2が発生し、それに対応するバーストロックレジスタ16Dのビットch2bst_lockが「1」の場合、サンプリング信号sample_enbがローレベルとなってプライオリティエンコーダ16Aによる調停動作が不可とされる。その一方、論理積ゲート16Eの出力信号ch2bstに遅れてプライオリティエンコーダ16Aからは、バーストアクセスリクエスト(1〜4)req2を選択した状態を示す選択信号sel_ch2が出力される。
【0035】
それとともに、サンプリング信号生成回路16Bのch2に対応したロックフラグ生成部16Bbからは、ロックフラグch2_lockが「1」として出力される。
【0036】
これにより、サンプリング信号生成回路16Bは、他のアクセスリクエストreq1,req3の割り込みを禁止すべく、サンプリング信号sample_enbをローレベルで出力する。
【0037】
次に、プライオリティエンコーダ16Aからは、バーストアクセスリクエスト(5〜7)req3を選択した状態を示す選択信号sel_ch3が出力されるとともに、サンプリング信号生成回路16Bのch3に対応したロックフラグ生成部16Bcからは、ロックフラグch3_lockが「1」として出力され、RAMコントローラ12Aの応答信号ackに応じてバーストアクセスリクエスト(5〜7)req3が受け付けられる。すなわち、バーストアクセスリクエスト(4)req2の段階では、当該バーストアクセスリクエスト動作の最後であることから、出力信号ch2bstがローレベルとなるのに伴って、サンプリング信号sample_enbがハイレベル(応答信号ackがハイレベルであることが条件である)となり、次のクロック信号のタイミングで調停動作が可能となる。これにより、アクセスリクエスト(4)req2が終了すると同時に、選択信号sel_ch2に代わって、選択信号sel_ch3が選択され、バーストアクセスリクエスト(5)req3が受け付けられる。
【0038】
一方、同図に一例として示すように、バーストアクセスに該当しないアクセスリクエスト(12)req2の発生中に、他のバーストアクセスリクエスト(8〜11)req1が重複して発生した場合、プライオリティエンコーダ16Aは、上記とは異なり他のバーストアクセスリクエスト(8〜11)req1を優先する。つまり、この場合には、優先順位の高いバーストアクセスリクエストreq1(8〜11)がプライオリティエンコーダ16Aを介してRAMコントローラ12Aにより選択され、それに応じた応答信号(8〜11)ackが出力されるのである。
【0039】
そして、待ち状態とされたアクセスリクエスト(12)req2は、バーストアクセスリクエストreq1(8〜11)の次にプライオリティエンコーダ16Aを介してRAMコントローラ12Aにより選択され、それに応じた応答信号(12)ackが出力されることとなる。
【0040】
さらに、同図に一例として示すように、バーストアクセスに該当しないアクセスリクエスト(17,22)req2の発生中に、他のバーストアクセスリクエスト(18〜21)req1が発生した場合、プライオリティエンコーダ16Aは、上記と同様に他のバーストアクセスリクエスト(18〜21)req1を優先する。この場合、プライオリティエンコーダ16Aは、応答信号(17〜22)ackで示されるように、アクセスリクエスト(17)req2を既に優先させていることから、そのアクセスリクエスト(17)req2を中断させた後、他のバーストアクセスリクエスト(18〜21)req1を割り込ませ、その後、再びバーストアクセスリクエスト(22)req2を選択している。
【0041】
図5は、バーストアクセスリクエストreq3に対応してバースト信号bst3が「1」として出力されるが、バーストロックレジスタ16Dのビットch3bst_lockが常に「0」とされているために、ロックフラグch3_lockも常に「0」として出力される状態を示したものである。
【0042】
この場合、同図に一例として示すように、バースト信号bst3を「1」としたバーストアクセスリクエスト(5,14)req3の発生中に、他のバーストアクセスリクエスト(6〜10)req2,(11〜13)req1が発生した場合であれば、プライオリティエンコーダ16Aは、サンプリング信号sample_enbが「1」となる出力レベルに応じて、他のバーストアクセスリクエスト(6〜10)req2,(11〜13)req1を割り込ませる。
【0043】
要するに、各図に示すタイムチャートから言えることは、少なくともロックフラグch1_lock〜ch3_lockがすべて「0」である期間中、サンプリング信号sample_enbが「1」となり、プライオリティエンコーダ16Aによる調停動作が可能とされるのである。
【0044】
したがって、上記構成、動作を有するファクシミリ装置によれば、バーストアクセスリクエストreq1〜req3に応じてバーストアクセス動作中、他のアクセスリクエストが発生したときには、各レジスタ16C,16Dのビット設定に応じて、現時点のバーストアクセス動作を優先させるか否かを任意に切り替えることができる。したがって、ある制御条件下においては、バーストアクセス動作中に、それよりも高優先順位のアクセスリクエストがあっても、バーストアクセスによる高速動作をそのまま続行させることもできるし、また、別の制御条件下においては、バーストアクセス動作中に、それよりも高優先順位のアクセスリクエストがあれば、バーストアクセス動作を中止して、高優先順位のアクセスリクエストを割り込ませることもでき、メモリに対するアクセス効率の低下やシステムの破綻を招くことなく、複数のアクセスリクエストreq1〜req3を巧みに調停することができる。
【0045】
なお、本発明は、上記の実施形態に限定されるものではない。
【0046】
たとえば、メモリアクセス制御装置としては、ファクシミリ装置に限らず、パーソナルコンピュータの周辺機器や、パーソナルコンピュータそのものであっても良い。
【0047】
アクセスリクエストの数は、上記実施形態で示した数に限らず、2以上であれば本発明を適用できる。
【0048】
バーストイネーブルレジスタ16Cおよびバーストロックレジスタ16Dは、必ずしもすべての機能(チャネル)に対応して設けなくても良く、すなわち、必要な機能に対応するビットのみを設ければ良い。また、バーストイネーブルレジスタ16C、バーストロックレジスタ16Dのいずれか一方が設けられた構成であっても良い。
【0049】
【発明の効果】
以上説明したように、請求項1に記載した発明のメモリアクセス制御装置によれば、バーストアクセスリクエストに応じてバーストアクセス動作中、他のアクセスリクエストが発生したときには、アクセスリクエストの調停動作を可とするか不可とするかの切り替えに応じて、バーストアクセス動作を優先させるか否かを任意に切り替えることができる。したがって、ある制御条件下においては、バーストアクセス動作中に、それよりも高優先順位のアクセスリクエストがあっても、バーストアクセスによる高速動作をそのまま続行させることもできるし、また、別の制御条件下においては、バーストアクセス動作中に、それよりも高優先順位のアクセスリクエストがあれば、バーストアクセス動作を中止して、高優先順位のアクセスリクエストを割り込ませることもでき、メモリに対するアクセス効率の低下やシステムの破綻を招くことなく、複数のアクセスリクエストを巧みに調停することができる。
【0050】
また、請求項2に記載した発明のメモリアクセス制御装置によれば、請求項1に記載のメモリアクセス制御装置による効果に加えて、バーストロックレジスタのビットに応じて、バーストアクセス動作中に他のアクセスリクエストによるアクセス動作を割り込ませるべきか否かを決定することができる。
【0051】
さらに、請求項3に記載した発明のメモリアクセス制御装置によれば、請求項1または2に記載のメモリアクセス制御装置による効果に加えて、バースト信号をマスクするように設定できるバーストイネーブルレジスタのビットに応じて、バーストアクセス動作中に他のアクセスリクエストによるアクセス動作を割り込ませるべきか否かを決定することができる。しかも、バースト信号をマスクするように設定されたチャネルについては、バーストアクセスリクエストがあっても、シングルアクセスとして処理させるようにすることができるので、他のチャネルからのアクセスリクエストを優先的に割り込ませることが可能となる。
【0052】
また、請求項4に記載した発明の記憶媒体によれば、記憶されたプログラムに基づいてCPUを動作させることにより、請求項1に記載のメモリアクセス制御装置の動作を実現することができる。
【図面の簡単な説明】
【図1】本発明に係るメモリアクセス制御装置の一実施形態として、ファクシミリ装置の構成を示したブロック図である。
【図2】アクセスリクエストを優先順に調停する回路を示したブロック図である。
【図3】サンプリング信号生成回路の構成を示した回路図である。
【図4】アクセスリクエストを調停する際に入出力される各種信号のタイミングを示したタイムチャートである。
【図5】アクセスリクエストを調停する際に入出力される各種信号のタイミングを示したタイムチャートである。
【符号の説明】
10 CPU
11 NCU
12 RAM
13 モデム
14 ROM
15 EEPROM
16 ゲートアレイ
16A プライオリティエンコーダ
16B サンプリング信号生成回路
16C バーストイネーブルレジスタ
16D バーストロックレジスタ
17 コーデック
18 DMAC
21 読取部
22 印刷部
23 操作部
24 表示部
Claims (4)
- メモリに対する複数のアクセスリクエストを、優先順位の高い順に調停し、上記メモリに対してリクエスト内容を指示するリクエスト調停手段を有し、バーストアクセスリクエストに対応するメモリアクセス制御装置であって、
上記バーストアクセスリクエストに応じたバーストアクセス動作中に他のアクセスリクエストが発生したときに、上記リクエスト調停手段による調停動作を可とするか不可とするかを切り替える切替手段を有することを特徴とするメモリアクセス制御装置。 - 上記切替手段は、各ビットが各チャネルに対応する複数ビットのバーストロックレジスタを有し、
上記バーストロックレジスタのいずれか1以上のビットが、上記リクエスト調停手段による調停動作を不可とするように設定されている場合、それら1以上のビットに対応するチャネルのうちのいずれか1以上のチャネルからバーストアクセスリクエストが発生し、そのチャネルが選択されている期間中、上記リクエスト調停手段による調停動作を不可とする、請求項1に記載のメモリアクセス制御装置。 - 上記切替手段は、各ビットが各チャネルに対応する複数ビットのバーストイネーブルレジスタを有し、
上記バーストイネーブルレジスタのいずれか1以上のビットが、対応するチャネルのバースト信号をマスクするように設定されている場合、それら1以上のビットに対応するチャネルのバースト信号がマスクされ、上記リクエスト調停手段による調停動作を可とする構成とした、請求項1または2に記載のメモリアクセス制御装置。 - メモリに対する複数のアクセスリクエストを、優先順位の高い順に調停し、上記メモリに対してリクエスト内容を指示するリクエスト調停手段を有し、バーストアクセスリクエストに対応するメモリアクセス制御装置を制御するためのプログラムを記憶した記憶媒体であって、
上記バーストアクセスリクエストに応じたバーストアクセス動作中に他のアクセスリクエストが発生したときに、上記リクエスト調停手段による調停動作を可とするか不可とするかを切り替えるための切替プログラムを含むプログラムを記憶したことを特徴とする記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000182983A JP4538911B2 (ja) | 2000-06-19 | 2000-06-19 | メモリアクセス制御装置および記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000182983A JP4538911B2 (ja) | 2000-06-19 | 2000-06-19 | メモリアクセス制御装置および記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002007203A JP2002007203A (ja) | 2002-01-11 |
JP4538911B2 true JP4538911B2 (ja) | 2010-09-08 |
Family
ID=18683634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000182983A Expired - Fee Related JP4538911B2 (ja) | 2000-06-19 | 2000-06-19 | メモリアクセス制御装置および記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4538911B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0122401D0 (en) * | 2001-09-17 | 2001-11-07 | Ttp Communications Ltd | Interfacing processors with external memory |
JP5145929B2 (ja) * | 2007-03-08 | 2013-02-20 | 株式会社リコー | 半導体集積回路及び画像処理装置 |
JP4715801B2 (ja) * | 2007-04-26 | 2011-07-06 | 日本電気株式会社 | メモリアクセス制御装置 |
-
2000
- 2000-06-19 JP JP2000182983A patent/JP4538911B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002007203A (ja) | 2002-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4480427B2 (ja) | リソース管理装置 | |
JP4538911B2 (ja) | メモリアクセス制御装置および記憶媒体 | |
JPH08123634A (ja) | プログラム可能な裁定装置 | |
KR100899514B1 (ko) | 버스트 모드를 지원하는 외부 메모리에 프로세서를 인터페이스하는 방법 | |
JP4175974B2 (ja) | 画像データ転送制御装置 | |
JP3714840B2 (ja) | データ転送方法とデータ転送制御装置 | |
JP2004118300A (ja) | Dmaコントローラ | |
JP4468754B2 (ja) | 画像形成装置及びメモリ制御方法 | |
KR100190184B1 (ko) | 직렬버스를 통해 데이타를 송신하는 회로 | |
JP4150953B2 (ja) | 情報処理装置 | |
JP4560398B2 (ja) | データ処理回路 | |
KR940005003Y1 (ko) | 직접 메모리 억세스 시스템 | |
JP2008027353A (ja) | Dma制御方法及びdmaコントローラ | |
JP2004118298A (ja) | データ処理制御装置 | |
JP2002024157A (ja) | Dma処理方法およびdma処理装置 | |
JP2000148576A (ja) | ファイル管理システム | |
JP2005352666A (ja) | Dmaコントローラ及びdma制御方法 | |
JP2000168171A (ja) | 印刷装置及びその制御方法 | |
JP2000141781A (ja) | 画像生成装置及びその制御方法及び印刷装置 | |
JPH05113948A (ja) | データ転送装置 | |
JPH0764900A (ja) | Dmaデータ転送方式 | |
JP2005157962A (ja) | 記憶装置へのアクセス調停装置および画像形成装置 | |
KR20030039185A (ko) | 직접 메모리 접근 컨트롤러 | |
JPS60142756A (ja) | 時分割多重メモリバンク制御方式 | |
JP2005100247A (ja) | Dmaコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070410 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100601 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100614 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4538911 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130702 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |