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

Synthesis cant send variable from LoopBigin to LoopEnd using 1 FRAM #213

Open
BasicEC opened this issue Apr 18, 2022 · 2 comments
Open

Synthesis cant send variable from LoopBigin to LoopEnd using 1 FRAM #213

BasicEC opened this issue Apr 18, 2022 · 2 comments
Labels
bug Something isn't working hs Haskell

Comments

@BasicEC
Copy link
Collaborator

BasicEC commented Apr 18, 2022

Following test fails

unitTestCase "autosynthesis successfully completed" def $ do
                  setNetwork $
                      Bus.defineNetwork "net1" ASync $ do
                          Bus.addCustom "fram1" (framWithSize 32) FramIO
                          Bus.add "accum1" AccumIO
                  setBusType pInt
                  assignLua
                      [__i|
                          function sum(x1, x2)
                              x1 = x1 + x2
                              sum(x1, x2)
                          end
                          sum(1,2)
                          |]
                  synthesizeAndCoSim

Outcome:

autosynthesis successfully completed: FAIL (0.20s)
          test/NITTA/Model/ProcessorUnits/Tests/DSL/Tests.hs:361:
          synthesis is not complete: fromList ["x2^0#1","x2^0#1@buf"]

It is bot a bug, but restricted functions. Support of self-sending can help here.

@BasicEC BasicEC added bug Something isn't working hs Haskell labels Apr 18, 2022
@BasicEC
Copy link
Collaborator Author

BasicEC commented May 15, 2022

Here the problem is that we cant send x2 from LoopBegin to LoopEnd using one FRAM.
Here's DFG at the moment when synthesis stuck:
image

@BasicEC BasicEC changed the title Completion of synthesis fails Synthesis cant send variable from LoopBigin to LoopEnd using 1 FRAM May 15, 2022
@BasicEC
Copy link
Collaborator Author

BasicEC commented May 15, 2022

The point is that the variable is already in FRAM, so I think we can avoid resending. @ryukzak is it right?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working hs Haskell
Projects
Status: To triage
Development

No branches or pull requests

1 participant