NoC会缩小设计生产力差距吗

发布于:2025-07-15 ⋅ 阅读:(18) ⋅ 点赞:(0)

第1章

NoC会缩小设计生产力差距吗

Axel Jantsch and Hannu Tenhunen

Royal Institute of Technology, Stockholm

axel@imit.kth.se, hannu@imit.kth.se  

摘要:

本章首先介绍IC设计过程的两个特性:任意组合特性和线性工作量特性。本章认为,一个设计模式如果同时具有这两个特性,该设计模式就是可扩展的,并且具有和工艺发展相匹配的潜在能力。接着讨论了一些促使当前的设计方法学和设计技术产生变革的发展趋势。最后论述了新兴的NoC(Network-on-Chip)模式将有希望解决这些发展趋势提出的各种问题,并兼有任意组合和线性工作量两个特性。作为结论,本章认为NoC很有可能是今后SoC平台和设计方法学的基础。

关键词:

网络化芯片(Networks on Chip)

生产力差距(Productivity Gap)

SoC设计方法学(System on Chip Design Methodology)

1 引言

提高设计生产力的关键是在为一个给定的设计增加构件时,所投入的工作量能够不依赖于原有设计的规模,而只与新增加的构件规模有关。换句话说,设计工作量必须是新增构件的规模的线性函数。如果这种情况存在,原有设计中一些大的构件和模块就可以进行重用。

A. Jantsch and H. Tenhunen (eds.), Networks on Chip, 3–18.

© 2003 Kluwer Academic Publishers. Printed in the Netherlands.

工作量可以投入到新增构件上。一个设计方法学、一个体系结构以至于一个平台,如果要有较强的生命力,能够做到普遍适用于数个工艺时代,这是一个必要的前提。

本章的中心议题是:NoC具有提供这样一种普适性平台的潜力。如果这个观点正确的话,将会引发一场SoC体系结构和设计过程的巨大变革,甚至可以称为是一场模式的变革。即使不是这样,NoC也将为嵌入式系统设计者提供一种可选的体系结构和开发平台。

任意组合特性(arbitrary composability property):

给定一个构件的集合和一个组合操作符的集合,假设使用组合操作符可以将构件组合成大的构件组合体。如果可以使用任意的组合操作符将任意一个构件与一个给定的构件组合体A进行组合,即对A进行扩展,但不改变A的相关行为,就称构件和组合操作符都是可任意组合的。

请注意,这个定义和下面将要给出的线性工作量的定义都是仅仅针对工程研究使用的,并不包括数学特性,如果是那样就理想了;在较高或较低的层次上都可以实现。

另外,这个特性是相对于一个称为“相关行为”(relevant behavior)的概念进行定义的。因此,同一个构件或组合操作符可能有,也可能没有任意组合特性,这取决于给定的行为目标和行为定义。

例如,标准逻辑门 NAND、NOR、INV 等,就它们的逻辑级I/O行为而言,就具有这种特性。给门级网表增加新的逻辑门,除非原来的连接关系被破坏,否则并不会改变原来网表的行为。一个给定的门级网络可以用在任何环境中,不论它周围是什么网络,它都会表现出相同的行为。使用电路的其他部分所产生的输出和结果,新的门级网络可以添加到当前的网络中而不必改变原有部分。这是能够在任何环境下进行百万门级的电路设计,并对一些大的模块进行重用的基础。

应当指出的是,逻辑门的这种优良特性部分归功于它的实现工艺,这种实现工艺可以使晶体管的大小等比例地变化,可以插入缓冲器,利用自动工具可以产生的合理的布局和布线等。

任意组合特性如果得不到满足将会产生一些不良后果,我们可以从中受到启发。当前设计方法的两个最严重问题就是违反了任意组合原则带来的。一个是时序收敛问题,即电路时序的正确实现问题。

这是一个非常困难的问题,原因在于即使对网表进行很小的改变,都可能导致整个系统的时序发生改变,这或者是因为延长了关键路径,或是因为看起来是与时序无关的一些器件的布局布线带来了不可预料的影响。另一个问题是系统验证问题,系统验证是极其困难的,因为系统级的行为很难控制,一个器件的很细微的变化就可能会对其余看起来似乎无关的器件产生无法预料的影响。对这两种情况,设计工作量是以超线性的方式随系统规模的扩大而增大的。

