ARM技术论坛
直播中

訾存贵

8年用户 926经验值
私信 关注
[经验]

介绍一下不带数据的Stream—Event

   在SpinalHDL中,Stream的抽象可谓诸多设计的核心,今天,一同来看下不带数据的Stream——Event。
》不带数据的Stream
   在逻辑设计里,握手信号处处可见,在SpinalHDL里,所有的握手信号都可以抽象为Stream接口:
这里的payload可以是任何的数据类型。但在某些场合下,我们可能并不需要payload,而只是单纯的想要一个握手信号。
   在这种情况下,你可以使用SpinalHDL lib中所提供的Event:

   Event对应一个payload为NoData的Stream信号,而NoData顾名思义,其实现为一个空的Bundle:
》Example
   这里我们以Axi4-Lite写通道为例进行描述。自定义信号名称如下:

  当我们将hpi转换为Axi4-Lite Write接口时,addr信号要送到aw通路,而data通路则要送到w通路。这里我们需要用到一个StreamFork组件,通过Event,我们可以很方便的描述该电路

这里,我们通过Event及StreamFork3来完成cmd和alite4WriteOnly三路Stream握手信号的处理,实现电路更加的方便简洁。

原作者:玉骐

更多回帖

发帖
×
20
完善资料,
赚取积分