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

Non-overlapping signal writes? #4

Open
DasLixou opened this issue Apr 24, 2024 · 0 comments
Open

Non-overlapping signal writes? #4

DasLixou opened this issue Apr 24, 2024 · 0 comments
Labels
A - Lang Area: Language Design S - Controversy Status: Controversy

Comments

@DasLixou
Copy link
Member

I wonder if we could do something similar as rust did with the borrow checker to ohdl.
I am currently not sure if I will do something similar to vhdl with the resolved logic type, but I tend not to.

To eliminate overlapping signals, we could say that a signal can be used multiple times as an input/read, but only one output/write should exist at a time. The compiler then would check for violations, so for example an if this than write from a, else write from b would be fine, but writing unconditionally from both would be forbidden.

Yet, I am not sure if this is good or just complicated for the end user, since we can't do something like runtime checked stuff.. thinking more about it, it's just the question of making everything safe or putting some designs behind unsafe.
Furthermore, I am not even sure if this will even be/is a problem in hardware design, time and playing around will hopefully tell me :D

@DasLixou DasLixou added A - Lang Area: Language Design P - Low Priority: Low labels Apr 24, 2024
@DasLixou DasLixou changed the title Non-overlapping signal writes Non-overlapping signal writes? Apr 24, 2024
@DasLixou DasLixou added S - Controversy Status: Controversy and removed P - Low Priority: Low labels Apr 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A - Lang Area: Language Design S - Controversy Status: Controversy
Projects
None yet
Development

No branches or pull requests

1 participant