CN115794722B - 一种AXI outstanding接口转换实现方法 - Google Patents
一种AXI outstanding接口转换实现方法 Download PDFInfo
- Publication number
- CN115794722B CN115794722B CN202310097186.6A CN202310097186A CN115794722B CN 115794722 B CN115794722 B CN 115794722B CN 202310097186 A CN202310097186 A CN 202310097186A CN 115794722 B CN115794722 B CN 115794722B
- Authority
- CN
- China
- Prior art keywords
- data
- fifo
- buf
- read
- request
- 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.)
- Active
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 53
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000004044 response Effects 0.000 claims abstract description 44
- 230000005540 biological transmission Effects 0.000 claims abstract description 37
- 238000012545 processing Methods 0.000 claims abstract description 22
- 238000012937 correction Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 8
- 229910002056 binary alloy Inorganic materials 0.000 claims description 2
- 238000012546 transfer Methods 0.000 claims description 2
- 238000011144 upstream manufacturing Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
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
- Memory System Of A Hierarchy Structure (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种AXI outstanding接口转换实现方法包括读操作各通道响应处理:主端读请求根据从端请求规格修正后经缓存fifo_ext 0将其发送至从端;写操作各通道响应处理:主端对写请求根据从端请求规格修正后经缓存fifo_ext 0将其发送至从端;写数据转换逻辑在主端写请求发出后,完成一次写操作的转换响应。本发明通过实现outstanding转换后每周期一个数据连续输出,达到理论极限速率的方式以及通过适当调整支持访问地址非对齐的方式,使得本发明支持对任意64b访问,达到对传输通道和存储两方面的传输效率提升的效果。
Description
技术领域
本发明涉及高速大数据传输处理技术领域,具体为一种AXI outstanding接口转换实现方法。
背景技术
Axi 是一种芯片内部、有广泛应用、用于高速大数据传输的数据传输总线接口协议(通俗理解就是定义了一堆信号来实现读写操作怎么做,区别是按axi这种方式定义传输的又多又快);
Outstaning是axi总线内部一个功能特性,是axi总线做到高速大数据传输的关键之一。
因此outstanding功能具体实现的效果对最终传输速率有着重要影响。
axi总线定义信号是一种规范形式,具体实现可能有多个版本都遵循axi规范,但是实现的效果上有差异,整个总线分为写地址、写数据、写响应、读地址、读数据 5个通道组成,协议规定了每个通道有多少信号和它们特定的含义和功能。但是目前而言对读写操作分析可知,按照地址〉数据〉响应流程完成一次传输事务后再开启下一次事务的方法会效率很低。
在对业界常用axi ip设计(例如synopsys 公司开发的designware)使用过程中发现其outstanding转换效率存在极大损失,在速率敏感的需求中甚至无法满足设计需求,举例说明:参见说明书附图图1,(接口转换逻辑),主端连续发送size=64位,length=32的读请求,从端为length=8 size=256的数据返回,常见IP在从端返回连续的情况下主端(即从端不会对主端速率产生不利影响)只能做到每2个周期返回一个64位数,这样在主端相同时间内得到的有效数据直接减半,造成极大的速率损失。
为此,本发明提出一种硬件实现方案支持outstanding下转换连续输出,避免速率损失。
发明内容
针对现有技术存在的不足,本发明目的是提供一种AXI outstanding接口转换实现方法,通过实现outstanding转换后每周期一个数据连续输出,达到理论极限速率的方式,以及在满足转换效率的前提下,通过适当调整支持访问地址非对齐的方式,使得本发明支持对任意64b访问。以解决上述背景技术中提出的问题。
为了实现上述目的,本发明是通过如下的技术方案来实现:一种AXI outstanding接口转换实现方法,包括
读操作各通道响应处理
主端读请求根据从端请求规格修正后经缓存fifo_ext 0将其发送至从端;同时主端保留每次请求中标记burst首尾的部分关键信息存入缓存fifo_ext2和buf_ext 2;
从端收到所述读请求后返回响应数据并经缓存fifo_ext 1和buf_ext1 送至读数据转换逻辑;
读数据转换逻辑将响应数据按主端数据位宽拆分后,根据保留的burst标记信息完成对burst传输首尾校正后输出至主端进行接收,完成一次读操作的转换响应;
多次请求通过上述处理各环节并行流水运行实现;
写操作各通道响应处理
主端对写请求根据从端请求规格修正后经缓存fifo_ext 0将其发送至从端;同时主端保留每次请求中标记burst首尾的部分关键信息存入缓存fifo_ext2和buf_ext 2送至写数据转换逻辑;
写数据转换逻辑在所述主端写请求发出后,接收由主端发出的写数据,且对所述写数据按从端数据位宽拼接后,根据保留的burst标记信息完成对burst传输首尾校正,经缓存fifo_ext 1输出给从端,完成一次写操作的转换响应。
作为对本发明中所述一种AXI outstanding接口转换实现方法的改进,所述burst部分关键信息为只保留地址低4-3原始值和awid。
与现有技术相比,本发明的有益效果:
本发明通过实现outstanding转换后每周期一个数据连续输出,达到理论极限速率的方式以及在满足转换效率的前提下,通过适当调整支持访问地址非对齐的方式,使得本发明支持对任意64b访问,达到对传输通道和存储两方面的传输效率提升的效果。
附图说明
参照附图来说明本发明的公开内容。应当了解,附图仅仅用于说明目的,而并非意在对本发明的保护范围构成限制,在附图中,相同的附图标记用于指代相同的部件。其中:
图1为现有技术中接口转换逻辑框图;
图2为本发明一实施例中所提出的axi总线中写地址、写数据、写响应、读地址、读数据 5个通道配合完成数据的读写传输时的写操作原理框图;
图3为本发明一实施例中所提出的axi总线中写地址、写数据、写响应、读地址、读数据5个通道配合完成数据的读写传输时的读操作原理框图;
图4为本发明一实施例中所提出的axi总线传输通道中Outstanding能力值N计算的原理示意图;
图5为本发明一实施例中所提出的对fifo进行扩展以达到fifo主动方式工作的原理示意图一;
图6为本发明一实施例中所提出的对fifo进行扩展以达到fifo主动方式工作的原理示意图二;
图7为本发明一实施例中所提出的对fifo进行扩展以达到fifo主动方式工作的原理示意图三;
图8为本发明一实施例中所提出的读操作各通道处理的整体原理示意图;
图9为本发明一实施例中所提出的读操作各通道处理时的读数据转换逻辑处理原理示意图一;
图10为本发明一实施例中所提出的写操作各通道处理的整体原理示意图;
图11为本发明一实施例中所提出的在对读数据转换逻辑的处理中设计一个buf缓存的原理示意图。
具体实施方式
容易理解,根据本发明的技术方案,在不变更本发明实质精神下,本领域的一般技术人员可以提出可相互替换的多种结构方式以及实现方式。因此,以下具体实施方式以及附图仅是对本发明的技术方案的示例性说明,而不应当视为本发明的全部或者视为对本发明技术方案的限定或限制。
以下结合附图对本发明做进一步详细说明,但不作为对本发明的限定。
作为对本发明技术构思以及实现原理的理解:
首先介绍axi和outstanding概念,在本发明技术方案中按照基本组件>基本组件针对性调整>如何组织形成整体设计和整体设计如何运行顺序进行描述:
Axi总线是一种面向高性能、高带宽、低延迟的片内总线,在对速率有要求的大数据传输中有广泛应用;整个总线分为写地址、写数据、写响应、读地址、读数据 5个通道组成,协议规定了每个通道有多少信号和它们特定的含义和功能,5个通道配合完成数据的读写传输。
如图2所示:对写操作的理解
首先主端通过写地址通道发出地址和控制信息,指明本次请求的地址和其他请求参数(至少包括burst 是否开启,burst length);随后主端通过写数据通道发出写数据,非burst模式一个地址一个数据,burst模式一个地址n各数据(n=length);最后从端接收完地址和匹配的数据后就会通过写响应通道发出响应表明本次传输结束;
而传输过程中写地址和写数据通道上地址和数据先后关系并不作约束,只要求地址和数据按照burst模式和length设定匹配即可,举例说明:要发2次写操作,第一次非burst,第二次burst length=8,传输中可以先发数据,只要求保证最后地址接收2个,数据接收1+8=9个。对于写响应则要求一定要接收完全一次写事务匹配的全部数据后才能发出,如 burst模式length为8表示要接收完8个数据才可以发写响应。
如图3所示:对读操作的理解
首先主端通过读地址通道发出地址和控制信息,指明本次请求的地址和其他请求参数(至少包括burst 是否开启,burst length);从端接收地址后就会通过读数据通道发出匹配数量的读数据,当最后一个数据返回表明本次传输结束;
而传输过程中要求读数据一定要在对应读地址收到后才能发出,需要说明的是,写操作3个通道和由读操作2个通道完全独立,即读写操作可以互补干涉并行进行。
为此,就可以基于上述读写操作分析可知,按照地址〉数据〉响应流程完成一次传输事务后,再开启下一次事务的方法会效率很低。
如图4所示,对outstanding能力的理解
axi总线允许地址和数据在响应未反馈之前发出,这样就有足够多的地址、数据处于传输路径上而不至于让通道闲置,在从端看来连续事务中后面事务不用因前次事务写响应/读数据位返回而等待,从而实现传输效率的极大提升,这一能力被称为outstanding能力,通道上同时最大存在未响应addr的个数即为outstanding能力值。举例来说:如图4所示,通道中有3个请求地址(addr ... 假定没有)1个响应,表示outstanding能力值为3-1=2,Outstanding能力值N越大意味着后N-1次事务的地址数据因第一次事务响应未反馈而等待的制约不存在,可以提前进入传输通道,提早到达从端,从而获得效率提升,但需要注意实际实现中从端不可能拥有无限空间接收,因而max N会被具体实现限制为一定值。
此外考虑存储层面,以常见存储形式ddr为例分析,首先ddr本身为了方式数据错误需要不时充电,充电期间如果有请求需要等待;其次存储中每一数据比特位是以行列阵列方式存放,访问时需要进行行列选通才能获得想要的数据,行列选通要再花费一些时间,这些顶层实现制约表现在访问中就会看到每次请求要经历一定的响应开销(数十到数百时钟周期)才能返回数据,如果请求事务能够尽早到达,那么后面事务的响应开销和前面事务的开销就会有一定重合,从而降低平均响应开销,从而提升存储的响应速率。
为此,可以理解的是,如图1,axioutstanding能力可以对传输通道和存储两方面的传输效率起到提升效果是axi 得以解决高速大速率数据传输的核心原因之一。
而为实现上述技术构思,以及解决现有的技术方案缺陷,本发明实现outstanding转换后每周期一个数据连续输出,达到理论极限速率的方式,以及在满足转换效率的前提下,通过适当调整支持访问地址非对齐的方式,使得本发明支持对任意64b访问。
作为本发明的一实施例,提出一种AXI outstanding接口转换实现方法,包括:
读操作各通道响应处理
如图8所示,可以理解的是,作为本发明的一实施例,假定主从端均为burst 模式工作,主端数据通道位宽64位数,从端数据通道位宽为256位(意味着从端每一个数据对应4个主端数据);而outstanding转换就是要求主端连续发出读请求转换到从端,获得相应从端读数据再转换为主端读数据。具体实现如图8所示,流程如下:
S1,主端读请求根据从端请求规格修正后经缓存fifo_ext 0将其发送至从端:
基于上述技术构思,在本发明的一实施例中,具体实施方式包括:
S1-1,定义读地址通道的地址修正原则:
设主端地址A对应一个64位数据data_m64;从端地址对应一个256位数据data_s256;主从端地址位宽相同(地址2进制低5位恒为0);将主端地址A低4-3原始值改为0后,所对应的256位数据一定是包含主端地址A所对应的64位数据data_m64,其中的低4-3原始值为256位数据data_m256中64位数据data_m64的编号(256位数据中从低到高4个64位数据依次编号0-4);按此原则即可完成地址修正,且该修正方法可拓展至任意位宽间切换对应;
最后,对读地址通道中的突发传输长度length进行修正:
对突发传输长度进行修正 length直接根据主从数据位宽比修正length值,例如本方案主端length 32,对应从端length为8(主从数据位宽比为256/64=4),具体修正方法是把主端length二进制右移,右移位数为数据位宽比求,以2位底的对数;请求修正后会不断进入fifo_ext缓存,fifo_ext内部有空就可以一直接收;fifo_ext非空就会发出请求给从端,至此完成读地址通道处理。接下来
S2,主端保留每次请求中标记burst首尾的部分关键信息存入缓存fifo_ext2和buf_ext 2;从端收到读请求后返回响应数据并经缓存fifo_ext 1和buf_ext1 送至读数据转换逻辑。
基于上述技术构思,可以理解的是,此步骤是进行读通道处理,即,从端读数据返回直接写入顺序连接的fifo_ext、buf_ext,fifo有空就可以一直接收数据,同时fifo非空会主动发出一个数据给读数据转换逻辑处理。
如图9所示,需要说明的是,读数据转换逻辑处理的实现方式是:
读数据转换逻辑将响应数据按64位拆分后,根据保留的部分信息完成burst传输首尾校正后输出至非主端进行接收,完成读操作处理。
在本发明的一实施例中,首先需要考虑burst突发传输访问模式下数据是否正确和数据个数的问题,举例说明,从端首次返回9个256位数,按返回顺序依次编号0-9,对应拆分64位依次编号0-35,主端请求地址对应任意64位,即主端请求首位并不一定是0,这里假设从2开始(0,1数据无效),因此需要保留地址低4-3位用于标识主端请求地址起始点;确定起始点后burst访问还规定了每次事务数据的个数,因此还需保留length确定终点(设length=32 则34,35数据无效);由此需要在读地址通道向fifo_ext 0中每放入一个请求的同时也需要向fifo_ext 2中放入对应请求的地址4-3位(主从数据位宽决定)、length和arid(axi协议赋予每次burst事务的id值,用于区分不同burst)用于指导数据转换环节确定每次burst的起终点;
为此,本申请提出的读数据转换逻辑处理是读请求缓存fifo_ext0用于发出地址请求给从端,burst关键信息缓存fifo_ext2用于配合给主端的读数据返回校正,两者处理的下游独立以不同速率运行,上游来自相同的主端地址接口,要求在fifo_ext0和fifo_ext2同时非满时才能接收新的主端地址请求,从而避免下游运行速率差异带来的单边存放错误,比如(ifo ext 2缺失会导致对应返回数据的起终点无法修正,fifo ext 1缺失会导致修正作用在不匹配的数据上)如下表所示:
如图9所示,在解决数据是否正确和数据个数的问题后,读数据转换逻辑的实现具体方式是:
①在请求参数buf_ext 2、返回数据buf_ext 1 和主端接收receive均有效时输出一个64位数;②addr 4-3位决定首位64位数在256位数中的编号,从上图表中可知在输出过程中每输出一个64位数该值加一即为正确对应的编号;③每输出一个64位数length减一,待计数为0(表示burst最后一个数)时输出rlast,以满足axi总线协议要求;④每一个64输出位数对应rid均复制arid,即相同burst内数据对应rid均等于arid,以满足axi总线协议要求;⑤Addr 4-3计数为0表示256位为0,length计数为0表示busrt最后一个数,2种情况均表示当前256位数据被使用完可以请求新的256位数据。
至此读操作处理完成,实际实施时,可多次请求通过上述处理各环节并行流水运行实现即可;接下来
写操作各通道响应处理
可以理解的是,作为本发明的一实施例,如图10-图11所示,写操作各通道处理的具体实现方式为:
S3,主端对写请求根据从端请求规格修正后经缓存fifo_ext 0将其发送至从端;
S4,同时主端保留每次请求中标记burst首尾的部分关键信息存入缓存fifo_ext2和buf_ext 2送至写数据转换逻辑;
S5,写数据转换逻辑在主端写请求发出后,接收由主端发出的写数据,且对写数据按从端数据位宽拼接后,根据保留的burst标记信息完成对burst传输首尾校正,经缓存fifo_ext 1输出给从端,完成一次写操作的转换响应;其中,需要说明的是,主端、从端每发送完一次burst操作后,会发出对应写响应;至此,完成读操作处理。
如图5-图7所示,本发明考虑接收端可能无法及时接收,需要把无法接收的请求暂存同时保留请求的顺序不能变的问题,为此,还提出了对基础fifo进行改造使其变为‘主动方式’工作。
为更好理解本发明提出的技术构思,首先介绍基本组件fifo和buf:fifo内部有一块确定容量的小存储,存储数据个数记作fifo 深度值:
例,存8个数深度值为8,fifo对外有2套接口,一边只写,一边只读,读写过程不需要对应地址,只关注顺序遵循‘先入先出’原则,
如图5,fifo深度为4,当wr_vld为1时wdata即为有效写入数据,图示含义依次连续写入{3、4、7、2}之后,当rd_vld有效即表示一次读,因为‘先入先出’原则,则连读4次得到的数据顺序和写入顺序一致依次是{3、4、7、2},工作中读写端可能同时操作,写一次深度减一,读一 次深度加一,为了避免出现读空、写满情况发生fifo还会输出2个标志信号full表示fifo填满数据,empty表示fifo中没有数据;
同时,为解决接收端可能无法及时接收,需要把无法接收的请求暂存同时保留请求的顺序不能变的问题,本发明还提出了对Buffer缓存的扩展,如图6所示,Buf可以看成是深度为1的fifo,因为深度为1其对外接口简化为一个buf_vld标记,为1表示buf中数据buf_data有效;buf_vld有效时不能再写,避免覆盖错误,有效标志一直等到读有效到来结束,表示buf中数据被拿走。需要说明的是,在图6中, 现有的基础fifo工作(图6中的左部分),是以‘被动方式’工作,即外部有读请求才会输出读数据,这样rdata输出形式最快也是‘data,空,data,空’,而经历本发明提出的改进后,fifo主动发出数据,后级一旦使用立即补上新的数据,rdata输出形式变为‘data,data,data’。
基于上述技术构思,本发明对fifo进行扩展的实现方式为:
为rdata读数据设计rdata_vld标志信号以标记rdata读数据有效性:该信号在读数据产生时(rd_vld)有效一直到数据被接收(receive,表示后级接收)为止;
在fifo非空且fifo还未输出过读数据时,对fifo进行读,产生rd_vld之一;
在fifo非空且发出读数据被接收时,对fifo进行读,产生rd_vld之二。
在具体实施时,效果是:若fifo最开始一旦非空就会主动先读出一个数据输出,一旦该数据被接收的同时会立即读取输出下一个数据保证输出连续,如果数据被接收同时fifo为空则不请求,等待fifo非空重新处理。
同时,如图7所示,基于上述技术构思,本发明对Buffer缓存进行扩展的实现方式为:
借鉴扩展fifo思路在fifo_ext基础上添加buf_ext,其中buf_vld标志信号标记buf数据有效性,该信号在有效条件有2种:
fifo输出rdata_vld标志信号有效且buf_vld标志信号无效时,fifo输出rdata_vld标志信号与buf_vld标志信号均有效且其后级receive有效;其中,
buf_vld标志信号有效会维持到数据被后级receive接收为止;
为buf数据设计buf_vld标志信号以标记buf数据有效性,buf_vld标志信号在有效rdata读数据写入时有效,且一直到数据被后级receive接收为止;
fifo输出rdata_vld标志信号有效且buf_vld标志信号无效,产生buf_vld之一;
rdata_vld标志信号与buf_vld标志信号均有效且其后级receive有效,产生buf_vld之二;
故而,从fifo_ext和buf_ext整体看,buf_ext等同于fifo_ext深度加一,但是相比增加深度额外增加buf的好处在于buf_data中可以拆分使用,是保障最终outstanding转换后连续输出的必要设计。
至此,可以理解的是,为解决业界常用axi ip设计(例如synopsys 公司开发的designware)使用过程中发现其outstanding转换效率存在极大损失,在速率敏感的需求中甚至无法满足设计需求的问题时,本发明通过实现outstanding转换后每周期一个数据连续输出,达到理论极限速率的方式,以及在满足转换效率的前提下,通过适当调整支持访问地址非对齐的方式,使得本发明支持对任意64b访问达到对传输通道和存储两方面的传输效率起到提升的效果。
本发明的技术范围不仅仅局限于上述说明中的内容,本领域技术人员可以在不脱离本发明技术思想的前提下,对上述实施例进行多种变形和修改,而这些变形和修改均应当属于本发明的保护范围内。
Claims (6)
1.一种AXI outstanding接口转换实现方法,其特征在于:包括:
读操作各通道响应处理:
主端读请求根据从端请求规格修正后,经缓存fifo_ext 0将其发送至从端;同时主端保留每次请求中标记burst首尾的部分关键信息存入缓存fifo_ext2和buf_ext 2;
从端收到所述读请求后返回响应数据,并经缓存fifo_ext 1和buf_ext1 送至读数据转换逻辑;
读数据转换逻辑将响应数据按主端数据位宽拆分后,根据保留的burst标记信息完成对burst传输首尾校正后,输出至主端进行接收,完成一次读操作的转换响应;
写操作各通道响应处理:
主端对写请求根据从端请求规格修正后,经缓存fifo_ext 0将其发送至从端;同时主端保留每次请求中标记burst首尾的部分关键信息存入缓存fifo_ext2和buf_ext 2,送至写数据转换逻辑;
写数据转换逻辑在所述主端写请求发出后,接收由主端发出的写数据,且在对所述写数据按从端数据位宽拼接后,根据保留的burst标记信息完成对burst传输首尾校正,经缓存fifo_ext 1输出给从端,完成一次写操作的转换响应。
2.根据权利要求1所述的一种AXI outstanding接口转换实现方法,其特征在于:fifo_ext 为经扩展后进行主动方式工作的fifo,其中,fifo进行扩展的实现方式为:
为rdata读数据设计rdata_vld标志信号以标记rdata读数据有效性:其中,
rdata_vld标志信号在有效读数据写入fifo时有效,且一直到fifo中全部读数据被接收为止;
在fifo非空且fifo还未输出过读数据时,对fifo进行读,产生rd_vld之一;
在fifo非空且发出读数据被接收时,对fifo进行读,产生rd_vld之二。
3.根据权利要求1所述的一种AXI outstanding接口转换实现方法,其特征在于:buf_ext 为经扩展后的Buffer缓存,其中,buf_ext进行扩展的实现方式为:
为buf数据设计buf_vld标志信号以标记buf数据有效性,则此buf_vld标志信号存在的有效条件为:
fifo输出rdata_vld标志信号有效且buf_vld标志信号无效时,fifo输出rdata_vld标志信号与buf_vld标志信号均有效且其后级receive有效;其中,
buf_vld标志信号有效维持到数据被后级receive接收为止;
为buf数据设计buf_vld标志信号以标记buf数据有效性,buf_vld标志信号在有效rdata读数据写入时有效,且一直到数据被后级receive接收为止;
fifo输出rdata_vld标志信号有效且buf_vld标志信号无效,产生buf_vld之一;
rdata_vld标志信号与buf_vld标志信号均有效且其后级receive有效,产生buf_vld之二。
4.根据权利要求1所述的一种AXI outstanding接口转换实现方法,其特征在于:
在读操作各通道中的读地址通道接收主端的读请求后,对主端读请求根据从端请求规格进行修正后写入fifo_ext缓存,fifo_ext内部有空则一直接收,fifo_ext非空就会发出读请求给从端,其具体实现方式为:
首先,定义读地址通道的地址修正原则:
设主端地址A对应一个64位数据data_m64;从端地址对应一个256位数据data_s256;且主从端地址位宽相同;
将主端地址A低4-3原始值改为0,所对应的256位数据data_s256包含主端地址A所对应的64位数据data_m64,其中,所述的低4-3原始值为256位数据data_s256中64位数据data_m64的编号;
最后,对读地址通道中的突发传输长度length进行修正:
根据主从数据位宽比修正length值:将主端length二进制右移,其中,右移位数为主从数据位宽比求以2位底的对数。
5.根据权利要求1所述的一种AXI outstanding接口转换实现方法,其特征在于:读请求缓存fifo_ext0用于发出地址请求给从端,burst关键信息缓存fifo_ext2用于配合给主端的读数据返回校正,两者处理的下游独立以不同速率运行,上游来自相同的主端地址接口,其必须在fifo_ext0和fifo_ext2同时非满时才能接收新的主端地址请求,从而避免下游运行速率差异带来的单边存放错误。
6.根据权利要求1所述的一种AXI outstanding接口转换实现方法,其特征在于:标记burst首尾的部分关键信息为只保留地址低4-3原始值和awid,其中,awid表示为写地址通道主机写地址ID,为AXI协议规定的一个参数,用于给写地址请求添加区别标志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310097186.6A CN115794722B (zh) | 2023-02-10 | 2023-02-10 | 一种AXI outstanding接口转换实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310097186.6A CN115794722B (zh) | 2023-02-10 | 2023-02-10 | 一种AXI outstanding接口转换实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115794722A CN115794722A (zh) | 2023-03-14 |
CN115794722B true CN115794722B (zh) | 2023-05-16 |
Family
ID=85430845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310097186.6A Active CN115794722B (zh) | 2023-02-10 | 2023-02-10 | 一种AXI outstanding接口转换实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115794722B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116361215B (zh) * | 2023-05-31 | 2023-07-25 | 北京耐数电子有限公司 | 一种AXI4-Lite总线远程扩展方法 |
CN116795746B (zh) * | 2023-08-29 | 2023-12-19 | 北京象帝先计算技术有限公司 | 数据传输装置、系统、组件、电子设备及方法 |
CN117349214B (zh) * | 2023-12-05 | 2024-02-09 | 天津国芯科技有限公司 | 一种具备拆包组包能力的axi协议转串行通讯协议的转换桥 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108496161A (zh) * | 2017-09-29 | 2018-09-04 | 深圳市大疆创新科技有限公司 | 数据缓存装置及控制方法、数据处理芯片、数据处理系统 |
CN108701102A (zh) * | 2017-10-31 | 2018-10-23 | 深圳市大疆创新科技有限公司 | 直接存储器访问控制器、数据读取方法和数据写入方法 |
IT202000006322A1 (it) * | 2020-03-25 | 2021-09-25 | Stmicroelectronics Application Gmbh | Sistema di elaborazione comprendente un’interfaccia periferica seriale con code, relativo circuito integrato, dispositivo e procedimento |
CN111984562B (zh) * | 2020-09-07 | 2022-05-10 | 苏州盛科通信股份有限公司 | 寄存器突发访问控制的方法、电子设备及存储介质 |
CN114327975A (zh) * | 2021-12-24 | 2022-04-12 | 山东云海国创云计算装备产业创新中心有限公司 | 片上系统 |
-
2023
- 2023-02-10 CN CN202310097186.6A patent/CN115794722B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115794722A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115794722B (zh) | 一种AXI outstanding接口转换实现方法 | |
WO2021056632A1 (zh) | 基于axi总线的主机设备数据传输扩展方法 | |
AU721764B2 (en) | High performance universal multi-port internally cached dynamic random access memory system, architecture and method | |
US8407427B2 (en) | Method and system for improving serial port memory communication latency and reliability | |
WO2021207919A1 (zh) | 控制器、存储器件访问系统、电子设备和数据传输方法 | |
CN109656851B (zh) | 一种时间确定的包括多路高速总线通道及共享接口的系统 | |
US7970959B2 (en) | DMA transfer system using virtual channels | |
CN108683536B (zh) | 异步片上网络的可配置双模式融合通信方法及其接口 | |
WO2023160192A1 (zh) | 一种用于总线的互联装置 | |
CN116089343A (zh) | 一种基于axi的数据存储方法、装置、存储介质及设备 | |
US20240021239A1 (en) | Hardware Acceleration System for Data Processing, and Chip | |
CN112882986B (zh) | 一种带有超节点以及超节点控制器的众核处理器的应用方法 | |
WO2024113997A1 (zh) | 一种fsi主控制器及其端口路由装置和方法 | |
WO2024007914A1 (zh) | Sram控制系统、方法、fpga芯片及电子设备 | |
CN116303221B (zh) | 一种多核处理器片上网络系统的数据传输方法 | |
JP2023547185A (ja) | Serdesインタフェース回路 | |
US7574582B2 (en) | Processor array including delay elements associated with primary bus nodes | |
CN218038582U (zh) | Sram控制系统、fpga芯片及电子设备 | |
CN110008162B (zh) | 一种缓冲接口电路及基于该电路传输数据的方法和应用 | |
US7047385B1 (en) | High-speed memory for use in networking systems | |
CN116150077A (zh) | 一种PCIe交换电路的出端口事务处理装置及方法 | |
CN115579036A (zh) | 一种基于fpga的ddr连续存储电路及其实现方法 | |
WO2021259230A1 (zh) | 模块间通信方法及系统 | |
CN114443524A (zh) | 一种数据传输方法、系统、存储介质及设备 | |
US20210050047A1 (en) | Memory, memory chip and memory data access method |
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 |