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

Implement Multi-Clock #7

Open
6 tasks
VonTum opened this issue Aug 24, 2024 · 0 comments
Open
6 tasks

Implement Multi-Clock #7

VonTum opened this issue Aug 24, 2024 · 0 comments
Labels
enhancement New feature or request good first issue Good for newcomers Request Input These are issues about the design of the language, and thus should be discussed

Comments

@VonTum
Copy link
Collaborator

VonTum commented Aug 24, 2024

The idea is, to use the domain system to have modules request specific clock constraints.

Something like:

module myMod {
  domain A
  input int a_in
  
  domain B async to A
  output int b_out
  CrossAsyncDomain cr
  cr.in = a_in
  b_out = cr.out
  
  domain C sync to A * 3
  output int c_out
  CrossDomain cr_sync
  cr_sync.in = a_in
  c_out = cr_sync.out
}

Roadmap:

  • Define Syntax
  • AST / Flattening / Instantiation
  • Typechecking forbid bad domain connections
  • Synchronous Clocks
  • Asynchronous Clocks
  • Codegen add extra clk_A, clk_B specifiers
@VonTum VonTum added enhancement New feature or request good first issue Good for newcomers Request Input These are issues about the design of the language, and thus should be discussed labels Aug 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers Request Input These are issues about the design of the language, and thus should be discussed
Projects
None yet
Development

No branches or pull requests

1 participant