一种fpga原型验证系统总线控制装置的制作方法

文档序号:6431289阅读:142来源:国知局
专利名称:一种fpga原型验证系统总线控制装置的制作方法
技术领域
本申请涉及FPGA原型验证领域,特别涉及一种FPGA原型验证系统总线控制装置。
背景技术
FPGA(Field-Programmable Gate Array,即现场可编程门阵列)原型验证不仅能加快ASIC等设计的开发,缩短了研发周期,降低ASIC应用系统的开发成本,而且提高了流片的成功率。但现有的FPGA原型验证技术中,FPGA原型验证系统中从FPGA芯片通过模式固定的总线完成通信。,一个FPGA原型验证系统只能在一种模式下工作,并且模式配置信息简单,使用户进行FPGA原型验证的时候繁琐,成本高昂。

发明内容
本申请所要解决的技术问题是提供一种FPGA原型验证系统总线控制装置,能灵活提供多种总线模式进行FPGA原型验证。为了解决上述问题,本申请公开了一种FPGA原型验证系统总线控制装置,包括包括主控芯片,HyperBus总线和多个从FPGA芯片,其中,主控芯片通过HyperBus 总线和多个从FPGA芯片相连,HyperBus总线包含模式控制线;所述主控芯片包括主模式控制模块用于根据PC机特定的设置指令设定总线模式;主数据收发模块用于依据当前总线所处的工作模式,选择相应机制传输或收发数据,并做简单的数据处理;主数据流监听模块负责监听总线上数据与指令,与外部PC机实时通信,探测系统状况; 所述从FPGA芯片包括从模式控制模块用于依据模式控制线的状态以及特定指令设定总线模式的各项参数进而来设定所属从FPGA芯片的工作模式;从数据收发模块用于依据总线所处的工作模式,选择相应机制传输或收发数据, 并做简单的数据处理。进一步的,还包括拨码开关,用于调整模式控制线的状态,用于人工初始设置总线的工作模式。进一步的,所述模式控制线的状态由主控芯片的主模式控制块根据特定指令调整,或者初始设置阶段的拨码开关手动设置。进一步的,所述的从模式控制模块包括集总模式子模块,用于当模式控制线处于集总总线模式时,为所属的从FPGA芯片提供集总工作模式的数据通信方式;其中,处于主位置的从FPGA芯片的从数据收发模块能与HyperBus总线上处于从位置的任意从FPGA芯片的从数据收发模块直接进行通信,处于从位置的从FPGA芯片的从数据收发模块只能与拓扑结构中主位置的从FPGA芯片的从数据收发模块直接进行通信。进一步的,所述的从模式控制模块包括点对点模式子模块,用于当模式控制线处于点对点总线模式时,为所属的从FPGA芯片提供点对点工作模式的数据通信方式;其中,所述的从FPGA芯片的从数据收发模块能与总线上的任意从FPGA芯片的从数据收发模块通过广播直接进行通信。进一步的,所述的从模式控制模块包括层别模式子模块,用于当模式控制线处于层别总线模式时,为所属的从FPGA芯片提供层别模式数据通信和参数设置方式;其中,所述的从FPGA芯片的从数据收发模块只能在按参数要求的层别拓扑结构中的位置与相邻位置的从FPGA芯片直接进行通信。进一步的,所述的从模式控制模块包括混合总线模式子模块;用于当模式控制线处于混合总线模式时,为所属的从FPGA芯片提供混合工作模式的数据通信方式;其中,所述的混合工作模式为从FPGA芯片在集总工作模式,点对点工作模式,层别工作模式之间自由切换的模式。进一步的,所述的混合总线模式子模块采用的工作模式的种类和顺序由从FPGA 芯片提出设置请求,由主控制芯片发出设置指令。与现有技术相比,本申请具有以下优点本申请通过添加主控芯片和HyperBusOlyperSiliocn Bus)总线连接,主控芯片通过所述HyperBus总线连接从FPGA芯片,由主控芯片按模式控制指令调整模式控制线的状态,或者初始状态下通过人工设置模式控制线的状态来设置系统总线的工作模式,实现了在同一系统下运行多总线工作模式,为FPGA原型验证带来了极大方便并减轻了成本,特别在于基于HyperBus的二次开发上,HyperBus提供了很好的系统通信和控制途径。


图1是本申请一种FPGA原型验证系统总线控制装置的结构示意图;图2是本申请一种FPGA原型验证系统总线控制装置的集总总线模式工作示意图;图3是本申请一种FPGA原型验证系统总线控制装置的点对点总线模式工作示意图;图4是本申请一种FPGA原型验证系统总线控制装置的层别总线模式工作示意图;图5是本申请一种FPGA原型验证系统总线控制装置的混合总线模式工作示意图。
具体实施例方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本申请作进一步详细的说明。参照图1,示出了本申请一种FPGA原型验证系统总线控制装置的结构示意图。所述的FPGA原型验证系统总线控制装置包括主控芯片101 ,HyperBus总线102和多个从FPGA芯片103,其中,主控芯片101通过HyperBus总线102和多个从FPGA芯片103 相连,HyperBus总线102包含模式控制线,主控芯片101还可以与外部PC机进行PC通信。
主控芯片包括主模式控制模块用于初始状态依据模式控制线的状态来设定主控芯片的工作模式,或者根据特定的设置指令设定总线模式;主数据收发模块用于依据当前总线所处的工作模式,选择相应机制传输或收发数据,并做简单的数据处理;主数据流监听模块负责监听总线上数据与指令,与外部PC机实时通信,探测系统状况。从FPGA芯片包括从模式控制模块用于依据模式控制线来设定所属从FPGA芯片的工作模式,以及根据主控芯片特定指令设定总线模式的各项参数;从数据收发模块用于依据总线所处的工作模式,选择相应机制传输或收发数据, 并做简单的数据处理。当模式控制线处于不同的状态时,主控芯片初始状态下根据模式控制线的状态设定相应的总线工作模式,或者PC机下达不同指令,主控芯片按照指令调整总线工作模式, 从FPGA芯片根据模式控制线的状态设定相应的工作模式,提供相应的数据通信方式,并可在按指令要求的拓扑结构中的位置发送和接收指令和数据。模式控制线的状态由主控芯片的主模式控制块根据特定指令调整,或者初始设置阶段的拨码开关手动设置。所述的总线模式包括集总总线模式,点对点总线模式,层别总线模式和混合总线模式等;所述的工作模式包括集总工作模式,点对点工作模式,层别工作模式和混合工作模式等,其中混合工作模式包括集总工作模式,点对点工作模式,层别工作模式等独立模式。在所有工作模式运行过程中,主控芯片始终处于管理模式位置。其中,模式控制线的初始状态可以通过拨码开关调整,以便主控芯片初始化总线工作模式用,也可以通过外部PC机发送指令到主控芯片的主模式控制模块调整模式控制线的状态,其中,外部PC机可以通过USB连接到主控芯片。在实际中,初始状态下可以通过不同的模式控制线的电平状态控制从FPGA芯片的各工作模式和主控芯片的各工作模式,其中从FPGA芯片的工作模式与主控芯片的工作模式是一一对应的,比如1000电平控制从FPGA芯片的集总工作模式和主控芯片的集总工作模式,0100电平控制从FPGA芯片的点对点工作模式和主控芯片的点对点工作模式,0010 电平控制从FPGA芯片的层别工作模式和主控芯片的层别工作模式,0001电平控制从FPGA 芯片的混合工作模式和主控芯片的混合工作模式。其中,混合工作模式为从FPGA芯片在集总工作模式,点对点工作模式,层别工作模式之间自由切换的模式,并且在混合总线模式中,在同一段时间内只可能存在一种模式,即同一段时间内的一个系统的总线模式具有独一性,比如在tl t2时刻只为集总总线模式,不能再含有其他总线模式,t2 t3时刻只为层别总线模式,不能在含有其它总线模式,相应的FPGA芯片在同一时刻也只能以一种工作模式工作和通信。实际应用中,HyperBus总线102宽度为42,通过主控芯片101将PC机和主芯片A, B相连,PC机和主控芯片的通过USB通信,主控芯101片通过HyperBus总线102与HyperBus 总线102上的从FPGA芯片通信。其中,HyperBus总线的组成包括
(1)数据地址线:DA[31:0]32根双向
(2)地址锁存控制线ALE1根单向
(3)读控制线RD1根单向
(4)写控制线WR1根单向
(5)忙控制线BUSY1根单向
(6)应答控制线 ACK1根单向
(7)时钟线CLK1根单向
(8)模式控制线:M0DE[3:0]4根单向。实际中,不同FPGA验证板之间通过堆叠,即上下堆叠板之间通过的包围在从FPGA 芯片A和从FPGA芯片B周围的高速插座连接(高速插座可以为12个),使堆叠板的主控芯片和主芯片挂在到HyperBus总线上,PC机通过主控芯片与总线上的主芯片通信,堆叠板主控芯片,变为HyperBus总线上的从器件,相关的控制信息通过总线传递,实现多板之间的同步或者对立控制。这样就满足了不同拓扑结构验证时对从FPGA芯片个数的要求。参照图2,示出了本申请一种FPGA原型验证系统总线控制装置的集总总线模式工作示意图。在从FPGA芯片的从模式控制模块中含有集总模式子模块,当模式控制线处于集总总线模式时,集总模式子模块就与主控制芯片的指令相结合,将所在的从FPGA芯片确定为在集总工作模式,为所属的从FPGA芯片提供集总工作模式的数据通信方式,相应的所属 FPGA芯片就处于集总工作模式。在实际中,初始状态下可以通过拨码开关跳转模式控制线M0DE[3:0]到表征集总总线模式的状态下,表明主控芯片和从FPGA芯片需要采用集总工作模式,或者通过PC机的配置命令,主控芯片设置模式控制线M0DE[3:0]到表征集总总线模式的状态下,并表明主控芯片和从FPGA芯片需要采用集总工作模式。此时HyperBus总线处于集总总线模式之下,主控芯片以集总工作模式的方式管理所有以集总工作模式进行工作的从FPGA芯片。在此模式下,主控芯片以集总工作模式管理所有从FPGA芯片,并通过主数据收发模块选择集总工作模式机制传输或者收发数据。主控芯片可以和主位置或者从位置FPGA通信,在初始化集总总线时,主控芯片会根据PC指令设定主位置FPGA和从位置FPGA,而主控芯片和从FPGA芯片以集总模式通信, 从FPGA芯片之间通信必须经过主位置FPGA,主位置FPGA负责从芯片的数据请求。同时,主控芯片的主数据流监听模块还可以监听HyperBus总线中的数据,并可以将数据实时发送到外部PC机的控制端,显示数据的处理状态,探测整个系统的状况。整个验证环节对研发提供了很大的方便,比如对做图像处理和算法研究的验证。参照图3,示出了本申请一种FPGA原型验证系统总线控制装置的点对点总线模式工作模式示意图。在从FPGA芯片的从模式控制模块中含有点对点模式子模块,当模式控制线处于点对点总线模式状态时,点对点模式子模块就为所属的从FPGA芯片提供点对点工作模式的数据通信方式,相应的所属FPGA芯片就处于点对点工作模式。与主控芯片的相关指令相结合,将所在的从FPGA芯片确定为在点对点工作模式工作。
在实际中,初始状态下可以通过拨码开关跳转模式控制线M0DE[3:0]到表征点对点总线模式状态下,表明主控芯片和从FPGA芯片需要采用点对点工作模式,或者通过PC机的配置命令自动跳转模式控制线MODE [3:0]到表征点对点总线模式状态下,并表明主控芯片和从FPGA芯片需要采用点对点工作模式。此时HyperBus总线处于点对点总线模式之下,主控芯片以点对点工作模式的方式管理所有以点对点工作模式进行工作的从FPGA芯片。在此模式下,每个从FPGA芯片具有不同的地址,相互之间通过广播来通信,每个从FPGA芯片的从数据收发模块都可以与HyperBus总线上的其他从FPGA芯片的从数据收发模块直接进行通信。如图3,当模式控制线处于点对点总线模式状态下时,整个系统处于点对点工作模式。 外部PC机通过USB通信与主控芯片进行通信,主控芯片的主数据收发模块发送初始指令和数据到任意从FPGA芯片A、B、C、D、E等进行处理,从FPGA芯片A、B、C、D、E等可将处理后的指令和数据直接发送到HyperBus总线上其他的任意一个从FPGA芯片进行处理;同时HyperBus总线上的任意一个从FPGA芯片也可以直接接收其他从FPGA芯片的指令和数据。比如,从FPGA芯片A接收到从FPGA芯片E处理完的指令和数据进行处理后,如果从FPGA芯片B是空置状态,则从FPGA芯片A可以将自己处理完的数据直接输送到从FPGA芯片B进行处理,其他情况以此类推。同时,主控芯片的主数据流监听模块还可以监听HyperBus总线中的数据,并可以将数据实时发送到外部PC机的控制端,显示数据的处理状态,探测整个系统的状况。参照图4,示出了本申请一种FPGA原型验证系统总线控制装置的层别总线模式工作示意图。在从FPGA芯片的从模式控制模块中含有层别模式子模块,当模式控制线处于层别总线模式状态时,层别模式子模块就为所属的从FPGA芯片提供层别工作模式的数据通信方式,相应的所属FPGA芯片就处于层别工作模式。与主控制芯片指令相结合,将所在的从FPGA芯片确定为在层别工作模式工作。在实际中,初始状态下可以通过拨码开关跳转模式控制线M0DE[3:0]到表征层别总线模式状态下,并表明主控芯片和从FPGA芯片需要采用层别工作模式,或者通过PC机的配置命令自动跳转模式控制线MODE[3:0]到表征层别总线模式状态下,并表明主控芯片和从FPGA芯片需要采用层别工作模式。此时HyperBus总线处于层别总线模式之下,主控芯片以层别工作模式的方式管理所有以层别工作模式进行工作的从FPGA芯片。在此模式下,主控芯片以层别工作模式管理所有从FPGA芯片,并通过主数据收发模块选择层别工作模式机制传输或者收发数据。初始化阶段主控芯片的主数据收发模块将需要进行验证的层别拓扑结构的指令通过PC通信输入到到需要进行测试的从FPGA芯片的从数据收发模块。从FPGA芯片根据接收到的指令确认自己在整个拓扑结构中的身份位置,并只能在其所在的位置上与相邻接位置的从FPGA芯片进行通信(即只能接收相邻接位置的从 FPGA芯片的从数据收发模块的指令和数据,或者发送指令和数据到相邻接位置的从FPGA 芯片的从数据收发模块)。
如图4,当模式控制线处于层别总线模式状态下时,整个系统处于层别工作模式。 PC机控制端发送指令和数据到主控芯片,主控芯片的主数据收发模块发送指令和数据到各从FPGA芯片的从数据收发模块,从FPGA芯片A、B、C、D、E等根据自己的从数据收发模块接收到的指令中的层别拓扑结构信息确认自己在层别拓扑结构中的位置,并只能与相邻接位置的从FPGA芯片进行通信。 比如,从FPGA芯片B只能直接跟从FPGA芯片A进行通信,从FPGA芯片A只能直接与从FPGA芯片B、C通信,从FPGA芯片C只能直接与从FPGA芯片A、D、E进行通信,如果从 FPGA芯片B的数据要发送到从FPGA芯片E,则只能首先发送到从FPGA芯片A,再由从FPGA 芯片A发送到从FPGA芯片C,再由从FPGA芯片C发送到从FPGA芯片E。其他情况可以以此类推。同时,主控芯片的主数据流监听模块还可以监听HyperBus总线中的数据,并可以将数据实时发送到外部PC机的控制端,显示数据的处理状态,探测整个系统的状况。参照图5,示出发明一种FPGA原型验证系统总线控制装置的混合总线模式工作方式示意图。在从FPGA芯片的从模式控制模块中含有混合模式子模块,当模式控制线处于混合总线模式状态时,混合模式子模块就为所属的从FPGA芯片提供混合工作模式的数据通信方式,相应的所属FPGA芯片就处于混合工作模式。并与主控芯片指令相结合,将所在的从FPGA芯片确定为在混合工作模式工作。通过PC机的配置命令配置主控芯片处于混合工作模式下,并使模式控制线处于混合总线模式下,此时HyperBus总线处于混合总线模式之下,主控芯片以混合工作模式的方式管理所有以混合工作模式进行工作的从FPGA芯片,其中混合工作模式为从FPGA芯片在集总工作模式、点对点工作模式、层别工作模式之间自由切换的模式;混合总线模式按某个从FPGA芯片判断需要切换到的某种工作模式发送指令到主控芯片进行相应总线传输模式的切换,只传输相应指令到从FPGA,从而设置相应寄存器使FPGA工作于不同模式。在混合工作模式下,从FPGA芯片的从模式控制模块的混合模式子模块赋予从 FPGA芯片变发送更模式的权利,以达到在不同身份位置的工作状态,模拟现实中数据处理和控制上的诸多验证问题。如图5,在混合总线模式下,从FPGA芯片A、B、C、D、E等所处的模式根据各自从数据收发模块受到的实际指令运行情况进行选择,从FPGA芯片A、B、C、D、E等之间的连接关系也由实际指令运行情况进行选择。主控芯片控制在集总工作模式,点对点工作模式和层别工作模式中按需求自由切换。其中,同一时刻整个系统只能以集总工作模式,点对点工作模式和层别工作模式之中的一种情况工作。比如,从FPGA芯片A的从模式控制模块的混合模式子模块判断下一阶段需要在集总工作模式下进行工作,则有从FPGA芯片A发送模式变更指令给主控芯片,由主控芯片发送各从FPGA芯片的身份位置信息,设置模式控制线,从而使整个系统自动调整到集总工作模式,所有从FPGA芯片按照集总工作模式进行工作,其中所有从FPGA芯片继续保持发送变更模式指令的权利;
随后,当某个从FPGA芯片,比如从FPGA芯片C的从模式控制模块的混合模式子模块判断下一阶段整个系统需要在层别工作模式下进行工作,则由从FPGA芯片C的从模式控制模块的混合模式子模块发送变更模式指令,主控芯片命令整个系统自动跳转到层别总线模式,然后所有从FPGA芯片按照所在的相应指令要求的拓扑结构中的身份位置进行数据处理,其中所有从FPGA芯片继续保持能发送变更模式指令的权利;随后,当某个从FPGA芯片比如从FPGA芯片D的从模式控制模块的混合模式子模块判断下一阶段整个系统需要在点对点工作模式下进行工作,则由从FPGA芯片D的的从模式控制模块的混合模式子模块发送模式变更指令,主控芯片命令整个系统自动跳转到点对点工作模式,然后所有从FPGA芯片按照点对点工作模式进行工作。其中,混合工作模式可以采用集总工作模式,点对点工作模式,层别工作模式等中的多个,其根据从FPGA芯片的实际指令和数据运行情况而定,并且,所述的混合总线模式子模块采用的工作模式的种类和顺序由从FPGA芯片设置或者人工设置模式控制线来确定。同时,主控芯片的主数据流监听模块还可以监听HyperBus总线中的数据,并可以将数据实时发送到外部PC机的控制端,显示数据的处理状态,探测整个系统的状况。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上对本申请所提供的一种从FPGA原型验证系统总线控制装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
权利要求
1.一种FPGA原型验证系统总线控制装置,其特征在于,包括包括主控芯片,HyperBus总线和多个从FPGA芯片,其中,主控芯片通过HyperBus总线和多个从FPGA芯片相连,HyperBus总线包含模式控制线; 所述主控芯片包括主模式控制模块用于根据PC机特定的设置指令设定总线模式; 主数据收发模块用于依据当前总线所处的工作模式,选择相应机制传输或收发数据, 并做简单的数据处理;主数据流监听模块负责监听总线上数据与指令,与外部PC机实时通信,探测系统状况;所述从FPGA芯片包括从模式控制模块用于依据模式控制线的状态以及特定指令设定总线模式的各项参数进而来设定所属从FPGA芯片的工作模式;从数据收发模块用于依据总线所处的工作模式,选择相应机制传输或收发数据,并做简单的数据处理。
2.如权利要求1所述的装置,其特征在于还包括拨码开关,用于调整模式控制线的状态,用于人工初始设置总线的工作模式。
3.如权利要求1所述的装置,其特征在于所述模式控制线的状态由主控芯片的主模式控制块根据特定指令调整,或者初始设置阶段的拨码开关手动设置。
4.如权利要求1所述的装置,其特征在于所述的从模式控制模块包括集总模式子模块,用于当模式控制线处于集总总线模式时,为所属的从FPGA芯片提供集总工作模式的数据通信方式;其中,处于主位置的从FPGA芯片的从数据收发模块能与HyperBus总线上处于从位置的任意从FPGA芯片的从数据收发模块直接进行通信,处于从位置的从FPGA芯片的从数据收发模块只能与拓扑结构中主位置的从FPGA芯片的从数据收发模块直接进行通信。
5.如权利要求1所述的装置,其特征在于所述的从模式控制模块包括点对点模式子模块,用于当模式控制线处于点对点总线模式时,为所属的从FPGA芯片提供点对点工作模式的数据通信方式;其中,所述的从FPGA芯片的从数据收发模块能与总线上的任意从FPGA芯片的从数据收发模块通过广播直接进行通信。
6.如权利要求1所述的装置,其特征在于所述的从模式控制模块包括层别模式子模块,用于当模式控制线处于层别总线模式时,为所属的从FPGA芯片提供层别模式数据通信和参数设置方式;其中,所述的从FPGA芯片的从数据收发模块只能在按参数要求的层别拓扑结构中的位置与相邻位置的从FPGA芯片直接进行通信。
7.如权利要求1所述的装置,其特征在于所述的从模式控制模块包括混合总线模式子模块;用于当模式控制线处于混合总线模式时,为所属的从FPGA芯片提供混合工作模式的数据通信方式;其中,所述的混合工作模式为从FPGA芯片在集总工作模式,点对点工作模式,层别工作模式之间自由切换的模式。
8.如权利要求7所述的装置,其特征在于所述的混合总线模式子模块采用的工作模式的种类和顺序由从FPGA芯片提出设置请求,由主控制芯片发出设置指令。
全文摘要
本申请提供了一种FPGA原型验证系统总线控制装置,涉及FPGA原型验证领域。所述装置包括包括包括主控芯片,HyperBus总线和多个从FPGA芯片,其中,主控芯片通过HyperBus总线和多个从FPGA芯片相连,HyperBus总线包含模式控制线;所述主控芯片包括主模式控制模块,主数据收发模块,主数据流监听模块;所述从FPGA芯片包括从模式控制模块,从数据收发模块。本申请通过添加主控芯片和HyperBus(HyperSiliocn Bus)总线连接,由主控芯片按模式控制指令调整模式控制线的状态,或者初始状态下通过人工设置模式控制线的状态来设置系统总线的工作模式,实现了在同一系统下运行多总线工作模式,为FPGA原型验证带来了极大方便并减轻了成本,特别在于基于HyperBus的二次开发上,HyperBus提供了很好的系统通信和控制途径。
文档编号G06F13/20GK102306131SQ201110242838
公开日2012年1月4日 申请日期2011年8月23日 优先权日2011年8月23日
发明者刘永宏, 郭文帅 申请人:北京亚科鸿禹电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1