Felix

技术源于积累,成功始于执着! 个人邮箱:justlxy@mail.dhu.edu.cn QQ:1576109464

Soc总线比较篇(翻译Rudolf Usselmann的文章)

2
阅读(8757)

连载目录篇:http://blog.chinaaet.com/justlxy/p/5100051808 


1、 CroeConnect总线介绍

CoreConnect总线相对比较复杂,IBM为用户提供了大量的参考文档和技术手册。为了方便用户快速的建立自己的CoreConnect应用,IBM提供了PLB、OPB、DCR、仲裁器(Arbiter)和位扩展功能(高于64位时使用)。

image.png

图27 CoreConnect总线结构图

主要特性

PLB部分:

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

● 高性能处理器内部总线;
● 交叠的读和写功能(最快每周期两次传输);
● 支持分段传输;
● 地址流水(减少延迟);
● 读和写分开;
● 32~64位数据总线;
● 32位地址空间;
● 支持16~64字节突发传输模式;
● 支持字节使能(非对准和3 字节传输);
● 支持仲裁、REQ、GNT和LOCK;
● 延迟和隐藏仲裁(减少延迟);
● 4级仲裁优先权;
● 特殊DMA(Direct Memory Access)模式,如快速的从内存到内存;
● 地址和数据状态扼制(Address and data phase throttling);
● 延迟计数器(保证保持延迟到预想的程度)。

OPB

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

● 片上外围总线;
● 多个主设备;
● 32位地址空间;
● 读和写数据总线分开;
● 8~32位数据总线;
● 动态总线宽度;
● 支持重试模式(如果主设备要求的从设备忙,主设备隔一段时间再次请求);
● 支持突发(burst)传输模式;
● 支持D M A;
● 设备可以是内存映射(支持D M A);
● 检测总线超时功能(在仲裁器中);
● 支持仲裁、R E Q、G N T 和L O C K。

DCR

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

● 10位地址总线;
● 32位数据总线;
● 同步和异步的传输;
● 分布式结构。

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

2、 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 上的单个从属模块。

image.png

图28 AMBA总线结构图

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

 AHB

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

● 高性能新一代总线;
● 多控制器;
● 分段传输;
● 单周期总线控制权移交;
● 没有三态实现方式;
● 32~128位总线宽;
● 包含一种访问保护机制,用来区别特权访问和无特权访问模式,或指令和数据提取等;
● 突发传输模式最大为16节;
● 访问空间限制在32 位;
● 提供为较慢设备使用而扼制数据流的机制;
● 支持仲裁、R E Q、G N T 和L O C K;
● 支持字节、半字和字传输。
         

AHB 总线和ASB 总线有下列不同的特点:
● AHB 总线支持分开处理。有很长响应延迟的从机在准备传输的数据时让出总线从事其它传送操作;
● 使用单一时钟沿控制所有操作,有利于综合和设计验证(通过使用静态时序分析和其他相似工具);
● 使用中心多路器总线方案而不是三态驱动的双向总线;
● 支持更宽的64位或128位数据总线配置。

ASP

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

● 多控制器;
● 突发数据传输方式;
● 流水线传送;
● 32-128位总线宽度;
● 包含一种访问保护机制,用来区别特权访问和无特权访问模式,或指令和数据提取等;
● 双向数据总线;
● 提供为较慢设备使用而扼制数据流的机制;
● 仲裁支持REQ 、GNT 和LOCK。

APB

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

● 低性能、低功率外围总线;
● 单控制器;
● 非常简单,只有4 个控制信号(加上时钟和复位);
● 32位地址空间;
● 多达32位数据总线;
● 分开读和写数据总线。

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

3、 Wishbone总线介绍

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

image.png

图29 Wishbone总线结构图

● 所有应用使用一个总线体系结构;
● 简单、紧凑的体系结构;
● 支持多控制器;
● 64位地址空间;
● 8~64 位数据总线(可扩展);
● 单周期读和写;
● RMW(R E A D - M O D I F Y - W R I T E )周期;
● 事件周期;
● 支持重试;
● 支持内存映射,FIFO(FISRT IN FIRST O U T )和十字互连接口;
● 提供为较慢设备使用而扼制数据流的机制;
● 使用者定义标志为,确定数据传输类型;
● 由终端用户定义仲裁方式。

4总结

在以上介绍的三种总线中,CoreConnect虽免费不过需要IBM 公司许可,ARM 没有明确的正式说法,可能也会免费,而Wishbone 是绝对免费的。三种总线都是同步的总线,使用时钟上升沿驱图7 8-bit SLAVE输出端口动和采样信号。总线的基本操作几乎没有区别,最大的区别在于提供的特性和规范的完整性。CoreConnect和AMBA都给设计者提供了一种系统总线的选择。系统集成设计者当试图连接为不同连接设计的设备时会遇到问题,在建立全面完整的系统时需要桥。而在Wishbone 中,所有的IP核都连接在同一标准接口上。系统设计者可以选择在一个微处理器核上实现两个接口,一个给高速低延迟设备,一个给低速低性能设备。综上所述,我们认为采取Wishbone作为IP核的基本互联的接口标准更便于设计,它的信号十分直接,如果需要可以很容易被其它接口所采用。

Wishbone 总线完全公开、完全免费,易于推广,当然一个规范能否成为行业标准,除了本身的技术特性外,还要看是否被业界接受。Wishbone已被OPENCORE 联盟采用,并且有可能成为IEEE标准。因此,Wishbone 总线从技术上讲简单、灵活、功能强大及易于移植,从经济角度考虑又全部免费,易于全面推广。我们认为它极有可能成为未来SoC片上总线的通用标准,其前景看好。

Rudolf Usselmann的英文原文:soc_bus_comparison.pdf

Wishbone总线B.4版:wbspec_b4.pdf