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

loadGraph gets stuck in an infinite loop #15

Open
rand0m0User opened this issue Nov 3, 2022 · 1 comment
Open

loadGraph gets stuck in an infinite loop #15

rand0m0User opened this issue Nov 3, 2022 · 1 comment

Comments

@rand0m0User
Copy link

after much debugging, and porting the code so it spits out a schematic instead of taking 8 hours to place moderately complex circuits in a world in a world, i have found a major issue that causes the mod (tested, the game freezes for the test circuit) and the ported 'derivative' program to get stuck in an infinite loop, generating RELAY nodes
https://github.com/itsFrank/MinecraftHDL/blob/c66690ae2f1ee2b04aae214a694eb6fe0e03d326/src/main/java/minecrafthdl/synthesis/IntermediateCircuit.java#L50
circut
infinite

'looping' logic may be useful for anyone trying to design more complex circuits beyond simple combinational logic (entire CPU's may be fun)

@Lunaphied
Copy link

It looks and sounds like you're trying to synthesize a sequential circuit using loopback. This isn't supported currently.

Additionally, we are currently unable to synthesize sequential circuits, aka any circuits with a loopback or feedback. That means no memory, no counters or any circuit that could hold a state.

In addition to this, you're specifying it via combinational feedback which in Verilog will not synthesize correctly, for this use you'd need to either use edge registered logic or instantiate a sequential memory like a flip-flop directly, since handling loops in HDL directly is not supported by most tooling.

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