如果任意组合特性可以得到保证,为一个现有系统增加新构件所投入的工作量就只与新构件有关,而不与可重用系统的大小有关(图1.1)。

 即:

Deffort(S) = Deffort(B) + Deffort(C) + Deffort(3)

据此推论,任意组合特性带来的一个必然结果就是下面的线性工作量特性(linear effort property):

给定一个构件的集合和一个组合操作符的集合。假设使用组合操作符可以将构件组合成大的构件组合体。对一个使用构件和组合操作符建立系统的设计过程而言,如果对给定的一组构件组合体 A₁, A₂, …, Aₙ,可以使用组合操作符将它们集成到系统 S 中,而所用工作量只依赖于 n,并不依赖于组合体的大小,即:

Ieffort(n),就称这个设计过程具有线性工作量特性。

系统 S 的总设计工作量为:

Deffort(S) = Deffort(A₁) + … + Deffort(Aₙ) + Ieffort(n)

需要注意的是,这个特性意味着一个组合体的接口复杂性并不依赖于该组合体的大小。很显然,这实际上是不现实的,但显然同时也是建立任意大系统的必要先决条件。因此,我们必须将这种理想化的概念尽可能地接近实际,以便建立越来越大的系统。实际上,我们不能充分接近理想状态的根本原因也是产生设计生产力差距的原因。

我们相信,基于NoC的平台具有同时拥有上述两种特性的潜力,但不能使这两种特性都自动得到保障。本章中,我们以这两种特性为主线展开。首先先回顾一下导致NoC及其类似体系结构出现的潜在趋势及其提出的挑战。

2 趋势和挑战

IC制造技术的发展使我们可以在不久的将来,在单个芯片上集成数十亿只晶体管¹。如果这个结论成立,并且假设市场也需要更高集成度的IC芯片,那么关键问题是:  
- 这种未来的芯片将如何组织?  
- 未来含有这种芯片的系统将如何进行设计?

IC领域的许多发展趋势将会使IC的体系结构和设计方法产生显著的变化。

通信和计算工艺水平的进步给晶体管带来的好处要比给互连线的多得多。这使得互连线逐渐超过晶体管,成为影响性能参数、功耗和面积的主要因素,并使设计从以计算能力为主转向以数据传输和通信能力为主,并在系统层次上产生了深刻的影响²³⁴。由于通信越来越难设计,越来越难以正常工作,所以通信常常成为开发的瓶颈。

深亚微米效应——交叉耦合、干扰和瞬态错误只是工艺进步所带来的许多副作用的一部分⁵⁶。为了将工艺水平使用到极致,需要花费相当大的技巧、经验、知识和时间来将这些副作用置于控制之中。

一个数字电路设计师或是一个系统设计师,即使具有每天设计数百万只晶体管的设计能力,也不见得对这些负面效应处理得很恰当。因此,设计者采用可重用的思想。可以将专家使用专门技巧精心设计出来的一些模块进行重用。但是,这样做的关键在于,当对这些模块进行任意组合时,不会再出现深亚微米效应。这样我们就可以得到一个结论:

> 在物理设计层次,任意组合特性意味着在对模块进行组合时,模块的电气和物理特性不受影响。

全局同步性  
深亚微米工艺的物理效应使得对芯片上所有器件维持全局同步变得越来越困难¹。时钟信号将会花费数个周期才能从芯片的一端传输到另一端,时钟偏斜将变得难以控制,时钟树则早已成为影响芯片功耗和成本的一个主要因素。随着几何尺寸越来越小,而时钟频率越来越高,这些问题将变得越来越突出。因此,对甚大规模集成电路芯片来讲,将来有可能不会采用单独一个同步时钟。

设计生产力差距  
综合和编译技术跟不上IC制造工艺的发展²。为了完成单芯片系统的设计和实现,我们要么指数级地增加设计时间,要么指数级地增加设计人员。由于这两者都是不现实的,因此在过去的一段时期内,我们将越来越复杂的构件作为基本单元,并藉此方法来缓解这个问题。

