首页 新闻资讯 技术资料 论坛 网站地图
CPLD/FPGA 工业控制 安防产品 嵌入式开发新闻 IC设计 开发工具 软件开发
电子元器件搜索:
IC库存(8958万) PDF资料(329万) IC价格 IC求购 资讯 技术资料
维库电子市场网是知名的电子元器件交易网站, 为电子生产企业提供IC库存和技术资料查询服务。
位置: 首页 > 详细信息
  采用AMBA2.0总线结构提高网络打印机SoC设计的性能
出处:嵌入式技术网 时间: 2007-11-15

互联网可以迅速地更新和分配文档,在不久的将来,快速、便宜、高质量的网络打印机将具备“分发后在本地打印”的印刷模式,这种具备网络功能的打印机芯片对数据传输速度要求很高,采用增强型微控制器总线架构AMBA2.0可以提高SoC内部数据传输的性能,本文对此总线协议做简要的介绍。

打印机和数字复印机对CPU、I/O和存储带宽方面的要求以及对低成本方案的需求,都需要系统级芯片设计来解决。今天,CPU和USB、以太网、1394和PCI等通用型IP可以从多种来源得到。打印机生产商力图在打印质量和速度方面使自己的产品独树一帜。它们采用专利IP加速图像处理(页描述至光栅的转换),增强图形质量(提高分辨率、半色调技术和抖动)。将通用IP和专利IP结合起来的SoC设计是最节省成本的解决方案。没有必要再从草图开始设计这些标准模块。

面市时间以及IP验证和集成是确定SoC方案的关键问题。现有IP的可复用性以及IP互连架构的灵活性和可扩展性同等重要。

将几个不同来源的IP集成在一起,可能要求大量的设计工作,这将会降低采用第三方IP的总体价值,对于复杂性相对较低的IP而言,则更是如此。除了这些工作之外,必要的验证工作可能需要花费更多精力,并有可能发现必须与IP销售商协力解决的设计问题和验证漏洞。

考虑到这些重要问题,选择业内普遍采用的互连总线是比较明智的。因为许多不同的用户/销售商已经对这些产品进行了多次而且独立的验证,而且验证范围较广,因而IP质量和可复用性都较高。

LSI Logic公司采用增强型微控制器总线架构AMBA2.0作为其IP CoreWare库的互连总线。LSI Logic与ARM公司在AMBA 2.0规范方面一直保持密切的合作,以保证生产能力和可测试性。AMBA总线以模块化的系统设计为重点,从而提高了处理器的独立性。LSI采用AMBA的高级高性能总线(AHB)/高级外设总线(APB)基于带单边参考时钟的多元总线架构,而以前的AMBA总线采用三态总线架构。

AMBA 2.0总线

AMBA总线宽度有32位、64位和128位多种定义。下文的讨论和图表均以采用32位AHB和APB总线的AMBA芯片架构为例。AMBA的AHB连接高性能和高时钟频率的系统模块,同时具有多主机、脉冲传输和分段处理的功能。

AHB的作用是允许在主从器件之间传输数据。AHB主器件可以向从器件传输数据,或向其提供外部地址空间中的地址以接收从器件的数据。AHB从器件在选中后,提供或接收主器件的数据。

从器件可以延迟数据传输过程或返回错误代码。AHB主器件的实例为ARM或MIPS处理器内核等处理器,或其它有DMA(直接存储访问)功能的外设,如以太网MAC或USB主机/器件控制器。

表1:主要的AHB信号有。

===================================

HCLK 总线参考时钟

HADDR 地址(由AHB主器件发出)

HWRITE 传输方向:读/写(由AHB主器件发出)

HREADY 传输完成响应(由AHB从器件发出)

HWDATA 写入数据总线(从AHB主器件至AHB从器件)

HRDATA 读取数据总线(从AHB从器件至AHB主器件)

===================================

基本的AHB传输出现在由从器件读取或向从器件写入单个数据传输的时候。数据大小可能是一个字节、一个“半字”(即2字节)或一个字(4字节)。

除以上信号外,AHB控制信号和状态信号如表2所示。

表2:AHB控制信号和状态信号。

========================

HRESP 传输状态(由AHB从器件发出)

HBURST 脉冲模式(由AHB主器件发出)

