NoC (Network on chip) 基础 (1) : 片上网络的简介

这篇具有很好参考价值的文章主要介绍了NoC (Network on chip) 基础 (1) : 片上网络的简介。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本系列的文章是我在学习NoC经典书籍:Principles and Practices of Interconnection Networks 以及相关的论文过程中所作的总结和归纳。在敦促自己建立更全面知识体系的同时,希望也能够帮助到对这一领域想作快速了解的同学。

背景介绍

随着数字电路规模的不断增大,传统的总线型数据交换方式导致的数据传输速率低下,越来越成为限制性能提升的瓶颈。通过互联的片上网络进行各部件的数据交流开始普遍。

数字电路由三个基本部分组成:

  • 逻辑(logic)
  • 存储(memory)
  • 通信(communication)

片上网络是什么

片上网络是数字电路中各子系统之间进行通信的一种手段。即在硬件层面上搭建类似于“计算机网络”的电路结构,进行各组成部分之间的数据交换。发展相对悠久的“计算机网络”中的诸多概念在片上网络中也能找到对应:如拓扑、路由、流控制等等。
可以先这样简单的理解:片上网络就是在数字电路中一个简化版的“网络”

连接网络的各组件抽象为terminal,互联网络负责各terminal之间通过channel传递数据。与更高维度的“计算机网络”相比,信道距离短、数据传输速率快是硬件层面的片上网络的根本特点。
在片上网络中,各terminal多为processor、memory这一级别的组件。
片上网络,NoC,网络,硬件工程,硬件架构

设计NoC时的考虑因素

和“计算机网路”类似,我们要根据用户实际场景来设计对应的片上网络。可以考虑的点如下:

  • 连接网络的终端数(Terminal)
  • 终端所需的峰值带宽(peak bandwidth)和平均带宽(average bandwidth)
  • 延迟的要求(latency)
  • 单条信息的长度的分布(message size)
  • 交通模式(traffic pattern):指每个terminal发送数据的目标terminal的分布(就朝着一个目标terminal使劲发 还是 这个发几条那个发几条)
  • 服务质量(quality of service):是否考虑信息优先级设置
  • 可靠性(reliability):指消息能否正确可靠的发送到目的地。一般情况下要求100%的可靠性。
  • 可用性(availability):指网络的可用且操作正确的时间占比。

一个典型的应用场景:Processor-Memory Interconnect

以下展示了两种连接processor和memory的互联网络。

  • Dance-hall architecture
  • Integrated-node architecture

其中第二种架构在现代的机器中更为常见。它将单个processor和单个memory通过communication swtich组成一个节点。这样processor既可以快速访问local memory,同时也能够通过互联网络访问其他memory。
片上网络,NoC,网络,硬件工程,硬件架构
在这种互联网络中传递的消息类型有以下四种:

  • Read request
  • Read reply
  • Write request
  • Write reply

根据他们各自的功能要求,将message格式分为如下两种。
片上网络,NoC,网络,硬件工程,硬件架构
在这里有必要区分message和packet的不同。message是在各接入网络的terminal 视角的数据格式,而packet是数据在网络中实际传输时的包格式。单个message可以切分为多个packet,加上协议的包头在网络中传输。这取决于互联网络中采用的协议。(比如为了简化网络中对于不等长message的数据交换,将它们切分为固定长度的packet在网络中传输,到达目的地之后再拼装起来)

NoC的组成部分

为了满足上述所提的各实际场景的不同需求,对NoC各部分的设计均要有所考虑。
为了提升通信质量(时延、带宽、能耗、电路面积),通信资源的共享可以作为互联网络的出发点。就和“计算机网络”一样,我们不会对任意两个Terminal进行点到点的连接,我们通过一系列共享channel和一系列共享的router完成互联。

拓扑结构(Topology)

拓扑结构即是指,一系列共享的router和channel的排列组合形式。

Torus topology:
片上网络,NoC,网络,硬件工程,硬件架构

Ring topology:
片上网络,NoC,网络,硬件工程,硬件架构

路由算法 (Routing)

路由算法决定了从出发地到目的地packet传递的路径。因此路由算法一定建立在Topology的基础上。

一个好的路由算法,能够适应可能面对的 traffic pattern,均衡各个channel的压力,保证通信质量。
片上网络,NoC,网络,硬件工程,硬件架构

流控制(Flow Control)

流控制指的是,当packet从源地址到目的地址的过程中,所经过路径上各种资源的分配过程。其中最关键的资源有两个:

  • Channel:就是node之间通信的信道。
  • Buffer:使用register或memory,让packet能暂存在node中。

一条很恰当的比喻:The topology determines the roadmap, the routing method steers the car, and the flow control controls the traffic lights, determining when a car can advance over the next stretch of road (channels) or when it must pull off into a parking lot (buffer) to allow other cars to pass.

流控制算法应该要做到,在分配buffer资源时,尽量避免因资源冲突导致的channel资源闲置。
比如当一个packet希望通过一条空闲的channel发走时,他却由于buffer占用被迫等待,这个buffer中的packet此时在等待另一条非空闲的channel。这便是flow control不希望看到的情景。
一个简单且有效的解决方法是,为将要选择从不同channel发走的packets,各自分配不同的buffer。这就好像在红绿灯路口分别设置左转、直行、右转车道,直行车辆和右转车辆不必因为向左走的路堵死了而无法直行和右转。

