0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SpinalHDL入坑之旅

jf_78858299 ? 來源:傅里葉的貓 ? 作者:張大俠 ? 2023-05-05 15:57 ? 次閱讀

安裝JDK

下載jdk17:

wget wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz

解壓:

tar -xzvf jdk-17_linux-x64_bin.tar.gz

移動到/usr目錄下:

sudo mv jdk-17.0.4.1/ /usr/local/

修改環(huán)境配置文件:

sudo gvim /etc/profile

在最后一行加上:

export JAVA_HOME=/usr/local/jdk-17.0.4.1
export CLASSPATH=.:JAVA_HOME/lib
export PATH=.:JAVA_HOME/bin:$PATH

重新source 環(huán)境配置文件:

source /etc/profile

檢查是否配置成功:

java -version

image-20221013234418406

安裝Idea

我們后面會在IntelliJ Idea上開發(fā),因此先安裝開發(fā)環(huán)境。

方法一:

下載軟件包:

https://www.jetbrains.com/idea/download/#section=linux

解壓:

tar -xzvf ideaIU-2021.1.3.tar.gz

運行:

./bin/idea.sh

方法二:

直接使用Ubuntu自帶的Ubuntu Software工具進行安裝:

image-20221015101135248

安裝完成后,可以在~/.bashrc中設(shè)計快捷啟動方式:

export IDEA_HOME=/snap/intellij-idea-community/390
PATH=$PATH:$IDEA_HOME/bin
alias idea="idea.sh"

安裝scala

方法一:

可以下載scala的安裝包,然后進行安裝,方式如下:(但我沒有安裝成功)

scala下載地址:必須要安裝2.11.xx,這里我們安裝2.11.12,下載地址如下:

https://scala-lang.org/download/2.11.12.html

安裝:

sudo dpkg -i

方法二:

直接在Idea的新建工程時,選擇scala的版本,工具會自動下載:

image-20221014232150250

安裝Plugin

在Idea中,安裝SBT Executor和Scala兩個擴展包:

image-20221010000011931

寫第一個demo

選擇JDK位置、sbt版本(這個隨意)和Scala版本(注意時2.11.12):

配置build.sbt文件:

image-20221010233234880

操作完上圖的3步后,可以看到下面的提示,說明更新完成。

命名為And_Gate,也就是說我們寫一個與門的程序:

Scala代碼如下:

import spinal.core._

class AND_Gate extends Component {

  /**
   * This is the component definition that corresponds to
   * the VHDL entity of the component
   */
  val io = new Bundle {
    val a = in Bool()
    val b = in Bool()
    val c = out Bool()
  }

  // Here we define some asynchronous logic
  io.c := io.a & io.b
}

object AND_Gate {
  // Let's go
  def main(args: Array[String]) {
    SpinalVerilog(new AND_Gate)
  }
}

運行代碼:

image-20221014233642771

可以看到,生成了一個AND_Gate.v的文件:

image-20221014233712328

內(nèi)容如下,就是一個與門的邏輯。

image-20221014233727623

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • HDL
    HDL
    +關(guān)注

    關(guān)注

    8

    文章

    327

    瀏覽量

    47311
  • scala
    +關(guān)注

    關(guān)注

    0

    文章

    42

    瀏覽量

    6404
