CN110659236A - 可自主回复写应答的axi总线传输装置 - Google Patents
可自主回复写应答的axi总线传输装置 Download PDFInfo
- Publication number
- CN110659236A CN110659236A CN201910905083.1A CN201910905083A CN110659236A CN 110659236 A CN110659236 A CN 110659236A CN 201910905083 A CN201910905083 A CN 201910905083A CN 110659236 A CN110659236 A CN 110659236A
- Authority
- CN
- China
- Prior art keywords
- fifo
- write
- module
- counting
- axi bus
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3041—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
-
- 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
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Communication Control (AREA)
Abstract
本发明公开一种自主回复写应答的AXI总线传输装置,本装置连接于AXI总线与本地总线之间,用于代替从设备返回写应答,本装置包括FIFO_A、FIFO_B、计数模块、对比模块以及选择器;FIFO_A与AXI总线相连,用于存放接收的AW通道发送的写命令中的awid和awlen信号,计数模块与AXI总线相连,用于对实际接收到的有效数据进行计数,FIFO_B的输入端与计数模块的输出端相连,用于存放实际数据接收长度信息;对比模块用于对比FIFO_A与FIFO_B中存放的长度值是否相等,选择器的输入端分别与对比模块的输出端和2相连,选择输出写应答。本发明自动提取当前命令要素和从设备状态,生成写应答,并自动回复,不更改从设备模块设计。
Description
技术领域
本发明涉及一种AXI总线传输装置,具体的说,是一种可自主回复写应答的AXI总线传输装置,属于AXI总线传输装置技术领域。
背景技术
总线协议多种多样,而主、从设备模块在设计时会屏蔽因不同总线协议接口带来的影响,使用自己特有的传输协议接口,称之为本地接口协议,因此主、从设备模块需要总线协议转本地接口协议(总线传输)模块来挂接到不同总线上。
AXI总线协议是目前广泛使用的总线传输协议。根据AXI总线协议规定,在点对点进行传输时,主设备模块(硬件装置)向从设备模块(硬件装置)发送写命令和写数据,数据传输完成后,从设备需要返回写应答。如果从设备向AXI总线返回写应答的话,需要从设备也支持AXI协议,具体相应的AXI接口,这样会造成从设备设计复杂,或者对已经设计好的从设备进行改造。
发明内容
本发明要解决的技术问题是提供一种可自主回复写应答的AXI总线传输装置,本装置根据AXI协议特点,自动提取当前命令要素和从设备状态,生成写应答,并自动回复,不需要与从设备模块进行额外交互,从而不更改从设备模块设计。
为了解决所述技术问题,本发明采用的技术方案是:可自主回复写应答的AXI总线传输装置,本装置连接于AXI总线与本地总线之间,用于代替从设备返回写应答,本装置包括FIFO_A、FIFO_B、计数模块、对比模块以及选择器;FIFO_A与AXI总线相连,用于存放接收的AW通道发送的写命令中的awid和awlen信号,awid表示写命令的ID,每条写命令都有对应的ID值,awlen表示写命令中的写数据传输长度信息;计数模块与AXI总线相连,用于对实际接收到的有效数据进行计数,并将记录的实际数据传输长度信息写入FIFO_B中;FIFO_B的输入端与计数模块的输出端相连,用于存放实际数据接收长度信息;对比模块的输入端分别与-FIFO_A和FIFO_B的输出端相连,用于对比FIFO_A与FIFO_B中存放的长度值是否相等,如果相等,输出0,否则输出2,0表示正确,2表示传输错误;选择器的输入端分别与对比模块的输出端和2相连,选择器的使能端连接lclk_dis和lrst,lclk_dis为从设备模块时钟关断信号,有效表示从设备模块时钟关断,lrst为从设备模块复位信号,有效表示从设备当前处于复位状态,如果当前lclk_dis或lrst有效,则选择输出2,否则输出对比模块的结果;选择器的输出为bresp,FIFO_A中的id值直接赋给bid,bresp和bid为本装置返回的写应答。
进一步的,计数模块与AXI总线的写数据通道W相连,写数据通道W中的写最后信号wlast决定计数模块的工作状态;W通道接收到有效数据,且当前wlast低无效时,计数模块从0开始计数,W通道每收到一个有效数据且wlast信号无效,计数值加1,当wlast高有效时,计数模块将当前记录的实际数据传输长度信息写入FIFO_B中,并将计数器清零。
进一步的,FIFO_A与AXI总线的写命令通道AW相连,AW通道接收到有效的AXI写命令,将awid、awlen信号值存入FIFO_A中。
进一步的,当FIFO_A和FIFO_B都不为空时,对比模块同时读取这两个FIFO中的值一次,其中FIFO_A中存放的id值赋给bid,并且对比这两个FIFO中存放的长度值是否相等,如果相等,输出0,否则输出2.
进一步的,FIFO_A可以连续或者间断地接收多条AXI写命令,针对每条写命令,计数模块都进行一次计数。
本发明的有益效果:本发明在支持AXI协议的基础上,对AXI传输命令以及本地设备模块进行监测,根据实际传输情况和设备模块工作情况自主回复AXI写应答,保证AXI总线***正常运转且能有效反映当前写命令的传输情况,且不需要对原有定义的本地接口做额外修改。
附图说明
图1为本发明的原理框图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步的说明。
实施例1
本实施例公开一种可自主回复写应答的AXI总线传输装置,本装置连接于AXI总线与本地总线之间,其作用是替代从设备返回写应答,实现该作用的方法是对AXI传输命令以及本地从设备进行监测(即自动提取当前命令要素和从设备状态),然后根据实际传输情况和设备模块工作情况自主回复AXI写应答,保证AXI总线***正常运转且能有效反映当前写命令的传输情况,且不需要对原有定义的本地接口做额外修改。
如图1所示,本AXI总线传输装置包括FIFO_A、FIFO_B、计数模块、对比模块、以及一个选择器。
FIFO_A与AXI总线相连,用于存放接收的AW通道发送的写命令中的awid和awlen信号,awid表示写命令的ID,每条写命令都有对应的ID值,awlen表示写命令中的写数据传输长度信息;计数模块与AXI总线相连,用于对实际接收到的有效数据进行计数,并将记录的实际数据传输长度信息写入FIFO_B中;FIFO_B的输入端与计数模块的输出端相连,用于存放实际数据接收长度信息;对比模块的输入端分别与FIFO_A和FIFO_B的输出端相连,用于对比FIFO_A与FIFO_B中存放的长度值是否相等,如果相等,输出0,否则输出2,0表示正确,2表示传输错误;选择器的输入端分别与对比模块的输出端和2相连,选择器的使能端连接lclk_dis和lrst,lclk_dis为从设备模块时钟关断信号,有效表示从设备模块时钟关断,lrst为从设备模块复位信号,有效表示从设备当前处于复位状态,如果当前lclk_dis或lrst有效,则选择输出2,否则输出对比模块的结果;选择器的输出为bresp,FIFO_A中的id值直接赋给bid,bresp和bid为本装置返回的写应答。
本实施例中,计数模块与AXI总线的写数据通道W相连,写数据通道W中的写最后信号wlast决定计数模块的工作状态。W通道接收到有效数据,且当前wlast低无效时,计数模块从0开始计数,当wlast高有效时,计数模块将当前记录的实际数据传输长度信息写入FIFO_B中,并将计数器清零。
本实施例中,FIFO_A与AXI总线的写命令通道AW相连,AW通道接收到有效的AXI写命令,将awid、awlen信号值存入FIFO_A中。
当FIFO_A和FIFO_B都不为空时,对比模块同时读取这两个FIFO中的值一次,其中FIFO_A中存放的id值赋给bid,并且对比这两个FIFO中存放的长度值是否相等,如果相等,输出0,否则输出2。
利用本装置返回写应答的具体过程为:
1、AW通道接收到有效的AXI写命令,将awid、awlen信号值存入FIFO_A中。命令可以连续、间断接收多条,针对每条写命令,计数模块都进行一次计数。FIFO_A深度取决于可以缓存的命令条数。
2、W通道接收到有效写数据,且当前wlast信号无效,计数器开始从0计数。每收到一个有效数据且wlast信号无效,计数器值加1。
3、W通道接收到有效写数据,且当前wlast信号有效时,计数器停止计数,并将当前计数值写入FIFO_B中。计数器之后将计数值清零。清零后可以继续对下一条写命令的数据长度进行计数。
4、对比模块检测到FIFO_A和FIFO_B都不为空,从这两个FIFO中各读取一次。FIFO_A中的id值直接赋给bid,根据AXI协议规定,写命令和写应答id要一一对应。FIFO_A中和FIFO_B中记录的长度值进行对比,如果一致则输出0,否则输出2。
5、选择器根据当前lclk_dis和lrst信号值,选择将对比模块的输出值或2赋值给bresp。如果lclk_dis或lrst任意有效,则将2赋值给bresp;否则输出对比模块的输出值。
本发明通过lclk_dis和lrst信号监测从设备状态。根据AXI协议规定,主设备模块发起的任意一起写传输,无法暂停或取消,并且从设备模块必须给出应答,否则主设备模块会一直等待。本实施例实时监测从设备状态,如果当前从设备模块处于复位状态或本地时钟关闭状态,不能正确接收总线发来的数据时,接收到写命令和写数据后,自动返回应答2。这样不会造成***卡死。
根据AXI协议规定,写命令通道AW中,一条写命令包含写数据传输长度信息awlen。在写数据通道W中,最后一笔数据传输时,会高有效wlast信号(写最后信号),其他时候,该信号为低。本实施例根据接收的写命令中的数据传输长度与实际数据传输数量进行对比,如若不一致,则返应答2;否则返回应答0。实际数据传输数量由写数据通道的wlast计数得出。写命令的接收顺序与写数据的接收顺序是一一对应的,不会乱序。
本发明根据AXI协议特点,自动提取当前命令要素和从设备状态,生成写应答,并自动回复,不需要与从设备模块进行额外交互,从而不更改从设备模块设计。
以上描述的仅是本发明的基本原理和优选实施例,本领域技术人员根据本发明做出的改进和替换,属于本发明的保护范围。
Claims (5)
1.可自主回复写应答的AXI总线传输装置,其特征在于:本装置连接于AXI总线与本地总线之间,用于代替从设备返回写应答,本装置包括FIFO_A、FIFO_B、计数模块、对比模块以及选择器;FIFO_A与AXI总线相连,用于存放接收的AW通道发送的写命令中的awid和awlen信号,awid表示写命令的ID,每条写命令都有对应的ID值,awlen表示写命令中的写数据传输长度信息;计数模块与AXI总线相连,用于对实际接收到的有效数据进行计数,并将记录的实际数据传输长度信息写入FIFO_B中;FIFO_B的输入端与计数模块的输出端相连,用于存放实际数据接收长度信息;对比模块的输入端分别与FIFO_A和FIFO_B的输出端相连,用于对比FIFO_A与FIFO_B中存放的长度值是否相等,如果相等,输出0,否则输出2,0表示正确,2表示传输错误;选择器的输入端分别与对比模块的输出端和2相连,选择器的使能端连接lclk_dis和lrst,lclk_dis为从设备模块时钟关断信号,有效表示从设备模块时钟关断,lrst为从设备模块复位信号,有效表示从设备当前处于复位状态,如果当前lclk_dis或lrst有效,则选择输出2,否则输出对比模块的结果;选择器的输出为bresp,FIFO_A中的id值直接赋给bid,bresp和bid为本装置返回的写应答。
2.根据权利要求1所述的可自主回复写应答的AXI总线传输装置,其特征在于:计数模块与AXI总线的写数据通道W相连,写数据通道W中的写最后信号wlast决定计数模块的工作状态;W通道接收到有效数据,且当前wlast低无效时,计数模块从0开始计数,W通道每收到一个有效数据且wlast信号无效,计数值加1,当wlast高有效时,计数模块将当前记录的实际数据传输长度信息写入FIFO_B中,并将计数器清零。
3.根据权利要求1所述的可自主回复写应答的AXI总线传输装置,其特征在于:FIFO_A与AXI总线的写命令通道AW相连,AW通道接收到有效的AXI写命令,将awid、awlen信号值存入FIFO_A中。
4.根据权利要求1所述的可自主回复写应答的AXI总线传输装置,其特征在于:当FIFO_A和FIFO_B都不为空时,对比模块同时读取这两个FIFO中的值一次,其中FIFO_A中存放的id值赋给bid,并且对比这两个FIFO中存放的长度值是否相等,如果相等,输出0,否则输出2。
5.根据权利要求1或3所述的可自主回复写应答的AXI总线传输装置,其特征在于:FIFO_A可以连续或者间断地接收多条AXI写命令,针对每条写命令,计数模块都进行一次计数。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910905083.1A CN110659236B (zh) | 2019-09-24 | 2019-09-24 | 可自主回复写应答的axi总线传输装置 |
PCT/CN2019/111413 WO2021056631A1 (zh) | 2019-09-24 | 2019-10-16 | 可自主回复写应答的axi总线传输装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910905083.1A CN110659236B (zh) | 2019-09-24 | 2019-09-24 | 可自主回复写应答的axi总线传输装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110659236A true CN110659236A (zh) | 2020-01-07 |
CN110659236B CN110659236B (zh) | 2023-04-07 |
Family
ID=69038888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910905083.1A Active CN110659236B (zh) | 2019-09-24 | 2019-09-24 | 可自主回复写应答的axi总线传输装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110659236B (zh) |
WO (1) | WO2021056631A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254368A (zh) * | 2021-07-15 | 2021-08-13 | 苏州浪潮智能科技有限公司 | 从axi总线到opb总线的数据写入方法及读取方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101853237A (zh) * | 2010-05-31 | 2010-10-06 | 华为技术有限公司 | 片上***及axi总线下的传输方法 |
US20110106991A1 (en) * | 2009-10-29 | 2011-05-05 | Renesas Electronics Corporation | Bus system and bus control method |
CN102799509A (zh) * | 2012-07-10 | 2012-11-28 | 中国科学技术大学 | 基于双fpga芯片的高带宽可扩展复杂逻辑验证*** |
CN103186492A (zh) * | 2011-12-28 | 2013-07-03 | 联芯科技有限公司 | 基于axi总线的数据一致性保护方法及其*** |
CN103605632A (zh) * | 2013-11-18 | 2014-02-26 | 山东大学 | 一种axi总线与ahb总线的通信方法与装置 |
CN105245398A (zh) * | 2015-09-07 | 2016-01-13 | 上海交通大学 | 面向海量loc信号处理的多通道并行检测*** |
CN107577636A (zh) * | 2017-09-12 | 2018-01-12 | 天津津航技术物理研究所 | 一种基于soc的axi总线接口数据传输***及传输方法 |
US10133549B1 (en) * | 2017-12-04 | 2018-11-20 | Kyocera Document Solutions Inc. | Systems and methods for implementing a synchronous FIFO with registered outputs |
CN109471824A (zh) * | 2018-11-22 | 2019-03-15 | 青岛方寸微电子科技有限公司 | 基于axi总线的数据传输***及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5617429B2 (ja) * | 2010-08-19 | 2014-11-05 | ソニー株式会社 | バスシステムおよびバスシステムと接続機器とを接続するブリッジ回路 |
CN109446132A (zh) * | 2018-12-04 | 2019-03-08 | 青岛方寸微电子科技有限公司 | 一种接口总线装置及数据通信协议 |
-
2019
- 2019-09-24 CN CN201910905083.1A patent/CN110659236B/zh active Active
- 2019-10-16 WO PCT/CN2019/111413 patent/WO2021056631A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110106991A1 (en) * | 2009-10-29 | 2011-05-05 | Renesas Electronics Corporation | Bus system and bus control method |
CN101853237A (zh) * | 2010-05-31 | 2010-10-06 | 华为技术有限公司 | 片上***及axi总线下的传输方法 |
CN103186492A (zh) * | 2011-12-28 | 2013-07-03 | 联芯科技有限公司 | 基于axi总线的数据一致性保护方法及其*** |
CN102799509A (zh) * | 2012-07-10 | 2012-11-28 | 中国科学技术大学 | 基于双fpga芯片的高带宽可扩展复杂逻辑验证*** |
CN103605632A (zh) * | 2013-11-18 | 2014-02-26 | 山东大学 | 一种axi总线与ahb总线的通信方法与装置 |
CN105245398A (zh) * | 2015-09-07 | 2016-01-13 | 上海交通大学 | 面向海量loc信号处理的多通道并行检测*** |
CN107577636A (zh) * | 2017-09-12 | 2018-01-12 | 天津津航技术物理研究所 | 一种基于soc的axi总线接口数据传输***及传输方法 |
US10133549B1 (en) * | 2017-12-04 | 2018-11-20 | Kyocera Document Solutions Inc. | Systems and methods for implementing a synchronous FIFO with registered outputs |
CN109471824A (zh) * | 2018-11-22 | 2019-03-15 | 青岛方寸微电子科技有限公司 | 基于axi总线的数据传输***及方法 |
Non-Patent Citations (1)
Title |
---|
任慈军: "基于AXI总线的DDR数据流量监控器的设计", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254368A (zh) * | 2021-07-15 | 2021-08-13 | 苏州浪潮智能科技有限公司 | 从axi总线到opb总线的数据写入方法及读取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110659236B (zh) | 2023-04-07 |
WO2021056631A1 (zh) | 2021-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1764703B1 (en) | A system for providing access to multiple data buffers of a data retaining and processing device | |
JP2757055B2 (ja) | ディジタル・コンピュータのデータ転送方法 | |
CN100481043C (zh) | 用于处理输入/输出命令的方法、***和程序 | |
CN103064805B (zh) | Spi控制器及通信方法 | |
CN1570907B (zh) | 多处理器*** | |
EP3420462B1 (en) | Bus bridge for translating requests between a module bus and an axi bus | |
US20140173162A1 (en) | Command Queue for Communications Bus | |
CN102841869B (zh) | 一种基于fpga的多通道i2c控制器 | |
CN109656851B (zh) | 一种时间确定的包括多路高速总线通道及共享接口的*** | |
CN102147778A (zh) | 基于半双工串行总线的数据传输***及传输控制方法 | |
CN102073611B (zh) | 一种i2c总线控制***及方法 | |
CN104714907A (zh) | 一种pci总线转换为isa和apb总线设计方法 | |
US11573919B2 (en) | Multi-slave serial communication | |
CN103235767B (zh) | 一种主从mii管理接口串行通信方法 | |
CN110659236B (zh) | 可自主回复写应答的axi总线传输装置 | |
CN105550131B (zh) | 一种基于有限状态机和arinc659总线的接口数据处理***及方法 | |
CN103870415A (zh) | 用于在总线上执行事务的方法及*** | |
CN113946480A (zh) | 一种i2c总线的检测装置和方法 | |
CN116414767B (zh) | 一种对基于axi协议乱序响应的重排序方法及*** | |
US4612541A (en) | Data transmission system having high-speed transmission procedures | |
CN100514318C (zh) | 桥接器以及电子***的数据清理方法 | |
CN101196859B (zh) | 直接访问存储装置及直接访问存储操作方法 | |
CN113934671B (zh) | 一种接口控制芯片及网络设备 | |
US6941408B2 (en) | Bus interface system with two separate data transfer interfaces | |
CN114520729B (zh) | 一种通信隔离***及通信隔离的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |