(57)【要約】【課題】外部機器によるコンフィグレーション空間へのアクセスを可能にする。【解決手段】第１の機器１００は、メモリ空間とコンフィグレーション空間とが区別されて管理されている。ＮＴポート１４０は、第２の機器２００と接続されている。ＰＣＩｅスイッチ＃１（１０４）は、メモリ空間内の一部のアドレスをコンフィグレーション空間内のアドレスを指し示すコンフィグレーションポインタアドレスとして管理し、第２の機器２００からＮＴポート１４０を介して、コンフィグレーションポインタアドレスが指定されたメモリ空間へのメモリコマンドを受信した場合に、第２の機器２００によるコンフィグレーション空間内のアドレスへのアクセスを中継する。【選択図】図１
2018147254.tif 000002
【特許請求の範囲】
【請求項１】
メモリ空間とコンフィグレーション空間とが区別されて管理されている通信機器であって、
外部機器と接続されているノントランスペアレントポートと、
前記メモリ空間内の一部のアドレスを前記コンフィグレーション空間内のアドレスを指し示すコンフィグレーションポインタアドレスとして管理し、前記外部機器から前記ノントランスペアレントポートを介して、前記コンフィグレーションポインタアドレスが指定された前記メモリ空間へのメモリコマンドを受信した場合に、前記外部機器による前記コンフィグレーション空間内のアドレスへのアクセスを中継する中継部とを有する通信機器。
【請求項２】
前記ノントランスペアレントポートは、
メモリ空間とコンフィグレーション空間とが区別され、前記メモリ空間内の一部のアドレスを前記コンフィグレーション空間内のアドレスを指し示すコンフィグレーションポインタアドレスとして管理している前記外部機器と、前記外部機器内のノントランスペアレントポートを介して接続されており、
前記中継部は、
前記外部機器の前記コンフィグレーション空間内のアドレスにアクセスする場合に、前記外部機器の前記メモリ空間内の前記コンフィグレーションポインタアドレスを指定するメモリコマンドを前記外部機器に送信する請求項１に記載の通信機器。
【請求項３】
前記中継部は、
前記外部機器から受信した前記コマンドで指定されている前記コンフィグレーションポインタアドレスが指し示す前記コンフィグレーション空間内のアドレスにアクセス制限が設定されている場合に、当該アドレスに設定されているアクセス制限を実施する請求項１に記載の通信機器。
【請求項４】
前記通信機器は、更に、
前記コンフィグレーション空間内のアドレスにアクセス制限を設定するアクセス制限設定部を有する請求項１に記載の通信機器。
【請求項５】
前記アクセス制限設定部は、
前記コンフィグレーション空間内の複数のアドレスに一括で共通のアクセス制限を設定する請求項４に記載の通信機器。
【請求項６】
前記アクセス制限設定部は、
前記コンフィグレーション空間内の複数のアドレスに一括で、リードアクセスのみを許可するアクセス制限を設定する請求項４に記載の通信機器。
【請求項７】
前記アクセス制限設定部は、
前記コンフィグレーション空間内の複数のアドレスの各々に個別にアクセス制限を設定する請求項４に記載の通信機器。
【請求項８】
前記中継部が、ＰＣＩ  Ｅｘｐｒｅｓｓの規格に準拠したスイッチである請求項１に記載の通信機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信機器に関する。
【背景技術】
【０００２】
計算機システムや通信システムなど様々な装置において、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）や通信インタフェースを搭載したＬＳＩ（Ｌａｒｇｅ−Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）デバイスなどを相互に接続する場合、従来はＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）等に代表されるパラレルバスが用いられてきた。しかしながら、通信の高速化に伴い、基板上の配線パターンに対する制約、例えば信号の遅延を均一化するための等長または等遅延配線などの許容範囲が厳しくなってきたため、最近では高速なシリアルバスが主流になってきている。その中でＰＣＩ  Ｅｘｐｒｅｓｓ（登録商標）（以下、ＰＣＩｅという）は、パーソナルコンピュータを中心として標準的な規格として様々な分野の装置で利用されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１２８７１７号公報
【特許文献２】特開２０１２−８３９７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＰＣＩｅでは、１つのルートコンプレックスを頂点としたデバイスツリー構造であることが前提であり、１組のデバイスツリーの中に複数のルートコンプレックスを存在させることを想定していない。そこで、従来からＰＣＩｅスイッチのノントランスペアレントポート（以下、ＮＴポートともいう）を介して接続する方法が利用されている。ＮＴポートではＰＣＩｅスイッチ内部の特定のアドレスと、当該ＮＴポートへ接続された別のＰＣＩｅデバイスツリー側の特定のアドレスとの間でアドレス変換を行い、メモリ空間へのアクセスを可能としている。
更に、上記の特許文献１では、異なるデバイスツリー内にあるＰＣＩｅスイッチのＮＴポート同士を結合する構成が提案されている。このような構成とすることで、第１の機器のメモリ空間と第２の機器のメモリ空間を変換する際にＮＴ空間を介することとなり、ＮＴ空間のアドレスはそれぞれの機器の影響を受けることなく自由なアドレス、例えば０番地を使用することができる。このため、それぞれの機器は自身のメモリ空間内の特定のアドレスと、ＮＴ空間の０番地とを変換接続する設定を行うだけで、容易に第１の機器と第２の機器間での設定を完了でき、設定の煩雑さを大幅に緩和することが可能となる。
【０００５】
しかしながら、特許文献１で示された方法であっても相互に通信できるのはメモリ空間内に限られる。ＮＴポートはメモリ空間アクセス用のトランザクションについてはアドレス変換して透過させるが、各種設定やエラー等のステータス確認が可能なコンフィグレーション空間アクセス用のトランザクションについては常に非透過となる。
以上の通り、コンフィグレーション空間については、両機器間で共有することはできないため、どちらかの機器に異常が発生した場合に、他の機器から状況を確認したり、構成を変更したりすることができないという課題がある。
【０００６】
この発明は、このような課題を解決することを主な目的の一つとしている。具体的には、外部機器によるコンフィグレーション空間へのアクセスを可能にすることを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る通信機器は、
メモリ空間とコンフィグレーション空間とが区別されて管理されている通信機器であって、
外部機器と接続されているノントランスペアレントポートと、
前記メモリ空間内の一部のアドレスを前記コンフィグレーション空間内のアドレスを指し示すコンフィグレーションポインタアドレスとして管理し、前記外部機器から前記ノントランスペアレントポートを介して、前記コンフィグレーションポインタアドレスが指定された前記メモリ空間へのメモリコマンドを受信した場合に、前記外部機器による前記コンフィグレーション空間内のアドレスへのアクセスを中継する中継部とを有する。
【発明の効果】
【０００８】
本発明によれば、外部機器は通信機器のコンフィグレーション空間にアクセスすることができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係る通信システムの構成例を示す図。
【図２】実施の形態２に係る通信システムの構成例を示す図。
【図３】実施の形態１に係るメモリ空間とコンフィグレーション空間との関係を示す図。
【図４】実施の形態２に係るメモリ空間とコンフィグレーション空間との関係を示す図。
【図５】従来の手法によるメモリ空間及びコンフィグレーション空間の問題を示す図。
【図６】従来の手法によるメモリ空間及びコンフィグレーション空間の問題を示す図。
【図７】実施の形態１に係るメモリ空間とコンフィグレーション空間との関係を示す図。
【発明を実施するための形態】
【００１０】
実施の形態１．
図１は、本実施の形態に係る通信システムの構成例を示す。
図１に示すように、本実施の形態に係る通信システムは、第１の機器１００と第２の機器２００で構成される。
図１では、第１の機器１００は通信機器に相当し、第２の機器２００は外部機器に相当する。
【００１１】
第１の機器１００は、プロセッサ１０１、ブリッジ１０２、ルートコンプレックス１０３、ＰＣＩｅスイッチ＃１（１０４）、ＰＣＩｅスイッチ＃２（１０５）、ＰＣＩｅデバイス＃１（１０６）、ＰＣＩｅデバイス＃２（１０７）及びＰＣＩｅデバイス＃３（１０８）で構成される。
ブリッジ１０２は、プロセッサ１０１をＰＣＩｅスイッチへ接続する。
ルートコンプレックス１０３は、ＰＣＩｅバスの構成制御を処理する。
ＰＣＩｅスイッチ＃１（１０４）及びＰＣＩｅスイッチ＃２（１０５）は、それぞれ、ＰＣＩｅバスを拡張する。ＰＣＩｅスイッチ＃１（１０４）は、中継部に相当する。
ＰＣＩｅデバイス＃１（１０６）〜ＰＣＩｅデバイス＃３（１０８）は、それぞれ、ＰＣＩｅのエンドポイントデバイスとなる。
ＰＣＩｅデバイス＃１（１０６）は、メモリ空間レジスタ１０６１とコンフィグレーション空間レジスタ１０６２を備える。
メモリ空間レジスタ１０６１は、メモリ空間を構成するレジスタである。コンフィグレーション空間レジスタ１０６２は、コンフィグレーション空間を構成するレジスタである。
図示を省略しているが、ＰＣＩｅデバイス＃２（１０７）及びＰＣＩｅデバイス＃３（１０８）でも、メモリ空間レジスタ１０６１に相当するメモリ空間レジスタが含まれており、コンフィグレーション空間レジスタ１０６２に相当するコンフィグレーション空間レジスタが含まれている。
このように、第１の機器１００では、メモリ空間とコンフィグレーション空間とが区別されている。
【００１２】
また、第２の機器２００は、プロセッサ２０１、ブリッジ２０２、ルートコンプレックス２０３、ＰＣＩｅスイッチ＃１（２０４）、ＰＣＩｅスイッチ＃２（２０５）、ＰＣＩｅデバイス＃１（２０６）、ＰＣＩｅデバイス＃２（２０７）及びＰＣＩｅデバイス＃３（２０８）で構成される。
プロセッサ２０１はプロセッサ１０１と同様である。ブリッジ２０２はブリッジ１０２と同様である。ルートコンプレックス２０３はルートコンプレックス１０３と同様である。ＰＣＩｅスイッチ＃１（２０４）はＰＣＩｅスイッチ＃１（１０４）と同様である。ＰＣＩｅスイッチ＃２（２０５）はＰＣＩｅスイッチ＃２（１０５）と同様である。ＰＣＩｅデバイス＃１（２０６）はＰＣＩｅデバイス＃１（１０６）と同様である。ＰＣＩｅデバイス＃２（２０７）はＰＣＩｅデバイス＃２（１０７）と同様である。ＰＣＩｅデバイス＃３（２０８）はＰＣＩｅデバイス＃３（１０８）と同様である。
なお、図示を省略しているが、ＰＣＩｅデバイス＃１（２０６）、ＰＣＩｅデバイス＃２（２０７）及びＰＣＩｅデバイス＃３（２０８）にも、それぞれ、メモリ空間レジスタ１０６１に相当するメモリ空間レジスタが含まれており、コンフィグレーション空間レジスタ１０６２に相当するコンフィグレーション空間レジスタが含まれている。
【００１３】
第１の機器１００のＰＣＩｅスイッチ＃１（１０４）と第２の機器２００のＰＣＩｅスイッチ＃１（２０４）は接続されている。ＰＣＩｅスイッチ＃１（１０４）の接続ポートは、ＮＴポート１４０である。
【００１４】
通常、複数の独立したＰＣＩｅ機器同士を接続する場合、ＮＴポートを備えたＰＣＩｅスイッチを介して接続する方法が行われる。ＮＴポートにおいて各ＰＣＩｅ機器のメモリ空間のどのアドレスとどのアドレスを対応付けるかの設定を行って、各機器間での通信を実現する。
例えば第１の機器１００のＰＣＩｅメモリ空間の１０００番地と第２の機器２００の２０００番地とを対応付けた場合、第２の機器２００内での２０００番地に対するリードまたはライトのアクセスが発生した場合、ＮＴポート１４０内で第１の機器１００内のアドレス１０００番地へのアクセスとして変換されることで、第２の機器２００側か第１の機器１００内のＰＣＩｅデバイスへアクセスすることが可能となる。
【００１５】
図５は、従来手法によるＰＣＩｅのメモリ空間とコンフィグレーション空間の関係を示す図である。
ＰＣＩｅデバイスの各種設定やエラーステータスなどを確認するためのコンフィグレーション空間はメモリ空間とは独立している。ＰＣＩｅのＮＴポートは、メモリ空間へアクセスするためのメモリコマンドを通過させることができるが、コンフィグレーション空間へアクセスするためのコンフィグレーションコマンドは通過させることができないよう規格で定められている。このため、前記の方法では第２の機器２００側から第１の機器１００内のＰＣＩｅデバイスのコンフィグレーション空間を参照することはできない。
また、同様に第１の機器１００側から第２の機器２００内のＰＣＩｅデバイスのコンフィグレーション空間も参照することはできない。なお、コンフィグレーション空間はメモリ空間のように各デバイス間で共有されておらず、デバイスごとにも独立しているという特徴をもつ。
【００１６】
なお、他方のルートコンプレックスに、コンフィグレーション空間へのアクセスを発行するための特殊なメッセージを送出し、ソフトウェア的に必要なリクエストを生成するという実装を行っている例もあるが、相手側のルートコンプレックスを制御するためにはプロセッサの介入が必須であり、プロセッサが応答できないような異常時にはこの方法は利用することができない。
【００１７】
図３は、本実施の形態に係るＰＣＩｅのメモリ空間とコンフィグレーション空間の関係を示す図である。
本実施の形態では、通常独立した空間として存在する各デバイスのコンフィグレーション空間のレジスタ群を、各デバイスのＰＣＩｅメモリ空間の特定のアドレスオフセット位置からも参照できる。
【００１８】
例えば図３では第１の機器１００内のデバイス＃２（１０７）のメモリ空間を第２の機器２００側からも参照できるよう設定した例を示している。また、各デバイスのコンフィグレーション空間は各デバイスのメモリ空間の先頭位置に表示される構成としている。
つまり、本実施の形態では、ＰＣＩｅスイッチ＃１（１０４）は、メモリ空間内の一部のアドレス（図３の例では先頭位置のアドレス）をコンフィグレーション空間内のアドレスを指し示すコンフィグレーションポインタアドレスとして管理している。図３において、ハッチングを施している領域がコンフィグレーションポインタアドレスである。そして、ＰＣＩｅスイッチ＃１（１０４）は、第２の機器２００からＮＴポート１４０を介して、コンフィグレーションポインタアドレスが指定されたメモリ空間へのメモリコマンドを受信した場合に、第２の機器２００によるコンフィグレーション空間内のアドレスへのアクセスを中継する。
なお、図３では図示していないが、他のデバイスについても同様に第２の機器２００がコンフィグレーション空間を参照できるように設定することも可能である。
また、コンフィグレーションポインタアドレスの位置はメモリ空間の先頭ではなくてもよく、任意の位置でよい。
【００１９】
なお、図３に示すように第２の機器２００がメモリ空間を経由してコンフィグレーション空間にアクセスできる構成としたことは、図７に示すように、コンフィグレーション空間に置かれているレジスタをデュアルポート化して、各デバイスのメモリ空間の先頭領域にもマッピング（物理的に繋げる）することに相当する。
【００２０】
このように構成することで、第２の機器２００側から第１の機器内のデバイス＃２（１０７）のメモリ空間を参照すると、その先頭位置にデバイス＃２のコンフィグレーション空間レジスタが常に表示される。このため、第１の機器１００内のプロセッサ１０１に異常が発生したような場合であっても、第２の機器２００側から第１の機器１００側の各デバイスのコンフィグレーション空間を参照できるため、第２の機器２００が第１の機器１００の動作状態を把握することが可能となる。また、第２の機器２００が、動作不要なデバイスについては停止するように設定したりといったことも可能となるメリットが生じる。
【００２１】
なお上記の機能はＰＣＩｅの規格で定められた内容から逸脱するものでは無い。つまり、上記の構成は、ＮＴポートを通過できるのは設定されたアドレス変換範囲に合致したメモリコマンドのみで、その他のメモリコマンドおよび、コンフィグレーションコマンドは通過できないというＰＣＩｅの規格を逸脱するものでは無い。このため、上記の機能を有しない通常のＰＣＩｅデバイスと混在させても問題は生じないというメリットもある。
【００２２】
このように、本実施の形態によれば、各デバイスのコンフィグレーション空間内のアドレスを、各デバイスのメモリ空間からもアクセスできるようすることで、ＮＴポート経由で接続された別のデバイスツリー側からも、メモリ空間アクセス用トランザクションによりアクセスすることができる。
【００２３】
実施の形態２．
図２は、実施の形態２に係る通信システムの構成例を示す。
本実施の形態では、第２の機器２００内のＰＣＩｅスイッチ＃１（２０４）の第１の機器と接続するために使用しているポートもＮＴポート２４０である。
この構成では第１の機器１００と第２の機器２００のＰＣＩｅ空間が直接接続されず、間にＮＴ空間を挟む形となるため、ＰＣＩｅスイッチ＃１（１０４）とＰＣＩｅスイッチ＃１（２０４）の各ポートの設定を行う際に、双方のメモリ空間のアドレスを意識することなく設定が行えるとのメリットが生じる。
なお、図２では、作図上の理由から、ＰＣＩｅデバイス＃１（１０６）には、メモリ空間レジスタ１０６１とコンフィグレーション空間レジスタ１０６２を図示していないが、図１と同様に、ＰＣＩｅデバイス＃１（１０６）にはメモリ空間レジスタ１０６１とコンフィグレーション空間レジスタ１０６２が含まれる。また、実施の形態１で説明したように、ＰＣＩｅデバイス＃２（１０７）、ＰＣＩｅデバイス＃３（１０８）、ＰＣＩｅデバイス＃１（２０６）、ＰＣＩｅデバイス＃２（２０７）、ＰＣＩｅデバイス＃３（２０８）にも、メモリ空間レジスタ１０６１に相当するメモリ空間レジスタが含まれており、コンフィグレーション空間レジスタ１０６２に相当するコンフィグレーション空間レジスタが含まれている。
【００２４】
図６は、図２に示した構成における、従来手法によるＰＣＩｅのメモリ空間とコンフィグレーション空間の関係を示す図である。
図５を用いて説明した場合と同様に、図６の場合も、第２の機器２００側から第１の機器１００内のＰＣＩｅデバイスのコンフィグレーション空間を参照することはできない。同様に第１の機器１００側から第２の機器２００内のＰＣＩｅデバイスのコンフィグレーション空間も参照することはできない。
【００２５】
図４は、図２に示した構成におけるＰＣＩｅのメモリ空間とコンフィグレーション空間の関係を示す図である。
本実施の形態では、第１の機器１００のメモリ空間及び第２の機器２００のメモリ空間のいずれにも、コンフィグレーション空間へのパスとなるコンフィグレーションポインタアドレスが設定されている。図４において、ハッチングを施している領域がコンフィグレーションポインタアドレスである。
本実施の形態では、実施の形態１で説明したように第２の機器２００が第１の機器１００のメモリ空間を経由して第１の機器１００のコンフィグレーション空間にアクセスできることに加えて、第１の機器１００も第２の機器２００のメモリ空間を経由して第２の機器２００のコンフィグレーション空間にアクセスすることができる。
第１の機器１００のＰＣＩｅスイッチ＃１（１０４）は、第２の機器２００のコンフィグレーション空間内のアドレスにアクセスする場合は、第２の機器２００のメモリ空間内のコンフィグレーションポインタアドレスを指定するメモリコマンドを第２の機器２００に送信する。
なお、第１の機器１００のメモリ空間と第２の機器２００のメモリ空間のアドレス変換を行う際に、どちらからも独立したＮＴ空間を経由するところが実施の形態１の図３で示したアドレス変換方法と異なっている。他の事項は基本的に図３と同じである。
【００２６】
実施の形態３．
本実施の形態では、実施の形態１及び実施の形態２に示す構成において、第１の機器１００内にコンフィグレーション空間レジスタへのアクセスを制限するためのアクセス制限設定部を設ける例を説明する。
このアクセス制限設定部は、コンフィグレーション空間内のアドレスにアクセス制限を設定する。アクセス制限設定部は、例えば、プロセッサ１０１である。
プロセッサ１０１は、例えば、各デバイス１０６〜１０８の設定を行う際に、アクセス制限設定部として、コンフィグレーション空間レジスタへのアクセス制限を設定する。プロセッサ１０１は、コンフィグレーション空間に、例えばリードとライトの両方が可能、リードのみが可能、いずれも不可能といった設定を行う。プロセッサ１０１が設定したアクセス制限は、例えば、アクセス制限用レジスタで記憶される。
ＰＣＩｅスイッチ＃１（１０４）は、第２の機器２００からのコンフィグレーション空間へのアクセスを要求するメモリコマンドを受信した際に、アクセス制限用レジスタで記憶されているアクセス制限の内容を参照して、コンフィグレーション空間に、対応するアクセス制限を実施する。
【００２７】
このように構成することで、コンフィグレーション空間レジスタを他の機器からのアクセスから保護することができる。
【００２８】
実施の形態２の構成において、第２の機器２００内に、上記と同様のアクセス制限設定部を設けてもよい。この場合も、例えばプロセッサ２０１がアクセス制限設定部として機能することが考えられる。
【００２９】
実施の形態４．
実施の形態３で説明したアクセス制限設定部は、コンフィグレーション空間内の複数のアドレス（デバイス＃１〜デバイス＃Ｎのコンフィグレーション空間）に一括で共通のアクセス制限を設定するようにしてもよい。
このようにすることで、容易に実施の形態１又は実施の形態２の構成と従来方式による構成とを切り替えることができる。
【００３０】
実施の形態５．
実施の形態３で説明したアクセス制限設定部は、コンフィグレーション空間内の複数のアドレス（デバイス＃１〜デバイス＃Ｎのコンフィグレーション空間）に一括で、メモリ空間からの全てのリードアクセスのみを許可するアクセス制限を設定することができる。
このようにすることで、一方の機器に異常が発生し、意図しないコンフィグレーション空間へのライト命令を発行したような場合でも、他方の機器のコンフィグレーション空間全てを保護することが可能となるため、信頼性の高いシステムを容易に構築できるメリットが生じる。
【００３１】
実施の形態６．
実施の形態３で説明したアクセス制限設定部は、コンフィグレーション空間内の複数のアドレス（デバイス＃１〜デバイス＃Ｎのコンフィグレーション空間）の各々に個別にアクセス制限を設定することができる。
このようにすることで、コンフィグレーション空間レジスタに対して最適なアクセス制限を設定することができる。
【００３２】
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、２つ以上を組み合わせて実施しても構わない。
あるいは、これらの実施の形態のうち、１つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、２つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【００３３】
１００  第１の機器、１０１  プロセッサ、１０２  ブリッジ、１０３  ルートコンプレックス、１０４  ＰＣＩｅスイッチ＃１、１０５  ＰＣＩｅスイッチ＃２、１０６  ＰＣＩｅデバイス＃１、１０７  ＰＣＩｅデバイス＃２、１０８  ＰＣＩｅデバイス＃３、１４０  ＮＴポート、２００  第２の機器、２０１  プロセッサ、２０２  ブリッジ、２０３  ルートコンプレックス、２０４  ＰＣＩｅスイッチ＃１、２０５  ＰＣＩｅスイッチ＃２、２０６  ＰＣＩｅデバイス＃１、２０７  ＰＣＩｅデバイス＃２、２０８  ＰＣＩｅデバイス＃３、２４０  ＮＴポート、１０６１  メモリ空間レジスタ、１０６２  コンフィグレーション空間レジスタ。
【図１】
2018147254.tif 000003
【図２】
2018147254.tif 000004
【図３】
2018147254.tif 000005
【図４】
2018147254.tif 000006
【図５】
2018147254.tif 000007
【図６】
2018147254.tif 000008
【図７】
2018147254.tif 000009