Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3433283
  • 博文数量: 754
  • 博客积分: 10132
  • 博客等级: 上将
  • 技术积分: 7780
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-14 23:36
文章分类

全部博文(754)

文章存档

2012年(3)

2011年(39)

2010年(66)

2009年(167)

2008年(479)

我的朋友

分类: LINUX

2008-09-26 20:07:14

田泽1,张怡浩2 ,于敦山2,盛世敏2,仇玉林 1
(1.中科院微电子中心,北京 100029;2.北京大学微电子所,北京 100871)
摘要:随着以IP核复用为基础的SoC设计技术的发展,工业界及研究组织积极从事相关IP互联标准方案的制定工作,从目前的研究和发展看,影响力较大的有IBM公司的CoreConnect、ARM公司的AMBA 和Silicore Corp公司的Wishbone。基于现有IP互联接口标准技术的发展现状,本文对这三种SoC总线技术进行了详细介绍。

关键词:SoC;片上总线;IP核;设计复用

中图分类号:TN402 文献标识码:A 文章编号:1003-353X(2003)11-0011-05


1引言

传统的IC设计方法已无法适应新的SoC设计要求,需要根本的变革,即从以功能设计为基础的传统IC设计流程转变到以功能整合为基础的SoC设计全新流程。SoC设计以IP的设计复用和功能组装、整合来完成。SoC设计的重点为系统功能的分析与划分、软硬件功能的划分、IP的选择与使用、多层次验证环境和外界设计咨询服务等。

随着以IP核复用为基础的SoC设计技术的发展,如何有效地对众多IP供应商提供IP核,在实际设计时进行有效互联的问题日益受到重视。为了使IP核集成更快速、更方便,缩短进入市场的时间,迫切需要一种标准的互联方案。

在这一背景下产生的片上总线OCB(on-chip bus)技术,基于IP核互联标准技术的发展,目前已形成较有影响力的三种总线标准为:IBM公司的CoreConnect,ARM公司的AMBA(Advanced Microcontroller Bus Architecture)和Silicore Corp公司的Wishbone。本文对这三种总线标准进行了详细介绍。

2 CoreConnect总线

CoreConnect拥有完备的一整套技术文档,在技术上可行性较强。IBM 公司的CoreConnect连接总线还提供了三种基本类型连接功能块,即处理器内部总线PLB(Processor Local Bus)、片上外围总线OPB(On-ChipPeripheral Bus)和设备控制总线DCR(Device Control Register)。CoreConnect总线的逻辑结构如图1所示,它清楚地定义了所有的系统构成部件以及它们是如何连接的,下面分别介绍PLB、DCR和OPB的主要技术特征。

2.1 PLB

PLB标准是为总线传输的主要发出者和接受者之间提供高带宽、低延迟的连接。其主要特征为:

● 高性能处理器内部总线;

● 交叠的读和写功能(最快每周期两次传输);

● 支持分段传输;

● 地址流水(减少延迟);

● 读和写分开;

● 32~64位数据总线;

● 32位地址空间;

● 支持16~64字节突发传输模式;

● 支持字节使能(非对准和3字节传输);

● 支持仲裁、REQ、GNT和LOCK;

● 延迟和隐藏仲裁(减少延迟);

● 4级仲裁优先权;

● 特殊DMA(Direct Memory Access)模式,如快速的从内存到内存;

● 地址和数据状态扼制(Address and data phase throttling);

● 延迟计数器(保证保持延迟到预想的程度)。

2.2 OPB

OPB标准为连接具有不同的总线宽度及时序要求的外设和内存提供了一条途径,并尽量减小对PLB性能的影响。其主要特性如下:

● 片上外围总线;

● 多个主设备;

● 32位地址空间;

● 读和写数据总线分开;

● 8~32位数据总线;

● 动态总线宽度;

● 支持重试模式(如果主设备要求的从设备忙,主设备隔一段时间再次请求);

● 支持突发(burst)传输模式;

● 支持DMA;

● 设备可以是内存映射(支持DMA);

● 检测总线超时功能(在仲裁器中);

● 支持仲裁、REQ、GNT和LOCK。

2.3 DCR

设备控制寄存器总线DCR是用来规范CPU通用寄存器设备,控制寄存器之间传输数据。DCR总线在内存地址映射中取消了配置寄存器,减少取操作,增加处理器内部总线的带宽。其主要特征如下:

● 10位地址总线;

● 32位数据总线;

● 同步和异步的传输;

● 分布式结构。

CoreConnect是一套精心设计和构造完整、通用的解决方案,可以应用在类似于工作站这样的高性能系统的连接,对于简单的嵌入式应用来说可能有点太复杂,提供的许多特性无法用到,但可以适应于未来更庞大、更复杂的系统连接。

3 AMBA总线

先进的微控制器总线体系结构AMBA规范定义了三种总线:

(1)AHB(Advanced High-performance Bus):用于连接高性能系统模块。它支持突发数据传输方式及单个数据传输方式,所有时序参考同一个时钟沿;

(2)ASB(Advanced System Bus):用于连接高性能系统模块,它支持突发数据传输模式;

(3)APB(Advance Peripheral Bus):是一个简单接口支持低性能的外围接口。

一个典型的基于AMBA的微控制器同时集成 AHB(或ASB)和APB接口,如图2所示。ASB总线是旧版的系统的总线,而新版的AHB总线增强了对性能、综合及时序验证的支持。APB总线通常用作的局部的第二总线,作为AHB或ASB上的单个从属模块。

根据AMBA的规范,连接AHB/ASP和APB的APB桥的唯一功能是提供更简单的接口。任何由低性能外围设备产生的延迟会由连接高性能(AHB/ASP)总线的桥反映出来。桥本身仿佛是一个简单APB总线的主设备,它访问与之相连的从设备,并且通过高性能总线上控制信号的子集控制它们。下面给出AHB、ASP和APB的主要特征。

3.1 AHB

AHB是先进的系统总线。它主要的目的就是连接共性能、高吞吐率的设备,例如CPU、DMA和DSP。它的主要特性:

● 高性能新一代总线;

● 多控制器;

● 分段传输;

● 单周期总线控制权移交;

● 没有三态实现方式;

● 32~128位总线宽;

● 包含一种访问保护机制,用来区别特权访问和无特权访问模式,或指令和数据提取等;

● 突发传输模式最大为16节;

● 访问空间限制在32位;

● 提供为较慢设备使用而扼制数据流的机制;

● 支持仲裁、REQ、GNT和LOCK;

● 支持字节、半字和字传输。

AHB总线和ASB总线有下列不同的特点:

● AHB总线支持分开处理。有很长响应延迟的从机在准备传输的数据时让出总线从事其它传送操作;

● 使用单一时钟沿控制所有操作,有利于综合和设计验证(通过使用静态时序分析和其他相似工具);

● 使用中心多路器总线方案而不是三态驱动的双向总线;

● 支持更宽的64位或128位数据总线配置。

3.2 ASP

ASP是通用系统总线,是一种微处理器和系统外设的高性能互连,主要特征如下:

● 多控制器;

● 突发数据传输方式;

● 流水线传送;

● 32-128位总线宽度;

● 包含一种访问保护机制,用来区别特权访问和无特权访问模式,或指令和数据提取等;

● 双向数据总线;

● 提供为较慢设备使用而扼制数据流的机制;

● 仲裁支持REQ、GNT和LOCK。

3.3 APB

APB是外围互联总线,重点是最小功耗和易于使用,主要特征如下:

● 低性能、低功率外围总线;

● 单控制器;

● 非常简单,只有4个控制信号(加上时钟和复位);

● 32位地址空间;

● 多达32位数据总线;

● 分开读和写数据总线。

