简介

SpinalHDL语言的核心(Core)为多个特性(Features)定义了相应的语法:

  • Types (类型) / Literal (字面量)

  • Register / Clock domains

  • Component / Area

  • RAM / ROM

  • When / Switch / Mux

  • BlackBox (用于将Verilog或VHDL的IP核整合入SpinalHDL)

  • SpinalHDL to VHDL converter

随后, 利用这些特性, 用户可以定义数字硬件电路, 并且建立功能强大的库(Libraries)以及抽象(Abstractions)。SpinalHDL语言相比于其他HDL语言的一个主要优点在于:没有编译相关知识的用户依然可以拓展语言。

印证上述优点的其中一个例子是 Spinal Lib (请见Libraries章节), 它增加了许多实用程序(Utilities)、工具(Tools)、总线(Buses)以及其他方法(Methodologies)。

为了使用本章接下来介绍的这些特性, 用户需要在自己的代码中添加"import spinal.core._"字段。