SystemC:从命令行读取输入.read()[index]

时间:2017-01-25 03:52:44

标签: c++ command-line systemc

我是SystemC的新手。我知道systemC是一个添加到C ++的库,虽然有些人可能会说它是一种语言。我的问题是我有下面的代码,而且我不知道dataout.read()[i-1];的价值。请帮忙。我试图在网上搜索答案,但我找不到任何答案。

   sc_inout<sc_int<8> > dataout;
    sc_int<8> data;

    for(i = 7; i > 0; i--)
                    data[i] = dataout.read()[i-1];

2 个答案:

答案 0 :(得分:0)

SystemC是一个C ++库。因此,在学习SystemC之前,您必须学习C ++语言。

您可以通过将对象打印到控制台或使用调试器来获取对象的值。

例如:

for(i = 7; i > 0; i--)
    std::cout << dataout.read()[i-1] << std::endl;

答案 1 :(得分:0)

[]是sc_int&lt;&gt;上的位访问器类型。
sc_inout&lt;&gt;上的.read() port获取您在示例中写入端口的值,它返回sc_int&lt; 8&gt; [i-1]得到一个分配给data [i] =的数据中不同位的位。看起来有人试图改变这些位。实际值是什么将取决于已写入dataout的内容。没有任何与读取命令行相关的内容。