首页> 中国专利> 高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥

高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥

摘要

本发明提供了一种高速高带宽AHB轻量级总线到低速低带宽AHB轻量级总线相互通信的双向总线桥。包括高速高带宽AHB轻量级总线对低速带宽AHB轻量级总线的主从桥,以及低速带宽AHB轻量级总线对高速高带宽AHB轻量级总线的主从桥两个部分构成。本发明的优点是:使用本发明的总线桥可以将原先单一的AHB总线进行分级处理,系统芯片的面积与功耗将会有效降低。

著录项

  • 公开/公告号CN102750254A

    专利类型发明专利

  • 公开/公告日2012-10-24

    原文格式PDF

  • 申请/专利号CN201210207171.2

  • 发明设计人 李天阳;于麦可;王澧;

    申请日2012-06-20

  • 分类号G06F13/40(20060101);

  • 代理机构32104 无锡市大为专利商标事务所;

  • 代理人殷红梅

  • 地址 214035 江苏省无锡市滨湖区惠河路5号

  • 入库时间 2023-12-18 07:07:03

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-12-03

    授权

    授权

  • 2012-12-19

    实质审查的生效 IPC(主分类):G06F13/40 申请日:20120620

    实质审查的生效

  • 2012-10-24

    公开

    公开

说明书

技术领域

本发明属于集成电路设计领域的数字接口转换设计,尤其涉及一种高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥。

背景技术

随着集成电路设计技术的发展,基于知识产权(Intellectual Property)核进行系统芯片SOC设计的能力与技术得到了大大的提高。基于IP集成的可重用设计技术将各种IP模块(微处理器、DSP、存储器等)集成在一起,其关键在于建立正确、高效、灵活的片上总线(on-chip bus)结构,构造以功能组装为基础的芯片开发模型。

由ARM公司推出的AMBA总线(Advanced Microcontroller Bus Architecture, 高级微处理器总线架构)受到了广大IP开发商和SOC系统集成者的青睐,已经成为一种流行的工业标准片上结构。近年来,以高速内核及多核为代表的大数据运算量的SOC系统设计成为一种流行的设计方式。然而,由于大量的外设的工作频率并没有达到核的总线接口的工作频率,为了达到功耗与性能的完美匹配。在SOC的总线设计架构中,大量采用了分级AHB总线的设计方式,除了与处理器接口的高速高带宽AHB总线之外,增加一条专用于外设的低速低带宽AHB总线。这两条总线之间需要一种高低速总线之间的转换桥,完成频率转换、数据对齐、协议转换等工作。

发明内容

本发明为解决高速高数据宽度AHB总线到低速度低数据宽度数据传输的技术问题,提供了一种高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥,是一种高速(1倍、2倍、4倍或更高频率倍数于低速AHB频率)高数据宽度(64位)到低速低数据宽度(32位)的可互相访问的双向总线桥。

所述高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥,包括高速高带宽AHB总线到低速低带宽AHB总线访问方向的转换桥HAHB2LAHB,以及从低速低带宽AHB总线到高速高带宽AHB总线访问方向的转换桥LAHB2HAHB;HAHB表示高速高带宽AHB总线,LAHB表示低速低带宽AHB总线;

所述HAHB2LAHB包括第一控制信号寄存器、第一地址寄存器、第一写入数据寄存器、第一读出数据寄存器、第一主控状态机、第一地址/控制通路以及第一数据通路;第一主控状态机连接第一地址控制电路和第一数据通路,第一控制信号寄存器连接第一主控状态机与HAHB,第一地址寄存器连接第一地址/控制通路,第一写入数据寄存器与第一读出数据寄存器连接第一数据通路;

HAHB2LAHB以HAHB主时钟作为主工作时钟,所述第一控制信号寄存器、第一地址寄存器、第一写入数据寄存器、第一读出数据寄存器用于暂存两端总线的信号与数据,第一主控状态机在HAHB控制信号、LAHB反馈控制信号及时钟同步信号的共同作用下,根据不同的激励进入不同的工作状态,控制着HAHB2LAHB的工作状态,第一地址/控制通路根据第一主控状态机的不同状态,将保存在第一地址寄存器中的访问地址传递给LAHB,同时产生包括读写信号在内的控制信号,并将控制信号传递给LAHB;