HTRANS 传输状态(由AHB主器件发出)

HSIZE 脉冲长度(由AHB主器件发出)

HPROT 保护类型(由AHB主器件发出)

=======================

AHB外设可能立即发送/接收数据,或通过发出HREADY信号插入等待状态。从器件也通过HRESP信号返回传输状态,这些状态可能如表3所示。

表3:AHB外设可能立即发送/接收数据,或通过发出HREADY信号插入等待状态。

=======================

OKAY(成功): 传输成功-成功完成信号传输的缺省响应。

ERROR(错误):不成功的传输-表示出现了异常中断,例如访问一个不存在的内存地址。

RETRY(重试):从器件无法立即实现操作,主器件应在稍后重试。SPLIT(等待):
从器件将要求列队等待-从器件将在可以提供或接收数据时发出通知,可用于中断多个传输(脉冲)。

=======================

重试和等待的主要区别在于,重试表明从器件仍未就绪;主器件可在任意时刻重发命令。而等待包含的协议较为复杂,它就绪后将通过这一协议通知判优器。等待处理对从器件逻辑的要求较为复杂,并非必备的从器件功能。简单的从器件不具备这一功能,而仅返回成功或错误的响应。

为了防止所有AHB主器件都收到等待响应而出现死锁现象,总线所有权指定给一个缺省的AHB主器件。从器件可以向多个主器件发送等待响应-即两个等待服务的主器件的队列。

在基本AHB传输过程中,地址和控制线路在时钟的上升沿采样。由于从器件解码逻辑是组合的,在地址周期末,从器件探测其是否被选中并探测内部地址(基本AHB写入传输)。

数据采样

采样地址后,从器件必须确定是否可以在下一周期提供或接收数据,并发出相应的HREADY信号;否则,应插入等待状态(将HREADY信号设为低电平)。

虽然可以插入一个以上等待状态,但应注意这将妨碍总线的运行。可以在从器件中增加写入缓冲器以减少写入操作中的等待状态,或者返回重试信号以减轻总线的负担。

对于AHB脉冲传输,脉冲类型编码在HBURST信号中,信号作为AHB主器件的输出,与地址同步。脉冲模式有以下几种:1. 单个传输(字节/半字/字);2. 未规定长度的增量模式(INCR)4字、8字或16字;3. 4字、8字或16字的打包模式。

AHB HTRANS信号向AHB从器件和判优器提供目前的传输状态,有以下几种值:1. 空闲:AHB主器件已经指定了总线,但无任何传输作业。因此,AHB从器件不进行地址总线的解码。2. 忙碌:AHB主器件正处于某个脉冲中,但无法立即进行下一传输。因此主器件不进行地址总线的解码。3. 非序列:表示脉冲的第一项传输或单项传输。因此,被选中的AHB从器件进行地址总线的解码。4. 序列:表示前一传输的顺序地址。选中的AHB从器件可以解码地址总线,也可以包含利用序列地址的逻辑,而不必对地址总线解码。

AHB脉冲长度编码在HSIZE信号中,范围在8位(1字节)到1024位(32字)之间。它与脉冲的第一地址同时发出,并在脉冲结束之前保持稳定。HSIZE信号可以由判优器采样,以确定将总线指派给主器件的时间长短。从器件也可以采样HSIZE信号,以确定脉冲边缘和访问类型(字节/半字或字)。

AHB HPROT信号将对目前存储操作的保护类型编码,包括:1. Opcode取用或数据访问;2. 用户访问或权限访问;3. 缓冲或无缓冲;4. 有缓存或无缓存。

AHB主器件判优采用表4所示信号。

表4:AHB主器件判优信号。

==================================

HREQ 总线要求(由AHB主器件发出)HGNT 总线指派(由AHB判优器发出)

HLOCK 总线锁定(由AHB主器件发出)

HMASTER 指定目前工作的主器件(由AHB判优器发出)

HMASTLOCK 主器件执行锁定传输(由AHB判优器发出)

=================================

AHB从器件解码使用HSEL信号,HSEL选中从器件(由AHB从解码器发出)。

