当前位置:首页 > 技术学院 > 技术前线
[导读]OPB_AHB桥接器的功能特性和如何实现应用设计

1.引言

SoC(System on a Chip)自20世纪90年代后期出现以来,广受学术界和工业界的关注, SoC通常将微处理器、 IP(Intelligence Property)核和存储器(或片外存储控制接口)集成在单一芯片上,具有小型、轻量、低功耗、多功能、高可靠和低成本化等特征,在计算机、通信、消费类电子、工控、交通运输等领域应用十分广泛。

随着基于IP复用技术的 SoC设计的不断发展,片上总线 OCB(on-chip Bus)技术成为解决 SoC发展的关键技术。目前主要有三大主流片上总线标准: IBM公司的 CoreConnect,ARM公司的AMBA (Advanced Microcontroller Bus Architecture)以及Silicore Corp公司的 Wishbone。本文针对两大主流 OCB总线标准 AMBA和CoreConnect,完成AMBA高性能系统总线AHB和CoreConnect的外围总线 OPB之间的桥接转换,设计出 OPB_AHB桥接器。

2.OPB_AHB桥接器功能特性

AHB是ARM公司微控制器总线体系结构 AMBA规范定义的三种总线之一,它是先进的系统总线,用于连接高性能系统模块,支持突发数据传输方式及单个数据传输方式, AHB总线可挂接多个功能模块(主 /从),并为它们提供高带宽、低延迟的总线连接。

OPB总线是IBM公司推出的一种芯片级的外围设备总线, OPB总线主要连接外围低速设备,降低外围设备对系统性能的影响,支持突发( Burst)操作 。

Xilinx公司的软核处理器 MicroBlaze能够很好的支持 OPB总线协议, MicroBlaze环境的 OPB总线都是 32位的地址位宽和数据位宽,支持 8bit、16bit、32bit的数据传输 。本文设计的OPB_AHB桥接器主要是完成以下四个功能。

3.OPB_AHB桥接器结构

图1是一个简单的基于 MicroBlaze的OPB_AHB 桥接器拓扑结构图。 MicroBlaze是一个软核处理器,整个系统在 Xilinx的EDK环境下实现, AHB_OPB桥接器可以作为 OPB设备和 AHB设备之间数据、地址和控制命令的传输通道。


连接总线系统的桥接器

当OPB主设备要向 AHB从设备读写数据时, OPB_AHB桥接器可以作为 OPB总线这一侧的从设备( Slave),同时在 AHB总线这一侧充当主设备 (Master)的角色,此时 OPB_AHB桥接器主要工作是由图 2中OPB2AHB bridge完成。当 AHB主设备要向 OPB从设备读写数据时, OPB_AHB桥接器可以作为AHB总线这一侧的从设备( Slave),同时在 OPB总线这一侧充当主设备 (Master)的角色,此时 OPB_AHB桥接器主要工作是由图 2中AHB2OPB bridge完成[4]。

4.OPB_AHB桥接器的实现

实现两种总线的互联,关键是完成控制信号之间的转换以及数据和地址的传输,本设计采用的方法包括。

(1)流水线方式, (2)将所有输入的控制信号和数据地址总线都寄存一拍。

(3)控制信号都采用同 (4)步设计方法, (5)在OPB_Clk的上升沿触发。

(6)数据的读写操作为同 (7)步读写。

4.1OPB2AHB_Brg的实现

(1) 所有控制信号采用同步设计思想,在 SOPB_Clk的上升沿触发。 SOPB_Rst高电平有效,为同步复位,当其有效时,所有信号输出 0状态。

(2) 当桥接器检测到 SOPB_Sel信号有效时,即表明桥接器被选中,成为 OPB总线上的从设备,或者检测到 AHB_Resp信号状态为RETRY,此时 OPB2AHB_Brg作为AHB总线上的主设备向 AHB仲裁器发出请求总线信号 AHB_BusReq。

(3) 当OPB2AHB_Brg检测到 AHB总线侧的允许信号 AHB_Grants时,说明桥接器的请求得 到允许,此时当 AHB_Ready有效时,可以根据 SOPB_BE判断传输数据的大小,决定 AHB_Size的状态,当 SOPB_BE为1111时,AHB_Size为010(32bit),SOPB_BE为1100或0011时,AHB_Size为001(16bit),SOPB_BE为0001、0010、0100、1000时,AHB_Size为000(8bit)。

(4) 当SOPB_RNW为高电平时,为读取数据,数据流向是从 AHB_Rdata到Sl_Dbus,当 SOPB_RNW为低电平时,为写数据,数据流向从 SOPB_Dbus到AHB_Wdata。地址总线相连,即SOPB_Abus连接AHB_Addr。

(5)当一次数据传输完成后, (6)置位Sl_xferAck信号, (7) 让其输出一个时钟周期的高脉冲。

4.2 AHB_OPB_Brg的实现

(1) 当桥接器检测到 AHB_Sel信号有效时,即表明桥接器被选中,成为AHB总线上的从设备,此时AHB2OPB_Brg作为OPB总线上的主设备向 OPB仲裁器发出请求总线信号 M_req。

(2)当桥接器接收到 OPB仲裁器发出的允许信号 OPB_Mgrant信号时, (3)表明桥接器可以

开始工作,(4)这个信号会激励 M_Sel信号有效, (5)根据 IP核 BK3721的功能特性, (6) M_BE总是输出 1111,(7) M_SeqAddr和M_busLock输出为0。

(3) 当AHB_Write为高电平时,为写数据有效,此时 AHB主设备向从设备桥接器写数据,同时桥接器作为 OPB总线上的主设备向选中的 OPB从设备写数据,数据流向为 AHB_Wdata到 M_Dbus。当AHB_Write为低电平时,为读数据有效,此时 AHB主设备从桥接器(作为 AHB总线上的从设备)读取数据,同时桥接器作为 OPB总线的主设备从选中的 OPB从设备读取数据,数据流向为OPB_DBus到AHB_RData。

(8)当数据传输指 (9)示信号OPB_xferAck被检测有效时, (10) AHB_Ready信号输出高电平有效信号, (11)表示数据传输结束。

5.OPB_AHB桥接器的验证

5.1 OPB2AHB_Brg的验证

用verilog编写testbench,在testbench中虚拟设备一个 AHB从设备存储器 AHB_mem,存储器的数据位宽和地址位宽都是 32位,通过测试平台可以对虚拟存储器进行数据的读写,并将数据的读写结果保存到 Wdata.txt文件中。

利用ModelSim工具对测试平台进行仿真。在主设备向虚拟从设备写数据时, SOPB_RNW为低电平,桥接器作为AHB上的主设备将 SOPB_DBus数据线上的数据通过 AHB_Wdata写到 AHB_mem存储器中,并在 WData.txt文件中显示出来,仿真结果如图 3 (a)所示。


连接总线系统的桥接器

在主设备从虚拟从设备读取数据时, SOPB_RNW为高电平,桥接器作为 AHB上的主设备将AHB_mem存储器的数据通过 AHB_Rdata读取到Sl_Dbus数据总线上,并在 WData.txt文件中显示出来,仿真结果如图 3 (b)所示。


连接总线系统的桥接器

5.2 AHB2OPB_Brg的验证

AHB2OPB_Brg验证平台主要分为测试激励,被测对象以及响应输出三部分。测试过程为:首先对测试激励进行初始化,产生时钟信号和复位信号及控制信号,然后向虚拟 OPB从设备(mem存储器)写数据,写完数据后等待一段时间在进行读取数据操作。在ModelSim中仿真结果如图 4所示。


连接总线系统的桥接器

通过观察,当写信号时, AHB_WData数据总线上的数据能够正确的写入到虚拟从设备 OPB_mem中,当读信号有效时,虚拟从诶设备 OPB_mem中的数据能够正确通过 OPB_Dbus传输到AHB_RData总线上。

6.结束语

本文在分析了 AMBA总线协议和 OPB总线协议的基础上,给出了OPB_AHB桥接器的设计和验证方案。本文作者创新点是采用同步设计和流水线设计方法,能够正确的转换 OPB总线与 AHB总线之间的数据、地址、控制信号,提高了系统的运行速度和稳定性。最后通过 Xilinx的ISE综合和时序仿真,最高频率达到 100MHZ,并导入到 EDK环境中,选择MicroBlaze软核处理器构建 SoC系统,实现 OPB与AHB总线协议的互连。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