OCP(Open Core Protocol)技術解説 ―― CPUに依存しないオンチップ・バス・プロトコルがマルチコアを効率良く動作させる

鈴木一可

tag: 半導体

技術解説 2007年5月10日

4)不要な固定信号の除去

 OCP 1.0ではベーシック信号を省略することができませんでした.例えばFIFOメモリやDMA(direct memory access)のコアなど,1方向の転送しか行わない場合などは,それらの信号のうちのいくつかは本来不要のものでした.OCP 2.0では,未使用のベーシック信号を省略できます.

5)コマンドと同一のタイミングで情報を付加

 OCP 2.0では,リクエストやレスポンスなどに情報を付加する信号(インバンド信号.MReqInfo,SRespInfoなど)を追加できます.

6)デュアル・リセット

 OCP 1.0では,リセット信号がマスタとスレーブで共通でした.OCP 2.0では,マスタとスレーブについて,個別のリセット信号を定義できます.

7)イグザクト・スレッド・ビジー

 OCP 1.0では,スレッド・ビジー(MTreadBusy,SThreadBusy)信号は参考情報という程度の意味しかなく,ビジー信号を無視して動作することも可能でした.OCP 2.0では,スレッド・ビジー信号を厳密に定義して,ビジー信号がアクティブになっているスレッドには絶対にコマンドやレスポンスを出さない(ビジーとしているスレッドにはコマンドやレスポンスが絶対に来ない)ように実装できるようになりました.

8)レイジー・シンクロナイゼーション

 現在の多くのプロセッサではセマフォをサポートしています.セマフォの実現には,「ロックド・シンクロナイゼーション」注6を用いるのが一般的でしたが,最新のプロセッサでは,セマフォを実現するために「レイジー・シンクロナイゼーション」注7を用いているものがあります.OCP 2.0でも,レイジー・シンクロナイゼーション・モデルをサポートするためのコマンド(一般的には「Load-Linked」,「Store-Conditional」コマンド)として,コマンド信号(MCmd)に,RDL(Read Linked)コマンドとWRC(Write Conditional)コマンドを追加しました.

注6;ロックド・シンクロナイゼーションとは,あるマスタがあるアドレスに対してRDEX(読み出し実行)コマンドを発行すると,次に同じマスタがWRコマンドを発行するまで,ほかのマスタからはアクセスできないようにする手法である.
注7;レイジー・シンクロナイゼーションとは,あるマスタがロックをかけた状態でもほかのマスタのアクセスを許す手法.あるマスタがあるアドレスに対してRDLコマンドを発行すると,そのターゲットに予約タグがつく.ほかのマスタは予約タグがついたターゲットにもアクセスできるが,アクセスすると予約タグが取り除かれる.最初にRDLコマンドを発行したマスタがWRCコマンドを発行したとき,予約タグが立っていれば書き込みが成功し,予約タグが取り除かれる.予約タグがないと書き込みが失敗し,レスポンスはFAILとなる.

●IPコア開発時に利用できるツールやモデルを提供

 OCP-IPは,OCPインターフェースを持ったIPコアを開発するための開発環境を提供しています.その一つが,IPコアのインターフェースがOCPプロトコルに適合しているかどうかをチェックするツール「CoreCreator」です.CoreCreatorはIPコアをテストするための簡単なテストベンチを生成します(図7).これによって,OCPプロトコルに適合しているかどうかを判定できます.また,OCPインターフェースのSystemCモデルも提供しています(リスト1).SystemCモデルを用いれば,C言語の環境でIPコアのハードウェア/ソフトウェア開発を行えます.

 OCPインターフェースを持ったIPコアは,ようやく市場に出回り始めました.例えば,米国Denali Software社のDDRメモリ・コントローラや米国MIPS Technologies社のマイクロプロセッサ・コア「24Kファミリ」などです.米国Sonics社も,OCPインターフェースを用いたシステムLSIの開発環境として,インターコネクトIP(バスIP)とGUI開発環境を提供しています(コラム「インターコネクトIP」を参照).

zu07_01.gif

〔図7〕OCPプロトコルの適合を判定するツール「CoreCreator」
CoreCreatorはIPコアをテストするためのテストベンチを生成する.これにより,OCPプロトコルに適合しているかどうかを判定できる.

list_01_01.gif
〔リスト1〕OCPインターフェースのSystemCモデル(スレーブ側のモデルの一部)

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日