一个好的流控制策略应该做到公平且无死锁。它不应该造成一个packet无休止的等待下去。

以下列举了两种流控制策略的time-space图。

  1. Store-and-forward flow control
  2. Cut-through flow control

Cut-through方法因为将packet划分为flits,作为流控制的最小单位。因此对于Channel的利用率更高。
片上网络,NoC,网络,硬件工程,硬件架构

下一篇:NoC (Network on chip) 基础知识 (2) :片上网络的拓扑结构(Topology) 将从网络拓扑的基本概念开始介绍 NoC。文章来源地址https://www.toymoban.com/news/detail-794292.html

到了这里,关于NoC (Network on chip) 基础 (1) : 片上网络的简介的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 极简的输入_求最小值的函数_求和的函数_矩阵_1879_B. Chips on the Board

    还在想应该怎么算,原来这么简单 要求每一行或者每一列都有元素 每一行都有元素的话,答案就是所有 A 的和再加上 n 个 B 的最小值的和 每一列都有元素的话,答案就是所有 B 的和再加上 n 个 A 的最小值的和 最后取上面两个和的最小值 有一种代码非常简短的写法,输入的

    2024年02月21日
    浏览(50)
  • 云计算网络工程笔记——网络基础

    云计算笔记(一) 应用层:人机交互 表示层:将“编码”----二进制 网络层: 介质访问控制层 物理层:物理硬件 加量:    数据传 人类最早的网络----对等网 网络变大 1.距离变长 网线:RJ-45   双绞线(max100m) 中继器----放大器(放大电信号)        波形失帧 2.节点增加 直线型拓

    2024年02月05日
    浏览(45)
  • 网络工程师基础

    一  数据通信网络:由路由器 交换机 防火墙 无线控制器 无线接入点 以及个人电脑 网路打印机 服务器等设备构成的通信网络 数据通信最基本的功能就是实现数据互通 常见术语:数据载荷 最终想要传递的信息=快递的物品本身                 报文   网络中交换和运输的数

    2024年02月10日
    浏览(42)
  • 网络工程设计02——ensp基础

    本文主要用于快速熟悉ensp操作,完成网络工程设计拓扑设计部分,详细教程请参考:https://wwf.lanzoue.com/iB0iW0fir80j 数据传输网络-三层结构体系: 核心层: 核心层是互连网络的高速主干网,在设计中应增加冗余组件,使其具备高可靠性,能快速适应通信流量的变化。 设计核心

    2024年02月09日
    浏览(47)
  • 零基础如何自学成为网络安全工程师

    一份网络攻防渗透测试的学习路线,不藏私了! 👉 【一帮助安全学习一】👈这里自取256G网络安全自学资料 1、学习编程语言(php+mysql+js+html) php+mysql可以帮助你快速的理解B/S架构是怎样运行的,只有理解了他的运行原理才能够真正的找到问题/漏洞所在。所以对于国内那些上来

    2024年02月16日
    浏览(56)
  • 物联网协议Coap之Core和NetWork简介

    目录 前言 一、Coap的Core包 1、Coap对象 2、Message对象 3、Request对象 4、Response对象 二、Coap的NetWork调试 1、UDP运行模式  2、Network消息接收 3、Sender线程发送数据  三、总结         在之前的博文中,对Californium中Coap的实现进行了简要的介绍,分别从Server和Client两端进行了基础

    2024年01月21日
    浏览(46)
  • 图像融合论文阅读:IFCNN: A general image fusion framework based on convolutional neural network

    @article{zhang2020ifcnn, title={IFCNN: A general image fusion framework based on convolutional neural network}, author={Zhang, Yu and Liu, Yu and Sun, Peng and Yan, Han and Zhao, Xiaolin and Zhang, Li}, journal={Information Fusion}, volume={54}, pages={99–118}, year={2020}, publisher={Elsevier} } 论文级别:SCI A1 影响因子:18.6 📖 该论文是【

    2024年02月03日
    浏览(50)
  • 网络工程师应知应会:基础知识(5)

            防火墙按安全级别不同,可划分为内网、外网和 DMZ 区。 (1) 内网。         内网是防火墙的重点保护区域,包含单位网络内部的所有网络设备和主机。该区域是可信的,内网发出的连接较少进行过滤和审计。 (2) 外网。         外网是防火墙重点防范的对

    2024年02月06日
    浏览(43)
  • Jellyfin使用Intel QuickSync(QSV)硬件加速 on Docker

    环境及说明 设备:威联通451D(CPU为J4025,核显支持intel qsv) jellyfin版本:10.7.7 部署:docker (linuxserver/jellyfin) docker环境下jellyfin开启硬解请转至: 威联通NAS搭建jellyfin影音库:docker环境一行脚本部署(支持硬件解码、海报刮削) 上文中硬解采用了Video Acceleration API(VAAPI),

    2024年02月06日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包