当前位置: 首页 > news >正文

基于Credit的流量控制

流量控制(Flow Control),也叫流控,它是控制组件之间发送和接收信息的过程。在总线中,流控的基本单位称为flit。

在标准同步接口中(比如AXI协议接口),握手信号如果直接采用寄存器打拍的方式容易导致信号在不同的方向上出现偏离。因此,引入了更复杂的FIFO结构替代了寄存器方式来给握手信号打拍,方便后端时序收敛。但是,各种各样的FIFO设计要么引入气泡,要么浪费容量或引入不需要的握手逻辑组合链。为了避免控制电路中的组合逻辑路径,在一个时钟周期内,数据被搬进或搬出FIFO是不允许的,因此存在FIFO气泡。

现在许多NoC设计采用基于credit的流量控制(比如CHI协议接口)。在这种方式中,源端会跟踪目的端有多少资源可以使用。只有源端收到目的端发送的credit,源端才可以发送flit给出去。显然,目的端必须保证发出多少个credit,就必须能收下多少个flit。

下图为一个简单的基于credit流控示例图,源端的up/down counter会对收到的credit进行计数,表示下游Sink目的端可以收多少数据。因此Sink必须有足够的buffer来存放数据。因此,组件之间的数据转发简化为只需要看valid信号就行了。源端每次发送一个数据,就需要up/down counter的计数值减1。

图1 基于credit的流控示例图

相关文章:

  • C++ 算法学习之旅:从入门到精通的秘籍
  • C++模板笔记
  • Linux系统编程---进程间Signal信号通信
  • el-table计算表头列宽,不换行显示
  • SKNet、空间注意力介绍
  • 如何使用Java生成图像验证码
  • Python学习笔记--Django的安装和简单使用(一)
  • 基于php人力劳务招聘系统开发功能需求分析【源码】
  • window.open(url) 和 window.location.href = url
  • 【PostgreSQL】超简单的主从节点部署
  • python+open3d获取点云的最小外接球体及使用球体裁剪点云
  • CF后台如何设置TCP 和 UDP 端口?
  • 电涌冲击测试领域的精密测量技术研究与应用
  • [论文笔记] 超详细解读DeepSeek v3全论文技术报告
  • 【前端】每日一道面试题2:解释CSS盒模型的box-sizing属性,以及它在响应式布局中的作用。
  • 雷赛伺服电机
  • x64dbg技巧
  • 前端缓存踩坑指南:如何优雅地解决浏览器缓存问题?
  • 【计算机哲学故事1-3】默认设置:在有限的系统里,决定你想成为什么
  • Linux:libc库简单设计
  • 古典 网站模板/广告网站策划方案
  • 党风廉政建设平台网站/网店营销策划方案范文
  • 东莞网站建设服务公司/西安官网seo
  • 网络广告如何推广/西安seo外包
  • 济南传承网站建设李聪/无锡seo培训
  • 建设网站的源代码/网站域名注册查询