CN103106177A - 多核网络处理器的片上互联结构及其方法 - Google Patents

多核网络处理器的片上互联结构及其方法 Download PDF

Info

Publication number
CN103106177A
CN103106177A CN2013100360178A CN201310036017A CN103106177A CN 103106177 A CN103106177 A CN 103106177A CN 2013100360178 A CN2013100360178 A CN 2013100360178A CN 201310036017 A CN201310036017 A CN 201310036017A CN 103106177 A CN103106177 A CN 103106177A
Authority
CN
China
Prior art keywords
fifo
bus
control module
moderator
write
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
CN2013100360178A
Other languages
English (en)
Other versions
CN103106177B (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.)
Shaanxi Semiconductor Pilot Technology Center Co Ltd
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN201310036017.8A priority Critical patent/CN103106177B/zh
Publication of CN103106177A publication Critical patent/CN103106177A/zh
Application granted granted Critical
Publication of CN103106177B publication Critical patent/CN103106177B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

本发明公开一种多核网络处理器片上互联结构及其方法,本发明结构中的快速互联模块、处理单元、快速共享资源之间通过读数据标识总线、写标识总线、写数据总线、命令总线连接。慢速互联模块、处理单元、慢速共享资源之间通过读数据标识总线、写标识总线、写数据总线、命令总线连接。本发明的方法包括:发送命令;选择命令;接收命令;判断命令是否为读命令;发送读数据标识信息;选择读数据标识信息;接收读数据标识信息;发送写标识信息;选择写标识信息;接收写标识信息;发送写数据信息;选择写数据信息;接收写数据信息。本发明提出了一种可用于多核网络处理器的结构简单、较高带宽、良好的并行性、可扩展性以及公平性的互联结构及其方法。

Description

