JP2012113452A - 非同期fifo間順序制御回路、データ処理装置及びそれらに用いる非同期fifo間順序制御方法 - Google Patents

非同期fifo間順序制御回路、データ処理装置及びそれらに用いる非同期fifo間順序制御方法 Download PDF

Info

Publication number
JP2012113452A
JP2012113452A JP2010260739A JP2010260739A JP2012113452A JP 2012113452 A JP2012113452 A JP 2012113452A JP 2010260739 A JP2010260739 A JP 2010260739A JP 2010260739 A JP2010260739 A JP 2010260739A JP 2012113452 A JP2012113452 A JP 2012113452A
Authority
JP
Japan
Prior art keywords
request
asynchronous fifo
asynchronous
fifo
order
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.)
Granted
Application number
JP2010260739A
Other languages
English (en)
Other versions
JP5305472B2 (ja
Inventor
Kosuke Nishimura
公介 西村
Yasuhiko Saito
靖彦 斎藤
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.)
NEC Platforms Ltd
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
NEC AccessTechnica 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
Application filed by Renesas Electronics Corp, NEC AccessTechnica Ltd filed Critical Renesas Electronics Corp
Priority to JP2010260739A priority Critical patent/JP5305472B2/ja
Publication of JP2012113452A publication Critical patent/JP2012113452A/ja
Application granted granted Critical
Publication of JP5305472B2 publication Critical patent/JP5305472B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Abstract

【課題】 実装面積を抑えた上で、入力された要求の処理順序を効率的に組み替えることが可能なデータ処理装置を提供する。
【解決手段】 データ処理装置は、第1のクロック信号に同期して動作するインタフェース(11)と、それとは異なる第2のクロック信号に同期して動作する記憶装置制御回路(16)とを備え、第1及び第2のクロック信号の非同期クロック間において要求を受け渡すための非同期FIFO[優先度が高く先行する要求を追い越すことが可能な要求を格納するための第1の非同期FIFO(13)、優先度が低く先行する要求を追い越すことが不可能な要求を格納するための第2の非同期FIFO(14)]と、強制されるべきオーダー関係を管理するための情報を付与する書込み制御手段(12)と、強制されるべきオーダー関係を考慮した上で効率的に処理順序を組み替える読出し制御手段(15)とを有する。
【選択図】 図1

Description

