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

Short circuit when setting multiple bits of la0? #33

Open
urish opened this issue Dec 28, 2021 · 3 comments
Open

Short circuit when setting multiple bits of la0? #33

urish opened this issue Dec 28, 2021 · 3 comments

Comments

@urish
Copy link
Contributor

urish commented Dec 28, 2021

I believe think it might be possible to break the chip by mistakenly setting la0 (active) to 0xFFFFFFFF, thus activating all the designs at once.

Can we protect against this?

@mattvenn
Copy link
Owner

we could have a little design that sits between the logic analyser and the active lines and makes sure only one line goes high
it could also function as the 'what if caravel is broken' module you mentioned #31

but I don't think it's necessary. even if more than one design is turned on, the chip will just draw a bit more power and the line will be in an intermediate state. I don't think we would blow any mosfets. However, this is just a feeling from talking to Tim Edwards about what would happen if multiple designs were driving the logic analyser at the same time. maybe if we turned all the designs on it could damage something.

@mattvenn
Copy link
Owner

happy to add something to mpw5, but I propose we leave this for mpw4

@urish
Copy link
Contributor Author

urish commented Dec 29, 2021

Thanks for the explanation!

What happens before the MGMT SOC starts? is the LA data guaranteed to be all zeroes? Or is there a chance it'll start in an undefined state, thus activating several designs at once, drawing too much power, and preventing the MGMT SOC from starting?

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