CN105391508A - Qsgmii pcs发送方向状态机时分复用的架构、其控制方法及系统 - Google Patents

Qsgmii pcs发送方向状态机时分复用的架构、其控制方法及系统 Download PDF

Info

Publication number
CN105391508A
CN105391508A CN201510672692.9A CN201510672692A CN105391508A CN 105391508 A CN105391508 A CN 105391508A CN 201510672692 A CN201510672692 A CN 201510672692A CN 105391508 A CN105391508 A CN 105391508A
Authority
CN
China
Prior art keywords
state machine
ordered
code
data
group
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
CN201510672692.9A
Other languages
English (en)
Other versions
CN105391508B (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.)
Suzhou Centec Communications Co Ltd
Original Assignee
Centec Networks Suzhou 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 Centec Networks Suzhou Co Ltd filed Critical Centec Networks Suzhou Co Ltd
Priority to CN201510672692.9A priority Critical patent/CN105391508B/zh
Publication of CN105391508A publication Critical patent/CN105391508A/zh
Application granted granted Critical
Publication of CN105391508B publication Critical patent/CN105391508B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J2203/00Aspects of optical multiplex systems other than those covered by H04J14/05 and H04J14/07
    • H04J2203/0001Provisions for broadband connections in integrated services digital network using frames of the Optical Transport Network [OTN] or using synchronous transfer mode [STM], e.g. SONET, SDH
    • H04J2203/0046User Network Interface

Abstract

本发明提供一种QSGMII?PCS发送方向状态机时分复用的架构、其控制方法及系统,所述方法包括:设置一个GMII接口依次接收数据;在相同时钟周期下,4条所述逻辑通道依次时分复用同一个ordered_set状态机、code_group状态机对数据进行处理。本发明在整个数据处理过程中,在现有技术设置两个时钟的基础上仅保留一个时钟,使4条逻辑通道时分复用同一个ordered_set状态机和code_group状态机,并在相同的时钟周期下,将code_group状态机传递的数据直接进行编码后在一条物理链路上输出;如此,无需对数据进行跨时钟域的处理,有效的减少逻辑资源的使用,同时,上述状态机的时分复用,还可以有效的降低芯片的面积,降低芯片的研发及使用成本。

Description