本発明は非同期FIFO間順序制御回路、データ処理装置及びそれらに用いる非同期FIFO間順序制御方法に関し、特に並列接続された非同期FIFO(First−In First−Out)間の順序制御に関する。
近年、マイクロプロセッサの動作クロック速度向上に対して、その周辺装置として接続される記憶装置の動作クロック速度向上が遅れ、処理速度の乖離が広がっている。このため、階層型メモリ構造の導入、ノンブロッキングバスアクセス技術の導入等により可能な限りマイクロプロセッサの動作を高効率に維持するための努力が行われている。
その中で、記憶装置の制御回路においても、高スループットかつ低レイテンシな非同期回路構成と、読出し要求の優先処理によるマイクロプロセッサ視点での低レイテンシ化が求められている。
下記の特許文献1では、単純に要求間のオーダーを管理し、さらに非同期FIFOによる非同期通信を行うために、非同期FIFOの手前に複数の同期バッファを配置し、単一のクロックドメイン内でオーダーを決定した上で非同期FIFOへ順番に要求を入力している。しかしながら、コスト競争のために、回路規模を大幅に増やしてしまうバッファ類の実装は可能な限り少なく抑え、実装面積を削減することも同時に求められている。
特開2007−065948号公報
記憶装置制御を伴うデータ処理装置に対しては、マスタ装置から書込み要求と読出し要求とがインタフェース回路へと入力される。高い処理性能を求められるシステムの場合、マスタ装置は、複数の要求を先行要求の完了・未完了に関わらず連続発行可能であるのに対して、単位時間あたりのデータ処理装置の処理能力は、マスタ装置の要求発行能力を下回る。
この時、データ処理装置は、書込み要求に限って要求を受け付けた時点で、その書込み要求の処理完了をマスタ装置へと通知するポステッド・ライト動作を行う場合が多い。このため、マスタ装置の立場としては、データ処理装置に対して可能な限り読出し要求を優先して処理して応答を返すことを期待する。
ここで、マイクロプロセッサから発行された書込み要求及び読出し要求の対象データ間に依存関係があった場合は、マイクロプロセッサから要求が発行された順序通りに書込み要求及び読出し要求を処理することが必要とされる。もし処理順序が誤って前後してしまった場合は、プログラマの期待とは異なった結果になってしまう状況、すなわちハザードが発生してしまう。
したがって、上記のシステムでは、ハザードが発生しない範囲で後から入力された優先度の高い要求を、先に入力された優先度の低い要求よりも優先して処理するために処理順序を内部的に組みかえる仕組みをデータ処理装置が実装することで、結果としてマスタ装置がより効率的に動作可能となり、システム全体の性能向上を図ることができる。
また、マスタ装置とその記憶装置とでは、動作可能な最大周波数に大きな差があることが多く、その結果、記憶装置制御を伴うデータ処理装置は、内部に非同期回路を備えることがある。
非同期回路を有するデータ処理装置においては、効率的な要求処理順序への組み換え動作を実現しようとした場合、単純に考えると、順序の組み換えに伴う回路をすべて1つのクロック信号で動作させることが最も容易かつ確実な方法となる。その場合は、非同期回路へ入力する手前のインタフェース回路側で順序の組み換えを行うことになる。
しかしながら、上記のシステムでは、マスタ装置の要求発行能力がデータ処理装置の処理能力を上回る場合、インタフェース回路が接続されているバスの利用効率を下げないために、要求を保留可能なバッファを多段構成とする必要があるという第1の課題がある。
つまり、非同期回路に非同期FIFOもしくはデュアルポートRAM(RAM)を使用する構成の場合、処理速度差の緩衝及び処理順序の組み換え用と、非同期回路としてのバッファとが分離した形で実装されることになり、面積的なオーバヘッドが大きくなってしまう。
非同期回路に非同期ハンドシェーク回路を採用した場合は、面積的なオーバヘッドは問題とならないが、その代償としてスループット及びレイテンシにおける性能的な劣化が顕著になってしまう。
また、上記のシステムでは、異なるクロック信号で動作する記憶装置制御回路の都合をリアルタイムでオーダー制御に反映できないため、結果としてしばらく処理できない要求を優先してしまい、全体の処理性能を下げてしまう可能性があるという第2の課題がある。
そこで、本発明の目的は上記の問題点を解消し、実装面積を抑えた上で、入力された要求の処理順序を効率的に組み替えることができる非同期FIFO間順序制御回路、データ処理装置及びそれらに用いる非同期FIFO間順序制御方法を提供することにある。
本発明による非同期FIFO間順序制御回路は、第1のクロック信号に同期して動作するインタフェースと、前記第1のクロック信号とは異なる第2のクロック信号に同期して動作する記憶装置制御回路とを備えるデータ処理装置に用いる非同期FIFO間順序制御回路であって、
前記第1及び第2のクロック信号の非同期クロック間において要求を受け渡すための非同期FIFO(First−In First−Out)と、強制されるべきオーダー関係を管理するための情報を付与する書込み制御手段と、前記強制されるべきオーダー関係を考慮した上で効率的に処理順序を組み替える読出し制御手段とを備え、
前記非同期FIFOを、優先度が高く先行する要求を追い越すことが可能な要求を格納するための第1の非同期FIFOと、前記優先度が低く先行する要求を追い越すことが不可能な要求を格納するための第2の非同期FIFOとして割り当てている。
本発明によるデータ処理装置は、上記の非同期FIFO間順序制御回路を含むことを特徴とする。
本発明による非同期FIFO間順序制御方法は、第1のクロック信号に同期して動作するインタフェースと、前記第1のクロック信号とは異なる第2のクロック信号に同期して動作する記憶装置制御回路とを備えるデータ処理装置に用いる非同期FIFO間順序制御方法であって、
前記データ処理装置に、前記第1及び第2のクロック信号の非同期クロック間において要求を受け渡すための非同期FIFO(First−In First−Out)を配設し、
前記データ処理装置が、強制されるべきオーダー関係を管理するための情報を付与する書込み制御処理と、前記強制されるべきオーダー関係を考慮した上で効率的に処理順序を組み替える読出し制御処理とを実行し、
前記非同期FIFOを、優先度が高く先行する要求を追い越すことが可能な要求を格納するための第1の非同期FIFOと、前記優先度が低く先行する要求を追い越すことが不可能な要求を格納するための第2の非同期FIFOとして割り当てている。
本発明は、上記のような構成及び動作とすることで、実装面積を抑えた上で、入力された要求の処理順序を効率的に組み替えることができるという効果が得られる。
本発明によるデータ処理装置の構成例を示すブロック図である。 本発明の第1の実施の形態によるデータ処理装置の構成例を示すブロック図である。 図2に示す非同期FIFO書込み制御部の構成例を示すブロック図である。 図3に示す非同期FIFO書込み制御部のオーダー管理情報の生成動作を示すフローチャートである。 図2に示す非同期FIFO読出し制御部におけるオーダーの組み換え動作を示すフローチャートである。 本発明の第2の実施の形態によるデータ処理装置の構成例を示すブロック図である。 本発明の第3の実施の形態によるデータ処理装置の構成例を示すブロック図である。
次に、本発明の実施の形態について図面を参照して説明する。まず、本発明による非同期FIFO(First−In First−Out)間順序制御方法の概要について説明する。
本発明は、図1に示すように、複数のクロック信号A,Bによって駆動されるデータ処理装置において、第1のクロック信号Aで動くインタフェース部11と、第1のクロック信号Aとは異なる第2のクロック信号Bで動く記憶装置制御部16とを備え、それらの間に非同期回路として2つの非同期FIFO(#1,#2)13,14を並列で接続し、さらに非同期FIFO書込み制御部12と非同期FIFO読出し制御部15とを備えている。
インタフェース部11から入力された要求に対しては、非同期FIFO書込み制御部12が連続したオーダー番号を付与するとともに、非同期FIFO(#1,#2)13,14内にすでに格納されている要求情報と新たに非同期FIFO(#1,#2)13,14へ書込む要求の情報とを比較してオーダー管理情報を生成することで、インタフェース部11へ入力された順序とは異なる順序で記憶装置制御部16が要求を処理してシステム全体の性能向上を図ることが実現可能となる。
本発明は、非同期FIFOそのものを2つに分割して並列に配置し、優先度が高く先行する要求を追い越すことが可能な要求を格納するための非同期FIFO(#1)13と、優先度が低く先行する要求を追い越すことが不可能な要求を格納するための非同期FIFO(#2)14としてそれぞれ割り当てる。
非同期FIFO書込み制御部12は、全ての要求に対してオーダー番号を付与するとともに、非同期FIFO(#1)13へこれから書込む要求の情報と、非同期FIFO(#2)14に既に格納されている要求の情報とを比較して、非同期FIFO(#1)13へこれから書込む要求が非同期FIFO(#2)14に既に格納されている要求を追い越した場合にハザードが発生する可能性があるか否かを判定する。
非同期FIFO書込み制御部12は、ハザードが発生する可能性があると判断した場合、非同期FIFO(#1)13へ書込む要求に追い越し禁止のオーダー管理情報を付与する。非同期FIFO書込み制御部12は、ハザードが発生する可能性はないと判断した場合、非同期FIFO(#1)13へ書込む要求に追い越し許可のオーダー管理情報を付与する。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13及び非同期FIFO(#2)14のどちらか片方にしか要求が格納されていない場合、その要求を記憶装置制御部16へと出力する。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13と非同期FIFO(#2)14との両方に要求が格納されている場合、まずオーダー番号を比較する。
非同期FIFO読出し制御部15は、オーダー番号によって非同期FIFO(#1)13から読出される要求が非同期FIFO(#2)14から読出される要求よりも先行して入力されたものであると判定される場合、非同期FIFO(#1)13の要求を記憶装置制御部16へと出力する。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13から読出される要求が非同期FIFO(#2)14から読出される要求よりも後に入力されたものであると判定される場合、非同期FIFO(#1)13から読出しされる要求に追い越し禁止のオーダー管理情報が付与されていれば、非同期FIFO(#2)14の要求を記憶装置制御部16へと出力する。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13から読出される要求が非同期FIFO(#2)14よりも後から入力されたものであり、かつ非同期FIFO(#1)13から読出される要求に追い越し許可のオーダー管理情報が付与されている場合、非同期FIFO(#1)13と非同期FIFO(#2)14とのどちらの要求から処理してもハザードは発生しない。
よって、記憶装置制御部16側の都合を反映した上で、非同期FIFO(#1)13の要求を処理できない状態であれば非同期FIFO(#2)14の要求を、非同期FIFO(#2)14の要求を処理できない状態であれば非同期FIFO(#1)13の要求を優先することが可能となる。
これにより、本発明では、面積、スループット、及びレイテンシのいずれも犠牲にしない形で、効率的な処理順序の組み換え制御を実現することができる。
図2は本発明の第1の実施の形態によるデータ処理装置の構成例を示すブロック図である。図2において、本発明の第1の実施の形態によるデータ処理装置は、上述した図1に示すデータ処理装置と同様の構成となっている。
すなわち、本発明の第1の実施の形態によるデータ処理装置は、マスタ装置2から要求を受信するインタフェース部11と、オーダー番号の付与及びオーダー管理情報の生成を行う非同期FIFO書込み制御部12と、先行する要求を追い越し可能な要求を格納するための非同期FIFO(#1)13と、先行する要求を追い越し不可能な要求を格納するための非同期FIFO(#2)14と、記憶装置18から読出したデータをインタフェース部11へと渡すための非同期FIFO(#3)17と、非同期FIFO(#1)13及び非同期FIFO(#2)14から要求を読出しオーダーを組み替える非同期FIFO読出し制御部15と、記憶装置18への読み書きを制御する記憶装置制御部16と、データを実際に記憶している記憶装置18とから構成されている。
図3は図2に示す非同期FIFO書込み制御部12の構成例を示すブロック図である。図3においては、非同期FIFO書込み制御部12のオーダー管理情報の生成回路の構成を示している。すなわち、非同期FIFO書込み制御部12は、デコーダ部121と、オーダー番号生成部122と、オーダー管理情報生成部123とを備えている。
インタフェース部11から入力された要求は、デコーダ部121によって先行する要求を追い越し可能なものと不可能なものとに分けられる。先行する要求を追い越し可能なものは非同期FIFO(#1)13へ、先行する要求を追い越し不可能なものは非同期FIFO(#2)14へそれぞれ入力される。
その際、これらの要求には、オーダー番号生成部122によってオーダー番号が付与される。インタフェース部11から入力された要求の情報と、非同期FIFO(#2)14に格納されている要求の情報とはオーダー管理情報生成部123へと入力され、オーダー管理情報生成部123は、これらの情報を基に、追い越し禁止、追い越し許可等のオーダー管理情報を生成する。
図4は図3に示す非同期FIFO書込み制御部12のオーダー管理情報の生成動作を示すフローチャートである。この図4を参照して、非同期FIFO書込み制御部12におけるオーダー管理情報の生成動作について説明する。
非同期FIFO書込み制御部12は、インタフェース部11から入力された要求及び非同期FIFO(#2)14に格納されている有効な要求のそれぞれのアクセスする記憶装置18のデータ位置を比較する(図4ステップS1)。
データ位置は、アドレス、転送データサイズ、バースト数、バーストタイプ等の情報から計算される。その結果、1bitでもデータ位置が一致する要求が非同期FIFO(#2)14の中に1つでもある場合(図4ステップS1のYES)、非同期FIFO書込み制御部12は、入力された要求に対して追い越し禁止のオーダー管理情報を付与する(図4ステップS4)。
非同期FIFO書込み制御部12は、一致する要求が非同期FIFO4に存在しない場合(図4ステップS1のNO)、非同期FIFO(#2)14に格納されている有効な要求に対し、後続による追い越しを拒否しているか否かを確認する(図4ステップS2)。
非同期FIFO書込み制御部12は、後続による追い越しを拒否している有効な要求が存在した場合(図4ステップS2のYES)、入力された要求に対して追い越し禁止のオーダー管理情報を付与する(図4ステップS4)。
非同期FIFO書込み制御部12は、追い越しを拒否する有効な要求が存在しない場合(図4ステップS2のNO)、入力された要求に対して追い越し許可のオーダー管理情報を付与する(図4ステップS3)。
図5は図2に示す非同期FIFO読出し制御部15におけるオーダーの組み換え動作を示すフローチャートである。この図5を参照して、非同期FIFO読出し制御部15におけるオーダーの組み換え動作について説明する。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13にのみ有効な要求がある状態か否かを確認する(図5ステップS11)。非同期FIFO読出し制御部15は、非同期FIFO(#1)13にのみ有効な要求がある場合(図5ステップS11のYES)、非同期FIFO(#1)13から読出された要求を記憶装置制御部16へ出力する(図5ステップS18)。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13にのみ有効な要求ある状態ではない場合(図5ステップS11のNO)、非同期FIFO(#2)14にのみ有効な要求がある状態か否かを確認する(図5ステップS12)。
非同期FIFO読出し制御部15は、非同期FIFO(#2)14にのみ有効な要求がある場合(図5ステップS12のYES)、非同期FIFO(#2)14から読出された要求を記憶装置制御部16へ出力する(図5ステップS17)。
非同期FIFO読出し制御部15は、非同期FIFO(#2)14にのみ有効な要求がある状態ではない場合(図5ステップS12のNO)、非同期FIFO(#1)13と非同期FIFO(#2)14との両方に有効な要求があるか否かを確認する(図5ステップS13)。
非同期FIFO読出し制御部15は、両方に有効な要求がない場合(図5ステップS13のNO)、処理可能な要求が存在しないので、有効な要求が非同期FIFO(#1)13もしくは非同期FIFO(#2)14に格納されるまで待機する。
非同期FIFO読出し制御部15は、両方に有効な要求がある場合(図5ステップS13のYES)、非同期FIFO(#1)13と非同期FIFO(#2)14とから読出されたそれぞれの要求のオーダー番号を比較する(図5ステップS14)。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13から読出された要求のオーダー番号が非同期FIFO(#2)14から読出された要求のオーダー番号よりも小さい場合(図5ステップS14のYES)、非同期FIFO(#2)14から読出された要求が非同期FIFO(#1)13から読出された要求よりも後に非同期FIFO書込み制御部12へ入力されたことを示し、非同期FIFO(#2)14に格納されている要求が先行する要求を追い越し不可能であるため、非同期FIFO(#1)13から読出された要求を先に記憶装置制御部16へ出力することが決定される(図5ステップS18)。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13から読出された要求のオーダー番号が非同期FIFO(#2)14から読出された要求のオーダー番号よりも大きい場合(図5ステップS14のNO)、非同期FIFO(#1)13から読出された要求のオーダー管理情報を確認する(図5ステップS15)。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13から読出された要求のオーダー管理情報が追い越し禁止である場合(図5ステップS15のYES)、オーダー番号から非同期FIFO(#2)14から読出された要求が非同期FIFO(#1)13から読出された要求よりも先に非同期FIFO書込み制御部3へ入力されたことが示されているため、非同期FIFO(#2)14から読出された要求を先に記憶装置制御部16へ出力することが決定される(図5ステップS17)。
非同期FIFO読出し制御部15は、非同期FIFO(#1)13から読出された要求のオーダー管理情報が追い越し許可である場合(図5ステップS15のNO)、記憶装置制御部16が非同期FIFO(#1)13から読出された要求を処理可能な状態か否かを確認する(図5ステップS16)。
上記のステップS16の処理へ進んだ時点では、非同期FIFO(#1)13から読出された要求と非同期FIFO(#2)14から読出された要求との間に強制されるオーダー関係は存在しない。よって、非同期FIFO読出し制御部15は、記憶装置制御部16が非同期FIFO(#1)13から読出された要求を処理可能であるならば(図5ステップS16のYES)、非同期FIFO(#1)13から読出された要求を記憶装置制御部16へ出力する(図5ステップS18)。
非同期FIFO読出し制御部15は、記憶装置制御部16が非同期FIFO(#1)13から読出された要求を処理可能ではないならば(図5ステップS16のNO)、非同期FIFO(#2)14から読出された要求を記憶装置制御部16へ出力する(図5ステップS17)。
このように、本実施の形態では、複数の異なるクロック信号A,Bに同期して動作するデータ処理装置において、単一クロックで動作する要求バッファを必要としないため、実装面積を抑えた上で、入力された要求の処理順序を効率的に組み替えることが可能となる。その理由は、並列に接続された非同期FIFOへの書込み時点でオーダー制御情報を付与し、読出し時点においてオーダー制御情報を基に最適な処理順序を判断することができるためである。
図6は本発明の第2の実施の形態によるデータ処理装置の構成例を示すブロック図である。図6において、本発明の第2の実施の形態によるデータ処理装置は、設定情報保持部19を追加した以外は、図1に示す本発明の第1の実施の形態によるデータ処理装置と同様の構成となっており、同一構成要素には同一符号を付している。
設定情報保持部19からは、強制インオーダー処理の設定情報が非同期FIFO書込み制御部12に対して入力される。この設定情報が有効な場合、非同期FIFO書込み制御部12は、非同期FIFO(#1)13に対して常に追い越し禁止のオーダー管理情報を付与する。これによって、マスタ装置2による要求発行順序を維持したまま記憶装置制御部16へ要求が出力される。
図7は本発明の第3の実施の形態によるデータ処理装置の構成例を示すブロック図である。図7において、本発明の第3の実施の形態によるデータ処理装置は、インタフェース部11を読出しインタフェース部11aと書込みインタフェース部11bとに分離した構成とした以外は、図1に示す本発明の第1の実施の形態によるデータ処理装置と同様の構成となっており、同一構成要素には同一符号を付している。尚、本発明の第3の実施の形態によるデータ処理装置は、図6に示す本発明の第2の実施の形態によるデータ処理装置にも適用可能である。
これは、AMBA(Advanced Microcontroller Bus Architecture)3.0で規定されるAXI(Advanced eXtensible Interface)バス等に見られるバス構成であり、読出し要求と書込み要求とが同時に入力される場合がある。
非同期FIFO書込み制御部12は、読出し要求と書込み要求とに1サイクルの間に連続した異なるオーダー番号を付与することができる。書込み要求は、追い越し不可能な要求として非同期FIFO(#2)14へ、読出し要求は追い越し可能な要求として非同期FIFO(#1)13へ格納される。
上記の実施の形態の一部又は全部は、以下の付記のようにも記載され得るが、以下の記載に限定されない。
[付記1]
第1のクロック信号に同期して動作するインタフェースと、前記第1のクロック信号とは異なる第2のクロック信号に同期して動作する記憶装置制御回路とを備えるデータ処理装置に用いる非同期FIFO間順序制御方法であって、
前記データ処理装置に、前記第1及び第2のクロック信号の非同期クロック間において要求を受け渡すための非同期FIFO(First−In First−Out)を配設し、
前記データ処理装置が、強制されるべきオーダー関係を管理するための情報を付与する書込み制御処理と、前記強制されるべきオーダー関係を考慮した上で効率的に処理順序を組み替える読出し制御処理とを実行し、
前記非同期FIFOを、優先度が高く先行する要求を追い越すことが可能な要求を格納するための第1の非同期FIFOと、前記優先度が低く先行する要求を追い越すことが不可能な要求を格納するための第2の非同期FIFOとして割り当て、
前記書込み制御処理において、前記インタフェースを介して入力される全ての要求に対してオーダー番号を付与し、前記第1の非同期FIFOへこれから書込む要求の情報と前記第2の非同期FIFOに既に格納されている要求の情報とを比較し、前記第1の非同期FIFOへこれから書込む要求が前記第2の非同期FIFOに既に格納されている要求を追い越した場合にハザードが発生するか否かに応じて追い越し禁止または追い越し許可を前記強制されるべきオーダー関係を管理するための情報として付与することを特徴とする非同期FIFO間順序制御方法。
[付記2]
前記読出し制御処理において、前記第1の非同期FIFOと前記第2の非同期FIFOとの両方に要求が格納されている場合、前記オーダー番号の比較にて前記第1の非同期FIFOから読出される要求が前記第2の非同期FIFOから読出される要求よりも後に入力されたものでありかつ前記第1の非同期FIFOから読出しされる要求に追い越し禁止の情報が付与されていれば前記第2の非同期FIFOの要求を出力することを特徴とする付記1に記載の非同期FIFO間順序制御方法。
[付記3]
前記データ処理装置に、強制インオーダー処理の設定情報を保持する保持手段を設け、
前記書込み制御処理において、前記保持手段に保持された設定情報が有効な場合に前記第1の非同期FIFOの要求に対して常に追い越し禁止の情報を付与することを特徴とする付記1または付記2に記載の非同期FIFO間順序制御方法。
[付記4]
前記インタフェースを読出しインタフェースと書込みインタフェースとに分離し、
前記書込み制御処理において、読出し要求と書込み要求とに1サイクルの間に連続した異なるオーダー番号を付与し、前記書込み要求を追い越し不可能な要求として前記第2の非同期FIFOへ格納し、前記読出し要求を追い越し可能な要求として前記第1の非同期FIFOへ格納することを特徴とする付記1から付記3のいずれかに記載の非同期FIFO間順序制御方法。
本発明の利用分野としては、マイクロプロセッサの周辺装置としてのメモリコントローラ等に適用可能である。
2 マスタ装置
11 インタフェース部
11a 読出しインタフェース部
11b 書込みインタフェース部
12 非同期FIFO書込み制御部
13 非同期FIFO(#1)
14 非同期FIFO(#2)
15 非同期FIFO読出し制御部
16 記憶装置制御部
17 非同期FIFO(#3)
18 記憶装置
19 設定情報保持部
121 デコーダ部
122 オーダー番号生成部
123 オーダー管理情報生成部

Claims (7)

  1. 第1のクロック信号に同期して動作するインタフェースと、前記第1のクロック信号とは異なる第2のクロック信号に同期して動作する記憶装置制御回路とを備えるデータ処理装置に用いる非同期FIFO間順序制御回路であって、
    前記第1及び第2のクロック信号の非同期クロック間において要求を受け渡すための非同期FIFO(First−In First−Out)と、強制されるべきオーダー関係を管理するための情報を付与する書込み制御手段と、前記強制されるべきオーダー関係を考慮した上で効率的に処理順序を組み替える読出し制御手段とを有し、
    前記非同期FIFOを、優先度が高く先行する要求を追い越すことが可能な要求を格納するための第1の非同期FIFOと、前記優先度が低く先行する要求を追い越すことが不可能な要求を格納するための第2の非同期FIFOとして割り当てることを特徴とする非同期FIFO間順序制御回路。
  2. 前記書込み制御手段は、前記インタフェースを介して入力される全ての要求に対してオーダー番号を付与し、前記第1の非同期FIFOへこれから書込む要求の情報と前記第2の非同期FIFOに既に格納されている要求の情報とを比較し、前記第1の非同期FIFOへこれから書込む要求が前記第2の非同期FIFOに既に格納されている要求を追い越した場合にハザードが発生するか否かに応じて追い越し禁止または追い越し許可を前記強制されるべきオーダー関係を管理するための情報として付与することを特徴とする請求項1記載の非同期FIFO間順序制御回路。
  3. 前記読出し制御手段は、前記第1の非同期FIFOと前記第2の非同期FIFOとの両方に要求が格納されている場合、前記オーダー番号の比較にて前記第1の非同期FIFOから読出される要求が前記第2の非同期FIFOから読出される要求よりも後に入力されたものでありかつ前記第1の非同期FIFOから読出しされる要求に追い越し禁止の情報が付与されていれば前記第2の非同期FIFOの要求を出力することを特徴とする請求項2記載の非同期FIFO間順序制御回路。
  4. 強制インオーダー処理の設定情報を保持する保持手段を含み、
    前記書込み制御手段が前記保持手段に保持された設定情報が有効な場合に前記第1の非同期FIFOの要求に対して常に追い越し禁止の情報を付与することを特徴とする請求項1から請求項3のいずれか記載の非同期FIFO間順序制御回路。
  5. 前記インタフェースを読出しインタフェースと書込みインタフェースとに分離し、
    前記書込み制御手段は、読出し要求と書込み要求とに1サイクルの間に連続した異なるオーダー番号を付与し、前記書込み要求を追い越し不可能な要求として前記第2の非同期FIFOへ格納し、前記読出し要求を追い越し可能な要求として前記第1の非同期FIFOへ格納することを特徴とする請求項1から請求項4のいずれか記載の非同期FIFO間順序制御回路。
  6. 上記の請求項1から請求項5のいずれかに記載の非同期FIFO間順序制御回路を含むことを特徴とするデータ処理装置。
  7. 第1のクロック信号に同期して動作するインタフェースと、前記第1のクロック信号とは異なる第2のクロック信号に同期して動作する記憶装置制御回路とを備えるデータ処理装置に用いる非同期FIFO間順序制御方法であって、
    前記データ処理装置に、前記第1及び第2のクロック信号の非同期クロック間において要求を受け渡すための非同期FIFO(First−In First−Out)を配設し、
    前記データ処理装置が、強制されるべきオーダー関係を管理するための情報を付与する書込み制御処理と、前記強制されるべきオーダー関係を考慮した上で効率的に処理順序を組み替える読出し制御処理とを実行し、
    前記非同期FIFOを、優先度が高く先行する要求を追い越すことが可能な要求を格納するための第1の非同期FIFOと、前記優先度が低く先行する要求を追い越すことが不可能な要求を格納するための第2の非同期FIFOとして割り当てることを特徴とする非同期FIFO間順序制御方法。
JP2010260739A 2010-11-24 2010-11-24 非同期fifo間順序制御回路、データ処理装置及びそれらに用いる非同期fifo間順序制御方法 Active JP5305472B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010260739A JP5305472B2 (ja) 2010-11-24 2010-11-24 非同期fifo間順序制御回路、データ処理装置及びそれらに用いる非同期fifo間順序制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010260739A JP5305472B2 (ja) 2010-11-24 2010-11-24 非同期fifo間順序制御回路、データ処理装置及びそれらに用いる非同期fifo間順序制御方法

Publications (2)

Publication Number Publication Date
JP2012113452A true JP2012113452A (ja) 2012-06-14
JP5305472B2 JP5305472B2 (ja) 2013-10-02

Family

ID=46497615

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010260739A Active JP5305472B2 (ja) 2010-11-24 2010-11-24 非同期fifo間順序制御回路、データ処理装置及びそれらに用いる非同期fifo間順序制御方法

Country Status (1)

Country Link
JP (1) JP5305472B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006091982A (ja) * 2004-09-21 2006-04-06 Canon Inc オンチップバスシステム
JP2006293969A (ja) * 2005-03-17 2006-10-26 Fujitsu Ltd データ転送装置
JP2007065948A (ja) * 2005-08-31 2007-03-15 Alpine Electronics Inc バッファメモリ装置及びデータ転送システム
JP2010134646A (ja) * 2008-12-03 2010-06-17 Ricoh Co Ltd 速度変換回路
JP2010262435A (ja) * 2009-05-01 2010-11-18 Fujitsu Semiconductor Ltd 追い越しモードを有するデータバッファ装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006091982A (ja) * 2004-09-21 2006-04-06 Canon Inc オンチップバスシステム
JP2006293969A (ja) * 2005-03-17 2006-10-26 Fujitsu Ltd データ転送装置
JP2007065948A (ja) * 2005-08-31 2007-03-15 Alpine Electronics Inc バッファメモリ装置及びデータ転送システム
JP2010134646A (ja) * 2008-12-03 2010-06-17 Ricoh Co Ltd 速度変換回路
JP2010262435A (ja) * 2009-05-01 2010-11-18 Fujitsu Semiconductor Ltd 追い越しモードを有するデータバッファ装置

Also Published As

Publication number Publication date
JP5305472B2 (ja) 2013-10-02

Similar Documents

Publication Publication Date Title
US6341318B1 (en) DMA data streaming
US6526484B1 (en) Methods and apparatus for reordering of the memory requests to achieve higher average utilization of the command and data bus
US8099567B2 (en) Reactive placement controller for interfacing with banked memory storage
US6453370B1 (en) Using of bank tag registers to avoid a background operation collision in memory systems
JP2002530742A (ja) 外部デバイスへのアクセスを優先順序付けるための方法および装置
KR20150129316A (ko) 명령 프로세싱 회로들에서의 리던던트 동기화 베리어들의 제거 및 관련 프로세서 시스템들, 방법들 및 컴퓨터-판독가능 매체
JP2002530743A (ja) ページタグレジスタを使用して、メモリデバイス内の物理ページの状態を追跡すること
US9984014B2 (en) Semiconductor device
US10503410B2 (en) Apparatus and method for enforcing timing requirements for a memory device
JP5752666B2 (ja) デジタル信号処理用のメモリアクセス
US6684301B1 (en) Out of order execution memory access request FIFO
JP2011232917A (ja) 半導体集積回路、及びリクエスト制御方法
US8560784B2 (en) Memory control device and method
JP6004463B2 (ja) 記憶装置及びその制御方法
JP4789269B2 (ja) ベクトル処理装置及びベクトル処理方法
EP2280349B1 (en) Processor and data transfer method
JP5305472B2 (ja) 非同期fifo間順序制御回路、データ処理装置及びそれらに用いる非同期fifo間順序制御方法
US9747231B2 (en) Bus access arbiter and method of bus arbitration
EP3588319B1 (en) Memory module
JP2008102599A (ja) プロセッサ
EP1362288B1 (en) Pipelined multi-access memory apparatus and method
JP5428653B2 (ja) メモリアクセス処理装置及び方法
JP2009032085A (ja) データ処理システム
Li et al. Optimization of QDR SRAM Controller in Network Processor
JP4593220B2 (ja) メモリアクセス制御方式と方法、及び共有メモリアクセス制御方式と方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130115

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: 20130528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130621

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5305472

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250