CN113934671B - 一种接口控制芯片及网络设备 - Google Patents
一种接口控制芯片及网络设备 Download PDFInfo
- Publication number
- CN113934671B CN113934671B CN202111285313.2A CN202111285313A CN113934671B CN 113934671 B CN113934671 B CN 113934671B CN 202111285313 A CN202111285313 A CN 202111285313A CN 113934671 B CN113934671 B CN 113934671B
- Authority
- CN
- China
- Prior art keywords
- interface
- preset protocol
- preset
- interface controller
- control chip
- 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
Links
- 238000000034 method Methods 0.000 claims description 18
- 230000003287 optical effect Effects 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/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
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Communication Control (AREA)
Abstract
本申请实施例提供了一种接口控制芯片及网络设备,涉及通信技术领域,该接口控制芯片包括:接口控制器,与接口控制器连接的多个预设协议接口,预设协议接口的时钟频率小于接口控制器的时钟频率。接口控制器,用于在每第一数量的时钟周期内,分别控制每个预设协议接口发送一个信息比特,针对每个预设协议接口,每控制该预设协议接口发送预设数量的信息比特,确定已控制该预设协议接口完成一次操作命令。其中,第一数量为接口控制器的时钟频率与预设协议接口的时钟频率之间的比值。可以节省接口控制芯片的资源。
Description
技术领域
本申请涉及网络芯片技术领域,特别是涉及一种接口控制芯片及网络设备。
背景技术
路由器和交换机等网络设备中的CPU可以外挂网口、串口等接口,在一些场景中,CPU需要通过接口控制芯片中的多个接口控制器控制多个同类型的低速接口,从而访问每个低速接口连接的光模块。
目前在接口控制芯片中,一个接口控制器控制一个低速接口。当接口控制芯片连接的低速接口数量较多时,就需要在接口控制芯片中部署大量的接口控制器,导致消耗大量的接口控制芯片资源。
发明内容
本申请实施例的目的在于提供一种接口控制芯片及网络设备,以节省接口控制芯片资源。具体技术方案如下:
第一方面,本申请实施例提供一种接口控制芯片,包括:接口控制器,与所述接口控制器连接的多个预设协议接口,所述预设协议接口的时钟频率小于所述接口控制器的时钟频率;
所述接口控制器,用于在每第一数量的时钟周期内,分别控制每个预设协议接口发送一个信息比特,针对每个预设协议接口,每控制该预设协议接口发送预设数量的信息比特,确定已控制该预设协议接口完成一次操作命令。
其中,所述第一数量为所述接口控制器的时钟频率与所述预设协议接口的时钟频率之间的比值。
在一种可能的实现方式中,所述接口控制器,具体用于在所述接口控制器的每第二数量的连续时钟周期内,分别控制一个预设协议接口发送一个信息比特,所述第二数量为所述第一数量与所述预设协议接口的数量的比值。
在一种可能的实现方式中,所述接口控制芯片还包括计数器、计数内存和调度内存;所述计数器连接于所述接口控制器,或者所述计数器位于所述接口控制器内部;
所述计数器,用于针对每个预设协议接口,当确定所述接口控制器每控制该预设协议接口发送一个信息比特时,将该预设协议接口对应的计数值加1,当该预设协议接口对应的计数值达到所述预设数量时,将该预设协议接口对应的计数值清零;
所述计数内存,用于存储各预设协议接口对应的计数值;
所述调度内存,用于存储每个预设协议接口对应的操作命令;
所述接口控制器,具体用于针对每个预设协议接口,从所述计数内存中读取该预设协议接口对应的计数值,基于读取到的计数值从所述调度内存中获取该预设协议接口需传输的下一个信息比特,控制该预设协议接口传输读取到的信息比特。
在一种可能的实现方式中,所述接口控制芯片还包括轮询模块和连接于所述轮询模块的调度模块;
所述轮询模块,用于向所述调度模块发送针对每个预设协议接口的页操作命令;
所述调度模块,用于接收来自所述轮询模块的页操作命令,分别将每个页操作命令拆分为多个字节命令,将每个预设协议接口对应的多个字节命令存储于所述调度内存。
在一种可能的实现方式中,所述接口控制器,还用于如果控制预设协议接口发送信息比特的过程被来自CPU的读写命令中断,则在所述读写命令完成后,重新发送每个预设协议接口被中断的字节命令。
在一种可能的实现方式中,述接口控制芯片还包括轮询模块和连接于所述轮询模块的调度模块;
所述轮询模块,用于向所述调度模块发送针对每个预设协议接口的页操作命令;
所述调度模块,用于接收来自所述轮询模块的页操作命令,将每个预设协议接口对应的页操作命令存储于所述调度内存。
在一种可能的实现方式中,所述接口控制器,还用于如果控制预设协议接口发送信息比特的过程被来自CPU的读写命令中断,则在所述读写命令完成后,重新发送每个预设协议接口被中断的页操作命令。
在一种可能的实现方式中,所述预设协议接口为IIC接口。
第二方面,本申请实施例提供一种网络设备,包括:中央处理器CPU,上述第一方面所述的接口控制芯片,以及多个预设协议器件;
所述CPU连接于所述接口控制芯片,用于通过所述接口控制芯片对所述多个预设协议器件进行读写操作;
所述接口控制芯片通过每个预设协议接口连接一个预设协议器件,用于控制预设协议接口向所连接的预设协议器件发送操作命令。
在一种可能的实现方式中,所述预设协议接口为IIC接口,所述预设协议器件为光模块。
采用上述技术方案,因接口控制器的时钟频率大于预设协议接口的时钟频率,所以如果每个接口控制器只控制一个预设协议接口,那么接口控制器大部分的时钟资源实际上未被利用。所以本申请实施例中,可在接口控制器的每第一数量的时钟周期内,分别控制接口控制芯片连接的每个预设协议接口发送一个信息比特,使得接口控制器的时钟资源被充分利用。如此,可以通过一个接口控制器控制多个预设协议接口,无需分别为每个预设协议接口配置一个接口控制器,可以大幅节省接口控制芯片的资源。
当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本申请实施例提供的一种接口控制芯片的结构示意图;
图2为本申请实施例提供的对每512个时钟周期的划分方式的示例性示意图;
图3为本申请实施例提供的一种网络设备的结构示意图;
图4为本申请实施例提供的另一种网络设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本申请保护的范围。
为了降低对接口芯片资源的消耗,如图1所示,本申请实施例提供一种接口控制芯片,该接口控制芯片包括:接口控制器11,与接口控制器11连接的多个预设协议接口12,预设协议接口12的时钟频率小于接口控制器11的时钟频率。
接口控制器11,用于在每第一数量的时钟周期内,分别控制每个预设协议接口12发送一个信息比特,针对每个预设协议接口12,每控制该预设协议接口12发送预设数量的信息比特,确定已控制该预设协议接口12完成一次操作命令。
其中,第一数量为接口控制器11的时钟频率与预设协议接口12的时钟频率之间的比值。
其中,预设协议接口12的时钟频率远低于接口控制器11的时钟频率,所以预设协议接口12也可被称为低速接口。接口控制器11的时钟频率是预设协议接口12的时钟频率的第一数量倍,也就是说,在接口控制器11的第一数量的时钟周期内,足够控制每个预设协议接口12发送一个信息比特。
本申请实施例中的预设协议接口12可以为集成电路总线(Inter-IntegratedCircuit,IIC)接口、主机接口总线(Host port interface,HPI)接口等。
以预设协议接口12为IIC接口为例,IIC接口的时钟频率可以为100KHZ,接口控制器11的时钟频率可以为51.2KHZ。则接口控制器11的时钟频率为IIC接口的512倍,即上述第一数量为512。那么,在接口控制器11的512个时钟周期内,一个接口控制器11可以分别控制每个IIC接口发送一个信息比特。
本申请实施例中,一次操作命令包括预设数量的信息比特,发送操作命令的操作属于原子操作,即发送该操作命令的过程如果被打断,则需重新从该操作命令包括的第一个信息比特开始进行发送。
采用上述技术方案,因接口控制器的时钟频率大于预设协议接口的时钟频率,所以如果每个接口控制器只控制一个预设协议接口,那么接口控制器大部分的时钟资源实际上未被利用。所以本申请实施例中,可在接口控制器的每第一数量的时钟周期内,分别控制接口控制芯片连接的每个预设协议接口发送一个信息比特,使得接口控制器的时钟资源被充分利用。如此,可以通过一个接口控制器控制多个预设协议接口,无需分别为每个预设协议接口配置一个接口控制器,可以大幅节省接口控制芯片的资源。
在一种实施方式中,接口控制器11,具体用于在接口控制器11的每第二数量的连续时钟周期内,分别控制一个预设协议接口12发送一个信息比特,第二数量为第一数量与预设协议接口12的数量的比值。
例如,如果接口控制器11连接64个IIC接口,第一数量为512,则第二数量为8。即接口控制器11的每8个连续的时钟周期可用于控制一个IIC接口传输一个信息比特。
IIC接口的时钟频率为100KHZ,接口控制器11的时钟频率为51.2MHZ,接口控制器11的时钟频率是IIC接口时钟频率的512倍,所以当使用一个接口控制器11控制64个IIC接口时,每一个IIC接口可以分到512/64=8个时钟周期。
如图2所示,接口控制器11的每512个时钟周期被分为64份,每份包括8个时钟周期,一个周期可以称为一个节拍。在第0个8拍,接口控制器11控制第0个IIC接口发送一个信息比特;在第1个8拍,接口控制器11控制第1个IIC接口发送一个信息比特;……在第63个8拍,接口控制器11控制第63个IIC接口发送一个信息比特。即,在接口控制器11的512个时钟周期内,接口控制器11控制64个IIC接口分别发送一个信息比特。如此,充分利用了接口控制器11的控制资源,无需为每个IIC接口分别配置一个接口控制器,可以节省芯片资源。
在另一种实施方式中,上述第二数量也可以为其他值,即可以不将接口控制器11的第一数量的时钟周期进行平均分配,只要保证在第一数量的时钟周期11内分别控制每个预设协议接口12发送一个信息比特即可。例如,通过每指定数量的时钟周期控制一个预设协议接口12发送一个信息比特,该指定数量的时钟周期为发送一个信息比特所需的时间。
在上述实施例的基础上,如图1所示,接口控制芯片还包括计数器13、计数内存14和调度内存15。计数器13连接于接口控制器11,或者计数器13位于接口控制器11内部。图1中以计数器13位于接口控制器11内部为例。
计数器13,用于针对每个预设协议接口12,当确定接口控制器11每控制该预设协议接口12发送一个信息比特时,将该预设协议接口12对应的计数值加1,当该预设协议接口12对应的计数值达到预设数量时,将该预设协议接口12对应的计数值清零。
其中,一个操作命令包括预设数量的信息比特,针对一个预设协议接口12,接口控制器11可以在每第一数量的时钟周期内,控制该预设协议接口12发送一个信息比特,相当于每过第一数量的时钟周期,计数器13将该预设协议接口12对应的计数值加1。直至该预设协议接口12对应的计数值达到预设数量时,说明该预设协议接口12已经完成了一次操作命令的发送,所以可将该预设协议接口12对应的计数值清零。在接口控制器11控制该预设协议接口12发送下一个信息比特时,重新开始对该预设协议接口12进行计数。
例如,假设一个操作命令为IIC接口的一个字节命令,按照协议规定,一个字节命令包括38个信息比特,也可称为38拍。那么,接口控制器11可以在512个时钟周期内分别控制每个IIC接口发送一个信息比特,每经过512个时钟周期,各IIC接口对应的计数值加1。
也就是计数器13对各IIC接口从0至37计数,当某一IIC接口对应的计数值达到37时,确定已控制该IIC接口发送一个完整的字节命令,则在下一个512时钟周期内,继续控制该接口发送下一个字节命令,且重新从0开始计数。
本申请实施例中,可以将IIC总线操作时序按照数据节拍计算,将IIC时钟(串行时钟线(Serial Clock line,SCL))和IIC数据(串行数据线(Serial Data,SDA))都当作数据来看待。以字节命令为IIC读命令为例,38个信息比特依次包括起始(START)位,器件地址,发送字节地址,为读取到的数据。即第一拍为起始(START)比特,第二拍为器件地址低位(ADDR[0]),…最后一拍为停止(STOP)比特,一共有38拍。其中,器件地址可以为需要读取的光模块的地址。
计数内存14,用于存储各预设协议接口12对应的计数值。
调度内存15,用于存储每个预设协议接口12对应的操作命令。
接口控制器11,具体用于针对每个预设协议接口12,从计数内存14中读取该预设协议接口12对应的计数值,基于读取到的计数值从调度内存15中获取该预设协议接口12需传输的下一个信息比特,控制该预设协议接口12传输读取到的信息比特。
例如,若该预设协议接口12对应的计数值为20,则可从调度内存15中读取第21个信息比特,并控制该预设协议接口12传输第21个信息比特。
通过计数器的计数,接口控制器可以确定对每个操作命令的哪个信息比特进行传输,避免传输错误。且通过计数器的计数,接口控制器可以确地一个完整的操作命令被执行完成的时机,从而及时开始传输下一个操作命令,接口控制器的时钟资源被充分利用,节省了芯片资源。并且,本申请实施例将单个字节命令转化为高频信号的38个时钟节拍,相当于将处理字节命令的操作简化为了接口控制器的时钟节拍的固定操作,从而实现了高频的信号处理,在保证低速接口效率的情况下,节省了接口控制芯片的资源。
在上述实施例的基础上,如图1所示,接口控制芯片还包括轮询模块16和连接于轮询模块16的调度模块17。
轮询模块16,用于向调度模块17发送针对每个预设协议接口12的页操作命令。
调度模块17,用于接收来自轮询模块16的页操作命令,分别将每个页操作命令拆分为多个字节命令,将每个预设协议接口12对应的多个字节命令存储于调度内存15。
以预设协议接口12为IIC接口为例,每个IIC接口连接一个光模块,该页操作命令是用于轮询光模块的命令。按照协议规定,轮询一个光模块需要发送8个页操作命令,每个页操作命令包括128个字节命令每个字节命令包括38个信息比特。
调度模块17接收到一个页操作命令后,可将该页操作命令拆分为128个字节命令,在这种情况下,一次操作命令为一个字节命令,即发送一个字节命令属于一次原子操作。
在此基础上,接口控制器11,还用于如果控制预设协议接口12发送信息比特的过程被来自CPU的读写命令中断,则在读写命令完成后,重新发送每个预设协议接口12被中断的字节命令。
例如,假设接口控制器11在控制IIC接口1传输字节命令32时,传输中断,假设此时该IIC接口对应的计数值为10,则说明在中断前已完成对字节命令32的第10个信息比特的传输。后续可以重新从字节命令32的第0个信息比特开始传输,以保证字节命令的原子性。
在现有技术中,如果一个页操作面令传输中断,则需重新发送整个页操作命令。相比于现有技术,本申请实施例在字节命令传输中断时,无需重传整个页操作命令,而只需重传发生传输中断的字节命令,可以提高处理页操作命令的效率。
在本申请另一实施例中,轮询模块16,用于向调度模块17发送针对每个预设协议接口12的页操作命令;
调度模块17,用于接收来自轮询模块16的页操作命令,将每个预设协议接口12对应的页操作命令存储于调度内存15。
相应地,接口控制器11,还用于如果控制预设协议接口12发送信息比特的过程被来自CPU的读写命令中断,则在读写命令完成后,重新发送每个预设协议接口12被中断的页操作命令。
在这种情况下,一个操作命令为用一个页操作命令,即发送一次页操作命令属于一次原子操作。
以IIC接口为例,因一个页操作命令包括128个字节命令,所以一个页操作命令包括38×128=4864个信息比特。那么计数器13将对每个IIC接口从0-4863进行计数,当一个IIC接口对应的计数值达到4863时,确定完成一个页操作命令的发送。
采用本申请实施例,如果原子操作命令为页操作命令,则调度模块可以对整个页操作命令进行调度,可以简化调度模块的实现。并且,接口控制器将页操作命令作为高频信号时钟节拍处理,简化了对页操作命令的处理。
本申请实施例还提供了一种网络设备,如图3所示,包括中央处理器CPU31,图1所示的接口控制芯片32,以及多个预设协议器件33。该网络设备可以为路由器、交换机等具有接口控制芯片的设备。
CPU31连接于接口控制芯片32,用于通过接口控制芯片32对多个预设协议器件33进行读写操作;
接口控制芯片33通过每个预设协议接口12连接一个预设协议器件33,用于控制预设协议接口12向所连接的预设协议器件33发送操作命令。
在一种实施方式中,预设协议接口12为IIC接口,预设协议器件33为光模块。
作为示例,以接口控制芯片通过1个IIC接口控制器,控制64个IIC接口访问64个10G的光模块为例,网络设备的结构如图4所示。
其中,接口控制芯片包括:1个IIC接口控制器、轮询模块、调度模块和读数据返回模块。还包括CPU_CMDQ、作为调度内存15的调度随机存取存储器(schedule Random AccessMemory,SCH_RAM)以及作为计数内存14的计数随机存取存储器(count Random AccessMemory,CNT_RAM)。
CPU发送读或写光模块的命令,该命令中包括具体访问哪个光模块的指示信息。CPU发送的读写光模块的命令可缓存在接口控制芯片的缓存(CPU_CMDQ)中。
轮询模块用于定时发送轮询各光模块的轮询命令,该轮询命令为页操作命令。
调度模块用于对CPU发送的读写命令和轮询模块发送的轮询命令进行调度,将需要IIC接口控制器发送的信息比特存储于SCH_RAM中,进而IIC接口控制器可以从SCH_RAM中读取各命令包括的信息比特,并控制IIC接口向光模块发送读取到的信息比特,具体发送方法可参考上述实施例中的相关描述。
CNT-RAM为上述实施例中的计数内存14,用于存储每个IIC接口对应的计数值,在操作命令为字节命令的情况下,用于记录每个IIC接口上次传输的是38个信息比特中的哪一信息比特;在操作命令为页操作命令的情况下,用于记录每个IIC接口上次传输的是4864个信息比特中的哪一信息比特。
IIC接口控制器可以根据CNT-RAM记录的各IIC接口的计数值,在每一512时钟周期开始时,确定需要控制每个IIC接口传输的信息比特。例如,若某一IIC接口的计数值为20,则确定在当前的512个时钟周期内,需要控制该IIC接口传输字节命令的第21个信息比特,进而IIC接口控制器从SCH-RAM中获取第21个信息比特,并控制该IIC接口传输第21个信息比特。
如果IIC接口向光模块发送的命令为读取命令,则IIC接口控制器可将通过IIC接口读取到的数据传输给读数据返回模块,由读数据返回模块将读取到的数据返回给CPU。
通过上述方案,可以实现通过一个IIC接口控制器控制多个IIC接口,无需分别为每个IIC接口分别配置一个IIC接口控制器,可以节省芯片资源。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (10)
1.一种接口控制芯片,其特征在于,包括:接口控制器,与所述接口控制器连接的多个预设协议接口,所述预设协议接口的时钟频率小于所述接口控制器的时钟频率;
所述接口控制器,用于在每第一数量的时钟周期内,分别控制每个预设协议接口发送一个信息比特,针对每个预设协议接口,每控制该预设协议接口发送预设数量的信息比特,确定已控制该预设协议接口完成一次操作命令;
其中,所述第一数量为所述接口控制器的时钟频率与所述预设协议接口的时钟频率之间的比值。
2.根据权利要求1所述的芯片,其特征在于,
所述接口控制器,具体用于在所述接口控制器的每第二数量的连续时钟周期内,分别控制一个预设协议接口发送一个信息比特,所述第二数量为所述第一数量与所述预设协议接口的数量的比值。
3.根据权利要求1或2所述的芯片,其特征在于,所述接口控制芯片还包括计数器、计数内存和调度内存;所述计数器连接于所述接口控制器,或者所述计数器位于所述接口控制器内部;
所述计数器,用于针对每个预设协议接口,当确定所述接口控制器每控制该预设协议接口发送一个信息比特时,将该预设协议接口对应的计数值加1,当该预设协议接口对应的计数值达到所述预设数量时,将该预设协议接口对应的计数值清零;
所述计数内存,用于存储各预设协议接口对应的计数值;
所述调度内存,用于存储每个预设协议接口对应的操作命令;
所述接口控制器,具体用于针对每个预设协议接口,从所述计数内存中读取该预设协议接口对应的计数值,基于读取到的计数值从所述调度内存中获取该预设协议接口需传输的下一个信息比特,控制该预设协议接口传输读取到的信息比特。
4.根据权利要求3所述的芯片,其特征在于,所述接口控制芯片还包括轮询模块和连接于所述轮询模块的调度模块;
所述轮询模块,用于向所述调度模块发送针对每个预设协议接口的页操作命令;
所述调度模块,用于接收来自所述轮询模块的页操作命令,分别将每个页操作命令拆分为多个字节命令,将每个预设协议接口对应的多个字节命令存储于所述调度内存。
5.根据权利要求4所述的芯片,其特征在于,
所述接口控制器,还用于如果控制预设协议接口发送信息比特的过程被来自CPU的读写命令中断,则在所述读写命令完成后,重新发送每个预设协议接口被中断的字节命令。
6.根据权利要求3所述的芯片,其特征在于,述接口控制芯片还包括轮询模块和连接于所述轮询模块的调度模块;
所述轮询模块,用于向所述调度模块发送针对每个预设协议接口的页操作命令;
所述调度模块,用于接收来自所述轮询模块的页操作命令,将每个预设协议接口对应的页操作命令存储于所述调度内存。
7.根据权利要求6所述的芯片,其特征在于,
所述接口控制器,还用于如果控制预设协议接口发送信息比特的过程被来自CPU的读写命令中断,则在所述读写命令完成后,重新发送每个预设协议接口被中断的页操作命令。
8.根据权利要求1所述的芯片,其特征在于,所述预设协议接口为IIC接口。
9.一种网络设备,其特征在于,包括:中央处理器CPU,权利要求1-8任一项所述的接口控制芯片,以及多个预设协议器件;
所述CPU连接于所述接口控制芯片,用于通过所述接口控制芯片对所述多个预设协议器件进行读写操作;
所述接口控制芯片通过每个预设协议接口连接一个预设协议器件,用于控制预设协议接口向所连接的预设协议器件发送操作命令。
10.根据权利要求9所述的网络设备,其特征在于,所述预设协议接口为IIC接口,所述预设协议器件为光模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111285313.2A CN113934671B (zh) | 2021-11-01 | 2021-11-01 | 一种接口控制芯片及网络设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111285313.2A CN113934671B (zh) | 2021-11-01 | 2021-11-01 | 一种接口控制芯片及网络设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113934671A CN113934671A (zh) | 2022-01-14 |
CN113934671B true CN113934671B (zh) | 2024-02-23 |
Family
ID=79285252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111285313.2A Active CN113934671B (zh) | 2021-11-01 | 2021-11-01 | 一种接口控制芯片及网络设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113934671B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1237844A (zh) * | 1998-06-03 | 1999-12-08 | 朗迅科技公司 | 具有可缩放数据带宽的并行底板物理层接口 |
CN101498952A (zh) * | 2009-03-02 | 2009-08-05 | 北京红旗胜利科技发展有限责任公司 | 一种CPU、一种SoC芯片及一种同步时钟的方法 |
US8135881B1 (en) * | 2010-09-27 | 2012-03-13 | Skyworks Solutions, Inc. | Dynamically configurable serial data communication interface |
CN104333388A (zh) * | 2014-12-01 | 2015-02-04 | 山东华芯半导体有限公司 | 串行通信协议控制器及字符重对齐电路、8b10b解码器 |
CN106443421A (zh) * | 2016-09-06 | 2017-02-22 | 芯海科技(深圳)股份有限公司 | 一种自动化时钟频率测量及标定***及方法 |
CN106557441A (zh) * | 2015-09-29 | 2017-04-05 | 北京东土科技股份有限公司 | 一种基于中断控制器的低速接口中断处理方法及*** |
CN107065577A (zh) * | 2016-12-09 | 2017-08-18 | 彭州市运达知识产权服务有限公司 | 一种基于多媒体处理器的智能家居控制器及方法 |
CN110417347A (zh) * | 2019-08-15 | 2019-11-05 | 海宁昱能电子有限公司 | 一种用于控制光伏组件关断的控制器及控制方法 |
CN112367313A (zh) * | 2020-10-30 | 2021-02-12 | 新华三技术有限公司合肥分公司 | 一种报文防攻击方法及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6449679B2 (en) * | 1999-02-26 | 2002-09-10 | Micron Technology, Inc. | RAM controller interface device for RAM compatibility (memory translator hub) |
US6715094B2 (en) * | 2000-12-20 | 2004-03-30 | Intel Corporation | Mult-mode I/O interface for synchronizing selected control patterns into control clock domain to obtain interface control signals to be transmitted to I/O buffers |
US10101795B2 (en) * | 2015-11-10 | 2018-10-16 | Wipro Limited | System-on-chip (SoC) and method for dynamically optimizing power consumption in the SoC |
US11249536B2 (en) * | 2018-12-17 | 2022-02-15 | Qualcomm Incorporated | Reducing power consumption of communication interfaces by clock frequency scaling and adaptive interleaving of polling |
-
2021
- 2021-11-01 CN CN202111285313.2A patent/CN113934671B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1237844A (zh) * | 1998-06-03 | 1999-12-08 | 朗迅科技公司 | 具有可缩放数据带宽的并行底板物理层接口 |
CN101498952A (zh) * | 2009-03-02 | 2009-08-05 | 北京红旗胜利科技发展有限责任公司 | 一种CPU、一种SoC芯片及一种同步时钟的方法 |
US8135881B1 (en) * | 2010-09-27 | 2012-03-13 | Skyworks Solutions, Inc. | Dynamically configurable serial data communication interface |
CN104333388A (zh) * | 2014-12-01 | 2015-02-04 | 山东华芯半导体有限公司 | 串行通信协议控制器及字符重对齐电路、8b10b解码器 |
CN106557441A (zh) * | 2015-09-29 | 2017-04-05 | 北京东土科技股份有限公司 | 一种基于中断控制器的低速接口中断处理方法及*** |
CN106443421A (zh) * | 2016-09-06 | 2017-02-22 | 芯海科技(深圳)股份有限公司 | 一种自动化时钟频率测量及标定***及方法 |
CN107065577A (zh) * | 2016-12-09 | 2017-08-18 | 彭州市运达知识产权服务有限公司 | 一种基于多媒体处理器的智能家居控制器及方法 |
CN110417347A (zh) * | 2019-08-15 | 2019-11-05 | 海宁昱能电子有限公司 | 一种用于控制光伏组件关断的控制器及控制方法 |
CN112367313A (zh) * | 2020-10-30 | 2021-02-12 | 新华三技术有限公司合肥分公司 | 一种报文防攻击方法及设备 |
Non-Patent Citations (1)
Title |
---|
5G基带数据平面模块的低功耗设计;高翊鑫;硕士电子期刊;20200501;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113934671A (zh) | 2022-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200393965A1 (en) | Memory Access Technology and Computer System | |
CN108228492B (zh) | 一种多通道ddr交织控制方法及装置 | |
US8635386B2 (en) | Communication control device, data communication method and program | |
US20220045922A1 (en) | Slave-to-master data and out-of-sequence acknowledgements on a daisy-chained bus | |
CN111737173B (zh) | I2c总线通信控制方法、装置、***及可读存储介质 | |
US11010094B2 (en) | Task management method and host for electronic storage device | |
US8386908B2 (en) | Data transmission methods and universal serial bus host controllers utilizing the same | |
CN103218310A (zh) | 缓存装置、通信设备以及计算机程序产品 | |
CN102033840B (zh) | 总线协议转换装置和总线协议转换方法 | |
US20160062930A1 (en) | Bus master, bus system, and bus control method | |
US20120047299A1 (en) | Data transfer device, method of transferring data, and image forming apparatus | |
US20080225858A1 (en) | Data transferring apparatus and information processing system | |
CN115617718A (zh) | 一种基于AXI总线的读写保序方法及SoC*** | |
US10318362B2 (en) | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium | |
CN105718396A (zh) | 一种大数据主设备传输的i2c总线装置及其通讯方法 | |
CN113934671B (zh) | 一种接口控制芯片及网络设备 | |
KR20170117326A (ko) | 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치 | |
CN113672172A (zh) | 应用于led显示控制***的数据交互方法以及接收卡 | |
CN113961496A (zh) | 通信电路***、方法、芯片以及存储介质 | |
CN113961497A (zh) | 通信电路***、方法、芯片以及存储介质 | |
CN116185649A (zh) | 存储控制方法、存储控制器、存储芯片、网卡、可读介质 | |
CN113032307A (zh) | 一种集成器件访问请求处理方法及相关组件 | |
CN115884229B (zh) | 传输时延的管理方法、电子设备和存储介质 | |
CN117880364B (zh) | 一种数据传输方法、***以及相关装置 | |
CN116756078B (zh) | pcie数据包的通知方法、装置及存储介质 |
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 |