写入操作时,第一数据通路根据第一主控状态机的不同状态,将保存在第一写入数据寄存器中的位数据分发送到LAHB;

读出操作时,第一数据通路根据第一主控状态机的不同状态,将访问地址的低位进行译码,从而将LAHB读出位数据发送到HAHB的高字或低字的读出总线上;

所述LAHB2HAHB包括第二控制信号寄存器、第二地址寄存器、第二写入数据寄存器、第二读出数据寄存器、第二主控状态机、第二地址/控制通路以及第二数据通路;第二主控状态机连接第二地址/控制通路和第二数据通路,第二控制信号寄存器连接着第二主控状态机与HAHB,第二地址寄存器连接着第二地址/控制通路,第二写入数据寄存器与第二读出数据寄存器连接第二数据通路;

LAHB2HAHB以HAHB主时钟作为工作主时钟,所述第二控制信号寄存器、第二地址寄存器、第二写入数据寄存器、第二读出数据寄存器用于暂存两端总线的信号与数据,第二主控状态机在LAHB控制信号、HAHB反馈控制信号及时钟同步信号的共同作用下,根据不同的激励进入不同的工作状态;第二地址/控制通路根据主控状态机的不同状态,将保存在第二地址寄存器中的32位访问地址传递给HAHB,同时产生包括读写信号在内的控制信号,并将控制信号传递给HAHB;第二数据通路根据第二主控状态机的不同状态,将保存在第二写入寄存器中的32位数据发送到HAHB的64位数据写总线上;

读出操作时,第二数据通路根据第二主控状态机的不同状态根据32位访问地址进行译码选择出高字或低字作为有效数据传递到LAHB的32位读数据总线上。

所述HAHB2LAHB的写入操作中,在执行双字写操作时,第一主控状态机需要两个节拍分两次将两个字发送到LAHB总线。

所述LAHB2HAHB的第二数据通路将保存在第二写入寄存器中的32位数据发送到HAHB的64位数据写总线上时,将高字与低字同时写入相同的32位数据。

HAHB2LAHB的第一主控状态机10个状态分别是:BUS_IDLE表明第一主控状态机处于空闲等待状态;CEN_WAIT表明第一主控状态机处于等待同步状态;DW1_WAIT表明第一主控状态机处于首字存取等待状态;DW1_ADDR表明第一主控状态机处于首字存取地址/控制状态;DW1_DATA表明第一主控状态机处于首字存取数据状态;DW2_WAIT表明第一主控状态机处于次字存取等待状态;DW2_ADDR表明第一主控状态机处于次字存取地址/控制状态;DW2_DATA表明第一主控状态机处于次字存取数据状态;ANY_ERR1表明第一主控状态机处于LAHB反馈出错状态;ANY_ERR2表明第一主控状态机处于LAHB反馈出错结束状态。

LAHB2HAHB的第二主控状态机包含8个状态分别如下:BUS_IDLE表明第二主控状态机处于空闲等待状态;ASK_ABUS表明申请HAHB总线状态为总线非空闲;RDY_ABUS表明总线有效待机状态,由于考虑LAHB的频率慢于HAHB,为等待写入数据,此状态不驱动HAHB;OWN_ABUS表明驱动地址/控制状态,开始进行控制信号与地址的驱动;OWN_DBUS表明控制与地址信号被HABH接收,开始进行数据传送;ERR_RESP表明接收到错误的反馈,进行错误处理;ERR_DONE表明错误处理结束状态;ACC_DONE表明数据传送结束。

本发明与现有技术相比,本发明所设计呈的总线桥呈双向性,不仅可以完成从高速高宽度AHB总线到低速低宽度AHB总线的访问,同时也可以完成从低速低宽度AHB总线到高速高宽度AHB总线的访问。此外本发明所提供的总线桥具有结构简单、效率优异的特点。

附图说明

图1为本发明提供的HAHB总线到LAHB总线双向桥基本结构框图。

图2为本发明提供的HAHB总线到LAHB总线方向的转换桥的模块示意图。

图3为本发明提供的HAHB总线到LAHB总线方向的转换桥主控状态机状态转换图。

图4为本发明提供的LAHB总线到HAHB总线方向的转换桥的模块示意图。

