TLM 2.0
Verification Evangelistの戯言 : Twitter SystemVerilogの世界へようこそ、すべては、SystemC v0.9公開から始まった Synopsysのブログ:What Have Models Got to Do with It? Pre-Silicon SoC Software Bring Upでは、 TLMでのPower/Clock/Resetについての…
TLM本:日本語版 Verification Evangelistの戯言 : Twitter SystemVerilogの世界へようこそ、すべては、SystemC v0.9公開から始まった ケイデンスのTLM本:TLM-driven Design and Verification Methodologyの日本語版ができました。 私は先日のCDNLive! Japa…
Verification Engineerの戯言 : SystemVerilogの世界へようこそ、すべては、SystemC v0.9公開から始まった 来週のセミナーなのに来た案内メール:STARC TLモデリングガイド実践コーストレーニング。 先程、見たら、どうやら、定員になったようです。良かった…
Verification Engineerの戯言 OSCIからTLM 2.0のリファレンス・マニュアルが公開されました。 ちなみに、TLM 2.0.1対応版です。 また、TLM 2.0.1のソースコードも公開されています。 検証、Verification、SystemC、TLM 2.0
Verification Engineerの戯言 2009年7月10日(金)に行われたSystemC Japan 2009での"SystemC Community Update"によると、 OSCIにて、TLM-2.0 in Actionというビデオが公開されています。 DVCon2009のときの模様にようです。 ユーザー登録は必要ですが、イン…
Verification Engineerの戯言 GreenSocsはTLM 2.0をサポートしています。 GreenSocsでは、 ・GreenSocket ・GSGPSocket ・GreenAV ・GreenConfig ・GreenControl などがあり、GSPM(GreenSocs Package Management)を使ってダウンロードできます。 SystemC TLM…
Verification Engineerの戯言 ケイデンスのブログにESL Design - SystemC TLM2 IP Authoring: A Practical Experimentがアップされています。 簡単なRDL(Register Description Language)で記述したモノからSystemCモデルのテンプレートやS/Wのヘッダファイル…
Verification Engineerの戯言 SCDSourceにSystemC TLM 2.0に関する記事Why SystemC virtual platforms are the answerがアップされました。 検証、Verification、SystemC、TLM 2.0
Verification Engineerの戯言 SystemC TLM 2.0の正式版が公開されました。 これで、TLM 2.0を使うアプリケーション開発に勢いがつくかなーーー 検証、Verification、SystemC、TLM 2.0
Verification Engineerの戯言 もうすぐ、DACです。 OSCIのTLM 2.0もたぶん、DAC前に公開されるのでしょう! OSCIによるDACのでイベントは、ここ! 検証、Verification、SystemC、TLM 2.0
Verification Engineerの戯言 EDA EXPRESSによると、OSCI、SystemC TLM2.0 Draft2の公開レビューを終了のようです。 昨年(2007年)11月末から今年(2008年)1月末までのレビューでフィードバックがかかって、DAC(6月)に正式発表の予定。 これでTLMに関しては、…
Verification Engineerの戯言 DOULOSがGetting Started with TLM 2.0というチュートリアルを公開しています。 すべては見ていませんが、役に立つと思います。
Verification Engineerの戯言 SCDsourceにTLM 2.0 draft 2.0の記事がアップされました。
Verification Engineerの戯言 SimpleATTarget2クラスとSimpleATTarger2クラスの違いは、myNBtransportメソッドでコマンドがphaseがtlm::BEGIN_REQのときの処理です。 SimpleATTarget1クラスでは、mEndRequestEvent.notify(t + ACCEPT_DELAY)を実行後、戻り値…
Verification Engineerの戯言 今回からは、SimpleATXモデルです。SimpleATXは、Approximately-timed coding styleのモデルです。 まずは、TargetモデルのSimpleATTarget1クラスからです。SimpleATTarger1クラスのコンストラクタはつぎのようになっています。…
Verification Engineerの戯言 昨日の続きで、SimpleTLTarget1クラスのget_direct_mem_ptrメソッドです。SimpleTLTarget1クラスは、DMI(Direct Memory Interface)を サポートしているので、このget_direct_mem_ptrメソッドでその設定をやっています。 bool ge…
Verification Engineerの戯言 今回と次回では、SimpleLTTarget1/2について説明します。 SimpleBusに接続するターゲットとしては、 unit_test/tlm/common/include/modelsディレクトリに次の6つが用意されています。 SimpleLTTarget1 SimpleLTTarget2 SimpleLT…
Verification Engineerの戯言 SimpleLTInitiator3(_DMI)クラスでは、nb_transportメソッドを使わないモデルです。 では、どのようにしてnb_transportメソッドの代わりを行うのでしょう! runメソッドのtlm::TLM_ACCEPTEDとtlm::TLM_UPDATEDのところでmEndEve…
Verification Engineerの戯言 SimpleTLInitiator2(_DMI)クラスとSimpleTLInitiator1(_DMI)クラスの違いは、 SimpleTLInitiator1(_DMI)クラスは、tlm::tlm_bw_nb_transport_ifクラスを継承するのに、 SimpleTLInitiator2(_DMI)クラスは、tlm::tlm_bw_nb_trans…
Verification Engineerの戯言 SimpleBusTLInitiator1_DMIクラスのinitTransactionメソッド内で各トランザクションへの パラメータを次のように設定しています。 bool initTransaction(transaction_type& trans) { // initialize DMI hint: trans.set_dmi_all…
Verification Engineerの戯言 昨日に続き、SimplTLInitiator_DMIクラスについてです。 SimpleTLInitiator1_DMIクラスのrunメソッドは、次のようになっています。 void run() { transaction_type trans; phase_type phase; sc_core::sc_time t; while (initTr…
Verification Engineerの戯言 SimpleBusに接続するイニシエータとしては、 unit_test/tlm/common/include/modelsディレクトリに次の6つが用意されています。 SimpleLTInitiator1 SimpleLTInitiator1_DMI SimpleLTInitiator2 SimpleLTInitiator2_DMI SimpleLT…
Verification Engineerの戯言 イニシエータソケット(initiator_socket)とターゲットソケット(target_socket)に対して、 マクロにて設定したものは、lm_fw_nb_transport_ifとlm_bw_nb_transport_ifで説明したtlm::tlm_fw_nb_transport_ifおよびtlm::tlm_fw_nb…
Verification Engineerの戯言 unit_test/tlm/common/include/modelsディレクトリにSimpleBus.hファイルがあります。 このファイルは、マルチポート(マルチイニシエータ/マルチターゲット)対応のバスモデルです。 SimBusクラスの定義の一部は、次のようになっ…
Verification Engineerの戯言 TLM 2.0 draft #2のユーザーマニュアルのPage.48にInitiatorとTargetの例が載っています。 Initiatorクラスは、次のように定義されています。 struct Initiator: sc_module, tlm::tlm_bw_nb_transport_if<> { tlm::tlm_nb_initi…
Verification Engineerの戯言 http://blogs.yahoo.co.jp/verification_engineer/27943609.html で書きました「socket」では、 tlm_fw_nb_transport_ifとtlm_bw_nb_transport_ifというクラスをパラメータの デフォルト値として使用しています。 この2つのクラ…
Verification Engineerの戯言 TLM 2.0 draft #2では、Debug transaction interfaceというものがあります。 これはデバッグのためにTargetの内部にアクセスするためのもので、次のように定義されていて、 Target側で実装する必要があります。 class tlm_debug…
Verification Engineerの戯言 TLM 2.0 draft #2では、DMI(Direct Memory Interface)というものがあります。 このDMIは、2つのtransport interface(blockingとnon-blocking)とは違って、 直接ターゲット側にアクセスするものです。これは、シミュレーション速…
Verification Engineerの戯言 TLM 2.0 draft #2では、blocking transport interfaceとnon-blocking transport interfaceがあります。 blocking transport interfaceは、ユーザーマニュアルのPage.13に次のように定義されています。 namespace tlm { template <typename TRANS = tlm_generic_payload></typename>…
Verification Engineerの戯言 http://blogs.yahoo.co.jp/verification_engineer/27806028.html で書きましたが、ユーザーマニュアルを読んでみて、socketはちょっと違うようです。 TLM 2.0 draft #2では、InitiatorとTargetはそれぞれsocketを持つことになり…