QSGMII PCS发送方向状态机时分复用的架构、其控制方法及系统
技术领域
本发明涉及网络通信领域,尤其涉及一种QSGMIIPCS发送方向状态机时分复用的架构、其控制方法及系统。
背景技术
QSGMII是由CISCO公司定义的接口协议标准,同时也是业界所采用的QSGMII标准;该标准协议中定义QSGMII只有一条物理链路,其速率为5Gbps;相应的,其具有4条逻辑通道,每条的速率是1.25Gbps;4条逻辑通道是完全独立的,其符合CISCO定义的SGMII协议标准。
传统的QSGMIIPCS发送方向架构如图1所示,4条逻辑通道是相互独立的,且为4条逻辑通道均单独配置工作在125MHz时钟下的ordered_set状态机和code_group状态机,同时,还需要额外配置一个500MHz的时钟,并在该500M的时钟下,对经过各自状态机处理后的4条逻辑通道数据进行跨时钟处理,最后,通过选择器对4条通道的数据进行选择编码成一条物理链路数据;上述两个时钟的设置,增加了芯片时钟树设计的复杂度和时钟资源,对数据进行异步处理的方式增加了芯片设计的风险和复杂度,同时,4个独立的ordered_set状态机和code_group状态机使用了较多的芯片逻辑资源,增加了芯片的面积,进而增加了芯片的使用成本。
发明内容
本发明的目的在于提供一种QSGMIIPCS发送方向状态机时分复用的架构、其控制方法及系统。
为实现上述目的之一,本发明一实施方式提供一种QSGMIIPCS发送方向状态机时分复用的架构,所述架构包括:4条逻辑通道;
对应所述4条逻辑通道仅配置具有单一频率的一个时钟;
在相同时钟周期下,时分复用4条所述逻辑通道的一个ordered_set状态机和一个code_group状态机;
以及,为每条逻辑通道分别配置的ordered_set状态锁存器和code_group状态锁存器。
作为本实施方式的进一步改进,所述时钟的时钟频率设置为500MHz。
为实现上述目的之一,本发明一实施方式提供一种QSGMIIPCS发送方向状态机时分复用的架构的控制方法,所述方法包括:通过同一个GMII接口依次接收数据;
在相同时钟周期下,4条所述逻辑通道依次时分复用同一个ordered_set状态机、code_group状态机对数据进行处理;
将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出。
作为本实施方式的进一步改进,4条所述逻辑通道分别为逻辑通道0、逻辑通道1、逻辑通道2、逻辑通道3;
4条所述逻辑通道分别对应配置ordered_set状态锁存器0、ordered_set状态锁存器1、ordered_set状态锁存器2、ordered_set状态锁存器3;
“4条所述逻辑通道时分复用同一个ordered_set状态机对数据进行处理”具体包括:
M1、第1n个时钟周期内,n为大于等于1的正整数,接收对应逻辑通道0的GMII接口数据;
将当前接收到的GMII接口数据和ordered_set状态锁存器0的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器0,同时将ordered_set状态机接收到的GMII接口数据直接同步到code_group状态机;
M2、第2n个时钟周期内,接收对应逻辑通道1的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器1的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器1,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
M3、第3n个时钟周期内,接收对应逻辑通道2的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器2的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器2,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
M4、第4n个时钟周期内,接收对应逻辑通道3的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器3的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器3,同时将ordered_set状态机接收到的数据直接同步到code_group状态机。
作为本实施方式的进一步改进,4条所述逻辑通道分别对应配置code_group状态锁存器0、code_group状态锁存器1、code_group状态锁存器2、code_group状态锁存器3;
“4条所述逻辑通道时分复用同一个code_group状态机对数据进行处理”具体包括:
N1、第1n个时钟周期内,将ordered_set状态机中对应逻辑通道0的数据、当前ordered_set状态机的结果,以及code_group状态锁存器0的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器0;
N2、第2n个时钟周期内,将ordered_set状态机中对应逻辑通道1的数据、当前ordered_set状态机的结果,以及code_group状态锁存器1的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器1;
N3、第3n个时钟周期内,将ordered_set状态机中对应逻辑通道2的数据、当前ordered_set状态机的结果,以及code_group状态锁存器2的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器2;
N4、第4n个时钟周期内,将ordered_set状态机中对应逻辑通道3的数据、当前ordered_set状态机的结果,以及code_group状态锁存器3的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器3。
作为本实施方式的进一步改进,“将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出”具体包括:
将在第1n个时钟周期内code_group状态机处理后的特定数据替换为系统预设代码后,进行编码输出。
为实现上述目的之一,本发明一实施方式提供一种QSGMIIPCS发送方向状态机时分复用的架构的控制系统,所述系统包括:数据接收模块,用于通过同一个GMII接口依次接收数据;
数据处理模块,用于在相同时钟周期下,使4条所述逻辑通道依次时分复用同一个ordered_set状态机、code_group状态机对数据进行处理;
将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出。
作为本实施方式的进一步改进,4条所述逻辑通道分别为逻辑通道0、逻辑通道1、逻辑通道2、逻辑通道3;
4条所述逻辑通道分别对应配置ordered_set状态锁存器0、ordered_set状态锁存器1、ordered_set状态锁存器2、ordered_set状态锁存器3;
所述数据处理模块具体用于:
第1n个时钟周期内,n为大于等于1的正整数,接收对应逻辑通道0的GMII接口数据;
将当前接收到的GMII接口数据和ordered_set状态锁存器0的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器0,同时将ordered_set状态机接收到的GMII接口数据直接同步到code_group状态机;
第2n个时钟周期内,接收对应逻辑通道1的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器1的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器1,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
第3n个时钟周期内,接收对应逻辑通道2的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器2的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器2,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
第4n个时钟周期内,接收对应逻辑通道3的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器3的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器3,同时将ordered_set状态机接收到的数据直接同步到code_group状态机。
作为本实施方式的进一步改进,4条所述逻辑通道分别对应配置code_group状态锁存器0、code_group状态锁存器1、code_group状态锁存器2、code_group状态锁存器3;
所述数据处理模块还用于:
第1n个时钟周期内,将ordered_set状态机中对应逻辑通道0的数据、当前ordered_set状态机的结果,以及code_group状态锁存器0的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器0;
第2n个时钟周期内,将ordered_set状态机中对应逻辑通道1的数据、当前ordered_set状态机的结果,以及code_group状态锁存器1的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器1;
第3n个时钟周期内,将ordered_set状态机中对应逻辑通道2的数据、当前ordered_set状态机的结果,以及code_group状态锁存器2的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器2;
第4n个时钟周期内,将ordered_set状态机中对应逻辑通道3的数据、当前ordered_set状态机的结果,以及code_group状态锁存器3的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器3。
作为本实施方式的进一步改进,所述数据处理模块还用于:
将在第1n个时钟周期内code_group状态机处理后的特定数据替换为系统预设代码后,进行编码输出。
与现有技术相比,本发明的有益效果是:本发明的QSGMIIPCS发送方向状态机时分复用的架构、其控制方法及系统,在QSGMIIPCS发送方向,仅配置具有单一频率的一个时钟,一个ordered_set状态机和一个code_group状态机,保证在同一个时钟周期下,4条逻辑通道时分复用同一个ordered_set状态机和code_group状态机,并在相同的时钟下,将code_group状态机传递的数据直接进行编码后在一条物理链路上输出;本发明在整个数据处理过程中,在现有技术中设置两个时钟的基础上,仅保留一个时钟,如此,无需对数据进行跨时钟域的处理,有效的降低的芯片设计的风险和复杂度,减少逻辑资源的使用,同时,上述状态机的时分复用,还可以有效的降低芯片的面积,降低芯片的研发及使用成本。
附图说明
图1是本发明背景技术中所提及的传统的QSGMIIPCS发送方向架构的示意图;
图2是本发明一实施方式中QSGMIIPCS发送方向状态机时分复用的架构的示意图;
图3是本发明一实施方式中QSGMIIPCS发送方向状态机时分复用的架构的控制方法的流程图;
图4是本发明一实施方式中QSGMIIPCS发送方向状态机时分复用的架构的控制系统的模块示意图。
具体实施方式
以下将结合附图所示的具体实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
如图2所示,本发明一实施方式中提供一种QSGMIIPCS发送方向状态机时分复用的架构。
所述架构包括:4条逻辑通道,对应所述4条逻辑通道仅配置具有单一频率的一个时钟;在相同时钟周期下,时分复用4条所述逻辑通道的一个ordered_set状态机和一个code_group状态机;以及,为每条逻辑通道分别配置的ordered_set状态锁存器和code_group状态锁存器。
其中,本发明一具体示例中,4条逻辑通道分别为逻辑通道0、逻辑通道1、逻辑通道2、逻辑通道3;所述时钟的时钟频率设置为500MHz;4条所述逻辑通道分别对应配置ordered_set状态锁存器0、ordered_set状态锁存器1、ordered_set状态锁存器2、ordered_set状态锁存器3,以及分别对应配置code_group状态锁存器0、code_group状态锁存器1、code_group状态锁存器2、code_group状态锁存器3;另外,在ordered_set状态机与ordered_set状态锁存器之间,以及在code_group状态机和code_group状态锁存器之间还配置不同的选择器,用于在不同的时钟周期下,选择相应的逻辑通道以及相应的ordered_set状态锁存器和相应的code_group状态锁存器,具体的,通道选择器1为2位的无条件加法器,相应的,可根据加法器的当前数值选择对应的逻辑通道;选择器2用于根据确定的逻辑通道选择对应的ordered_set状态锁存器的状态及相应的数据,并将其写入到ordered_set状态机;通道选择器3同样为2位的无条件加法器,相应的,可根据加法器的当前数值选择对应的逻辑通道;选择器4用于根据确定的逻辑通道选择对应的code_group状态锁存器的状态及相应的数据,并将其写入到code_group状态机。需要说明的是,通道选择器1和通道选择器2可以合并为一个通道选择器进行设置,在此不做详细赘述。
将该架构与图1所示架构进行对比,本实施方式中,减少一个工作在125MHZ的时钟,如此,数据不需要进行跨时钟域的处理,同时,4条逻辑通道时分复用同一个ordered_set状态机和code_group状态机,可以有效降低芯片的面积。
结合图3所示,在本发明的一实施方式中,QSGMIIPCS发送方向状态机时分复用的架构的控制方法包括通过同一个GMII接口依次接收数据;在相同时钟周期下,4条所述逻辑通道依次时分复用同一个ordered_set状态机、code_group状态机对数据进行处理;将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出。
本发明一实施方式中,4条所述逻辑通道依次时分复用同一个ordered_set状态机对数据进行处理具体包括:
M1、第1n个时钟周期内,n为大于等于1的正整数,将当前接收到的数据和ordered_set状态锁存器0的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器0,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
M2、第2n个时钟周期内,将当前接收到的数据和ordered_set状态锁存器1的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器1,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
M3、第3n个时钟周期内,将当前接收到的数据和ordered_set状态锁存器2的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器2,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
M4、第4n个时钟周期内,将当前接收到的数据和ordered_set状态锁存器3的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器3,同时将ordered_set状态机接收到的数据直接同步到code_group状态机。
可以理解的是,由于,在500MHz的时钟下,一个ordered_set状态机时分复用于4条逻辑通道,相应的,在每个时钟周期下,也仅会有一个对应相应逻辑通道的数据进行输出,即:通过4条逻辑通道依次传递的数据会依次串行的输出在所述ordered_set状态机输出结果上,送给code_group状态机。
本发明一实施方式中,4条所述逻辑通道依次时分复用同一个code_group状态机对数据进行处理具体包括:
N1、第1n个时钟周期内,将ordered_set状态机中对应逻辑通道0的数据、当前ordered_set状态机的结果,以及code_group状态锁存器0的当前状态写到code_group状态机;之后将当前code_group状态机的结果锁存到code_group状态锁存器0;
N2、第2n个时钟周期内,将ordered_set状态机中对应逻辑通道1的数据、当前ordered_set状态机的结果,以及code_group状态锁存器1的当前状态写到code_group状态机;之后将当前code_group状态机的结果锁存到code_group状态锁存器1;
N3、第3n个时钟周期内,将ordered_set状态机中对应逻辑通道2的数据、当前ordered_set状态机的结果,以及code_group状态锁存器2的当前状态写到code_group状态机;之后将当前code_group状态机的结果锁存到code_group状态锁存器2;
N4、第4n个时钟周期内,将ordered_set状态机中对应逻辑通道3的数据、当前ordered_set状态机的结果,以及code_group状态锁存器3的当前状态写到code_group状态机;之后将当前code_group状态机的结果锁存到code_group状态锁存器3。
可以理解的是,由于,在500MHz的时钟下,一个code_group状态机时分复用于4条逻辑通道,相应的,在每个时钟周期下,也仅会有一个对应相应逻辑通道的数据进行输出,即:通过4条逻辑通道依次传递的数据会依次串行的输出在所述code_group状态机输出结果上,并依次进行编码后在一条物理链路上输出。
本发明一实施方式中,“将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出”具体包括:
将在第1n个时钟周期内code_group状态机处理后的数据替换为系统预设代码后,进行编码输出;以使4条逻辑通道的数据被合并到一条物理链路上传输后,进一步的在接收方向能够从一条物理链路上易于分离出4条逻辑通道的数据。
本发明具体示例中,发送方向上,逻辑通道上传递的数据为K28.5,所述系统预设代码为K28.1,如此,在发送方向上,将逻辑通道0上的K28.5替换为K28.1后,再进行编码输出。
进一步的,当接收方向监测到所述系统预设代码后,将监测的所述系统预设代码设置为逻辑通道0的数据,其后三个时钟周期内接收到的数据分别设置为逻辑通道1的数据、逻辑通道2的数据以及逻辑通道3的数据;即,本发明具体示例中,在接收方向上,将逻辑通道0上的K28.1恢复为K28.5后,再进行解码输出,在此不做详细赘述。
可以理解的是,本示例中,由于code_group状态机时分复用4条逻辑通道,故,对应4条逻辑通道的数据在每个时钟周期内,均由code_group状态机依次进行编码后在一条物理链路上输出,故,无需设置用于选择code_group状态机中相应数据到物理链路上的编码器,直接对code_group状态机输出的8bit数据进行8b/10b编码即可。
进一步的,由于4条逻辑通道对应的数据被直接合并在同一条物理链路上进行传输,为了方便在接收方向将该相应的4条数据进行分解,将在第1n个时钟周期内code_group状态机处理后的数据替换为系统预设代码,在接收方向时,当监测到所述系统预设代码后,可以判断当前数据对应逻辑通道0,如此,在接收方向上,将监测的所述系统预设代码以及其后三个时钟周期内接收到的数据分别设置为逻辑通道0的数据、逻辑通道1的数据、逻辑通道2的数据以及逻辑通道3的数据,之后再按照接收的顺序进行解码输出,在此不做详细赘述。
为了方便描述,以一个循环周期为例做具体介绍,该示例中,以4个时钟周期作为一个循环周期。
设置一个GMII接口,并在相同的时钟周期下,依次接收数据,在该架构中,4条逻辑通道在相邻时钟周期内,依次处理数据,并在每条链路对数据处理结束后,按照处理顺序依次输出。
本示例在500MHz的时钟周期下,GMII接口在每个时钟周期下,均接收一个相应的GMII接口数据,并将该GMII接口数据经ordered_set状态机、code_group状态处理后,依次进行编码后在一条物理链路上输出。
相应的,在第一个时钟周期到来时,接收对应逻辑通道0的GMII接口数据,将当前接收到的GMII接口数据直接写入到ordered_set状态机中,并将ordered_set状态锁存器0的当前状态同时写到ordered_set状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前ordered_set状态机的结果锁存到ordered_set状态锁存器0,以供下一个到达ordered_set状态机0的GMII接口数据调用;
进一步的,将ordered_set状态机接收到的GMII接口数据在当前周期内,直接同步到code_group状态机;
进一步的,code_group状态机接收ordered_set状态机传递的对应逻辑通道0的GMII接口数据、当前ordered_set状态机的结果,同时一并将code_group状态锁存器0的当前状态同时写到code_group状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前code_group状态机的结果锁存到code_group状态锁存器0,以供下一个到达code_group状态机的、且处于同一逻辑通道的GMII接口数据调用。
进一步的,将当前的code_group状态机的结果进行编码后输出到一条物理链路上。另外,在第一个时钟周期内,将code_group状态机的输出数据用以系统预设代码在编码时进行标识,以利于接收方向区分数据。
本示例中,所述code_group状态机的结果为特定字符K28.5,将其替换为系统预设代码K28.1后进行编码输出到物理链路上。
在第二个时钟周期到来时,接收对应逻辑通道1的GMII接口数据,将当前接收到的GMII接口数据直接写入到ordered_set状态机中,并将ordered_set状态锁存器1的当前状态同时写到ordered_set状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前ordered_set状态机的结果锁存到ordered_set状态锁存器1,以供下一个到达ordered_set状态机1的GMII接口数据调用;
进一步的,将ordered_set状态机接收到的GMII接口数据在当前周期内,直接同步到code_group状态机;
进一步的,code_group状态机接收ordered_set状态机传递的对应逻辑通道1的GMII接口数据、当前ordered_set状态机的结果,同时一并将code_group状态锁存器1的当前状态同时写到code_group状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前code_group状态机的结果锁存到code_group状态锁存器1,以供下一个到达code_group状态机的、且处于同一逻辑通道的GMII接口数据调用。
进一步的,将当前的code_group状态机的结果进行编码后输出到一条物理链路上。
在第三个时钟周期到来时,接收对应逻辑通道2的GMII接口数据,将当前接收到的GMII接口数据直接写入到ordered_set状态机中,并将ordered_set状态锁存器2的当前状态同时写到ordered_set状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前ordered_set状态机的结果锁存到ordered_set状态锁存器2,以供下一个到达ordered_set状态机2的GMII接口数据调用;
进一步的,将ordered_set状态机接收到的GMII接口数据在当前周期内,直接同步到code_group状态机;
进一步的,code_group状态机接收ordered_set状态机传递的对应逻辑通道2的GMII接口数据、当前ordered_set状态机的结果,同时一并将code_group状态锁存器2的当前状态同时写到code_group状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前code_group状态机的结果锁存到code_group状态锁存器2,以供下一个到达code_group状态机的、且处于同一逻辑通道的GMII接口数据调用。
进一步的,将当前的code_group状态机的结果进行编码后输出到一条物理链路上。
在第四个时钟周期到来时,接收对应逻辑通道3的GMII接口数据,将当前接收到的GMII接口数据直接写入到ordered_set状态机中,并将ordered_set状态锁存器3的当前状态同时写到ordered_set状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前ordered_set状态机的结果锁存到ordered_set状态锁存器3,以供下一个到达ordered_set状态机3的GMII接口数据调用;
进一步的,将ordered_set状态机接收到的GMII接口数据在当前周期内,直接同步到code_group状态机;
进一步的,code_group状态机接收ordered_set状态机传递的对应逻辑通道3的GMII接口数据、当前ordered_set状态机的结果,同时一并将code_group状态锁存器3的当前状态同时写到code_group状态机,以指示数据的传递方向及目的端口;
进一步的,在当前时钟周期内,将当前code_group状态机的结果锁存到code_group状态锁存器3,以供下一个到达code_group状态机的、且处于同一逻辑通道的GMII接口数据调用。
进一步的,将当前的code_group状态机的结果进行编码后输出到一条物理链路上。
如此循环,在第1n个时钟周期到来时,n为大于等于1的正整数,循环第一个时钟周期处理数据的过程,依次类推,在第2n个时钟周期到来时,循环第二个时钟周期处理数据的过程,在第3n个时钟周期到来时,循环第三个时钟周期处理数据的过程,在第4n个时钟周期到来时,循环第四个时钟周期处理数据的过程,在此不做详细赘述,如此,4条逻辑通道时分复用同一个ordered_set状态机、以及时分复用同一个code_group状态机,有效的减少逻辑资源的使用,以及降低芯片的面积,降低芯片的研发及使用成本。
结合图4所示,本发明一实施方式提供的QSGMIIPCS发送方向状态机时分复用的架构的控制系统包括:数据接收模块100、数据处理模块200。
数据接收模块100用于通过同一个GMII接口依次接收数据。
数据处理模块200用于在相同时钟周期下,使4条所述逻辑通道依次时分复用同一个ordered_set状态机、code_group状态机对数据进行处理,并将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出。
本发明一实施方式中,数据处理模块200使4条所述逻辑通道依次时分复用同一个ordered_set状态机对数据进行处理具体包括:
第1n个时钟周期内,n为大于等于1的正整数,将当前接收到的数据和ordered_set状态锁存器0的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器0,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
第2n个时钟周期内,将当前接收到的数据和ordered_set状态锁存器1的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器1,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
第3n个时钟周期内,将当前接收到的数据和ordered_set状态锁存器2的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器2,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
第4n个时钟周期内,将当前接收到的数据和ordered_set状态锁存器3的当前状态写到ordered_set状态机;之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器3,同时将ordered_set状态机接收到的数据直接同步到code_group状态机。
可以理解的是,由于,在500MHz的时钟下,一个ordered_set状态机时分复用于4条逻辑通道,相应的,在每个时钟周期下,也仅会有一个对应相应逻辑通道的数据进行输出,即:通过4条逻辑通道依次传递的数据会依次串行的输出在所述ordered_set状态机输出结果上,送给code_group状态机。
本发明一实施方式中,数据处理模块200使4条所述逻辑通道依次时分复用同一个code_group状态机对数据进行处理具体包括:
第1n个时钟周期内,将ordered_set状态机中对应逻辑通道0的数据、当前ordered_set状态机的结果,以及code_group状态锁存器0的当前状态写到code_group状态机;之后将当前code_group状态机的结果锁存到code_group状态锁存器0;
第2n个时钟周期内,将ordered_set状态机中对应逻辑通道1的数据、当前ordered_set状态机的结果,以及code_group状态锁存器1的当前状态写到code_group状态机;之后将当前code_group状态机的结果锁存到code_group状态锁存器1;
第3n个时钟周期内,将ordered_set状态机中对应逻辑通道2的数据、当前ordered_set状态机的结果,以及code_group状态锁存器2的当前状态写到code_group状态机;之后将当前code_group状态机的结果锁存到code_group状态锁存器2;
第4n个时钟周期内,将ordered_set状态机中对应逻辑通道3的数据、当前ordered_set状态机的结果,以及code_group状态锁存器3的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器3。
可以理解的是,由于,在500MHz的时钟下,一个code_group状态机时分复用于4条逻辑通道,相应的,在每个时钟周期下,也仅会有一个对应相应逻辑通道的数据进行输出,即:通过4条逻辑通道依次传递的数据会依次串行的输出在所述code_group状态机输出结果上,并依次进行编码后在一条物理链路上输出。
本发明一实施方式中,数据处理模块200将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出”具体包括:
将在第1n个时钟周期内code_group状态机处理后的数据替换为系统预设代码后,进行编码输出;以使4条逻辑通道的数据被合并到一条物理链路上传输后,进一步的在接收方向能够从一条物理链路上易于分离出4条逻辑通道的数据。
本发明具体示例中,发送方向上,逻辑通道上传递的数据为K28.5,所述系统预设代码为K28.1,如此,在发送方向上,将逻辑通道0上的K28.5替换为K28.1后,再进行编码输出。进一步的,当接收方向监测到所述系统预设代码后,将监测的所述系统预设代码设置为逻辑通道0的数据,其后三个时钟周期内接收到的数据分别设置为逻辑通道1的数据、逻辑通道2的数据以及逻辑通道3的数据;即,本发明具体示例中,在接收方向上,将逻辑通道0上的K28.1恢复为K28.5后,再进行解码输出,在此不做详细赘述。
可以理解的是,本示例中,由于code_group状态机时分复用4条逻辑通道,故,对应4条逻辑通道的数据在每个时钟周期内,均由code_group状态机依次进行编码后在一条物理链路上输出,故,无需设置用于选择code_group状态机中相应数据到物理链路上的编码器,直接对code_group状态机输出的8bit数据进行8b/10b编码即可。
进一步的,由于4条逻辑通道对应的数据被直接合并在同一条物理链路上进行传输,为了方便在接收方向将该相应的4条数据进行分解,将在第1n个时钟周期内code_group状态机处理后的数据替换为系统预设代码,在接收方向时,当监测到所述系统预设代码后,可以判断当前数据对应逻辑通道0,如此,在接收方向上,将监测的所述系统预设代码以及其后三个时钟周期内接收到的数据分别设置为逻辑通道0的数据、逻辑通道1的数据、逻辑通道2的数据以及逻辑通道3的数据,之后再按照接收的顺序进行解码输出,在此不做详细赘述。
综上所述,本发明的QSGMIIPCS发送方向状态机时分复用的架构、其控制方法及系统,在QSGMIIPCS发送方向,仅配置具有单一频率的一个时钟,一个ordered_set状态机和一个code_group状态机,保证在同一个时钟周期下,4条逻辑通道时分复用同一个ordered_set状态机和code_group状态机,并在相同的时钟下,将code_group状态机传递的数据直接进行编码后在一条物理链路上输出;本发明在整个数据处理过程中,在现有技术中设置两个时钟的基础上,仅保留一个时钟,如此,无需对数据进行跨时钟域的处理,有效的降低的芯片设计的风险和复杂度,减少逻辑资源的使用,同时,上述状态机的时分复用,还可以有效的降低芯片的面积,降低芯片的研发及使用成本。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统中模块的具体工作过程,可以参考前述方法实施方式中的对应过程,在此不再赘述。
以上所描述的系统实施方式仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件是逻辑模块,即可以位于芯片逻辑中的一个模块中,或者也可以分布到芯片内的多个数据处理模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请可用于众多通用或专用的通信芯片中。例如:交换芯片、路由器芯片,服务器芯片等等。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