收藏 人收藏

    評論

    相關(guān)推薦

    如何實現(xiàn)SpinalHDL 環(huán)境搭建

    據(jù)說SpinalHDL相比chisel更具優(yōu)勢,這讓我有了興趣,今天開始安裝搭建。平常用的linux系統(tǒng)的,但是Intel IDEA安裝在Ubuntu上的時候總是卡的不行,就放棄了,其實
    的頭像 發(fā)表于 08-24 14:43 ?8593次閱讀
    如何實現(xiàn)<b class='flag-5'>SpinalHDL</b> 環(huán)境搭建

    spinalhdl轉(zhuǎn)Verilog可讀性 SpinalHDL開發(fā)流程

    SpinalHDL是基于Scala全新的硬件描述語言,解決了不少Verilog等傳統(tǒng)HDL語言的痛點,可以快速的完成某些IP的開發(fā),和完美的融入現(xiàn)有的開發(fā)流程。 誠然SpinalHDL的學(xué)習(xí)路線
    的頭像 發(fā)表于 07-27 09:29 ?1973次閱讀
    <b class='flag-5'>spinalhdl</b>轉(zhuǎn)Verilog可讀性 <b class='flag-5'>SpinalHDL</b>開發(fā)流程

    避免!采購晶振時須牢記哪幾點

    避免!采購晶振時須牢記哪幾點
    發(fā)表于 06-08 07:37

    介紹STM32的一些問題及資料

    介紹STM32的一些問題及資料
    發(fā)表于 01-19 06:11

    STM32 我們要學(xué)習(xí)什么

    STM32是怎么在眾多單片機里脫穎而出的?STM32,我們要學(xué)習(xí)什么?
    發(fā)表于 01-24 06:37

    聊一聊SpinalHDL 1.6.1引的blackbox inline功能

    BlackBox在之前的文章中,曾介紹過如何封裝兼容別人的RTL代碼:SpinalHDL——集成你的RTL代碼整體的思路還是簡潔明了的,相信讀完后照著做很快就能上手。這對于保持設(shè)計的兼容性及混合
    發(fā)表于 06-29 16:02

    網(wǎng)友表示小米之后,從此蘋果只是路人

    有網(wǎng)友表示,最初他只是個地道的果粉,卻在無意間小米max,從此一發(fā)不可收拾,瞬間成為米粉。
    發(fā)表于 01-12 11:27 ?551次閱讀

    單片機的成長之路

    寫這篇文章的初衷要從最近帶我一個朋友學(xué)習(xí)單片機的經(jīng)歷開始講起; 我要用梁靜茹給我的勇氣寫寫如何單片機; 我的一個朋友以前是汽車電子技術(shù)專業(yè),畢業(yè)之后去做了和汽車相關(guān)的工作,修了
    的頭像 發(fā)表于 12-24 14:54 ?2006次閱讀

    Node mcu之旅

    自工作以來許久沒寫博客了,趁著這兩天放假休息,剛好搗鼓一下前些日子在某寶上買的Node mcu 無線模塊,順便學(xué)一下lua語言,本文主要記錄該模塊使用前的一些操作和遇到的一些問題,同時也希望對其他剛開始接觸這個模塊的人有點幫助。
    發(fā)表于 10-28 10:06 ?9次下載
    Node mcu<b class='flag-5'>入</b><b class='flag-5'>坑</b><b class='flag-5'>之旅</b>

    NodeMCU(ESP8266) 接入阿里云物聯(lián)網(wǎng)平臺 踩之旅

    文章目錄NodeMCU(ESP8266) 接入阿里云物聯(lián)網(wǎng)平臺 踩之旅NodeMCU簡介快速入門簡單使用阿里云物聯(lián)網(wǎng)簡介快速入門NodeMCU(ESP8266)接入物聯(lián)網(wǎng)平臺12
    發(fā)表于 10-28 10:21 ?23次下載
    NodeMCU(ESP8266) 接入阿里云物聯(lián)網(wǎng)平臺 踩<b class='flag-5'>坑</b><b class='flag-5'>之旅</b>

    大學(xué)時光、單片機開發(fā),嵌入式網(wǎng)站推薦

    大學(xué)時光、單片機開發(fā),嵌入式網(wǎng)站推薦
    發(fā)表于 11-20 11:51 ?8次下載
    <b class='flag-5'>入</b><b class='flag-5'>坑</b>大學(xué)時光、單片機開發(fā),嵌入式網(wǎng)站推薦

    STM32L476-1

    STM32L476-1
    發(fā)表于 12-09 14:36 ?18次下載
    STM32L476<b class='flag-5'>入</b><b class='flag-5'>坑</b>-1

    從Verilog到SpinalHDL

    不點藍字,何來故事?  學(xué)習(xí)SpinalHDL已有近半年,其誠然小眾,但“小家碧玉”未嘗不是絕代佳人。出Verilog遙想當(dāng)年本科之時畫過電路PCB、玩兒過單片機、PLC,亦學(xué)...
    發(fā)表于 12-20 18:56 ?3次下載
    從Verilog到<b class='flag-5'>SpinalHDL</b>

    SpinalHDL中的對應(yīng)關(guān)系及聲明形式

    針對SpinalHDL中的兩大類型Reg、Wire,來梳理下在SpinalHDL中的對應(yīng)關(guān)系及聲明形式。
    的頭像 發(fā)表于 07-03 11:02 ?1504次閱讀

    SpinalHDL里如何實現(xiàn)Sobel邊緣檢測

    書接上文,趁著今天休假,采用SpinalHDL做一個小的demo,看看在SpinalHDL里如何優(yōu)雅的實現(xiàn)Sobel邊緣檢測。
    的頭像 發(fā)表于 08-26 08:59 ?1250次閱讀