多核网络处理器的片上互联结构及其方法
技术领域
本发明涉及网络装置领域,更进一步涉及多核网络处理器的片上互联结构及其方法。本发明可以使多核网络处理器在结构相对简单的同时提供较高的带宽,具有良好的并行性、可扩展性以及公平性。
背景技术
主流网络处理器一般包括若干个多线程包处理器(PPE),一个协处理器,动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)控制单元,加解密单元,网络数据流接口单元等。协处理器在***启动时对网络处理器各单元进行配置,多个包处理器在网络处理器内部并行运行,通过预先编制好的微码来控制处理流程。存储单元(如DRAM和SRAM单元)、加解密单元、网络数据流接口单元等数据存储和处理单元均属于共享资源。提供共享资源及其用户之间进行数据和命令控制信息相互通信的结构称为互联,亦称总线,它是保证网络处理器高性能的决定性因素。
范勇所著“多处理器片上***高性能总线互联关键技术研究”的论文中,公开了一种使用基于共享总线的互联结构。该结构由于在任一时间节点上仅允许单独的一组数据在总线上传输,因此该结构存在的不足是,缺乏扩展性以及通信带宽较低。
朱艳所著“多核CPU中交叉开关总线的设计”的论文中,公开了一种基于交叉开关的互联结构。该结构实现了处理单元和共享资源间点对点的连接,通信带宽并不会受到总线竞争的限制。但是该互联结构存在的不足是,结构复杂、在成本、面积方面要付出很大的代价。
发明内容
本发明的目的在于克服上述现有技术的不足,提出了一种结构相对简单的同时可以提供较高带宽,并且具有良好的并行性、可扩展性以及公平性的互联结构及其方法。
本发明的多核网络处理器的片上互联结构,快速互联模块与处理单元(1)、处理单元(2)、SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元之间用读数据标识总线、写标识总线、写数据总线、命令总线连接;慢速互联模块与处理单元(1)、处理单元(2)、DRAM控制单元(1)、DRAM控制单元(2)用读数据标识总线、写标识总线、写数据总线、命令总线连接。
处理单元(1)和处理单元(2),用于发送命令信息、写数据信息,接收读数据标识信息、写标识信息。
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元,用于快速地接收命令信息、写数据信息,发送读数据标识信息、写标识信息。
DRAM控制单元(1)、DRAM控制单元(2),用于慢速地接收命令信息、写数据信息,发送读数据标识信息、写标识信息。
快速互联模块,用于将处理单元(1)、处理单元(2)的命令信息、写数据信息发送到SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元,将SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元的读数据标识信息、写标识信息发送到处理单元(1)、处理单元(2)。
慢速互联模块,用于将处理单元(1)、处理单元(2)的命令信息、写数据信息发送到DRAM控制单元(1)、DRAM控制单元(2),将DRAM控制单元(1)、DRAM控制单元(2)的读数据标识信息、写标识信息发送到处理单元(1)、处理单元(2)。
本发明多核网络处理器的片上互联方法,包括如下步骤:
(1)发送命令
处理单元(1)与处理单元(2)发出数据请求命令。
(2)选择命令
2a)命令单元(1)与命令单元(2)中的仲裁器对命令总线上的命令信息进行译码,使能FIFO写总线,将命令信息写入先入先出队列FIFO。
2b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将命令信息读出先入先出队列FIFO。
2c)多路选择器依据仲裁器发出的选择信号,选择相应的通路。
(3)接收命令
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)通过对命令总线上的命令信息进行译码后,分别接收发往本单元的命令。
(4)判断命令是否为读命令
4a)SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)对接收的命令进行译码,获得处理单元发送的命令类型。
4b)判断处理单元发送的命令类型是否为读命令,如果是,则执行步骤(5);如果否,则执行步骤(8)。
(5)发送读数据标识信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)发送读数据标识信息。
(6)选择读数据标识信息
6a)读数据标识单元(1)、读数据标识单元(2)中的仲裁器对读数据标识总线中的读数据标识信息进行译码,使能FIFO写总线,将读数据标识信息写入先入先出队列FIFO。
6b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将读数据标识信息读出先入先出队列FIFO。
6c)多路选择器依据仲裁器发出的选择信号选择相应的通路。
(7)接收读数据标识信息
处理单元(1)、处理单元(2)通过对读数据标识总线上的读数据标识信息进行译码后,分别接收发往本单元的读数据标识信息。
(8)发送写标识信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)发送读数据标识信息。
(9)选择写标识信息
9a)写标识单元(1)、写标识单元(2)中的仲裁器对写标识总线中的写标识信息进行译码,使能FIFO写总线,将写标识信息写入先入先出队列FIFO。
9b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将写标识信息读出先入先出队列FIFO。
9c)多路选择器依据仲裁器发出的选择信号,选择相应的通路。
(10)接收写标识信息
处理单元(1)、处理单元(2)通过对写标识总线上的写标识信息进行译码后,分别接收发往本单元的写标识信息。
(11)发送写数据信息
处理单元(1)、处理单元(2)分别通过对接收的写标识信息进行译码后,发送写数据信息。
(12)选择写数据信息
写数据单元(1)、写数据单元(2)、写数据单元(3)中的译码器依据写标识单元(1)、写标识单元(2)、写标识(3)中仲裁器发出的数据选择信号,选择相应通路。
(13)接收写数据信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)通过对写数据总线上的写数据信息进行译码后,分别接收发往本单元的写数据信息。
本发明与现有技术相比有以下特点:
第一,由于本发明的***中每个共享资源都有一组命令总线、读数据标识总线、写标识总线、写数据总线,克服了现有技术共享总线结构所带来扩展性差的缺点,使得本发明共享资源的数量可以根据需要进行扩展。
第二,由于本发明的***采用的互联结构使得各处理单元可以并行工作,克服了现有技术通信带宽比较低的缺点,从而使得本发明通信带宽比较高。
第三,由于本发明的***将片上互联结构分为快速互联结构和慢速互联结构,克服了现有技术处理单元和共享资源之间点对点连接带来的结构复杂、面积大、成本高的缺点,使得本发明片上互联结构相对简单,面积和成本控制比较理想。
第四,由于本发明的方法保证了命令选择和数据选择的公平性,使得本发明处理单元和共享资源可以充分发挥性能。
附图说明
图1是本发明结构的方框图;
图2是本发明结构中快速互联模块的方框图;
图3是本发明结构中慢速互联模块的方框图;
图4是本发明方法的流程图。
具体实施方式
下面结合附图对本发明的结构做进一步的描述。
参照附图1,本发明的结构包括处理单元(1)、处理单元(2)、SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)。由于SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元和DRAM控制单元(1)、DRAM控制单元(2)在接收数据和发送数据速度的快慢上存在差异,所以将片上互联分为快速互联模块和慢速互联模块。同时为了使片上互联结构具备良好的扩展性,处理单元(1)、处理单元(2)、SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)分别拥有一组读数据标识总线、写标识总线、写数据总线、命令总线。快速互联模块与处理单元(1)、处理单元(2)、SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元之间用读数据标识总线、写标识总线、写数据总线、命令总线连接;慢速互联模块与处理单元(1)、处理单元(2)、DRAM控制单元(1)、DRAM控制单元(2)用读数据标识总线、写标识总线、写数据总线、命令总线连接;处理单元(1)和处理单元(2),用于发送命令信息、写数据信息,接收读数据标识信息、写标识信息;SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元,用于快速地接收命令信息、写数据信息,发送读数据标识信息、写标识信息;DRAM控制单元(1)、DRAM控制单元(2),用于慢速地接收命令信息、写数据信息,发送读数据标识信息、写标识信息;快速互联模块,用于将处理单元(1)、处理单元(2)的命令信息、写数据信息发送到SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元,将SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元的读数据标识信息、写标识信息发送到处理单元(1)、处理单元(2);慢速互联模块,用于将处理单元(1)、处理单元(2)的命令信息、写数据信息发送到DRAM控制单元(1)、DRAM控制单元(2),将DRAM控制单元(1)、DRAM控制单元(2)的读数据标识信息、写标识信息发送到处理单元(1)、处理单元(2)。
参照附图2,本发明结构中的快速互联模块包括读数据标识单元(1)、读数据标识单元(2)、写标识单元(1)、写标识单元(2)、写数据单元(1)、写数据单元(1)、命令单元(1)。这样每个处理单元分别与一组读数据标识单元、写标识单元、写数据单元相对应,可以使SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元可以快速、并行地发送和接收数据信息。由于一个命令可以请求多组数据,SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元接收命令的次数远小于发送和接收数据的次数,所以快速互联模块中在处理单元(1)、处理单元(2)与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元之间只设置了一个命令单元(1)。在快速互联模块中的读数据标识单元(1)包括一个仲裁器、四个FIFO、一个多路选择器;仲裁器的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;四个FIFO的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;多路选择器的输入端通过FIFO总线与四个FIFO连接;多路选择器的输入端通过选择总线与仲裁器连接;所述的多路选择器的输出端通过读数据标识总线与处理单元(1)连接。
快速互联模块中的读数据标识单元(2)包括一个仲裁器、四个FIFO、一个多路选择器;仲裁器的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;四个FIFO的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;多路选择器的输入端通过FIFO总线与四个FIFO连接;多路选择器的输入端通过选择总线与仲裁器连接;多路选择器的输出端通过读数据标识总线与处理单元(2)连接。
快速互联模块中的写标识单元(1)包括一个仲裁器、四个FIFO、一个多路选择器;仲裁器的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;四个FIFO的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;多路选择器的输入端通过FIFO总线与四个FIFO连接;多路选择器的输入端通过选择总线与仲裁器连接;多路选择器的输出端通过写标识总线与处理单元(1)连接。
快速互联模块中的写标识单元(2)包括一个仲裁器、四个FIFO、一个多路选择器;仲裁器的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;四个FIFO的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;多路选择器的输入端通过FIFO总线与四个FIFO连接;多路选择器的输入端通过选择总线与仲裁器连接;多路选择器的输出端通过写标识总线与处理单元(2)连接。
快速互联模块中的写数据单元(1)包括一个译码器,译码器的输入端通过写数据总线与处理单元(1)连接;译码器的输入端通过数据选择总线与写标识单元(1)中的仲裁器连接;译码器的输出端通过写数据总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接。
快速互联模块中的写数据单元(2)包括一个译码器,译码器的输入端通过写数据总线与处理单元(2)连接;译码器的输入端通过数据选择总线与写标识单元(2)中的仲裁器连接;译码器的输出端通过写数据总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接。
快速互联模块中的命令单元(1)包括一个仲裁器、两个FIFO、一个多路选择器,仲裁器的输入端通过命令总线与处理单元(1)、处理单元(2)连接;仲裁器的输出端通过FIFO写总线、FIFO读总线与两个FIFO连接;两个FIFO的输入端通过命令总线与处理单元(1)、处理单元(2)连接;两个FIFO的输出端通过FIFO空状态总线与仲裁器连接;多路选择器的输入端通过FIFO总线与两个FIFO连接;多路选择器的输入端通过选择总线与仲裁器连接;多路选择器的输出端通过命令总线与DRAM控制单元(1)、DRAM控制单元(2)连接。
仲裁器,用于监测输入的总线、FIFO空状态总线,控制先入先出队列FIFO的写入和读出,发出选择信号选通多路选择器;先入先出队列FIFO,用于缓存对应的信息;多路选择器,用于选通相应的数据通路;译码器,用于选通相应的数据通路。
参照附图3,慢速互联模块中包括读数据标识单元(3)、写标识单元(3)、写数据单元(3)、命令单元(2)。由于DRAM控制单元(1)、DRAM控制单元(2)接收和发送数据速度比较慢,所以处理单元(1)、处理单元(2)与DRAM控制单元(1)、DRAM控制单元(2)之间只有一组读数据标识单元、写标识单元、写数据单元。一个命令可以请求多个数据,所以也同样只设置了一个命令单元。慢速互联模块中的读数据标识单元(3)包括一个仲裁器、两个FIFO、一个多路选择器;仲裁器的输入端通过读数据标识总线与DRAM控制单元(1)、DRAM控制单元(2)连接;仲裁器的输出端通过FIFO写总线、FIFO读总线与两个FIFO连接;两个FIFO的输入端通过读数据标识总线与DRAM控制单元(I)、DRAM控制单元(2)连接;两个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与两个FIFO连接;多路选择器的输入端通过选择总线与仲裁器连接;多路选择器的输出端通过写标识总线与处理单元(1)、处理单元(2)连接;
慢速互联模块中的写标识单元(3)包括一个仲裁器、两个FIFO、一个多路选择器;仲裁器的输入端通过写标识总线与DRAM控制单元(1)、DRAM控制单元(2)连接;仲裁器的输出端通过FIFO写总线、FIFO读总线与两个FIFO连接;两个FIFO的输入端通过写标识总线与DRAM控制单元(1)、DRAM控制单元(2)连接;两个FIFO的输出端通过FIFO空状态总线与仲裁器连接;多路选择器的输入端通过FIFO总线与两个FIFO连接;多路选择器的输入端通过选择总线与仲裁器连接;多路选择器的输出端通过写标识总线与处理单元(1)、处理单元(2)连接;
慢速互联模块的写数据单元(3)包括一个多路选择器、一个译码器;多路选择器的输入端通过写数据总线与处理单元(1)、处理单元(2)连接;多路选择器的输入端通过选择总线与写标识单元(3)中的仲裁器连接;多路选择器的输出端通过输出总线与译码器连接;译码器的输入端通过选择总线与写标识单元(3)中的仲裁器连接;译码器的输出端通过写数据总线与DRAM控制单元(1)、DRAM控制单元(2)连接;
仲裁器,用于监测输入的总线、FIFO空状态总线,控制FIFO的写入和读出,发出选择信号选通多路选择器;先入先出队列FIFO,用于缓存对应的信息;多路选择器,用于选通相应的数据通路;译码器,用于选通相应的数据通路。
参照附图4,对本发明方法的具体步骤描述如下。
步骤1.发送命令
处理单元(1)与处理单元(2)并行地发出数据请求命令,命令中包含目标单元、命令类型、数据地址等信息,可以在后面的操作中通过对命令信息的译码得到正确的操作。
步骤2.选择命令
由于每个先入先出FIFO都有相对应的处理单元,同时快速互联模块和慢速互联模块中都有命令单元,所以需要仲裁器对命令总线上的命令信息进行译码,控制命令信息的写入。仲裁器的优先级算法需要保证命令选择的公平性,优先级不断轮询。
2a)命令单元(1)与命令单元(2)中的仲裁器对命令总线上的命令信息进行译码,使能FIFO写总线,将命令信息写入先入先出队列FIFO。
2b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将命令信息读出先入先出队列FIFO。
2c)多路选择器依据仲裁器发出的选择信号,选择相应的通路。
步骤3.接收命令
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)通过对命令总线上的命令信息进行译码后,分别接收发往本单元的命令。
步骤4.判断命令是否为读命令
处理单元发来的命令有两种,一种是读命令,一种是写命令。SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)对于读命令和写命令的处理方式不同,所以需要判断命令的类型。
4a)SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)对接收的命令进行译码,获得处理单元发送的命令类型。
4b)判断处理单元发送的命令类型是否为读命令,如果是,则执行步骤(5);如果否,则执行步骤(8)。
步骤5.发送读数据标识信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)根据命令中的信息,发送读数据标识信息,读数据标识信息中包含数据和标识信息。
步骤6.选择读数据标识信息
由于每个先入先出FIFO都有相对应的单元,同时快速互联模块和慢速互联模块中都有读数据标识单元,所以需要仲裁器对读数据标识总线上的读数据标识信息进行译码,控制读数据标识信息的写入。仲裁器的优先级算法需要保证读数据标识信息选择的公平性,优先级不断轮询。
6a)读数据标识单元(1)、读数据标识单元(2)、读数据标识单元(3)中的仲裁器对读数据标识总线中的读数据标识信息进行译码,使能FIFO写总线,将读数据标识信息写入先入先出队列FIFO。
6b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将读数据标识信息读出先入先出队列FIFO。
6c)多路选择器依据仲裁器发出的选择信号选择相应的通路。
步骤7.接收读数据标识信息
处理单元(1)、处理单元(2)通过对读数据标识总线上的读数据标识信息进行译码后,分别接收发往本单元的读数据标识信息。
步骤8.发送写标识信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)发送写标识信息。
步骤9.选择写标识信息
由于每个先入先出FIFO都有相对应的单元,同时快速互联模块和慢速互联模块中都有读数据标识单元,所以需要仲裁器对命令总线上的命令信息进行译码,控制写标识信息的写入。仲裁器的优先级算法需要保证命令选择的公平性,优先级不断轮询。
第一步,写标识单元(1)、写标识单元(2)、写标识单元(3)中的仲裁器对写标识总线中的写标识信息进行译码,使能FIFO写总线,将写标识信息写入先入先出队列FIFO。
第二步,仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将写标识信息读出先入先出队列FIFO。
第三步,多路选择器依据仲裁器发出的选择信号,选择相应的通路。
步骤10.接收写标识信息
处理单元(1)、处理单元(2)通过对写标识总线上的写标识信息进行译码后,确定写标识信息的目标单元,接收发往本单元的写标识信息。
步骤11.发送写数据信息
处理单元(1)、处理单元(2)分别通过对接收的写标识信息进行译码后,得到写数据信息,发送写数据信息。
步骤12.选择写数据信息
写数据信息的选通应该同写标识信息的选通相对应。
写数据单元(1)、写数据单元(2)、写数据单元(3)中的译码器依据写标识单元(1)、写标识单元(2)、写标识(3)中仲裁器发出的数据选择信号,选择相应通路。
步骤13.接收写数据信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)通过对写数据总线上的写数据信息进行译码后,分别接收发往本单元的写数据信息。

