CN117435534B - 基于外围总线的数据传输电路、方法及处理器 - Google Patents

基于外围总线的数据传输电路、方法及处理器 Download PDF

Info

Publication number
CN117435534B
CN117435534B CN202311443577.5A CN202311443577A CN117435534B CN 117435534 B CN117435534 B CN 117435534B CN 202311443577 A CN202311443577 A CN 202311443577A CN 117435534 B CN117435534 B CN 117435534B
Authority
CN
China
Prior art keywords
signal
character string
master device
target
data
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.)
Active
Application number
CN202311443577.5A
Other languages
English (en)
Other versions
CN117435534A (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.)
Hexin Technology Co ltd
Shanghai Hexin Digital Technology Co ltd
Original Assignee
Hexin Technology Co ltd
Shanghai Hexin Digital 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 Hexin Technology Co ltd, Shanghai Hexin Digital Technology Co ltd filed Critical Hexin Technology Co ltd
Priority to CN202311443577.5A priority Critical patent/CN117435534B/zh
Publication of CN117435534A publication Critical patent/CN117435534A/zh
Application granted granted Critical
Publication of CN117435534B publication Critical patent/CN117435534B/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/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
    • 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/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)

Abstract

本申请提供的基于外围总线的数据传输电路、方法及处理器,数据传输电路中包括:译码模块和比较模块。译码模块用于基于主设备发送的地址信号,在从设备中确定主设备需要访问的至少一个目标设备,并向目标设备发送片选信号;地址信号用于指示主设备需要访问的至少一个目标设备;比较模块分别与从设备、译码模块以及主设备连接;目标设备用于基于接收到的片选信号响应主设备的数据访问操作,并向比较模块发送反馈信号;反馈信号表征数据访问完毕;比较模块,用于基于译码模块输出的指示信号和接收到的反馈信号,确定结果信号,并将结果信号发送至主设备。进而,确保主设备可以基于APB总线一次实现多个目标设备的数据访问,提高数据访问效率。

Description

基于外围总线的数据传输电路、方法及处理器
技术领域
本申请涉及电子技术领域,尤其涉及一种基于外围总线的数据传输电路、方法及处理器。
背景技术
目前,外围总线(Advanced Peripheral Bus,简称APB),主要用于低带宽的外设之间的连接。相关技术中,当采用APB总线进行数据传输时,若一个主设备需要向多个从设备发送同一份数据,则主设备每次进行数据传输时,只能向多个从设备中的一个从设备进行数据传输,进而导致数据传输效率较低。
因此,亟需一个数据传输电路以提高数据传输效率。
发明内容
本申请提供的基于外围总线的数据传输电路、方法及处理器,用以提高数据传输效率。
第一方面,一种基于外围总线的数据传输电路,所述电路包括:译码模块和比较模块;
其中,主设备和所述译码模块连接;所述译码模块与至少一个从设备连接;所述译码模块用于基于所述主设备发送的地址信号,在从设备中确定所述主设备需要访问的至少一个目标设备,并向目标设备发送片选信号;所述地址信号用于指示主设备需要访问的至少一个目标设备;
所述比较模块分别与所述从设备、所述译码模块以及所述主设备连接;
所述目标设备用于基于接收到的片选信号响应主设备的数据访问操作,并向比较模块发送反馈信号;所述反馈信号表征数据访问完毕;
所述比较模块,用于基于所述译码模块输出的指示信号和接收到的反馈信号,确定结果信号,并将结果信号发送至所述主设备;所述结果信号用于指示是否完成数据访问操作;所述指示信号用于指示从设备确定出的目标设备。
在一种可能的实现方式中,所述比较模块包括:第一寄存单元、第二寄存单元以及比较单元;其中,所述第一寄存单元分别与所述译码模块、所述比较单元连接;所述第二寄存单元分别与所述从设备、所述比较单元连接;
所述第一寄存单元用于根据所述指示信号,对所述第一寄存单元中所包含的第一字符串中的字符取值进行调整,得到调整后的第一字符串;其中,所述调整后的第一字符串的取值用于指示目标设备;
所述第二寄存单元用于根据反馈信号,对所述第二寄存单元中所包含的第二字符串中的字符取值进行调整,得到调整后的第二字符串;其中,所述调整后的第二字符串的取值用于指示已完成数据访问的目标设备;
所述比较单元,用于根据所述调整后的第一字符串和调整后的第二字符串,确定结果信号。
在一种可能的实现方式中,若所述第一字符串中字符采用第一取值表征所述字符对应的从设备被选作目标设备,且,所述第二字符串中采用所述第一取值表征已接受到所述字符对应的从设备反馈的反馈信号,则所述比较单元,具体用于若确定所述调整后的第一字符串和调整后的第二字符串相同,则控制向所述主设备的输出的结果信号从第一电平值切换至第二电平值;若确定所述调整后的第一字符串和调整后的第二字符串不同,则控制向所述主设备的输出的结果信号处于所述第一电平值。
在一种可能的实现方式中,所述主设备的第一端口与所述译码模块的第一输入端连接,用于传输所述地址信号;所述主设备的第二端口和所述译码模块的第二输入端连接,所述译码模块用于基于所述第二输入端接收控制信号;其中,所述控制信号用于控制所述译码模块开始工作。
在一种可能的实现方式中,所述主设备的第一端口与所述从设备的地址端口连接;所述主设备用于向所述从设备传输所述地址信号;所述地址信号还用于指示所述主设备需要写入从设备的待写入数据所对应的地址信息。
在一种可能的实现方式中,所述主设备的第三端口与所述从设备的数据端口连接;所述主设备用于基于所述第三端口向所述从设备传输需要写入的待写入数据,并且,基于所述第三端口接收所述主设备需要在所述从设备中读取的数据。
在一种可能的实现方式中,所述译码模块具体用于基于所述主设备发送的地址信号,确定需要访问的设备的接口类型;并确定具有所述接口类型的接口的从设备为目标设备。
第二方面,本申请提供一种基于外围总线的数据传输方法,所述方法包括;
接收主设备发送的地址信号;其中,所述地址信号用于指示所述主设备需要访问的至少一个目标设备;
根据所述地址信号,在所述主设备对应的从设备中,确定至少一个目标设备;
向所述目标设备发送片选信号;其中,所述片选信号用于指示所述目标设备响应主设备的数据访问操作;所述数据访问操作用于表征向从设备写入数据的操作或者读取从设备中的数据的操作;
接收指示信号和所述目标设备发送的反馈信号,并根据所述指示信号和所述反馈信号,确定结果信号;所述指示信号为基于地址信号所确定的用于指示目标设备的信号;
向所述主设备发送所述结果信号。
在一种可能的实现方式中,所述数据访问操作为所述主设备请求目标设备进行数据存储的操作;或者,所述数据访问操作为所述主设备请求由所述目标设备进行数据处理的访问操作。
第三方面,本申请提供一种基于外围总线的数据传输装置,所述装置包括:
第一接收单元,用于接收主设备发送的地址信号;其中,所述地址信号用于指示所述主设备需要访问的至少一个目标设备;
第一确定单元,用于根据所述地址信号,在所述主设备对应的从设备中,确定至少一个目标设备;
第一发送单元,用于向所述目标设备发送片选信号;其中,所述片选信号用于指示所述目标设备响应主设备的数据访问操作;所述数据访问操作用于表征向从设备写入数据的操作或者读取从设备中的数据的操作;
第二接收单元,用于接收指示信号和所述目标设备发送的反馈信号;
第二确定单元,用于根据所述指示信号和所述反馈信号,确定结果信号;所述指示信号为基于地址信号所确定的用于指示目标设备的信号;
第三发送单元,用于向所述主设备发送所述结果信号。
第四方面,本申请提供一种电子设备,所述电子设备包括如第一方面中任一项所述的基于外围总线的数据传输电路。
第五方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如第二方面中所述的方法。
第六方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第二方面中所述的方法。
第七方面,本申请提供一种计算机程序产品,计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现如第二方面中所述的方法。
本申请提供的基于外围总线的数据传输电路、方法及处理器,数据传输电路中包括:译码模块和比较模块。其中,主设备和译码模块连接;译码模块与至少一个从设备连接;译码模块用于基于主设备发送的地址信号,在从设备中确定主设备需要访问的至少一个目标设备,并向目标设备发送片选信号;地址信号用于指示主设备需要访问的至少一个目标设备;比较模块分别与从设备、译码模块以及主设备连接;目标设备用于基于接收到的片选信号响应主设备的数据访问操作,并向比较模块发送反馈信号;反馈信号表征数据访问完毕;比较模块,用于基于译码模块输出的指示信号和接收到的反馈信号,确定结果信号,并将结果信号发送至主设备;结果信号用于指示是否完成数据访问操作;指示信号用于指示从设备确定出的目标设备。可以理解的是,上述电路通过在数据传输电路中设置译码模块,进而,通过将译码模块和主设备所对应的地址信号输出端口连接,以及基于译码模块对接收到的地址信号进行译码处理,以便得到该地址信号所指示的本次需要访问的至少一个目标设备。进而,基于译码模块,向确定出的目标设备发送片选信号,以确保主设备可以基于APB总线一次实现多个目标设备的数据访问,进而,避免主设备需要一次向多个目标设备进行数据传输时,仅能逐一访问所导致的数据传输效率较低的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请提供的一种数据传输架构;
图2为本申请实施例提供的一种基于外围总线的数据传输电路的电路结构示意图;
图3为本申请实施例提供的又一种基于外围总线的数据传输电路的电路结构示意图;
图4为本申请实施例提供的另一种基于外围总线的数据传输电路的电路结构示意图;
图5为本申请实施例提供的一种基于外围总线的数据传输方法的流程示意图;
图6为本申请实施例提供的又一种数据传输电路示意图;
图7为本申请实施例提供的一种基于外围总线的数据传输装置的结构示意图;
图8为本申请实施例中提供的一种电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
目前,在电子技术中,APB总线所连接的一个主设备和多个从设备之间仅允许一对一的数据访问。如图1所示,图1为本申请提供的一种数据传输架构。图中包括一个主设备和多个从设备,主设备和从设备之间采用APB总线连接。APB总线本身仅支持一次访问一个目的地址。针对需要将同一份数据传输至多个从设备的场景,主设备需要每次访问一个从设备,在确定该从设备接收完毕之后,在继续访问另一个从设备,直至所有从设备均完成了数据传输,并且,由于在APB总线下,主设备每次仅能访问一个从设备,因此,在主设备上通常仅设置一个端口与多个从设备的pready信号发送端口连接,以接收从设备反馈的pready信号,其中,pready信号用于指示主设备本次是否完成数据传输访问。
上述每次向一个从设备进行数据传输的方式,需要耗费较多的数据传输时间,进而导致数据传输速率较慢。
本申请提供了一种基于外围总线的数据传输电路,该电路中包括译码模块和比较模块。通过译码模块,将主设备发送的地址信号进行解析,确定主设备需要访问的一个或者多个目标设备,并向确定出的目标设备发送片选信号,以通知目标设备响应主设备的数据访问请求,即响应主设备发送的信号。之后,目标设备在确定数据访问完毕之后,可以向比较模块发送反馈信号。比较模块可以基于接收到的反馈信号以及译码模块确定访问的目标设备,确定是否全部的目标设备已完成数据访问,并向主设备反馈。通过上述电路,主设备可以基于译码模块一次向多个从设备发送片选信号,进而实现多个从设备的数据传输,提高数据传输效率。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2为本申请实施例提供的一种基于外围总线的数据传输电路的电路结构示意图,如图2所示,该电路中包括译码模块和比较模块。其中,主设备和译码模块连接;译码模块与至少一个从设备连接;译码模块用于基于主设备发送的地址信号,在从设备中确定主设备需要访问的至少一个目标设备,并向目标设备发送片选信号;地址信号用于指示主设备需要访问的至少一个目标设备;比较模块分别与从设备、译码模块以及主设备连接;目标设备用于基于接收到的片选信号响应主设备的数据访问操作,并向比较模块发送反馈信号;反馈信号表征数据访问完毕;比较模块,用于基于译码模块输出的指示信号和接收到的反馈信号,确定结果信号,并将结果信号发送至主设备;结果信号用于指示是否完成数据访问操作;指示信号用于指示从设备确定出的目标设备。
示例性地,如图1所示,数据传输电路中包括一个译码模块和一个比较模块。其中,译码模块可以和需要传输数据的主设备连接,以便接收主设备发送的地址信号。并且,译码模块还与至少一个从设备连接,以实现主设备对从设备的数据传输。其中,主设备发送的地址信号可用于指示出主设备需要访问的从设备。本实施例中的地址信号可以用于指示出主设备需要访问的至少一个目标设备。例如,可以预先配置主设备输出的地址信号和需要访问的目标设备之间的对应关系,需要说明的是,本实施例中,一个地址信号可以对应一个需要访问的目标设备,也可以对应多个需要访问的目标设备,以实现一对多的数据传输。
在译码模块接收到主设备发送的地址信号,并基于地址信号译码得到主设备当前需要访问的目标设备之后,译码模块可以向与其连接的从设备中的目标设备发送片选信号,其中,片选信号用于指示目标设备响应主设备发送的数据访问操作。数据访问操作在实际应用中可以理解为向目标设备写入数据的操作,或者,从目标数据中获取数据的操作。
此外,在实际应用中,片选信号常用psel信号来表征,当译码模块确定出需要访问的目标设备之后,控制与其连接的外围设备的psel信号端口处于高电平状态,以告知从设备需要执行本次的数据访问操作。地址信号常用paddr信号表征。
在目标设备接收到片选信号之后,可以确定出主设备需要其进行数据访问,则后续可以响应主设备的数据访问请求,接收主设备需要写入的数据,或者,向主设备发送需要读取的数据等处理,此处从设备的处理可以参见相关技术中的描述,此处不再赘述。
当目标设备确定主设备本次的数据访问完毕之后,则目标设备可以向与目标设备连接的比较模块发送反馈信号(在APB总线协议中又可以被称为pready信号)。在实际应用中,目标设备确定已成功写入所有需要写入的数据,或者,目标设备确定已成功读取出需要读取的全部数据,则可以确定数据访问完毕。目标设备向比较模块发送的反馈信号可以用于指示出该目标设备已确定成功完成本次数据访问。
此外,本实施例中的比较模块除了与多个从设备一一对应连接,接收各个从设备反馈的反馈信号,此外,比较模块还需要与译码模块连接,用于接收译码模块输出的指示信号。需要说明的是,译码模块输出的指示信号可以用于指示出本次主设备需要访问的目标设备。
进而,比较模块在接收到指示信号之后,可以实时判断当前是否已经接收到的全部目标设备所返回的反馈信号,以便向与比较模块连接的主设备发送用于指示当前是否已经完成所有的目标设备的访问的结果信号。
需要说明的是,本实例中,对于指示信号和结果信号不做具体限制,且本实施例中各设备之间的连接可以为采用APB总线进行连接的。
一个示例中,指示信号中可以用于携带各个需要访问的目标设备的标识信息。后续,比较模块可以根据所接收到的指示信号,以及与其连接的目标设备的反馈的携带有自身标识信息的反馈信号,确定是否完成数据访问。
又比如,指示信号中可以携带有本次需要访问的目标设备的数量,比较模块可以通过对接收到的反馈信号进行计数,当计数结果和指示信号所携带的目标设备的数量相同时,则可以向主设备发送表征数据访问成功的结果信号。
又或者,在指示信号中既可以携带目标设备的数量,又可以携带需要访问的目标设备的标识信息,比较模块不仅可以用于比较接收到的反馈信号的数量,还可以用于比较接收到的反馈信号中的标识信息是否与本次需要访问的指示信号中的标识相同,进而准确确定本次是否完成了数据访问。
可以理解的是,本实施例中,通过在数据传输电路中设置译码模块,进而,通过将译码模块和主设备所对应的地址信号输出端口连接,以及基于译码模块对接收到的地址信号进行译码处理,以便得到该地址信号所指示的本次需要访问的至少一个目标设备。进而,基于译码模块,向确定出的目标设备发送片选信号,以确保主设备可以基于APB总线一次实现多个目标设备的数据访问,进而,避免主设备需要一次向多个目标设备进行数据传输时,仅能逐一访问所导致的数据传输效率较低的问题。此外,数据传输电路中还设置有比较模块,其中,比较模块用于接收各目标设备反馈的反馈信号,并告知主设备本次是否已经完成数据访问,进而,主设备端无需添加额外的反馈信号接收端口,以确定主设备是否完成本次访问所导致的需要额外对主设备的端口进行更改的复杂操作。并且,通过比较电路及时告知住设备数据访问的结果信号,以便主设备若确定结果信号表征本次数据访问完毕之后,主设备可以继续执行其余数据访问处理,避免主设备一直处于结果等待状态所导致的无法继续执行其余访问处理的现象。
图3为本申请实施例提供的又一种基于外围总线的数据传输电路的电路结构示意图,如图3所示,在图2所示的数据传输电路的结构的基础上,本实施例中所提供的数据传输电路中的比较模块具体包括:第一寄存单元、第二寄存单元以及比较单元;其中,第一寄存单元分别与译码模块、比较单元连接;第二寄存单元分别与从设备、比较单元连接;第一寄存单元用于根据指示信号,对第一寄存单元中所包含的第一字符串中的字符取值进行调整,得到调整后的第一字符串;其中,第一字符串的取值用于指示目标设备;第二寄存单元用于根据反馈信号,对第二寄存单元中所包含的第二字符串中的字符取值进行调整,得到调整后的第二字符串;其中,第二字符串的取值用于指示已完成数据访问的目标设备;比较单元,用于根据调整后的第一字符串和调整后的第二字符串,确定结果信号。
示例性地,本实施例中,在比较模块中具体设置有第一寄存单元、第二寄存单元以及比较单元。
其中,第一寄存单元分别与译码模块和比较模块连接。第一寄存单元中设置于一个第一字符串,当第一寄存单元获取到与其连接的译码模块发送的指示信号之后,可以根据指示信号对第一字符串中所包含的字符的取值进行调整,以便基于调整后的第一字符串中各个字符的取值表征出当前需要访问的目标设备。之后,第一寄存单元会将调整后的第一字符串发送至比较单元。
本实施例中的第二寄存单元于至少一个从设备连接,并且第二寄存单元还与比较单元连接。通过第二寄存单元接收目标设备所反馈的反馈信号,并根据接收到的反馈信号对第二寄存单元中的第二字符串的取值进行调整,进而用调整后的第二字符串的取值来实时表征当前已经完成数据访问的字符串。之后,第二寄存单元还会实时将其调整后的第二字符串发送给至比较单元,以便比较单元根据接收到的调整后的第一字符串和调整后的第二字符串,确定当前是否完成全部目标设备的数据访问。
一个示例中,第一字符串所包含的字符的数据和第二字符串所包含的字符数量相同,且第一字符串所包含的字符与从设备一一对应,第二字符串所包含的字符与从设备一一对应。进而,第一字符串中的一个字符的取值可以用于表征出一个从设备是否被作为目标设备,第二字符串中的一个字符的取值可以用于表征出一个从设备是否完成数据访问。当第一字符串中用二进制数值1表征被选中,而第二字符串中用二进制数值1表征已反馈反馈信号,0表征未反馈信号,则可以通过比较单元对第一字符串和第二字符串进行按位与运算,并比较运算结果所得到的字符串中是否全部为1,若全部为1,则表征已全部完成数访问,若运算结果部分为1,则表征尚未完成全部的访问。
可以理解的是,本实施例中,比较模块中,通过设置第一寄存单元和第二寄存单元,并用第一寄存单元中字符的取值和第二字符串中字符的取值分别指示目标设备和目标设备反馈的反馈信息,进而,在比较时,只需要对字符串中的取值进行处理,而无需对目标设备的地址信息中多个字符进行比较,进而提高了比对效率,进一步提高的数据传输效率。
在上述实施例的基础上,本实施例中若第一字符串中字符采用第一取值表征字符对应的从设备被选作目标设备,且,第二字符串中采用第一取值表征已接受到字符对应的从设备反馈的反馈信号,则比较单元,具体用于若确定调整后的第一字符串和调整后的第二字符串相同,则控制向主设备的输出的结果信号从第一电平值切换至第二电平值;若确定调整后的第一字符串和调整后的第二字符串不同,则控制向主设备的输出的结果信号处于第一电平值。
示例性地,本实施例中,以第一取值为1为例进行说明。第一字符串中用二进制数值1表征字符对应的从设备被选中为目标设备,0表征字符对应的从设备未被选中目标设备。而第二字符串中用二进制数值1表征字符对应的从设备已反馈反馈信号,0表征未反馈信号。此时,比较模块可以直接通过比较第一寄存单元输出的调整后的第一字符串和第二寄存单元输出的调整后的第二字符串是否相同来确定是否已完成全部目标设备的访问。
当比较单元,确定接收到的两个字符串相同时,则可以控制结果信号从第一电平值切换至第二电平值,以便表征当前已完成全部目标设备的访问。
若比较单元,确定接收到的两个字符串不同,则表征当前尚未完成全部目标设备的访问,则此时控制结果信号保持第二电平状态。
可以理解的是,本实施例中,可以通过比较模块可以通过直接比较两个字符串是否相同来确定最终的结果信号,进而有利于提高字符串比对效率。并且,在本实施例中结果信号还可以采用不同的电平值来表征当前是否已经完成当前的访问,进而主设备端可以直接根据电平的高低,确定最终的数据访问结果,以便主设备端后续可以尽快执行其余的数据操作处理。
图4为本申请实施例提供的另一种基于外围总线的数据传输电路的电路结构示意图,如图4所示,在图2所示的数据传输电路的基础上,本实施例中主设备的第一端口(图中用M1标识)与译码模块的第一输入端(图中用A1标识)连接,用于传输地址信号;主设备的第二端口(图中用M2标识)和译码模块的第二输入端(图中用A2标识)连接,译码模块用于基于第二输入端接收控制信号;其中,控制信号用于控制译码模块开始工作。
示例性地,本实施例中,译码模块具有两个输入端口。其中,译码模块的第一输入端与主设备的第一端口连接,用于接收主设备发送的地址信号。
此外,译码模块还具有第二输入端,且译码模块的第二输入端与主设备的第二端口连接。主设备可以通过主设备的第二端口,向译码模块发送控制信号。其中,控制信号可以用于控制译码模块开始工作。即,只有当译码模块的第二输入端接收到与其连接的主设备发送的控制信号之后,才会执行对所接收到的地址信号进行处理的步骤。
可以理解的是,本实施例中可以通过在译码模块处设置第二输入端,以接收控制信号的方式来控制译码模块开启工作。进而,可以避免译码模块被误触发工作的现象,并且,有利于可以降低译码模块的能耗。
进一步地,本实施例中,主设备的第一端口还与从设备的地址端口连接;主设备用于向从设备传输地址信号;地址信号还用于指示主设备需要写入从设备的待写入数据所对应的地址信息。
示例性地,本实施例中,主设备的第一端口不仅与译码模块连接,用于向译码模块发送地址信号,并且,主设备的第一端口还与每一从设备各自所对应的地址端口连接,进而,当主设备需要对从设备进行数据访问时,可以通过主设备的第一端口将地址信号传输至译码模块,并且还可以通过主设备的第一端口将地址信号传输至与其连接的每一从设备的地址端口。在与主设备连接的多个从设备中,只有接收到译码模块向从设备发送的片选信号的从设备,才会响应其所接收到的主设备传输的地址信号。
并且,当主设备需要同时向一个或者多个从设备写入数据时,主设备发送的地址信号中除了可以用于指示出主设备需要写入数据的从设备,还可以用于指示出主设备需要向从设备的哪一地址信息所对应的存储空间中写入上述待写入数据。
以便从设备在接收到地址信号中所指示的地址信息和译码模块发送的片选信号之后,可以解析出地址信号中所指示的地址信息,对该地址信息中的数据进行擦除,以便写入主设备需要写入的数据。
可以理解的是,本实施例中主设备中用于传输地址信号的第一端口还可以直接连接至从设备的地址端口,以便主设备可以直接将地址信号传输至每一从设备的地址端口,之后,从设备再根据是否接收片选信号,确定是否响应处于上述地址信号。并且,地址信号还可以携带用于指示需要向从设备的哪一存储空间写入数据的地址信息。进而,主设备通过同时分别向译码模块和从设备发送地址信号的方式,又一个地址信号携带多个信息,有利于减少主设备端的端口数量。并且,可以实现一次向多个从设备中写入数据的数据传输方式。
在实际应用中,当主设备需要读取从设备中的数据时,也可以在地址信号中携带需要读取的数据所对应存储的地址信息。
进一步的,在本实施例中,主设备的第三端口与从设备的数据端口连接;主设备用于基于第三端口向从设备传输需要写入的待写入数据,并且,基于第三端口接收主设备需要在从设备中读取的数据。
示例性地,本实施例中,主设备还具有第三端口,以作为主设备所对应的数据传输端口,用于接收需要读取的数据,且还用于发送需要向从设备写入的待写入数据。对应的,在从设备端也具有数据端口,用于接收或者输出数据。本实施例中,主设备中的第三端口可以和多个从设备的数据端口直接连接,以便进行主设备和从设备之间的数据传输。
当主设备需要向多个从设备中的部分目标设备中写入数据时,主设备可以根据第三端口,向与其连接的多个从设备均发送需要写入的待写入数据,仅有接收到片选信号的目标设备才会将待写入数据写入至从设备中,例如,写入至地址信号中所指示的地址信息所对应的缓存空间中。
当主设备需要向读取某一从设备中的数据时,主设备可以通过第三端口向每一从设备发送地址信号,并用地址信号指示其需要读取的数据的存储地址。之后,接收到片选信号的从设备会根据接收到的地址信号,查找对应的存储数据,并将存储数据反馈至主设备的第三端口。
可以理解的是,本实施例中主设备具有一个用于数据传输的第三端口,并且,该第三端口可以连接多个从设备所对应的数据端口以实现数据传输,相比于相关技术中主设备中设置多个数据传输端口的方式与从设备进行数据交互,本实施例中的数据传输方式可以降低设备的接口资源。
在一些实施例中,译码模块具体用于基于主设备发送的地址信号,确定需要访问的设备的接口类型;并确定具有该接口类型的接口从设备为目标设备。
示例性地,在对主设备所发出的地址信号进行地址空间规划时,针对于每一接口类型的可以设置一个对应的地址信号,当译码模块接收到该地址信号之后,则可以将具有上述接口类型的接口的从设备设置为主设备需要访问的目标设备。在实际应用中接口类型可以为高速串行计算机扩展总线标准(Peripheral Component Interconnect Express,PCIE)接口、双倍速率(Double Data Rate,DDR)接口、集成电路总线(Inter-IntegratedCircuit Bus,I2C)接口、I3C(Improved Inter Integrated Circuit)接口、通用异步收发器(Universal Asynchronous Receiver/Transmitter,UART)接口等多种类型。进而,当设备中继承有多个同类型的外设时,通过上述配置方式可以实现主设备同时对同一接口类型所对应的从设备进行访问配置,进而提高对接口的访问配置效率。
在实际应用中,地址信号中还可以用于表征出当前需要访问的目标设备的数量,例如,当地址信号中包括32位字符时,可以采用高两位字符的取值,表征当前主设备需要访问的目标设备的数量是否大于1,若确定目标设备的数量大于1,则进一步的译码模块可以根据地址信号和预先设置的地址信号和目标设备之间的对应关系,确定需要访问的目标设备。当目标设备的数量等于1时,地址信号中可以直接写入需要访问的目标设备的标识信息,进而译码模块可以直接基于标识信息,向具有对应标识信息的目标设备发送片选信号。
图5为本申请实施例提供的一种基于外围总线的数据传输方法的流程示意图,如图5所示,该方法包括;
S501、接收主设备发送的地址信号;其中,地址信号用于指示主设备需要访问的至少一个目标设备。
S502、根据地址信号,在主设备对应的从设备中,确定至少一个目标设备。
S503、向目标设备发送片选信号;其中,片选信号用于指示目标设备响应主设备的数据访问操作;数据访问操作用于表征向从设备写入数据的操作或者读取从设备中的数据的操作。
S504、接收指示信号和目标设备发送的反馈信号,并根据指示信号和反馈信号,确定结果信号;指示信号为基于地址信号所确定的用于指示目标设备的信号。
S505、向主设备发送结果信号。
示例性地,本实施例中所提供的方法,与上述实施例中的数据传输电路的原理类似,本实施例中不再赘述。
在实际应用中,主设备发起的数据访问操作可以为主设备请求目标设备进行数据存储的操作;或者,数据访问操作可以为主设备请求由目标设备进行数据处理的访问操作。
举例来说,当主设备需要将同一份数据备份至多个存储模块时,此时,主设备可以通过上述多个存储模块各自所对应的地址信息,确定可以用于指示上述多个地址信息的一个地址信号,需要说明的是,上述地址信号与多个地址信息之间的对应关系为预先配置好的映射关系。进而,主设备通过发送一个地址信号后,经过译码模块进行译码处理,由译码模块确定出主设备当前需要访问的多个从设备(即,上述存储模块),并由译码模块向所确定出的存储模块发送片选信号,进而控制存储模块对主设备发送的数据进行存储。
举例来说,当需要由多核处理器需要在相同的配置信息下对相同的程序进行处理,则此时,多个处理器核可以看作是主设备需要访问的多个目标设备。主设备可以基于上述方法,将多个处理器核所需要的相同的配置信息,并行发送至上述多个处理器核,以便提高多核处理器的配置效率。之后,在向多核处理器发送需要执行的程序时,也可以采用上述数据传输电路,由主设备并行向多个处理器核发送需要处理的程序,以提高处理效率。
又或者,上述从设备也可以为数据传输接口。该数据传输接口上也可以连接多个外部设备。主设备可以通过从设备将需要发送的数据由从设备转发至外部设备中。
以下为本申请提供的一种基于APB协议的广播设计方案。本方法中,基于地址空间的规划,设置专用广播域,包含地址译码器ADDR DECORDER译码器,BC REQUEST寄存器,BCRETURN寄存器等内部结构,共同完成1对多的广播发射和收集。
图6为本申请实施例提供的又一种数据传输电路示意图。图中以广播数n=3(即,主设备需要访问3个目标设备)为例,首先master(主设备)侧发起APB访问,并设置地址为广播地址。例如,图中,主设备发送了psel_m信号以及paddr_m信号。其中,psel_m信号相当于本申请中所提及的控制信号,用于控制译码器开始工作。而,paddr_m信号为本申请中主设备编译得到的地址信号。当ADDR DECORDER译码器收到上述两个信号后,根据对paddr_m信号进行译码,确定需要发起广播,并将译码的结果(表征译码确定出的需要访问的目标设备)存储在BC REQUEST寄存器内,并且由BC REQUEST寄存器基于地址译码结果发起多个slave(从设备)的访问,拉起对应的psel信号(即,本申请中的片选信号),即图中的psel_s0、psel_s1、psel_s2信号。需要说明的是,本实施例中所提及的片选信号是由BC REQUEST寄存器所发起的,在实际应用中也可以由ADDR DECORDER译码器直接发起。
之后,多个slave会各自返回pready信号(例如,图中的pready_s0、pready_s1、pready_s2),表示访问完成,将返回的三个pready信号记录在BC RETURN寄存器内,并由比较单元(图中用“=”标识)实时判断BC REQUEST寄存器和BC RETURN寄存器的值是否相等,不相等则继续等待。
当全部slave都返回pready后,BC REQUEST寄存器和BC RETURN寄存器的值相等,此时返回master侧的pready_m信号,以告知master这笔访问完成。
本技术方案中配合地址译码器,BC REQUEST寄存器和BC RETURN寄存器,进行APB指令并行发射,并且并行等待(即,再确定多个slave全部进行反馈之后,再告知master访问完成),以实现了基于APB协议的广播设备。本技术方案可以加速APB配置网络的配置速度,在芯片集成规模越来越大的情况下,经常会集成多个同类型的外设,比如PCIE、DDR、I2C、I3C、UART等外设,同类型外设数量越多,本方案加速配置的效果越好。假设某种相同外设数量为n,则采用本方案后,配置完成的时间加速n倍,效果显著。
图7为本申请实施例提供的一种基于外围总线的数据传输装置的结构示意图,如图7所示,该装置包括:
第一接收单元701,用于接收主设备发送的地址信号;其中,地址信号用于指示主设备需要访问的至少一个目标设备。
第一确定单元702,用于根据地址信号,在主设备对应的从设备中,确定至少一个目标设备。
第一发送单元703,用于向目标设备发送片选信号;其中,片选信号用于指示目标设备响应主设备的数据访问操作;数据访问操作用于表征向从设备写入数据的操作或者读取从设备中的数据的操作。
第二接收单元704,用于接收指示信号和目标设备发送的反馈信号。
第二确定单元705,用于根据指示信号和反馈信号,确定结果信号;指示信号为基于地址信号所确定的用于指示目标设备的信号。
第三发送单元706,用于向主设备发送结果信号。
本实施例提供的装置,用于实现上述实施例提供的技术方案,其实现原理和技术效果类似,不再赘述。
本申请提供一种电子设备,以及与处理器通信连接的存储器;
存储器存储计算机执行指令;
处理器执行存储器存储的计算机执行指令,以实现如上述实施例中任一项的方法。
图8为本申请实施例中提供的一种电子设备的结构示意图,如图8所示,该电子设备包括:
处理器(processor)291,电子设备还包括了存储器(memory)292;还可以包括通信接口(Communication Interface)293和总线294。其中,处理器291、存储器292、通信接口293、可以通过总线294完成相互间的通信。通信接口293可以用于信息传输。处理器291可以调用存储器292中的逻辑指令,以执行上述实施例的方法。
此外,上述的存储器292中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器292作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本申请实施例中的方法对应的程序指令/模块。处理器291通过运行存储在存储器292中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的方法。
存储器292可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器292可以包括高速随机存取存储器,还可以包括非易失性存储器。
本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现任一项的方法。
本申请提供一种计算机程序产品,计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现任一项的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (8)