图5为本发明提供的LAHB总线到HAHB总线方向的转换桥主控状态机状态转换图。

具体实施方式

以下结合附图对本发明所解决的技术问题、技术方案与作进一步详细说明。

为描述方便,将HAHB到LAHB转换桥表述为HAHB2LAHB。将LAHB到HAHB转换桥表述为LAHB2HAHB。而两个总线的双向桥是由HAHB2LAHB与LAHB2HAHB共同构成,如图1所示。

从HAHB到LAHB方向转换桥。作为HAHB的从设备接收HAHB传输的存取控制信号与数据。作为LAHB的主设备,将从HAHB接收到的控制与数据信号,转换成合格的LAHB控制信号发送到LAHB总线上,并从LAHB总线获得反馈信号,并将信号反馈给HAHB总线。本发明的HAHB到LAHB桥设计了一个主控状态机根据HAHB信号状态向LAHB发出读写请求。根据LAHB总线状态向HAHB发出各种反馈信号。

LAHB到HAHB方向的转换桥。作为LAHB的从设备接收LAHB传输控制与数据信号。作为HAHB的主设备,将接收到的LAHB控制/数据信号以HAHB可识别的格式向HAHB发出总读写申请,并进行总线的读写操作。本发明设计了另一个主控状态机完成的LAHB到HAHB总线转换。

本发明所表述的HAHB与LAHB总是是轻量级AHB总线,它们之间相互访问不支持AHB锁定操作,不支持Split响应,不支持Retry响应。

如图2所示,为本发明HAHB2LAHB转换桥包括:第一控制信号寄存器54、第一地址寄存器55、第一写入数据寄存器56、第一读出数据寄存器57、第一主控状态机51、第一地址/控制转换电路52以及第一数据通路53。第一主控状态机51连接第一地址控制电路52和第一数据通路53,第一控制信号寄存器54连接第一主控状态机51与HAHB,第一地址寄存器55连接第一地址/控制通路52,第一写入数据寄存器56与第一读出数据寄存器57连接第一数据通路53。

HAHB2LAHB以HAHB主时钟HCLK作为主工作时钟。

若HAHB对LAHB存在访问请求,则首先需要使用第一控制信号寄存器54、第一地址寄存器55寄存来自HAHB的控制信号、32位地址。

若HAHB对LAHB进行写访问,则需要使用第一写入数据寄存器56寄存来自HAHB的64位写入数据。

若HAHB对LAHB进行读访问,则需要使用第一读出数据寄存器57寄存来自LAHB的32位读出数据。

第一主控状态机51在HAHB控制信号、LAHB反馈控制信号及时钟同步信号CLK_EN的共同作用下,开始启动,根据不同的激励进入不同的工作状态。

第一地址/控制通路52根据主控状态机的不同状态,将保存在第一地址寄存器55中的32位访问地址传递给LAHB。同时产生读写以及其他的控制信号,并将控制信号传递给LAHB。

写入操作时,第一数据通路53根据第一主控状态机51的不同状态,将保存在第一写入数据寄存器56中的64位数据分作两个节拍(双字写的条件下)发送到LAHB总线。

读出操作时,第一数据通路53根据第一主控状态机51的不同状态,将32位地址的低位进行译码,从而将LAHB读出的32位数据发送到HAHB的高字或低字的读出总线上。

如图3所示,为本发明HAHB2LAHB转换桥的第一主控状态机包括10个状态,32条转换条件弧。下面详细描述第一主控状态机51各状态的转换。

第一主控状态机的10个状态分别如下:

BUS_IDLE表明状态机处于空闲等待状态;

CEN_WAIT表明状态机处于等待同步状态;

DW1_WAIT表明状态机处于首字存取等待状态;

DW1_ADDR明状态机处于首字存取地址/控制状态;

DW1_DATA表明状态机处于首字存取数据状态;

DW2_WAIT表明状态机处于次字存取等待状态;

DW2_ADDR表明状态机处于次字存取地址/控制状态;

DW2_DATA表明状态机处于次字存取数据状态;

ANY_ERR1表明状态机处于LAHB反馈出错状态;

ANY_ERR2表明状态机处于LAHB反馈出错结束状态。

