CN109614351A - 带有纠错和自动应答机制的并行总线串行互联扩展方法 - Google Patents

带有纠错和自动应答机制的并行总线串行互联扩展方法 Download PDF

Info

Publication number
CN109614351A
CN109614351A CN201811459799.5A CN201811459799A CN109614351A CN 109614351 A CN109614351 A CN 109614351A CN 201811459799 A CN201811459799 A CN 201811459799A CN 109614351 A CN109614351 A CN 109614351A
Authority
CN
China
Prior art keywords
fpga
serial
control circuit
interface control
main
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
Application number
CN201811459799.5A
Other languages
English (en)
Other versions
CN109614351B (zh
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.)
Army Engineering University of PLA
Original Assignee
Army Engineering University of PLA
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 Army Engineering University of PLA filed Critical Army Engineering University of PLA
Priority to CN201811459799.5A priority Critical patent/CN109614351B/zh
Publication of CN109614351A publication Critical patent/CN109614351A/zh
Application granted granted Critical
Publication of CN109614351B publication Critical patent/CN109614351B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0002Serial port, e.g. RS232C
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0004Parallel ports, e.g. centronics
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Information Transfer Systems (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

本发明公开了一种带有纠错和自动应答机制的并行总线串行互联扩展方法。通过一块主FPGA连接CPU和多块从FPGA,主FPGA内部包括和CPU互连的并行总线接口和多个主串行接口控制电路;每块从FPGA内部均包括从串行接口控制电路,该电路以串行方式和主FPGA互连,以并行总线接口方式和从FPGA内部电路互联;CPU通过寄存器、存储器映射方式控制主串行接口控制电路的工作,以突发短分组命令的方式向某个FPGA中的从串行接口电路以现有或自定义串行通信方式发送间接存储访问命令,命令中包括读/写操作类型、操作地址、读/写操作数据和校验码,从FPGA中的串行接口控制电路接收操作命令,转换成与主FPGA内部相同的总线接口和操作时序,对内部存储空间进行读写操作。本发明能够提供处理器与多片FPGA间高效、可靠、简单、强交互性的数据通信,通用性高。

Description

带有纠错和自动应答机制的并行总线串行互联扩展方法
技术领域
本发明涉及电子电路技术领域,主要用于处理器(CPU)和多块FPGA之间的通信,具体涉及一种通过硬件描述语言实现的带有纠错和自动应答机制的并行总线串行互联扩展方法,使用该技术可实现灵活、可靠、简单、强交互性和易于扩展的多FPGA通信方式。
背景技术
在很多应用场合中,需要处理器(CPU)同时和单一电路板上的多片FPGA进行通信,或者和分布在不同电路板上的FPGA通过背板进行通信,用于对FPGA中的电路进行工作配置、状态查询和低速数据传输。
传统方法需要使用至少1级双向总线驱动电路,在每片FPGA中需要使用并行总线接口电路,采用寄存器、存储器映射方式工作,CPU可以直接通过寻址方式访问控制寄存器、状态寄存器或者数据存储区。这种方法的优点是CPU可以对每片FPGA直接寻址,操作模式简单,但该方法占用的FPGA引脚数量大,会造成板级布线和背板布线复杂,对信号完整性和总线驱动等也要求较高,缺少差错控制机制,而且可用存储映射空间大小受到总线中地址线宽度限制。
发明内容
本发明的目的在于提供一种带有纠错和自动应答机制的并行总线串行扩展方法。
实现本发明的技术解决方案为:一种带有纠错和自动应答机制的并行总线串行互联扩展方法,包括CPU、主FPGA和从FPGA;通过一块主FPGA连接CPU和多块从FPGA;主FPGA内部包括并行总线接口和多个主串行接口控制电路;每块从FPGA内部均包括从串行接口和并行总线接口;CPU通过与不同主串行接口控制电路对应的寄存器控制主串行接口控制电路的工作,向从FPGA中的串行接口,以突发短分组的方式发送间接存储访问命令,对从FPGA内部的寄存器、存储器进行访问;每片从FPGA中都有一个从串行接口电路,它以串行方式接收主串行接口控制电路的发出的操作命令,将操作命令中包含的间接访问地址和数据信息提取出来,形成内部并行操作时序,通过并行总线接口对内部的寄存器、存储器进行读写访问操作,操作完成后,从串行接口自动向主串行接口返回操作结果及数据;主串行接口控制电路和从串行接口电路之间的通信自带校验字段,用于发现串行通信中可能出现的比特传输错误,可以自动纠正1个比特误码,CPU可以据此判断是否需要重新发送访问命令;主从FPGA之间的串行通信方式可以自定义,也可以采用现有的串行通信方式,用户可以根据需要选择通信速率。
所述主FPGA中的多个主串行接口控制电路,每个主串行接口控制电路对应一组寄存器;CPU通过寄存器操作,控制对应的主串行接口控制电路向与之串行互联的从FPGA发送短命令分组,命令分组中包括对从FPGA中扩展总线访问的操作类型、地址、数据和校验信息。
所述从FPGA中的从串行总线接口电路以串行方式接收主串行接口控制电路的短命令分组,将其中的间接访问地址和数据信息提取出来,形成与主CPU总线类似的内部并行操作时序,通过并行总线接口对从FPGA内部的寄存器、存储器进行读写访问操作,操作完成后,从串行接口控制电路自动向主串行接口控制电路返回操作结果,CPU可以对操作结果进行查询。
所述主串行接口控制电路和从串行接口电路之间的通信自带校验字段;从串行接口控制电路向主串行控制电路自动返回应答数据分组,其中包括接收命令分组中是否存在校验错误,操作是否正确完成,如果是读操作则同时返回读出数据,返回命令分组中包括重新计算的校验和字段。
本发明与现有技术相比,其显著优点:(1)CPU可以对每片从FPGA进行间接寻址,操作模式简单灵活,易于扩展;(2)间接访问的寻址空间几乎没有限制,有利于用户电路的设计和进行设计扩展;(3)板内及背板均为点到点连接,信号完整性易于保证;(4)串行操作命令自带校验,有利于提高系统的可靠性;(5)对FPGA之间的串行互联方式没有特别要求,可以采用现有的常用异步连接方式(如UART),不需要考虑系统同步问题,可减小板级布线和背板布线的复杂度;(6)可以同时对多个从FPGA进行操作,系统效率较高;(7)对用户电路本身的设计几乎没有任何影响。
附图说明
图1为本发明的电路结构框图。
图2为图1中CPU向从FPGA写数据的流程图。
图3为图1中CPU向从FPGA读数据的流程图。
具体实施方式
本发明以串行通信的方式进行并行总线扩展,使得CPU可以按照间接存储访问的方式对大量的FPGA进行管理并能节约内存映射空间;CPU和FPGA之间可以采用常用的串行通信方式(如异步串行方式)进行传输以减小板级布线和背板布线的复杂度;主、从串行总线接口电路之间的通信自带校验与应答机制,可以及时发现操作错误。这种通信方式灵活、可靠、简单、交互性强和易于扩展
下面结合附图对本发明作进一步说明。
结合图1,本发明带有纠错和自动应答机制的并行总线串行互联扩展方法,包括CPU、主FPGA和从FPGA,此系统通过一块主FPGA连接CPU和多块从FPGA。
主FPGA内部含有并行总线接口和多个主串行接口控制电路(u_master_1, u_master_2,…, u_master_N),每块从FPGA内部均含有一个从串行接口控制电路(u_slave_N, N=1,2,…)和本地并行总线接口。
主串行接口控制电路与从串行接口控制电路中均含有数据发送模块(u_xmt)和数据接收模块(u_rcv),u_xmt模块和u_rcv模块中均有8位数据校验模块(u_crc_8)。
CPU向从FPGA写数据的流程图如图2:
CPU发送的写命令及数据经存储器映射后发往目的主串行接口控制电路中的u_xmt模块,通过并串转换及u_crc_8模块校验后发往从串行接口控制电路中的u_rcv模块(step1),经检验若写命令无误则向主串行接口控制电路中的u_rcv模块反馈写操作无误信号(step2),并按照与CPU类似的总线操作方式并行写入到从FPGA(step3)内部寄存器;若写命令有误,则向主串行接口控制电路发送写命令出错信号以供CPU重新发送写命令(step4),同时取消数据写入操作。
CPU向从FPGA读数据的流程图如图3:
CPU发送的读命令经存储器映射后发往目的主串行接口控制电路中的u_xmt模块,通过并串转换及u_crc_8模块校验后发往从串行接口控制电路中的u_rcv模块(step1),经检验若读命令无误则以并行方式根据数据分组中携带的间接访问地址信息以并行方式在从FPGA中读出数据,将读操作命令无误信号及读出的数据组成一个短数据分组发送至主FPGA(step3);若读命令有误,则向主串行接口控制电路中的u_rcv模块发送读命令出错信号(step2)以供CPU重新发送读命令(step4),同时不执行本地数据读操作。

Claims (4)

1.一种带有纠错和自动应答机制的并行总线串行互联扩展方法,其特征在于:通过一块主FPGA连接CPU和多块从FPGA;主FPGA内部包括与CPU直接互连的并行总线接口和多个主串行接口控制电路,每块从FPGA内部均包括从串行接口和并行总线接口;CPU通过总线访问主FPGA内部的寄存器;主FPGA中的多个主串行接口控制电路对应多组寄存器,CPU通过总线直接控制某一组寄存器,通过对应的主串行接口控制电路向与之串行互连的从FPGA中的从串行接口控制电路发送存储访问命令;该命令在从串行接口控制电路中首先通过校验计算检查是否存在通信差错,如果错误则重新发送该命令,如果正确无误,则根据存储访问命令中的地址信息和操作命令,以和主FPGA内部CPU总线相同的操作时序访问从FPGA内部的寄存器;操作完成后,从FPGA内部的接口控制电路自动生成一个应答分组,其中包括此次操作是否正确完成,如果是读操作则同时返回读出的数据;主串行接口控制电路接收到此应答信息,将结果写入寄存器供CPU查询处理。
2.根据权利要求1所述的带有纠错和自动应答机制的并行总线串行互联扩展方法,其特征在于:所述主FPGA中的多个主串行接口控制电路,每个主串行接口控制电路对应一组寄存器;CPU通过寄存器操作,控制对应的主串行接口控制电路向与之串行互联的从FPGA发送短命令分组,命令分组中包括对从FPGA中扩展总线访问的操作类型、地址、数据和校验信息。
3.根据权利要求1所述的带有纠错和自动应答机制的并行总线串行互联扩展方法,其特征在于:所述从FPGA中的从串行总线接口电路以串行方式接收主串行接口控制电路的短命令分组,将其中的间接访问地址和数据信息提取出来,形成与主CPU总线类似的内部并行操作时序,通过并行总线接口对从FPGA内部的寄存器、存储器进行读写访问操作,操作完成后,从串行接口控制电路自动向主串行接口控制电路返回操作结果,CPU可以对操作结果进行查询。
4.根据权利要求1所述带有纠错和自动应答机制的并行总线串行互联扩展方法,其特征在于:所述主串行接口控制电路和从串行接口电路之间的通信自带校验字段;从串行接口控制电路向主串行控制电路自动返回应答数据分组,其中包括接收命令分组中是否存在校验错误,操作是否正确完成,如果是读操作则同时返回读出数据,返回命令分组中包括重新计算的校验和字段。
CN201811459799.5A 2018-11-30 2018-11-30 带有纠错和自动应答机制的并行总线串行互联扩展方法 Active CN109614351B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811459799.5A CN109614351B (zh) 2018-11-30 2018-11-30 带有纠错和自动应答机制的并行总线串行互联扩展方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811459799.5A CN109614351B (zh) 2018-11-30 2018-11-30 带有纠错和自动应答机制的并行总线串行互联扩展方法

Publications (2)

Publication Number Publication Date
CN109614351A true CN109614351A (zh) 2019-04-12
CN109614351B CN109614351B (zh) 2022-05-24

Family

ID=66005894

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811459799.5A Active CN109614351B (zh) 2018-11-30 2018-11-30 带有纠错和自动应答机制的并行总线串行互联扩展方法

Country Status (1)

Country Link
CN (1) CN109614351B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110379208A (zh) * 2019-07-16 2019-10-25 中国航空无线电电子研究所 一种具备防人为差错功能的a/c模式应答机系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10035358A1 (de) * 1999-07-22 2001-02-08 Hitachi Ltd Logikteilungsverfahren, Logikteilungssystem und Aufzeichnungsmedium zum Speichern des Logikteilungsprogramms
CN2938595Y (zh) * 2006-02-20 2007-08-22 上海欣泰通信技术有限公司 一种用于板间通信的高速串行接口装置
US20080126852A1 (en) * 2006-08-14 2008-05-29 Brandyberry Mark A Handling Fatal Computer Hardware Errors
CN101770817A (zh) * 2010-01-18 2010-07-07 华东师范大学 基于fpga的多接口存储器验证系统
WO2012155300A1 (zh) * 2011-05-16 2012-11-22 曙光信息产业股份有限公司 一种调试龙芯cpu和南北桥芯片的方法和装置
CN104484301A (zh) * 2014-12-25 2015-04-01 南京因泰莱电器股份有限公司 一种基于fpga具有自识别功能的io总线装置
CN104598418A (zh) * 2015-01-27 2015-05-06 北京奥普维尔科技有限公司 一种基于fpga的控制i2c通信的系统及方法
JP2015118468A (ja) * 2013-12-17 2015-06-25 株式会社東芝 プログラマブルコントローラ
CN105095139A (zh) * 2014-05-08 2015-11-25 中兴通讯股份有限公司 集成电路总线系统及其数据操作和传输方法
CN105117319A (zh) * 2015-08-25 2015-12-02 烽火通信科技股份有限公司 基于fpga实现对多路mdio设备实时监控的方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10035358A1 (de) * 1999-07-22 2001-02-08 Hitachi Ltd Logikteilungsverfahren, Logikteilungssystem und Aufzeichnungsmedium zum Speichern des Logikteilungsprogramms
CN2938595Y (zh) * 2006-02-20 2007-08-22 上海欣泰通信技术有限公司 一种用于板间通信的高速串行接口装置
US20080126852A1 (en) * 2006-08-14 2008-05-29 Brandyberry Mark A Handling Fatal Computer Hardware Errors
CN101770817A (zh) * 2010-01-18 2010-07-07 华东师范大学 基于fpga的多接口存储器验证系统
WO2012155300A1 (zh) * 2011-05-16 2012-11-22 曙光信息产业股份有限公司 一种调试龙芯cpu和南北桥芯片的方法和装置
JP2015118468A (ja) * 2013-12-17 2015-06-25 株式会社東芝 プログラマブルコントローラ
CN105095139A (zh) * 2014-05-08 2015-11-25 中兴通讯股份有限公司 集成电路总线系统及其数据操作和传输方法
CN104484301A (zh) * 2014-12-25 2015-04-01 南京因泰莱电器股份有限公司 一种基于fpga具有自识别功能的io总线装置
CN104598418A (zh) * 2015-01-27 2015-05-06 北京奥普维尔科技有限公司 一种基于fpga的控制i2c通信的系统及方法
CN105117319A (zh) * 2015-08-25 2015-12-02 烽火通信科技股份有限公司 基于fpga实现对多路mdio设备实时监控的方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110379208A (zh) * 2019-07-16 2019-10-25 中国航空无线电电子研究所 一种具备防人为差错功能的a/c模式应答机系统

Also Published As

Publication number Publication date
CN109614351B (zh) 2022-05-24

Similar Documents

Publication Publication Date Title
CN101876963B (zh) PCI.Express通信系统及其通信方法
CN1595381B (zh) 桥控制器、桥和操作该桥的方法
US7457897B1 (en) PCI express-compatible controller and interface for flash memory
US8078941B2 (en) Memory system, memory system controller, and a data processing method in a host apparatus
US7243173B2 (en) Low protocol, high speed serial transfer for intra-board or inter-board data communication
CN101814058A (zh) 通用存储装置
CN101576853B (zh) 数据存取方法、使用此方法的控制器与存储系统
US8010860B2 (en) Method and architecture to prevent corrupt data propagation from a PCI express retry buffer
KR100996786B1 (ko) 메모리 구성요소 간에 통신을 제공하는 메모리 시스템 및 방법
CN102257573B (zh) 错误检测方法和包括一个或多个存储器设备的系统
CN1719363A (zh) 可编程逻辑控制器硬件扩展方法
CN103577275B (zh) 一种数据校验的方法、设备和系统
US8161221B2 (en) Storage system provided with function for detecting write completion
CN105786639A (zh) 一种i2c总线数据的传输方法及系统
CN104350720A (zh) 提供用于双向串行互连的串行协议
CN110347529A (zh) 用于执行错误侦测协议的存储器装置及方法
US10628369B2 (en) Header improvements in packets accessing contiguous addresses
JPH034351A (ja) システム・バス・データ・リンク装置
CN102609376A (zh) 一种串行总线存储器、串行总线传输系统及方法
CN109614351A (zh) 带有纠错和自动应答机制的并行总线串行互联扩展方法
CN100571108C (zh) 用于在计算节点之间进行数据通信的系统和方法
CN101655825B (zh) 一种使用fpga实现lpc-usb双向通信的装置及lpc-usb和usb-lpc数据转换方法
CN108920299B (zh) 储存媒体
CN100468375C (zh) 一种提高存储卡数据写入速度的方法
CN101539785A (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