本系列的文章是我在学习NoC经典书籍:Principles and Practices of Interconnection Networks 以及相关的论文过程中所作的总结和归纳。在敦促自己建立更全面知识体系的同时,希望也能够帮助到对这一领域想作快速了解的同学。
文章目录
背景介绍
片上网络是什么
设计NoC时的考虑因素
一个典型的应用场景:Processor-Memory Interconnect
NoC的组成部分
拓扑结构(Topology)
路由算法 (Routing)
流控制(Flow Control)
背景介绍
随着数字电路规模的不断增大,传统的总线型数据交换方式导致的数据传输速率低下,越来越成为限制性能提升的瓶颈。通过互联的片上网络进行各部件的数据交流开始普遍。
数字电路由三个基本部分组成:
逻辑(logic)
存储(memory)
通信(communication)
片上网络是什么
片上网络是数字电路中各子系统之间进行通信的一种手段。即在硬件层面上搭建类似于“计算机网络”的电路结构,进行各组成部分之间的数据交换。发展相对悠久的“计算机网络”中的诸多概念在片上网络中也能找到对应:如拓扑、路由、流控制等等。 可以先这样简单的理解:片上网络就是在数字电路中一个简化版的“网络”
连接网络的各组件抽象为terminal,互联网络负责各terminal之间通过channel传递数据。与更高维度的“计算机网络”相比,信道距离短、数据传输速率快是硬件层面的片上网络的根本特点。 在片上网络中,各terminal多为processor、memory这一级别的组件。
设计NoC时的考虑因素
和“计算机网路”类似,我们要根据用户实际场景来设计对应的片上网络。可以考虑的点如下:
连接网络的终端数(Terminal)
终