1.一种基于外围总线的数据传输电路,其特征在于,所述电路包括:译码模块和比较模块;所述比较模块包括:第一寄存单元、第二寄存单元以及比较单元;
其中,主设备和所述译码模块、所述比较单元连接;所述译码模块与至少一个从设备连接;所述译码模块用于基于所述主设备发送的地址信号,在从设备中确定所述主设备需要访问的至少一个目标设备,并向目标设备发送片选信号;所述地址信号用于指示主设备需要访问的至少一个目标设备;
所述第一寄存单元与所述译码模块、所述比较单元连接,所述第二寄存单元分别与所述从设备、所述比较单元连接,所述比较单元与所述主设备连接;
所述目标设备用于基于接收到的片选信号响应主设备的数据访问操作,并向所述第二寄存单元发送反馈信号;所述反馈信号表征数据访问完毕;
所述第一寄存单元用于根据所述译码模块输出的指示信号,对所述第一寄存单元中所包含的第一字符串中的字符取值进行调整,得到调整后的第一字符串;其中,所述指示信号用于指示所述从设备确定出的目标设备,所述调整后的第一字符串的取值用于指示目标设备;
所述第二寄存单元用于根据接收到的反馈信号,对所述第二寄存单元中所包含的第二字符串中的字符取值进行调整,得到调整后的第二字符串;其中,所述调整后的第二字符串的取值用于指示已完成数据访问的目标设备;
所述比较单元,用于根据所述调整后的第一字符串和调整后的第二字符串,确定结果信号,并将结果信号发送至所述主设备;所述结果信号用于指示是否完成数据访问操作;
若所述第一字符串中字符采用第一取值表征所述字符对应的从设备被选作目标设备,且,所述第二字符串中采用所述第一取值表征已接受到所述字符对应的从设备反馈的反馈信号,则所述比较单元,具体用于若确定所述调整后的第一字符串和调整后的第二字符串相同,则控制向所述主设备的输出的结果信号从第一电平值切换至第二电平值;若确定所述调整后的第一字符串和调整后的第二字符串不同,则控制向所述主设备的输出的结果信号处于所述第一电平值。
2.根据权利要求1所述的电路,其特征在于,所述主设备的第一端口与所述译码模块的第一输入端连接,用于传输所述地址信号;所述主设备的第二端口和所述译码模块的第二输入端连接,所述译码模块用于基于所述第二输入端接收控制信号;其中,所述控制信号用于控制所述译码模块开始工作。
3.根据权利要求1所述的电路,其特征在于,所述主设备的第一端口与所述从设备的地址端口连接;所述主设备用于向所述从设备传输所述地址信号;所述地址信号还用于指示所述主设备需要写入从设备的待写入数据所对应的地址信息。
4.根据权利要求1所述的电路,其特征在于,所述主设备的第三端口与所述从设备的数据端口连接;所述主设备用于基于所述第三端口向所述从设备传输需要写入的待写入数据,并且,基于所述第三端口接收所述主设备需要在所述从设备中读取的数据。
5.根据权利要求1-4中任一项所述的电路,其特征在于,所述译码模块具体用于基于所述主设备发送的地址信号,确定需要访问的设备的接口类型;并确定具有所述接口类型的接口的从设备为目标设备。
6.一种基于外围总线的数据传输方法,其特征在于,所述方法包括;
接收主设备发送的地址信号;其中,所述地址信号用于指示所述主设备需要访问的至少一个目标设备;
根据所述地址信号,在所述主设备对应的从设备中,确定至少一个目标设备;
向所述目标设备发送片选信号;其中,所述片选信号用于指示所述目标设备响应主设备的数据访问操作;所述数据访问操作用于表征向从设备写入数据的操作或者读取从设备中的数据的操作;
接收指示信号和所述目标设备发送的反馈信号,并根据所述指示信号,对第一寄存单元中所包含的第一字符串中的字符取值进行调整,得到调整后的第一字符串;其中,所述指示信号为基于地址信号所确定的用于指示目标设备的信号,所述调整后的第一字符串的取值用于指示目标设备;
根据所述反馈信号,对第二寄存单元中所包含的第二字符串中的字符取值进行调整,得到调整后的第二字符串;其中,所述调整后的第二字符串的取值用于指示已完成数据访问的目标设备;
根据所述调整后的第一字符串和调整后的第二字符串,确定结果信号;
向所述主设备发送所述结果信号;若所述第一字符串中字符采用第一取值表征所述字符对应的从设备被选作目标设备,且,所述第二字符串中采用所述第一取值表征已接受到所述字符对应的从设备反馈的反馈信号,则若确定所述调整后的第一字符串和调整后的第二字符串相同,则向所述主设备发送的结果信号从第一电平值切换至第二电平值;若确定所述调整后的第一字符串和调整后的第二字符串不同,则向所述主设备发送的结果信号处于所述第一电平值。
7.根据权利要求6所述的基于外围总线的数据传输方法,其特征在于,所述数据访问操作为所述主设备请求目标设备进行数据存储的操作;或者,所述数据访问操作为所述主设备请求由所述目标设备进行数据处理的访问操作。
8.一种处理器,其特征在于,所述处理器包括如权利要求1-5中任一项所述的基于外围总线的数据传输电路。
CN202311443577.5A 2023-11-01 2023-11-01 基于外围总线的数据传输电路、方法及处理器 Active CN117435534B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311443577.5A CN117435534B (zh) 2023-11-01 2023-11-01 基于外围总线的数据传输电路、方法及处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311443577.5A CN117435534B (zh) 2023-11-01 2023-11-01 基于外围总线的数据传输电路、方法及处理器