Claims (10)

1.一种QSGMIIPCS发送方向状态机时分复用的架构,其特征在于,所述架构包括:
4条逻辑通道;
对应所述4条逻辑通道仅配置具有单一频率的一个时钟;
在相同时钟周期下,时分复用4条所述逻辑通道的一个ordered_set状态机和一个code_group状态机;
以及,为每条逻辑通道分别配置的ordered_set状态锁存器和code_group状态锁存器。
2.根据权利要求1所述的QSGMIIPCS发送方向状态机时分复用的架构,其特征在于,所述时钟的时钟频率设置为500MHz。
3.一种QSGMIIPCS发送方向状态机时分复用的架构的控制方法,其特征在于,所述方法包括:
通过同一个GMII接口依次接收数据;
在相同时钟周期下,4条所述逻辑通道依次时分复用同一个ordered_set状态机、code_group状态机对数据进行处理;
将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出。
4.根据权利要求3所述的QSGMIIPCS发送方向状态机时分复用的架构的控制方法,其特征在于,
4条所述逻辑通道分别为逻辑通道0、逻辑通道1、逻辑通道2、逻辑通道3;
4条所述逻辑通道分别对应配置ordered_set状态锁存器0、ordered_set状态锁存器1、ordered_set状态锁存器2、ordered_set状态锁存器3;
“4条所述逻辑通道时分复用同一个ordered_set状态机对数据进行处理”具体包括:
M1、第1n个时钟周期内,n为大于等于1的正整数,接收对应逻辑通道0的GMII接口数据;
将当前接收到的GMII接口数据和ordered_set状态锁存器0的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器0,同时将ordered_set状态机接收到的GMII接口数据直接同步到code_group状态机;
M2、第2n个时钟周期内,接收对应逻辑通道1的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器1的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器1,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
M3、第3n个时钟周期内,接收对应逻辑通道2的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器2的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器2,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
M4、第4n个时钟周期内,接收对应逻辑通道3的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器3的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器3,同时将ordered_set状态机接收到的数据直接同步到code_group状态机。
5.根据权利要求4所述的QSGMIIPCS发送方向状态机时分复用的架构的控制方法,其特征在于,
4条所述逻辑通道分别对应配置code_group状态锁存器0、code_group状态锁存器1、code_group状态锁存器2、code_group状态锁存器3;
“4条所述逻辑通道时分复用同一个code_group状态机对数据进行处理”具体包括:
N1、第1n个时钟周期内,将ordered_set状态机中对应逻辑通道0的数据、当前ordered_set状态机的结果,以及code_group状态锁存器0的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器0;
N2、第2n个时钟周期内,将ordered_set状态机中对应逻辑通道1的数据、当前ordered_set状态机的结果,以及code_group状态锁存器1的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器1;
N3、第3n个时钟周期内,将ordered_set状态机中对应逻辑通道2的数据、当前ordered_set状态机的结果,以及code_group状态锁存器2的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器2;
N4、第4n个时钟周期内,将ordered_set状态机中对应逻辑通道3的数据、当前ordered_set状态机的结果,以及code_group状态锁存器3的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器3。
6.根据权利要求5所述的QSGMIIPCS发送方向状态机时分复用的架构的控制方法,其特征在于,“将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出”具体包括:
将在第1n个时钟周期内code_group状态机处理后的数据替换为系统预设代码后,进行编码输出。
7.一种QSGMIIPCS发送方向状态机时分复用的架构的控制系统,其特征在于,所述系统包括:
数据接收模块,用于通过同一个GMII接口依次接收数据;
数据处理模块,用于在相同时钟周期下,使4条所述逻辑通道依次时分复用同一个ordered_set状态机、code_group状态机对数据进行处理;
将code_group状态机处理后的数据依次进行编码后在一条物理链路上输出。
8.根据权利要求7所述的QSGMIIPCS发送方向状态机时分复用的架构的控制系统,其特征在于,
4条所述逻辑通道分别为逻辑通道0、逻辑通道1、逻辑通道2、逻辑通道3;
4条所述逻辑通道分别对应配置ordered_set状态锁存器0、ordered_set状态锁存器1、ordered_set状态锁存器2、ordered_set状态锁存器3;
所述数据处理模块具体用于:
第1n个时钟周期内,n为大于等于1的正整数,接收对应逻辑通道0的GMII接口数据;
将当前接收到的GMII接口数据和ordered_set状态锁存器0的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器0,同时将ordered_set状态机接收到的GMII接口数据直接同步到code_group状态机;
第2n个时钟周期内,接收对应逻辑通道1的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器1的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器1,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
第3n个时钟周期内,接收对应逻辑通道2的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器2的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器2,同时将ordered_set状态机接收到的数据直接同步到code_group状态机;
第4n个时钟周期内,接收对应逻辑通道3的GMII接口数据;将当前接收到的数据和ordered_set状态锁存器3的当前状态写到ordered_set状态机;
之后将当前ordered_set状态机的结果锁存到ordered_set状态锁存器3,同时将ordered_set状态机接收到的数据直接同步到code_group状态机。
9.根据权利要求8所述的QSGMIIPCS发送方向状态机时分复用的架构的控制系统,其特征在于,4条所述逻辑通道分别对应配置code_group状态锁存器0、code_group状态锁存器1、code_group状态锁存器2、code_group状态锁存器3;
所述数据处理模块还用于:
第1n个时钟周期内,将ordered_set状态机中对应逻辑通道0的数据、当前ordered_set状态机的结果,以及code_group状态锁存器0的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器0;
第2n个时钟周期内,将ordered_set状态机中对应逻辑通道1的数据、当前ordered_set状态机的结果,以及code_group状态锁存器1的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器1;
第3n个时钟周期内,将ordered_set状态机中对应逻辑通道2的数据、当前ordered_set状态机的结果,以及code_group状态锁存器2的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器2;
第4n个时钟周期内,将ordered_set状态机中对应逻辑通道3的数据、当前ordered_set状态机的结果,以及code_group状态锁存器3的当前状态写到code_group状态机;
之后将当前code_group状态机的结果锁存到code_group状态锁存器3。
10.根据权利要求9所述的QSGMIIPCS发送方向状态机时分复用的架构的控制系统,其特征在于,
所述数据处理模块还用于:
将在第1n个时钟周期内code_group状态机处理后的数据替换为系统预设代码后,进行编码输出。
CN201510672692.9A 2015-10-15 2015-10-15 Qsgmii pcs发送方向状态机时分复用的架构、其控制方法及系统 Active CN105391508B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510672692.9A CN105391508B (zh) 2015-10-15 2015-10-15 Qsgmii pcs发送方向状态机时分复用的架构、其控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510672692.9A CN105391508B (zh) 2015-10-15 2015-10-15 Qsgmii pcs发送方向状态机时分复用的架构、其控制方法及系统

