东北大学本科毕业设计(论文) 第二章 相关技术
第二章 相关技术
本章主要介绍了与本文相关的各种技术,其中包括片上总线与片上网络的概述、FPGA技术与IP核简介、仿真工具与设计平台等。
2.1 片上总线与片上网络概述
2.1.1 片上总线
随着超大规模集成电路的迅速发展,半导体工业进入深亚微米时代,器件特征尺寸越来越小,芯片规模越来越大,可以在单芯片上集成上百万到数亿只晶体管。如此密集的集成度使我们现在能够在一小块芯片上把以前由CPU和若干I/O接口等数块芯片实现的功能集成起来,由单片集成电路构成功能强大的、完整的系统(SoC-片上系统)。通常,SoC的设计中需要大量的IP核复用,因为这种技术减少了大型系统设计的复杂度。而(On-Chip Bus-片上总线)是实现SoC中IP核连接最常见的技术手段,它以总线方式实现IP核之间数据通信。相比传统的板上系统,片上总线不用驱动底板上的信号和连接器,使用更简单,速度更快。一个片上总线规范一般需要定义各个模块之间初始化、仲裁、请求传输、响应、发送接收等过程中驱动、时序、策略等关系。
众所周知,基于IP核设计的SoC是面相互连的,因此互连通信技术将成为IP核设计的关键性技术。通常,我们熟悉的互连通信结构有三种:总线互连,点到点互连,片上网络互连。图1具体展示了上述三种互连通信结构。
(1)总线互连 (2)点对点互连 (3)片上网络互连
图2.1 三种基本的互连通信结构
2.1.2 片上总线的优缺点
片上总线的意义在于SoC中各个CPU Core,IP Core间的互联通讯,对于大规模SoC设计而言也是性能瓶颈所在。其主要优点如下:
(1)简化了硬件的设计:便于采用模块化结构设计方法,面向总线的微型计算机设计
4
东北大学本科毕业设计(论文) 第二章 相关技术
只要按照这些规定制作cpu插件、存储器插件以及I/O插件等,将它们连入总线就可工作,而不必考虑总线的详细操作。
(2)简化了系统结构:整个系统结构清晰。连线少,底板连线可以印制化。 采用总线结构的缺点是利用总线传送具有分时性。当有多个主设备同时申请总线的使用是必须进行总线的仲裁。然而随着微电子技术的发展,CMP逐渐朝着多核化(几十或上百个核)和异构化(即包含不同类型的核)的方向发展,传统的总线结构面临的诸多问题,逐渐成为了影响CMP性能的主要瓶颈。问题如下所述:
(1)带宽限制:总线是一种共享介质的互连结构,某一时刻只允许一个设备使用总线。仲裁逻辑允许高优先级的设备获得总线的使用权,在总线被占用期间,所有其他的请求被阻塞,直到总线空闲。如果成百上千个IP核争用一条总线,结果难以想象。这就导致了系统并发性能低和吞吐率低。
(2)全局同步:全局连线上的信号延迟决定了系统的时钟周期,并且全局时钟会带来时钟歪斜的问题,驱动遍布整个芯片的全局时钟信号线需要消耗很多的能量,为了保持甚至提高系统的时钟频率,解决时钟歪斜问题,和解决庞大时钟树所带来的功耗问题,未来大规模多核的SoC设计必须使用全局异步局部同步(Global Asynchronous Local Synchronous, GALS)机制,每一个代理模块工作在自己的时钟域,而不同的资源节点之间则通过片上互连网络进行异步通讯。
(3)信号集成度:更低的电源电压,更小的线宽,使得整个VLSI系统对电流中的噪声更加敏感。而共享介质上的更多功能部件则进一步加重了噪声。
(4)信号延迟:随着特征尺寸的下降,连线延迟成为影响信号延迟的主要因素。总线结构是全局控制的。在10亿晶体管时代,全局的线延迟会大于时钟周期。总线结构的全局连线使得时钟的偏移很难管理。
为了突破片上总线在大规模SoC系统上的瓶颈,片上网络这个通信结构被提出已解决上述传统总衔接够面临的问题。
2.1.3 片上网络
自上个世纪90代末片上网络的概念被提出以来,它被认为是未来集成工艺下多核技术发展的必然方向。因为基于片上网络的系统能够很好的适应大规模SoC设计中常用的全局异步局部同步的时钟机制。其独特的片上通信架构最早来自于并行计算机的互连网络,但不同的是片上网络是一个芯片上的网络,所以片上网络几乎所有的拓扑结构都
5
东北大学本科毕业设计(论文) 第二章 相关技术
能在计算机网络中找到相应的原型,这样对片上网络的研究提供了很大的方便。片上网络以其诸多的特点和优势成为研究的热点,具体优势有如下几个方面:
(1)片上网络可以跨越同步和异步时钟域或者使用不受时间约束的异步逻辑。片上网络将计算机网络原理和方法应用于芯片上的设计,相比于传统的芯片设计方法提高了系统芯片的可扩展性并且降低了芯片的功率和能耗。
(2)片上网络的电路的链接中有许多共享的信号。因为所有链接可以同时传送不同的数据包,从而可以实现数据的并行化,这相比于传统的总线通信架构对吞吐量和可扩展性有了很好的改善。
(3)片上网络实现了计算节点和通信节点的隔离,通过一个标准接口支持模块化和IP复用,为系统测试和芯片开发提供了便利的服务,因此提高了工程效率。 下面将分别介绍片上网络的拓扑结构、包交换技术、路由策略和映射。 2.1.3.1 片上网络的拓扑结构
所谓的片上网络拓扑结构就是指片上网络中各个节点之间的相互连接方式。片上网络的拓扑在片上网络体系结构中是十分重要的部分,因为它直接决定了片上网络中所采用的路由方式,仲裁算法以及IP核的分布。通常片上网络拓扑结构分为两类,一类是直接型网络拓扑,另一类是间接型网络拓扑。因为本论文是基于直接型网络拓扑中的2D Mesh做的片上网络快速还原系统和IP核,所以在此详细介绍一下2D Mesh。
二维网状网络(2D Mesh)是目前片上网络研究中最常用的拓扑结构。其结构是每个资源和一个通讯节点相连,而一个通讯节点与四个相邻的通讯节点和一个资源相连。通讯节点是路由功能,并作为每个相邻的资源节点的网络接口。本论文实验所做的IP核就是基于2D Mesh结构上实现路由功能的通讯节点。图2.2给出了一个4*4的2D Mesh 结构。
RIPIPRIPRIPRRIPRIPIPRIPRRIPIPRIPIPRRIPIPRRIPRIPR
图2.2 4*4的2D Mesh结构
6
东北大学本科毕业设计(论文) 第二章 相关技术
其中的IP模块可以是芯片上的处理器核,内存,也可以是用户自定义的逻辑电路。路由器与路由器之间,路由器与IP模块之间是由一对输入输出通道连接,这种连接可以实现数据传输时的良好并行性。在众多拓扑结构中,规则的2D Mesh结构并不是最优的,但其以结构简单,易于实现和良好的复用性等特点,被大多数片上网络研究人员采用。总的来说,直接型拓扑结构部署简单,可扩展性强,便于设计简单高效的路由算法。 2.1.3.2 片上网络的包交换技术
片上网络上的包交换和计算机网络中的包交换原理上大致相同,都是将数据包按照特定方法从输入端口交换到输出端口,片上网络系统内常用的包交换技术主要有四种:存储转发(Store-and-Forward)、虚拟直通(Virual Cut Though)、虫洞路由(Wormhole Routing)和偏转路由(Deflection Routing)。下面分别介绍上述几种包交换技术的相关概念和问题。
(1)存储转发是先将数据完全存储,然后进行路由决策,最后在转发到下一个节点的交换机制。这种交换方式能够保证传输过程中数据的完整性,但是在片上网络系统中需要较大的存储空间,同时又存在较大的延迟。
(2)虚拟直通是将数据包划分为多个flit,并按顺序排好,将所需的路由信息放入head filt(头微片,后续微片成为数据微片),其余的flits跟随head之后,以“流水”的方式通过网络中的路由节点。当发生阻塞时,数据包就存储于发生阻塞的路由节点缓存中,这样每个路由节点只需要一个数据包大小的缓存空间即可,从而节省了大量的缓存资源。图2.4就是将数据包分片然后通过交换电路传输出去的流程。
Packettailbodybodyheadtailbodybodyheadswitchswitchswitchswitch
图2.4. 数据包分片示意图
(3)虫洞路由是目前片上网络中的主流交换机制,它和虚拟直通的思想基本相同,
7
东北大学本科毕业设计(论文) 第二章 相关技术
传输数据时也分被分为多个flit,当传输head flit时,路由节点选择一条最优路径,记录下数据包类型,并保持路径通畅,知道整个数据包flit传输完毕。在网络中没有阻塞的情况下,虚拟直通和虫洞路由是完全一样的。两者的区别是发生阻塞是对被阻塞的数据包的处理:虚拟直通是将整个数据包存储在缓冲区中;而虫洞路由是将各个flit分散到各个节点存储。
(4)偏转路由并不缓存任何数据包,所有进来的数据包被立即转发,这样不需要为一个特定数据包保持一条通路,一个数据包中的不同分片可以同时传输,提高了系统利用率。当接收数据时,分片到达顺序可能不同于发送顺序,这就需要为每个分片编号,再接收端重新组装。此方式的网络接口设计较为复杂,同时需要一个良好的拥塞控制方式来避免数据的丢失和重传。 2.1.3.3 片上网络的路由策略
片上网络的路由策略要选择一条最合适的路径将数据包从源地址发送到目的地址。通常,路由算法按照不同的标准可以分为如下几类:确定性路由、自适应路由、部分自适应路由。本文的路由算法是基于确定性路由中的XY、YX和XY-YX维序路由算法。
表2.1 一种二位网格的维序路由机制
方向 西(-x) 东(+x) 南(-y) 北(+y) 本地处理器
条件 △x<0 △x>0 △x=0,△y<0 △x=0,△y>0 △x=0,△y=0
确定性路由的路由路径只与源地址和目的地址有关,只要数据包中的源地址和目的地址确定了,与当前的网络状态无关。而典型的确定性路由就是维序路由,在维序路由中,每个数据包一次只在一个维上路由,当在这个维上到达了恰当的坐标后,才按由低维到高维的顺序在另外的维上路由。表1则为XY维序路由算法的具体示意图,简要概括,XY维序路由算法是先X方向,后Y方向传送数据包。YX维序路由算法不同于XY的是先Y方向,后X方向传送数据包。而XY—YX路由算法是根据当前节点和目的节点的坐标来确定数据包的传送方向。
自适应路由其主要特点就是路由路径除了与源地址和目的地址有关外,还与网络的状态有关。即对同一源/目的地址的数据包,在不同的网络状态下,它们的路由路径有可
8
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库片上网络路由器IP核的设计与实现(3)在线全文阅读。
相关推荐: