Giter Site home page Giter Site logo

zhangxiaoyu00 / spinalhdl Goto Github PK

View Code? Open in Web Editor NEW

This project forked from spinalhdl/spinalhdl

0.0 1.0 0.0 15.22 MB

Scala based HDL

License: Other

Scala 68.67% VHDL 3.55% Java 0.64% Stata 0.74% Makefile 0.35% Verilog 15.65% Python 5.63% Dockerfile 0.02% Shell 0.14% SystemVerilog 3.05% C++ 1.52% SWIG 0.04%

spinalhdl's Introduction

About SpinalHDL

SpinalHDL is:

  • A language to describe digital hardware
  • Compatible with EDA tools as it generate the corresponding VHDL/Verilog file
  • Much more powerful than VHDL, Verilog and SystemVerilog by its syntaxes and features
  • Much less verbose than VHDL, Verilog and SystemVerilog
  • Not an HLS, nor based on the event driven paradigm
  • Only generating what you asked it in a one to one way (no black-magic, no blackbox)
  • Not introducing Area/Performance overhead in your design (versus a hand written VHDL/Verilog)
  • Based on the RTL description paradigm, but can go much further
  • Allowing you to use Object Oriented Programming and Functional Programming to elaborate your hardware and verify it
  • Free and can be used in the industry without any license

Links

Join the chat at https://gitter.im/SpinalHDL/SpinalHDL

Build Status

Get it

SpinalHDL is simply a set of Scala libraries. Include them into your project and you're good to go! If you're unsure about what to do, simply clone one of our example projects (see links above).

SBT (Scala build tool)

scalaVersion := "2.11.6"

libraryDependencies ++= Seq(
  "com.github.spinalhdl" % "spinalhdl-core_2.11" % "latest.release",
  "com.github.spinalhdl" % "spinalhdl-lib_2.11" % "latest.release"
)

You can force to pick a specific SpinalHDL version by replacing the 'latest.release'. See https://github.com/SpinalHDL/SpinalTemplateSbt/blob/master/build.sbt

Gradle

repositories {
	mavenCentral()
}

dependencies {
	compile group: 'com.github.spinalhdl', name: 'spinalhdl-core_2.11', version: '1.3.6'
	compile group: 'com.github.spinalhdl', name: 'spinalhdl-lib_2.11', version: '1.3.6'
}

JAR

https://oss.sonatype.org/content/groups/public/com/github/spinalhdl/spinalhdl-core_2.11/
https://oss.sonatype.org/content/groups/public/com/github/spinalhdl/spinalhdl-lib_2.11/

The files are available on Maven as well.

Changes logs

https://github.com/SpinalHDL/SpinalHDL/tags

License

The SpinalHDL core is using the LGPL3 license while SpinalHDL lib is using the MIT one. That's for the formalities. But there is some practices statements of those license implications :

Your freedoms are :

  • You can use SpinalHDL core and lib in your closed/commercial projects.
  • The generated RTL is yours (.vhd/.v files)
  • Your hardware description is yours (.scala files)

Your obligations (and my wish) are :

  • If you modify the SpinalHDL core (the compiler itself), please, share your improvements.

Also, SpinalHDL is provided "as is", without warranty of any kind.

spinalhdl's People

Contributors

dolu1990 avatar snoopy87 avatar jijingg avatar wifasoi avatar someparticles avatar piegamesde avatar svancau avatar typingartist avatar tttech-waechter avatar lambdashade avatar tomverbeure avatar roman3017 avatar soronpo avatar c-thaler avatar pmudry avatar bellaz89 avatar vvb16 avatar metc avatar sxtyzhangzk avatar hwengineer avatar dlobato avatar wswslzp avatar thomashk0 avatar rpls avatar oligu avatar andreaskurth avatar andreaswallner avatar colin4124 avatar dnltz avatar henkru avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.