Claims (4)

1.多核网络处理器的片上互联结构,其特征在于,快速互联模块与处理单元(1)、处理单元(2)、SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元之间用读数据标识总线、写标识总线、写数据总线、命令总线连接;慢速互联模块与处理单元(1)、处理单元(2)、DRAM控制单元(1)、DRAM控制单元(2)用读数据标识总线、写标识总线、写数据总线、命令总线连接;其中:
所述的处理单元(1)和处理单元(2),用于发送命令信息、写数据信息,接收读数据标识信息、写标识信息;
所述的SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元,用于快速地接收命令信息、写数据信息,发送读数据标识信息、写标识信息;
所述的DRAM控制单元(1)、DRAM控制单元(2),用于慢速地接收命令信息、写数据信息,发送读数据标识信息、写标识信息;
所述的快速互联模块,用于将处理单元(1)、处理单元(2)的命令信息、写数据信息发送到SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元,将SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元的读数据标识信息、写标识信息发送到处理单元(1)、处理单元(2);
所述的慢速互联模块,用于将处理单元(1)、处理单元(2)的命令信息、写数据信息发送到DRAM控制单元(1)、DRAM控制单元(2),将DRAM控制单元(1)、DRAM控制单元(2)的读数据标识信息、写标识信息发送到处理单元(1)、处理单元(2)。
2.根据权利要求1所述的多核网络处理器的片上互联结构,其特征在于,所述快速互联模块中的读数据标识单元(1)包括一个仲裁器、四个FIFO、一个多路选择器;所述仲裁器的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;所述的四个FIFO的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与四个FIFO连接;所述多路选择器的输入端通过选择总线与仲裁器连接;所述的多路选择器的输出端通过读数据标识总线与处理单元(1)连接;
所述快速互联模块中的读数据标识单元(2)包括一个仲裁器、四个FIFO、一个多路选择器;所述仲裁器的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;所述的四个FIFO的输入端通过读数据标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与四个FIFO连接;所述多路选择器的输入端通过选择总线与仲裁器连接;所述多路选择器的输出端通过读数据标识总线与处理单元(2)连接;
所述快速互联模块中的写标识单元(1)包括一个仲裁器、四个FIFO、一个多路选择器;所述仲裁器的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;所述的四个FIFO的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与四个FIFO连接;所述多路选择器的输入端通过选择总线与仲裁器连接;所述多路选择器的输出端通过写标识总线与处理单元(1)连接;
所述快速互联模块中的写标识单元(2)包括一个仲裁器、四个FIFO、一个多路选择器;所述仲裁器的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述仲裁器的输出端通过FIFO写总线、FIFO读总线与四个FIFO连接;所述的四个FIFO的输入端通过写标识总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;所述四个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与四个FIFO连接;所述多路选择器的输入端通过选择总线与仲裁器连接;所述多路选择器的输出端通过写标识总线与处理单元(2)连接;
所述快速互联模块中的写数据单元(1)包括一个译码器,所述译码器的输入端通过写数据总线与处理单元(1)连接;所述译码器的输入端通过数据选择总线与写标识单元(1)中的仲裁器连接;所述译码器的输出端通过写数据总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;
所述快速互联模块中的写数据单元(2)包括一个译码器,所述译码器的输入端通过写数据总线与处理单元(2)连接;所述译码器的输入端通过数据选择总线与写标识单元(2)中的仲裁器连接;所述译码器的输出端通过写数据总线与SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元连接;
所述的快速互联模块中的命令单元(1)包括一个仲裁器、两个FIFO、一个多路选择器,所述仲裁器的输入端通过命令总线与处理单元(1)、处理单元(2)连接;所述仲裁器的输出端通过FIFO写总线、FIFO读总线与两个FIFO连接;所述两个FIFO的输入端通过命令总线与处理单元(1)、处理单元(2)连接;所述两个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与两个FIFO连接;所述多路选择器的输入端通过选择总线与仲裁器连接;所述多路选择器的输出端通过命令总线与DRAM控制单元(1)、DRAM控制单元(2)连接;
所述的仲裁器,用于监测输入的总线、FIFO空状态总线,控制FIFO的写入和读出,发出选择信号选通多路选择器;所述的FIFO,用于缓存对应的信息;所述的多路选择器,用于选通相应的数据通路;所述的译码器,用于选通相应的数据通路。
3.根据权利要求1所述的多核网络处理器的片上互联结构,其特征在于,所述慢速互联模块中的读数据标识单元(3)包括一个仲裁器、两个FIFO、一个多路选择器;所述仲裁器的输入端通过读数据标识总线与DRAM控制单元(1)、DRAM控制单元(2)连接;所述仲裁器的输出端通过FIFO写总线、FIFO读总线与两个FIFO连接;所述的两个FIFO的输入端通过读数据标识总线与DRAM控制单元(1)、DRAM控制单元(2)连接;所述两个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与两个FIFO连接;所述多路选择器的输入端通过选择总线与仲裁器连接;所述多路选择器的输出端通过写标识总线与处理单元(1)、处理单元(2)连接;
所述慢速互联模块中的写标识单元(3)包括一个仲裁器、两个FIFO、一个多路选择器;所述仲裁器的输入端通过写标识总线与DRAM控制单元(1)、DRAM控制单元(2)连接;所述仲裁器的输出端通过FIFO写总线、FIFO读总线与两个FIFO连接;所述的两个FIFO的输入端通过写标识总线与DRAM控制单元(1)、DRAM控制单元(2)连接;所述两个FIFO的输出端通过FIFO空状态总线与仲裁器连接;所述多路选择器的输入端通过FIFO总线与两个FIFO连接;所述多路选择器的输入端通过选择总线与仲裁器连接;所述多路选择器的输出端通过写标识总线与处理单元(1)、处理单元(2)连接;
所述慢速互联模块的写数据单元(3)包括一个多路选择器、一个译码器;所述多路选择器的输入端通过写数据总线与处理单元(1)、处理单元(2)连接;所述多路选择器的输入端通过选择总线与写标识单元(3)中的仲裁器连接;所述多路选择器的输出端通过输出总线与译码器连接;所述译码器的输入端通过选择总线与写标识单元(3)中的仲裁器连接;所述译码器的输出端通过写数据总线与DRAM控制单元(1)、DRAM控制单元(2)连接;
所述的仲裁器,用于监测输入的总线、FIFO空状态总线,控制FIFO的写入和读出,发出选择信号选通多路选择器;所述的FIFO,用于缓存对应的信息;所述的多路选择器,用于选通相应的数据通路;所述的译码器,用于选通相应的数据通路。
4.多核网络处理器的片上互联方法,包括如下步骤:
(1)发送命令
处理单元(1)与处理单元(2)发出数据请求命令;
(2)选择命令
2a)命令单元(1)与命令单元(2)中的仲裁器对命令总线上的命令信息进行译码,使能FIFO写总线,将命令信息写入先入先出队列FIFO;
2b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将命令信息读出先入先出队列FIFO;
2c)多路选择器依据仲裁器发出的选择信号,选择相应的通路;
(3)接收命令
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)通过对命令总线上的命令信息进行译码后,分别接收发往本单元的命令;
(4)判断命令是否为读命令
4a)SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)对接收的命令进行译码,获得处理单元发送的命令类型;
4b)判断处理单元发送的命令类型是否为读命令,如果是,则执行步骤(5);如果否,则执行步骤(8);
(5)发送读数据标识信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)发送读数据标识信息;
(6)选择读数据标识信息
6a)读数据标识单元(1)、读数据标识单元(2)中的仲裁器对读数据标识总线中的读数据标识信息进行译码,使能FIFO写总线,将读数据标识信息写入先入先出队列FIFO;
6b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将读数据标识信息读出先入先出队列FIFO;
6c)多路选择器依据仲裁器发出的选择信号选择相应的通路;
(7)接收读数据标识信息
处理单元(1)、处理单元(2)通过对读数据标识总线上的读数据标识信息进行译码后,分别接收发往本单元的读数据标识信息;
(8)发送写标识信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)发送读数据标识信息;
(9)选择写标识信息
9a)写标识单元(1)、写标识单元(2)中的仲裁器对写标识总线中的写标识信息进行译码,使能FIFO写总线,将写标识信息写入先入先出队列FIFO;
9b)仲裁器监测FIFO空状态总线,对不为空的先入先出队列FIFO进行优先级仲裁,使能当前最高优先级先入先出队列FIFO对应的FIFO读总线,将写标识信息读出先入先出队列FIFO;
9c)多路选择器依据仲裁器发出的选择信号,选择相应的通路;
(10)接收写标识信息
处理单元(1)、处理单元(2)通过对写标识总线上的写标识信息进行译码后,分别接收发往本单元的写标识信息;
(11)发送写数据信息
处理单元(1)、处理单元(2)分别通过对接收的写标识信息进行译码后,发送写数据信息;
(12)选择写数据信息
写数据单元(1)、写数据单元(2)、写数据单元(3)中的译码器依据写标识单元(1)、写标识单元(2)、写标识(3)中仲裁器发出的数据选择信号,选择相应通路
(13)接收写数据信息
SRAM控制单元(1)、SRAM控制单元(2)、网络包I/O接口单元、加解密单元、DRAM控制单元(1)、DRAM控制单元(2)通过对写数据总线上的写数据信息进行译码后,分别接收发往本单元的写数据信息。
CN201310036017.8A 2013-01-08 2013-01-08 多核网络处理器的片上互联结构及其方法 Active CN103106177B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310036017.8A CN103106177B (zh) 2013-01-08 2013-01-08 多核网络处理器的片上互联结构及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310036017.8A CN103106177B (zh) 2013-01-08 2013-01-08 多核网络处理器的片上互联结构及其方法

