« 子育てと仕事 | Main | AVM 続き »

2007.03.01

SystemCのお勉強

出張中、SystemCの環境が無かったので、もう一回、System Design with SystemCを読み直す。

・interfaceまとめ
全てのinterfaceは、sc_interfaceを継承する。このbase classが、register_port()の仮想関数を用意していて、portがchannelに接続されるときに、この関数が呼ばれる。

・portまとめ
全ての種類のportは、対応するinterfaceを記載(specify)する必要がある。sc_portの最も重要なmethodは、interfaseへのポインターを返すoperator->()。(the interfaceだから、ポートに関連つけられたinterfaceの事だろう)C++の力で、sc_portから直接interfaceのmethodを呼び出すことができる。

・channelまとめ
channelは、機能の実装方法を記述している。一つのinterfaceに違う実装がある反面、channelは複数のinterfaceを実装してもよい。例えば、sc_signalは、inとin_outの両方を実装している。

Primitive channelは、request-updateをサポートしている。全てのprimitive
channel はsc_prim_channelを継承し、request_update()と、update()の仮想関数を引き継ぐ。request_update()はスケジューラのupdate queueにchannelを
入れ、updateのタイミングで、update()が呼ばれる。sc_signal、sc_fifo、sc_mutexがprimitive channel。

次はchapter 7 Interface and Channel Designをもう一回読もう。

|

« 子育てと仕事 | Main | AVM 続き »

Comments

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/18154/14086118

Listed below are links to weblogs that reference SystemCのお勉強:

« 子育てと仕事 | Main | AVM 続き »