这些基本设计单元从单个的晶体管级开始,一直发展到门、整个ALU、乘法器、确定状态机、处理器核等级别。实际上,将越来越复杂的设计元素可重用已经成为提高生产力的主要手段,并且看来还会继续下去。这使我们越来越接近理想的线性工作量特性。

功能的异构性  
显然,能够在单个芯片上实现的系统正变得越来越复杂。芯片上集成了越来越多具有不同功能、不同特征尺寸、不同时期、不同特性的许多功能模块。产生和恢复射频信号的信号处理功能、全局控制功能、维护和统计功能,以及自然语言理解和产生功能共存于同一个芯片上。

这些功能模块是由不同的设计人员在不同的环境下,采用不同的设计语言和工具设计出来的,然而特定的应用需要将它们集成到同一个芯片上。

为了进行详细的讨论,下面我们介绍 NoC 的一个典型体系结构。在第4节我们将探讨 NoC 模式怎样解决上面列出的种种问题。为了更清楚地进行概括,第5节给出了使用基于NoC方法的开销。最后,第6节我们对如何改变设计过程进行推测。

3 NoC  
NoC的一个典型体系结构如图1.2所示,它为资源提供了一个通信的基础结构。使用这种方式可以将硬件资源作为独立的模块单独进行开发,然后再将这些模块作为网络元素连接起来,并最终建立 NoC。这个平台非常灵活,是可扩展和可配置的,可以适合不同工作负载的需要,同时又能保持应用开发方法和实践的通用性。  

从版图角度来看,二维网格互连拓扑结构是最简单的,资源和开关之间的局部互连不依赖于网络的大小。另外,二维 mesh 中的路由也比较容易,这意味着可以使用小开关、大带宽、短时钟周期和全局可扩展性较强。  

NoC 是由资源和开关直接互连构成的,资源之间可以通过收发消息进行通信。一块资源是一个计算或存储单元。开关对资源之间的消息进行路由和缓冲。每一个开关通过输入和输出通道与其相邻的四个开关互连。一条通道包含两条单向点对点链路,通道可以连接两个开关,也可以连接一个开关和一块资源。开关内部可以有队列来处理阻塞。我们希望一块资源的大小,或者是给定工艺条件下可以进行同步控制的最大区域,或者是挂在一条总线上的计算资源和存储资源簇。我们还希望每个资源块的大小会随着工艺发展而逐渐缩小,即产生这样一种结果:资源块的数量将增加,开关之间和资源与开关之间的带宽将增加,但整个网络的通信协议不变。

需要指出的是,这里指的只是一个简单的NoC,只是为了便于进行下面的讨论,文献[8,9,10,11,12,13,14]中给出了一些复杂NoC的例子。

4 NoC是怎样解决问题的

尽管需要从许多方面对许多因素都要进行讨论,但我们将重点放在 NoC的两个关键机制上:可重用性和可预测性。在所有与NoC有关的因素当中,这两个是最重要的。

4.1 可重用性

如上所述,可重用性一直都是弥补工艺差距的主要技术途径¹⁵¹⁶¹⁷。从晶体管开始,接着是门,然后是诸如 ALU、乘法器之类的功能模块,一直到微处理器和DSP核,作为基本模块的构件变得越来越复杂。在这种情形下,设计者可以提高抽象层次,采用功能越来越强的“基本”构件来对系统的功能特性进行描述。

但奇怪的是,综合技术只是在一个相对肤浅的层次上进行抽象,这在软件和硬件领域都可以看到。工艺映射、逻辑和RTL综合是在一个特征化的优化空间里,原则上采用直接的方法进行的,而跨层次的、支持深层设计的逻辑综合技术一直没有成功,高层和体系结构综合就是这方面的例子。

在软件方面,将C语言映射到微处理器的指令集多多少少都是很直接的,因此与之相应的编译技术取得了很大的成功。与此相反,从功能、逻辑和其他高级语言开始的编译缺少有效性,因此从来没有成为主流。

据此可以推断,通过提供更加复杂的构件而得到的可重用性,仍将是使工艺得到最充分利用的主流技术。综合和编译技术将为更有力的系统描述提供到基本构件的表面映射。

