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

Add Stage/Phase/DependencyAPI Documentation #14

Open
seldridge opened this issue Aug 20, 2019 · 2 comments · May be fixed by #39
Open

Add Stage/Phase/DependencyAPI Documentation #14

seldridge opened this issue Aug 20, 2019 · 2 comments · May be fixed by #39
Assignees

Comments

@seldridge
Copy link
Collaborator

seldridge commented Aug 20, 2019

Under the FIRRTL tab, include documentation about the Stage/Phase refactor and the Dependency API.

This should include:

  • a cookbook with recipes on how to do basic operations, e.g., compile Chisel to Verilog (@chick)
  • ???

Possible people who can provide feedback include: @chick, @davidbiancolin

This is gated by #5.

@seldridge seldridge self-assigned this Aug 20, 2019
@edwardcwang
Copy link
Collaborator

Seems like "e.g., compile Chisel to Verilog" would be for advanced users who want to use Stage/Phase etc to manually control this process as opposed to using the Chisel default?

@seldridge
Copy link
Collaborator Author

@edwardcwang: Maybe there's a better way to put it, but I think @chick was asking for a counterpart to the "Get me Verilog" website/wiki FAQ with answer:

object HelloWorld extends App {
  chisel3.Driver.execute(args, () => new HelloWorld)
}

That would be something like the following:

object HelloWorld extends App {
  (new ChiselStage).run(Seq(ChiselGeneratorAnnotation(() => new HelloWorld)))
}

ChiselStage doesn't have any helper methods, yet, but it's not unreasonable to add in the following signatures:

  • toVerilog(gen: () => RawModule): String
  • toFirrtl(gen: () => RawModule): String

@seldridge seldridge linked a pull request Oct 2, 2019 that will close this issue
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

Successfully merging a pull request may close this issue.

2 participants