CN102750254A - 高速高带宽ahb总线到低速低带宽ahb总线的双向转换桥 - Google Patents
高速高带宽ahb总线到低速低带宽ahb总线的双向转换桥 Download PDFInfo
- Publication number
- CN102750254A CN102750254A CN2012102071712A CN201210207171A CN102750254A CN 102750254 A CN102750254 A CN 102750254A CN 2012102071712 A CN2012102071712 A CN 2012102071712A CN 201210207171 A CN201210207171 A CN 201210207171A CN 102750254 A CN102750254 A CN 102750254A
- Authority
- CN
- China
- Prior art keywords
- state machine
- bus
- data
- address
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Bus Control (AREA)
Abstract
本发明提供了一种高速高带宽AHB轻量级总线到低速低带宽AHB轻量级总线相互通信的双向总线桥。包括高速高带宽AHB轻量级总线对低速带宽AHB轻量级总线的主从桥,以及低速带宽AHB轻量级总线对高速高带宽AHB轻量级总线的主从桥两个部分构成。本发明的优点是:使用本发明的总线桥可以将原先单一的AHB总线进行分级处理,系统芯片的面积与功耗将会有效降低。
Description
技术领域
本发明属于集成电路设计领域的数字接口转换设计,尤其涉及一种高速高带宽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直接驱动。
Claims (5)
1. 高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥,其特征在于:包括高速高带宽AHB总线到低速低带宽AHB总线访问方向的转换桥HAHB2LAHB,以及从低速低带宽AHB总线到高速高带宽AHB总线访问方向的转换桥LAHB2HAHB;HAHB表示高速高带宽AHB总线,LAHB表示低速低带宽AHB总线;
所述HAHB2LAHB包括第一控制信号寄存器(54)、第一地址寄存器(55)、第一写入数据寄存器(56)、第一读出数据寄存器(57)、第一主控状态机(51)、第一地址/控制通路(52)以及第一数据通路(53);第一主控状态机(51)连接第一地址控制电路(52)和第一数据通路(53),第一控制信号寄存器(54)连接第一主控状态机(51)与HAHB,第一地址寄存器(55)连接第一地址/控制通路(52),第一写入数据寄存器(56)与第一读出数据寄存器(57)连接第一数据通路(53);
HAHB2LAHB以HAHB主时钟作为主工作时钟,所述第一控制信号寄存器(54)、第一地址寄存器(55)、第一写入数据寄存器(56)、第一读出数据寄存器(57)用于暂存两端总线的信号与数据,第一主控状态机(51)在HAHB控制信号、LAHB反馈控制信号及时钟同步信号的共同作用下,根据不同的激励进入不同的工作状态,控制着HAHB2LAHB的工作状态,第一地址/控制通路(52)根据第一主控状态机(51)的不同状态,将保存在第一地址寄存器(55)中的访问地址传递给LAHB,同时产生包括读写信号在内的控制信号,并将控制信号传递给LAHB;
写入操作时,第一数据通路(53)根据第一主控状态机(51)的不同状态,将保存在第一写入数据寄存器(56)中的位数据分发送到LAHB;
读出操作时,第一数据通路(53)根据第一主控状态机(51)的不同状态,将访问地址的低位进行译码,从而将LAHB读出位数据发送到HAHB的高字或低字的读出总线上;
所述LAHB2HAHB包括第二控制信号寄存器(44)、第二地址寄存器(45)、第二写入数据寄存器(46)、第二读出数据寄存器(47)、第二主控状态机(41)、第二地址/控制通路(42)以及第二数据通路(43);第二主控状态机(41)连接第二地址/控制通路(42)和第二数据通路(43),第二控制信号寄存器(44)连接着第二主控状态机(41)与HAHB,第二地址寄存器(45)连接着第二地址/控制通路(42),第二写入数据寄存器(46)与第二读出数据寄存器(47)连接第二数据通路(43);
LAHB2HAHB以HAHB主时钟作为工作主时钟,所述第二控制信号寄存器(44)、第二地址寄存器(45)、第二写入数据寄存器(46)、第二读出数据寄存器(47)用于暂存两端总线的信号与数据,第二主控状态机(41)在LAHB控制信号、HAHB反馈控制信号及时钟同步信号的共同作用下,根据不同的激励进入不同的工作状态;第二地址/控制通路(42)根据主控状态机的不同状态,将保存在第二地址寄存器(45)中的32位访问地址传递给HAHB,同时产生包括读写信号在内的控制信号,并将控制信号传递给HAHB;第二数据通路(43)根据第二主控状态机的不同状态,将保存在第二写入寄存器(46)中的32位数据发送到HAHB的64位数据写总线上;
读出操作时,第二数据通路(43)根据第二主控状态机(41)的不同状态根据32位访问地址进行译码选择出高字或低字作为有效数据传递到LAHB的32位读数据总线上。
2.如权利要求1所述的高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥,其特征在于:所述HAHB2LAHB的写入操作中,在执行双字写操作时,第一主控状态机(51)需要两个节拍分两次将两个字发送到LAHB总线。
3.如权利要求1所述的高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥,其特征在于:所述LAHB2HAHB的第二数据通路(43)将保存在第二写入寄存器(46)中的32位数据发送到HAHB的64位数据写总线上时,将高字与低字同时写入相同的32位数据。
4.如权利要求1所述的高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥,其特征在于:HAHB2LAHB的第一主控状态机10个状态分别是:
BUS_IDLE表明第一主控状态机处于空闲等待状态;
CEN_WAIT表明第一主控状态机处于等待同步状态;
DW1_WAIT表明第一主控状态机处于首字存取等待状态;
DW1_ADDR表明第一主控状态机处于首字存取地址/控制状态;
DW1_DATA表明第一主控状态机处于首字存取数据状态;
DW2_WAIT表明第一主控状态机处于次字存取等待状态;
DW2_ADDR表明第一主控状态机处于次字存取地址/控制状态;
DW2_DATA表明第一主控状态机处于次字存取数据状态;
ANY_ERR1表明第一主控状态机处于LAHB反馈出错状态;
ANY_ERR2表明第一主控状态机处于LAHB反馈出错结束状态。
5.如权利要求1所述的高速高带宽AHB总线到低速低带宽AHB总线的双向转换桥,其特征在于:LAHB2HAHB的第二主控状态机包含8个状态分别如下:
BUS_IDLE表明第二主控状态机处于空闲等待状态;
ASK_ABUS表明申请HAHB总线状态为总线非空闲;
RDY_ABUS表明总线有效待机状态,由于考虑LAHB的频率慢于HAHB,为等待写入数据,此状态不驱动HAHB;
OWN_ABUS表明驱动地址/控制状态,开始进行控制信号与地址的驱动;
OWN_DBUS表明控制与地址信号被HABH接收,开始进行数据传送;
ERR_RESP表明接收到错误的反馈,进行错误处理;
ERR_DONE表明错误处理结束状态;
ACC_DONE表明数据传送结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210207171.2A CN102750254B (zh) | 2012-06-20 | 2012-06-20 | 高速高带宽ahb总线到低速低带宽ahb总线的双向转换桥 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210207171.2A CN102750254B (zh) | 2012-06-20 | 2012-06-20 | 高速高带宽ahb总线到低速低带宽ahb总线的双向转换桥 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102750254A true CN102750254A (zh) | 2012-10-24 |
CN102750254B CN102750254B (zh) | 2014-12-03 |
Family
ID=47030453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210207171.2A Active CN102750254B (zh) | 2012-06-20 | 2012-06-20 | 高速高带宽ahb总线到低速低带宽ahb总线的双向转换桥 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102750254B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102981998A (zh) * | 2012-12-25 | 2013-03-20 | 中国电子科技集团公司第五十八研究所 | 一种多核dsp芯片的多层amba总线架构 |
CN104954119A (zh) * | 2015-06-01 | 2015-09-30 | 中国科学院微电子研究所 | 一种可以重用于使用ahb总线系统的从机结构 |
CN111367203A (zh) * | 2018-12-26 | 2020-07-03 | 圣邦微电子(北京)股份有限公司 | 控制芯片、驱动芯片及通信接口复用方法 |
CN111813726A (zh) * | 2020-07-10 | 2020-10-23 | 中科芯集成电路有限公司 | 控制信号从高速总线向低速总线的转换方法 |
CN111858436A (zh) * | 2020-07-30 | 2020-10-30 | 南京英锐创电子科技有限公司 | 高速总线读写低速总线的转接电路及数据读写设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6301629B1 (en) * | 1998-03-03 | 2001-10-09 | Alliance Semiconductor Corporation | High speed/low speed interface with prediction cache |
CN1636195A (zh) * | 2000-10-31 | 2005-07-06 | 皇家菲利浦电子有限公司 | 高级微控制器总线结构(amba)的扩展 |
CN1763734A (zh) * | 2005-11-10 | 2006-04-26 | 苏州国芯科技有限公司 | 一种基于amba总线的8051系列微处理器应用系统 |
-
2012
- 2012-06-20 CN CN201210207171.2A patent/CN102750254B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6301629B1 (en) * | 1998-03-03 | 2001-10-09 | Alliance Semiconductor Corporation | High speed/low speed interface with prediction cache |
CN1636195A (zh) * | 2000-10-31 | 2005-07-06 | 皇家菲利浦电子有限公司 | 高级微控制器总线结构(amba)的扩展 |
CN1763734A (zh) * | 2005-11-10 | 2006-04-26 | 苏州国芯科技有限公司 | 一种基于amba总线的8051系列微处理器应用系统 |
Non-Patent Citations (1)
Title |
---|
李杨: "基于AMBA总线协议的APB Bridge设计", 《中国优秀硕士学位论文全文数据库》, 1 September 2008 (2008-09-01) * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102981998A (zh) * | 2012-12-25 | 2013-03-20 | 中国电子科技集团公司第五十八研究所 | 一种多核dsp芯片的多层amba总线架构 |
CN104954119A (zh) * | 2015-06-01 | 2015-09-30 | 中国科学院微电子研究所 | 一种可以重用于使用ahb总线系统的从机结构 |
CN111367203A (zh) * | 2018-12-26 | 2020-07-03 | 圣邦微电子(北京)股份有限公司 | 控制芯片、驱动芯片及通信接口复用方法 |
CN111367203B (zh) * | 2018-12-26 | 2021-12-28 | 圣邦微电子(北京)股份有限公司 | 控制芯片、驱动芯片及通信接口复用方法 |
CN111813726A (zh) * | 2020-07-10 | 2020-10-23 | 中科芯集成电路有限公司 | 控制信号从高速总线向低速总线的转换方法 |
CN111813726B (zh) * | 2020-07-10 | 2023-03-07 | 中科芯集成电路有限公司 | 控制信号从高速总线向低速总线的转换方法 |
CN111858436A (zh) * | 2020-07-30 | 2020-10-30 | 南京英锐创电子科技有限公司 | 高速总线读写低速总线的转接电路及数据读写设备 |
CN111858436B (zh) * | 2020-07-30 | 2021-10-26 | 南京英锐创电子科技有限公司 | 高速总线读写低速总线的转接电路及数据读写设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102750254B (zh) | 2014-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109032973B (zh) | Icb总线系统 | |
CN102750254B (zh) | 高速高带宽ahb总线到低速低带宽ahb总线的双向转换桥 | |
CN101901202B (zh) | 一种ahb总线设备跨时钟域访问apb总线设备的电路 | |
CN102169470B (zh) | 一种ahb总线到bvci总线的转换桥 | |
CN105573951B (zh) | 一种针对数据流传输的ahb总线接口系统 | |
CN104599227A (zh) | 用于高速ccd数据存储的ddr3仲裁控制器及方法 | |
CN202710990U (zh) | 基于cpci总线的机载雷达监控系统 | |
CN102231129A (zh) | 一种基于串口的多层AHB总线架构SoC监测调试系统与方法 | |
CN100585568C (zh) | 一种ahb总线测试方法与系统 | |
CN105224488A (zh) | 一种pci总线控制器及其控制方法 | |
CN102636987B (zh) | 双重化控制装置 | |
CN105912492A (zh) | Axi互联总线的扩展方法 | |
CN110635985A (zh) | 一种FlexRay-CPCIe通信模块 | |
CN101436171A (zh) | 模块化通信控制系统 | |
CN100517283C (zh) | 先进高性能系统总线连接装置及先进高性能系统总线装置 | |
CN100377137C (zh) | 一种C*Core微处理器应用AMBA总线的设计方法 | |
CN101299207A (zh) | 微处理器系统总线与微处理器接口总线转换装置及方法 | |
CN101344875B (zh) | 一种片上集成系统SoC的APB总线桥 | |
CN102722457B (zh) | 总线接口转换方法及总线桥接装置 | |
CN103984663A (zh) | 一种并行体制的多样性星载电子设备 | |
CN107704407A (zh) | 一种用于spi和uart之间数据处理的系统和方法 | |
CN106326172B (zh) | 一种APB总线slave接口扩展电路及其使用方法 | |
CN101777035A (zh) | 一种amba ahb总线实现方法及装置 | |
KR100797468B1 (ko) | 시스템 버스와 아이피간 인터페이싱 장치와 방법 및 컴퓨터프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체 | |
CN106470134A (zh) | 一种便携式误码测试仪 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |