xPU pipeline and state machine
一般的状态机
![image](https://img2023.cnblogs.com/blog/847278/202401/847278-20240101103422255-1628770479.svg)
序号 |
特点 |
1 |
多个状态在多周期之间转换 |
2 |
每个状态独占一个周期 |
3 |
活跃资源为 1/N (N为状态数量) |
4 |
资源利用率低 |
混合:宏观流水线,內嵌多周期状态机
![image](https://img2023.cnblogs.com/blog/847278/202401/847278-20240101103447456-2120889302.svg)
序号 |
特点 |
1 |
多个状态机之间组成流水线 |
2 |
每个流水线內的状态机为上述的一般的状态机 |
3 |
资源利用率低 |
混合:全局状态机,流水线多阶段valid
![image](https://img2023.cnblogs.com/blog/847278/202401/847278-20240101104254604-1497079457.svg)
序号 |
特点 |
1 |
全局状态机控制流水线valid-invalid |
3 |
精心设计的状态机,整个流水线同一周期存在多个阶段valid |
2 |
较高的资源利用率 |
一般的流水线
![image](https://img2023.cnblogs.com/blog/847278/202401/847278-20240101103545520-1991139733.svg)
序号 |
特点 |
1 |
流水线每个阶段都是1周期 |
3 |
全局状态机可以看作每个阶段都valid,状态机被省略 |
2 |
无阻塞资源利用率100% |
混合:流水线內嵌状态机
![image](https://img2023.cnblogs.com/blog/847278/202401/847278-20240101103518092-519054989.svg)
序号 |
特点 |
1 |
以一般的流水线为主,内部嵌套个别状态机 |
2 |
流水线每个阶段以1周期为主,存在內嵌状态机的周期可变 |
3 |
状态机可通过valid-invalid接入流水线 |
4 |
资源利用率高,巧妙组合pipeline & state Machine |
总结
流水线与状态机存在多种组合方式
上述从上至下可看作简单状态机如何进化为高效流水线
从下至上可看作高效流水线如何退化为简单的状态机
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步