然而有一点与原先不同,通信“构件”,更确切地说是通信结构及其服务,也将成为基本设计元素。这正是基于NoC的方法的精髓所在:即通信服务的可重用。

让我们简要讨论一下在基于 NoC 的方法中,什么可以重用。

构件和资源  
任何计算元素都可以连接到通信网络上。实际上,我们希望一个典型的基于 NoC 的系统可以包含:

- 处理器核  
- DSP 核  
- 存储器组  
- 类似于 Ethernet 和 Bluetooth 协议栈的专用 I/O 模块  
- 图形处理器  
- FPGA 模块等  

就一块资源的规模而言,它既可以只是单个处理器核,也可以是通过局部总线连接在一起的、由多个处理器核与存储器所构成的簇。为了实现互连并使用通信网络所提供的服务,资源块要遵守通信网络的接口规范。

过去十几年来,处理器核的可重用是通过定义总线接口规范来实现的。通过定义网络接口,并允许将任意数目的资源块集成到一个网络中去,NoC 进一步深化了这个概念。

就是在一个基于总线的系统中,增加一个新资源块对系统其余部分的性能有着极大的影响,这是因为等量的通信资源被更多的资源块共享了。在 NoC 中,增加资源也意味着增加开关和互连线,因此也增加了系统的通信容量。这种可扩展特性是实现任意组合特性的一个必要前提,但还保证不了任意组合特性的实现。通信网络还需要能够进一步保证带宽分配的平衡、资源块通信行为的合理化等,例如,要避免单个资源块独占整个通信带宽。

总之,基于 NoC 的方法具有提供任意组合特性的巨大潜力,这对提高设计生产力大有裨益。

通信基础结构  
基于 NoC 的方法带来的直接好处要归功于通信网络的可重用。

开关、互连线以及低层通信协议在经过设计、优化、验证和实现之后,就可以大量复用。如果不同应用领域对性能、成本和可靠性的要求存在较大差异,至少同一个应用领域的所有产品可以实现专用通信网络的可重用。例如,移动手持设备和地面基础设备在功耗和性能需求上存在较大的差异。因此,对这两种应用领域的 NoC 平台就要进行合理设计。

除了硬连接的通信基础结构以外,高层网络服务也可以重用。实际上有很多对大多数应用领域都有益的服务项,但不可能对每一个新产品都进行修修补补的开发。例如:

- 网络的检测、监控和错误管理;  
- 网络资源的分配和管理,以及为了负载平衡和功耗优化而有可能进行的任务调度等;  
- 全局和共享存储器的管理;  
- 复杂通信服务的保障,如保证带宽的通信通道、QoS、多播和广播通信等。  

在目前的单处理器系统中,上述大多数任务一般都是由操作系统提供的。与此类似,NoC 操作系统将具有较强的通用性,也可以被许多产品重用。由于未来的系统越来越复杂,操作系统也将变得越来越复杂,这使得可重用越来越重要。

应用部件和特征的可重用  
可重用不能仅仅是构件和普通的通用服务的可重用,新产品也可以用现有的完整特征构成。展望未来,我们可以想象今天的移动电话将增添:

- 语言分析子系统  
- 语音合成器  
- 语言分析和处理子系统  

它们为移动电话提供了一个语言接口。同样的模块或特征对很多种产品都是很有用的,因此应当尽可能地重用。显然,这里的关键问题是对这些特征间的高层接口进行定义和标准化,以便得到高效的通信和信息共享。

NoC 为特征可重用提供了极好的基础。 为了得到优化实现,某个特征既可以全部用软件实现,也可以部分以专用硬件模块实现。无论哪种方式,该特征都可以插入到一个或多个资源槽中,并且 NoC 至少可以为该特征无偿地提供与系统其余部分的低层通信和网络服务。

设计、仿真和原型环境  
系统开发成本的很大一部分一般是用于建立仿真环境和原型系统。由于许多产品是基于同样的 NoC 平台,因此可以节约大部分投资。再者,即使不同领域的专用 NoC 平台在性能和功耗上存在较大差异,但在设计和验证环境的可重用上,还是有许多相似性的。

