CN105740178B - 芯片网络***以及其形成方法 - Google Patents
芯片网络***以及其形成方法 Download PDFInfo
- Publication number
- CN105740178B CN105740178B CN201410745994.XA CN201410745994A CN105740178B CN 105740178 B CN105740178 B CN 105740178B CN 201410745994 A CN201410745994 A CN 201410745994A CN 105740178 B CN105740178 B CN 105740178B
- Authority
- CN
- China
- Prior art keywords
- data
- core
- those
- transmission
- delay
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种芯片网络***及其形成方法。芯片网络***包括多个第一核心元件、多个第二核心元件、第一核心接口处理器、仲裁器以及存储器。第一核心接口处理器依据这些第一核心元件所分别具备的延时信息来整合这些第一核心元件的各个传输数据以形成第一核心接口数据。第一核心接口数据包括多个数据封包,且每个数据封包至少包括延时权值。仲裁器这些依据这些第一核心元件的延时状态与每个数据封包中的延时权值来决定第一核心接口数据中各个封包以及这些第二核心元件的第二传输数据对存储器的存取顺序。
Description
技术领域
本发明是有关于一种集成电路的布线技术,且特别是有关于一种芯片网络***以及芯片网络的形成方法。
背景技术
基于制程的进步,使得集成电路能够整合更多硅智财(IP)元件而使其布线面积逐渐增加,导致各个硅智财元件之间在信号传递上将可能产生信号壅塞的问题。因此,如何对这些硅智财元件的信号传递进行安排,便是一大难题。目前各个芯片厂商都在思考如何有效地透过结构上的安排或是额外增添功能元件来解决上述问题,此种作法称为芯片网络(Network on a Chip;NOC)或是硅智财核心互连技术(IP core interconnecttechnology)。
芯片网络(NOC)通常采用服务品质(Quality of Service,QoS)技术来对每个硅智财(Intellectual Property,IP)元件设定优先权数值,并且依照这些优先权数值来决定硅智财元件的信号传输顺序,以可解决在集成电路(或称为芯片)中的时脉安排及信号壅塞(congestion)问题。然而,目前的芯片网络结构无法满足大部分***芯片的要求,且难以适应***芯片中硅智财元件数量的增加。因此,如何在互连服务品质(interconnect QOS)的要求下能够简易地将芯片网络技术应用于大部分的***芯片上,并可避免***芯片中的信号壅塞问题,使得***芯片能产生原有的效能,便是目前需要挑战的目标。
发明内容
本发明提供一种芯片网络***以及芯片网络的形成方法,藉由每个特殊的核心元件连接结构来提升芯片网络***中的互连服务品质,进而增进芯片网络的整体效能。
本发明的一实施例提出一种芯片网络***,其包括多个第一核心元件及多个第二核心元件、第一核心接口处理器、仲裁器以及存储器。这些第一核心元件分别具备延时信息以及延时状态。第一核心接口处理器耦接这些第一核心元件,并依据这些第一核心元件所分别具备的延时信息来整合这些第一核心元件的各个传输数据以形成第一核心接口数据,其中第一核心接口数据包括多个数据封包,且每个数据封包至少包括延时权值。仲裁器耦接第一核心接口处理器以及这些第二核心元件。存储器耦接仲裁器。所述仲裁器依据这些第一核心元件的延时状态以及每个数据封包中的延时权值来决定第一核心接口数据中各个封包以及这些第二核心元件的第二传输数据对存储器的存取顺序。
在本发明的一实施例中,所述第一核心接口处理器包括多个网络接口单元以及第一仲裁切换器。多个网络接口单元分别耦接至对应的第一核心元件,且分别将对应的第一核心元件的传输数据转换成多个数据封包,其中这些数据封包包括对应的第一核心元件的传输数据片段以及对应的第一核心元件的延时信息。第一仲裁切换器耦接这些网络接口单元以接收这些数据封包,并且依据每个数据封包中的这些第一核心元件的延时信息来作为传输优先顺序,以将这些数据封包整合为第一核心接口数据。
在本发明的一实施例中,所述第一仲裁切换器还依据这些数据封包中的指令种类及超出标准参数的其中之一或其组合来判断这些数据封包在第一核心接口数据中传输优先顺序。
在本发明的一实施例中,所述第一仲裁切换器计算各个数据封包经由第一仲裁切换器的处理所延迟的延迟时间,将各个数据封包中的延时信息减去延迟时间以成为延时权值,并将延时权值设置于各个数据封包中的标头处。
在本发明的一实施例中,第一仲裁切换器依据优先权值规则来排序具有相同延时权值的数据封包的传输优先顺序。
在本发明的一实施例中,第一仲裁切换器经由轮询方式来排序具有相同延时权值的数据封包的传输优先顺序。
在本发明的一实施例中,所述网络接口单元分别从对应的第一核心元件接收以并列处理的传输数据,将其转换为串列处理的传输数据以形成这些数据封包。所述第一仲裁切换器更包括接口整合单元。接口整合单元耦接第一仲裁切换器以及仲裁器,将串列处理的第一核心接口数据转换为并列处理的第一核心接口数据,并将第一核心接口数据传输至仲裁器。
在本发明的一实施例中,当所述网络接口单元所对应的第一核心元件所传递的传输数据尚未处理的时间即将超过延时信息所表示的延时时间的情况下,所述网络接口单元发出延迟通知信号至第一仲裁切换器,第一仲裁切换器接收延迟通知信号以将传输数据对应的这些数据封包传递至仲裁器,并将这些数据封包的传输优先顺序调整为最高优先权值。
在本发明的一实施例中,所述各个第一核心元件是视频处理引擎、显示处理引擎、绘图处理引擎及直接存储器访问模组中的其中之一或其组合。所述各个第二核心元件是数字信号处理器及地址映射单元中的其中之一或其组合。
在本发明的一实施例中,所述存储器是动态随机存取存储器及静态随机存取存储器其中之一。
在本发明的一实施例中,所述芯片网络***更包括中央处理单元以及低速数据存储元件。中央处理单元耦接至这些第二核心元件中的地址映射单元。低速数据存储元件耦接地址映射单元,其中中央处理单元透过地址映射单元以对存储器或低速数据存储元件进行数据存取。
在本发明的一实施例中,所述低速数据存储元件是输入输出设备及寄存器的其中之一。
在本发明的一实施例中,所述仲裁器还依据存储器的存储页面、这些数据封包中的指令种类、及存储器的种类的其中之一或其组合来决定第一核心接口数据中各个封包以及这些第二核心元件对存储器的存取顺序。
本发明的一实施例提出一种芯片网络的形成方法,所述方法包括:将多个核心元件区分为多个第一核心元件及多个第二核心元件,其中这些第一核心元件分别具备延时信息以及延时状态;依据这些第一核心元件所分别具备的延时信息来整合这些第一核心元件的各个传输数据以形成第一核心接口数据,其中第一核心接口数据包括多个数据封包,且每个数据封包至少包括一延时权值;以及依据这些第一核心元件的延时状态以及每个数据封包中的延时权值来决定第一核心接口数据中各个封包以及这些第二核心元件的第二传输数据对存储器的存取顺序。
在本发明的一实施例中,所述整合这些第一核心元件的各个传输数据以形成第一核心接口数据的步骤包括:分别将对应的第一核心元件的传输数据转换成多个数据封包,其中这些数据封包包括对应的第一核心元件的传输数据片段以及对应的第一核心元件的延时信息;以及依据每个数据封包中的这些第一核心元件的延时信息来作为传输优先顺序,以将这些数据封包整合为第一核心接口数据。
在本发明的一实施例中,所述整合这些第一核心元件的各个传输数据以形成第一核心接口数据的步骤更包括:依据这些数据封包中的指令种类及超出标准参数的其中之一或其组合来判断这些数据封包在第一核心接口数据中传输优先顺序。
在本发明的一实施例中,所述整合这些第一核心元件的各个传输数据以形成第一核心接口数据的步骤更包括:计算各个数据封包经由第一仲裁切换器的处理所延迟的延迟时间,将各个数据封包中的一延时信息减去延迟时间以成为延时权值,并将延时权值设置于各个数据封包中的标头处。
在本发明的一实施例中,所述方法更包括依据优先权值规则来排序具有相同延时权值的数据封包的传输优先顺序。
在本发明的一实施例中,所述方法更包括经由轮询方式来排序具有相同延时权值的数据封包的传输优先顺序。
在本发明的一实施例中,所述整合这些第一核心元件的各个传输数据以形成第一核心接口数据的步骤更包括:将以并列处理的传输数据转换为串列处理的传输数据以形成这些数据封包;以及将串列处理的第一核心接口数据转换为并列处理的第一核心接口数据,并将第一核心接口数据传输至仲裁器。
在本发明的一实施例中,所述整合这些第一核心元件的各个传输数据以形成第一核心接口数据的步骤更包括:当这些第一核心元件所传递的传输数据尚未处理的时间即将超过延时信息所表示的延时时间的情况下,将传输数据对应的这些数据封包传递至仲裁器,并将这些数据封包的传输优先顺序调整为最高优先权值。
基于上述,本发明实施例所述的芯片网络***及其形成方式藉由将核心元件区分为两个种类,第一种类的核心元件需透过核心接口处理器以及每个核心元件对应的延时信息来整合这些核心元件的传输数据。相对地,第二种类的核心元件所传输的传输数据则不具备延时信息。仲裁器依据所知的参数及优先权数值来进行对第一种类的核心元件经整合后的数据以及第二种类的核心元件的数据进行排序,以使存储器能够顺利地依照仲裁器所提供的数据来依序地处理指令。如此一来,此种芯片网络***便可有效地藉由每个硅智财元件的延时时间来增进芯片网络***中各个核心元件的互连服务品质,并可避免芯片网络***中的信号壅塞问题,进而增进芯片网络***的效能。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。
附图说明
图1是根据本发明一实施例所绘示的芯片网络***的示意图。
图2是根据本发明一实施例所绘示的图1中的芯片网络***的形成方法的流程图。
图3是根据本发明的一实施例所绘示的第一核心接口处理器的示意图。
图4是根据本发明的一实施例所绘示的芯片网络***的示意图。
图5是根据本发明的一实施例所绘示的第一核心元件的缓冲器的示意图。
图6是根据本发明的一实施例所绘示的网络接口单元与第一仲裁切换器之间的传输的示意图。
附图标记说明
10:芯片网络***
100:第一核心接口处理器
110:仲裁器
120:存储器
131、132、133、134:第一核心元件
141、142:第二核心元件
S201、S203、S205:步骤
101、102、103、104:网络接口单元
301、302、303、304、311、312、313、314、401、402、403、404、405、406、407、422、423:连结通道
105:第一仲裁切换器
106:接口整合单元
150:中央处理单元
160:低速数据存储元件
500:缓冲器
1、2、3、4、5、6、7、8:缓冲器页面
600:数据封包
601:标头
602:标尾
603:传输数据
610:延时信息(延时权值)
具体实施方式
图1是根据本发明一实施例所绘示的芯片网络***的示意图。请参照图1,芯片网络***10包括多个第一核心元件(First core elements)(如图1所绘示的第一核心元件131、132、133、134)、多个第二核心元件(Second core elements)(如图1所绘示的第二核心元件141、142)、第一核心接口处理器(First core interface processor)100、仲裁器(Arbitrator)110以及存储器(Memory element)120。第一核心元件131、132、133、134与第一核心接口处理器100透过总线(Bus)接口或是类似的连接接口来建立连接并传输数据。第一核心接口处理器100与仲裁器110之间透过总线接口或是其他适当的连接接口来建立连接。第二核心元件141、142耦接仲裁器110。然而,于部分实施例中,第二核心元件141、142亦可透过总线接口等连接接口来与仲裁器110建立连接,本发明不受限于此。仲裁器110耦接存储器120。
在本实施例中,为了芯片网络的设计需要,将会把核心元件区分为与第一核心接口处理器100连结的第一核心元件131、132、133、134以及与仲裁器110连结第二核心元件141、142。第一核心元件、第二核心元件可以是具有不同功能的硅智财元件的其中之一或其组合。举例来说,第一核心元件131可以为视频处理引擎(Video Engine,VE);第一核心元件132可以为显示处理引擎(Display Engine,DE);第一核心元件133可以为图形处理引擎(Graphics Engine,GE);第一核心元件134可以为直接存储器访问(Direct MemoryAccess,DMA)模组控制器。第二核心元件141可以是数字信号处理器(DSP:digital signalprocessor);第二核心元件142可以为地址映射单元(Address mapping unit,AMU)。然而,本发明实施例不限制核心元件的种类。例如,厂商可以根据需求来自行设计划分为第一核心元件、第二核心元件的硅智财元件。于本实施例中,由于某些重要的核心元件(例如,数字信号处理器或是地址映射单元)经常需要较高的优先权数值来使其指令能够尽早进行,便可将这些重要的核心元件设定为版发明实施例的第二核心元件,其他的核心元件则可归类为第一核心元件。有关于芯片网络***10中其他元件的说明会在下文配合图3以及图4作详细的说明。
图2是根据本发明一实施例所绘示的图1中的芯片网络***的形成方法的流程图。以下配合图1与图2来说明本发明所提供的芯片网络***、其形成方法以及所使用的服务品质(QoS)技术的概念。
请同时参照图1与图2,在此芯片网络***10中会将多个核心元件区分为多个第一核心元件131、132、133、134及多个第二核心元件141、142,其中这些第一核心元件131、132、133、134分别具备延时信息(Latency information)以及延时状态(Latency status)(步骤S201)。每个第一核心元件会传输数据至第一核心接口处理器100。第一核心接口处理器100会依据这些第一核心元件131、132、133、134所分别具备的延时信息来整合这些第一核心元件131、132、133、134的各个传输数据以形成第一核心接口数据(First core interfacedata)。第一核心接口数据包括多个数据封包(data packets),且每个数据封包至少包括延时权值(Latency value)(步骤S203)。第一核心接口处理器100会将第一核心接口数据传送至仲裁器110,并且第二核心元件141、142也会分别传送数据(亦称第二传输数据)至仲裁器110。仲裁器110会依据这些第一核心元件的延时状态以及每个数据封包中的延时权值来决定第一核心接口数据中各个封包以及这些第二核心元件的第二传输数据对存储器120的存取顺序(步骤S205)。换言之,仲裁器110会判断所接收到的第一核心接口数据与第二传输数据的传输优先顺序(transactionpriority)(亦称为优先权值),进而根据所判定之传输优先顺序来排序第一核心接口数据与第二传输数据对于存储器120的存取顺序。藉此,本发明实施例所提供的芯片网络***可有效地提升于芯片网络***中每个元件之间的数据传输效率。
图3是根据本发明的一实施例所绘示的第一核心接口处理器的示意图。请参照图1与图3,第一核心接口处理器100包括多个网络接口单元(Network interface unit,NIU)101、102、103、104、第一仲裁切换器105与接口整合单元106。网络接口单元101、102、103、104电性连接至第一仲裁切换器105(网络接口单元101、102、103、104分别经由图4所绘示的连结通道401、402、403、404与其对应的第一核心元件电性连接)。第一仲裁切换器105电性连接至接口整合单元106。
网络接口单元101、102、103、104例如是符合高阶可扩展接口(advancedextensible interface,AXI)协定的连接接口单元(connection interface unit),但本发明实施例不限制连接接口单元的种类。以下以网络接口单元101作为代表来进行说明网络接口单元的功能。在其他实施例中,网络接口单元101可为符合其他适用协定的连接接口单元,或是厂商可依据其需求来设计网络接口单元101的实体结构以及其所使用的连结协定。网络接口单元101的主要功能是将从第一核心元件131传输至网络接口单元101的并列数据(parallel data)(经并列处理的传输数据)转换成串列数据(serial data)(经串列处理的传输数据),并且此串列数据包括多个数据封包(data packet),其中这些数据封包是经由将所接收的串列数据经由编码而成为封包的形式,本发明实施例并不限制并串列数据以及封包编码的转换方法。值得一提的是,并列数据中会具有对应第一核心元件131的延时信息(Latency information)。此延时信息指示其所对应的第一核心元件在发生溢位(overflow/underflow)状态之前所能容忍的循环时间(torrent cycle time)长度。举例来说,若对应第一核心元件131的延时信息为256时,代表第一核心元件131会在等待256个循环时间(cycle time)之后发生溢位。在下文中会配合图5详述第一核心元件计算其延时信息的方法。
网络接口单元101会将这些数据封包传输至第一仲裁切换器105。每个网络接口单元与第一仲裁切换器105之间的所设置的连结通道(channel)的数量在本实施例中为2个,但不限于此。例如,在其他实施例中,厂商可以根据其需求来设计每个网络接口单元与第一仲裁切换器105之间的连结通道数量为多于2个或是少于2个。值得一提的是,在本实施例中,网络接口单元101会透过与第一仲裁切换器105之间的一个连结通道来传输数据,如图3中的连结通道301所示。此外,网络接口单元101还会透过与第一仲裁切换器105之间的另一个连结通道来传输延迟通知信号,如图3中的连结通道311所示。以此类推,网络接口单元102、103、104分别透过连结通道302、303、304传输数据封包至第一仲裁切换器105,并且分别透过连结通道312、313、314传输延迟通知信号至第一仲裁切换器105。
在本实施例中,所述延迟通知信号(Lantency_Out Signal)用以指示其所对应的网络接口单元所传输的数据封包需为最高的传输优先顺序。亦即,当第一仲裁切换器105接收到来自网络接口单元的延迟通知信号时,第一仲裁切换器105会将所接收对应此网络接口单元的数据封包的传输优先顺序判定为最高,并会马上处理此延迟通知信号所对应的网络接口单元所发送的数据封包。所谓「最高的传输优先顺序」表示此传输数据需要最优先处理。具体来说,当所述网络接口单元(例如,网络接口单元101)所对应的第一核心元件(例如,第一核心元件131)所传递的传输数据尚未处理的时间即将超过延时信息所表示的延时时间的情况下,网络接口单元101会发出延迟通知信号至第一仲裁切换器105,以获得最高的传输优先顺序。
在本实施例中,发出延迟通知信号的方式是第一仲裁切换器105指示网络接口单元101及接口整合单元106将经由连结通道311、312、313、314与连结通道415传送的延时状态(Latency status)信号的电位拉高。若第一仲裁切换器105辨识到延时状态信号的电位为高,即表示第一仲裁切换器105接收到对应的网络接口单元所发出的延迟通知信号。相似地,若仲裁器110辨识到延时状态信号的电位为高,即表示仲裁器110接收到接口整合单元106所发出的延迟通知信号。
也就是说,第一仲裁切换器105(或仲裁器110)可依据对应每个第一核心元件的延时状态是否为高电位来判断是否将其传输优先顺序设定为最高。例如,当对应第一核心元件131的延时状态的电位为高时,即表示对应第一核心元件131的数据封包需要最高的传输优先顺序。换言之,当第一仲裁切换器105接收到网络接口单元101所发出的延迟通知信号时,第一仲裁切换器105会将对应网络接口单元101的数据封包的传输优先顺序设定为最高(即,将对应网络接口单元101的数据封包的传输优先顺序调整为最高优先权值),并将此数据封包传递至接口整合单元106。接口整合单元106再将此数据封包转换成并列数据(对数据封包进行解码)并且传送至仲裁器110。与此同时,接口整合单元106也会发出延时通知信号至仲裁器110。值得一提的是,在上述的例子中,当优先处理完对应第一核心元件131的数据封包之后或是在预定条件达成之后,便会将第一核心元件的延时状态信号的电位拉低(Low),以避免延时状态信号一直维持高准位。
在本实施例中,第一仲裁切换器105会先判断是否接收到来自网络接口单元的延迟通知信号来决定接收到的数据封包的传输优先顺序。除此之外,当没有接收到任何延迟通知信号时,第一仲裁切换器105用以依据所接收的数据封包中的延时信息(或是延时权值)来作为传输优先顺序,以将所接收的这些数据封包整合为第一核心接口数据并传输至接口整合单元106,但本发明不限于此。例如,在其他实施例中,第一仲裁切换器105还可依据这些数据封包中的指令种类(例如,在一般情况下,读取指令会优先于写入指令)及超出标准参数(out-standing number)的其中之一或其组合来判断这些数据封包在第一核心接口数据中的传输优先顺序,且不限于这些其他的判断因素。值得一提的是,在另一实施例中,若有多个网络接口单元同时发出延迟通知信号,第一仲裁切换器105会依据这些网络接口单元所发送的数据封包中的延时信息来作为传输优先顺序的判断依据。应注意的是,具有较低延时信息的数据封包,其传输优先顺序会较高,并且此较高传输优先顺序的数据封包会先被处理。
此外,第一仲裁切换器105中还具有延时信息暂存器,其用以暂存对应每个第一核心元件的延时信息(或延时权值)或/及计数并储存处理每笔数据封包所耗费的时间(循环时间),但本发明不限于此。例如,延时信息暂存器可以是位于第一仲裁切换器105之外的实体电路元件,或是延时信息暂存器可以是以软体/轫体方式实行的延时信息暂存模组,其具有暂存对应每个第一核心元件的延时信息(或延时权值)或/及计数并储存处理每笔数据封包所耗费的时间(循环时间)的功能。
在本实施例中,第一仲裁切换器105还用以计算来自对应的第一核心元件的数据封包的延时权值(Latency value),以使第一仲裁切换器105可依据每个数据封包的延时权值来排序每个数据封包的传输优先顺序。相似于上述对于延时信息的描述,具有较低的延时权值的数据封包会具有较高的传输优先顺序,而较高传输优先顺序的数据封包会被优先处理,即,较低的延时权值的数据封包会较早被整合为第一核心接口数据并传输至接口整合单元106。值得一提的是,若数据封包的延时权值低于预定延迟通知阈值时,第一仲裁切换器105会指示网络接口单元101及接口整合单元106会发出延迟通知信号至第一仲裁切换器105及仲裁器110,以使对应此延迟通知信号的数据封包获得最高的传输优先顺序。有关计算每个数据封包的延时权值的方法会在下文中配合图6详加描述。
在本实施例中,第一核心接口处理器100具有1个第一仲裁切换器105,但本发明不限于此。例如,在其他实施例中,第一核心接口处理器100可具有1个以上的第一仲裁切换器,并且厂商可自行设计这些第一仲裁切换器之间的连接方式以及这些第一仲裁切换器与网络接口单元或接口整合单元的连接方式。此外,第一仲裁切换器105是负责管理从多个网络接口单元传输至1个接口整合单元的数据封包的传输优先顺序。
在本实施例中,第一核心接口处理器100透过接口整合单元106电性连接至仲裁器110。接口整合单元106是类似于上述网络接口单元的连结接口单元,其用以将串列处理的第一核心接口数据转换为并列处理的第一核心接口数据(对数据封包进行封包解码),并将第一核心接口数据传输至仲裁器110。相对地,接口整合单元106还可用以将所接收来自于仲裁器110的并列数据转换成串列处理的第一核心接口数据(对所接收的数据进行封包编码),并传送至第一仲裁切换器105。
图4是根据本发明的一实施例所绘示的芯片网络***的示意图。请参照图4,图4与图1的芯片网络***10的不同之处在于图4的芯片网络***10还包括中央处理单元150以及低速数据存储元件160。中央处理单元150电性连接至第二核心元件142(亦称地址映射单元,AMU)。低速数据存储元件160电性连接至地址映射单元142。中央处理单元150透过地址映射单元142以对存储器120或低速数据存储元件160进行数据存取。值得一提的是,中央处理单元150透过第二核心元件142所传输的低速数据(例如,一般用户数据、媒体数据,或其他不需要快速传送至存储器120处理的数据)会经由连结通道422传送至低速数据存储元件160。相对地,中央处理单元150透过第二核心元件142所传输的高速数据(例如,一般用户数据、媒体数据,或其他不需要快速传送至存储器120处理的数据)会经由连结通道407,在不经由作任何处理(例如,不经过封包解码及编码操作,或不经过第一核心接口处理器100的运作)的状态下直接传送至仲裁器110。仲裁器110可将此高速数据直接写入存储器120。相似于中央处理单元150传送数据的方式,第二核心元件141(例如,数字信号处理器)也可直接传输数据至仲裁器110。
仲裁器110的功能与第一仲裁切换器105类似,其用以根据判断经由连结通道405、406、407所接收到的数据的传输优先顺序,进而决定这些数据经由连结通道423对于存储器120的存取顺序。值得一提的是,第一仲裁切换器105会将所接收的延迟通知信号传送出去(不阻挡延迟通知信号),但仲裁器110会阻挡所接收到的延迟通知信号。举例来说,当网络接口单元101发送延迟通知信号至第一仲裁切换器105时,第一仲裁切换器105会将对应第一核心元件131的数据封包(第一核心接口数据)透过接口整合单元106经由连结通道405传送至仲裁器110,并且所述延迟通知信号也会经由连结通道415传送至仲裁器110。当仲裁器110接收到此延迟通知信号时,仲裁器110会将此第一核心接口数据的传输优先顺序设定为最高。
除此之外,在其他实施例中,仲裁器还依据指令种类(例如,一般情况下,读取指令会优先于写入指令)、页面击中参数、读取击中参数或写入击中参数、存储器的存储页面及存储器的种类的其中之一或其组合来判断这些数据封包在第一核心接口数据中的传输优先顺序,进而决定第一核心接口数据中各个封包以及这些第二核心元件对存储器的存取顺序。应提醒的是,本发明并不限制这些其他的判断因素。
存储器120是动态随机存取存储器及静态随机存取存储器其中之一。举例来说,存储器120可用以暂存来自于中央处理单元150、第一核心元件131-134、第二核心元件141-142的数据与指令,或者存储器120亦可暂存来自于低速数据存储元件160的数据。
中央处理单元150为具备运算能力的硬件(例如芯片组、处理器等)。在本范例实施例中,处理单元101,例如是中央处理单元(Central Processing Unit,CPU)、微处理器(micro-processor)、或是其他可编程的处理单元(Microprocessor)、数字信号处理器(Digital Signal Processor,DSP)、可编程控制器、专用集成电路(Application SpecificIntegrated Circuits,ASIC)、可编程逻辑装置(Programmable Logic Device,PLD)或其他类似装置。
低速数据存储元件160例如是输入输出设备或寄存器,其用以储存低速数据。举例来说,低速数据存储元件160可为鼠标、键盘、扫描器、数字相机、数字板、麦克风、触控板、触控面板等输入设备,其用以让使用者输入数据或是经由数据输入设备来控制所使用者所欲运作的作业***;低速数据存储元件160亦可是屏幕(其用以接收显示画面的数据来显示影像)、喇叭(其可用以接收音频数据来发出音效)等输出设备;低速数据存储元件160亦可以是任何型态的硬盘驱动器(hard disk drive,HDD)或非挥发性记忆体储存装置,本案不以此为限。
图5是根据本发明的一实施例所绘示的第一核心元件的缓冲器的示意图。图6是根据本发明的一实施例所绘示的网络接口单元与第一仲裁切换器之间的传输的示意图。以下配合图5与图6来说明计算延时信息与延时权值的方法。
请参照图5,在本实施例中,每个第一核心元件会具有缓冲器500。为了方便说明,本发明实施例设定缓冲器500具有8个缓冲器页面1-8,因此应用本实施例者应可依去其需求来任意调整缓冲器500中的缓冲器页面的数量以及缓冲器500的内部结构。例如,在其他实施例中,缓冲器500具有的缓冲器页面数目可为大于8个或是小于8个。于本实施例中,第一核心元件可根据缓冲器500中已写入的数据量来计算容忍循环时间,并依据此容忍循环时间来计算或决定延时信息。举例来说,当第一核心元件131欲传送一笔数据至网络接口单元101时,第一核心元件131会先储存此笔数据(假设此笔数据的大小为3个缓冲器页面大小)至缓冲器500中的3个页面(缓冲器页面1-3)。接着,第一核心元件131会辨识剩余的空的缓冲器页面的数量为5个(缓冲器页面4-8)。第一核心元件131会对应此5个空的缓冲器页面以将用以填补此5个空的缓冲器页面的循环时间加上一个预定阈值所得到的总和作为容忍循环时间的数值。藉此,本发明实施例的第一核心元件便可依据上述容忍循环时间来判断第一核心元件自身的延时信息的数值。于其他实施例中,第一核心元件也可以参照其他参数来计算或提供延时信息,与缓冲器500中已写入的数据量并非为绝对性的对应关系。例如,在其他实施例中,每个核心元件本身也可自行依据各自的硬件条件或是固件等厂商的设定来计算延时信息的数值。若网络接口单元101接收到来自于第一核心元件131的延时信息,网络接口单元101会将此延时信息储存至对应第一核心元件131的数据封包的标头(Header)中。值得一提的是,本发明实施例也不限于上述计算延时信息的方式。
请参照图6,在本实施例中,第一仲裁切换器105会计数从每个网络接口单元所接收的各个数据封包经由第一仲裁切换器105处理所耗费的延迟时间(delay time),将各个数据封包中的延时信息减去延迟时间以成为延时权值,并将此新计算的延时权值设置于各个数据封包中的标头601中,以取代位于数据封包中的原有的延时信息。举例来说,假设网络接口单元101经由连结通道301传送数据封包600至第一仲裁切换器105。数据封包600包括标头(Header,H)601、标尾(Tail,T)602与传输数据603,并且网络接口单元101经由连结通道311传送延时状态至第一仲裁切换器105。一开始位于标头601中的延时信息610为250个循环时间。值得一提的是,所述的标头、标尾以及传输数据的数据封包结构仅为说明之用,本发明实施例不限于此。
假设第一仲裁切换器105同时接收到来自网络接口单元101的数据封包600与来自网络接口单元102的另一数据封包,其中此另一数据封包对应的延时状态为高。在此例子中,第一仲裁切换器105会先处理此另一数据封包,并且利用延时信息暂存器来计数处理此另一数据封包所耗费的循环时间长度。若第一仲裁切换器105耗费200个循环时间处理另一数据封包,第一仲裁切换器105会将数据封包600中的延时信息610减去200个循环时间,并将计算后的差值成为新的延时权值来取代原有的延时信息610。即,在此例子中,此计算后的延时权值为50个循环时间(250-200=50)。由于计算后的延时权值较低,故,对应的数据封包也会更有机会被分配到高的传输优先顺序。藉此,已经进行等待的数据封包可因为此机制而有机会被较快处理而减少了等待时间。
值得一提的是,若在上述的例子中,假设预定延迟通知阈值被设定为51个循环时间。由于来自网络接口单元101的数据封包600的延时权值(50个循环时间)已低于预定延迟通知阈值,因此第一仲裁切换器105便会指示网络接口单元101及接口整合单元106以发出延迟通知信号至第一仲裁切换器105及仲裁器110。例如,网络接口单元101会将连结通道311与连结通道415传送的延时状态(Latency status)信号的电位拉高。藉此,可使对应此延迟通知信号的数据封包600获得最高的传输优先顺序。与此同时,第一仲裁切换器105会将为50个循环时间的延时权值填入标头601以取代原有位于标头601中的延时信息,并将数据封包600经由接口整合单元106传送至仲裁器110。在另一实施例中,若对应不同的第一核心单元的多个数据封包的延时权值同时低于预定延迟通知阈值并且对应此些数据封包的延时状态的电位为高(High)时,第一仲裁切换器105会再根据此些数据封包的延时权值大小来判断传输优先顺序。藉此,在多个数据封包的延时状态的电位皆为高的状态下,第一仲裁切换器105还能排序此些数据封包的传输优先顺序。
请再参照图4,假设第一核心元件131所计算出来的延时信息为250;第一核心元件132所计算出来的延时信息为50;第一核心元件133所计算出来的延时信息为100;预定延迟通知阈值为40。第一核心元件131、第一核心元件132与第一核心元件133分别传送第一数据、第二数据以及第三数据至第一核心接口处理器100。根据对应此三个数据的延时信息,第一仲裁切换器105判定此三个数据的传输优先顺序为,第二数据(对应第一核心元件132)的传输优先顺序高于第三数据(对应第一核心元件133),并且第三数据的传输优先顺序高于第一数据(对应第一核心元件131)。第一仲裁切换器105会先处理第二数据,其中第一仲裁切换器105耗费80个循环时间来处理第二数据。
当第一仲裁切换器105处理完第二数据之后,第一仲裁切换器105会计算还在等待处理的第一数据与第三数据的延时权值。如上所述,经过计算后,第一数据的延时权值为170个循环时间(250-80=70),并且第三数据的延时权值为20个循环时间(100-80=20)。由于第三数据的延时权值小于预定延迟通知阈值,第一仲裁切换器105会指示将第一核心元件133的延时状态切换为高,并且,如上所述,优先处理对应第一核心元件133的第三数据。
值得一提的是,在本实施例中,当多个数据封包同时具有相同的延时权值(或延时信息)的情况下,第一仲裁切换器105可以依据预定优先规则来排序此些数据封包的传输优先顺序
举例来说,假设对应第一仲裁切换器105的预定优先规则为第一核心接口131的优先顺序高于第一核心接口133的优先顺序、第一核心接口133的优先顺序高于第一核心接口132的优先顺序、第一核心接口132的优先顺序高于第一核心接口134的优先顺序。如此一来,当分别来自第一核心接口131、第一核心接口132、第一核心接口133、第一核心接口134的多个数据封包同时具有相同的延时权值(或延时信息)时,第一仲裁切换器105会依据上述的预定优先规则来排序此些数据封包的传输优先顺序。即,第一仲裁切换器105会设定来自第一核心接口131的数据封包具有最高的传输优先顺序(最高优先权值),并先处理来自第一核心接口131的数据封包。接着,依此类推,第一仲裁切换器105再依序处理来自第一核心接口133、第一核心接口132与第一核心接口134的数据封包。换言之,在多个数据封包具有相同延时权值(或延时信息)的状态下,第一仲裁切换器105会根据预定优先规则来决定此些数据封包的传输优先顺序。
应注意的是,上述预定优先规则的设定方式仅为说明之用,不用于限制本发明实施例。例如,在另一实施例中,在多个数据封包具有相同延时权值(或延时信息)的状态下,第一仲裁切换器105可以使用轮询方式来决定此些数据封包的传输优先顺序。举例来说,第一仲裁切换器105会依照第一核心接口131、第一核心接口132、第一核心接口133、第一核心接口134的轮询顺序来排序来自第一核心接口131、第一核心接口132、第一核心接口133以及第一核心接口134的具有相同延时权值(或相同延时信息)的多个数据封包。
综上所述,本发明实施例所述的芯片网络***及其形成方式藉由将核心元件区分为两个种类,第一种类的核心元件需透过核心接口处理器以及每个核心元件对应的延时信息来整合这些核心元件的传输数据。相对地,第二种类的核心元件所传输的传输数据则不具备延时信息。仲裁器依据所知的参数及优先权数值来进行对第一种类的核心元件经整合后的数据以及第二种类的核心元件的数据进行排序,以使存储器能够顺利地依照仲裁器所提供的数据来依序地处理指令。如此一来,此种芯片网络***便可有效地藉由每个硅智财元件的延时时间来增进芯片网络***中各个核心元件的互连服务品质,并可避免芯片网络***中的信号壅塞问题,进而增进芯片网络***的效能。
虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视后附的权利要求所界定者为准。
Claims (21)
1.一种芯片网络***,包括:
多个第一核心元件及多个第二核心元件,其中该些第一核心元件分别具备延时信息以及延时状态;
第一核心接口处理器,耦接该些第一核心元件,并依据该些第一核心元件所分别具备的该延时信息来整合该些第一核心元件的各个传输数据以形成第一核心接口数据,其中该第一核心接口数据包括多个数据封包,且每个数据封包至少包括一延时权值;
仲裁器,耦接该第一核心接口处理器以及该些第二核心元件;以及
存储器,耦接该仲裁器,
其中该仲裁器依据该些第一核心元件的该延时状态以及每个数据封包中的该延时权值来决定该第一核心接口数据中各个封包以及该些第二核心元件的第二传输数据对该存储器的存取顺序。
2.如权利要求1所述的芯片网络***,其特征在于,所述第一核心接口处理器包括:
多个网络接口单元,分别耦接至对应的该第一核心元件,且分别将对应的该第一核心元件的传输数据转换成多个数据封包,其中该些数据封包包括对应的该第一核心元件的传输数据片段以及对应的该第一核心元件的该延时信息;以及
第一仲裁切换器,耦接该些网络接口单元以接收该些数据封包,依据每个数据封包中的该些第一核心元件的该延时信息及该延时状态来作为传输优先顺序,以将该些数据封包整合为该第一核心接口数据。
3.如权利要求2所述的芯片网络***,其特征在于,所述第一仲裁切换器还依据该些数据封包中的指令种类及超出标准参数的其中之一或其组合来判断该些数据封包在该第一核心接口数据中的传输优先顺序。
4.如权利要求2所述的芯片网络***,其特征在于,所述第一仲裁切换器计算各个数据封包经由该第一仲裁切换器的处理所延迟的一延迟时间,将各个数据封包中的一延时信息减去该延迟时间以成为一延时权值,并将该延时权值设置于各个数据封包中的标头处。
5.如权利要求4所述的芯片网络***,其特征在于,该第一仲裁切换器依据一优先权值规则来排序具有相同该延时权值的该些数据封包的传输优先顺序。
6.如权利要求4所述的芯片网络***,其特征在于,该第一仲裁切换器经由一轮询方式来排序具有相同该延时权值的该些数据封包的传输优先顺序。
7.如权利要求2所述的芯片网络***,其特征在于,所述网络接口单元分别从对应的该第一核心元件接收以并列处理的传输数据,将其转换为串列处理的该传输数据以形成该些数据封包,并且,
所述第一仲裁切换器更包括:
接口整合单元,耦接该第一仲裁切换器以及该仲裁器,用以将串列处理的该第一核心接口数据转换为并列处理的该第一核心接口数据,并将该第一核心接口数据传输至该仲裁器。
8.如权利要求2所述的芯片网络***,其特征在于,当所述网络接口单元所对应的该第一核心元件所传递的该传输数据尚未处理的时间即将超过该延时信息所表示的延时时间的情况下,所述网络接口单元发出一延迟通知信号至该第一仲裁切换器,该第一仲裁切换器接收该延迟通知信号以将该传输数据对应的该些数据封包传递至该仲裁器,并将该些数据封包的传输优先顺序调整为最高优先权值。
9.如权利要求1所述的芯片网络***,其特征在于,所述各个第一核心元件是视频处理引擎、显示处理引擎、绘图处理引擎及直接存储器访问模组中的其中之一或其组合,所述各个第二核心元件是数字信号处理器及地址映射单元中的其中之一或其组合。
10.如权利要求1所述的芯片网络***,其特征在于,所述存储器是动态随机存取存储器及静态随机存取存储器其中之一。
11.如权利要求1所述的芯片网络***,其特征在于,所述芯片网络***更包括:
中央处理单元,耦接至该些第二核心元件中的地址映射单元;以及
低速数据存储元件,耦接该地址映射单元,
其中该中央处理单元透过该地址映射单元以对该存储器或该低速数据存储元件进行数据存取。
12.如权利要求11所述的芯片网络***,其特征在于,所述低速数据存储元件是输入输出设备及寄存器的其中之一。
13.如权利要求1所述的芯片网络***,其特征在于,所述仲裁器还依据该存储器的存储页面、该些数据封包中的指令种类、及该存储器的种类的其中之一或其组合来决定该第一核心接口数据中各个封包以及该些第二核心元件对该存储器的存取顺序。
14.一种芯片网络的形成方法,包括:
将多个核心元件区分为多个第一核心元件及多个第二核心元件,其中该些第一核心元件分别具备延时信息以及延时状态;
依据该些第一核心元件所分别具备的该延时信息来整合该些第一核心元件的各个传输数据以形成第一核心接口数据,其中该第一核心接口数据包括多个数据封包,且每个数据封包至少包括一延时权值;以及
依据该些第一核心元件的该延时状态以及每个数据封包中的该延时权值来决定该第一核心接口数据中各个封包以及该些第二核心元件的第二传输数据对一存储器的存取顺序。
15.如权利要求14所述的芯片网络的形成方法,其特征在于,整合该些第一核心元件的各个传输数据以形成该第一核心接口数据包括下列步骤:
分别将对应的该第一核心元件的传输数据转换成多个数据封包,其中该些数据封包包括对应的该第一核心元件的传输数据片段以及对应的该第一核心元件的该延时信息;以及
依据每个数据封包中的该些第一核心元件的该延时信息及延时状态来作为传输优先顺序,以将该些数据封包整合为该第一核心接口数据。
16.如权利要求15所述的芯片网络的形成方法,其特征在于,整合该些第一核心元件的各个传输数据以形成该第一核心接口数据更包括下列步骤:
依据该些数据封包中的指令种类及超出标准参数的其中之一或其组合来判断该些数据封包在该第一核心接口数据中的传输优先顺序。
17.如权利要求15所述的芯片网络的形成方法,其特征在于,整合该些第一核心元件的各个传输数据以形成该第一核心接口数据更包括下列步骤:
计算各个数据封包经由一第一仲裁切换器的处理所延迟的一延迟时间,将各个数据封包中的一延时信息减去该延迟时间以成为一延时权值,并将该延时权值设置于各个数据封包中的标头处。
18.如权利要求17所述的芯片网络的形成方法,其特征在于,依据一优先权值规则来排序具有相同该延时权值的该些数据封包的传输优先顺序。
19.如权利要求17所述的芯片网络的形成方法,其特征在于,经由一轮询方式来排序具有相同该延时权值的该些数据封包的传输优先顺序。
20.如权利要求15所述的芯片网络的形成方法,其特征在于,整合该些第一核心元件的各个传输数据以形成该第一核心接口数据更包括下列步骤:
将以并列处理的传输数据转换为串列处理的该传输数据以形成该些数据封包;以及
将串列处理的该第一核心接口数据转换为并列处理的该第一核心接口数据,并将该第一核心接口数据传输至一仲裁器。
21.如权利要求15所述的芯片网络的形成方法,其特征在于,整合该些第一核心元件的各个传输数据以形成该第一核心接口数据更包括下列步骤:
当该些第一核心元件所传递的该传输数据尚未处理的时间即将超过该延时信息所表示的延时时间的情况下,将该传输数据对应的该些数据封包传递至一仲裁器,并将该些数据封包的传输优先顺序调整为最高优先权值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410745994.XA CN105740178B (zh) | 2014-12-09 | 2014-12-09 | 芯片网络***以及其形成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410745994.XA CN105740178B (zh) | 2014-12-09 | 2014-12-09 | 芯片网络***以及其形成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105740178A CN105740178A (zh) | 2016-07-06 |
CN105740178B true CN105740178B (zh) | 2018-11-16 |
Family
ID=56236331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410745994.XA Active CN105740178B (zh) | 2014-12-09 | 2014-12-09 | 芯片网络***以及其形成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105740178B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI601060B (zh) | 2017-01-17 | 2017-10-01 | 群聯電子股份有限公司 | 資料傳輸方法、記憶體儲存裝置及記憶體控制電路單元 |
CN106874223B (zh) * | 2017-01-24 | 2021-04-20 | 合肥兆芯电子有限公司 | 数据传输方法、存储器存储装置及存储器控制电路单元 |
JP2019113917A (ja) * | 2017-12-21 | 2019-07-11 | ルネサスエレクトロニクス株式会社 | データ処理装置、及びデータ処理装置の制御方法 |
CN112235630B (zh) * | 2020-09-28 | 2022-08-19 | 卡莱特云科技股份有限公司 | 一种数据备份传输方法、led网状环路备份***及电子设备 |
CN112834819B (zh) * | 2021-01-04 | 2024-04-02 | 杭州万高科技股份有限公司 | 一种用于电能计量芯片的数字信号处理装置及方法 |
CN113868171B (zh) * | 2021-09-28 | 2024-06-18 | 上海兆芯集成电路股份有限公司 | 互连*** |
CN116630034B (zh) * | 2023-07-21 | 2023-11-07 | 杭银消费金融股份有限公司 | 一种风控数据处理***及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521201A (zh) * | 2011-11-16 | 2012-06-27 | 刘大可 | 多核数字信号处理器片上***及数据传输方法 |
US8385358B2 (en) * | 2010-12-30 | 2013-02-26 | Oracle International Corporation | Simple low-jitter scheduler |
CN103039044A (zh) * | 2010-06-03 | 2013-04-10 | 安通斯公司 | 具有服务质量特征的芯片上网络 |
US8705368B1 (en) * | 2010-12-03 | 2014-04-22 | Google Inc. | Probabilistic distance-based arbitration |
-
2014
- 2014-12-09 CN CN201410745994.XA patent/CN105740178B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103039044A (zh) * | 2010-06-03 | 2013-04-10 | 安通斯公司 | 具有服务质量特征的芯片上网络 |
US8705368B1 (en) * | 2010-12-03 | 2014-04-22 | Google Inc. | Probabilistic distance-based arbitration |
US8385358B2 (en) * | 2010-12-30 | 2013-02-26 | Oracle International Corporation | Simple low-jitter scheduler |
CN102521201A (zh) * | 2011-11-16 | 2012-06-27 | 刘大可 | 多核数字信号处理器片上***及数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105740178A (zh) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105740178B (zh) | 芯片网络***以及其形成方法 | |
JP6377844B2 (ja) | Sfenceを用いずに最適化されたpio書込みシーケンスを用いるパケット送信 | |
CN105512060B (zh) | 输入/输出电路以及数据传输控制方法 | |
JP5566899B2 (ja) | メモリにアクセスするシステム及び方法 | |
KR101727874B1 (ko) | 고성능 패브릭 내에서의 qos를 위한 방법, 장치 및 시스템 | |
US8316171B2 (en) | Network on chip (NoC) with QoS features | |
US7496699B2 (en) | DMA descriptor queue read and cache write pointer arrangement | |
US7590791B2 (en) | Optimized switching method | |
EP1775897A1 (en) | Interleaving in a NoC (Network on Chip) employing the AXI protocol | |
CN104395897B (zh) | 服务器节点互连装置和方法 | |
TWI772279B (zh) | 用於具有可重配置多端口的快捷外設互聯標準儲存系統的服務品質感測輸入輸出管理的方法、系統及設備 | |
CN105511954A (zh) | 一种报文处理方法及装置 | |
CN112543925A (zh) | 用于使用专用低延迟链路的多个硬件加速器的统一地址空间 | |
CN102047619B (zh) | 用于对异常分组的慢路径处理进行动态速率限制的方法、***和计算机可读介质 | |
CN104765701B (zh) | 数据访问方法及设备 | |
CN103577469B (zh) | 数据库连接复用方法和装置 | |
US8090893B2 (en) | Input output control apparatus with a plurality of ports and single protocol processing circuit | |
CN105579952B (zh) | 利用伪停顿的高速通道上的emi抑制 | |
CN107066413A (zh) | 一种用于处理多个总线设备数据的方法、及其总线*** | |
CN104598430A (zh) | 一种cpu互联扩展***的网络接口互联设计与控制*** | |
US9588928B1 (en) | Unique packet multicast packet ready command | |
CN103905339A (zh) | 电脑仲裁***、其带宽分配设备以及方法 | |
US20150003250A1 (en) | Credit-Based Resource Allocator Circuit | |
CN110865951B (zh) | 一种支持单根双处理器中断通信的方法和装置 | |
CN106789706A (zh) | 一种基于tcam的网络分流*** |
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 |