(57)【要約】画像処理用半導体プロセッサにおいて描画や表示制御のための制御情報や画像データ等の転送効率を向上させる。  ＣＰＵ（２）と、ＣＰＵに接続される第１バス（３）と、第１バスを介するデータ転送を制御するＤＭＡＣ（５）と、第１バスとデータ送受信を行うバスブリッジ回路（４）と、第１バス経由でＣＰＵからコマンドを受信して３次元画像処理を行う３次元画像処理部（６）と、バスブリッジ回路と第１回路モジュール（２０〜２３）とに接続された第２バス（１０）と、バスブリッジ回路と第２回路モジュール（３０〜３３）とに接続された第３バス（１１）と、第１バス、第２バス、３次元画像処理部及び外部メモリ（１５）に接続可能にされるメモリインタフェース回路（７）とを有し、バスブリッジ回路は外部回路と第２バスとの間のダイレクトメモリアクセス転送制御可能とされる。
2005015504.tif 000002
【特許請求の範囲】
【請求項１】
中央処理装置と、
前記中央処理装置に接続される第１バスと、
前記第１バスを介するデータ転送を制御するダイレクトメモリアクセスコントローラと、
前記第１バスとデータ送受信を行うバスブリッジ回路と、
前記第１バスを介して前記中央処理装置からコマンドを受信して３次元画像処理を行う３次元画像処理部と、
前記バスブリッジ回路と複数の第１回路モジュールとに接続された第２バスと、
前記バスブリッジ回路と第２回路モジュールとに接続された第３バスと、
前記第１バス、第２バス及び３次元画像処理部に接続され、外部のメモリに接続可能にされるメモリインタフェース回路と、を半導体チップに有し、
前記バスブリッジ回路は半導体チップの外部に接続される回路と前記第２バスとの間のダイレクトメモリアクセス転送を制御可能であることを特徴とする画像処理用半導体プロセッサ。
【請求項２】
前記バスブリッジ回路に接続され、前記中央処理装置から複数の第１回路モジュールへのレジスタ設定に利用可能な第４バスを更に有することを特徴とする請求項１記載の画像処理用半導体プロセッサ。
【請求項３】
前記バスブリッジ回路は更に、前記第２バスと第３バスとの間のダイレクトメモリアクセス転送を実行可能であることを特徴とする請求項２記載の画像処理用半導体プロセッサ。
【請求項４】
前記中央処理装置は１サイクルで２命令実行可能なスーパースカラ構成を有し、中央処理装置の処理サイクル内で所定ビット数のデータを２組用意し、用意された２組のデータを１バスサイクルで第１バスへ転送可能であることを特徴とする請求項１記載の画像処理用半導体プロセッサ。
【請求項５】
前記第１回路モジュールとして２次元画像処理を行う２次元画像処理部を有することを特徴とする請求項１記載の画像処理用半導体プロセッサ。
【請求項６】
前記第１回路モジュールとして前記２次元画像処理部又は３次元画像処理部で生成された画像データの表示制御を行う表示制御部を有することを特徴とする請求項５記載の画像処理用半導体プロセッサ。
【請求項７】
第２回路モジュールとしてＧＰＳモジュールを有することを特徴とする請求項１記載の画像処理用半導体プロセッサ。
【請求項８】
前記２次元画像処理部は、太線描画に際して、描画方向を規定する中心線に対して垂直方向の描画線幅を規定するための描画線幅規定ベクトルを求め、中心線の始点及び終点と前記描画線幅規定ベクトルに基づいて太線の矩形を求め、矩形の４頂点の論理的な座標に対する丸め処理を行って画素に応ずる４頂点の描画座標を求め、４頂点の描画座標で囲まれる領域をポリゴンとして描画することを特徴とする請求項１記載の画像処理用半導体プロセッサ。
【請求項９】
前記２次元画像処理部は、描画方向の中心線に対して左右非対称な幅となるように描画線幅規定ベクトルを求めることを特徴とする請求項８記載の画像処理用半導体プロセッサ。
【請求項１０】
前記２次元画像処理部は、前記丸め処理において、画素座標から相対的に離れた所定の論理座標に対しては、例外的に、描画方向に垂直な向きの画素座標に代えて描画方向に向く画素座標を描画座標に割当てることを特徴とする請求項９記載の画像処理用半導体プロセッサ。
【請求項１１】
前記２次元画像処理部は、隣接する画素座標間で複数分割されたどの領域に論理座標が属するかにより、前記例外的に画素座標を割当てる対象である所定の論理座標か否かを判断することを特徴とする請求項１０記載の画像処理用半導体プロセッサ。
【請求項１２】
前記２次元画像処理部は、描画線幅規定ベクトルの起点を中心とする２次元座標上で前記描画線幅規定ベクトルが属する象限に応じて、前記例外的に割当てる描画座標の位置を決定することを特徴とする請求項１１記載の画像処理用半導体プロセッサ。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は画像処理用半導体プロセッサに関し、例えばカーインフォメーションシステム分野、セットトップボックス、デジタルＴＶ、移動体通信分野、デジタル音声端末、メディア端末、携帯端末等の、画像処理を必要とする分野に適用して有効な技術に関する。
【背景技術】
【０００２】  特許文献１には３次元グラフィックス処理を行うグラフィックプロセッサについて記載が有る。特許文献２には太線描画機能を有するグラフィックプロセッサについて記載がある。【０００３】  本発明者は画像処理用半導体プロセッサにおける描画や表示制御のための制御情報やデータの転送を最適化することについて検討した。本発明に先立って本発明者が検討した画像処理用半導体プロセッサは、内部にピクセルバスとＩＯバスを有し、中央処理装置（単にＣＰＵとも記す）はＣＰＵインタフェースを介して前記ピクセルバス経由で外部のデータメモリをアクセスする。ＣＰＵインタフェースにはバスブリッジ回路が接続され、このバスブリッジ回路はＣＰＵからのデータを周辺モジュールに分配したり、周辺モジュールからのデータをＣＰＵに送信したりするブリッジの役目を担っている。このバスブリッジ回路にはダイレクトメモリアクセスコントローラ（ＤＭＡＣ）が内蔵され、ＣＰＵの介在なく、周辺モジュールからのデータをピクセルバス経由で前記データメモリに書き込んだり、また前記データメモリにあるデータを周辺モジュールに転送することが可能にされる。前記ピクセルバスに接続されているモジュール、すなわち、画像モジュール、ＣＰＵインタフェース、及びバスブリッジ回路は自モジュールと前記データメモリとの転送のみが可能である。ピクセルバス上ではモジュール相互間の転送はサポートされていない。【０００４】
【特許文献１】特開２００３−２０８６３１号公報（図３２）
【特許文献２】特開平６−２８４８６号公報（図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】  本発明者は上記画像処理用半導体プロセッサに関し以下の問題点の有ることを見出した。第１は、ＣＰＵが画像処理用半導体プロセッサの外付けであり、ＣＰＵインタフェースを通して画像処理用半導体プロセッサ及びデータメモリをアクセスすることになるので、データ転送レイテンシーが悪化する。特に、シンクロナスＤＲＡＭ（ダイナミックランダムアクセスメモリ）等からなるデータメモリへのアクセスおよび周辺モジュールへのアクセスに関するレイテンシーがシステム性能に大きく影響する場合が想定される。第２は、ピクセルバス上で、周辺モジュールとデータメモリの転送又は画像モジュールとデータメモリの転送と、ＣＰＵとデータメモリの転送とが競合する虞があり、そのような競合はＣＰＵのデータ処理速度を低下させる可能性がある。画像処理系のモジュールはリアルタイム性が要求されるため、バスの優先権を高くする必要があり、その場合にＣＰＵがピクセルバスのバス権を取るまでの待ち時間が不必要に長くなるケースが発生する虞がある。例えばアービトレーション方式としてラウンドロビン方式（総当たりリーグ戦方式）を採用した場合、ピクセルバスにアクセスするモジュールの数が増えるとＣＰＵに対するバス権割り当て待ち時間が悪化する。第３は、ピクセルバス上で専用のＤＭＡＣがないためにＣＰＵやＣＰＵバス上のデバイスからデータメモリへの転送はＣＰＵ制御による逐次転送もしくはＣＰＵが持つＤＭＡチャネルのリソースを使用する転送によって行う必要があり、ＣＰＵの負荷が過大になることも予想される。【０００６】  更に本発明者は画像モジュールの一つとして２次元描画を行う２次元画像処理部による太線描画について検討した。太線を描画する場合、始点と終点を移動しながら始点から終点に至る画素を塗りつぶす方式を採用した場合、描画方向が相異すると、始点から終点に至る画素を塗りつぶす本数が同じであっても太線の幅が異なるという問題点のあることが本発明者によって見出された。【０００７】  本発明の目的は描画や表示制御のための制御情報や画像データ等の転送効率を向上させることができる画像処理用半導体プロセッサを提供することにある。【０００８】  本発明の別の目的は画像情報や制御情報の転送経路上での競合によるデータ転送効率低下を抑制することが可能な画像処理用半導体プロセッサを提供することにある。【０００９】  本発明の別の目的は大量の画像データに対するリアルタイムの描画及び表示制御を可能にするという点でパフォーマンスの優れた画像処理用半導体プロセッサを提供することにある。【００１０】  本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】  本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。【００１２】  〔１〕本発明に係る画像処理用半導体プロセッサは、中央処理装置と、前記中央処理装置に接続される第１バスと、前記第１バスを介するデータ転送を制御するダイレクトメモリアクセスコントローラと、前記第１バスとデータ送受信を行うバスブリッジ回路と、前記第１バスを介して前記中央処理装置からコマンドを受信して３次元画像処理を行う３次元画像処理部と、前記バスブリッジ回路と複数の第１回路モジュールとに接続された第２バスと、前記バスブリッジ回路と第２回路モジュールとに接続された第３バスと、前記第１バス、第２バス及び３次元画像処理部に接続され、外部のメモリに接続可能にされるメモリインタフェース回路と、を半導体チップに有し、前記バスブリッジ回路は半導体チップの外部に接続される回路と前記第２バスとの間のダイレクトメモリアクセス転送を制御可能とされる。【００１３】  前記第１回路モジュールとして例えば２次元画像処理例えば２次元の描画処理を行う２次元画像処理部を有する。また、前記第１回路モジュールとして例えば前記２次元画像処理部又は３次元画像処理部で生成された画像データの表示制御を行う表示制御部を有する。第２回路モジュールとして例えばＧＰＳ（ｇｌｏｂａｌ  ｐｏｓｉｔｉｏｎｉｎｇ  ｓｙｓｔｅｍ）モジュール等を有する。【００１４】  上記手段によれば、中央処理装置を第１バスに直結したことによりその間にバスコントローラ等を介在させることを要せず、その分だけ中央処理装置とのデータ転送の高速化を実現できる。また、中央処理装置が１サイクルで複数の命令を発行するスーパースカラ構造を有する場合、動作周波数の約２倍の命令処理実行能力を有することが可能である。その命令実行に必要なアクセス対象が第１バスを経由した外部メモリになる場合、アクセス速度は第１バス上でのアクセス効率に律速される。このとき、第１バスには画像処理演算速度に対する重要性の度合という観点より選んだ第１回路モジュールだけを接続することにより、第１バス上でのアクセス競合による待ち時間の増大を抑制し、中央処理装置によるデータ処理速度向上に資することが可能になる。【００１５】  第１バスでバスマスターになるのはＣＰＵとＤＭＡＣのみになるのでＣＰＵが第１バス上で転送要求に対して待たされるケースはほとんど発生しなくなる。画像処理系回路モジュールのような第１回路モジュールは第２バスに関するバスアービトレーションロジックで予め調停され、真にリアルタイム応答が要求される画像処理系回路モジュールが選択された後にＣＰＵおよび３次元画像処理部との第１バスに関するバス権調停が行なわれる。画像処理系回路モジュールはリアルタイム応答性つまり時間平均のスループット性能が要求されるが、ＣＰＵほどのアクセスレイテンシー性能は必要とされない。メモリインタフェース回路内のバス調停論理は、３次元画像処理部からのアクセスリクエスト、第１バスに接続する回路モジュールからのアクセスリクエスト、第２バス経由のアクセスリクエストの３者間でバス権調停を行なう。したがって、第１バスにはＣＰＵと真に高速転送が必要なモジュー���だけを接続するようにできるから、バスの高速化が容易となる。画像処理系回路モジュールのような第１回路モジュールは第２バスに関するバスアービトレーションロジックで調停するから、画像処理系回路モジュールのリアルタイム応答性は実質的に損なわれない。【００１６】  第１バスと第２バスを分離したからＣＰＵによる周辺回路モジュールのアクセスと画像処理系回路モジュールのメモリデータ転送が衝突することも少ない。よって、ＣＰＵアクセスのレイテンシーを下げることなく周辺回路モジュールとの間のデータ転送を行うことが可能になる。【００１７】  また、３次元画像処理部を第１バスに接続することにより、３次元画像処理においてコマンドや大量の頂点データなどのオペランドの転送をＣＰＵと３次元画像処理部との間で行う必要性を満足させることができる。さらに３次元画像処理は頂点データの処理の過程で陰面消去やテクスチャマッピングの際に大量の画像データを頻繁にメモリとやり取りする必要があり、他の画像処理系回路モジュールと比較してスループットだけでなくメモリに対するアクセスレイテンシーを抑える必要があり、専用バスでメモリインタフェース回路に直結する構成によってそれを満足させることができる。【００１８】  本発明の具体的な形態として、バスブリッジ回路に接続され、前記中央処理装置から複数の第１回路モジュールへのレジスタ設定に利用可能な第４バスを更に有する。前記バスブリッジ回路は更に、前記第２バスと第３バスとの間のダイレクトメモリアクセス転送を実行可能である。【００１９】  前記中央処理装置が１サイクルで２命令実行可能なスーパースカラ構成を有する場合には、第１バスは中央処理装置の内部バスのビット数の２倍のビット数を有することが望ましい。中央処理装置の処理サイクル内で所定ビット数のデータを２組用意し、用意された２組のデータを１バスサイクルで第１バスへ転送可能である。【００２０】  〔２〕前記２次元画像処理部は、太線描画に際して、描画方向を規定する中心線に対して垂直方向の描画線幅を規定するための描画線幅規定ベクトルを求め、中心線の始点及び終点と前記描画線幅規定ベクトルに基づいて太線の矩形を求め、矩形の４頂点の論理的な座標に対する丸め処理を行って画素に応ずる４頂点の描画座標を求め、４頂点の描画座標で囲まれる領域をポリゴンとして描画する。【００２１】  このとき、前記２次元画像処理部は、描画方向の中心線に対して左右非対称な幅となるように描画線幅規定ベクトルを求める。これにより、片方の描画線幅規定ベクトルが丸め処理により長さが延びた場合、他方の描画線幅規定ベクトルは短く丸められる傾向を採り、結果として、描画幅の全体的な伸縮が打ち消され、若しくは緩和される方向に向けられる。【００２２】  前記２次元画像処理部は、前記丸め処理において、画素座標から相対的に離れた所定の論理座標に対しては、例外的に、描画方向に垂直な向きの画素座標に代えて描画方向に向く画素座標を描画座標に割当てる。これによりる丸め方向は描画幅を直径とする円の接線方向（太線の描画方向）になっている。これは、４個の画素格子間の中央部分は丸め処理によって相対的に大きな誤差を生ずる部分であり、そのような部分に対��て丸め処理を行なっても法線の長さ（太線の幅）が極力伸縮しない方向に丸めようとするものである。【００２３】  具体的な形態として、隣接する画素座標間で複数分割されたどの領域に論理座標が属するかにより、前記例外的に画素座標を割当てる対象である所定の論理座標か否かを判断する。また、描画線幅規定ベクトルの起点を中心とする２次元座標上で前記描画線幅規定ベクトルが属する象限に応じて、前記例外的に割当てる描画座標の位置を決定する。【００２４】  上記太線描画処理では、太線の中心の左右で非対称に行うこと、また、Ｘ軸、Ｙ軸単独に座標を丸めず、互いの軸に対してどちらに丸めたかを考慮して２次元的に丸めを行うことにより、低解像度でも全ての方向に対して太さの誤差が少なく太線描画を行うことができる。
【発明の効果】
【００２５】  本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。【００２６】  すなわち、描画や表示制御のための制御情報や画像データ等の転送効率を向上させることができる。【００２７】  画像情報や制御情報の転送経路上での競合によるデータ転送効率低下を抑制することが可能である。【００２８】  大量の画像データに対するリアルタイムの描画及び表示制御を可能にするという点で画像処理用半導体プロセッサのデータ処理パフォーマンスを向上させることができる。
【図面の簡単な説明】
【００２９】［図１］本発明の一例に係る画像処理プロセッサを用いたナビゲーションシステムを例示するブロック図である。
［図２］図１の画像処理プロセッサに対する比較例の画像処理プロセッサを示すブロック図である。
［図３］図１の画像処理プロセッサにおいてりメモリインタフェース回路内のバスアービタによるバスアービトレーションのアルゴリズムを例示する説明図である。
［図４］図１の画像処理プロセッサの処理におけるデータの流れの態様を示す説明図である。
［図５］始点と終点を移動しながら始点から終点に至る画素を塗りつぶす方式を採用した場合に描画方向が相異すると始点から終点に至る画素を塗りつぶす本数が同じであっても太線の幅が異なる様子を示す説明図である。
［図６］２Ｄグラフィックスモジュールによる太線描画の基本的な処理手順の概略を示す工程図である。
［図７］中心線と法線ベクトルで規定される論理座標による太線描画の矩形領域を示す説明図である。
［図８］画素の格子点に対する論理座標点に対し画素ピッチの範囲でＸ，Ｙ方向に四捨五入して割り当てられる画素座標点を示す説明図である。
［図９］論理座標である頂点座標点と画素座標点は画素ピッチに対し最大で±√２／２変化することを示す説明図である。
［図１０］幅が９画素分の太線を描画する場合に描画方向に応じて描画幅が異なる様子を示す説明図である。
［図１１］２次元的な法線ベクトルの丸め処理の原理を示す説明図である。
［図１２］法線ベクトルの長さを非対象とすることの意味を示す説明図である。
［図１３］太線幅を９画素分とするとき始点Ａを中心に論理座標Ｐ１，Ｐ２が採り得る位置を示す説明図である。
［図１４］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画の第１工程を例示する説明図である。
［図１５］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画の第２工程を例示する説明図である。
［図１６］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画の第３工程を例示する説明図である。
［図１７］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画の第４工程を例示する説明図である。
［図１８］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画の第５工程を例示する説明図である。
［図１９］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画の第６工程を例示する説明図である。
［図２０］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画を３角形の塗りつぶしで行なう処理の第１工程を示す説明図である。
［図２１］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画を３角形の塗りつぶしで行なう処理の第２工程を示す説明図である。
［図２２］画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画を３角形の塗りつぶしで行なう処理の第３工程を示す説明図である。
［図２３］２Ｄグラフィックスモジュールの一例を示すブロック図である。
［図２４］太線化処理部の一例を示すブロック図である。
［図２５］線幅非対象化回路の一例を示すブロック図である。
［図２６］線幅非対象化回路の別の例を示すブロック図である。
［図２７］２次元丸め部の一例を示すブロック図である。
【符号の説明】
【００３０】  １  画像処理プロセッサ
２  中央処理装置
３  第１バス
４  バスブリッジ回路
５  ダイレクトメモリアクセスコントローラ
６  ３Ｄグラフィックスモジュール
７  メモリインタフェース回路
１０  第２バス
１１  第３バス
１２  第４バス
１３  外部バス
１４  ３Ｄ専用バス
１５  外部メモリ
１８  バスアービタ
１９  メモリコントロールロジック
２０  ２Ｄグラフィックスモジュール
２１  ビデオ信号入力回路
２２  表示制御回路
２３  ＡＴＡＰＩ
３０  ＳＰＤＩＦ
３１  ＧＰＳ用のベースバンド処理部
３２  ＳＣＩＦ
４０  ダイレクトメモリアクセスコントローラ
４１  バスコントローラ
５２  太線化処理部
【発明を実施するための最良の形態】
【００３１】  《画像処理プロセッサ》
図１には本発明の一例に係る画像処理プロセッサを用いたナビゲーションシステムが例示される。同図に示される画像処理プロセッサ１は、特に制限されないが、相補型ＭＯＳ（ＣＭＯＳ）集積回路製造技術により、単結晶シリコンなどの１個の半導体基板（半導体チップ）に形成される。【００３２】  画像処理プロセッサ１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２を内蔵し、ＣＰＵ２が接続する第１バス３には、バスブリッジ回路（ＢＢＲＧ）４、ダイレクトメモリアクセスコントローラ（ＤＭＡＣ）５、３次元画像の描画処理などの３次元画像処理を行う３次元画像処理部としての３Ｄグラフィックスモジュール（３ＤＧＦＩＣ）６、及びメモリインタフェース回路（ＭＲＹＩＦ）７が接続される。前記バスブリッジ回路４には更に第２バス１０、第３バス１１、第４バス１２及び外部バス１３に接続される。前記メモリコントローラ５には更に３Ｄ専用バス１４が接続される。【００３３】  メモリインタフェース回路７にはメモリバス１６を介して外部メモリ１５が接続される。外部メモリ１５は例えばダブルデータレート−シンクロナスＤＲＡＭ（ＤＤＲ−ＳＤＲＡＭ）によって構成され、ＣＰＵが使用するためのメインメモリ、さらにはフレームバッファ等の画像メモリとして利用される。メモリインタフェース回路７はバスアービトレーションとメモリ制御を行う。バスアービトレーションはバス３，１０，１４を介する外部メモリアクセスの競合を調停する制御であり、バスアービタ（ＡＲＢＴ）１８で行う。メモリ制御は、バスを介するアクセス要求にしたがってクロック信号の立ち上り及び立ち下がりに同期して外部メモリ１５をリード又はライト動作させるストローブ信号などのタイミング信号を形成して外部メモリ１５を動作させる制御であり、メモリコントロールロジック（ＭＣＮＴ）１９で行う。尚、外部メモリ１５はＤＤＲ−ＳＤＲＡＭに限定されず、シングルデータレート（ＳＤＲ）−ＳＤＲＡＭ等であってもよい。【００３４】  前記３Ｄ専用バス１４に接続される３Ｄグラフィックスモジュール６は第１バス３を介してＣＰＵ２から３Ｄ描画コマンドなどの画像処理コマンドを受取って３Ｄ描画処理を行う。描画は外部メモリ１５のフレームバッファ領域に対して行なわれる。【００３５】  第２バス１０には第１回路モジュールとして、２次元画像処理部としての２Ｄグラフィックスモジュール（２ＤＧＦＩＣ）２０、ビデオ信号入力回路（ＶＤＯＩＮ）２１、表示制御回路（ＤＵ）２２、及びＡＴアタッチメントパケットインタフェース回路（ＡＴＡＰＩ）２３等が接続される。前記２グラフィックスモジュール２０は２次元画像の描画処理などの２次元画像処理を行う回路であり、例えば太線描画機能も備える。描画は外部メモリ１５のフレームバッファ領域に対して行なわれる。表示制御回路２２は外部メモリ１５のフレームバッファ領域に描画された画像データを順次読み出して、ラスタスキャン型のディスプレイ２５に表示タイミングに同期させて出力する制御を行う。ビデオ信号入力回路２１はディジタルビデオ信号を入力する。ディジタルビデオ信号はテレビ信号などのアナログビデオ信号をコード化して出力するＮＴＳＣ（Ｎａｔｉｏｎａｌ  Ｔｅ���ｅｖｉｓｉｏｎ  Ｓｙｓｔｅｍ  Ｃｏｍｍｉｔｔｅｅ）デコーダ（ＮＴＣＤＥＣ）２６から出力される。ＡＴＡＰＩ２３はハードディスクドライブ、ＤＶＤ又はＣＤ−ＲＯＭドライブ等のディスクドライブ装置（ＤＤＲＶ）２７に接続され、ＤＶＤ又はＣＤ−ＲＯＭ等の記録媒体から記録情報を読取って取り込むためのインタフェース制御を行う。ナビゲーションシステムにおいてＤＶＤやＣＤ−ＲＯＭには地図データなどが記録されている。【００３６】  第４バス１２には２Ｄグラフィックスモジュール２０、ビデオ信号入力回路２１、及び表示制御回路２２が接続される。【００３７】  第３バス１１には第２回路モジュールとして、ＳＰＤＩＦ準拠の音声データ入出力インタフェース（ＳＰＤＩＦ）３０、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）用のベースバンド処理部（ＧＰＳＢＢ）３１、調歩同期シリアルコミュニケーションインタフェース回路（ＳＣＩＦ）３２及びタイマ（ＴＭＵ）３３などが接続される。ＳＰＤＩＦ３１には音声用のディジタル・アナログ変換回路（ＤＡＣ）が接続され、変換されたアナログ音声信号はスピーカ３５で音声に変換される。ＧＰＳＢＢ３１はＧＰＳ用の高周波部（ＧＰＳＲＦ）３６が接続され、アンテナモジュールを介して人工衛星に電波を反射させて、衛星の捕捉演算処理などを行う。【００３８】  外部バス１３にはナビゲーション用のプログラム及び制御データ等を格納する電気的に書換え可能なフラッシュメモリ（ＦＬＡＳＨ）３７及びＣＰＵ２のワークメモリなどに利用されるスタティックランダムアクセスメモリ（ＳＲＡＭ）３８などが接続される。尚、マルチＣＰＵシステムを構成する場合には、図示はしないが、外部バス１３に更に別のプロセッサを接続することが可能である。【００３９】  第１バス３はマルチマスターバスとされ、これに接続する夫々の回路モジュールはマスターポートとスレーブポートを独立に有しており、自回路モジュールからのリード／ライトの転送要求はマスターポートから命令として発行し、他回路モジュールからの転送要求はバス調停回路での調停を経た結果、スレーブポートに転送要求として通知され、バストランザクションが実行される。バス調停回路は特に図示はしないが第１バス３の途中に配置されている。このマルチマスターバス制御方式により、第１バス３は回路モジュール間の全ての組み合わせの転送が可能にされる。例えばＣＰＵ２とＤＭＡＣ５、バスブリッジ回路４とメモリインタフェース回路７、バスブリッジ回路４とＣＰＵ２の転送等が可能である。【００４０】  第２バス１０は第１バス３と同様にマルチマスターバスとされるが、バスのソース、デスティネーションの一方は必ずメモリインタフェース回路７になっている。すなわち、バスブリッジ回路４、２ＤＧＦＩＣ２０、ＶＤＯＩＮ２１、ＤＵ２２、ＡＴＡＰＩＵ２３は外部メモリ１５との間の転送のみを行う。第１回路モジュールである画像系の回路モジュール２０，２１，２２，２３は自回路ブロックで画像処理を行った後には外部メモリ１５に一旦データを格納する必要があるか、或いは外部メモリ１５のデータを表示制御回路２２に転送する必要があり、全ての転送は必ずメモリ１５を経由する構成になっている。���送をメモリ１５との間のものに限定することにより、バスの構成をシンプルにでき、また高速なバースト転送を可能に出来る利点がある。更に、画像系の回路モジュール２０，２１，２２，２３は全て第３バス１１とも接続されているが、こちらは画像系回路モジュールの動作モード等を制御するようなレジスタに関するアクセスのバスであり、ＣＰＵ２からのレジスタリード／ライトにのみ使用する。【００４１】  第３バス１１はシングルマスターのバスであり、バスブリッジ回路４がバスマスターになっている。転送方式としてはＣＰＵ２からのパラレル入出力（ＰＩＯ）転送命令をバスブリッジ回路４で第３バスへの転送に変換するケースと、バスブリッジ回路４に内蔵されているＤＭＡＣ４０を使用して、第２回路モジュールとしての周辺回路モジュール３０，３１，３２，３３と外部メモリ１５の転送を行うケースがある。後者のケースにおいて、ＤＭＡＣ４０は第３バス１１と第２バス１０の間を橋渡しする役目を担い、第２バス１０に対してはバスマスターとして上記メモリインタフェース回路内のバスアービタ１８に転送要求を発行する。例えば、周辺回路モジュールの例であるＧＰＳＢＢ３１は、衛星の捕捉計算を行い、即位計算は内蔵ＣＰＵ２によりソフトウエアで行う構成を採用した場合、ＧＰＳＢＢ３１から第３バス１１上で必要なデータすなわち、捕捉した衛星の情報と時間差データのみを送ればよく、データ転送量を最小にすることが可能になり、コストパフォーマンスに有利なシステムを構築することが出来る。【００４２】  ３Ｄ専用バス１４は３Ｄグラフィックスモジュール６とメモリインタフェース回路７とを接続する専用バスであり、ここでは専用バスの利点を生かし、レイテンシーを最小限にしたバス構成になっている。【００４３】  外部バス１３はＣＰＵ２からのＰＩＯアクセスとバスブリッジ回路内のＤＭＡＣ４０を使用した前記ＦＬＡＳＨ３７やＳＲＡＭ３８と外部メモリ１５との間のＤＭＡ転送を可能にしている。バスブリッジ回路４は外部バス１３に対してバスステートコントコントローラ（ＢＳＣ）４１でバス幅やウェイトサイクル挿入などのバス制御を行う。第３バス１１、第４バス１２、及び外部バス１３に関するバス権調停はバスブリッジ回路４内の図示を省略するバスアービトレーションロジックで行なう。【００４４】  前記ＣＰＵ２は例えば３２ビットＣＰＵでありデータ処理単位は３２ビットとされる。このＣＰＵ２は１サイクルで複数の命令を発行するスーパースカラ構造を有することにより、動作周波数の約２倍の命令処理実行能力を有する。即ち、ＣＰＵ２は所謂２ウェイ・スーパースカラ構造を有する。これに呼応して前記第１バス３は６４ビットバスとされる。したがって、ＣＰＵ２は並行に２命令を実行して夫々３２ビットのデータを２組用意し、用意された合計６４ビットの２組のデータを１バスサイクルで第１バス３へ転送可能である。また、ＣＰＵ２は１バスサイクルで第１バス３から６４ビットのデータをリードし、リードした下位３２ビットと上位３２ビットを別々に並行して演算処理することも可能にされる。【００４５】  以上の構成を有する画像処理プロセッサ１においては、ＣＰＵ２が第１バス３に直結されるから、図２の比較例に係る画像処理プロセッサのようにＣＰＵ内のバスコントローラ、ＣＰＵバス、ＣＰＵインタフェース回路を通して外部メモリに至ることを要せず、外部メモリアクセスに対して大幅な高速化が実現できる。さらにＣＰＵ２を画像処理プロセッサと同じ半導体チップに集積したことにより、図２の比較例のようにＣＰＵと画像処理プロセッサを外部バスで接続することを要せず、そのような外部バスよりも格段に高速の半導体集積回路の内部バスを使用することが出来るようになる。ＣＰＵ２は１サイクルで複数の命令を発行するスーパースカラ構造を有することにより、動作周波数の約２倍の命令処理実行能力を有することが可能だが、そのアクセスが第１バス３を経由した外部メモリ１５になる場合、そのアクセス速度は第１バス３上でのアクセス効率に律速され、上記の命令処理性能値が悪化することがある。この点に関しても、上記画像処理プロセッサ１では画像処理の高速化に対する重要性の度合という観点から選んだ回路モジュール５，６のみ第１バス３に接続する構成を採用することにより、第１バス３上でのアクセス競合による待ち時間の増大を抑制し、ＣＰＵ２の動作速度低下を効果的に抑制することができる。換言すれば、ＣＰＵによる命令実行速度を高速に保つことが容易になる。【００４６】  また、図２の比較例の場合、ＣＰＵからのアクセスはＣＰＵインタフェース回路経由で第２バスに伝達されるようになっており、第２バスにおいて画像処理系回路モジュールとの調停を必要としていた。画像処理系回路モジュールはリアルタイム応答が要求されるためこの構成では、ＣＰＵの要求が比較的低い優先度として扱われることになり、結果として、ＣＰＵのアクセスレイテンシーが悪くなることがある。図３には図１の画像処理プロセッサ１においてメモリインタフェース回路７内のバスアービタ１８によるバスアービトレーションのアルゴリズムが示される。同図に示されるアルゴリズムではアービトレーションは３段階で行なわれる。先ず、第３バス１１からのバスブリッジ回路４経由による周辺回路モジュール３０，３１，３２，３３に対するアクセスリクエストの中からラウンドロビン方式（ラウンドロビン１）ＲＲ１で１つのリクエストが選択される。また第２バス１０に係る画像処理系回路モジュール２０，２１，２２，２３のアクセスリクエストに中からラウンドロビン方式（ラウンドロビン２）ＲＲ２で１つのリクエストが選択される。上記の選ばれた２つのリクエストに対しては固定優先でその中から１つのリクエストが選択される。画像処理系回路モジュールには通常リアルタイム性が要求されるので、画像処理系回路モジュールからのリクエストが常に優先される。そして、選ばれた画像処理系回路モジュール、または周辺回路モジュールのリクエストは３Ｄグラフィックスモジュール６と第１バス３からのアクセスモジュールとの間でラウンドロビン・固定優先方式ＲＲ３で調停される。ラウンドロビン・固定優先方式とは、上記画像処理系回路モジュールがリクエストを出しているときは画像処理系回路モジュールを優先し、周辺回路モジュールがリクエストを出しているときは３つのリクエストは均等にラウンドロビンされて選択される方式を意味する。ここで、図２���比較例と比べると、図１の構成では第１バス３を共有する回路モジュールはＣＰＵ２、バスブリッジ回路４、ＤＭＡＣ５、３Ｄグラフィックスモジュール６のみとなり、この場合バスマスターになるのはＣＰＵ２とＤＭＡＣ５のみになるので、ＣＰＵ２が第１バス３上で転送要求に対して待たされるケースはほとんど発生しなくなる。画像処理系回路モジュール２０〜２３は事前に第２バス１０側でラウンドロビンＲＲ２によりバスアービトレーションされ、これによって真にリアルタイム応答が要求される画像系回路モジュールが選択された後に、ＣＰＵ２及び３Ｄグラフィックスモジュール６との調停を行う。画像処理系回路モジュールはリアルタイム応答、即ち時間平均のスループット性能が要求されるが、その一方でＣＰＵ２ほどのアクセスレイテンシー性能は必要とされない。したがって、アービトレーションを上記説明のようにＲＲ１〜ＲＲ３に示されるように複数段階で行ってもトータル性能としての劣化は生ぜず、その上、真に応答が必要な画像系回路モジュールに係るアクセス要求が選択されているので、ＣＰＵ２が不必要に待たされることがなくなる。要するに、ＣＰＵ２を含めて全ての回路モジュールに対しラウンドロビンによるバスアービトレーションを行った場合には、バスアクセス要求でＣＰＵと競合する回路モジュールの数が増え、その分バスアクセス要求が承認される確率が低くならざるを得ない。従って、図１の構成により、第１バス３にはＣＰＵ２と真に高速転送が必要な回路モジュールのみを接続することができ、バスの高速化が容易となる。更に、画像処理系回路モジュールからの要求は第２バス１０側で調停することにより、画像処理系回路モジュールの動作に要求されるリアルタイム性が阻害されることはない。【００４７】  また、周辺回路モジュール３０〜３３のＤＭＡ転送による外部メモリ１５との間の転送においても、第２バス１０上でＣＰＵ２からのアクセスと衝突することはない。第２バス１０と第１バス３を分離したことによりＣＰＵ２アクセスのレイテンシーを下げることなく第３バス１１経由で周辺回路モジュールと外部メモリ１５との間のデータ転送を行うことが可能になっているからである。【００４８】  図２の比較例に比べて、３Ｄグラフィックスモジュール６が追加になっているが、３Ｄグラフィックスは通常大量の頂点データ等のデータ転送をＣＰＵ２と３Ｄグラフィックスモジュール６との間で行う必要があり、そのために図１では３Ｄグラフィックスモジュール６を第１バス３に接続してある。さらに３Ｄグラフィックスでは頂点データの処理の過程で陰面消去やテクスチャマッピングの際に大量の画像データを頻繁にメモリとやり取りする必要があり、他の画像系回路モジュール２０〜２３と比較してスループットだけでなくメモリに対するアクセスレイテンシーを抑えることが必要になり、これを考慮して、専用バス１４でメモリインタフェース回路７に直結する構成を採用してある。これにより、３Ｄグラフィックスモジュール６に対するバスアービトレーションは前記ラウンドロビンＲＲ３の１段の階層で済むので、ＣＰＵ２と同様にアクセス性能を確保することができる。【００４９】  図４には図１の画像処理プロセッサ１の処理にお���るデータの流れの態様が示される。多くの回路モジュールが外部メモリ１５及びＣＰＵ２との転送を必要としている。転送の種類はＴ１〜Ｔ８に大別される。Ｔ１の転送はＣＰＵ２による外部メモリ１５のアクセスであり、具体的にはＣＰＵ２内のキャッシュメモリの読み出し、書き戻しである。Ｔ２の転送はＤＭＡＣ５による転送で、ＣＰＵ２あるいは外部メモリ１５をソース転送又はデスティネーション転送として転送を行う。Ｔ３の転送は３Ｄグラフィックスモジュール６と外部メモリ１５との間の画像データ転送である。Ｔ４の転送はＣＰＵ２から周辺回路モジュール３０〜３３の一つへのＰＩＯアクセスである。Ｔ５の転送は画像処理系回路モジュール２０〜２３の一つと外部メモリ１５との間の画像データ転送である。Ｔ６の転送は周辺回路モジュール３０〜３３の一つと外部メモリ１５との間のＤＭＡ転送である。Ｔ７の転送は外部バス１３上の回路モジュールと外部メモリ１５との間のＤＭＡ転送である。Ｔ８の転送は、ＣＰＵ２から外部バス１３上の回路モジュールへのＰＩＯアクセス転送である。Ｔ９の転送はＣＰＵ２から３Ｄグラフィックスモジュール６への頂点データの転送である。【００５０】  メモリインタフェース回路７への接続バスが第１バス３、第２バス１０、３Ｄ専用バス１４と３系統に分割され、メモリインタフェース回路７は各バスに対し、データＦＩＦＯバッファを有し、各バス上での転送動作の待ちが極力発生しないようにされている。これにより、上記Ｔ１〜Ｔ８の形態の転送を効率的に行うことが可能になる。【００５１】  ＣＰＵ２がある回路モジュールと転送する間に他の回路モジュールが外部メモリ１５との間で転送可能な転送形態の組み合わせは以下の通りである。すなわち、〔１〕Ｔ１とＴ６又はＴ２とＴ６（＊）、〔２〕Ｔ１とＴ５又はＴ２とＴ５（＊）、〔３〕Ｔ１とＴ７又はＴ２とＴ７（＊）、〔４〕Ｔ１とＴ３又はＴ２とＴ３（＊）、〔５〕Ｔ２とＴ８、〔６〕Ｔ４とＴ７、〔７〕Ｔ４とＴ３、〔８〕Ｔ４とＴ６、〔９〕Ｔ４とＴ５、〔１０〕Ｔ４とＴ２、〔１１〕Ｔ３とＴ７（＊）、〔１２〕Ｔ３とＴ５（＊）、〔１３〕Ｔ３とＴ６（＊）、〔１４〕Ｔ３とＴ８、〔１５〕Ｔ５とＴ８、〔１６〕Ｔ６とＴ８、〔１７〕Ｔ７とＴ８、〔１８〕Ｔ９とＴ３、〔１９〕Ｔ９とＴ５、〔２０〕Ｔ９とＴ６、〔２１〕Ｔ９とＴ７の２１態様がある。尚、＊の印はＤＤＲ−ＳＤＲＡＭから成る外部メモリ１５への外部バス１６は十分に転送ビット幅があると仮定していることを意味する。【００５２】  逆に同時転送が出来ない組み合わせは、Ｔ１とＴ２、Ｔ５とＴ６、Ｔ５とＴ７、Ｔ７とＴ６、Ｔ９とＴ２だけである。図２の比較例ではＴ１、Ｔ４、Ｔ５、Ｔ６、Ｔ７、Ｔ８の転送形態が定義できるが、Ｔ１とＴ５、Ｔ１とＴ７、Ｔ４とＴ７の転送が同一バスを使用することになり、同時転送ができない。図１に示した構成を採用することにより、Ｔ１とＴ５、Ｔ１とＴ７、Ｔ４とＴ７の転送も同時転送が可能であり、さらにＴ２，Ｔ３，Ｔ９の転送もバスの衝突が最小限に抑えられている。したがって、大量の画像転送、ＣＰＵ２からのＰＩＯアクセスの高速化、ＣＰＵ２を介在しないＤＭＡ転送の同時実行が可能となり、比較例に比べて大幅にシステム性能を向上さ���ることができる。【００５３】  《太線描画》
次に２Ｄグラフィックスモジュール２０による太線描画について説明する。太線描画を行なうとき、始点と終点を移動しながら始点から終点に至る画素を塗りつぶす方式を採用した場合、図５に例示されるように描画方向が相異すると、始点から終点に至る画素を塗りつぶす本数が同じであっても太線の幅が異なる。最大で√２倍の差ができる。【００５４】  図６には２Ｄグラフィックスモジュール２０による太線描画の基本的な処理手順の概略が示される。始点及び終点Ａ，Ｂによって描画方向を規定する。描画幅に対して例えば半分の長さを持つ線分ＡＢの法線ベクトルｎを求める。始点及び終点Ａ，Ｂと法線ベクトルｎから矩形の４頂点Ｐ１，Ｐ２，Ｐ３，Ｐ４を求める。４頂点Ｐ１，Ｐ２，Ｐ３，Ｐ４は論理的な座標点である。そして、前記４頂点Ｐ１，Ｐ２，Ｐ３，Ｐ４に対する丸め処理を行なって画素に応ずる画素座標点Ｑ１，Ｑ２，Ｑ３，Ｑ４を求める。画素座標点Ｑ１，Ｑ２，Ｑ３，Ｑ４は画素の格子点上の座標になる。この画素座標点Ｑ１，Ｑ２，Ｑ３，Ｑ４で囲まれた領域をポリゴンとして描画する。【００５５】  ここで、単純な四捨五入による丸め処理を比較例として説明する。例えば図７の始点座標Ａと法線ベクトルｎの和に係る頂点Ｐ１のＸ座標及びＹ座標に着目する。図８に例示されるように、画素の格子点に対するＰ１の論理座標点に対し、画素ピッチの範囲でＸ，Ｙ方向に四捨五入すると、Ｐ１に最も近い画素が画素座標点Ｑ１になる。従って図９に例示されるように、頂点Ｐｉと画素座標点Ｑｉは画素ピッチに対し最大で±√２／２変化する。Ｐ１とＰ４は線分ＡＢに対して線対称であるから、Ｐ１、Ｐ４に対するＱ１、Ｑ４の誤差は共に同じになり、太線の幅としては画素ピッチの±√２倍の誤差を生じ、同じ幅で太線を描画しようとしても、描画方向や始点・終点の位置によって線の太さに画素ピッチの２√２倍の違いを生ずる可能性がある。例えば図１０に例示されるように、幅が９画素分の太線を描画する場合、ａ方向に対してはｎａ方向の法線ベクトルが求まり、ｂ方向に対してはｎｂ方向の法線ベクトルが求まる。ベクトルの終点が画素の格子点上になければ、これを丸め処理にて画素の格子点上の点に割り付ける。前記四捨五入による場合、ａ方向に対しては幅ｗａの太線、ｂ方向に対しては幅ｗｂの太線として描画され、同じ線幅の太線を描画しようとしても、描画方向によって線幅が異なる結果になってしまう。ナビゲーションシステムにおいて地図上で道路を太線描画する場合に同じ幅の道路であっても方向によって又は屈曲若しくはカーブになるに従って太さが変化することになり、道路などに対する表示性能の低下が余儀なくされる。【００５６】  ２Ｄグラフィックスモジュール２０による太線描画ではそれを解消するのに、第１に、２次元的に丸め方向を決定する丸め処理を採用し、第２に、法線ベクトルの長さを非対象とする。【００５７】  ２次元的な丸め方向の決定について説明する。図１１には２次元的な法線ベクトルの丸め処理の原理を示す。例えば４個の画素格子間の領域を１６分割し、分割部分のうちハッチングを施した中央部の所定部分（例外丸め対象部分）に関しては例外的に丸め方向を矢印で示す画素に変更し（例外丸め処理）、それ以外は四捨五入による通常の丸め（通常丸め処理）を行なって画素座標を決定する。例えばＰ１のような論理座標点がハッチング四角部分に入っているとき、矢印で示される画素の位置を対応する画素座標点Ｑ１とする。図１１の矢印の向きから理解されるように、丸め方向は描画幅を直径とする円の接線方向（太線の描画方向）になっている。これは、４個の画素格子間の中央部分は丸め処理によって相対的に大きな誤差を生ずる部分であり、そのような部分に対して丸め処理を行なっても法線の長さ（太線の幅）が極力伸縮しない方向に丸めようとするものである。丸め方向は、法線ベクトルである描画線幅規定ベクトルの起点（Ａ）を中心とする２次元座標上で前記描画線幅規定ベクトルが属する象限に応じて決定する。要するに、始点Ａを中心とするＸＹ座標上でＰ１，Ｐ４が有するＸ座標点、Ｙ座標点の符号に従って画素座標Ｑ１、Ｑ４を決定し、終点Ｂを中心とするＸＹ座標上でＰ２，Ｐ３が有するＸ座標点、Ｙ座標点の符号に従って画素座標Ｑ２、Ｑ３を決定する。例えば第１象限であれば右下の画素、第２象限であれば右上の画素、第３象限であれば左上の画素、第４象限であれば左下の画素、というように丸め方向を決めれば良い。【００５８】  法線ベクトルの長さを非対象とすることについて説明する。図１２には法線ベクトルの長さを非対象とすることの意味が示される。例えば太線の描画幅をＷとすると、始点Ａに対する一方に法線ベクトルの大きさはＷ／２、他方の法線ベクトルの大きさはＷ／２−αとする。例えばαは画素ピッチの１／４の長さとされる。図１３には太線幅を９画素分とするとき始点Ａを中心に論理座標Ｐ１，Ｐ２が採り得る位置を示している。法線ベクトルの長さを非対称にすることにより、片方の法線ベクトルが丸め処理により長さが延びた場合、他方の法線ベクトルは短く丸められる傾向を採り、結果として、描画幅の全体的な伸縮が打ち消され、若しくは緩和される方向に向けられる。例えば図１３の座標点Ｐ１，Ｐ４について考察すると、Ｐ１に対応するＱ１は右下の画素座標とされることにより対応する一方の法線ベクトルは最適長に対して長くされ、Ｐ４に対応するＱ４は四捨五入によって直近の画素座標とされることにより対応する他方の法線ベクトルは最適長よりも短くされ、結果として太線幅の変動は小さく抑えられる。【００５９】  画素座標点Ｑ１〜Ｑ４で規定される領域のポリゴン描画は、例えば図１４乃至図１９に示されるように順次行なうことができる。例えば図１４のように始点Ａから終点Ｂに向かう線分を太線描画する場合に求められた４頂点をＱ１〜Ｑ４とする。先ず、図１５に例示されるように、頂点Ｑ１からＱ４に向かう線分上の各座標点を求める。同様に、頂点Ｑ２からＱ３に向かう線分上の各座標点を求める。上記処理で求まる各座標点の間を順次直線描画する。図１６には１本目、図１７には２本目、図１８には４本目、図１９には最後の直線描画を行なった状態が示される。その他の手法として、図２０乃至図２２に例示されるように分割した３角形をＸ方向に上から走査するように画素を順次塗りつぶすようにしてポリゴン描画を行なってもよい。【００６０】  図２３には２Ｄグラフィックスモジュール２０のブロック図が示される。２��グラフィックスモジュール２０は、描画コマンドフェッチ部５０、ジオメトリ処理部５１、太線化処理部５２、ポリゴン描画部５３、及びピクセル処理部５４から成る。２Ｄグラフィックスモジュール２０に対するＣＰＵ２及び外部メモリ１５の接続形態は簡略化して図示してある。【００６１】  ＣＰＵ２は２Ｄグラフィックスモジュール２０に対する起動やレジスタリード等を行なう。描画コマンドフェッチ部５０は外部メモリ１５の画像用メモリ領域に格納された画像処理コマンドや描画図形の座標などを入力する。ジオメトリ処理部５１は図形座標をスクリーン座標に変換する処理を行なう。太線化処理部５２はコマンドによる太線化指示に従って前記太線描画のための処理を行なう。ポリゴン描画部５３によるデータはピクセル処理部５４で画素データ（ピクセルデータ）とされ、その物理アドレスと共に外部メモリ１５の画像用メモリ領域に格納され、画像表示に供される。【００６２】  図２４には太線化処理部５２の一例が示される。頂点バッファ６０には線分の頂点座標Ａ（ｘ，ｙ）、Ｂ（ｘ，ｙ）が入力される。線分計算部６１ではＡ（ｘ，ｙ）を始点、Ｂ（ｘ，ｙ）を終点とする線分Ａ（ｘ，ｙ）−Ｂ（ｘ，ｙ）＝ＤＸ，ＤＹを計算する。線幅非対象化回路６２は線幅Ｗの情報を入力し、非対象の線幅ＷＮ１，ＷＮ２の情報を出力する。法線計算部６３Ａは線分ＤＸ，ＤＹに対する法線方向の線幅ＷＮ１の法線Ｎ１を演算する。法線計算部６３Ｂは線分ＤＸ，ＤＹに対する法線方向の線幅ＷＮ２の法線Ｎ２を演算する。太線頂点計算部６４はＡ＋Ｎ１、Ａ＋Ｎ２、Ｂ＋Ｎ１、Ｂ＋Ｎ２の４頂点を演算する。演算された４頂点に対して２次元丸め部６５で前記丸め処理が行なわれる。【００６３】  図２５には線幅非対象化回路６２の一例が示される。線幅ＷＮ１，ＷＮ２は描画幅の画素数が奇数か偶数かによって相異される。ここでは、線幅Ｗの画素数が奇数の場合にはＷＮ１は（Ｗ−１）／２、ＷＮ２は（Ｗ−１）／２−αとする。偶数の場合にはＷＮ１はＷ／２、ＷＮ２はＷ／２−１−αとする。αは線幅毎に決められた法線を非対称にするための定数である。定数αはαテーブル７０が保有し、線幅Ｗに応ずる定数αを選択して出力する。ここでは、線幅ＷＮ１用の出力α１＝０、線幅ＷＮ２用の出力α２＝−αとする。尚、特に図示はしないが、線幅ＷＮ１用の出力α１＝−α／２、線幅ＷＮ２用の出力α２＝−α／２のように双方の線幅を増減することも可能である。【００６４】  デクリメンタ７１，７２は入力を−１して出力する。線幅Ｗに対して画素数が奇数であるか偶数であるかを偶数・奇数判定部７３で判定する。奇数であれば、セレクタ７４でデクリメンタ７１の出力を選択し、これをシフタ７５で１／２とし、その結果（Ｗ−１）／２を加算器（ＡＤＤ）７６でα１＝０と加算してＷＮ１を出力する。奇数のときＷＮ２側に対してはセレクタ７７でシフタ７５の出力（Ｗ−１）／２を選択させ、その結果（Ｗ−１）／２を加算器（ＡＤＤ）７８でα２＝−αと加算してＷＮ２を出力する。偶数・奇数判定部７３による判定が偶数であれば、セレクタ７４で線幅Ｗをそのまま選択し、これをシフタ７５で１／２とし、その結果Ｗ／２を加算器（ＡＤＤ）７６でα１＝０と加算してＷＮ１を出力する。��Ｎ２側に対してはセレクタ７７でデクリメンタ７２の出力Ｗ／２−１を選択させ、これを加算器（ＡＤＤ）７８でα２＝−αと加算してＷＮ２を出力する。【００６５】  図２６には線幅非対象化回路６２の別の例が示される。即ち、線幅Ｗに応じた線幅ＷＮ１，ＷＮ２を夫々保有するＷＮ１テーブル７９ＡとＷＮ２テーブル７９Ｂを配置し、入力する線幅Ｗに応じて直接線幅ＷＮ１，ＷＮ２を出力するように構成される。【００６６】  図２７には２次元丸め部の一例が示される。太線頂点計算部６４で計算された４頂点Ｐ１〜Ｐ４のｘ座標点とｙ座標点に基づいて象限判定部８０で夫々の頂点座標が位置する象限が求められる。ここで言う象限とは図１１で説明した意味である。例外丸め計数テーブル８２はＰ１〜Ｐ４の座標点に加算すべき係数（例外丸め係数）を保有し、象限の判定結果にしたがって例外丸め係数（ｘ、ｙ）＝（ｍ，ｎ）を出力する。例外丸め係数は図１１に新される規則に従い、第１象限であれば（１，０）、第２象限であれば（１，１）、第３象限であれば（０，１）、第４象限であれば（０，０）とする。例外・通常丸め判定部８１は、図１１で説明したように画素の格子間を１６分割した領域の内の例外丸め対象部分に４頂点Ｐ１〜Ｐ４が入るかを判別する。例外丸め処理対象の場合にはセレクタ８３で例外丸め係数テーブル８２の出力を選択する。通常丸め処理対象の場合には（０．５，０．５）がセレクタ８３で選択される。セレクタ８３の出力と頂点座標は対応するもの同士が加算器（ＡＤＤ）８５で加算され、加算結果は切り捨て処理部８６で小数点以下が切り捨てられる。切り捨て処理部８６の出力がＱ１〜Ｑ４の画素座標点情報とされる。【００６７】  太線の描画方向に対して垂直で線幅の１／２の長さのベクトルを求め、始点と終点とこのベクトルから太線の４頂点を求めてポリゴン描画を行なう方式では、線幅の１／２の長さの法線ベクトルを求める際に、少数点の座標として求まるが、描画座標は整数である必要があるため、四捨五入等により丸めることが必要となり、表示装置の解像度では、この四捨五入などの丸めのため描画方向により太線の線幅が太めに見えたり、細めに見えたりすることがある。これに対し、２ＤＧＦＩＣ２０による上記太線描画処理では、太線の中心の左右で非対称に行うこと、また、Ｘ軸、Ｙ軸単独に座標を丸めず、互いの軸に対してどちらに丸めたかを考慮して２次元的に丸めを行うことにより、低解像度でも全ての方向に対して太さの誤差が少なく太線描画を行うことができる。【００６８】  全ての方向に対して、実質的に一様な太さの線を描画することができる。単純な四捨五入によるに丸めを行う場合には、ワースト・ケースで目的の線幅に対して、約±√２ピクセルの誤差を生じ、一番太い部分と細い部分での線幅の差が２√２ピクセルとなるが、上記丸め処理を採用することにより、一番太い部分と細い部分での線幅の差を√２／２程度に減少させることができる。【００６９】  地図の大半を占め、ナビゲーションにとって最も重要な道路情報が、一様な太さで美しく表現出来るため地図全体の見易さの向上になる。また、一様な太さで描画できるため、道路に縁取りを付け更に見易さの向上を図ることができ、一方通行や渋滞情報な���の付加情報を見やすく付けることも可能になる。地図の見易さは、安全運転の効果があり、カー・ナビゲーション自体の付加価値にもなる。【００７０】  以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。【００７１】  例えばＣＰＵはスーパースカラに限定されない。第２バスはスーパハイウェイバスに限定されない。第１回路モジュール及び第２回路モジュールは図１で説明した機能を有する者に限定されない。
【産業上の利用可能性】
【００７２】  本発明はカーナビゲーションシステムへの適用に限定されず、グラフィック表示を有する種々のデータ処理システムに広く適用することができる。
【図１】
2005015504.tif 000003
【図２】
2005015504.tif 000004
【図３】
2005015504.tif 000005
【図４】
2005015504.tif 000006
【図５】
2005015504.tif 000007
【図６】
2005015504.tif 000008
【図７】
2005015504.tif 000009
【図８】
2005015504.tif 000010
【図９】
2005015504.tif 000011
【図１０】
2005015504.tif 000012
【図１１】
2005015504.tif 000013
【図１２】
2005015504.tif 000014
【図１３】
2005015504.tif 000015
【図１４】
2005015504.tif 000016
【図１５】
2005015504.tif 000017
【図１６】
2005015504.tif 000018
【図１７】
2005015504.tif 000019
【図１８】
2005015504.tif 000020
【図１９】
2005015504.tif 000021
【図２０】
2005015504.tif 000022
【図２１】
2005015504.tif 000023
【図２２】
2005015504.tif 000024
【図２３】
2005015504.tif 000025
【図２４】
2005015504.tif 000026
【図２５】
2005015504.tif 000027
【図２６】
2005015504.tif 000028
【図２７】
2005015504.tif 000029
【国際調査報告】
2005015504.tif 000030
2005015504.tif 000031