Skip to content
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

Autopipelining that adds IO regs to functions w/ global wires is broken #175

Open
JulianKemmerer opened this issue Aug 27, 2023 · 1 comment
Labels
bug Something isn't working

Comments

@JulianKemmerer
Copy link
Owner

if have ex.

void some_func()
{
    out = the_pipeline_func(in);
}

where in and out are global wires - then, if some_func is selected for having IO registers added to meet timing - the design will break - will get a VHDL syntax error and synth faills.

Missing logic for registering (non volatile) global wires.

Work around for now with ex. #pragma FUNC_NO_ADD_IO_REGS some_func to stop func from getting these broken IO regs added...

@JulianKemmerer JulianKemmerer added the bug Something isn't working label Aug 27, 2023
@JulianKemmerer
Copy link
Owner Author

Generally also want to make sure that the reasoning behind how reads and writes to globals behave around pipelineable logic makes sense ... read in first stage, written from first available stage? what about writing from last stage of pipeline always?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant