JP5540979B2 - 半導体集積回路、情報記憶方法 - Google Patents
半導体集積回路、情報記憶方法 Download PDFInfo
- Publication number
- JP5540979B2 JP5540979B2 JP2010177262A JP2010177262A JP5540979B2 JP 5540979 B2 JP5540979 B2 JP 5540979B2 JP 2010177262 A JP2010177262 A JP 2010177262A JP 2010177262 A JP2010177262 A JP 2010177262A JP 5540979 B2 JP5540979 B2 JP 5540979B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- instruction
- cpu
- address
- 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
Landscapes
- Bus Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
図3は、画像形成装置100の構成図の一例を示す。画像形成装置100はネットワークを介してPC200と接続されている。PC200は、ユーザの操作を受け付けてワープロソフトなどが作成した文書をプリンタドライバに送出する。プリンタドライバは、画像形成装置100が解釈してラスタデータを生成するためのPDLデータを生成する。また、画像形成装置100がPC200に画像データを送信することもできる。
ここでどのDMAC0〜3の優先順位が高いと見なすかをユーザが設定可能としてもよい。図4は、DMAC0〜3の優先順位を設定するためのレジスタの一例を示す図である。レジスタ0〜3は例えば、メモリアービタ15に配置されている。CPU19は、電源オン時の初期処理として、レジスタ0〜3にDMAC0〜3の優先順位を設定する。初期処理のプログラムは不図示の不揮発メモリに記憶されている。
メモリ23がアクセスされるのは、例えば、以下のような場合である。本実施例では主にc)PDLデータや命令又はデータ等の読み出しと、d)画像データを読み出しの競合に着目して説明している。
a)画像読取部30が読み取った画像データをDMAC2,3がメモリ23に記憶する場合。
b)PC200から送信されたPDLデータをネットワークI/F回路16がメモリ23に記憶する場合。
c)CPU19がメモリ23からPDLデータや命令又はデータ等を読み出す場合、又は、レンダリングした(ラスタデータにした)画像データ等をメモリ23に書き込む場合。
d)DMAC0,1がメモリ23から画像データを読み出し、PCI Express I/F回路13を経由して、画像処理ASIC11に送信する場合。
図5は、代理リードアクセス回路18の構成図の一例を示す。本実施例の代理リードアクセス回路18は、命令又はデータをメモリ23から読み出す(リードする)回路であり、メモリ23に書き込む(ライトする)場合は、作動しない。ライトアクセス要求はCPU19からメモリアービタ15に直接出力される。
図6は、アドレスの算出方法を模式的に説明する図の一例である。よく知られている算出方法は、すでに読み出した命令のアドレスに連続するアドレスを読み出すアドレスとする算出方法、一定間隔のデータのアドレスの読み込みが継続すると次も同じ間隔を空けたアドレスを読み出すアドレスとして算出する方法、過去にCPU19が不連続に読み出した命令のアドレスを記憶しておきそれを参考に次に読み出すアドレスを算出する方法、等がある(分岐の学習)。
・メモリアクセス判別部32からのセレクト信号が出力された場合、従来通りにCPU19からのリードアクセス要求をメモリアービタ15に直接出力する。
・メモリアクセス判別部32からのセレクト信号が出力されない場合、代理DMAC37のリードアクセス要求をメモリアービタ15に直接出力する。
図7は、本実施例のメモリ23の構造を模式的に説明する図の一例である。メモリ23にはディスクリプタ情報を記憶するためのディスクリプタ領域が設けられている。ディスクリプタ情報は、処理されるべき画像データのアドレスと、処理されるべき画像データに使用する画像処理パラメータが格納されているアドレス等が記述される。
図8は、代理リードアクセス回路18の動作手順の一例を示すフローチャート図である。まず、代理リードアクセス回路18はCPU19からリードアクセス要求を受け付ける(S1)。
2:CPU19が、「SysCmd」に"Read"を、「SysAD」に"Addr"を出力しているので、CPU19がメモリ23のリードアクセス要求をASIC22に発行している。
3:ASIC22はリードアクセス要求を受け付け、一旦、RdRdyをディアサートする。これにより、ASIC22はCPU19から次のリードアクセスを受け付けられなくなる。RdRdyのディアサートにより、SysAdに出力されたアドレス情報は代理リードアクセス回路18のプリフェッチアドレス算出部36に保持される。
4:遅延クロック
5:「DMAC_0 MCmd」等の"Read Req"に示すように、DMAC0、DMAC1、DMAC2、及び、DMAC3がリードアクセス要求を発行する。説明の便宜上、4つのDMAC0〜3のアクセス要求のタイミングを同一タイミングとしたが、各DMAC0〜3のアクセス要求の発行タイミングに特に、制約はない。
6:アービタは優先順位の高いDMAC0のリードアクセス要求を受け付け、「DMAC_0 SCmdAccept」に"Ack"を出力する。
7:このクロック7の間にDMAC0がメモリ23からデータを読み出したとする。
8:次に、メモリアービタ15は次に優先順位の高いDMAC1のリードアクセス要求を受け付け、「DMAC_1 SCmdAccept」に"Ack"を出力する。
9:この時点で、CPU19からのリードアクセス要求はなく(図8のS8)、アービタアクセス状況監視部35は、エンジンボード40に出力されるデータに関わるDMAC0、DMAC1のリードアクセス要求は存在しないと判定する(図8のS9)。
10:次に、メモリアービタ15は次に優先順位の高いDMAC2のリードアクセス要求を受け付け、「DMAC_2 SCmdAccept」に"Ack"を出力する。
11:このクロック11の間にDMAC2がメモリ23からデータを読み出したとする。
12:次に、メモリアービタ15は次に優先順位の高い代理DMAC37のリードアクセス要求を受け付け、「代理DMAC SCmdAccept」に"Ack"を出力する。
13:このクロック13の間に代理DMAC37がメモリ23からデータを読み出したとする。
14:最後に、メモリアービタ15は一番優先順位の低いDMAC3のリードアクセス要求を受け付け、「DMAC_3 SCmdAccept」に"Ack"を出力する。
図10は、代理リードアクセス回路18の構成図の一例を示す。図10において図5と同一部の説明は省略する。アドレスデコード部31には1つのCPU19が接続されているがこのCPU19が2つのコアを有する。
図13(a)では、時刻t1にコア0がデータバッファ0から最後のデータを読み出す(S12)。読み出されたデータがデータバッファ0の最後のデータの場合、処理はS23〜S25に移るので、ステップS23,24の条件を満たしコア0がプリフェッチ(バーストリード)した場合(S25)、代理DMAC37はコア0のリードアクセスに起因して算出されたアドレスのデータをデータバッファ0に格納する(S26)。
15 メモリアービタ
16 ネットワークI/F回路
17 メモリI/F回路
18 代理リードアクセス回路
19 CPU
20 画像書き込み部
22 ASIC
23 メモリ
30 画像読取部
31 アドレスデコード部
32 メモリアクセス判定部
33 データバッファ
34 命令バッファ
35 アービタアクセス状況監視部
36 プリフェッチアドレス算出部
37 代理DMAC
38 セレクタ
100 画像形成装置
Claims (14)
- メモリアービタを介してメモリから読み出した命令又はデータをCPUに供給する半導体集積回路であって、
前記メモリアービタにメモリアクセス要求を発行する周辺回路の有無を監視するアービタアクセス監視手段と、
前記周辺回路がメモリアービタにメモリアクセス要求を発行してない場合に、前記メモリアービタにメモリアクセス要求を発行し、命令又はデータをバーストリードするバーストリード手段と、
メモリからバーストリードされた命令又はデータを前記メモリアービタよりも前記CPU側で記憶するバッファ手段と、
前記CPUから取得した命令のアドレスをデコードするアドレスデコード手段と、
前記アドレスデコード手段がデコードしたアドレスの命令又はデータが前記バッファ手段に記憶されているか否かを判定するアドレス判別手段と、を有し、
命令又はデータが前記バッファ手段に記憶されてない場合は、前記メモリアービタにメモリアクセス要求を発行し、命令又はデータが前記バッファ手段に記憶されている場合は、前記バッファ手段に記憶されている命令又はデータを前記CPUに供給する、
ことを特徴とする半導体集積回路。 - 命令又はデータが前記バッファ手段に記憶されてない場合、前記バーストリード手段よりも優先して、前記アドレスデコード手段がデコードしたアドレスの命令又はデータのメモリアクセス要求を前記メモリアービタに発行するセレクタ手段、を有することを特徴とする請求項1記載の半導体集積回路。
- 前記アドレス判別手段が、前記CPUに供給された命令又はデータが前記バッファ手段における最後のアドレスの命令又はデータでないことを検出した場合、前記バーストリード手段が前記メモリアービタにメモリアクセス要求を発行することを禁止するセレクタ手段、を有することを特徴とする請求項1又は2記載の半導体集積回路。
- 前記バッファ手段は、命令用とデータ用に区分されている、ことを特徴とする請求項1〜3いずれか1項記載の半導体集積回路。
- 前記アドレス判別手段は、前記CPUと前記アドレスデコード手段を接続する信号線の状態、又は、前記アドレスデコード手段がデコードしたアドレスに基づき、前記バーストリード手段が読み出した信号が命令かデータかを判定し、判定結果に基づき前記バーストリード手段が読み出した信号を命令用又はデータ用の前記バッファ手段に格納する、ことを特徴とする請求項4記載の半導体集積回路。
- 前記アービタアクセス監視手段は、前記メモリアービタが前記CPUよりも優先的にメモリアクセスを許可する周辺回路の有無を監視し、
前記CPUよりも優先順位の高い周辺回路から前記メモリアービタにメモリアクセス要求が発行されていない場合のみ、前記バーストリード手段は前記メモリアービタにメモリアクセス要求を発行する、ことを特徴とする請求項1〜5いずれか1項記載の半導体集積回路。 - 前記アービタアクセス監視手段が監視する周辺回路の設定を受けつける監視周辺回路設定受け付け手段を有する、ことを特徴とする請求項1〜6いずれか1項記載の半導体集積回路。
- 前記バッファ手段を前記CPUのコアの数以上有する、ことを特徴とする請求項1〜7いずれか1項記載の半導体集積回路。
- 前記バーストリード手段は、メモリから読み出した命令又はデータを、前記バッファ手段の最後のアドレスの命令又はデータが読み出された前記バッファ手段に記憶する、ことを特徴とする請求項8記載の半導体集積回路。
- 前記バーストリード手段がメモリから読み出した命令又はデータを、
前記CPUから最も長い時間参照されていない前記バッファ手段に格納することを特徴とする、請求項8記載の半導体集積回路。 - 請求項1〜10いずれか1項記載の半導体集積回路が搭載された画像形成装置。
- 前記周辺回路は、メモリに記憶された画像データを読み出し、記録媒体に印刷する画像形成部に出力するDMAC(Direct Memory Access Controller)である、ことを特徴とする、請求項10記載の半導体集積回路。
- メモリには、前記CPUがPDLデータをレンダリングした画像データ、又は、スキャナが原稿を光学的に読み取った画像データが、前記DMACにより記憶される、請求項12記載の半導体集積回路。
- アドレスデコード手段が、CPUから取得した命令のアドレスをデコードするステップと、
アドレス判別手段が、前記アドレスデコード手段がデコードしたアドレスの命令又はデータがバッファ手段に記憶されているか否かを判定するステップと、
アービタアクセス監視手段が、メモリアービタにメモリアクセス要求を発行する周辺回路の有無を監視するステップと、
バーストリード手段が、命令又はデータが前記バッファ手段に記憶されておらず、かつ、前記周辺回路が前記メモリアービタにメモリアクセス要求を発行してない場合に、前記メモリアービタにメモリアクセス要求を発行し、命令又はデータをバーストリードするステップと、
前記バーストリード手段が、前記メモリアービタからメモリへのアクセス許可を受けてメモリから読み出した命令又はデータを前記バッファ手段に記憶するステップと、
命令又はデータが前記バッファ手段に記憶されている場合、前記バッファ手段に記憶されている命令又はデータを、命令又はデータが前記バッファ手段に記憶されてない場合、メモリから読み出した命令又はデータを前記CPUに供給するステップと、
を有することを特徴とする情報記憶方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010177262A JP5540979B2 (ja) | 2010-08-06 | 2010-08-06 | 半導体集積回路、情報記憶方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010177262A JP5540979B2 (ja) | 2010-08-06 | 2010-08-06 | 半導体集積回路、情報記憶方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012038065A JP2012038065A (ja) | 2012-02-23 |
JP5540979B2 true JP5540979B2 (ja) | 2014-07-02 |
Family
ID=45850012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010177262A Expired - Fee Related JP5540979B2 (ja) | 2010-08-06 | 2010-08-06 | 半導体集積回路、情報記憶方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5540979B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6613104B2 (ja) * | 2015-10-30 | 2019-11-27 | ファナック株式会社 | グラフィック機能を有する外部機器と接続可能な数値制御装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000259497A (ja) * | 1999-03-12 | 2000-09-22 | Fujitsu Ltd | メモリコントローラ |
JP4220258B2 (ja) * | 2003-02-04 | 2009-02-04 | 株式会社ルネサステクノロジ | ノンキャッシュ領域内高速メモリアクセス方法 |
JP4427393B2 (ja) * | 2004-06-23 | 2010-03-03 | 株式会社リコー | 半導体集積回路 |
JP2007115174A (ja) * | 2005-10-24 | 2007-05-10 | Oki Electric Ind Co Ltd | マルチプロセッサシステム |
JP2007213512A (ja) * | 2006-02-13 | 2007-08-23 | Seiko Epson Corp | 印刷装置、プリンタコントローラ |
JP2009193346A (ja) * | 2008-02-14 | 2009-08-27 | Panasonic Corp | メモリアクセス装置 |
-
2010
- 2010-08-06 JP JP2010177262A patent/JP5540979B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012038065A (ja) | 2012-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6499076B2 (en) | Memory management for use with burst mode | |
JP2006119796A (ja) | キャッシュメモリシステムおよび動画処理装置 | |
JP2000216935A (ja) | 複合機器の情報処理システム | |
EP1022896A2 (en) | Information processing method and system for composite appliance | |
JP3976927B2 (ja) | バス制御装置 | |
JP2008310798A (ja) | 画像処理コントローラ及び画像形成装置 | |
JP6180398B2 (ja) | メモリーアクセス装置 | |
JP5540979B2 (ja) | 半導体集積回路、情報記憶方法 | |
JP2000148650A (ja) | 複合機器の制御装置 | |
JP2013065065A (ja) | アクセス制御装置、画像形成装置およびアクセス制御方法 | |
JP2000215149A (ja) | 複合機器の制御装置 | |
JP4446968B2 (ja) | データ処理装置 | |
JP5716473B2 (ja) | 画像処理装置 | |
JP5168800B2 (ja) | マルチプロセッサシステム | |
JP5440419B2 (ja) | 情報処理システム | |
JP2005165592A (ja) | データ転送装置 | |
JP2004046851A (ja) | バス管理装置及びそれを有する複合機器の制御装置 | |
JP6180397B2 (ja) | メモリーアクセス装置、メモリーアクセス制御方法 | |
JP5555514B2 (ja) | プロセッサシステム | |
US6980314B1 (en) | Method and device for improving utilization of a bus | |
JP2008198098A (ja) | 情報処理装置 | |
JP2004030672A (ja) | バス管理装置及びそれを有する複合機器の制御装置及びバス管理方法 | |
JP2000215156A (ja) | 複合機器の情報処理システム | |
JP2007334835A (ja) | メモリ制御装置及びその制御方法 | |
JP2006127408A (ja) | データ転送システム及びその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130527 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140204 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140304 |
|
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: 20140408 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140421 |
|
LAPS | Cancellation because of no payment of annual fees |