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

Compatibility with MyHDL #163

Open
hgomersall opened this issue Jul 9, 2021 · 2 comments
Open

Compatibility with MyHDL #163

hgomersall opened this issue Jul 9, 2021 · 2 comments

Comments

@hgomersall
Copy link

It looks to me like kratos and MyHDL languages are pretty similar in both approach and implementation. It would be wonderful if there was some collaboration to try and work out what commonalities can be shared.

@Kuree
Copy link
Owner

Kuree commented Jul 9, 2021

Thanks for the suggestion. I think there are some differences between these two frameworks that are fundamentally different.

  • kratos is designed from ground-up to be fast. Most of the implementation is done in C++ with maximum parallelism. The python front-end is just a thin layer that offers syntax sugars.
  • Lots of engineering efforts are on the debuggability. You can debug the code on source-level with any popular simulator.

That being said, I think lots of front-end implementation are very similar. It might be interesting to see if it possible to take kratos as MyHDL backend.

Please let me know if you have any suggestion on how to proceed forward.

@kartikp4892
Copy link

Would it be possible to use kratos as backend to scala based HDL as well?

My guess if we compile kratos with jython on JVM, we would be able to use it as backend to scala based HDL. The HDL syntax are very much friendly in SpinalHDL which is scala based HDL. I guess if we could provide similar front end implementation in scala by using kratos as a backend, that would be much more powerful than currently the scala based HDLs are.

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

3 participants