Publications (2)

Publication Number Publication Date
CN103106177A true CN103106177A (zh) 2013-05-15
CN103106177B CN103106177B (zh) 2016-01-20

Family

ID=48314046

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310036017.8A Active CN103106177B (zh) 2013-01-08 2013-01-08 多核网络处理器的片上互联结构及其方法

Country Status (1)

Country Link
CN (1) CN103106177B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794100A (zh) * 2015-05-06 2015-07-22 西安电子科技大学 基于片上网络的异构多核处理***
CN109643391A (zh) * 2018-01-15 2019-04-16 深圳鲲云信息科技有限公司 流水处理接口结构、电子器件及电子装置
CN110688331A (zh) * 2018-07-05 2020-01-14 珠海全志科技股份有限公司 一种SoC芯片及读取数据的方法
WO2022222040A1 (zh) * 2021-04-20 2022-10-27 华为技术有限公司 图形处理器的缓存访问方法、图形处理器及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060253660A1 (en) * 2005-03-30 2006-11-09 Intel Corporation Method and apparatus to provide dynamic hardware signal allocation in a processor
CN101330390A (zh) * 2008-03-12 2008-12-24 武汉理工大学 基于多核网络处理器的慢速路径、快速路径及其接口设计方法
CN102662908A (zh) * 2012-04-23 2012-09-12 西安电子科技大学 对片上多核***中的高速接口进行控制的方法及***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060253660A1 (en) * 2005-03-30 2006-11-09 Intel Corporation Method and apparatus to provide dynamic hardware signal allocation in a processor
CN101330390A (zh) * 2008-03-12 2008-12-24 武汉理工大学 基于多核网络处理器的慢速路径、快速路径及其接口设计方法
CN102662908A (zh) * 2012-04-23 2012-09-12 西安电子科技大学 对片上多核***中的高速接口进行控制的方法及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘宇等: "多核网络处理器的高速数据交换控制结构", 《计算机工程》 *
朱艳: "多核CPU中交叉开关总线的设计", 《电子技术》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794100A (zh) * 2015-05-06 2015-07-22 西安电子科技大学 基于片上网络的异构多核处理***
CN104794100B (zh) * 2015-05-06 2017-06-16 西安电子科技大学 基于片上网络的异构多核处理***
CN109643391A (zh) * 2018-01-15 2019-04-16 深圳鲲云信息科技有限公司 流水处理接口结构、电子器件及电子装置
CN109643391B (zh) * 2018-01-15 2023-06-13 深圳鲲云信息科技有限公司 流水处理接口结构、电子器件及电子装置
CN110688331A (zh) * 2018-07-05 2020-01-14 珠海全志科技股份有限公司 一种SoC芯片及读取数据的方法
CN110688331B (zh) * 2018-07-05 2021-08-17 珠海全志科技股份有限公司 一种SoC芯片及读取数据的方法
WO2022222040A1 (zh) * 2021-04-20 2022-10-27 华为技术有限公司 图形处理器的缓存访问方法、图形处理器及电子设备

Also Published As

Publication number Publication date
CN103106177B (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
CN106648896B (zh) 一种Zynq芯片在异构称多处理模式下双核共享输出外设的方法
CN104572574B (zh) 基于千兆以太网视觉协议的以太网控制器ip核及方法
CN102103565B (zh) 先进高性能***总线连接装置及连接方法
CN114546913B (zh) 一种基于pcie接口的多主机之间数据高速交互的方法和装置
CN103106177B (zh) 多核网络处理器的片上互联结构及其方法
CN102841869A (zh) 一种基于fpga的多通道i2c控制器
CN101740102A (zh) 一种多通道闪存芯片阵列结构及其写入和读出方法
CN104714907B (zh) 一种pci总线转换为isa和apb总线设计方法
CN104699654A (zh) 一种基于chi片内互联总线与qpi片间互联总线互联适配***和方法
CN107562672A (zh) 一种提高矢量网络分析仪数据传输速率的***及方法
CN111221759A (zh) 一种基于dma的数据处理***及方法
CN104765701A (zh) 数据访问方法及设备
US20150081963A1 (en) Allocating a Timeslot
CN102404183B (zh) 仲裁方法和仲裁器
CN116680088B (zh) 一种针对多寄存器存储的多模块同时访问***及访问方法
CN105530153A (zh) 网络内的从设备通信方法、通信网络、主设备及从设备
CN106059927A (zh) 一种星型结构的有限级联自动重构网络路由设备及其网络
CN219574799U (zh) 一种基于amba总线的多总线桥接器及其片上***
EP2829988A1 (en) Storage apparatus, and system and method for executing access operations
US20080082708A1 (en) Token hold off for chipset communication
CN105262659A (zh) 基于fpga芯片的hdlc协议控制器
CN115687012A (zh) 一种总线监测模块、监测方法和相关设备
CN205092880U (zh) 基于fpga芯片的hdlc协议控制器
CN102984599B (zh) 基于RapidIO协议网络的视频采集传输装置及方法
CN102033808B (zh) Dsp中的数据存储方法和存储控制装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180927

Address after: No. 2 Taibai Road, Xi'an, Shaanxi Province, Shaanxi

Patentee after: Shaanxi Xi'an electronic large Assets Management Co., Ltd.

Address before: No. 2 Taibai Road, Xi'an, Shaanxi Province, Shaanxi

Patentee before: Xidian University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180930

Address after: 710065 16, 5 20 zhang84 Road, hi tech Zone, Xi'an, Shaanxi.

Patentee after: Shaanxi semiconductor pilot Technology Center Co., Ltd.

Address before: No. 2 Taibai Road, Xi'an, Shaanxi Province, Shaanxi

Patentee before: Shaanxi Xi'an electronic large Assets Management Co., Ltd.

TR01 Transfer of patent right