Publications (2)

Publication Number Publication Date
CN105391508A true CN105391508A (zh) 2016-03-09
CN105391508B CN105391508B (zh) 2018-01-05

Family

ID=55423376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510672692.9A Active CN105391508B (zh) 2015-10-15 2015-10-15 Qsgmii pcs发送方向状态机时分复用的架构、其控制方法及系统

Country Status (1)

Country Link
CN (1) CN105391508B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106375077A (zh) * 2016-08-29 2017-02-01 宁波三星医疗电气股份有限公司 Si4463芯片采用gpio模式实现数据传输的方法
CN108111449A (zh) * 2016-11-25 2018-06-01 深圳市中兴微电子技术有限公司 一种数据处理方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2886921Y (zh) * 2005-12-06 2007-04-04 东南大学 多通道无失配时钟控制装置
CN2896368Y (zh) * 2006-04-17 2007-05-02 四川大学 基于PXI/CompactPCI总线的多通道数据同步采集卡
CN102255683A (zh) * 2011-07-08 2011-11-23 电子科技大学 一种用于高速光时分复用系统的时钟恢复方法
CN103472438A (zh) * 2013-09-24 2013-12-25 上海无线电设备研究所 多通道信号脉压时分复用装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2886921Y (zh) * 2005-12-06 2007-04-04 东南大学 多通道无失配时钟控制装置
CN2896368Y (zh) * 2006-04-17 2007-05-02 四川大学 基于PXI/CompactPCI总线的多通道数据同步采集卡
CN102255683A (zh) * 2011-07-08 2011-11-23 电子科技大学 一种用于高速光时分复用系统的时钟恢复方法
CN103472438A (zh) * 2013-09-24 2013-12-25 上海无线电设备研究所 多通道信号脉压时分复用装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106375077A (zh) * 2016-08-29 2017-02-01 宁波三星医疗电气股份有限公司 Si4463芯片采用gpio模式实现数据传输的方法
CN108111449A (zh) * 2016-11-25 2018-06-01 深圳市中兴微电子技术有限公司 一种数据处理方法和装置
CN108111449B (zh) * 2016-11-25 2020-12-29 深圳市中兴微电子技术有限公司 一种数据处理方法和装置