验证开销  
系统的验证开销通常和设计成本不相上下。因此,通过重用预先设计和预先验证的器件和服务,验证时间可以和设计时间一样得到大幅度的减少。但可重用的重要性对于验证来讲,要比设计大得多,这是因为:

- 验证时间的不确定性非常高,而且很难计划;  
- 产品质量的不确定性也非常高,最终产品中未被检测出的错误可能会带来巨大的开销。  

由于验证的风险和不确定性很高,验证开销很大,可重用给验证带来的好处要超过设计过程。由于已经被应用于其他产品,可重用构件一般都经过了精心验证。另外,如果每一个构件的正确性和可靠性都经过了验证,那么找到错误就非常快,系统验证时间也会大幅度减少。  

总之,使用基于 NoC 的平台,可以促进可重用在各个方面的使用。  

4.2 可预测性  

我们讨论的第二个重点是 可预测性,实际上它是与 可重用性 紧密相关的。  

通信性能  
由于具有规则的几何和网络结构,NoC 的通信性能潜在地变得越来越可预测了。这种“潜在性”并不意味着“必要性”。规则的通信硬件将非常有助于性能的分析和评估,但高层协议和网络服务的测量也需要认识到这种潜在优势。  

由于通信硬件是由许多资源块共享的,某个资源块的行为可能会拖延其余资源块的通信。资源块的某次失误可能会独占部分通信硬件,阻塞了其他资源块对其进行的访问。因此,通信网络不仅要能提供带宽,而且还要有 带宽分配策略。  

解决这个问题有多种方案,它们各有优劣。其中一种可能是:  
- 为通道分配 最大带宽;  
- 固定两个资源块间的 通信时延。  

通过对这些通道进行合理的带宽分配和管理,许多通信活动就可以和平共处,每一个都可以确切地知道可用的带宽和每一个数据包的延迟。这就使整个系统的性能分析不仅可行而且准确。  

如上所述,可靠的通信资源分配方案会带来 可预测的通信性能,这是建立 任意组合特性 的核心。如果某个任务或特征能够请求、获准并使用通信带宽,而不依赖于 NoC 中其他的任务或特征,那么对现存的任务和特征的重用、混合以及匹配的开销,相比较而言就会非常小。

电气性能  
由于具有 规则的版图结构,我们可以比较容易地了解网络的电气和物理特性。除了时钟线以外,开关-开关之间的互连线很有可能就是最长的片上走线,电源线和接地线的长度都是固定的。潜在的不确定性和不规则性被限制在资源槽中,不会产生全局性的影响。  

这种规则的、已知的几何结构可以使我们进行 精确的电气性能分析。另外,由于 NoC 平台对许多产品都是重用的,也就可以对网络通信的 动态功耗 建立精确的电气和功耗模型。为了对干扰和功耗进行较准确的评估,可以将 电气模型与高层业务模式模型 结合起来。

设计和验证时间  
如前所述,可重用可以减少验证中的不确定性和风险,使设计和验证时间可预测。另外,由于可重用减少了设计的随意性,因此增加了设计过程的可预测性。  

由于网络结构、基本服务和资源槽都是固定的,设计空间大大缩小,剩余任务也被合理划分并变得越来越独立,任务规模也越来越小。系统级体系结构的决策内容也只剩下:  
- 平台选择  
- 网络大小  
- 资源分配  

所有资源都可以单独地进行设计和实现。因此,主要任务放在了:  
- 系统整体功能的开发  
- 处理过程划分  
- 与资源之间的映射  

由于体系结构相对固定,性能和电气特性可预测,行为设计在很大程度上是与实现无关的。设计过程的这种不断增强的模块性使得整个设计过程越来越可预测。

5 不足之处  
显然,上面描绘出的种种优良特性并非是无偿的,实质上我们是以牺牲最优性为代价换来的。  

- 构件的可重用意味着在通用性和最优性之间,我们更多地强调的是通用性。  
- 采用固定的、相对不灵活的网络拓扑,意味着我们抛弃了可能更适合的其他拓扑结构。  
- 某个特定的协议栈及其服务,对所有的嵌入式系统来讲,不能都是理想的。  
- 同时,由于 NoC 操作系统附带了许多不必要的负担,缺少某些重要的服务项,本身也变得过于通用了。  

对很多应用来讲,能否在通用性和效率之间建立一种敏感的平衡,也只有时间能够告诉我们答案了。

一个可能缓解这个问题的方法是:  
- 提供分层的协议栈和分层的服务项。  
- 某项应用可能选择只实现某几层协议的 NoC 平台,因此避免了较高层次协议的负担。  

然而,这种灵活性是有代价的。严格的协议和服务层次可能不是最优解决方案。将若干层次集成起来而得到的实现方案可能是比较有效的,但这是以牺牲可以直接访问低层的可能性为代价的。

6 NoC 给设计过程带来的影响  
首先,我们简要讨论一下基于 NoC 平台的设计过程,主要步骤包括:  

配置平台  
根据可用的配置选项,本阶段可以扩展,也可以忽略。一个具有较宽适用范围、比较通用的平台将含有较多的配置选项。每个平台都可以选择大小,并且极有可能提供一系列可供选择的通信服务项。  

每个设计都需要用于收发数据的核心服务项。这种核心服务项可以是:  
- 面向数据包的;  
- 基于虚拟通道的。  

更复杂的通信意味着:  
- 容错级别可变;  
- 带宽和延迟控制可选。  

再高一些的服务需要能够支持:  
- 透明的任务迁移;  
- 虚拟的全局共享存储器。  

资源选择  
由于每一个资源槽可以接受任何一种资源,设计者需要对所有使用的资源进行选择。还存在其他限制因素,如同时要实现一些网络服务(如操作系统等)。资源选择的一部分工作是存储器体系结构和 I/O 体系结构的设计,它们需要按特定方式分布的专用资源。

特征的可重用  
资源选择与部件可重用是紧密相关的。

在我们使用的术语中,一个特征(feature)是指一个特定功能,并与该功能的实现结合在一起。例如,一个语言分析特征可以用任务图建模,并由一个或多个 DSP 处理器或专用硬件模块实现。  

- 一个特征可以占用数个资源槽;  
- 也可以与其他部件共享一个资源槽(如一个 DSP)。  

特征的资源共享需要精心设计,否则共享资源极有可能影响任意组合特性,并迫使我们在二者之间进行折衷。

评估和集成  
将所有特征和资源集成到最终系统中,性能评估和功能验证是最后、也是最难的部分。  

- 一个可被多个项目共享、有效且精心设计的仿真和原型环境,对成功进行系统集成非常有益。  
- 资源接口的简洁性和可预测性、协议栈各级层次上的通信网络和特征,将决定最终可获得的线性工作量程度。

7 结论  
开发一个包含数十、甚至数百个处理器资源的系统是一件令人生畏的工作。只有我们非常积极主动地重用特征和构件,并且它们在:

- 物理层;  
- 体系结构层;  
- 系统结构层;  
- 应用层  

都是可以任意组合时,这种工种才能得以完成(图1.3)。或者换句话说,从物理层到网络层、传输层再到应用层的协议栈,都必须要进行很好地定义,以便任意的构件和特征都可以通过协议栈连接到 NoC 构架上,而不会影响系统的其余部分。本章重点讨论了 任意组合 和 线性工作量 两个特性。从模块到特征和服务的可重用使得设计者可以批量地将现存的构件结合到新配置或新产品中去。可预测性 使得重用更加有效,这是因为不需要对新构件或部件再进行设计和验证,大大降低了设计工作量。

如果基于 NoC 的平台在使产品能够得到充分有效实现的同时,又具有 任意组合 和 线性工作量 特性,那么 SoC 的设计将产生革命性的进步,并最终导致“基于特征组合的设计”。由于 NoC 模式为我们在从物理层到应用层的各个层次上对通信基础结构以及协议栈进行定义和标准化都提供了可能性,因此极其适合于使 SoC 具有面向数代工艺的可扩展性和可适用性。

如果上述结构和协议都得到了严格定义,并且 任意组合特性 和 线性工作量特性 都得到满足,那么绝大部分资源、通信和网络服务以及应用特征都将得到有效的重用。TCP/IP 协议栈、Internet 使计算机的应用产生了革命性的变化。与此类似,由于 NoC 平台具有内在的可扩展性,它将使设计生产力和工艺生产力同步发展,并最终填补二者设计之间的差距。  

参考文献  

[1] Semiconductor Industry Association. International technology roadmap for semiconductors. Technical report, World Semiconductor Council, 1999. Edition 1999.  

[2] James A. Rowson and Alberto Sangiovanni-Vincentelli. Interface-based design. In Proc. of the 34th Design Automation Conference, 1997.  

[3] Kurt Keutzer, Sharad Malik, Richard Newton, Jan Rabaey, and Alberto Sangiovanni-Vincentelli. System-level design: Orthogonalization of concerns and platform-based design. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 19(12):1523–1543, December 2000.  

[4] Marco Sgroi, M. Sheets, A. Mihal, K. Keutzer, S. Malik, J. Rabaey, and A. Sangiovanni-Vincentelli. Addressing the system-on-a-chip interconnect woes through communication-based design. In Proceedings of the 38th Design Automation Conference, June 2001.  

[5] Dennis Sylvester and Kurt Keutzer. Getting to the bottom of deep submicron. In Proceedings of the 1998 IEEE/ACM International Conference on Computer-Aided Design, pages 203–211, 1998.  

[6] Dennis Sylvester and Kurt Keutzer. Getting to the bottom of deep submicron II: a global wiring paradigm. In Proceedings of the 1999 International Symposium on Physical Design, pages 193–200, 1999.  

[7] Thomas Meincke, Ahmed Hemani, S. Kumar, P. Ellervee, J. Oberg, T. Olsson, P. Nilsson, D. Lindqvist, and H. Tenhunen. Globally asynchronous locally synchronous architecture for large high-performance ASICs. In Proc. of IEEE Int. Symp. on Circuits and Systems (ISCAS), volume II, pages 512–515, Orlando, USA, May 1999.  

[8] Pierre Guerrier and Alain Greiner. A generic architecture for on-chip packet-switched interconnections. In Proceedings of Design, Automation and Test in Europe, pages 250–256, 2000.  

[9] Shashi Kumar, Axel Jantsch, Juha-Pekka Soininen, Martti Forsell, Mikael Millberg, Johnny Oberg, Kari Tiensyrjä, and Ahmed Hemani. A network on chip architecture and design methodology. In Proceedings of IEEE Computer Society Annual Symposium on VLSI, April 2002.  

[10] William J. Dally and Brian Towles. Route packets, not wires: On-chip interconnection networks. In Proceedings of the 38th Design Automation Conference, June 2001.  

[11] Edwin Rijpkema, Kees Goossens, and Paul Wielage. A router architecture for networks on silicon. In Proceedings of Progress 2001, 2nd Workshop on Embedded Systems, October 2001.  

[12] Drew Wingard. MicroNetwork-based integration of SOCs. In Proceedings of the 38th Design Automation Conference, June 2001.  

[13] K. Goossens, J. van Meerbergen, A. Peeters, and P. Wielage. Networks on silicon: Combining best-effort and guaranteed services. In Proceedings of the Design Automation and Test Conference, March 2002.  

[14] Michael Bedford Taylor, Jason Kim, Jason Miller, David Wentzlaff, Fae Ghodrat, Ben Greenwald, Paul Johnson, Henry Hoffman, Jae-Wook Lee, Walter Lee, Albert Ma, Arvind Saraf, Mark Seneski, Nathan Shnidman, Matt Frank, Volker Strumpen, Saman Amarasinghe, and Anant Agarwal. The Raw microprocessor: A computational fabric for software circuits and general-purpose programs. IEEE Micro, 22(2):25–35, March/April 2002.  

[15] Michael Keating and Pierre Bricaud. Reuse Methodology Manual for System-on-Chip Designs. Kluwer Academic Publishers, 1998.  

[16] Terry Thomas. Technology for IP reuse and portability. IEEE Design & Test of Computers, 16(4):6–15, October 1999.  

[17] Henry Chang, Larry Cooke, Merrill Hunt, Grant Martin, Andrew McNelly, and Lee Todd. Surviving the SOC Revolution – A Guide to Platform-Based Design. Kluwer Academic Publishers, 1999.  


网站公告

今日签到

点亮在社区的每一天
去签到