Publications (2)

Publication Number Publication Date
CN117435534A CN117435534A (zh) 2024-01-23
CN117435534B true CN117435534B (zh) 2024-06-18

Family

ID=89545835

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311443577.5A Active CN117435534B (zh) 2023-11-01 2023-11-01 基于外围总线的数据传输电路、方法及处理器

Country Status (1)

Country Link
CN (1) CN117435534B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1673985A (zh) * 2004-03-26 2005-09-28 华为技术有限公司 主设备和多个从设备的连接电路及其产生应答信号的方法
CN116594922A (zh) * 2023-07-14 2023-08-15 深圳砺驰半导体科技有限公司 一种数据访问电路、方法及系统级芯片

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8386727B2 (en) * 2001-12-31 2013-02-26 Hewlett-Packard Development Company, L.P. Supporting interleaved read/write operations from/to multiple target devices
CN106294239B (zh) * 2015-06-04 2019-05-31 深圳市中兴微电子技术有限公司 一种外围总线apb总线桥
CN105068957A (zh) * 2015-08-04 2015-11-18 瑞斯康达科技发展股份有限公司 一种apb总线系统中访问从模块的方法及装置
US11436185B2 (en) * 2019-11-15 2022-09-06 Arteris, Inc. System and method for transaction broadcast in a network on chip
CN112929252B (zh) * 2021-05-11 2021-07-09 上海擎昆信息科技有限公司 一种适用于总线端口的并行数据传输系统及方法
CN114356419B (zh) * 2022-03-14 2022-06-07 苏州浪潮智能科技有限公司 一种通用接口寄存器系统及快速生成方法
CN116938631B (zh) * 2023-09-19 2023-12-29 芯原科技(上海)有限公司 配置总线生成方法、系统、存储介质及电子设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1673985A (zh) * 2004-03-26 2005-09-28 华为技术有限公司 主设备和多个从设备的连接电路及其产生应答信号的方法
CN116594922A (zh) * 2023-07-14 2023-08-15 深圳砺驰半导体科技有限公司 一种数据访问电路、方法及系统级芯片

