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

鈴木一可

tag: 組み込み技術

技術解説 2007年5月10日

 OCP(Open Core Protocol)とは,特定のCPUやバスのプロトコルに依存しないオンチップ・バスの規格である.コマンドとレスポンスを独立したタイミングで送ることができる(スプリット・トランザクション).また,スレッドを複数に分けることにより,コマンドの発行順とは異なる順番でレスポンスを返すこともできる(マルチスレッド).本稿ではこのような特徴を持つOCP規格について解説する.  (編集部)


= 関連情報 =
2007年5月29日(火)に,OCPテクノロジーフォーラム2007が開催される.参加費は無料(事前登録制).詳細は以下のURLを参照のこと.
http://www.coware.co.jp/ocpip07/


 現在の大規模LSIでは,複数の機能ブロック(ハード・マクロ,ソフト・マクロなどのIPコア)を組み合わせて一つのLSIを構成するシステムLSIが主流となっています.複数のIPコアを組み合わせて1チップのLSIにするためには,チップ内でIPコア間の通信を行うためのオンチップ・バスが必要です.LSIの高速化,高機能化,高集積化に伴って最近,オンチップ・バスが注目を集めています1)

 それはなぜでしょうか?

●CPUに依存したオンチップ・バスは使いにくくなった

 初期のシステムLSIでは,マスタとなるIPコア(能動的に動作するIPコア)はマイクロプロセッサ(CPU)一つだけで,それにRAMやI/O,周辺論理など,スレーブとなるいくつかのIPコア(受動的に動作するIPコア)が存在する,というような構成でした.このような場合は,CPUのバス・プロトコルに合わせて,スレーブのIPコアをCPUに接続すればよかったのです.

 しかし,最近のシステムLSIでは,マスタはCPUだけとは限りません.DSP(digital signal processor)やMPEGなどのディジタル信号処理ブロック,PCIやUSBなどのインターフェース・ブロックなど,数多くのマスタが存在します(図1).各マスタは動作仕様に基づいてそれぞれ独立に動作します.したがって,異なるデータ・フローがオンチップ・バス内を同時に流れることになります.

zu01_01.gif
〔図1〕マスタIPコアが複数になった
かつてのシステムLSIでは,マスタとなるIPコアはCPUだけだった.現在のシステムLSIでは,CPU以外にもディジタル信号処理ブロックやインターフェース・ブロックなど,マスタのIPコアが複数存在することが多い.

 また,外部のDRAMを共有して複数のマスタが効率良く同時にアクセスすることも必要となってきています.さらに,システムLSIそのものの動作周波数も数百MHzと非常に高速であり,オンチップ・バスを高い使用効率で動作させる必要があります.

組み込みキャッチアップ
お知らせ 一覧を見る

《半導体ネット もうすぐ1周年記念》,「HDL文法ガイド」を抽選で100名様にプレゼント!

4/24(土),東京・秋葉原にて電子&工作系イベント「エレキジャック・フォーラム」開催.電子工作教室やトーク・ショーの詳細を発表!

《読者の広場》皆さまから寄せられた「ひと口コメント」 Part6 ―― あなたがお薦めのiPhoneアプリの名前は?

PICK UP用語

USB

関連記事

volatile

関連記事

Verilog HDL

関連記事

ニュース

Rohde & Schwarz,測定周波数が3GHzながら80.9万円と安いスペクトラム・アナライザを発売

Agilent,CANやLIN,I2Cなどのシリアル通信の解析を得意とするオシロスコープを発売

Actel,Cortex-M3プロセッサをハード・マクロで搭載するFPGAを発売

ヒューマンデータ,Virtex-5を搭載するFPGAボードを発売

グレープシステム,組み込み用の暗号エンジンを発売

組み込みブログ

組み込み場外乱闘

移転のお知らせ

2009年5月29日

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

【ETロボコン】 北関東説明会を実施。ついに新潟に上陸!!

2010年3月15日

Hamana Project

実行委員会ペイロード

2009年9月27日