CN107911391A - 一种基于fpga的axi协议与spi协议转换的方法 - Google Patents

一种基于fpga的axi协议与spi协议转换的方法 Download PDF

Info

Publication number
CN107911391A
CN107911391A CN201711340372.9A CN201711340372A CN107911391A CN 107911391 A CN107911391 A CN 107911391A CN 201711340372 A CN201711340372 A CN 201711340372A CN 107911391 A CN107911391 A CN 107911391A
Authority
CN
China
Prior art keywords
axi
write
address
data
read
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.)
Withdrawn
Application number
CN201711340372.9A
Other languages
English (en)
Inventor
陈轩
张晓峰
陈伟峰
李斌
高海源
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin Optical Electrical Communication Technology Co Ltd
Original Assignee
Tianjin Optical Electrical Communication Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin Optical Electrical Communication Technology Co Ltd filed Critical Tianjin Optical Electrical Communication Technology Co Ltd
Priority to CN201711340372.9A priority Critical patent/CN107911391A/zh
Publication of CN107911391A publication Critical patent/CN107911391A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Abstract

本发明公开了一种基于FPGA的AXI协议与SPI协议转换的方法。该方法采用STM32芯片,使用SPI协议与FPGA进行通信,FPGA内部首先解析SPI协议,恢复出协议中包含的指令类型、地址和数据信息,然后将这些信息整合成AXI总线形式;FPGA包括SPI协议解析模块、AXI总线整合模块和10GE ip核。本方法只需要五个SPI寄存器组合读写的方式即可以完成所有基于AXI总线的操作,并且不用担心SPI读数据过程中由于ip核反馈时间不定而带来的时序问题,目前已在某大容量10GE交叉选路设备中应用,可通过上位机对ip核进行状态监视和控制。

Description

一种基于FPGA的AXI协议与SPI协议转换的方法
技术领域
本发明涉及AXI协议和SPI协议,具体涉及一种基于FPGA的AXI协议与SPI协议转换的方法。
背景技术
AXI(Advanced eXtensible Interface)协议是ARM公司提出的AMBA(AdvancedMicrocontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。近年来,Xilinx推出的ip软核大多基于该协议完成管理和配置,而与此同时,传统的控制协议如SPI、I2C等仍被广泛使用于各个成熟设备的上位机管理软件,因此有必要完成AXI协议与传统协议的转换,实现上位机对底层FPGA模块的状态监视和控制。
发明内容
本发明的目的就是要解决上述现有技术中存在的问题,提供一种基于FPGA的AXI协议与SPI协议转换的方法。
本发明采取的技术方案是:一种基于FPGA的AXI协议与SPI协议转换的方法,其特征在于,该方法采用主设备为上层控制器STM32芯片,使用SPI协议与从设备FPGA模块进行通信,FPGA模块内部首先解析SPI协议,恢复出协议中包含的指令类型、地址和数据信息,然后将这些信息整合成AXI总线形式;所述的FPGA模块包括SPI协议解析模块、AXI总线整合模块和10GE ip核。
所述SPI协议解析模块程序执行以下操作:
FPGA模块与STM32芯片之间通过普通输入输出信号线传递片选信息,代表SPI总线的使能,当监测到该信号有效时,判断输入的数据为读指令还是写指令,如果为读指令,指令接收完毕后接收地址信息,然后进入地址信息的分析逻辑,将该地址对应寄存器的内容返回主设备STM32芯片;如果为写指令,指令接收完毕后接收地址信息,然后接收数据信息,将该数据写入该地址对应寄存器。
所述AXI总线整合模块使用四个读写寄存器和一个只读寄存器,分别存放AXI地址、AXI写数据、AXI写指令、AXI读指令和AXI读数据。
最后AXI总线整合模块连接被访问的10GE ip核,如果后端的ip核不止一个,则通过AXI Interconnect做路由选择的处理,实现STM32芯片对10GE ip核的监控。
所述AXI读指令执行以下操作:
(1)、将地址信息写入AXI地址寄存器;
(2)、将AXI读指令寄存器的值置1再置0,创建上升沿;
(3)、读取AXI读数据寄存器中的内容得到最终结果。
所述AXI写指令执行以下操作:
(1)、将地址信息写入AXI地址寄存器;
(2)、将数据信息写入AXI写数据寄存器;
(3)、将AXI写指令寄存器的值置1再置0,创建上升沿。
所述以AXI读指令操作顺序为主机与从机先后完成读地址和读数据的通信,首先进行读地址通道握手并传输地址内容,然后在读数据通道握手并传输所读内容以及读取操作的回应,时钟上升沿有效。
所述以AXI写指令操作顺序为主机与从机先后完成写地址和写数据的通信,首先进行写地址通道握手并传输地址内容,然后在写数据通道握手并传输所读内容,最后再写回应通道握手,并传输写回应数据,时钟上升沿有效。
本发明的有益效果是:只需要五个SPI寄存器组合读写的方式即可以完成所有基于AXI总线的操作,并且不用担心SPI读数据过程中由于ip核反馈时间不定而带来的时序问题,目前已在某大容量10GE交叉选路设备中应用,可通过上位机对ip核进行状态监视和控制。
附图说明
图1为本发明的硬件架构图:
图2 为本发明的FPGA模块架构图:
图3为本发明的 SPI协议解析模块程序流程图;
图4为本发明的 AXI读指令操作流程图;
图5本发明的 AXI写指令操作流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
某大容量10GE交叉选路设备采用标准ATCA架构,本发明中涉及的协议转换方法在该设备的业务板卡上实现,如图1所示,每个STM32芯片监控四片FPGA组成管理通路,FPGA的数据通路具备10GE高速接口8入8出的能力。
FPGA代码中各个子模块的架构设计如图2所示,首先使用SPI协议解析模块从SPI协议的时钟、片选、主入从出、主出从入四根信号线中恢复出AXI总线整合模块所需的五个寄存器的信息,然后整合成AXI总线形式,访问10GE ip核,实现STM32芯片对10GE ip核的监控。
SP协议I解析模块程序执行流程如图3所示,当监测到片选信号有效时,判断输入的数据为读指令还是写指令。如果为读,指令接收完毕后接收地址信息,然后进入地址信息的分析逻辑,将该地址对应寄存器的内容返回主设备;如果为写,指令接收完毕后接收地址信息,然后接收数据信息,将该数据写入该地址对应寄存器。
AXI读指令操作顺序为主与从进行读地址通道握手并传输地址内容,然后在读数据通道握手并传输所读内容以及读取操作的回应,时钟上升沿有效,如图4所示。
AXI写指令操作顺序为主与从进行写地址通道握手并传输地址内容,然后在写数据通道握手并传输所读内容,最后再写回应通道握手,并传输写回应数据,时钟上升沿有效,如图5所示。
上层控制器为STM32(主设备),使用SPI协议与FPGA(从设备)通信,FPGA内部首先解析SPI协议,恢复出协议中包含的指令类型、地址和数据信息,然后将这些信息整合成AXI总线形式,最后连接被访问的10GE ip核,如果后端的ip核不止一个,可以通过AXIInterconnect做路由选择的处理,实现STM32对10GE ip核的监控。
对于AXI总线整合模块,使用4个读写寄存器和1个只读寄存器,分别存放AXI地址、AXI写数据、AXI写指令、AXI读指令和AXI读数据。
读指令操作过程如下:
1)将地址信息写入AXI地址寄存器,
2)将AXI读指令寄存器的值置1再置0(创建上升沿),
3)读取AXI读数据寄存器中的内容得到最终结果。
写指令操作过程如下:
1)将地址信息写入AXI地址寄存器,
2)将数据信息写入AXI写数据寄存器,
3)将AXI写指令寄存器的值置1再置0(创建上升沿)。

Claims (3)

1.一种基于FPGA的AXI协议与SPI协议转换的方法,其特征在于,该方法采用主设备为上层控制器STM32芯片,使用SPI协议与从设备FPGA模块进行通信,FPGA模块内部首先解析SPI协议,恢复出协议中包含的指令类型、地址和数据信息,然后将这些信息整合成AXI总线形式;所述的FPGA模块包括SPI协议解析模块、AXI总线整合模块和10GE ip核;
所述SPI协议解析模块程序执行以下操作:
FPGA模块与STM32芯片之间通过普通输入输出信号线传递片选信息,代表SPI总线的使能,当监测到该信号有效时,判断输入的数据为读指令还是写指令,如果为读指令,指令接收完毕后接收地址信息,然后进入地址信息的分析逻辑,将该地址对应寄存器的内容返回主设备STM32芯片;如果为写指令,指令接收完毕后接收地址信息,然后接收数据信息,将该数据写入该地址对应寄存器;
所述AXI总线整合模块使用四个读写寄存器和一个只读寄存器,分别存放AXI地址、AXI写数据、AXI写指令、AXI读指令和AXI读数据;
最后AXI总线整合模块连接被访问的10GE ip核,如果后端的ip核不止一个,则通过AXIInterconnect做路由选择的处理,实现STM32芯片对10GE ip核的监控。
2.根据权利要求1所述的一种基于FPGA的AXI协议与SPI协议转换的方法,其特征在于,所述AXI读指令执行以下操作:
(1)、将地址信息写入AXI地址寄存器;
(2)、将AXI读指令寄存器的值置1再置0,创建上升沿;
(3)、读取AXI读数据寄存器中的内容得到最终结果;
所述AXI写指令执行以下操作:
(1)、将地址信息写入AXI地址寄存器;
(2)、将数据信息写入AXI写数据寄存器;
(3)、将AXI写指令寄存器的值置1再置0,创建上升沿。
3.根据权利要求2所述的一种基于FPGA的AXI协议与SPI协议转换的方法,其特征在于,以AXI读指令操作顺序为主机与从机先后完成读地址和读数据的通信,首先进行读地址通道握手并传输地址内容,然后在读数据通道握手并传输所读内容以及读取操作的回应,时钟上升沿有效;
以AXI写指令操作顺序为主机与从机先后完成写地址和写数据的通信,首先进行写地址通道握手并传输地址内容,然后在写数据通道握手并传输所读内容,最后再写回应通道握手,并传输写回应数据,时钟上升沿有效。
CN201711340372.9A 2017-12-14 2017-12-14 一种基于fpga的axi协议与spi协议转换的方法 Withdrawn CN107911391A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711340372.9A CN107911391A (zh) 2017-12-14 2017-12-14 一种基于fpga的axi协议与spi协议转换的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711340372.9A CN107911391A (zh) 2017-12-14 2017-12-14 一种基于fpga的axi协议与spi协议转换的方法

Publications (1)

Publication Number Publication Date
CN107911391A true CN107911391A (zh) 2018-04-13

Family

ID=61869910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711340372.9A Withdrawn CN107911391A (zh) 2017-12-14 2017-12-14 一种基于fpga的axi协议与spi协议转换的方法

Country Status (1)

Country Link
CN (1) CN107911391A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108873667A (zh) * 2018-07-13 2018-11-23 昆明理工大学 一种基于Linux系统下的时间测量系统及其方法
CN110321307A (zh) * 2018-03-28 2019-10-11 爱思开海力士有限公司 寻址切换方案
CN111736792A (zh) * 2019-03-25 2020-10-02 西安诺瓦电子科技有限公司 可编程逻辑器件及其控制方法、控制系统和视频处理器
CN112104664A (zh) * 2020-11-02 2020-12-18 长沙树根互联技术有限公司 物联网数据的协议转换方法、装置及设备
CN113961500A (zh) * 2021-09-01 2022-01-21 中国航空工业集团公司西安航空计算技术研究所 一种iic总线从控制器及其工作方法
CN114253884A (zh) * 2022-03-01 2022-03-29 四川鸿创电子科技有限公司 基于fpga的多主对多从访问仲裁方法、系统及存储介质
CN114328346A (zh) * 2021-12-14 2022-04-12 中航洛阳光电技术有限公司 一种用于扩展并行接口的逻辑ip核
CN114925010A (zh) * 2022-05-23 2022-08-19 中国电子科技集团公司第五十八研究所 一种Quad SPI转AXI接口的方法
CN115129639A (zh) * 2022-06-14 2022-09-30 沐曦集成电路(南京)有限公司 Axi总线的延时调整装置
CN115357926A (zh) * 2022-10-19 2022-11-18 南京芯驰半导体科技有限公司 基于SoC芯片的AXI总线协议访问权限控制方法及装置
CN114925010B (zh) * 2022-05-23 2024-05-10 中国电子科技集团公司第五十八研究所 一种Quad SPI转AXI接口的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101482856A (zh) * 2009-01-05 2009-07-15 东南大学 基于现场可编程门阵列的串并行协议转换装置
US9659359B1 (en) * 2015-05-05 2017-05-23 Flextronics Ap, Llc Method of and device for quality control process optimization
CN107015927A (zh) * 2017-05-24 2017-08-04 南京典格通信科技有限公司 一种基于SoC支持多个SPI接口标准组的装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101482856A (zh) * 2009-01-05 2009-07-15 东南大学 基于现场可编程门阵列的串并行协议转换装置
US9659359B1 (en) * 2015-05-05 2017-05-23 Flextronics Ap, Llc Method of and device for quality control process optimization
CN107015927A (zh) * 2017-05-24 2017-08-04 南京典格通信科技有限公司 一种基于SoC支持多个SPI接口标准组的装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨晓: "基于AXI总线协议的SPI控制器设计与验证", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110321307A (zh) * 2018-03-28 2019-10-11 爱思开海力士有限公司 寻址切换方案
CN110321307B (zh) * 2018-03-28 2023-06-13 爱思开海力士有限公司 寻址切换方案
CN108873667A (zh) * 2018-07-13 2018-11-23 昆明理工大学 一种基于Linux系统下的时间测量系统及其方法
CN111736792B (zh) * 2019-03-25 2024-02-06 西安诺瓦星云科技股份有限公司 可编程逻辑器件及其控制方法、控制系统和视频处理器
CN111736792A (zh) * 2019-03-25 2020-10-02 西安诺瓦电子科技有限公司 可编程逻辑器件及其控制方法、控制系统和视频处理器
CN112104664A (zh) * 2020-11-02 2020-12-18 长沙树根互联技术有限公司 物联网数据的协议转换方法、装置及设备
CN113961500A (zh) * 2021-09-01 2022-01-21 中国航空工业集团公司西安航空计算技术研究所 一种iic总线从控制器及其工作方法
CN113961500B (zh) * 2021-09-01 2024-04-09 中国航空工业集团公司西安航空计算技术研究所 一种iic总线从控制器及其工作方法
CN114328346A (zh) * 2021-12-14 2022-04-12 中航洛阳光电技术有限公司 一种用于扩展并行接口的逻辑ip核
CN114328346B (zh) * 2021-12-14 2024-04-30 中航洛阳光电技术有限公司 一种用于扩展并行接口的逻辑ip核
CN114253884A (zh) * 2022-03-01 2022-03-29 四川鸿创电子科技有限公司 基于fpga的多主对多从访问仲裁方法、系统及存储介质
CN114253884B (zh) * 2022-03-01 2022-05-10 四川鸿创电子科技有限公司 基于fpga的多主对多从访问仲裁方法、系统及存储介质
CN114925010A (zh) * 2022-05-23 2022-08-19 中国电子科技集团公司第五十八研究所 一种Quad SPI转AXI接口的方法
CN114925010B (zh) * 2022-05-23 2024-05-10 中国电子科技集团公司第五十八研究所 一种Quad SPI转AXI接口的方法
CN115129639B (zh) * 2022-06-14 2023-10-27 沐曦集成电路(南京)有限公司 Axi总线的延时调整装置
CN115129639A (zh) * 2022-06-14 2022-09-30 沐曦集成电路(南京)有限公司 Axi总线的延时调整装置
CN115357926A (zh) * 2022-10-19 2022-11-18 南京芯驰半导体科技有限公司 基于SoC芯片的AXI总线协议访问权限控制方法及装置

Similar Documents

Publication Publication Date Title
CN107911391A (zh) 一种基于fpga的axi协议与spi协议转换的方法
US11971446B2 (en) Interface system for interconnected die and MPU and communication method thereof
CN110362512B (zh) 一种面向sca和sdr的快速系统重构方法
CN108228513B (zh) 一种基于fpga架构的智能串口通讯装置
CN102169470B (zh) 一种ahb总线到bvci总线的转换桥
CN110297797B (zh) 异构协议转换装置和方法
CN101510185B (zh) 一种高速总线向低速总线写入、读取数据的方法和装置
CN105573951B (zh) 一种针对数据流传输的ahb总线接口系统
CN110417780B (zh) 定制化数据传输协议的多通道高速数据接口转化模块
CN108132897A (zh) 一种基于zynq平台软核的srio控制器
CN103136163B (zh) 可配置实现fc-ae-asm和fc-av协议的协议处理器芯片
CN105095139A (zh) 集成电路总线系统及其数据操作和传输方法
CN104636301B (zh) 一种基于pci‑e接口的大规模plc高速背板总线系统
CN203812236U (zh) 一种基于处理器和现场可编程门阵列的数据交换系统
CN104714907A (zh) 一种pci总线转换为isa和apb总线设计方法
CN108600017A (zh) 多协议串口扩展方法
CN101436171A (zh) 模块化通信控制系统
CN111414325A (zh) 一种Avalon总线转Axi4总线的方法
CN111290986A (zh) 一种基于神经网络的总线互联系统
CN102981827A (zh) 一种基于中间件的显示界面数据处理方法及平台
CN107436851A (zh) 串行外设接口四线隔离系统及其控制方法
CN106980587A (zh) 一种通用输入输出时序处理器及时序输入输出控制方法
CN112187341B (zh) 一种基于fpga的数据模拟源及其搭建与控制方法
CN219574799U (zh) 一种基于amba总线的多总线桥接器及其片上系统
CN205263807U (zh) 一种PCIe接口的双路FC电路结构

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20180413