Archive for the SystemC Category

Note: Modelsim Examples 下的 “sc_vlog”

Posted in HDL, SystemC, Verilog on 2011 年 05 月 16 日 by Kun-Yi

它是一個透過 SystemC  ringbuf.h 去執行 Verilog module 的範例

ringbuf.h 內是宣告繼承所謂的 sc_foreign_module 來執行外部module, 這里是 ringbuf.v

在 run.do 可以看到先將所有 verilog 都compile 然後做 scgenmod -bool ringbuf > ringbuf.h 手動產生 foregin  module 的連結, 這裡的 ringbuf > ringbuf.h 是將 ringbuf 當成參數傳進 ringbuf.h, 這各參數這裡是當成 ringbuf.v 內的 hdl_name 接收, 然後compile test_ringbuf 之後, 去跑 simulation.

算是一個用SystemC寫Test bench 的範例

Note: Modelsim 的SystemC 的Example, “sc_basic”gold

Posted in HDL, SystemC on 2011 年 05 月 16 日 by Kun-Yi

底下就是依序的指令(省略進入目錄的過程), 與執行結果, SystemC 目前主要用來驗證演算法的執行是否正確, 是C語言的語法 加入HW的元素, 有多Task可以代表硬體的平行執行.

vlib work
sccom -g basic.cpp
#
# Model Technology ModelSim SE sccom 10.0a compiler 2011.02 Feb 20 2011
#
# Exported modules:
#     top
sccom -link
#
# Model Technology ModelSim SE sccom 10.0a compiler 2011.02 Feb 20 2011
vsim -voptargs=+acc work.top
# vsim -voptargs=+acc work.top
# ** Note: (vsim-3812) Design is being optimized…
# Loading C:\modeltech_10.0a\examples\systemc\sc_basic\gold\work\_sc\win32_gcc-4.2.1\systemc.so
# Loading C:\modeltech_10.0a\examples\systemc\sc_basic\gold\work.top
run
# 1 main_action_method called
# 1 main_action_thread called
# 3 main_action_cthread called