CN110502466A - 一种spi总线多主-多从扩展的控制方法及装置 - Google Patents
一种spi总线多主-多从扩展的控制方法及装置 Download PDFInfo
- Publication number
- CN110502466A CN110502466A CN201910654809.9A CN201910654809A CN110502466A CN 110502466 A CN110502466 A CN 110502466A CN 201910654809 A CN201910654809 A CN 201910654809A CN 110502466 A CN110502466 A CN 110502466A
- Authority
- CN
- China
- Prior art keywords
- control
- priority
- equipment
- main
- master
- 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
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/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及了一种SPI总线多主‑多从扩展的控制方法和装置,该方法包括基于主控芯片执行以下步骤:为SPI总线的各主设备按照预设优先级参数分配优先级;响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备;接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主从数据传输;响应于当前主设备放弃控制权,按照优先级参数重新设置主设备的优先级,并依据所重新设置的优先级进行随后的控制权分配。本发明的方法不仅可实现单主设备访问多从设备,而且可实现多主设备访问多从设备,无需额外的控制芯片/管脚,大大降低了设计成本和布线复杂度。
Description
技术领域
本发明涉及服务器交换机总线技术领域。本发明进一步涉及一种SPI总线多主-多从扩展的控制方法及装置。
背景技术
SPI总线是Serial Peripheral Interface(串行外设接口)的缩写,是一种高速、全双工、同步的通信总线,能够以主从点对点的形式进行数据传输。利用SPI总线,在芯片的管脚上只占用四根信号线来进行总线通信,不仅节约了芯片的管脚,而且可以节省印刷电路板PCB布线空间,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议。
在当前服务器/交换机***设计中,SPI总线多用于芯片与FLASH芯片之间的数据传输。而服务器/交换机***多采用冗余设计,即需要通过SPI总线连接多个芯片及多个FLASH芯片。然而SPI总线是串行外设接口,即其以点对点的形式进行主设备和从设备之间的数据传输。若要满足服务器/交换机***的冗余设计需求,往往需要大量的切换芯片对SPI总线进行切换,其设计成本高,控制逻辑复杂,布线难度也很大。
因此,亟需一种简单有效的SPI总线扩展的方法以及SPI总线扩展之后的控制方法来解决现有技术中存在的上述问题,以满足服务器/交换机对SPI设备的冗余设计要求。
发明内容
一方面,本发明基于上述目的提出了一种SPI总线多主-多从扩展的控制方法,该方法包括基于主控芯片执行以下步骤:
为SPI总线的各主设备按照预设优先级参数分配优先级;
响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备;
接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输;
响应于当前主设备放弃控制权,按照优先级参数重新设置主设备的优先级,并依据所重新设置的优先级进行随后的控制权分配。
根据本发明的SPI总线多主-多从扩展的控制方法的实施例,其中响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备进一步包括:
响应于主设备请求控制权,进一步判断是否有多个主设备同时发出请求;
响应于判定有多个主设备同时请求控制权,将控制权分配给发出请求的主设备中优先级最高的主设备;
响应于判定只有一个主设备请求控制权,将控制权分配给发出请求的主设备。
根据本发明的SPI总线多主-多从扩展的控制方法的实施例,其中响应于当前主设备放弃控制权,按照优先级参数重新设置主设备的优先级,并依据所设置的优先级进行随后的控制权分配进一步包括:
响应于检测到当前主设备主动释放控制权,判定当前主设备放弃控制权;
响应于检测到当前主设备连续1s未使用SPI总线进行数据传输,判定当前主设备放弃控制权。
根据本发明的SPI总线多主-多从扩展的控制方法的实施例,其中主设备配置为通过拉低CS信号请求控制权,通过拉高CS信号主动释放控制权。
根据本发明的SPI总线多主-多从扩展的控制方法的实施例,其中接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输进一步包括:
按位接收当前主设备发送的通道选择参数并写入通道选择寄存器中;
读取通道选择寄存器中保存的通道选择参数;
根据通道选择参数选通对应的从设备作为当前从设备。
根据本发明的SPI总线多主-多从扩展的控制方法的实施例,接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主从数据传输进一步包括:
按位接收当前主设备发送的优先级参数并写入优先级寄存器中。
根据本发明的SPI总线多主-多从扩展的控制方法的实施例,其中主控芯片为CPLD芯片,该CPLD芯片包括至少一个优先级寄存器和一个通道选择寄存器。
另一方面,本发明还提出了一种SPI总线多主-多从扩展的控制装置,其中该装置包括:
至少一个处理器;和
存储器,该存储器存储有处理器可运行的程序代码,该程序代码在被处理器运行时执行以下步骤:
为SPI总线的各主设备按照预设优先级参数分配优先级;
响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备;
接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输;
响应于当前主设备放弃控制权,按照优先级参数重新设置主设备的优先级,并依据所设置的优先级进行随后的控制权分配。
根据本发明的SPI总线多主-多从扩展的控制装置的实施例,其中响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备进一步包括:
响应于主设备请求控制权,进一步判断是否有多个主设备同时发出请求;
响应于判定有多个主设备同时请求控制权,将控制权分配给发出请求的主设备中优先级最高的主设备;
响应于判定只有一个主设备请求控制权,将控制权分配给发出请求的主设备。
根据本发明的SPI总线多主-多从扩展的控制装置的实施例,其中接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输进一步包括:
按位接收当前主设备发送的通道选择参数并写入通道选择寄存器中;
读取通道选择寄存器中保存的通道选择参数;
根据通道选择参数选通对应的从设备作为当前从设备。
采用上述技术方案,本发明至少具有如下有益效果:本发明为了解决服务器/交换机内部SPI总线扩展问题,提出了一种基于主控芯片的SPI总线扩展的控制方法,该方法根据主设备的请求及为主设备分配的优先级来切换主设备,根据主设备发送的通道选择参数切换从设备,从而实现了SPI总线多主-多从扩展。因此,根据本发明的方法不仅可以实现单个主设备访问多个从设备的功能,而且可以实现多个主设备访问多个从设备的功能。同时,通过本发明所提出的控制逻辑设计,主设备及从设备的切换均无需额外增加控制芯片/控制管脚即可实现,大大降低了设计成本和布线复杂度。
本发明提供了实施例的各方面,不应当用于限制本发明的保护范围。根据在此描述的技术可设想到其它实施方式,这对于本领域普通技术人员来说在研究以下附图和具体实施方式后将是显而易见的,并且这些实施方式意图被包含在本申请的范围内。
下面参考附图更详细地解释和描述了本发明的实施例,但它们不应理解为对于本发明的限制。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对现有技术和实施例描述中所需要使用的附图作简单地介绍,附图中的部件不一定按比例绘制,并且可以省略相关的元件,或者在一些情况下比例可能已经被放大,以便强调和清楚地示出本文描述的新颖特征。另外,如本领域中已知的,结构顺序可以被不同地布置。图1示出了根据本发明的SPI总线多主-多从扩展的控制方法的实施例的示意性框图;
图2示出了根据本发明的SPI总线多主-多从扩展的硬件连接的实施例的示意图。
具体实施方式
虽然本发明可以以各种形式实施,但是在附图中示出并且在下文中将描述一些示例性和非限制性实施例,但应该理解的是,本公开将被认为是本发明的示例并不意图将本发明限制于所说明的具体实施例。
图1示出了根据本发明的SPI总线多主-多从扩展的控制方法的实施例的示意性框图。如图1所示,根据本发明的方法至少包括基于主控芯片执行以下步骤:
S1:为SPI总线的各主设备按照预设优先级参数分配优先级;
S2:响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备;
S3:接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输;
S4:响应于当前主设备放弃控制权,按照优先级参数重新设置主设备的优先级,并依据所设置的优先级进行随后的控制权分配。
首先,在***上电开始运行之后,步骤S1通过主控芯片为SPI总线的所有主设备按照预设优先级参数分配默认的优先级,作为后续进行控制权分配的重要依据。默认情况下,优选以主设备的端口号为预设优先级参数,即主控芯片优选地根据端口号为所连接的主设备按顺序分配优先级,端口号越小,优先级越高。在有需要的时候,用户可以在后续的操作中对主设备的优先级进行修改,具体操作方法在随后的步骤中进一步解释。
在分配好优先级之后,主控芯片在步骤S2中响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备。也就是说,在步骤S2中提出了一种总线仲裁原则,即经过总线的主控芯片按照主设备的请求、根据优先级将控制权赋予其中一个主设备的机制。得到控制权的主设备设即为当前主设备,有权占用SPI总线。
在步骤S2确定了有权占用SPI总线的当前主设备后,主控芯片在步骤S3中接收由该当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行当前主设备和当前从设备之间的点对点形式的主从数据传输。需要说明的是,虽然步骤S1中由主控芯片为各个主设备分配了默认的优先级,但是如前述提到的,当有需要时,用户可以对主设备的优先级进行修改,其实现手段就是通过在步骤S3中所发送的优先级参数。在需要进行优先级修改时,则发送与预设优先级参数不同的优先级参数;如果不需要修改,则步骤S3中所发送的优先级参数与预设优先级参数相同即可。在一些实施例中,获得控制权后,主设备发送的第一个字节数据为优先级参数,第二个字节为通道选择参数,此外也可以以其它的字节或其它的方式发送上述优先级参数和通道选择参数。
在当前主设备完成数据传输的任务之后,步骤S4响应于当前主设备放弃控制权,按照优先级参数设置主设备的优先级,并依据所设置的优先级进行随后的控制权分配。在当前主设备放弃了其所占有的控制权后,主控芯片按照步骤S3中接收到的优先级参数设置主设备的优先级。若步骤S3中接收的是与原优先级不同的优先级参数,则步骤S4实质上为主设备设置了新的优先级。若步骤S3中接收的是与原优先级相同的优先级参数,则步骤S4实质上并没有对主设备的优先级进行修改。由此,随后进行的控制权分配即总线仲裁依据所设置的优先级进行。根据本发明的方法循环执行步骤S2至步骤S4,直至SPI总线被释放,基于SPI总线的主从数据传输结束。
在本发明的SPI总线多主-多从扩展的控制方法的一些实施例中,步骤S2响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一(即总线仲裁原则),得到控制权的主设备为当前主设备进一步包括:
S21:响应于主设备请求控制权,进一步判断是否有多个主设备同时发出请求;
S22:响应于判定有多个主设备同时请求控制权,将控制权分配给发出请求的主设备中优先级最高的主设备;
S23:响应于判定只有一个主设备请求控制权,将控制权分配给发出请求的主设备。
基于上述总线仲裁原则(步骤S21至步骤S23)实现当有多个SPI主设备同时请求控制权时,主控芯片依据总线仲裁将控制权分配给优先级最高的SPI主设备;当只有一个SPI主设备请求控制权时,主控芯片依据总线仲裁将该控制权分配给该SPI主设备,完成了主控芯片对SPI主设备的切换。
在本发明的SPI总线多主-多从扩展的控制方法的若干实施例中,步骤S4响应于当前主设备放弃控制权,按照优先级参数重新设置主设备的优先级,并依据所设置的优先级进行随后的控制权分配进一步包括以下两种情况:响应于检测到当前主设备主动释放控制权,判定当前主设备放弃控制权;响应于检测到当前主设备在设定时长内未使用SPI总线进行数据传输,判定当前主设备放弃控制权。也就是说,在当前主设备主动释放控制权和/或当前主设备在设定时长内(例如优选连续1s)未使用SPI总线进行数据传输的情况下,都判定当前主设备放弃了其所占有的控制权。
在本发明的SPI总线多主-多从扩展的控制方法的一个或多个实施例中,主设备配置为通过拉低CS信号请求控制权,通过拉高CS信号主动释放控制权。SPI总线的CS片选(chip select)信号在本发明中被用于表达主设备对于控制权的状态,当主设备拉低CS信号时,表达其向SPI总线发出了对于控制权的请求。当占有控制权的主设备主动拉高CS信号时,表达其暂时不再需要占用SPI总线进行数据传输,因而主动向SPI总线释放其控制权,以便总控芯片随后继续基于总线仲裁原则分配控制权。
在本发明的SPI总线多主-多从扩展的控制方法的若干实施例,步骤S3接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输进一步包括:
S31:按位接收当前主设备发送的通道选择参数并写入通道选择寄存器中;
S32:读取通道选择寄存器中保存的通道选择参数;
S33:根据通道选择参数选通对应的从设备作为当前从设备。
在本发明的方法的步骤S3中,进一步包括了主控芯片在步骤S31中按位接收当前主设备发送的通道选择参数并写入通道选择寄存器中,随后步骤S32待写入完成后,整体读取在通道选择寄存器中保存的通道选择参数,此时该通道选择参数完整地指示了当前主设备需要访问的从设备的端口地址,然后主控芯片在步骤S33根据通道选择参数所指示的从设备的端口地址选通对应的从设备,将该从设备设置为当前从设备,从而可以进一步进行当前主设备和当前从设备之间的主从数据传输。由此实现了本发明所提出的从设备切换。
在本发明的SPI总线多主-多从扩展的控制方法的一些实施例中,接收由当前主设备发送的优先级参数进一步包括:按位接收当前主设备发送的优先级参数并写入优先级寄存器中。在此,优先级寄存器的值的修改操作(即优先级修改)只有在SPI总线被释放时才生效,即步骤S4在当前主设备放弃控制权时才生效。
图2示出了根据本发明的SPI总线多主-多从扩展的硬件连接的实施例的示意图。如图2所示在本发明的SPI总线多主-多从扩展的控制方法的一些实施例,其中主控芯片是但不限定于Lattice LCMXO2系列CPLD芯片10,该CPLD芯片10包括至少一个优先级寄存器20和一个通道选择寄存器30。在图2所示的实施例中该CPLD芯片10包括四个优先级寄存器20和一个通道选择寄存器30。优先级寄存器优选为8bit寄存器,用于设定主设备SPI总线优先级,每个SPI主设备对应一个优先级寄存器,因此,根据本发明的扩展方法理论上最多支持256个(0~255)SPI主设备。通道选择寄存器优选为一个8bit寄存器,用于接收和保存通道选测参数,因此,最多可支持255个(1~255)从设备。
在图2所示的硬件链路中,该CPLD芯片10一方面与多个(图2中示出的是四个)SPI主设备相连,另一方面与多个(图2中示出的是四个)SPI从设备相连,其中SP_1~4连接SPI主设备,SPI_A~D连接SPI从设备。CPLD芯片10基于前述所提出的总线仲裁原则利用本发明前述的控制方法实现主设备以及从设备的切换以及相应的数据传输。
另一方面,本发明还提出了一种SPI总线多主-多从扩展的控制装置,其中该装置包括:至少一个处理器;和存储器,该存储器存储有处理器可运行的程序代码,该程序代码在被处理器运行时执行以下步骤:
S1:为SPI总线的各主设备按照预设优先级参数分配优先级;
S2:响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一,得到控制权的主设备为当前主设备;
S3:接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输;
S4:响应于当前主设备放弃控制权,按照优先级参数重新设置主设备的优先级,并依据所设置的优先级进行随后的控制权分配。
在本发明的SPI总线多主-多从扩展的控制装置的一些实施例,步骤S2响应于主设备请求控制权,根据优先级将控制权分配给请求的主设备之一(即总线仲裁原则),得到控制权的主设备为当前主设备进一步包括:
S21:响应于主设备请求控制权,进一步判断是否有多个主设备同时发出请求;
S22:响应于判定有多个主设备同时请求控制权,将控制权分配给发出请求的主设备中优先级最高的主设备;
S23:响应于判定只有一个主设备请求控制权,将控制权分配给发出请求的主设备。
在本发明的SPI总线多主-多从扩展的控制装置的若干实施例中,步骤S3接收由当前主设备发送的优先级参数和通道选择参数,并根据通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输进一步包括:
S31:按位接收当前主设备发送的通道选择参数并写入通道选择寄存器中;
S32:读取通道选择寄存器中保存的通道选择参数;
S33:根据通道选择参数选通对应的从设备作为当前从设备。
本文所述的计算机可读存储介质(例如存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接Rambus RAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
采用上述技术方案,本发明至少具有如下有益效果:本发明为了解决服务器/交换机内部SPI总线扩展问题,提出了一种基于主控芯片的SPI总线扩展的控制方法,该方法根据主设备的请求及为主设备分配的优先级来切换主设备,根据主设备发送的通道选择参数切换从设备,从而实现了SPI总线多主-多从扩展。因此,根据本发明的方法不仅可以实现单个主设备访问多个从设备的功能,而且可以实现多个主设备访问多个从设备的功能。同时,通过本发明所提出的控制逻辑设计,主设备及从设备的切换均无需额外增加控制芯片/控制管脚即可实现,大大降低了设计成本和布线复杂度。
应当理解的是,在技术上可行的情况下,以上针对不同实施例所列举的技术特征可以相互组合,从而形成本发明范围内的另外实施例。此外,本文所述的特定示例和实施例是非限制性的,并且可以对以上所阐述的结构、步骤及顺序做出相应修改而不脱离本发明的保护范围。
在本申请中,反意连接词的使用旨在包括连接词。定或不定冠词的使用并不旨在指示基数。具体而言,对“该”对象或“一”和“一个”对象的引用旨在表示多个这样对象中可能的一个。然而,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。此外,可以使用连接词“或”来传达同时存在的特征,而不是互斥方案。换句话说,连接词“或”应理解为包括“和/或”。术语“包括”是包容性的并且具有与“包含”相同的范围。
上述实施例,特别是任何“优选”实施例是实施方式的可能示例,并且仅仅为了清楚理解本发明的原理而提出。在基本上不脱离本文描述的技术的精神和原理的情况下,可以对上述实施例做出许多变化和修改。所有修改旨在被包括在本公开的范围内。
Claims (10)
1.一种SPI总线多主-多从扩展的控制方法,其特征在于,所述方法包括基于主控芯片执行以下步骤:
为SPI总线的各主设备按照预设优先级参数分配优先级;
响应于主设备请求控制权,根据所述优先级将控制权分配给请求的所述主设备之一,得到控制权的主设备为当前主设备;
接收由所述当前主设备发送的优先级参数和通道选择参数,并根据所述通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输;
响应于所述当前主设备放弃所述控制权,按照所述优先级参数重新设置所述主设备的优先级,并依据所设置的优先级进行随后的控制权分配。
2.根据权利要求1所述的控制方法,其特征在于,所述响应于主设备请求控制权,根据所述优先级将控制权分配给请求的所述主设备之一,得到控制权的主设备为当前主设备进一步包括:
响应于主设备请求控制权,进一步判断是否有多个所述主设备同时发出请求;
响应于判定有多个所述主设备同时请求控制权,将所述控制权分配给发出请求的所述主设备中所述优先级最高的主设备;
响应于判定只有一个主设备请求控制权,将所述控制权分配给发出请求的所述主设备。
3.根据权利要求1所述的控制方法,其特征在于,所述响应于所述当前主设备放弃所述控制权,按照所述优先级参数重新设置所述主设备的优先级,并依据所设置的优先级进行随后的控制权分配进一步包括:
响应于检测到所述当前主设备主动释放控制权,判定所述当前主设备放弃所述控制权;或
响应于检测到所述当前主设备在设定时长内未使用SPI总线进行数据传输,判定所述当前主设备放弃所述控制权。
4.根据权利要求3所述的控制方法,其特征在于,所述主设备配置为通过拉低CS信号请求控制权,通过拉高CS信号主动释放控制权。
5.根据权利要求1所述的控制方法,其特征在于,所述接收由所述当前主设备发送的优先级参数和通道选择参数,并根据所述通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输,进一步包括:
按位接收所述当前主设备发送的通道选择参数并写入通道选择寄存器中;
读取所述通道选择寄存器中保存的所述通道选择参数;
根据所述通道选择参数选通对应的所述从设备作为当前从设备。
6.根据权利要求1所述的控制方法,其特征在于,所述接收由所述当前主设备发送的优先级参数和通道选择参数,并根据所述通道选择参数将对应的从设备设为当前从设备,以进行主从数据传输,进一步包括:
按位接收所述当前主设备发送的所述优先级参数并写入优先级寄存器中。
7.根据权利要求1所述的控制方法,其特征在于,所述主控芯片为CPLD芯片,所述CPLD芯片包括至少一个优先级寄存器和一个通道选择寄存器。
8.一种SPI总线多主-多从扩展的控制装置,其特征在于,所述装置包括:
至少一个处理器;和
存储器,所述存储器存储有处理器可运行的程序代码,所述程序代码在被处理器运行时执行以下步骤:
为SPI总线的各主设备按照预设优先级参数分配优先级;
响应于主设备请求控制权,根据所述优先级将控制权分配给请求的所述主设备之一,得到控制权的主设备为当前主设备;
接收由所述当前主设备发送的优先级参数和通道选择参数,并根据所述通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输;
响应于所述当前主设备放弃所述控制权,按照所述优先级参数重新设置所述主设备的优先级,并依据所设置的优先级进行随后的控制权分配。
9.根据权利要求8所述的控制装置,其特征在于,所述响应于主设备请求控制权,根据所述优先级将控制权分配给请求的所述主设备之一,得到控制权的主设备为当前主设备进一步包括:
响应于主设备请求控制权,进一步判断是否有多个所述主设备同时发出请求;
响应于判定有多个所述主设备同时请求控制权,将所述控制权分配给发出请求的所述主设备中所述优先级最高的主设备;
响应于判定只有一个主设备请求控制权,将所述控制权分配给发出请求的所述主设备。
10.根据权利要求8所述的控制装置,其特征在于,所述接收由所述当前主设备发送的优先级参数和通道选择参数,并根据所述通道选择参数将对应的从设备设为当前从设备,以进行主、从设备数据传输进一步包括:
按位接收所述当前主设备发送的通道选择参数并写入通道选择寄存器中;
读取所述通道选择寄存器中保存的所述通道选择参数;
根据所述通道选择参数选通对应的所述从设备作为当前从设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910654809.9A CN110502466A (zh) | 2019-07-19 | 2019-07-19 | 一种spi总线多主-多从扩展的控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910654809.9A CN110502466A (zh) | 2019-07-19 | 2019-07-19 | 一种spi总线多主-多从扩展的控制方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110502466A true CN110502466A (zh) | 2019-11-26 |
Family
ID=68586232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910654809.9A Pending CN110502466A (zh) | 2019-07-19 | 2019-07-19 | 一种spi总线多主-多从扩展的控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110502466A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111090600A (zh) * | 2019-12-09 | 2020-05-01 | 苏州浪潮智能科技有限公司 | 一种总线共享的方法 |
CN111159077A (zh) * | 2019-12-20 | 2020-05-15 | 深圳星康医疗科技有限公司 | 一种spi双主设备访问同一从设备的协同方法及*** |
CN112506840A (zh) * | 2020-12-07 | 2021-03-16 | 天津津航计算技术研究所 | 一种多对多spi总线切换方法 |
CN114422288A (zh) * | 2021-12-29 | 2022-04-29 | 厦门诚通达智能科技有限公司 | 基于Modbus协议的通讯*** |
CN114968890A (zh) * | 2022-05-27 | 2022-08-30 | 中国第一汽车股份有限公司 | 一种同步通信控制方法、装置、***及存储介质 |
CN116566761A (zh) * | 2023-03-28 | 2023-08-08 | 成都电科星拓科技有限公司 | Spi双主机共享仲裁***及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075220A (zh) * | 2007-04-29 | 2007-11-21 | 北京中星微电子有限公司 | 一种总线仲裁仿真装置和方法 |
CN101261610A (zh) * | 2007-03-06 | 2008-09-10 | 来智勇 | 多主设备无冲突访问从设备的方法及装置 |
CN101763333A (zh) * | 2008-12-08 | 2010-06-30 | 北京谊安医疗***股份有限公司 | 总线控制器及实现多主机通信的方法 |
CN109002408A (zh) * | 2018-07-18 | 2018-12-14 | 北京忆芯科技有限公司 | 总线仲裁方法和*** |
CN109446145A (zh) * | 2018-10-30 | 2019-03-08 | 郑州云海信息技术有限公司 | 一种服务器主板i2c通道扩展芯片、电路及控制方法 |
-
2019
- 2019-07-19 CN CN201910654809.9A patent/CN110502466A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101261610A (zh) * | 2007-03-06 | 2008-09-10 | 来智勇 | 多主设备无冲突访问从设备的方法及装置 |
CN101075220A (zh) * | 2007-04-29 | 2007-11-21 | 北京中星微电子有限公司 | 一种总线仲裁仿真装置和方法 |
CN101763333A (zh) * | 2008-12-08 | 2010-06-30 | 北京谊安医疗***股份有限公司 | 总线控制器及实现多主机通信的方法 |
CN109002408A (zh) * | 2018-07-18 | 2018-12-14 | 北京忆芯科技有限公司 | 总线仲裁方法和*** |
CN109446145A (zh) * | 2018-10-30 | 2019-03-08 | 郑州云海信息技术有限公司 | 一种服务器主板i2c通道扩展芯片、电路及控制方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111090600A (zh) * | 2019-12-09 | 2020-05-01 | 苏州浪潮智能科技有限公司 | 一种总线共享的方法 |
CN111159077A (zh) * | 2019-12-20 | 2020-05-15 | 深圳星康医疗科技有限公司 | 一种spi双主设备访问同一从设备的协同方法及*** |
CN112506840A (zh) * | 2020-12-07 | 2021-03-16 | 天津津航计算技术研究所 | 一种多对多spi总线切换方法 |
CN112506840B (zh) * | 2020-12-07 | 2022-11-18 | 天津津航计算技术研究所 | 一种多对多spi总线切换方法 |
CN114422288A (zh) * | 2021-12-29 | 2022-04-29 | 厦门诚通达智能科技有限公司 | 基于Modbus协议的通讯*** |
CN114422288B (zh) * | 2021-12-29 | 2024-03-19 | 厦门诚通达智能科技有限公司 | 基于Modbus协议的通讯*** |
CN114968890A (zh) * | 2022-05-27 | 2022-08-30 | 中国第一汽车股份有限公司 | 一种同步通信控制方法、装置、***及存储介质 |
CN116566761A (zh) * | 2023-03-28 | 2023-08-08 | 成都电科星拓科技有限公司 | Spi双主机共享仲裁***及方法 |
CN116566761B (zh) * | 2023-03-28 | 2024-02-02 | 成都电科星拓科技有限公司 | Spi双主机共享仲裁***及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110502466A (zh) | 一种spi总线多主-多从扩展的控制方法及装置 | |
US9311157B2 (en) | Method and apparatus for dynamic resource allocation of processing units on a resource allocation plane having a time axis and a processing unit axis | |
US8918568B2 (en) | PCI express SR-IOV/MR-IOV virtual function clusters | |
CN107548488B (zh) | 具有dsp引擎及增强上下文切换能力的中央处理单元 | |
CN106126460B (zh) | 热插拔设备预留资源分配方法、装置和*** | |
CN105868134A (zh) | 高性能多口ddr控制器及其实现方法 | |
CN114781316B (zh) | 组网布局方法、装置、设备和存储介质 | |
CN103106166A (zh) | 一种协议无关、可支持目标读写操作的pcie ip核用户逻辑接口设计方法 | |
CN105205025A (zh) | 一种芯片互连的方法、芯片及装置 | |
CN104615439A (zh) | 一种可重构***的配置控制器 | |
KR101994929B1 (ko) | 집합 통신 수행 방법 및 이를 이용한 집합 통신 시스템 | |
CN107193753A (zh) | 内存重整方法、装置、电子设备及可读存储介质 | |
CN101169774A (zh) | 一种多处理器***、共享控制装置及启动从处理器的方法 | |
CN105353671B (zh) | 核电站仪控***的变量强制和释放装置及方法 | |
US7206889B2 (en) | Systems and methods for enabling communications among devices in a multi-cache line size environment and disabling communications among devices of incompatible cache line sizes | |
CN109597565B (zh) | 虚拟Plane管理 | |
CN110347615A (zh) | 动态资源配置方法及缓存单元 | |
CN116521608A (zh) | 数据迁移方法及计算设备 | |
CN108541365A (zh) | 用于交换机中拥塞信息的分发的设备和方法 | |
CN106301305B (zh) | 一种开关矩阵驱动电路及方法 | |
CN114168506A (zh) | 多通道dma控制传输装置 | |
CN104112102B (zh) | 支持地址交叉方案配置的多ddr访问控制方法及装置 | |
CN100365605C (zh) | 多级中断申请装置和方法 | |
CN106933663B (zh) | 一种面向众核***的多线程调度方法及*** | |
CN107247673B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191126 |
|
RJ01 | Rejection of invention patent application after publication |