一种Avalon总线转Axi4总线的方法技术

技术编号:24888562 阅读:28 留言:0更新日期:2020-07-14 18:15
本申请公开了一种Avalon总线转Axi4总线的方法,包括:当Avalon总线为Avalon_st总线时,接收Avalon_st总线数据,并对接收到的Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据;当Avalon总线为Avalon_mm总线时,接收Avalon_mm总线各通道传输的信号并将信号组帧后存入异步FIFO,且当Axi4总线对应的设备准备就绪时,从异步FIFO中读取信号,并依据Axi4总线的时序关系将信号输出至Axi4总线的相应通道。该方法能够无延时、跨时钟域的实现Avalon总线转Axi4总线,在跨平台通用设计或代码移植方案中实现快速设计和匹配接口的工作。

【技术实现步骤摘要】
一种Avalon总线转Axi4总线的方法
本申请涉及数据转换
,特别涉及一种Avalon总线转Axi4总线的方法;还涉及一种Avalon总线转Axi4总线的装置、设备以及计算机可读存储介质。
技术介绍
Avalon总线是由Altera开发的一种内部互联的总线技术,可由QSYS工具自动生成无需用户干预,其经常被作为系统处理器与外设之间理想的内联总线。同时,Avalon总线具有独立地址、数据以及控制线,支持128位以内的数据宽度,支持同步操作,且不需要复杂的握手/应答机制等优势,因此Avalon总线被灵活广泛应用。Axi4总线是AMBA公司提出的一种面向高性能、高宽带、低延时的片内总线,其主要特点是地址/控制以及数据均独立,支持不对齐的数据传输,同时其将读写数据通道分离开,支持显著的传输访问和乱序访问。目前,在大多数的FPGA工程设计中,互联总线通常会统一为一种总线协议,主流的即为Avalon总线或Axi4总线。使用不同的厂家芯片、开发工具,互联总线会不同。若考虑多平台通用设计,代码模块需要考虑两种总线接口,而开发支持两种总线的接口会严重影响开发效率和速度,增加产品的研发周期。或者,跨平台调用已有功能模块时,还需修改代码以匹配总线接口。针对上述问题,Xilinx芯片厂家提供了一种名为amm_axi_bridge的IP,由此实现avalon_mm总线(Avalon总线的内存映射模式)到Axi4总线的转换。然而,该IP仅支持在Xilinx的平台上使用,有较大延时,且不支持跨时钟域的转换,使用局限性较大。有鉴于此,如何解决上述技术问题已成为本领域技术人员亟待解决的技术问题
技术实现思路
本申请的目的是提供一种Avalon总线转Axi4总线的方法,能够无延时、跨时钟域的实现Avalon总线转Axi4总线,在跨平台通用设计或代码移植方案中实现快速设计和匹配接口的工作。本申请的另一目的是提供一种Avalon总线转Axi4总线的装置、设备以及计算机可读存储介质,均具有上述技术效果。为解决上述技术问题,本申请提供了一种Avalon总线转Axi4总线的方法,包括:当Avalon总线为Avalon_st总线时,接收Avalon_st总线数据,并对接收到的所述Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据;当所述Avalon总线为Avalon_mm总线时,接收Avalon_mm总线各通道传输的信号并将所述信号组帧后存入异步FIFO,且当Axi4总线对应的设备准备就绪时,从所述异步FIFO中读取所述信号,并依据所述Axi4总线的时序关系将所述信号输出至所述Axi4总线的相应通道。可选的,所述对接收到的所述Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据,包括:将所述Avalon_st总线数据中的数据包结束标识、数据有效标识以及设备就绪状态标识的值赋值给Axi4_st总线的相应接口;将所述Avalon_st总线数据中的数据以字节为单位进行高低位逻辑取反后赋值给所述Axi4_st总线的相应接口;基于所述Avalon_st总线数据中的无效字节位置得到有效字节位置,并将所述有效字节位置的值赋值给所述Axi4_st总线的相应接口。可选的,所述Avalon_mm总线各通道传输的信号包括读指令、读地址以及猝发长度或写指令、写地址以及猝发长度或写指令、写数据以及猝发长度。可选的,还包括:根据所述异步FIFO的深度参数以及已存储数据情况,输出waitrequest信号至所述Avalon_mm总线。可选的,还包括:修改所述异步FIFO的所述深度参数。为解决上述技术问题,本申请还提供了一种Avalon总线转Axi4总线的装置,包括:Avalon_st总线转Axi4_st总线模块,用于当Avalon总线为Avalon_st总线时,接收Avalon_st总线数据,并对接收到的所述Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据;Avalon_mm总线转Axi4总线模块,用于当所述Avalon总线为Avalon_mm总线时,接收Avalon_mm总线各通道传输的信号并将所述信号组帧后存入异步FIFO,且当Axi4总线对应的设备准备就绪时,从所述异步FIFO中读取所述信号,依据所述Axi4总线的时序关系将所述信号输出至所述Axi4总线的相应通道。可选的,还包括:反馈模块,用于根据所述异步FIFO的深度参数以及已存储数据情况,输出waitrequest信号至所述Avalon_mm总线。可选的,还包括:修改模块,用于修改所述异步FIFO的所述深度参数。为解决上述技术问题,本申请还提供了一种Avalon总线转Axi4总线的设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上所述的Avalon总线转Axi4总线的方法的步骤。为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的Avalon总线转Axi4总线的方法的步骤。本申请所提供的Avalon总线转Axi4总线的方法,包括:当Avalon总线为Avalon_st总线时,接收Avalon_st总线数据,并对接收到的所述Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据;当所述Avalon总线为Avalon_mm总线时,接收Avalon_mm总线各通道传输的信号并将所述信号组帧后存入异步FIFO,且当Axi4总线对应的设备准备就绪时,从所述异步FIFO中读取所述信号,并依据所述Axi4总线的时序关系将所述信号输出至所述Axi4总线的相应通道。可见,本申请所提供的Avalon总线转Axi4总线的方法,在Avalon总线为Avalon_st总线情况下,接收Avalon_st总线数据后直接对接收到的Avalon_st总线数据进行逻辑处理并输出相应的Axi4_st总线数据,从而实现Avalon_st总线向Axi4_st总线无延时的转换。另外,在Avalon总线为Avalon_mm总线情况下,将接收到Avalon_mm总线各通道传输的信号存入异步FIFO,并当Axi4总线对应的设备准备就绪时,从异步FIFO中读取信号并输出,从而达到跨时钟域的完成Avalon_mm总线向Axi4总线的转换。同时,跨平台设计时,可只规划Avalon总线,当需要Axi4总线时,采用本申请所提供的方法即可实现Avalon总线向Axi4总线的转换。并且,跨平台调用已有功能代码时,采用本申请所提供的方法实现Avalon总线向Axi4总线的转换,可以有效减少接口调试工作,提高开发效率,更高效的验证功能代码在多平台的性能。本申请所提供的Avalon总线转Axi4总线的装置、设备以及计算机可读存储介质均具有上述技术效果。附图说明<本文档来自技高网
...

【技术保护点】
1.一种Avalon总线转Axi4总线的方法,其特征在于,包括:/n当Avalon总线为Avalon_st总线时,接收Avalon_st总线数据,并对接收到的所述Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据;/n当所述Avalon总线为Avalon_mm总线时,接收Avalon_mm总线各通道传输的信号并将所述信号组帧后存入异步FIFO,且当Axi4总线对应的设备准备就绪时,从所述异步FIFO中读取所述信号,并依据所述Axi4总线的时序关系将所述信号输出至所述Axi4总线的相应通道。/n

【技术特征摘要】
1.一种Avalon总线转Axi4总线的方法,其特征在于,包括:
当Avalon总线为Avalon_st总线时,接收Avalon_st总线数据,并对接收到的所述Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据;
当所述Avalon总线为Avalon_mm总线时,接收Avalon_mm总线各通道传输的信号并将所述信号组帧后存入异步FIFO,且当Axi4总线对应的设备准备就绪时,从所述异步FIFO中读取所述信号,并依据所述Axi4总线的时序关系将所述信号输出至所述Axi4总线的相应通道。


2.根据权利要求1所述的Avalon总线转Axi4总线的方法,其特征在于,所述对接收到的所述Avalon_st总线数据进行逻辑处理后输出相应的Axi4_st总线数据,包括:
将所述Avalon_st总线数据中的数据包结束标识、数据有效标识以及设备就绪状态标识的值赋值给Axi4_st总线的相应接口;
将所述Avalon_st总线数据中的数据以字节为单位进行高低位逻辑取反后赋值给所述Axi4_st总线的相应接口;
基于所述Avalon_st总线数据中的无效字节位置得到有效字节位置,并将所述有效字节位置的值赋值给所述Axi4_st总线的相应接口。


3.根据权利要求2所述的Avalon总线转Axi4总线的方法,其特征在于,所述Avalon_mm总线各通道传输的信号包括读指令、读地址以及猝发长度或写指令、写地址以及猝发长度或写指令、写数据以及猝发长度。


4.根据权利要求2所述的Avalon总线转Axi4总线的方法,其特征在于,还包括:
根据所述异步FIFO的深度参数以及已存储数据情况,输出waitrequest信号至所述Avalon_mm总线。


5.根据权利要求4...

【专利技术属性】
技术研发人员:郭雷张静东王江为
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1