系统上电复位后,第一主控状态机51进入起始状态,即空闲等待状态BUS_IDLE:

(1) 当HAHB总线没有向LAHB总线的请求时(转换条件弧1)第一主控状态机51保持空闲等待状态BUS_IDLE;

(2) 当HAHB总线有向LAHB的总线请求,但LAHB的CLK_EN信号未同步时(转换条件弧2),第一主控状态机转换至CEN_WAIT状态;

(3) 当HAHB总线有向LAHB的总线请求,但LAHB的CLK_EN已处于同步状态,但LAHB总线未空闲,即未LAHB被别的主设备占用(转换条件弧3),第一主控状态机转换至首字存取等待DW1_WAIT状态;

(4) 当HAHB总线有向LAHB的总线请求,LAHB的CLK_EN信号同步,LAHB总线空闲(条件状态弧4),第一主控状态机51转换到首字存取地址/控制状态DW1_ADDR。

第一主控状态机处于等待同步状态CEN_WAIT:

(5) 当LAHB的CLK_EN信号仍未同步时(条件转换弧5),主控控状态机51继续保持等待同步状态;

(6) 当LAHB的CLK_EN同步状态有效,但LAHB总线未空闲时(条件转换弧6),第一主控状态机51转换到首字存取等待状态;

(7) 当LAHB的CLK_EN同步状态有效且LAHB总线空闲时(条件转换弧7),第一主控状态机51转换到首字存取地址/控制状态DW1_ADDR。

主控状态机处于首字存取等待状态DW1_WAIT:

(8) 当LAHB总线未空闲时(条件转换弧8)或总线未同步时,第一主控状态机51保持首字存取等待状态DW1_WAIT;

(9) 当LAHB总线空闲时,可以接收HAHB2LAHB桥的存取申请时(条件转换弧9),第一主控状态机51转换至首字存取地址/控制状态DW1_ADDR。

第一主控状态机处于首字存取地址/控制状态DW1_ADDR:

(10) 当LAHB总线未响应(Lhreadyi不等于1)或总线未同步时(条件转换弧10),第一主控状态机51保持首字存取地址/控制状态DW1_ADDR;

(11) 当LAHB总线同步,并且存在响应的条件下(条件转换弧11),第一主控状态机51转换至首字存取数据状态DW1_DATA。

第一主控状态机处于首字存取数据状态DW1_DATA:

(12) 当LAHB总线未响应(Lhreadyi不等于1)或总线未同步时(条件转换弧12),第一主控状态机51保持存取数据状态DW1_DATA;

(13) 当LAHB总线有响应,表明首字完成存取,若HAHB的存取操作不是双字(64位)存取,并且HAHB存在新的存取申请,但LAHB未能同步或不空闲时,第一主控状态机51转换至首字等待状态DW1_WAIT;

(14) 当LAHB总线有响应,表明首字完成存取,若HAHB的存取操作不是双字(64位)存取,并且HAHB存在新的存取申请,LAHB同步且空闲时,第一主控状态机51转换至首字存取地址/控制状态DW1_ADDR;

(15) 当LAHB总线有响应,表明首字完成存取,并且HAHB总不再有对LAHB的存取操作时,第一主控状态机51转换至空闲等待状态BUS_IDLE;

(16) 当LAHB总线有响应,表明首字完成存取,并且HAHB的存取是双字(64)存取,并且LAHB总线未空闲或不同步时,第一主控状态机51转换至次字存取等待状态DW2_WAIT;

(17) 当LAHB总线有响应,表明首字完成存取,并且HAHB的存取是双字(64)存取,并且LAHB总线空闲且同步时,第一主控状态机51转换至次字存取地址/控制状态DW2_ADDR;

(18) 当LAHB总线有响应,表明首字完成存取,但反馈控制信号为出错信号时,第一主控状态机51转换至反馈出错状态ANY_ERR1。

第一主控状态机处于次字存取等待状态DW2_WAIT:

(19) 当LAHB总线未空闲时(条件转换弧19)或总线未同步时,第一主控状态机51保持次字存取等待状态DW2_WAIT;

(20) 当LAHB总线空闲时,可以接收HAHB2LAHB桥的存取申请时(条件转换弧20),第一主控状态机51转换至次字存取地址/控制状态DW2_ADDR。

第一主控状态机处于次字存取地址/控制状态DW2_ADDR:

(21) 当LAHB总线未响应(Lhreadyi != 1)或总线未同步时(条件转换弧21),第一主控状态机51保持次字存取地址/控制状态DW2_ADDR;

(22) 当LAHB总线同步,并且存在响应的条件下(条件转换弧22),第一主控状态机51转换至次字存取数据状态DW2_DATA。

第一主控状态机处于次字存取数据状态DW2_DATA:

(23) 当LAHB总线未响应(Lhreadyi不等于1)或总线未同步时(条件转换弧23),第一主控状态机51保持次字存取数据状态DW2_DATA;

(24) 当LAHB总线有响应,表明次字完成存取,并且HAHB总不再有对LAHB的存取操作时(条件转换弧24),第一主控状态机51转换至空闲等待状态BUS_IDLE;

(25) 当LAHB总线有响应,表明次字完成存取,若HAHB存在新的存取申请,但LAHB未能同步或不空闲时(条件转换弧25),第一主控状态机51转换至首字等待状态DW1_WAIT;

(26) 当LAHB总线有响应,表明次字完成存取,若HAHB存在新的存取申请,LAHB同步且空闲时(条件转换弧26),第一主控状态机51转换至首字存取地址/控制状态DW1_ADDR;

(27) 当LAHB总线有响应,表明次字完成存取,但反馈控制信号为出错信号时(条件转换弧27),第一主控状态机51转换至反馈出错状态ANY_ERR1。

第一主控状态机处于反馈出错状态ANY_ERR1:

(28) 在下一个HCLK时钟周期,第一主控状态机无条件(条件转换弧28)转换至反馈出错结束状态ANY_ERR2。

第一主控状态机处于反馈出错结束状态ANY_ERR2:

(29) HAHB总线不再有下对LAHB的总线存取请求(条件转换弧29)。第一主控状态机51转换至空闲等待状态BUS_IDLE;

(30) 当HAHB总线有向LAHB的总线请求,但LAHB总线未同步时(转换条件弧30),第一主控状态机转换至CEN_WAIT状态;

(31) 当HAHB总线有向LAHB的总线请求,但LAHB总线虽同步但未空闲,(转换条件弧31),第一主控状态机转换至首字存取等待DW1_WAIT状态;

(32) 当HAHB总线有向LAHB的总线请求,LAHB总线同步且空闲(条件状态弧32),第一主控状态机51转换到首字存取地址/控制状态DW1_ADDR。

对应于不同的状态,第一地址/控制通路模块52对LAHB进行地址与控制信号的操作。具体操作如下:

(1) LAHB_hbusreq信号,当且仅当主状态机51工作在DW1_WAIT时或DW2_WAIT时;

(2) LAHB_haddr 信号由锁存在寄存器55中的地址信号直接驱动,仅当主状态机51工作在DW2_ADDR时,控制第3位地址为”1”;

(3) LAHB_htrans 信号当且仅当主状态机51工作在DW1_ADDR或DW2_ADDR时为2’b10,即非连续访问状态,工作在其他状态时皆为2’b00即空闲状态;

(4) LAHB_hsize 信号当且仅当主状态机51工作在DW1_ADDR或DW2_ADDR时,若锁存在第一控制信号寄存器54中的hsize信号为双字操作,则为3’b010,若是其他的字长,则由锁存在第一控制信号寄存器54中的hsize信号直接驱动;

(5) LAHB_hwrite信号当且仅当主状态机51工作在DW1_ADDR或DW2_ADDR时由锁存在第一控制信号寄存器54中的hwrite 信号直接驱动;

对于驱动HAHB的反馈信号:

(1) HAHB_hresp信号当且仅当第一主控状态机51工作状态为ANY_ERR1或ANY_ERR2时为2’b01即出错信号,在其余工作状态时为2’b00,访问正确信号;

(2) HAHB_hreadyo信号当且仅当第一主控状态机51工作状态为BUS_IDLE或ANY_ERR2 或 DW1_DATA或DW2_DATA时与其他相关控制信号合成。

对应于不同的状态,第一数据通路53完成对LAHB写入数据的驱动与对HAHB读出数据的驱动。

(1) LAHB_hwdata信号当且仅当第一主控状态机51工作状态为DW1_DATA或DW2_DATA时,由锁存在寄存器56的64位hwdata信号经过第3位地址译码驱动;

(2) HAHB_hrdata信号仅当第一主控状态机51工作状态为DW1_DATA或DW2_DATA时由锁存在寄存器57中的32位hrdata,经过第3位地址译码来驱动HAHB_hrdata的高字与低字。

如图4所示,本发明LAHB2HAHB转换桥包括第二控制信号寄存器44、第二地址寄存器45、第二写入数据寄存器46、第二读出数据寄存器47,第二主控状态机41、第二地址/控制转换电路42以及第二数据通路43。第二主控状态机41连接第二地址/控制通路42和第二数据通路43,第二控制信号寄存器44连接着第二主控状态机41与HAHB,第二地址寄存器45连接着第二地址/控制通路42,第二写入数据寄存器46与第二读出数据寄存器47连接第二数据通路43;

若LAHB对HAHB存在访问请求,则首先需要使用第二控制信号寄存器44、第二地址寄存器45、第二写入数据寄存器46寄存来自LAHB的控制信号、32位地址与32位的写入数据。

第二主控状态机41在LAHB控制信号、HAHB反馈控制信号及时钟同步信号CLK_EN的共同作用下,根据不同的激励进入不同的工作状态。

第二地址/控制通路42根据第二主控状态机41的不同状态,将保存在第二地址寄存器45中的32位访问地址传递给HAHB。同时产生读写以及其他的控制信号,并将控制信号传递给HAHB。

第二数据通路43根据第二主控状态机41的不同状态,将保存在第二写入寄存器46中的32位数据发送到HAHB的64位数据写总线上,本实施例中将高字与低字同时写入相同的32位数据。

读入时,第二数据通路43根据第二主控状态机41的不同状态,对于读入数据,需要根据32位地址的进行译码选择出高位字或低位字作为有效数据传递到LAHB 32位读入数据总线上。

如图5所示,为本发明LAHB2HAHB转换桥的第二主控状态机的状态转换图。该状态机包括8个状态,20条转换条件弧。下面详细描述第二主控状态机41各状态及之间的转换条件弧。

第二主控状态机的8个状态分别如下:

BUS_IDLE表明第二主控状态机处于空闲等待状态;

ASK_ABUS表明申请HAHB总线状态(总线非空闲);

RDY_ABUS表明总线有效待机状态,由于考虑LAHB的频率慢于HAHB,为等待写入数据,此状态不驱动HAHB;

OWN_ABUS表明驱动地址/控制状态,开始进行控制信号与地址的驱动;

OWN_DBUS表明控制与地址信号被HABH接收,开始进行数据传送;

ERR_RESP表明接收到错误的反馈,进行错误处理;

ERR_DONE表明错误处理结束状态;

ACC_DONE表明数据传送结束。

系统上电复位后,第二主控状态机41进入起始状态,即空闲等待状态BUS_IDLE:

(1) 当LAHB总线没有向HAHB总线的请求时(转换条件弧61)第二主控状态机41保持空闲等待状态BUS_IDLE;

(2) 当LAHB总线有向HAHB的总线请求,但HAHB未空闲需要等待时(转换条件弧62),第二主控状态机41转换至申请总线状态ASK_ABUS;

(3) 当LAHB总线有向HAHB的总线请求且HAHB空闲,可处理LAHB的请求时(转换条件弧63),第二主控状态机41转换至总线有效待机状态RDY_ABUS。

第二主控状态机41处于总线申请状态ASK_ABUS时:

(4) 当HAHB未空闲,不能处理桥的请求时(转换条件弧64),第二主控状态机41保持总线申请状态ASK_ABUS;

(5) 当HAHB空闲,可以处理桥对HAHB的总线请求时(转换条件弧65),第二主控状态机转换至总线有效待机状态RDY_ABUS。

第二主控状态机41处于总线有效待机状态RDY_ABUS:

(6) 当HAHB未空闲,不能处理桥对HAHB的存取请求时(转换条件弧66),第二主控状态机41保持总线有效待机状态RDY_ABUS;

(7) 当HAHB空闲,可以处理HAHB存取请求时(转换条件弧67),第二主控状态机41转换至驱动地址/控制状态OWN_ABUS。

第二主控状态机41处于驱动地址/控制状态OWN_ABUS:

(8) 若HAHB总线未空闲,未能接收桥发出地址与控制信号(转换条件弧68),第二主控状态机41保持驱动地址/控制状态OWN_ABUS;

(9) 若HAHB总线接收了桥发出的地址与控制信号(转换条件弧69),第二主控状态机41转换至数据处理状态OWN_DBUS。

第二主控状态机41处于数据处理状态OWN_DBUS:

(10) 若HAHB未能处理完成数据 (转换条件弧70),第二主控状态机41保持数据处理状态OWN_DBUS;

(11) 若HAHB 成功处理完成数据(转换条件弧71),第二主控状态机41转换至访问结束处理状态ACC_DONE;

(12) 若HAHB 处理数据发生错误(转换条件弧72),第二主控状态机41转换至错误处理状态ERR_RESP。

第二主控状态机41处于访问结束处理状态ACC_DONE:

(13) 若LAHB不再有对HAHB的存取访问申请(转换条件弧73),第二主控状态机41转换保持空闲等待状态BUS_IDLE;

(14) 当LAHB总线有向HAHB的总线请求,但HAHB未空闲需要等待时(转换条件弧74),第二主控状态机41转换至申请总线状态ASK_ABUS;

(15) 当LAHB总线有向HAHB的总线请求且HAHB空闲,可处理LAHB的请求时(转换条件弧75),第二主控状态机41转换至总线有效待机状态RDY_ABUS。

第二主控状态机41处于错误处理状态ERR_RESP:

(16) 当两条不同频率总线时钟未同步时(转换条件弧76),第二主控状态机41保持错误处理状态ERR_RESP;

(17) 当两条不同频率总线时钟同步时(转换条件弧77)第二主控状态机41转换至出错处理完成状态ERR_DONE。

第二主控状态机41处于错误处理状态ERR_DONE:

(18) 若LAHB不再有对HAHB的存取访问申请(转换条件弧78),第二主控状态机41转换保持空闲等待状态BUS_IDLE;

(19) 当LAHB总线有向HAHB的总线请求,但HAHB未空闲需要等待时(转换条件弧79),第二主控状态机41转换至申请总线状态ASK_ABUS;

(20) 当LAHB总线有向HAHB的总线请求且HAHB空闲,可处理LAHB的请求时(转换条件弧80),第二主控状态机41转换至总线有效待机状态RDY_ABUS。

对应于不同的状态,第二地址/控制通路模块42对HAHB进行地址与控制信号的操作。具体操作如下:

(1) HAHB_hbusreq 当且仅当第一主控状态机41工作在申请总线状态ASK_ABUS时;

(2) HAHB_haddr 信号由锁存在寄存器45中的地址信号直接驱动;

(3) HAHB_htrans 信号当且仅当主状态机41工作在OWN_ABUS由寄存器44中的htrans信号直接驱动,工作在其他状态时皆为2’b00即空闲信号;

(4) HAHB_hsize 信号由锁存在寄存器44中的hsize信号直接驱动;

(5) HAHB_hwrite信号当且仅当主状态机41工作在OWN_ABUS时由锁存在寄存器44中的hwrite 信号直接驱动。

对于驱动HAHB的反馈信号:

(1) LAHB_hresp信号当且仅当第二主控状态机41工作状态为ERR_RESP或ERR_DONE时为2’b01即出错信号,在其余工作状态时为2’b00即正确访问信号;

(2) LAHB_hreadyo信号当且仅当第二主控状态机41工作状态为BUS_IDLE或ERR_DONE 或ACC_DONE时为1’b1,其余状态皆为1’b0。

对应于不同的状态,第二数据通路43完成对HAHB写入数据的驱动与对LAHB读出数据的驱动。

(1) HAHB_hwdata当且仅当第二主控状态机41工作状态为ACC_DONE时由锁存在寄存器46的32位hwdata同时驱动HAHB_hwdata的高低字;

(2) HAHB_hrdata 信号仅当第二主控状态机41工作状态为ACC_DONE时由锁存在寄存器47中的32位hrdata直接驱动。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号