Also Published As

Publication number Publication date
CN105391508B (zh) 2018-01-05

Similar Documents

Publication Publication Date Title
US11444798B2 (en) Methods and apparatus for configuring a flex ethernet node
CN103828305B (zh) 用于参数化自动化系统或控制系统的现场设备的系统和方法
CN103141066B (zh) 发送电路、接收电路、发送方法、接收方法、通信系统及其通信方法
CA2924089A1 (en) Data transmission method and apparatus
CN109495519B (zh) 物理编码电路及高速接口协议交换芯片
CN105009540A (zh) 一种加扰方法及加扰装置
CN103530245B (zh) 一种基于fpga的srio互联交换装置
CN106717111A (zh) 接收cpri数据流和接收以太网帧的方法、装置及系统
CN106656872A (zh) 混合物理编码子层以及数据发送、接收方法
US9019959B2 (en) Node, switch, and system
CN112231267B (zh) 一种国产化的vpx架构b码对时方法及装置
CN104221290A (zh) 可配置的多模式介质独立接口
CN110083570A (zh) 一种多芯片串联自动地址编码系统及方法
EP2579513B1 (en) Node device, integrated circuit and control method in ring transmission system
CN105391508A (zh) Qsgmii pcs发送方向状态机时分复用的架构、其控制方法及系统
CN105243039A (zh) 一种串口通信系统及方法
CN105024948A (zh) 一种基于芯片的数据传输方法、装置及系统
CN208227066U (zh) 一种模块化智能变电站网络交换机
CN104052588A (zh) 用于为利用fec编码器的系统实现按ieee 1588的精确时间戳的方法
CN105516288A (zh) 采用单根Serdes扩展物理接口的架构、其控制方法及控制系统
US11947475B2 (en) Synchronized processing of process data and delayed transmission
CN106713149A (zh) 路由器的子卡和线卡板
CN110752878A (zh) 一种数据处理方法及装置
CN104917704A (zh) 同一架构中复用10GBase-R PCS和40GBase-R PCS的方法及系统
WO2018196833A1 (zh) 报文发送方法和报文接收方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 215000 unit 13 / 16, 4th floor, building B, No.5 Xinghan street, Suzhou Industrial Park, Jiangsu Province

Patentee after: Suzhou Shengke Communication Co.,Ltd.

Address before: Xinghan Street Industrial Park of Suzhou city in Jiangsu province 215021 B No. 5 Building 4 floor 13/16 unit

Patentee before: CENTEC NETWORKS (SU ZHOU) Co.,Ltd.