Also Published As

Publication number Publication date
CN117435534A (zh) 2024-01-23

Similar Documents

Publication Publication Date Title
EP2474916B1 (en) Device identifier selection
US8904045B2 (en) Opportunistic improvement of MMIO request handling based on target reporting of space requirements
US7934029B2 (en) Data transfer between devices within an integrated circuit
CN111488304B (zh) 接口转接电路
CN114265872B (zh) 一种用于总线的互联装置
CN115827524A (zh) 一种数据传输方法以及装置
CN110941578A (zh) 一种具有dma功能的lio的设计方法及装置
US7054983B2 (en) USB-HUB device and its control method
US8891523B2 (en) Multi-processor apparatus using dedicated buffers for multicast communications
JP4001511B2 (ja) Icカード及びその制御方法
US8943238B2 (en) Operations using direct memory access
WO2022032990A1 (zh) 一种命令信息传输方法、系统、装置及可读存储介质
CN116679887B (zh) 用于NAND Flash的通用控制模块及方法
CN117435534B (zh) 基于外围总线的数据传输电路、方法及处理器
CN117539807A (zh) 一种数据传输方法、相关设备及存储介质
CN115883022B (zh) Dma传输控制方法、装置、电子设备及可读存储介质
CN116483259A (zh) 一种数据处理方法以及相关装置
CN113535611A (zh) 数据处理方法及装置、异构系统
WO2023030249A1 (zh) 用于计算设备的设备管理方法、计算设备、装置和介质
CN116166581A (zh) 用于pcie总线的队列式dma控制器电路及数据传输方法
KR20180023543A (ko) 시리얼 통신으로 메모리를 제공하기 위한 장치 및 방법
CN116601616A (zh) 一种数据处理装置、方法及相关设备
CN106325377A (zh) 外部设备扩展卡及输入输出外部设备的数据处理方法
CN112685344B (zh) Dma编程电路及基于dma编程电路的编程方法
US11188140B2 (en) Information processing system

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