本文作为SpinalHDL学习笔记第六十九篇,介绍SpinalHDL的赋值(Assignments)。
目录:
1.赋值(Assignments)
2.位宽检查(Width checking)
3.组合逻辑环路(Combinatorial loops)
⼀、赋值(Assignments)
SpinalHDL中有多个赋值运算:
//因为硬件的并发性, `a`的值⼀直是1
val a, b, c = UInt(4 bits)
a := 0
b := a
a := 1 //a := 1 "wins"
c := a
var x UInt(4 bits)
val y, z = UInt(4 bits)
x := 0
y := x //y读到0
x \= x + 1
z := x //z读到1
//⾃动连接两个UART接⼝