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

Tristate buffers repeatedly set output if disabled #3063

Open
PeanutbutterWarrior opened this issue Apr 5, 2022 · 0 comments
Open

Tristate buffers repeatedly set output if disabled #3063

PeanutbutterWarrior opened this issue Apr 5, 2022 · 0 comments

Comments

@PeanutbutterWarrior
Copy link

PeanutbutterWarrior commented Apr 5, 2022

Describe the bug
When the enable pin of the tristate buffer is grounded, not passing through the input, it will cause a Simulation Stack Limit Exceeded error if the output is connected to the input.

To Reproduce
Steps to reproduce the behavior:

  1. Create circuit as shown below
    image
  2. Connect A to B
  3. See error

Expected behavior
As the input is not passed through, and the output does not rely on the input, it should not cause a cycle.

Device Information [optional]:

  • OS: Windows 10
  • Browser: Firefox 99.0 (64 bit)

Additional context
This can be worked around by including another gate in the path, as seen below:
image

After looking at the code, the tristate will set the output to undefined if it is not already. I suspect that the input element sets the output to a defined value repeatedly, so the tristate sets it to undefined repeatedly. I have been unable to find how signals are propagated, so am unable to check this.

Are you working on this issue? No

@PeanutbutterWarrior PeanutbutterWarrior changed the title Tristate buffers do not completely disable output Tristate buffers repeatedly set output if disabled Apr 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants