Loading...
Loading...
A high level hardware description language
Avg 148.4 stars per repo.
Coding for 11 years.
320 followers.
SpinalHDL is:
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).
scalaVersion := "2.11.12"
libraryDependencies ++= Seq(
"com.github.spinalhdl" % "spinalhdl-core_2.11" % "latest.release",
"com.github.spinalhdl" % "spinalhdl-lib_2.11" % "latest.release",
compilerPlugin("com.github.spinalhdl" % "spinalhdl-idsl-plugin_2.11" % "latest.release")
)
You can force SBT to pick a specific SpinalHDL version by replacing latest.release with a specific version.
See the SpinalHDL SBT Template project's build.sbt file for a full SBT example.
repositories {
mavenCentral()
}
dependencies {
compile group: 'com.github.spinalhdl', name: 'spinalhdl-core_2.11', version: '1.6.4'
compile group: 'com.github.spinalhdl', name: 'spinalhdl-lib_2.11', version: '1.6.4'
}
For mill version <= 0.11
import mill._
import mill.scalalib._
object MySpinalModule extends ScalaModule {
def scalaVersion = "2.11.12"
def ivyDeps = Agg(
ivy"com.github.spinalhdl::spinalhdl-core:1.6.4",
ivy"com.github.spinalhdl::spinalhdl-lib:1.6.4",
)
def scalacPluginIvyDeps = Agg(ivy"com.github.spinalhdl::spinalhdl-idsl-plugin:1.6.4")
}
For mill version >= 1.0.0
//| mvnDeps:
//| - com.typesafe:config:1.4.3
import mill._
import mill.scalalib._
object MySpinalModule extends ScalaModule {
def scalaVersion = "2.11.12"
override def mvnDeps = Seq(
mvn"com.github.spinalhdl::spinalhdl-core:1.13.0",
mvn"com.github.spinalhdl::spinalhdl-lib:1.13.0"
)
override def scalacPluginMvnDeps = Seq(mvn"com.github.spinalhdl::spinalhdl-idsl-plugin:1.13.0")
}
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.
https://github.com/SpinalHDL/SpinalHDL/tags
The SpinalHDL core is using the LGPL3 license while SpinalHDL lib and others are using the MIT license. That's for the formalities. But there are some practical statements implied by those licenses:
Your freedoms are:
Your obligations (and my wish) are:
Also, SpinalHDL is provided "as is", without warranty of any kind.