Rocket - util - Broadcaster

https://mp.weixin.qq.com/s/ohBVNAXZUA538qSxfBGMKA

 
简单介绍Broadcaster的实现。
 
 
1. Broadcaster
 
广播即是把输入口的输入转发到每个输出口输出。
 
Takes in data on one decoupled interface and broadcasts it to N decoupled output interfaces.
 
2. io
 
a. in:输入口;
b. out: n个输出口;
 
3. idx
 
idx标识当前转发的输出端口号。
 
idx从0开始递增,增加到n-1反转为0:
 
这样就可以逐个转发到每一个输出端口。
 
4. save
 
save存储in的数据,以供后续转发使用。
 
5. io.out.head
 
io.in的值首先转发到io.out(0),即io.out.head:
 
 
当io.in输出到io.out.head的同时,io.in.bits也缓存到save中:
 
6. io.out(i)
 
随着idx的递增,逐个转发save中的数据。
 
7. 附录
 略
 
posted @ 2019-05-24 11:21  wjcdx  阅读(179)  评论(0编辑  收藏  举报