Skip to content

multiple level mif array cause error #23

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
jinjie320621 opened this issue May 14, 2022 · 3 comments
Closed

multiple level mif array cause error #23

jinjie320621 opened this issue May 14, 2022 · 3 comments

Comments

@jinjie320621
Copy link

I design 3 modules: TestA, TestB, and TestC.
Test B and TestC are mif.

3 level hierarchy architecture: TestA is the top module, TestB is TestA’s child module, TestC is TestB’s child module.
TestB is instantiated as a mif array in TestA, TestC is instantiated as a mif array in TestB.

It will cause ICSC tool error: ScTool internal fatal error : No record in getBaseClass()

But when not instantiate TestC (or TestC is not a mif array), it means not have multiple level mif array, it will be correct.

Is it a bug of ICSC tool? How can I avoid it? Thanks very much.

@mikhailmoiseev
Copy link
Contributor

Hello,

Thank you for this issue.

Currently inner MIF (MIF inside MIF) is not supported. You can use normal child module (not MIF) without limitations.

Would also recommend to use sc_vector for SystemC modules, signals, ports instead of C++ array.

Will update this issue when/if inner MIF supported.

@mikhailmoiseev
Copy link
Contributor

That has been supported for sc_vector in Version 1.4.25.
See tests
https://github.com/intel/systemc-compiler/blob/main/tests/mif/test_sc_vector_mif5.cpp and
https://github.com/intel/systemc-compiler/blob/main/tests/mif/test_sc_vector_mif6.cpp

Please consider C++ array of MIF will not be supported.

@mikhailmoiseev
Copy link
Contributor

As soon there is no comments, consider as done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants