CN114925010A - 一种Quad SPI转AXI接口的方法 - Google Patents
一种Quad SPI转AXI接口的方法 Download PDFInfo
- Publication number
- CN114925010A CN114925010A CN202210564658.XA CN202210564658A CN114925010A CN 114925010 A CN114925010 A CN 114925010A CN 202210564658 A CN202210564658 A CN 202210564658A CN 114925010 A CN114925010 A CN 114925010A
- Authority
- CN
- China
- Prior art keywords
- data
- spi
- controller
- axi
- quad spi
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 230000002093 peripheral effect Effects 0.000 title description 6
- 230000005540 biological transmission Effects 0.000 claims abstract description 27
- 230000001419 dependent effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 2
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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
- 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/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI 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
Abstract
本发明涉及AXI协议和Quad SPI协议技术领域,具体涉及一种Quad SPI转AXI接口的方法,包括如下:该Quad SPI控制器的端口采用Quad SPI协议,解码的命令长度均为8bit;在片选拉低之后,Quad SPI控制器开始接收有效信息,在第一个指令周期,命令解码的结果决定接下来的操作是读操作或者写操作,第二个指令周期由Quad SPI控制器回复是否解码成功;如果解码成功,则Quad SPI控制器接收4个指令的地址信息。Quad SPI在SPI的基础上增加了两根数据线,目的是一个时钟周期内传输4个bit,加快数据传输的速率。通过Quad SPI转AXI接口的方式,可以快速便捷的使外部的SPI master通过AXI总线访问片内空间。
Description
技术领域
本发明涉及AXI协议和Quad SPI协议技术领域,具体涉及一种Quad SPI转AXI接口的方法。
背景技术
AXI(Advanced extensible Interface)是ARM公司提出的AMBA3.0协议中的一种总线协议,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持Outstanding传输访问和乱序访问,并更加容易进行时序收敛。AXI技术丰富了现有的AMBA标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的全双工同步的通信总线。
然而目前市场上关于Quad SPI转AXI接口数据传输的方式尚属空白,因此亟需研发一种Quad SPI转AXI接口的方法来解决上述数据传输速率慢的问题。
发明内容
针对现有技术的不足,本发明提供了一种Quad SPI转AXI接口的方法,Quad SPI在SPI的基础上增加了两根数据线,目的是一个时钟周期内传输4个bit,加快数据传输的速率。通过Quad SPI转AXI接口的方式,可以快速便捷的使外部的SPI master通过AXI总线访问片内空间。
本发明通过以下技术方案予以实现:
一种Quad SPI转AXI接口的方法,其特征在于,包括如下:该Quad SPI控制器的端口采用Quad SPI协议,解码的命令长度均为8bit;在片选拉低之后,Quad SPI控制器开始接收有效信息,在第一个指令周期,命令解码的结果决定接下来的操作是读操作或者写操作,第二个指令周期由Quad SPI控制器回复是否解码成功;如果解码成功,则Quad SPI控制器接收4个指令的地址信息,决定了AXI读或者写操作的起始地址,接下来的3个指令周期分别接受突发传输的类型、突发次数和每次突发的数据量;最后根据解析出的控制信息决定数据传输的方式;最后进行数据的传输,在数据传输结束之后,片选信号重新拉高,标志本次传输结束,下次传输的开始需等待片选信号再次拉低。
优选的,在所述Quad SPI控制器中,第一个指令周期只有DATA[3]接收数据,第二个指令周期只有DATA[2]发送数据,指令周期为8个时钟周期;其余指令周期DATA[3:0]均接收或发送数据,指令周期为2个时钟周期。
优选的,该Quad SPI控制器支持两种不同的时钟极性模式。
优选的,其指令的帧格式顺序由Quad SPI内部的控制器决定,不仅限于此种顺序。
优选的,其Quad SPI控制器中的状态跳转依赖端口的指令信号与AXI ready信号的握手。
优选的,在第一个指令周期得到的命令解码结果既不是读操作也不是写操作,则所述Quad SPI控制器通过DATA[2]向SPImaster回复错误指令。
本发明的有益效果为:
1、该方法通过Quad SPI的端口将AXI中的指令信息,地址信息,控制信息和数据传入到Quad SPI控制器中,通过状态机转变成AXI的总线信号。
2、Quad SPI在SPI的基础上增加了两根数据线,目的是一个时钟周期内传输4个bit,加快数据传输的速率。
3、通过Quad SPI转AXI接口的方式,可以快速便捷的使外部的SPI master通过AXI总线访问片内空间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明Quad SPI转AXI接口的方法的框架图;
图2为本发明Quad SPI转AXI接口的方法的流程图;
图3为本发明Quad SPI转AXI接口的方法的数据帧格式图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
请参阅图1~图3所示:本发明提出了一种Quad SPI转AXI接口的方法,控制信号和数据通过Quad SPI接口写入Quad SPI控制器中,当片选拉低之后,根据Quad SPI控制器接收到命令解码来判断是通过AXI总线写入数据或读出数据。如果解码到的指令是写指令,Quad SPI控制器将AXI配置成写操作并对SPI master回复解码成功指令,接下来的4个周期接收到的数据被写入到写地址寄存器中。再接下来的3个周期分别接收位写操作的突发传输类型,突发次数以及每次突发数据量。在控制信息传输完成后,再接收要通过AXI总线写入的数据。
如果解码得到的指令是读指令,Quad SPI控制器将AXI配置成读操作并对SPImaster回复解码成功指令,接下来的4个周期接收到的数据被写入到读地址寄存器中。再接下来的3个周期分别接收位读操作的突发传输类型,突发次数以及每次突发数据量。在控制信息传输完成后,AXI总线再接收要读出的数据并返回给Quad SPI控制器,控制器再通过数据引脚将读出的数据返回给Quad SPI的主机。
在第一个指令周期之后,如果在第一个指令周期得到的命令解码结果既不是读操作也不是写操作,DATA[2]向SPImaster回复错误指令。SPImaster重新向Quad SPI控制器发送指令消息,同时Quad SPI控制器重新回到初始状态。
下面结合附图对本发明作进一步说明。一种Quad SPI转AXI接口的方法,其架构如图1所示。其Quad SPI控制器的端口采用Quad SPI协议,解码的命令长度均为8bit。在片选拉低之后,Quad SPI控制器开始接收有效信息。有效信息的帧格式如图3所示。在第一个指令周期,Quad SPI控制器的data[3]接收数据,命令解码的结果决定接下来的操作是读操作还是写操作。第二个指令周期Quad SPI控制器的DATA[2]向SPI master发送数据,用于回应接收到的读写指令是否异常。如果接收的指令正确,之后Quad SPI控制器接4个指令的地址信息,决定了AXI读或者写操作的起始地址。接下来的3个指令周期分别接受突发传输的类型,突发次数和每次突发的数据量,根据解析出的控制信息决定数据传输的方式。最后进行数据的传输。在数据传输结束之后,片选信号重新拉高,标志本次传输结束,下次传输的开始需等待片选信号再次拉低。
该发明的状态跳转如图2所示。当片选拉低之后,第一个指令周期只有DATA[3]接收数据,第二个指令周期只有DATA[2]发送数据,指令周期均为8个时钟周期。其余指令周期DATA[3:0]均接收或发送数据,指令周期为2个时钟周期。在第一个指令周期之后,如果在第一个指令周期得到的命令解码结果既不是读操作也不是写操作,DATA[2]向SPI主机回复错误指令,同时控制器回到空闲状态。
该Quad SPI控制器支持两种不同的时钟极性模式,在片选拉低之后,Quad SPI控制器根据时钟线上的极性判断当前SPI master采用的是哪种模式进行发送数据。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种QuadSPI转AXI接口的方法,其特征在于,包括如下:
该QuadSPI控制器的端口采用QuadSPI协议,解码的命令长度均为8bit;在片选拉低之后,QuadSPI控制器开始接收有效信息,在第一个指令周期,命令解码的结果决定接下来的操作是读操作或者写操作,第二个指令周期由QuadSPI控制器回复是否解码成功;如果解码成功,则QuadSPI控制器接收4个指令的地址信息,决定了AXI读或者写操作的起始地址,接下来的3个指令周期分别接受突发传输的类型、突发次数和每次突发的数据量;最后根据解析出的控制信息决定数据传输的方式;最后进行数据的传输,在数据传输结束之后,片选信号重新拉高,标志本次传输结束,下次传输的开始需等待片选信号再次拉低。
2.根据权利要求1所述的一种QuadSPI转AXI接口的方法,其特征在于,在所述QuadSPI控制器中,第一个指令周期只有DATA[3]接收数据,第二个指令周期只有DATA[2]发送数据,指令周期为8个时钟周期;其余指令周期DATA[3:0]均接收或发送数据,指令周期为2个时钟周期。
3.根据权利要求1所述的一种QuadSPI转AXI接口的方法,其特征在于,该QuadSPI控制器支持两种不同的时钟极性模式。
4.根据权利要求1所述的一种QuadSPI转AXI接口的方法,其特征在于,其指令的帧格式顺序由QuadSPI内部的控制器决定,不仅限于此种顺序。
5.根据权利要求1所述的一种QuadSPI转AXI接口的方法,其特征在于,其QuadSPI控制器中的状态跳转依赖端口的指令信号与AXIready信号的握手。
6.根据权利要求1所述的一种QuadSPI转AXI接口的方法,其特征在于,在第一个指令周期得到的命令解码结果既不是读操作也不是写操作,则所述QuadSPI控制器通过DATA[2]向SPImaster回复错误指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210564658.XA CN114925010A (zh) | 2022-05-23 | 2022-05-23 | 一种Quad SPI转AXI接口的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210564658.XA CN114925010A (zh) | 2022-05-23 | 2022-05-23 | 一种Quad SPI转AXI接口的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114925010A true CN114925010A (zh) | 2022-08-19 |
Family
ID=82811063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210564658.XA Pending CN114925010A (zh) | 2022-05-23 | 2022-05-23 | 一种Quad SPI转AXI接口的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114925010A (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036685A (zh) * | 2013-01-23 | 2013-04-10 | 南京航空航天大学 | 基于dp83849c的afdx接口转换器 |
CN105005546A (zh) * | 2015-06-23 | 2015-10-28 | 中国兵器工业集团第二一四研究所苏州研发中心 | 一种内置交点队列的异步axi总线结构 |
US20160217102A1 (en) * | 2015-01-22 | 2016-07-28 | Seiko Epson Corporation | Circuit device, physical quantity detection device, electronic apparatus, and moving object |
CN205656617U (zh) * | 2016-05-11 | 2016-10-19 | 北京正泽兴承科技有限责任公司 | 一种SoC的外设系统 |
CN107015927A (zh) * | 2017-05-24 | 2017-08-04 | 南京典格通信科技有限公司 | 一种基于SoC支持多个SPI接口标准组的装置 |
US20180095915A1 (en) * | 2014-03-08 | 2018-04-05 | Diamanti, Inc. | Enabling use of non-volatile media - express (nvme) over a network |
CN107911391A (zh) * | 2017-12-14 | 2018-04-13 | 天津光电通信技术有限公司 | 一种基于fpga的axi协议与spi协议转换的方法 |
US10042808B1 (en) * | 2015-09-16 | 2018-08-07 | Xilinx, Inc. | Modeling SPI flash memory commands in hardware |
JP2019074820A (ja) * | 2017-10-13 | 2019-05-16 | キヤノン株式会社 | メモリ制御装置 |
CN110545319A (zh) * | 2019-08-23 | 2019-12-06 | 武汉久同智能科技有限公司 | 一种SoC核系统的设计和核间任务通信的实现方法 |
CN111563059A (zh) * | 2019-12-18 | 2020-08-21 | 中国船舶重工集团公司第七0九研究所 | 一种基于PCIe的多FPGA动态配置装置及方法 |
CN111897749A (zh) * | 2020-06-23 | 2020-11-06 | 中国船舶重工集团公司第七0七研究所 | 基于Quad-SPI控制器与外扩FLASH通信控制系统及方法 |
CN112463651A (zh) * | 2020-12-07 | 2021-03-09 | 长沙景嘉微电子股份有限公司 | Qspi控制器,图像处理器及闪存访问方法 |
CN214540759U (zh) * | 2021-02-23 | 2021-10-29 | 广东高云半导体科技股份有限公司 | Fpga芯片及电子系统 |
CN114036096A (zh) * | 2021-11-04 | 2022-02-11 | 珠海一微半导体股份有限公司 | 一种基于总线接口的读控制器 |
US20220121596A1 (en) * | 2020-10-20 | 2022-04-21 | Micron Technology, Inc. | Deferred communications over a synchronous interface |
-
2022
- 2022-05-23 CN CN202210564658.XA patent/CN114925010A/zh active Pending
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036685A (zh) * | 2013-01-23 | 2013-04-10 | 南京航空航天大学 | 基于dp83849c的afdx接口转换器 |
US20180095915A1 (en) * | 2014-03-08 | 2018-04-05 | Diamanti, Inc. | Enabling use of non-volatile media - express (nvme) over a network |
US20160217102A1 (en) * | 2015-01-22 | 2016-07-28 | Seiko Epson Corporation | Circuit device, physical quantity detection device, electronic apparatus, and moving object |
CN105005546A (zh) * | 2015-06-23 | 2015-10-28 | 中国兵器工业集团第二一四研究所苏州研发中心 | 一种内置交点队列的异步axi总线结构 |
US10042808B1 (en) * | 2015-09-16 | 2018-08-07 | Xilinx, Inc. | Modeling SPI flash memory commands in hardware |
CN205656617U (zh) * | 2016-05-11 | 2016-10-19 | 北京正泽兴承科技有限责任公司 | 一种SoC的外设系统 |
CN107015927A (zh) * | 2017-05-24 | 2017-08-04 | 南京典格通信科技有限公司 | 一种基于SoC支持多个SPI接口标准组的装置 |
JP2019074820A (ja) * | 2017-10-13 | 2019-05-16 | キヤノン株式会社 | メモリ制御装置 |
CN107911391A (zh) * | 2017-12-14 | 2018-04-13 | 天津光电通信技术有限公司 | 一种基于fpga的axi协议与spi协议转换的方法 |
CN110545319A (zh) * | 2019-08-23 | 2019-12-06 | 武汉久同智能科技有限公司 | 一种SoC核系统的设计和核间任务通信的实现方法 |
CN111563059A (zh) * | 2019-12-18 | 2020-08-21 | 中国船舶重工集团公司第七0九研究所 | 一种基于PCIe的多FPGA动态配置装置及方法 |
CN111897749A (zh) * | 2020-06-23 | 2020-11-06 | 中国船舶重工集团公司第七0七研究所 | 基于Quad-SPI控制器与外扩FLASH通信控制系统及方法 |
US20220121596A1 (en) * | 2020-10-20 | 2022-04-21 | Micron Technology, Inc. | Deferred communications over a synchronous interface |
CN112463651A (zh) * | 2020-12-07 | 2021-03-09 | 长沙景嘉微电子股份有限公司 | Qspi控制器,图像处理器及闪存访问方法 |
CN214540759U (zh) * | 2021-02-23 | 2021-10-29 | 广东高云半导体科技股份有限公司 | Fpga芯片及电子系统 |
CN114036096A (zh) * | 2021-11-04 | 2022-02-11 | 珠海一微半导体股份有限公司 | 一种基于总线接口的读控制器 |
Non-Patent Citations (1)
Title |
---|
闵嘉维: "高速串行Flash控制器的设计与实现", 《信息技术》, no. 07, 24 July 2018 (2018-07-24) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11010327B2 (en) | I3C point to point | |
US10452603B2 (en) | Sensors global bus | |
US8930599B2 (en) | Data transmission system and method thereof | |
CN112564882B (zh) | 一种基于ahb总线的单线数字通讯接口 | |
US8494010B2 (en) | Data transfer device, data transmitting device, data receiving device, and data transfer method | |
US10417172B2 (en) | Sensors global bus | |
KR100474221B1 (ko) | 데이터 전송 제어 장치, 전자 기기 및 데이터 전송 제어방법 | |
EP2207101A1 (en) | Method and device for parallel interfacing | |
CN115866081B (zh) | 一种基于soc的工业以太网协议转换方法 | |
JP4022442B2 (ja) | フィールドバスインタフェースボードの制御方法 | |
TWI497307B (zh) | 通用串列匯流排事務轉譯器及通用串列匯流排傳輸轉譯方法 | |
US10402365B2 (en) | Data lane validation procedure for multilane protocols | |
CN117093157B (zh) | 一种用于单向光传输的ddr高速读写方法及系统 | |
CN110990310B (zh) | 一种设备端sd控制器、控制方法及电子设备 | |
CN114925010A (zh) | 一种Quad SPI转AXI接口的方法 | |
US11334402B2 (en) | SDIO chip-to-chip interconnect protocol extension for slow devices and power savings | |
CN114338837A (zh) | 一种基于zynq的hdlc通讯转换控制器 | |
CN112328523A (zh) | 传输双倍速率信号的方法、装置及系统 | |
CN117640783B (zh) | 一种数据传输方法、系统、电子设备以及可读介质 | |
CN113687792B (zh) | 一种存储器数据快速读取方法 | |
CN114416453B (zh) | 一种基于外设接口的芯片硬件调试方法和装置 | |
CN116501268B (zh) | 应用于ddr phy的数据读取方法 | |
JP2000112878A (ja) | デ―タ処理装置内の転送要求タイミングを制御するための装置および方法 | |
CN117093129A (zh) | 一种高兼容性并行adc数据采集与传输系统 | |
CN114296799A (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 |