AMBA是一种基本的SoC总线,它分成三种总线。根据需要,系统设计者必须选择对接三种总线中的哪一种。一个高性能设备可能选择AHB或 ASP总线,这将给IP核集成者带来困难,因为两种总线都试图访问同一类型的设备。还没有明确的办法将设备与AHB和ASP总线集成。APB桥似乎不但不会提供任何好处,而且会限制连接在上面的高性能总线。所有三种总线都包含一个地址状态和一个或多个数据状态。

4 Wishbone总线

Wishbone总线是Silicore公司推出的片上总线协议。它的结构极其简单、灵活,又完全公开、完全免费,获得众多支持。图3给出了Wishbone 总线的逻辑结构:

Wishbone总线的主要特征概括如下:

● 所有应用使用一个总线体系结构;

● 简单、紧凑的体系结构;

● 支持多控制器;

● 64位地址空间;

● 8~64位数据总线(可扩展);

● 单周期读和写;

● RMW(READ-MODIFY-WRITE)周期;

● 事件周期;

● 支持重试;

● 支持内存映射,FIFO(FISRT IN FIRST OUT)和十字互连接口;

● 提供为较慢设备使用而扼制数据流的机制;

● 使用者定义标志为,确定数据传输类型;

● 由终端用户定义仲裁方式。

Wishbone总线采用握手协议。当MASTER准备好传输数据时置STB_O为高,STB_O将保持高状态直到SLAVE将ACK_I、ERR_I或RTY_I之一置为高,数据传输周期结束。这种机制下,MASTER和SLAVE均可控制数据传输速率。其握手时序如图4。

Wishbone总线有四种将MASTER与SLAVE连接在一起方式,分别为点对点、数据流、共享总线和十字互连。其中点对点方式可以最简单地将一个MASTER与一个SLAVE相连;数据流方式可以实现数据传输的流水;共享总线方式将多个MAS TER和SLAVE相连,不过任何时刻只能有一个MASTER占据总线;十字互连则可实现多个MAS TER和多个SLAVE之间同时传输数据。图5给出了采用点对点互联方式的Wishbone总线主从接口。

Wishbone有三种数据传输方式,分别为单读写、块读写和RMW(READ-MODIFY-WRITE)。其中单读写为最简单。图6给出了单读周期的时序。

为了更直观地了解Wishbone总线接口连接如何简单、灵活,图7给出了8位SLAVE的输出端口图。


Wishbone只定义了一种高速总线,在既需要高速总线又需要低速总线的系统中,提供了两Wishbone接口,比起设计两个不同的接口要简单得多。

5 总结

在以上介绍的三种总线中,CoreConnect虽免费不过需要IBM公司许可,ARM没有明确的正式说法,可能也会免费,而Wishbone是绝对免费的。三种总线都是同步的总线,使用时钟上升沿驱动和采样信号。总线的基本操作几乎没有区别,最大的区别在于提供的特性和规范的完整性。

CoreConnect和AMBA都给设计者提供了一种系统总线的选择。系统集成设计者当试图连接为不同连接设计的设备时会遇到问题,在建立全面完整的系统时需要桥。而在Wishbone中,所有的IP核都连接在同一标准接口上。系统设计者可以选择在一个微处理器核上实现两个接口,一个给高速低延迟设备,一个给低速低性能设备。

综上所述,我们认为采取Wishbone作为IP核的基本互联的接口标准更便于设计,它的信号十分直接,如果需要可以很容易被其它接口所采用。 Wishbone总线完全公开、完全免费,易于推广,当然一个规范能否成为行业标准,除了本身的技术特性外,还要看是否被业界接受。
Wishbone已被OPENCORE联盟采用,并且有可能成为IEEE标准。因此,Wishbone总线从技术上讲简单、灵活、功能强大及易于移植,从经济角度考虑又全部免费,易于全面推广。我们认为它极有可能成为未来SoC片上总线的通用标准,其前景看好。

本文摘自《半导体技术》
阅读(1985) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

ldjunnbor2015-08-07 14:34:20

写得不错,感谢!