所有的外设都是存储器映射的。根据地址最高有效位解码选中从器件后,地址的其它位由该从器件解码。在读取操作(数据从外设读取)时,从解码器的输出可以起动外设,并选择合适的从多工器输入。在写入操作中,HSEL信号用于起动从器件。只有起动的从器件才可接收写入的数据。如果地址在未映射的存储空间内,则缺省的从器件可以提供错误响应。HSPLIT SPLIT完成要求(由AHB从器件发出)。

AMBA的APB用于连接速度较慢的系统模式和带宽较低的外设,将功耗降至最低,并减小接口的复杂性。所有的总线信号都与时钟有关,可以使用时钟频率较低的总线(低于AHB)。

AHB主器件不直接与APB外设相连,而是通过APB桥进行通信。APB桥是AHB子系统的从器件,同时又是APB子系统中唯一的主器件。APB桥在主存储器内分配有存储空间;APB外设在其中有映射。所有向APB外设的存储传输都在AHB上传送至桥。桥选择并传送至正确的外设。

主要的APB信号如表5所示。

表5:主要的APB信号。

=================================

PCLK 外部时钟,可以是HCLK的乘积,由APB桥控制

PADDR 外设地址

PWRITE 外设传输方向 (读/写)

PSELx 外设选中,与HSEL相似

PWDATA 写入数据总线(写入外设)

PRDATA 读取数据总线(从外设中读取)

PENABLE 外设数据起动

=================================

所有的APB传输操作均需要两个PCLK周期。在第一个周期中,APB桥指定地址,在第二个周期中执行PENABLE。在写入操作时,APB外设接收数据;在读取操作时,APB外设输出数据。APB外设不能插入等待状态(图1和图2)。APB不能采用管线传输操作。地址在第二时钟周期(数据阶段)内保持为当前地址。

APB PCLK的频率可能不同(低)于HCLK。在这种情况下,由APB桥确定需要多少个等待状态。将外设与APB总线相连,可以降低AHB从解码器的复杂性。

随着设计复杂性不断提高,验证工作也越来越复杂。对于提高设计生产力而言,验证环境(如功能总线模型、测试工具、高效的高级验证语言等)的可复用性比最初的IP的复用性更加重要。目标仍是一样的-在没有必要重复进行的情况下,尽量避免为通用IP(PCI、USB、以太网等标准接口)设计验证基础结构。

使用AMBA总线架构的最大优点在于,可以拥有基于高级验证语言和高度自动化的测试工具的先进验证环境。

验证语言

Verisity公司的Specman验证语言提高了验证速度,并具有多种用于通用接口的功能总线模型,还有AMBA总线的协议校验器。Specman的抽象度高于HDL,并包括输入(激励)产生、自动校验以及验证范围报告。Specman集成了Verilog和VHDL等基于事件和周期的通用仿真器,并可访问用C/C++、Verilog或VHDL编写的参考(功能性)模型,以及用Verisity的面向硬件/电路的电子代码语言编写的总线功能性模型(BFM)。

验证环境分成外设验证环境(PVE)和系统验证环境(SVE)。这可以实现模块级验证,并在将模块或模组集成在完整的芯片之前进行调试。Specman测试工具可以运行指令测试以调试功能性,并可运行随机测试,以发现较生僻的问题(图3)。

总之,充分利用现有的通用接口和功能IP,对于复杂SoC设计是非常重要的。不仅要考虑到IP本身,还应考虑到所需的验证环境。由于IP市场的用户范围和复用率仍相对较小,如何选择在市场中占有较大份额的销售商和产品也十分重要,这样可以保证持续和充足的开发和质保资金。最后,对IP进行大量的实际应用也可以进一步降低计划的风险性,提高设计的成功率。LSI Logic公司在集成和复用本公司和第三方IP方面有着长期的经验。在采用了AMBA 2.0总线之后,其设计将更好地满足客户对产品的面市时间和产品设计一次成功的要求。

作者:Bernd Stamme

打印系统产品应用经理

LSI Logic公司


关闭】 【打印
相关专题  
消费电子
计算机外设
传感控制
开发工具
嵌入式硬件
通信产品
医疗电子
嵌入式系统
存储器
AD/DA
综合电子技术
电源系列
SOPC
IC设计
嵌入式开发新闻
应用产品
软件开发
接口电路
汽车电子
CPLD/FPGA
安防产品
工业控制
测试测量
数控系统
嵌入式软件

© 2007 百斯嵌入式开发网 网站地图