專利名稱:半導(dǎo)體系統(tǒng)、中繼器及芯片電路的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及實(shí)現(xiàn)存儲(chǔ)器存取負(fù)荷分散的半導(dǎo)體系統(tǒng)中的低延遲傳輸裝置、方法及程序。
背景技術(shù):
迄今為止,為了使半導(dǎo)體芯片電路中的存儲(chǔ)器存取負(fù)荷分散,提出一種在考慮實(shí)現(xiàn)成本與處理性能的基礎(chǔ)上有機(jī)地結(jié)合了存取速度不同的存儲(chǔ)器的分層型存儲(chǔ)器的半導(dǎo)體系統(tǒng)電路。尤其是,為了解決總線的負(fù)荷集中的課題,正在進(jìn)行以下研究開發(fā)通過(guò)半導(dǎo)體芯片電路內(nèi)的網(wǎng)絡(luò)、即芯片上的網(wǎng)絡(luò)(Network on Chip ;以下在本申請(qǐng)說(shuō)明書中記述為 “NoC”)使通訊(traffic)分散在多條傳輸路徑上。在本說(shuō)明書中,設(shè)想一種利用NoC來(lái)分散總線并將DRAM或SRAM等可改寫的多個(gè)存儲(chǔ)器連接到NoC上的半導(dǎo)體系統(tǒng)。在這種半導(dǎo)體系統(tǒng)中為了實(shí)現(xiàn)可以追隨時(shí)刻變化的存儲(chǔ)器存取的請(qǐng)求的存儲(chǔ)器存取的負(fù)荷分散,需要決定數(shù)據(jù)存儲(chǔ)目標(biāo)的存儲(chǔ)器以及決定從總線主控器(例如CPU或 DSP)到存儲(chǔ)器的傳輸路徑這兩方面。也就是說(shuō),以往分別開發(fā)了總線主控器選擇最佳存儲(chǔ)器的技術(shù)和選擇傳輸路徑的技術(shù)。作為現(xiàn)有的數(shù)據(jù)存儲(chǔ)目標(biāo)的存儲(chǔ)器的決定方法,可以列舉出按照請(qǐng)求順序分配處理的循環(huán)方式(round robin) 0再有,作為從總線主控器到存儲(chǔ)器的傳輸路徑的決定方法, 提出一種利用芯片上的網(wǎng)絡(luò)的有效傳輸方式。具體是,公開了以下技術(shù)通過(guò)利用了中繼器 (路由器)的傳輸路徑的網(wǎng)絡(luò)化,從而可以選擇并利用多條傳輸路徑,因此能夠有效利用多條傳輸路徑來(lái)解決總線的擁塞問(wèn)題。例如,專利文獻(xiàn)1公開了以多處理器間的相互連接為對(duì)象的網(wǎng)絡(luò)傳輸中的路徑選擇技術(shù)。在專利文獻(xiàn)1中,公開了以下技術(shù)設(shè)想能夠選擇多條路徑,若在進(jìn)行過(guò)傳輸?shù)穆窂街?,在一定時(shí)間內(nèi)沒(méi)有響應(yīng),則依據(jù)按照每個(gè)路線預(yù)先確定的選擇概率的分布,選擇多條預(yù)先確定的路徑中的一條來(lái)進(jìn)行數(shù)據(jù)包的再送。即,公開了在半導(dǎo)體上的網(wǎng)絡(luò)中基于對(duì)路徑的傳輸品質(zhì)進(jìn)行監(jiān)視之后的結(jié)果來(lái)進(jìn)行傳輸路徑的選擇的技術(shù)?,F(xiàn)有技術(shù)文獻(xiàn)專利文獻(xiàn)專利文獻(xiàn)1 日本特許第3816531號(hào)說(shuō)明書在現(xiàn)有技術(shù)中,雖然分別調(diào)整數(shù)據(jù)存儲(chǔ)目標(biāo)的存儲(chǔ)器和從總線主控器到存儲(chǔ)器的傳輸路徑而可以提高傳輸效率,但今后需要實(shí)現(xiàn)效率更高且延遲低的網(wǎng)絡(luò)傳輸。再有,在現(xiàn)有技術(shù)中,并未針對(duì)所請(qǐng)求的傳輸延遲特性對(duì)于每個(gè)通訊而言都不同的情況的傳輸方式有所顧慮。具體是,因?yàn)楝F(xiàn)有的數(shù)據(jù)存儲(chǔ)目標(biāo)的存儲(chǔ)器的決定方法是循環(huán)方式的,所以不能根據(jù)時(shí)刻變化的存儲(chǔ)器存取負(fù)荷來(lái)分配數(shù)據(jù)的存儲(chǔ)目標(biāo)。例如,在如影像數(shù)據(jù)這樣的代碼量根據(jù)內(nèi)容而在時(shí)間上變化較大的情況下,在分配目標(biāo)的存儲(chǔ)器之間,存取負(fù)荷會(huì)產(chǎn)生較大的差異,存儲(chǔ)器存儲(chǔ)的負(fù)荷分散不能有效地奏效。再有,在芯片上的網(wǎng)絡(luò)中,存在請(qǐng)求低延遲傳輸?shù)耐ㄓ嵟c沒(méi)有請(qǐng)求低延遲傳輸?shù)耐ㄓ崱@?,存在如用戶操作這樣的需要較高響應(yīng)性的處理以及如背景描繪這樣的不需要響應(yīng)性的通訊。這些通訊在同一網(wǎng)絡(luò)上混合存在的情況下,由于通訊之間的相互干擾,從而導(dǎo)致低延遲請(qǐng)求水平高的通訊會(huì)對(duì)低延遲請(qǐng)求水平低的通訊造成影響。因此,需要考慮了通訊特性(在上述的例子中為通訊速率或低延遲請(qǐng)求水平)的差異的數(shù)據(jù)存儲(chǔ)目標(biāo)的存儲(chǔ)器的決定方法與傳輸路徑的決定方法。
發(fā)明內(nèi)容
本發(fā)明的目的在于可實(shí)現(xiàn)考慮了通訊特性的差異以及時(shí)刻變化的存儲(chǔ)器的存取負(fù)荷的、更高效率且低延遲的網(wǎng)絡(luò)傳輸。本發(fā)明的半導(dǎo)體系統(tǒng),具備至少一個(gè)第一節(jié)點(diǎn);多個(gè)第二節(jié)點(diǎn);以及中繼器,其經(jīng)由被網(wǎng)絡(luò)化的通信總線對(duì)從至少一個(gè)所述第一節(jié)點(diǎn)發(fā)送來(lái)的數(shù)據(jù)進(jìn)行中繼,并向多個(gè)所述第二節(jié)點(diǎn)的一個(gè)第二節(jié)點(diǎn)進(jìn)行傳輸,所述中繼器與至少一個(gè)所述第一節(jié)點(diǎn)連接,所述中繼器具備低延遲路徑選擇部,該低延遲路徑選擇部從多個(gè)所述第二節(jié)點(diǎn)的各第二節(jié)點(diǎn)以及多條傳輸路徑的各傳輸路徑的組合中,基于各第二節(jié)點(diǎn)的負(fù)荷值的信息以及各傳輸路徑的負(fù)荷值的信息來(lái)選擇1組第二節(jié)點(diǎn)與傳輸路徑,所述中繼器利用由所述低延遲路徑選擇部選出的傳輸路徑,向所選出的第二節(jié)點(diǎn)中繼所述數(shù)據(jù)。也可以,作為所述第二節(jié)點(diǎn)的負(fù)荷值,所述低延遲路徑選擇部利用所述第二節(jié)點(diǎn)緊前面的中繼器的緩沖量、數(shù)據(jù)包的等待時(shí)間、吞吐量以及顫動(dòng)中的至少一個(gè)。也可以,作為所述傳輸路徑的負(fù)荷值,所述低延遲路徑選擇部利用中繼級(jí)數(shù)、數(shù)據(jù)長(zhǎng)度、總線寬度、總線頻帶中的至少一個(gè)。也可以,所述低延遲路徑選擇部選擇至少一個(gè)所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)之間的與去路相關(guān)的評(píng)價(jià)值和與回路相關(guān)的評(píng)價(jià)值之和最小的所述第二節(jié)點(diǎn)以及傳輸路徑。也可以,所述低延遲路徑選擇部將峰值變動(dòng)劇烈的單發(fā)式的通訊優(yōu)先集中在同一傳輸路徑或所述第二節(jié)點(diǎn)上。也可以,多個(gè)所述第二節(jié)點(diǎn)包括存儲(chǔ)器、處理器、數(shù)字信號(hào)處理器中的至少一個(gè)。也可以,多個(gè)所述第二節(jié)點(diǎn)包括連接多個(gè)網(wǎng)絡(luò)之間的中繼器。本發(fā)明的中繼器,在總線主控器與存儲(chǔ)器之間使數(shù)據(jù)在被網(wǎng)絡(luò)化的通信總線上進(jìn)行傳輸,該中繼器包括延遲時(shí)間處理部,其獲取存在于發(fā)送所述數(shù)據(jù)的多條傳輸路徑上的其他中繼器中的處理延遲時(shí)間的信息;和低延遲路徑選擇部,其基于所獲取到的與多條所述傳輸路徑相關(guān)的處理延遲時(shí)間的信息,選擇存儲(chǔ)器以及多條所述傳輸路徑中的向所述存儲(chǔ)器進(jìn)行傳輸?shù)膫鬏斅窂降囊粭l傳輸路徑。也可以,所述低延遲路徑選擇部基于所獲取到的與多條所述傳輸路徑相關(guān)的處理延遲時(shí)間的信息,選擇存取速度不同的多種存儲(chǔ)器中的存取速度相對(duì)高的存儲(chǔ)器以及向所述存儲(chǔ)器進(jìn)行傳輸?shù)难舆t時(shí)間最小的傳輸路徑。也可以,在表示所述數(shù)據(jù)的低延遲請(qǐng)求水平的信息是表示未超過(guò)預(yù)先確定的延遲時(shí)間的水平的情況下,所述低延遲路徑選擇部基于多條所述傳輸路徑各自所流通的通訊的振幅、數(shù)據(jù)包尺寸、數(shù)據(jù)尺寸、發(fā)送間隔中的至少一個(gè)信息,選擇所述存取速度相對(duì)高的存儲(chǔ)器以及向所述存儲(chǔ)器進(jìn)行傳輸?shù)难舆t時(shí)間最小的傳輸路徑。也可以,所述低延遲路徑選擇部選擇多種所述存儲(chǔ)器中的存取速度相對(duì)低的存儲(chǔ)器,并基于向所述存儲(chǔ)器進(jìn)行傳輸?shù)膫鬏斅窂降耐ㄓ嵉恼穹?shù)據(jù)包尺寸、數(shù)據(jù)尺寸、發(fā)送間隔中的至少一個(gè)信息的大小來(lái)選擇向所述存儲(chǔ)器進(jìn)行傳輸?shù)膫鬏斅窂?。也可以,所述中繼器還包括接收所述數(shù)據(jù)的接收部;以及發(fā)送所述處理延遲時(shí)間的信息的發(fā)送部,在所述中繼器與多種所述存儲(chǔ)器中的任意一種存儲(chǔ)器連接的情況下, 所述延遲時(shí)間處理部經(jīng)由所述發(fā)送部將所述接收部中的所述處理延遲時(shí)間的信息向其他中繼器轉(zhuǎn)送。也可以,所述中繼器還包括接收所述處理延遲時(shí)間的信息的接收部,在所述中繼器與所述總線主控器連接的情況下,所述延遲時(shí)間處理部經(jīng)由所述接收部來(lái)收集所述其他中繼器中的所述處理延遲時(shí)間的信息。也可以,所述低延遲路徑選擇部根據(jù)利用請(qǐng)求低延遲的通訊的延遲時(shí)間、中繼級(jí)數(shù)、所述傳輸單位的數(shù)據(jù)長(zhǎng)度中的至少一個(gè)以上而生成的評(píng)價(jià)值,選擇存儲(chǔ)器以及多條所述傳輸路徑中的向所述存儲(chǔ)器進(jìn)行傳輸?shù)囊粭l傳輸路徑。也可以,所述低延遲路徑選擇部選擇總線主控器與存儲(chǔ)器之間的與去路相關(guān)的評(píng)價(jià)值和與回路相關(guān)的評(píng)價(jià)值之和成為最小值的存儲(chǔ)器以及傳輸路徑。也可以,在同一對(duì)的總線主控器之間傳輸數(shù)據(jù)的情況下,所述低延遲路徑選擇部選擇同一存儲(chǔ)器以及傳輸路徑。也可以,所述低延遲路徑選擇部根據(jù)是否為峰值變動(dòng)以及是否為單發(fā)式的通訊, 來(lái)選擇同一存儲(chǔ)器及傳輸路徑。也可以,在表示所述低延遲請(qǐng)求水平的信息是表示在預(yù)先確定的延遲時(shí)間以上的水平的情況下,所述延遲時(shí)間處理部獲取與多條所述傳輸路徑相關(guān)的處理延遲時(shí)間的信肩、ο本發(fā)明的芯片電路,包括至少一個(gè)總線主控器;至少一個(gè)存儲(chǔ)器;以及上述任意一項(xiàng)所述的中繼器,其在至少一個(gè)所述總線主控器以及至少一個(gè)所述存儲(chǔ)器之間的被網(wǎng)絡(luò)化的通信總線上設(shè)置有多個(gè)。也可以,在利用至少一個(gè)所述總線主控器來(lái)執(zhí)行多個(gè)應(yīng)用程序軟件的情況下,所述低延遲路徑選擇部按照每個(gè)應(yīng)用程序軟件,選擇各應(yīng)用程序軟件利用的至少一個(gè)所述存儲(chǔ)器以及多條所述傳輸路徑的一條傳輸路徑。發(fā)明效果在實(shí)現(xiàn)存儲(chǔ)器存取負(fù)荷分散的半導(dǎo)體系統(tǒng)中,能夠?qū)崿F(xiàn)高效率傳輸且低延遲的網(wǎng)絡(luò)傳輸。
圖1(a)是表示硬件連接構(gòu)成例的圖,(b)是其示意圖。圖2是表示以二維網(wǎng)型結(jié)合了總線主控器的NoC總線的構(gòu)成例的圖。圖3是依據(jù)本發(fā)明實(shí)施方式1的路徑控制方法進(jìn)行傳輸路徑的控制的NoC的一例的示意圖。圖4是表示中繼器的連接構(gòu)成的圖。
圖5是表示中繼器的構(gòu)成的框圖。圖6是表示與總線主控器的各種處理關(guān)聯(lián)地進(jìn)行的存儲(chǔ)器的動(dòng)作以及經(jīng)由中繼器而在總線主控器與存儲(chǔ)器之間被收發(fā)的數(shù)據(jù)的例子的圖。圖7是表示實(shí)現(xiàn)低延遲傳輸?shù)腘oC的網(wǎng)絡(luò)結(jié)構(gòu)的圖。圖8是表示數(shù)據(jù)包60的傳輸格式的一例和將數(shù)據(jù)包60分割為多個(gè)微片(flit) 的例子的圖。圖9是說(shuō)明在NoC上流動(dòng)的流的特性例的圖。圖10是表示延遲時(shí)間的收集與轉(zhuǎn)送的處理順序的流程圖。圖11 (A)及(B)是表示用于實(shí)現(xiàn)低延遲傳輸?shù)腘oC的構(gòu)成的圖。圖12是表示中繼器的處理順序的流程圖。圖13是表示圖12的步驟S805的處理的詳細(xì)順序的流程圖。圖14是表示成為存儲(chǔ)器與路徑的選擇基準(zhǔn)的評(píng)價(jià)值的具體例的圖。圖15是表示基于成為存儲(chǔ)器與路徑的選擇基準(zhǔn)的評(píng)價(jià)值來(lái)選擇存儲(chǔ)器與路徑的具體例的圖。圖16(A)及(B)是表示對(duì)去路(forward path)與回路(return path)的評(píng)價(jià)值進(jìn)行綜合來(lái)決定存儲(chǔ)器與路徑的處理的例子的圖。圖17(A)是表示對(duì)應(yīng)用程序所請(qǐng)求的傳輸延遲進(jìn)行區(qū)分的處理類型的圖,(B)是表示在圖9所說(shuō)明的流的管理表中追加了上述處理類型的例子的圖。圖18是表示考慮了去路的路徑以及存儲(chǔ)器的選擇方法的處理順序的流程圖。圖19(A)及(B)是表示考慮了去路與回路的差異的評(píng)價(jià)值的具體例的圖。圖20是表示基于通訊特性的路徑的集中方法的處理順序的流程圖。
具體實(shí)施例方式以下,參照附圖對(duì)本發(fā)明涉及的低延遲傳輸裝置及低延遲傳輸方法的實(shí)施方式進(jìn)行說(shuō)明。首先,圖1 (a)及(b)表示NoC的一部分構(gòu)成。圖1 (a)是表示硬件連接構(gòu)成例的圖,圖1(b)是其示意圖。根據(jù)圖1(a)及(b)可知,示出設(shè)置在芯片10上的總線主控器 Ia Ic分別經(jīng)由中繼器(R)2與總線3進(jìn)行連接。圖2表示以二維網(wǎng)型結(jié)合了總線主控器的一般NoC的構(gòu)成例。按照每個(gè)微型處理器或數(shù)字信號(hào)處理器(DSP)、存儲(chǔ)器、輸入輸出電路等總線主控器來(lái)配置進(jìn)行數(shù)據(jù)傳輸路徑控制的中繼器R,以短布線來(lái)連接(link)總線控制裝置R之間。接著,對(duì)具有在本發(fā)明實(shí)施方式中設(shè)想的NoC總線的半導(dǎo)體系統(tǒng)的構(gòu)成進(jìn)行說(shuō)明。圖3示意地表示依據(jù)本實(shí)施方式的路徑控制方法來(lái)進(jìn)行傳輸路徑控制的NoC的一例。在圖3的系統(tǒng)中,多個(gè)芯片經(jīng)由調(diào)停器(arbiter)來(lái)進(jìn)行存儲(chǔ)器存取。而且,調(diào)停器內(nèi)部由NoC構(gòu)成。通過(guò)利用NoC向多個(gè)存儲(chǔ)器分散存取,從而不會(huì)使得總線的負(fù)荷集中,能夠以低的動(dòng)作時(shí)鐘使NoC動(dòng)作。在圖3的例子中,混合存在著因特網(wǎng)處理與媒體處理這兩種通訊,由于通訊之間的干擾而發(fā)生傳輸延遲。具體是,由芯片上的網(wǎng)絡(luò)來(lái)構(gòu)成內(nèi)置了因特網(wǎng)功能的電視或移動(dòng)電話的總線的情況下,在芯片上的網(wǎng)絡(luò)中,存在請(qǐng)求低延遲傳輸?shù)耐ㄓ嵑筒徽?qǐng)求低延遲傳輸?shù)耐ㄓ?。例如?作為低延遲請(qǐng)求水平高的傳輸,有切換電視頻道中的用戶操作這樣的需要高響應(yīng)性的處理。另一方面,作為低延遲請(qǐng)求水平低的傳輸,存在因特網(wǎng)的內(nèi)容顯示下的背景描繪這樣的不需要響應(yīng)性的通訊。在這些通訊在同一網(wǎng)絡(luò)上混合存在的情況下,由于通訊的相互干擾, 低延遲請(qǐng)求水平低的通訊會(huì)對(duì)低延遲請(qǐng)求水平高的通訊造成影響。在本實(shí)施方式中,設(shè)想通訊特性的具有差異的傳輸。作為通訊的特性,例如可以列舉出通訊速率、每個(gè)應(yīng)用程序的數(shù)據(jù)包尺寸、通訊流的個(gè)數(shù)、應(yīng)用程序所需的低延遲程度 (低延遲請(qǐng)求水平)。而且,在將多個(gè)DSP或CPU等總線主控器、多個(gè)DRAM或SRAM等能改寫的存儲(chǔ)器連接到NoC的半導(dǎo)體系統(tǒng)中,設(shè)想從與NoC連接的總線主控器中動(dòng)態(tài)地選擇傳輸負(fù)荷低的路徑且存取負(fù)荷低的存儲(chǔ)器的用途。在本實(shí)施方式的NoC中,既可以采用設(shè)置規(guī)定時(shí)間長(zhǎng)度的傳輸時(shí)隙(slot)并與傳輸時(shí)隙同步地傳輸對(duì)象信息的通信方式,也可以采用以非同步的方式傳輸對(duì)象信息的通信方式。再有,在中繼器中,不會(huì)發(fā)生數(shù)據(jù)包的廢棄,在能夠進(jìn)行傳輸之前可以保存數(shù)據(jù)包。進(jìn)而,也可以導(dǎo)入流控制并調(diào)整要發(fā)送的數(shù)據(jù)包間隔。另外,在本實(shí)施方式中,將所傳輸?shù)臄?shù)據(jù)的單位(傳輸單位)稱為數(shù)據(jù)包或微片。以后說(shuō)明這些具體構(gòu)成例。圖4及圖5表示中繼器的構(gòu)成。圖4表示多個(gè)總線主控器2001、中繼器2002及存儲(chǔ)器2003的連接關(guān)系。依據(jù)來(lái)自總線主控器2001(例如,DSP、CPU、IO等)的請(qǐng)求,經(jīng)由多級(jí)中繼器2002,對(duì)多個(gè)存儲(chǔ)器 2003中的適當(dāng)存儲(chǔ)器進(jìn)行存取。為了使通訊的負(fù)荷分散,通過(guò)對(duì)多個(gè)中繼器2002進(jìn)行多級(jí)連接,從而可以抑制傳輸路徑上的擁塞。再有,通過(guò)準(zhǔn)備多個(gè)存儲(chǔ)器2003來(lái)不使存取目標(biāo)集中,從而可以減輕對(duì)存儲(chǔ)器的存取負(fù)荷。圖5表示中繼器內(nèi)部的構(gòu)成例。在該構(gòu)成中,以將從總線主控器向存儲(chǔ)器的傳輸以及從存儲(chǔ)器向總線主控器的傳輸相互獨(dú)立地進(jìn)行收發(fā)控制的構(gòu)成來(lái)實(shí)現(xiàn)。中繼器具有接收部201及202和發(fā)送部205及206。接收部(Bi、……,BX) 201從其他中繼器或總線主控器接收命令或數(shù)據(jù)串。接收部(Ml、……、MZ) 202接收來(lái)自其他中繼器或存儲(chǔ)器的命令或數(shù)據(jù)串。發(fā)送部(Bi、……、BN)205及發(fā)送部(Ml、……、MY)206將命令或數(shù)據(jù)串發(fā)送到所決定的傳輸目標(biāo)(其他中繼器或存儲(chǔ)器)。具有2個(gè)系統(tǒng)的接收部的理由如下可以同時(shí)處理來(lái)自多個(gè)中繼器或總線主控器的通訊。另外,具有2個(gè)系統(tǒng)的發(fā)送部的理由如下可以同時(shí)處理來(lái)自多個(gè)中繼器或存儲(chǔ)器的通訊。另外,也可以設(shè)置3個(gè)系統(tǒng)以上的接收部及發(fā)送部的至少一方,還可以是一方或兩方為1個(gè)系統(tǒng)。還有,在圖5的構(gòu)成中,因?yàn)榭梢酝瑫r(shí)處理來(lái)自總線主控器的存取請(qǐng)求和來(lái)自存儲(chǔ)器的存取請(qǐng)求,所以按照每個(gè)目的地(總線主控器側(cè)或存儲(chǔ)器側(cè))設(shè)置接收緩沖器(未圖示)。中繼器還具備數(shù)據(jù)包結(jié)構(gòu)分析部203 (或數(shù)據(jù)包結(jié)構(gòu)分析部204)、延遲時(shí)間處理部207、連接關(guān)系數(shù)據(jù)庫(kù)208、路徑信息部209和低延遲路徑選擇部210。數(shù)據(jù)包結(jié)構(gòu)分析部203(或數(shù)據(jù)包結(jié)構(gòu)分析部204)對(duì)所接收到的數(shù)據(jù)包的結(jié)構(gòu)進(jìn)行分析,以判定有無(wú)低延遲傳輸?shù)恼?qǐng)求。延遲時(shí)間處理部207參照存儲(chǔ)了表示中繼器連接關(guān)系的信息的連接關(guān)系數(shù)據(jù)庫(kù)208,以決定通訊的延遲時(shí)間的收集或發(fā)送中的任一個(gè)動(dòng)作。更具體的是,延遲時(shí)間處理部 207經(jīng)由接收部201,從位于總線主控器側(cè)的其他中繼器或總線主控器對(duì)接收狀況的信息進(jìn)行接收。接收狀況的信息例如是接收部的緩沖量或數(shù)據(jù)包的殘留時(shí)間。而且,經(jīng)由發(fā)送部206,將接收狀況的信息向其他中繼器或存儲(chǔ)器傳輸。再有,延遲時(shí)間處理部207經(jīng)由接收部202,接收來(lái)自位于存儲(chǔ)器側(cè)的其他中繼器的接收信息的信息或來(lái)自存儲(chǔ)器的接收狀況的信息,并經(jīng)由發(fā)送部205向其他中繼器或總線主控器傳輸。路徑信息部209管理路徑信息。低延遲路徑選擇部210決定傳輸目標(biāo)的中繼器或存儲(chǔ)器。圖6示出與總線主控器的各種處理關(guān)聯(lián)地進(jìn)行的存儲(chǔ)器的動(dòng)作以及經(jīng)由中繼器而在總線主控器與存儲(chǔ)器之間被收發(fā)的數(shù)據(jù)的例子。例如,在總線主控器進(jìn)行的攝像處理中,向存儲(chǔ)器發(fā)送影像數(shù)據(jù)及聲音數(shù)據(jù),并記錄在存儲(chǔ)器中。再有,在變換處理中,從存儲(chǔ)器讀取影像數(shù)據(jù)及聲音數(shù)據(jù),將由總線主控器進(jìn)行變換之后的影像數(shù)據(jù)及聲音數(shù)據(jù)發(fā)送到存儲(chǔ)器,并記錄在存儲(chǔ)器中。圖7表示實(shí)現(xiàn)低延遲傳輸?shù)腘oC的網(wǎng)絡(luò)結(jié)構(gòu)。在圖7的例子中,區(qū)分為對(duì)中繼處理進(jìn)行旁路的路徑和不進(jìn)行旁路的普通路徑。再有,也區(qū)分為僅收納低延遲請(qǐng)求水平高的通訊的存儲(chǔ)器和除此之外的存儲(chǔ)器來(lái)進(jìn)行記載。例如,作為僅收納低延遲請(qǐng)求水平比預(yù)先確定的水平還高的通訊的存儲(chǔ)器,也可以利用SRAM等在物理上高速的存儲(chǔ)器。作為收納低延遲請(qǐng)求水平不比預(yù)先確定的水平高的通訊的存儲(chǔ)器,也可以利用上述在物理上高速的存儲(chǔ)器以外的存儲(chǔ)器(例如DRAM等較低速的存儲(chǔ)器)。以后詳細(xì)說(shuō)明選擇要旁路的路徑的方法或者選擇收納低延遲請(qǐng)求水平高的通訊的存儲(chǔ)器的方法。另外,要旁路的路徑的設(shè)定并未被限制為圖中示出的例子,也可以在全部的中繼器中設(shè)定要旁路的路徑。再有,無(wú)需一定要設(shè)定請(qǐng)求低延遲的存儲(chǔ)器。圖8表示數(shù)據(jù)包60的傳輸格式的一例和將數(shù)據(jù)包60分割為多個(gè)微片的例子。數(shù)據(jù)包60具備標(biāo)題字段61、數(shù)據(jù)字段62以及控制碼字段63。在標(biāo)題字段61中,從附圖右側(cè)開始按照順序分別記述發(fā)送目標(biāo)的地址、發(fā)送源的地址、流ID、數(shù)據(jù)種類、低延遲請(qǐng)求水平(低延遲請(qǐng)求的類型)、表示振幅的信息。低延遲請(qǐng)求的類型的記述方法是任意的,但也可以用多值來(lái)表現(xiàn)。例如,向低延遲請(qǐng)求水平高且需要高響應(yīng)性的用戶接口的處理分配高的數(shù)值,向低延遲請(qǐng)求水平低且在背景處理中能夠?qū)?yīng)的影像的傳輸碼處理分配低的數(shù)值。在這些信息之后記述要傳輸?shù)臄?shù)據(jù)。在數(shù)據(jù)字段62中例如記述影像數(shù)據(jù)、聲音數(shù)據(jù)。在控制碼字段63中例如記述預(yù)先確定的數(shù)據(jù)包60的結(jié)束碼?;谏鲜鰳?biāo)題字段61的數(shù)據(jù)中的發(fā)送目標(biāo)的地址和發(fā)送源的地址,進(jìn)行數(shù)據(jù)包的中繼處理和接收側(cè)的接收處理。再有,基于低延遲請(qǐng)求的類型來(lái)決定傳輸路徑。發(fā)送側(cè)的總線主控器將數(shù)據(jù)包分解為被稱為“微片”的小的數(shù)據(jù)包單位后進(jìn)行傳輸。在接收側(cè)的存儲(chǔ)器中,基于結(jié)束碼,將被傳輸?shù)奈⑵匦聵?gòu)筑為數(shù)據(jù)包。如圖8的例子所示,微片的長(zhǎng)度也可以將記述發(fā)送目標(biāo)的地址、發(fā)送源的地址以及低延遲請(qǐng)求的類型的字段等、可以記述控制數(shù)據(jù)的長(zhǎng)度作為基準(zhǔn)。例如,1個(gè)數(shù)據(jù)包的尺寸為128字節(jié),1個(gè)微片的尺寸為32比特或64比特。其中, 1個(gè)數(shù)據(jù)包的尺寸以及1個(gè)微片的尺寸根據(jù)應(yīng)用程序而有所不同,因此請(qǐng)注意上述尺寸只不過(guò)是一例而已。圖9表示流經(jīng)NoC上的流(通訊)的特性例。準(zhǔn)備識(shí)別流的ID、識(shí)別數(shù)據(jù)種類的項(xiàng)目、表示低延遲傳輸請(qǐng)求程度的高低的項(xiàng)目 (在圖9的例子中,數(shù)值越低則請(qǐng)求越高)、表示通訊的特性的項(xiàng)目。在本實(shí)施方式中,將通訊的振幅作為通訊的特性來(lái)采用。所謂“通訊的振幅”表示通訊量的大小的時(shí)間性變動(dòng)幅度,表示相對(duì)于平均性振幅(通訊量)而言具有何種程度的偏離。例如,“士30%”表示相對(duì)于平均振幅而言有士30%的偏離。該數(shù)值越大,通訊的負(fù)荷變動(dòng)越高。上述數(shù)據(jù)種類、低延遲傳輸?shù)恼?qǐng)求的高低以及通訊的振幅信息也可以通過(guò)對(duì)在半導(dǎo)體設(shè)計(jì)時(shí)設(shè)想到的通訊進(jìn)行評(píng)價(jià)而事先掌握?;蛘?,在現(xiàn)實(shí)中,也可以鑒于用戶操作等在半導(dǎo)體設(shè)計(jì)時(shí)刻發(fā)生不能預(yù)見(jiàn)的通訊的事實(shí),在半導(dǎo)體的動(dòng)作時(shí)利用各中繼器來(lái)收集這些信息?;谠摿鞯奶匦裕院笫龅姆绞絹?lái)選擇傳輸路徑以及存儲(chǔ)器。圖10是表示延遲時(shí)間的收集與轉(zhuǎn)送的處理順序的流程圖。在步驟S401中,延遲時(shí)間處理部207參照連接關(guān)系數(shù)據(jù)庫(kù)208,掌握中繼器的連接關(guān)系。在步驟S402中,延遲時(shí)間處理部207判斷自身所屬的中繼器(以下記述為“自中繼器”)是否與總線主控器連接。若與總線主控器連接則處理進(jìn)入步驟S403,若未連接則處理進(jìn)入步驟S404。在步驟S403中,延遲時(shí)間處理部207收集直接連接于存儲(chǔ)器的所有中繼器的延遲時(shí)間的信息,并將該信息存儲(chǔ)在內(nèi)部。在步驟S404中,延遲時(shí)間處理部207判斷自中繼器是否與存儲(chǔ)器連接。若與存儲(chǔ)器連接則處理進(jìn)行步驟S405,若未連接則處理返回到步驟S401。在步驟S405中,延遲時(shí)間處理部207將自中繼器的接收部201中的處理延遲時(shí)間的信息發(fā)送到直接連接于總線主控器的全部中繼器。發(fā)送目標(biāo)是進(jìn)行過(guò)詢問(wèn)的路由器的地址或者預(yù)先確定的地址。與總線主控器連接的中繼器基于所獲得的延遲時(shí)間,來(lái)決定傳輸路徑與存儲(chǔ)器。延遲時(shí)間的信息既可以地定期地從上述中繼器發(fā)送,也可以從延遲時(shí)間處理部 207向上述中繼器發(fā)送請(qǐng)求,作為基于該請(qǐng)求的來(lái)自中繼器的響應(yīng)而被發(fā)送。延遲時(shí)間的信息既可以用接收部201中的數(shù)據(jù)的停滯時(shí)間來(lái)表現(xiàn),也可以用每單位時(shí)間內(nèi)處理過(guò)的數(shù)據(jù)包數(shù)來(lái)表現(xiàn)。另外,通過(guò)維數(shù)序路由等在NoC中安裝一般的路由或者在設(shè)計(jì)時(shí)定義向存儲(chǔ)器傳輸?shù)膫鬏斅窂奖晃ㄒ粵Q定的網(wǎng)絡(luò)結(jié)構(gòu)(例如,蝶狀)來(lái)選擇發(fā)送目標(biāo)的存儲(chǔ)器,從而可以唯一地決定路徑。通過(guò)收集與存儲(chǔ)器連接的中繼器的延遲時(shí)間的信息,從而能夠主要收集存儲(chǔ)器的存取負(fù)荷。上述傳輸延遲既可以在從總線主控器到存儲(chǔ)器的路徑上進(jìn)行。另外,也可以不僅收集延遲時(shí)間的信息,還收集振幅的值。如上所述,對(duì)在從總線主控器向存儲(chǔ)器傳輸數(shù)據(jù)時(shí),基于在連接于存儲(chǔ)器緊前面的中繼器的接收部201的接收狀態(tài)來(lái)收集延遲時(shí)間的方法進(jìn)行了說(shuō)明。通過(guò)從總線主控器向存儲(chǔ)器的數(shù)據(jù)傳輸請(qǐng)求,在從存儲(chǔ)器向總線主控器傳輸數(shù)據(jù)時(shí),基于連接于存儲(chǔ)器緊前面的中繼器的接收部202的接收狀態(tài)來(lái)收集延遲時(shí)間。由此,不僅是從總線主控器到存儲(chǔ)器的去路,就連從存儲(chǔ)器向總線主控器的回路也能進(jìn)行采用了延遲時(shí)間的存儲(chǔ)器與傳輸路徑的選擇。關(guān)于具體的選擇方法,將在后面敘述。雖然以從存儲(chǔ)器向總線主控器傳輸數(shù)據(jù)時(shí)的去路的說(shuō)明為中心,但是對(duì)于從存儲(chǔ)器向總線主控器的回路來(lái)說(shuō)也能采用相同的方法。另外,參照?qǐng)D13在后面敘述也包含中繼器中產(chǎn)生的傳輸延遲的存儲(chǔ)器與傳輸路徑的選擇方法的詳細(xì)內(nèi)容。圖11 (A)及(B)表示用于實(shí)現(xiàn)低延遲傳輸?shù)腘oC的構(gòu)成。圖Il(A)的例子是選擇存儲(chǔ)器的存取負(fù)荷值小的存儲(chǔ)器以及抵達(dá)該存儲(chǔ)器的傳輸路徑來(lái)傳輸通訊的、路徑選擇的例子。在圖11的例子中,測(cè)量到與總線主控器連接的中繼器組“X”以及連接于存儲(chǔ)器緊前面的中繼器組“Y”為止的傳輸延遲。而且,在與總線主控器連接的中繼器組X之間共享到各存儲(chǔ)器為止的傳輸延遲時(shí)間的信息。由延遲時(shí)間處理部 207保存?zhèn)鬏斞舆t時(shí)間的信息。而且,低延遲路徑選擇部210在發(fā)生了從總線主控器向存儲(chǔ)器的存取時(shí),基于所獲取到的傳輸延遲時(shí)間而分別決定存取目標(biāo)的存儲(chǔ)器與傳輸路徑。由此,能夠進(jìn)行主要反映了存儲(chǔ)器的存取負(fù)荷的存儲(chǔ)器與傳輸路徑的決定。此外,也可以利用在NoC領(lǐng)域內(nèi)連接一般的被稱為NIC(network interface controller)或NI (network interface)的總線主控器與NoC的網(wǎng)關(guān)、或者連接存儲(chǔ)器與 NoC的網(wǎng)關(guān)來(lái)構(gòu)成中繼器組“X”、中繼器組“Y”。再有,存取負(fù)荷也可以是各總線主控器針對(duì)各存儲(chǔ)器獨(dú)立地收集。在圖Il(B)的例子中,是在按照每個(gè)存儲(chǔ)器來(lái)設(shè)定相對(duì)的存取速度時(shí),根據(jù)低延遲請(qǐng)求水平的高低或者通訊的振幅等通訊特性對(duì)通訊進(jìn)行分類,然后選擇傳輸目標(biāo)的各存儲(chǔ)器以及傳輸路徑來(lái)傳輸通訊的路徑選擇的例子。例如,設(shè)想如相對(duì)高速的內(nèi)部存儲(chǔ)器 (例高速緩沖存儲(chǔ)器)和低速的外部存儲(chǔ)器(例DRAM)等,在物理上而言對(duì)存儲(chǔ)器的存取速度不同的存儲(chǔ)器結(jié)構(gòu)。而且,可以在低延遲請(qǐng)求水平高的通訊中使用高速存儲(chǔ)器,而在低延遲請(qǐng)求水平低的通訊中使用低速存儲(chǔ)器。只要在設(shè)計(jì)時(shí)決定在哪個(gè)存儲(chǔ)器中收納哪種低延遲請(qǐng)求水平的通訊即可。將低延遲請(qǐng)求水平高的通訊收納在高速存儲(chǔ)器中。因?yàn)閷?duì)高速存儲(chǔ)器的存取可以期待高的響應(yīng)性。另一方面,也可以將振幅的時(shí)間變化劇烈的通訊收納在低速存儲(chǔ)器中。通過(guò)集中振幅的時(shí)間變化劇烈的通訊,從而通訊的統(tǒng)計(jì)多樣效應(yīng)奏效,可以改善傳輸效率,也可以期待實(shí)現(xiàn)低延遲化。由此,能進(jìn)行考慮了通訊特性的存儲(chǔ)器與傳輸路徑的決定。以下,對(duì)將存儲(chǔ)器的存取負(fù)荷中產(chǎn)生的延遲、中繼器中產(chǎn)生的延遲以及通訊特性有機(jī)地建立關(guān)聯(lián)來(lái)選擇存儲(chǔ)器與傳輸路徑的方法進(jìn)行說(shuō)明。圖12是表示中繼器的處理順序的流程圖。中繼器從其他中繼器或總線主控器接收微片,依據(jù)以下的處理順序向存儲(chǔ)器或中繼器轉(zhuǎn)送微片。在步驟S801中,接收部201從其他中繼器或總線主控器接收以微片為單位的數(shù)據(jù)。在步驟S802中,數(shù)據(jù)包結(jié)構(gòu)分析部203從圖8所示的接收到的以微片為單位的數(shù)據(jù)串中讀取按照?qǐng)D9那樣定義的與低延遲傳輸?shù)恼?qǐng)求的強(qiáng)度相關(guān)的記述。在步驟S803中,低延遲路徑選擇部210判斷低延遲請(qǐng)求水平是否高。若判斷為低延遲請(qǐng)求水平高,則處理進(jìn)入步驟S804,若判斷為低延遲請(qǐng)求水平低,則處理進(jìn)入步驟S806。另外,在以2值表示低延遲請(qǐng)求水平的情況下,低延遲請(qǐng)求水平的高低是根據(jù)該值的大小來(lái)判斷的。再有,在以2值以外的值來(lái)表示的情況下,只要將預(yù)先確定的水平(延遲時(shí)間)作為基準(zhǔn)來(lái)判斷是否在該基準(zhǔn)以上即可。
在步驟S804中,低延遲路徑選擇部210收集各路徑的延遲時(shí)間(D)。其中,延遲時(shí)間的取得也可以始終與上述處理并行地實(shí)施。在設(shè)計(jì)上預(yù)先確定從總線主控器到一定的中繼器為止根據(jù)處理的不同利用哪條路徑。在本實(shí)施方式中,因?yàn)樵O(shè)有多個(gè)存儲(chǔ)器,所以除了上述在設(shè)計(jì)上預(yù)先確定的從總線主控器到一定的中繼器為止的路徑以外,還獲取從該中繼器到與各存儲(chǔ)器直接連接的中繼器為止的各路徑的延遲時(shí)間的信息。此外,雖然以在設(shè)計(jì)時(shí)確定路徑為例進(jìn)行了說(shuō)明,但這只是一例而已。除此以外, 還可以通過(guò)自適應(yīng)路由所代表的方法來(lái)動(dòng)態(tài)構(gòu)筑路徑信息。在通過(guò)基于自適應(yīng)路由的路由方法來(lái)實(shí)現(xiàn)的情況下,可以容易地對(duì)應(yīng)在設(shè)計(jì)時(shí)未曾設(shè)想到的負(fù)荷上升等狀況。在步驟S805中,低延遲路徑選擇部210選擇收納低延遲請(qǐng)求水平高的請(qǐng)求的存儲(chǔ)器(例如高速存儲(chǔ)器),選擇向該存儲(chǔ)器進(jìn)行傳輸?shù)难舆t時(shí)間最小的路徑。其中,在圖13中說(shuō)明路徑的具體選擇方法。在步驟S806中,低延遲路徑選擇部210從連接于存儲(chǔ)器緊前面的中繼器取得從與總線主控器連接的中繼器向各存儲(chǔ)器的各路徑(在圖15中描述路徑的詳細(xì)內(nèi)容)的通訊的振幅的信息。其中,獲取上述的通訊的振幅信息的中繼器也可以是路徑上的特定中繼器。 連接于存儲(chǔ)器緊前面的中繼器(也可以是路徑上的特定中繼器)測(cè)量所接收到的通訊的最低接收速率與最高接收速率,并將其差作為通訊的振幅。將該值與延遲時(shí)間一起從連接于存儲(chǔ)器緊前面的中繼器(也可以是路徑上的特定中繼器)向與總線主控器連接的中繼器發(fā)送。對(duì)計(jì)算出的振幅和從與總線主控器連接的中繼器發(fā)送的通訊的振幅(作為圖8所示的微片的振幅信息而獲得的)進(jìn)行比較,低延遲路徑選擇部210選擇收納低延遲請(qǐng)求水平不高的請(qǐng)求的存儲(chǔ)器(例如低速存儲(chǔ)器),并且選擇通訊的振幅相近的路徑。而且,在步驟 S808中,發(fā)送部基于步驟S805或S807的任一個(gè)步驟中選出的路徑來(lái)發(fā)送數(shù)據(jù)。圖13是表示圖12的步驟S805的處理的詳細(xì)順序的流程圖。在本實(shí)施方式中,為了選擇傳輸目標(biāo)的存儲(chǔ)器與傳輸路徑而定義了評(píng)價(jià)式。在該評(píng)價(jià)式中,不僅僅是主要反映了存儲(chǔ)器的存取負(fù)荷的參數(shù)、即“請(qǐng)求低延遲的通訊的延遲時(shí)間(D) ”,還考慮了對(duì)通過(guò)中繼器中的中繼處理而產(chǎn)生的延遲時(shí)間造成影響的“到成為對(duì)象的存儲(chǔ)器為止的中繼級(jí)數(shù)(H)”或者“成為傳輸對(duì)象的數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度(L) ”。由此,可以選擇傳輸目標(biāo)的存儲(chǔ)器與傳輸路徑。因此,在步驟S901中,首先從某一中繼器中收集請(qǐng)求低延遲的通訊的延遲時(shí)間 (D)、到成為對(duì)象的存儲(chǔ)器為止的中繼級(jí)數(shù)(H)、成為傳輸對(duì)象的數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度(L)的各
fn息ο對(duì)于主要反映了存儲(chǔ)器的存取負(fù)荷的參數(shù)、即請(qǐng)求低延遲的通訊的延遲時(shí)間(D) 而言,由圖5所示的延遲時(shí)間處理部207進(jìn)行收集。如圖Il(A)所示,與總線主控器連接的中繼器的延遲時(shí)間處理部207從與存儲(chǔ)器連接的中繼器收集延遲時(shí)間的信息。在與存儲(chǔ)器連接的中繼器中,例如將中繼器的接收部201中的數(shù)據(jù)包的殘留量、數(shù)據(jù)包的等待時(shí)間、該中繼器在該時(shí)刻的緩沖量等信息作為表示延遲時(shí)間(即存取負(fù)荷)的值來(lái)收集。再有,也可以將吞吐量(一定時(shí)間內(nèi)可以處理的數(shù)據(jù)量或傳輸速率)或者顫動(dòng)(數(shù)據(jù)包抵達(dá)間隔的搖擺)等表示傳輸效率或傳輸品質(zhì)的信息作為存儲(chǔ)器的存取負(fù)荷的值來(lái)使用。另外,與總線主控器連接的中繼器的延遲時(shí)間處理部207可以將與存儲(chǔ)器連接的中繼器的緩沖量、數(shù)據(jù)包的等待時(shí)間、吞吐量以及顫動(dòng)中的至少一個(gè)作為該存儲(chǔ)器的負(fù)荷值來(lái)利用?!暗匠蔀閷?duì)象的存儲(chǔ)器為止的中繼級(jí)數(shù)(H) ”是到成為對(duì)象的存儲(chǔ)器為止所存在的中繼器的個(gè)數(shù)。如上所述,中繼級(jí)數(shù)是在設(shè)計(jì)時(shí)通過(guò)總線主控器或存儲(chǔ)器的構(gòu)成方法而唯一地決定的。因此,只要向各中繼器提供到各存儲(chǔ)器為止的中繼級(jí)數(shù)的信息即可。或者,也可以考慮系統(tǒng)構(gòu)成的變更的容易度,然后預(yù)先將從各中繼器到各存儲(chǔ)器的與中繼級(jí)數(shù)相關(guān)的信息集中在系統(tǒng)上的1處,并讀取該信息?!俺蔀閭鬏攲?duì)象的數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度(L) ”是在設(shè)計(jì)時(shí)決定的數(shù)據(jù)。以在中繼器、總線主控器以及存儲(chǔ)器中進(jìn)行處理的基本單位、即在設(shè)計(jì)時(shí)決定的數(shù)據(jù)長(zhǎng)度來(lái)進(jìn)行數(shù)據(jù)的處理。也可以考慮系統(tǒng)構(gòu)成的變更的容易度,然后預(yù)先將從各中繼器到各存儲(chǔ)器的與中繼級(jí)數(shù)相關(guān)的信息集中在系統(tǒng)上的1處,并讀取該信息,其后使中繼器、總線主控器、存儲(chǔ)器各部動(dòng)作。除了“到成為對(duì)象的存儲(chǔ)器為止的中繼級(jí)數(shù)(H) ”、“成為傳輸對(duì)象的數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度(L) ”以外,還可以采用到成為對(duì)象的存儲(chǔ)器為止的傳輸路徑的總線寬度(W)。其中,在到成為對(duì)象的存儲(chǔ)器為止混合存在多種總線寬度的總線(例如,總線寬度為64比特的總線和總線寬度為1 比特的總線)的情況下,作為一例,也可以將總線寬度最窄的總線作為總線的評(píng)價(jià)值來(lái)采用。由此,可以將更適合的路徑選擇作為基準(zhǔn)來(lái)采用。也可以采用到成為對(duì)象的存儲(chǔ)器為止的傳輸路徑的總線頻帶(B)。另外,在到成為對(duì)象的存儲(chǔ)器為止混合存在多種總線頻帶的總線的情況下,例如通過(guò)將總線頻帶最小的總線作為總線的評(píng)價(jià)值來(lái)采用,由此可以作為更適合的路徑選擇的基準(zhǔn)??偩€頻帶例如可以用總線的動(dòng)作頻率、能夠?qū)Τ蔀閭鬏攲?duì)象的通訊進(jìn)行分配的總線的傳輸頻帶的任一個(gè)來(lái)表現(xiàn)。與上述處理同樣,也可以考慮系統(tǒng)構(gòu)成的變更的容易度,然后預(yù)先將從各中繼器到各存儲(chǔ)器的與中繼級(jí)數(shù)相關(guān)的信息集中在系統(tǒng)上的1處,并讀取該信息,其后使中繼器、 總線主控器、存儲(chǔ)器各部動(dòng)作。在步驟S902中,低延遲路徑選擇部203基于這些信息,對(duì)通過(guò)路徑選擇的計(jì)算
以及評(píng)價(jià)式算出的評(píng)價(jià)值進(jìn)行計(jì)算。而且,基于該評(píng)價(jià)值來(lái)決定轉(zhuǎn)送目標(biāo)。再有,也可以將到成為對(duì)象的存儲(chǔ)器為止的傳輸路徑的總線寬度(W)、到成為對(duì)象的存儲(chǔ)器為止的傳輸路徑的總線頻帶(B)也作為評(píng)價(jià)項(xiàng)目加入到評(píng)價(jià)式中,同樣進(jìn)行評(píng)價(jià)。此外,評(píng)價(jià)式也可以對(duì)H、L、D、W、B的各項(xiàng)加權(quán),通過(guò)可以將應(yīng)重視的項(xiàng)目明確化的評(píng)價(jià)式進(jìn)行評(píng)價(jià)。進(jìn)而,不僅是乘法運(yùn)算,也可以通過(guò)用加法運(yùn)算來(lái)構(gòu)筑數(shù)學(xué)式,從而能夠以運(yùn)算量少的評(píng)價(jià)式來(lái)構(gòu)筑評(píng)價(jià)功能。根據(jù)圖13的方法,能夠進(jìn)行不但包含存儲(chǔ)器的存取負(fù)荷、還包含由中繼器產(chǎn)生的傳輸延遲的存儲(chǔ)器與傳輸路徑的選擇。圖14表示成為存儲(chǔ)器與路徑的選擇基準(zhǔn)的評(píng)價(jià)值的具體例。作為計(jì)算評(píng)價(jià)值的參數(shù),采用從總線主控器到存儲(chǔ)器的中繼級(jí)數(shù)(H)、數(shù)據(jù)包的長(zhǎng)度(L)、從總線主控器到存儲(chǔ)器的傳輸延遲時(shí)間(D)。作為評(píng)價(jià)值的計(jì)算方法的具體例,考慮各參數(shù)數(shù)值的乘法運(yùn)算。
根據(jù)圖14的例子可以理解中繼級(jí)數(shù)越增加,則評(píng)價(jià)值變得越高(圖14的(1))。 再有,數(shù)據(jù)長(zhǎng)度越長(zhǎng),則評(píng)價(jià)值變得越高(圖14的O))。進(jìn)而,延遲時(shí)間越長(zhǎng),則評(píng)價(jià)值變得越高(圖14的(3))。在圖14的例子中可知評(píng)價(jià)值越高,則越是不能適于低延遲傳輸?shù)穆窂健;诒硎旧鲜龅牧鞯奶匦缘牡脱舆t請(qǐng)求水平的數(shù)值,來(lái)選擇符合所獲得的評(píng)價(jià)值的傳輸路徑與存儲(chǔ)器。其中,在設(shè)計(jì)時(shí)事先決定表示低延遲請(qǐng)求水平的數(shù)值與評(píng)價(jià)值的關(guān)系,在動(dòng)作時(shí)根據(jù)該關(guān)系來(lái)選擇傳輸路徑與存儲(chǔ)器。另外,在本實(shí)施方式說(shuō)明中,雖然用乘法運(yùn)算來(lái)構(gòu)筑評(píng)價(jià)式,但評(píng)價(jià)式也可以是加減運(yùn)算或乘法運(yùn)算。只要是可以算出與從總線主控器到存儲(chǔ)器的中繼級(jí)數(shù)(H)、數(shù)據(jù)包的長(zhǎng)度(L)、從總線主控器到存儲(chǔ)器的傳輸延遲時(shí)間(D)相應(yīng)的評(píng)價(jià)結(jié)果的評(píng)價(jià)式即可。再有, 無(wú)需采用所有的中繼級(jí)數(shù)(H)、數(shù)據(jù)包的長(zhǎng)度(L)、傳輸延遲時(shí)間(D)這些指標(biāo),只要利用1 個(gè)以上指標(biāo)來(lái)選擇存儲(chǔ)器與傳輸路徑即可。圖15表示基于成為存儲(chǔ)器與路徑的選擇基準(zhǔn)的評(píng)價(jià)值來(lái)選擇存儲(chǔ)器與路徑的具體例。是利用各中繼器來(lái)管理從總線主控器到存儲(chǔ)器為止的路徑的例子。在圖15的例子中示出中繼器(5)的路徑信息(從主控器2向各存儲(chǔ)器進(jìn)行傳輸用的傳輸路徑)。在圖 15的例子(主控器21中繼器(3) 1存儲(chǔ)器1)中,設(shè)置路徑,以便從主控器2經(jīng)由中繼器(1)然后到存儲(chǔ)器1。在中繼器( 中,針對(duì)所設(shè)定的各路徑來(lái)計(jì)算評(píng)價(jià)值,在需要進(jìn)行低延遲傳輸?shù)那闆r下,選擇評(píng)價(jià)值低的“主控器中繼器(3) ι存儲(chǔ)器1”的路徑。另一方面,在圖15的例子中,在設(shè)計(jì)時(shí)固定地決定了從總線主控器向存儲(chǔ)器的路由的情況下,可以抑制路由的安裝或芯片的耗電。通過(guò)實(shí)現(xiàn)采用該評(píng)價(jià)值的方法,從而能夠進(jìn)行考慮了存儲(chǔ)器存取的負(fù)荷以及在中繼器中發(fā)生的延遲雙方的存儲(chǔ)器與路徑的選擇。圖16(A)及(B)表示對(duì)去路與回路的評(píng)價(jià)值進(jìn)行綜合來(lái)決定存儲(chǔ)器與路徑的處理的例子。在圖16的例子中,作為評(píng)價(jià)式,利用中繼級(jí)數(shù)與傳輸延遲時(shí)間之積來(lái)計(jì)算評(píng)價(jià)值。在圖16中,省略了與數(shù)據(jù)包長(zhǎng)度相關(guān)的信息的記載。在圖16(A)的例子中,選擇在去路中評(píng)價(jià)值變小的路徑與存儲(chǔ)器,求取回路的評(píng)價(jià)值,以選擇存儲(chǔ)器與路徑。選擇從總線主控器1到存儲(chǔ)器1的路徑(中繼級(jí)數(shù)4級(jí) ’傳輸延遲時(shí)間40 ;評(píng)價(jià)值160)和從存儲(chǔ)器1到總線主控器4的路徑(中繼級(jí)數(shù)7級(jí);傳輸延遲時(shí)間80 ;評(píng)價(jià)值560)。在圖16(B)的例子中,按照去路與回路的評(píng)價(jià)值之和最小的方式來(lái)選擇存儲(chǔ)器與路徑。在僅考慮了去路的情況下,對(duì)存儲(chǔ)器1的存取變?yōu)樽疃?評(píng)價(jià)值160)。然而,若也考慮回路并使去路與回路的評(píng)價(jià)值之和變小,則不選擇存儲(chǔ)器1,而選擇存儲(chǔ)器2。即,選擇從總線主控器1到存儲(chǔ)器2的路徑(中繼級(jí)數(shù)5級(jí);傳輸延遲時(shí)間50 ;評(píng)價(jià)值250)和從存儲(chǔ)器2到總線主控器4的路徑(中繼級(jí)數(shù)6級(jí);傳輸延遲時(shí)間50 ;評(píng)價(jià)值300)。在去路與回路中,一般,被傳輸?shù)耐ㄓ嵉膬A向不同。例如,從主控器向存儲(chǔ)器傳輸數(shù)據(jù)的數(shù)據(jù)傳輸請(qǐng)求(控制數(shù)據(jù))中,大多低延遲請(qǐng)求水平高,而在與之對(duì)應(yīng)的從存儲(chǔ)器向總線主控器傳輸數(shù)據(jù)過(guò)程中,大多低延遲請(qǐng)求水平低。因此,認(rèn)為考慮了雙方評(píng)價(jià)值的做法比較容易進(jìn)行低延遲傳輸。圖17(A)表示對(duì)應(yīng)用程序所請(qǐng)求的傳輸延遲進(jìn)行區(qū)分的處理類型。
與圖17(A)相關(guān)聯(lián),對(duì)根據(jù)應(yīng)用程序所請(qǐng)求的傳輸延遲的特性差異來(lái)決定去路與路徑的方法進(jìn)行說(shuō)明。首先,為了對(duì)應(yīng)用程序所請(qǐng)求的傳輸延遲的特性差異進(jìn)行區(qū)分,定義處理類型。在此示出的例子中,具有2種處理類型。作為應(yīng)用程序,其中一個(gè)例如對(duì)應(yīng)于背景圖像的圖像處理等實(shí)時(shí)性低的處理(成批型處理),另外一個(gè)例如對(duì)應(yīng)于影像流動(dòng)這樣的低延遲請(qǐng)求水平高的圖像處理(實(shí)時(shí)型處理)。如圖17(A)所示,設(shè)想2種處理類型(成批型及實(shí)時(shí)型)。在為成批型處理的情況下,從作為處理請(qǐng)求源的總線主控器向作為處理目標(biāo)的存儲(chǔ)器實(shí)時(shí)地傳遞請(qǐng)求。另一方面,處理結(jié)果不保證(不需要)實(shí)時(shí)性。再有,在為實(shí)時(shí)型處理的情況下,作為處理請(qǐng)求源的總線主控器與作為處理目標(biāo)的存儲(chǔ)器之間的通信是以雙向方式實(shí)時(shí)地進(jìn)行通信的。圖17(B)表示在圖9所說(shuō)明的流的管理表中追加了上述處理類型的例子。通過(guò)對(duì)處理類型進(jìn)行區(qū)分,從而能夠進(jìn)行考慮了去路與回路的評(píng)價(jià)值差異的柔性的路徑與存儲(chǔ)器的選擇。在為實(shí)時(shí)型處理的情況下,如圖 17 (B)的例子所示,雖然需要對(duì)去路與回路進(jìn)行區(qū)分來(lái)計(jì)算評(píng)價(jià)值,但是在成批型處理的情況下,回路的響應(yīng)性不必較高,可以自由地設(shè)定路徑。既可以按照可以在圖8所示的數(shù)據(jù)包的標(biāo)題字段61中記述處理類型的識(shí)別符的方式進(jìn)行記述,也可以與表示低延遲請(qǐng)求水平的項(xiàng)目一并進(jìn)行記述。由此,基于應(yīng)用程序所請(qǐng)求的傳輸延遲的特性差異,能夠根據(jù)數(shù)據(jù)包的記述信息來(lái)決定去路與路徑。另外,在利用NoC來(lái)執(zhí)行多個(gè)應(yīng)用程序軟件的情況下,也可以按照該應(yīng)用程序來(lái)決定存儲(chǔ)器與傳輸路徑。而且,也可以針對(duì)各應(yīng)用程序的去路與路徑而設(shè)定各不相同的傳輸路徑。圖18是表示考慮了去路的路徑及存儲(chǔ)器的選擇方法的處理順序的流程圖?;趫D16(A)的利用例,對(duì)考慮處理類型差異的去路與路徑的決定方法進(jìn)行說(shuō)明。在步驟SlOOl中,低延遲路徑選擇部210從發(fā)送源的主控器S(在圖16的例子中為主控器1)的延遲時(shí)間處理部207收集收納有存儲(chǔ)器1 存儲(chǔ)器N的各中繼器的接收部 201中產(chǎn)生的延遲時(shí)間的信息。這是用于估計(jì)向存儲(chǔ)器1 存儲(chǔ)器N(在圖16的例子中為存儲(chǔ)器1 存儲(chǔ)器4)傳輸數(shù)據(jù)之際的處理負(fù)荷。主控器S的低延遲路徑選擇部210基于所收集到的延遲時(shí)間,以圖13所示的順序計(jì)算去路的評(píng)價(jià)值(步驟S1001)。在步驟S1002中,低延遲路徑選擇部210根據(jù)主控器S的數(shù)據(jù)包結(jié)構(gòu)分析部203 中的數(shù)據(jù)包的分析結(jié)果,判斷處理類型是否為“實(shí)時(shí)型”。在處理類型為實(shí)時(shí)型的情況下,處理進(jìn)入步驟S1003,在處理類型為成批型的情況下,處理進(jìn)入步驟S1005。在步驟S1005中,低延遲路徑選擇部210選擇向去路的評(píng)價(jià)值最小的存儲(chǔ)器的路徑。另一方面,在步驟S1003中,發(fā)送源的主控器S的延遲時(shí)間處理部207收集收納有存儲(chǔ)器1 存儲(chǔ)器N的各中繼器的接收部202中產(chǎn)生的延遲時(shí)間的信息。主控器S的低延遲路徑選擇部210基于所收集到的延遲時(shí)間,以圖13所示的順序計(jì)算回路的評(píng)價(jià)值(步驟 S1003)。在步驟S1004中,低延遲路徑選擇部210選擇去路與回路的評(píng)價(jià)值之和最小的路徑與存儲(chǔ)器的組合。圖19㈧及⑶表示考慮了去路與回路的差異的評(píng)價(jià)值的具體例?;趫D16(A)的利用例與圖5的中繼器的構(gòu)成進(jìn)行說(shuō)明。附圖的評(píng)價(jià)值計(jì)算中采用的評(píng)價(jià)式是基于中繼級(jí)數(shù)、數(shù)據(jù)長(zhǎng)度以及延遲時(shí)間,按照?qǐng)D13所示的順序來(lái)計(jì)算評(píng)價(jià)值的。以下,對(duì)各參數(shù)的取得、設(shè)定方法進(jìn)行說(shuō)明。中繼級(jí)數(shù)是在設(shè)計(jì)時(shí)通過(guò)決定網(wǎng)絡(luò)結(jié)構(gòu)(中繼器、總線主控器、存儲(chǔ)器的個(gè)數(shù)或配置)而唯一地決定的。數(shù)據(jù)長(zhǎng)度可以在設(shè)計(jì)時(shí)根據(jù)應(yīng)用程序或媒體的種類(例如影像或聲音等)來(lái)決定。延遲時(shí)間是以圖18所示的順序由中繼器的延遲時(shí)間處理部207來(lái)收集的。利用所獲得的參數(shù),以圖13說(shuō)明的方法, 在低延遲路徑選擇部210中計(jì)算評(píng)價(jià)值。在圖19(A)中示出去路的各參數(shù)與評(píng)價(jià)值,在圖 19(B)中示出回路的各參數(shù)與評(píng)價(jià)值。根據(jù)應(yīng)用程序所請(qǐng)求的傳輸品質(zhì)并利用這些表來(lái)選擇存儲(chǔ)器與傳輸路徑。圖19(A)表示在從主控器1向各存儲(chǔ)器傳輸數(shù)據(jù)包時(shí)相關(guān)的參數(shù)(中繼級(jí)數(shù)、數(shù)據(jù)長(zhǎng)度、延遲時(shí)間)與評(píng)價(jià)值。圖19(B)表示在從各存儲(chǔ)器向主控器4傳輸數(shù)據(jù)包時(shí)相關(guān)的參數(shù)(中繼級(jí)數(shù)、數(shù)據(jù)長(zhǎng)度、延遲時(shí)間)與評(píng)價(jià)值。在圖19的例子中,選擇去路與回路的評(píng)價(jià)值之和最小的路徑與存儲(chǔ)器的組合、即存儲(chǔ)器2。圖20是表示基于通訊特性的路徑的集中方法的處理順序的流程圖。作為存儲(chǔ)器與傳輸路徑的選擇方法,對(duì)基于利用通訊特性的路徑的集中的選擇方法進(jìn)行說(shuō)明。目前,設(shè)想以下例子同一應(yīng)用程序被不同的處理器分割并行處理,在處理器(總線主控器)之間經(jīng)由存儲(chǔ)器進(jìn)行數(shù)據(jù)的交換。在處理器之間同時(shí)發(fā)生了多個(gè)通訊的情況下,按照所有通訊采用同一存儲(chǔ)器的方式集中通訊的方法,在管理時(shí)間工夫的削減、性能保證方面可以期待產(chǎn)生效果。再有,作為通訊的特性,設(shè)想峰值變動(dòng)劇烈的通訊和單發(fā)式產(chǎn)生的通訊。與在同一路徑上傳輸這些通訊和固定速率的通訊的方法相比,對(duì)于僅區(qū)分為峰值變動(dòng)劇烈的通訊和單發(fā)式產(chǎn)生的通訊并對(duì)同種通訊進(jìn)行集中后在同一路徑上傳輸?shù)姆椒ǘ裕y(tǒng)計(jì)多樣效應(yīng)比較容易奏效。由此,可以容易地提高傳輸效率。對(duì)于通訊特性而言,在設(shè)計(jì)時(shí)如圖9所示按照每個(gè)通訊流賦予流ID,預(yù)先對(duì)數(shù)據(jù)種類、低延遲傳輸請(qǐng)求的強(qiáng)度、通訊的振幅大小進(jìn)行定義。另外,通訊的特性并不僅限于通訊的振幅,例如,也可以取代通訊的振幅,或者與通訊的振幅一起利用數(shù)據(jù)包尺寸或數(shù)據(jù)尺寸、通訊數(shù)據(jù)的抵達(dá)間隔、通訊數(shù)據(jù)的發(fā)送間隔進(jìn)行定義。通過(guò)采用這些信息,從而可以更加清楚通訊的類似性。在數(shù)據(jù)包中記述這些信息,從總線主控器進(jìn)行數(shù)據(jù)傳輸。在與總線主控器連接的中繼器(例如圖11的“X”)的數(shù)據(jù)包結(jié)構(gòu)分析部203中對(duì)這些信息進(jìn)行解釋,在低延遲路徑選擇部210中基于這些信息來(lái)選擇存儲(chǔ)器與傳輸路徑。參照?qǐng)D20來(lái)說(shuō)明低延遲路徑選擇部210的詳細(xì)動(dòng)作。首先,在步驟S1201中,低延遲路徑選擇部210判斷集中對(duì)象的通訊是否為同一對(duì)的總線主控器之間的通信?!巴粚?duì)的總線主控器之間的通信”是指在同一總線主控器中工作的應(yīng)用程序、即發(fā)送目標(biāo)的總線主控器相同的通信。若為同一對(duì)的總線主控器之間的通信,則處理進(jìn)入步驟S1203,否則處理進(jìn)入步驟S1202。
在步驟S1202中,判斷是否為峰值變動(dòng)劇烈的通訊或單發(fā)式產(chǎn)生的通訊。如果是這樣的通訊,則處理進(jìn)入步驟S1203,否則處理進(jìn)入步驟S1204。在步驟S1203中,低延遲路徑選擇部210搜索成為集中目標(biāo)的候補(bǔ)的路徑、存儲(chǔ)器。而且,搜索是否存在峰值變動(dòng)劇烈的通訊、單發(fā)式產(chǎn)生的通訊的通信。在沒(méi)有成為集中目標(biāo)的候補(bǔ)的路徑、存儲(chǔ)器的情況下,利用評(píng)價(jià)值來(lái)決定集中目標(biāo)的路徑、存儲(chǔ)器。在存在候補(bǔ)的情況下,在步驟S1204中低延遲路徑選擇部210求取集中目標(biāo)的候補(bǔ)的評(píng)價(jià)值,并判斷作為集中目標(biāo)是否妥當(dāng),以決定轉(zhuǎn)送目標(biāo)。作為上述實(shí)現(xiàn)方法,雖然也考慮在半導(dǎo)體中實(shí)時(shí)地執(zhí)行的方法,但也可以事先模擬通訊并將仿真結(jié)果安裝在半導(dǎo)體上。例如,也可以判斷將哪個(gè)應(yīng)用程序的通訊作為集中對(duì)象,還判斷使哪種程度振幅的通訊彼此集中等,在半導(dǎo)體上安裝決定了集中目標(biāo)的結(jié)果。本申請(qǐng)發(fā)明并不是僅僅可以安裝在芯片(NoC)上,也可以作為用于安裝到芯片上且進(jìn)行設(shè)計(jì)及驗(yàn)證的仿真程序來(lái)實(shí)施。這種仿真程序是通過(guò)計(jì)算機(jī)來(lái)執(zhí)行的。在本實(shí)施方式中,圖4所示的各構(gòu)成要素可以作為仿真程序上的被目標(biāo)化的等級(jí)來(lái)安裝。各等級(jí)是通過(guò)讀取預(yù)先確定的仿真方案而在計(jì)算機(jī)上實(shí)現(xiàn)與上述實(shí)施方式的各構(gòu)成要素對(duì)應(yīng)的動(dòng)作的。換言之,與各構(gòu)成要素對(duì)應(yīng)的動(dòng)作作為計(jì)算機(jī)的處理步驟而被串行或并行地執(zhí)行。作為總線主控器而被安裝的等級(jí)是通過(guò)讀取由仿真器定義的仿真方案來(lái)決定假設(shè)性地向中繼器的等級(jí)發(fā)送數(shù)據(jù)包的定時(shí)等條件的。而且,對(duì)各路徑中的發(fā)送狀態(tài)以及本實(shí)施方式的處理進(jìn)行仿真,進(jìn)行決定存儲(chǔ)器及發(fā)送路徑的動(dòng)作。作為總線主控器而被安裝的等級(jí)在仿真方案所記述的仿真的結(jié)束條件成立之前的期間內(nèi)進(jìn)行動(dòng)作,計(jì)算動(dòng)作中的吞吐量或等待時(shí)間、總線的流量的變動(dòng)形式、動(dòng)作頻率、 耗電的估計(jì)值等并提供給程序的利用者?;谶@些信息,程序的利用者進(jìn)行拓?fù)浠蛐阅艿脑u(píng)價(jià),進(jìn)行設(shè)計(jì)及驗(yàn)證。例如,一般在仿真方案的各行中記述發(fā)送源總線主控器的ID、發(fā)送目標(biāo)總線主控器或存儲(chǔ)器的ID、要發(fā)送的數(shù)據(jù)包或微片的尺寸、要發(fā)送的定時(shí)等信息。再有,通過(guò)以成批處理的方式評(píng)價(jià)多個(gè)仿真方案,從而可以有效地驗(yàn)證是否在所設(shè)想的所有方案中都能保證所希望的性能。還有,通過(guò)使總線的拓?fù)浠蚬?jié)點(diǎn)數(shù)、處理器或DSP、存儲(chǔ)器、外部IO的配置變化來(lái)進(jìn)行性能比較,從而也能夠確定最適于仿真方案的網(wǎng)構(gòu)成?;诒緦?shí)施方式的構(gòu)成也能適用于本形態(tài)的設(shè)計(jì)及驗(yàn)證工具。本申請(qǐng)發(fā)明即使在作為設(shè)計(jì)及驗(yàn)證工具來(lái)實(shí)施時(shí)也能被采用。另外,上述的“節(jié)點(diǎn)”是包含處理器或DSP等總線主控器及存儲(chǔ)器的概念。一般而言,中繼器(路由器)被分類為節(jié)點(diǎn)的一部分。然而在本申請(qǐng)說(shuō)明書中,中繼器也可以不包含在節(jié)點(diǎn)中。基于本發(fā)明的中繼器能夠利用于在總線主控器及存儲(chǔ)器等多個(gè)節(jié)點(diǎn)之間傳輸數(shù)據(jù)的半導(dǎo)體系統(tǒng)中。結(jié)果,更一般化為如下所述。在本發(fā)明的實(shí)施方式中,構(gòu)筑以下半導(dǎo)體系統(tǒng)經(jīng)由被網(wǎng)絡(luò)化的通信總線來(lái)連接某個(gè)第一節(jié)點(diǎn)、與第一節(jié)點(diǎn)連接的中繼器以及多個(gè)第二節(jié)點(diǎn)。 中繼器的低延遲路徑選擇部從多個(gè)第二節(jié)點(diǎn)的各第二節(jié)點(diǎn)以及多條傳輸路徑的各傳輸路徑的組合中,基于各第二節(jié)點(diǎn)的負(fù)荷值的信息以及各傳輸路徑的負(fù)荷值的信息來(lái)選擇1組第二節(jié)點(diǎn)與傳輸路徑。結(jié)果,中繼器能夠利用所選擇的傳輸路徑向被選出的第二節(jié)點(diǎn)中繼數(shù)據(jù)。
此外,也有時(shí)優(yōu)選將中繼器作為節(jié)點(diǎn)來(lái)對(duì)待。例如一般在使系統(tǒng)LSI大規(guī)模化的情況下,大多將系統(tǒng)LSI分割為多個(gè)網(wǎng)絡(luò)。為了相互連接這樣的多個(gè)網(wǎng)絡(luò),采用也被稱為 “網(wǎng)關(guān)”的中繼器。若著眼于與該中繼器直接連接的網(wǎng)絡(luò),則該中繼器具有向該網(wǎng)絡(luò)發(fā)送數(shù)據(jù)并從該網(wǎng)絡(luò)接收數(shù)據(jù)的功能。這是與上述總線主控器或存儲(chǔ)器同等的功能。因此,在上述例子的情況下,也可以將該中繼器作為“節(jié)點(diǎn),,來(lái)對(duì)待。工業(yè)上的可利用性本發(fā)明涉及的低延遲傳輸裝置可以利用于系統(tǒng)LSI上的數(shù)據(jù)傳輸。更具體的是, 作為本發(fā)明的典型用途,設(shè)想從處理器、I/O等總線主控器向存儲(chǔ)器進(jìn)行存取的系統(tǒng)LSI。 其中,本發(fā)明并未限于從處理器向存儲(chǔ)器進(jìn)行存取的用途。也可以取代存儲(chǔ)器,在多個(gè)處理器或DSP之間利用多核處理器或圖形處理器。再有,也能用作仿真程序。符號(hào)說(shuō)明201、202 接收部203數(shù)據(jù)包結(jié)構(gòu)分析部204數(shù)據(jù)包結(jié)構(gòu)分析部205、206 發(fā)送部207延遲時(shí)間處理部208連接關(guān)系數(shù)據(jù)庫(kù)209路徑信息部210低延遲路徑選擇部2001總線主控器2002 中繼器2003 存儲(chǔ)器
權(quán)利要求
1.一種半導(dǎo)體系統(tǒng),具備至少一個(gè)第一節(jié)點(diǎn);多個(gè)第二節(jié)點(diǎn);以及中繼器,其經(jīng)由被網(wǎng)絡(luò)化的通信總線對(duì)從至少一個(gè)所述第一節(jié)點(diǎn)發(fā)送來(lái)的數(shù)據(jù)進(jìn)行中繼,并向多個(gè)所述第二節(jié)點(diǎn)的一個(gè)第二節(jié)點(diǎn)進(jìn)行傳輸,所述中繼器與至少一個(gè)所述第一節(jié)點(diǎn)連接,所述中繼器具備低延遲路徑選擇部,該低延遲路徑選擇部從多個(gè)所述第二節(jié)點(diǎn)的各第二節(jié)點(diǎn)以及多條傳輸路徑的各傳輸路徑的組合中,基于各第二節(jié)點(diǎn)的負(fù)荷值的信息以及各傳輸路徑的負(fù)荷值的信息來(lái)選擇1組第二節(jié)點(diǎn)與傳輸路徑,所述中繼器利用由所述低延遲路徑選擇部選出的傳輸路徑,向所選出的第二節(jié)點(diǎn)中繼所述數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的半導(dǎo)體系統(tǒng),其中,作為所述第二節(jié)點(diǎn)的負(fù)荷值,所述低延遲路徑選擇部利用所述第二節(jié)點(diǎn)緊前面的中繼器的緩沖量、數(shù)據(jù)包的等待時(shí)間、吞吐量以及顫動(dòng)中的至少一個(gè)。
3.根據(jù)權(quán)利要求1所述的半導(dǎo)體系統(tǒng),其中,作為所述傳輸路徑的負(fù)荷值,所述低延遲路徑選擇部利用中繼級(jí)數(shù)、數(shù)據(jù)長(zhǎng)度、總線寬度、總線頻帶中的至少一個(gè)。
4.根據(jù)權(quán)利要求1所述的半導(dǎo)體系統(tǒng),其中,所述低延遲路徑選擇部選擇至少一個(gè)所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)之間的與去路相關(guān)的評(píng)價(jià)值和與回路相關(guān)的評(píng)價(jià)值之和最小的所述第二節(jié)點(diǎn)以及傳輸路徑。
5.根據(jù)權(quán)利要求1所述的半導(dǎo)體系統(tǒng),其中,所述低延遲路徑選擇部將峰值變動(dòng)劇烈的單發(fā)式的通訊優(yōu)先集中在同一傳輸路徑或所述第二節(jié)點(diǎn)上。
6.根據(jù)權(quán)利要求1所述的半導(dǎo)體系統(tǒng),其中,多個(gè)所述第二節(jié)點(diǎn)包括存儲(chǔ)器、處理器、數(shù)字信號(hào)處理器中的至少一個(gè)。
7.根據(jù)權(quán)利要求1所述的半導(dǎo)體系統(tǒng),其中,多個(gè)所述第二節(jié)點(diǎn)包括連接多個(gè)網(wǎng)絡(luò)之間的中繼器。
8.—種中繼器,在總線主控器與存儲(chǔ)器之間使數(shù)據(jù)在被網(wǎng)絡(luò)化的通信總線上進(jìn)行傳輸,該中繼器包括延遲時(shí)間處理部,其獲取存在于發(fā)送所述數(shù)據(jù)的多條傳輸路徑上的其他中繼器中的處理延遲時(shí)間的信息;和低延遲路徑選擇部,其基于所獲取到的與多條所述傳輸路徑相關(guān)的處理延遲時(shí)間的信息,選擇存儲(chǔ)器以及多條所述傳輸路徑中的向所述存儲(chǔ)器進(jìn)行傳輸?shù)膫鬏斅窂降囊粭l傳輸路徑。
9.根據(jù)權(quán)利要求8所述的中繼器,其中,所述低延遲路徑選擇部基于所獲取到的與多條所述傳輸路徑相關(guān)的處理延遲時(shí)間的信息,選擇存取速度不同的多種存儲(chǔ)器中的存取速度相對(duì)高的存儲(chǔ)器以及向所述存儲(chǔ)器進(jìn)行傳輸?shù)难舆t時(shí)間最小的傳輸路徑。
10.根據(jù)權(quán)利要求9所述的中繼器,其中,在表示所述數(shù)據(jù)的低延遲請(qǐng)求水平的信息是表示未超過(guò)預(yù)先確定的延遲時(shí)間的水平的情況下,所述低延遲路徑選擇部基于多條所述傳輸路徑各自所流通的通訊的振幅、數(shù)據(jù)包尺寸、數(shù)據(jù)尺寸、發(fā)送間隔中的至少一個(gè)信息,選擇所述存取速度相對(duì)高的存儲(chǔ)器以及向所述存儲(chǔ)器進(jìn)行傳輸?shù)难舆t時(shí)間最小的傳輸路徑。
11.根據(jù)權(quán)利要求10所述的中繼器,其中,所述低延遲路徑選擇部選擇多種所述存儲(chǔ)器中的存取速度相對(duì)低的存儲(chǔ)器,并基于向所述存儲(chǔ)器進(jìn)行傳輸?shù)膫鬏斅窂降耐ㄓ嵉恼穹?shù)據(jù)包尺寸、數(shù)據(jù)尺寸、發(fā)送間隔中的至少一個(gè)信息的大小來(lái)選擇向所述存儲(chǔ)器進(jìn)行傳輸?shù)膫鬏斅窂健?br>
12.根據(jù)權(quán)利要求8所述的中繼器,其中,所述中繼器還包括接收所述數(shù)據(jù)的接收部;以及發(fā)送所述處理延遲時(shí)間的信息的發(fā)送部,在所述中繼器與多種所述存儲(chǔ)器中的任意一種存儲(chǔ)器連接的情況下,所述延遲時(shí)間處理部經(jīng)由所述發(fā)送部將所述接收部中的所述處理延遲時(shí)間的信息向其他中繼器轉(zhuǎn)送。
13.根據(jù)權(quán)利要求8所述的中繼器,其中,所述中繼器還包括接收所述處理延遲時(shí)間的信息的接收部,在所述中繼器與所述總線主控器連接的情況下,所述延遲時(shí)間處理部經(jīng)由所述接收部來(lái)收集所述其他中繼器中的所述處理延遲時(shí)間的信息。
14.根據(jù)權(quán)利要求8所述的中繼器,其中,所述低延遲路徑選擇部根據(jù)利用請(qǐng)求低延遲的通訊的延遲時(shí)間、中繼級(jí)數(shù)、所述傳輸單位的數(shù)據(jù)長(zhǎng)度中的至少一個(gè)以上而生成的評(píng)價(jià)值,選擇存儲(chǔ)器以及多條所述傳輸路徑中的向所述存儲(chǔ)器進(jìn)行傳輸?shù)囊粭l傳輸路徑。
15.根據(jù)權(quán)利要求14所述的中繼器,其中,所述低延遲路徑選擇部選擇總線主控器與存儲(chǔ)器之間的與去路相關(guān)的評(píng)價(jià)值和與回路相關(guān)的評(píng)價(jià)值之和成為最小值的存儲(chǔ)器以及傳輸路徑。
16.根據(jù)權(quán)利要求8所述的中繼器,其中,在同一對(duì)的總線主控器之間傳輸數(shù)據(jù)的情況下,所述低延遲路徑選擇部選擇同一存儲(chǔ)器以及傳輸路徑。
17.根據(jù)權(quán)利要求8所述的中繼器,其中,所述低延遲路徑選擇部根據(jù)是否為峰值變動(dòng)以及是否為單發(fā)式的通訊,來(lái)選擇同一存儲(chǔ)器及傳輸路徑。
18.根據(jù)權(quán)利要求8所述的中繼器,其中,在表示所述低延遲請(qǐng)求水平的信息是表示在預(yù)先確定的延遲時(shí)間以上的水平的情況下,所述延遲時(shí)間處理部獲取與多條所述傳輸路徑相關(guān)的處理延遲時(shí)間的信息。
19.一種芯片電路,包括至少一個(gè)總線主控器;至少一個(gè)存儲(chǔ)器;以及權(quán)利要求8所述的中繼器,其在至少一個(gè)所述總線主控器以及至少一個(gè)所述存儲(chǔ)器之間的被網(wǎng)絡(luò)化的通信總線上設(shè)置有多個(gè)。
20.根據(jù)權(quán)利要求19所述的芯片電路,其中, 在利用至少一個(gè)所述總線主控器來(lái)執(zhí)行多個(gè)應(yīng)用程序軟件的情況下, 所述低延遲路徑選擇部按照每個(gè)應(yīng)用程序軟件,選擇各應(yīng)用程序軟件利用的至少一個(gè)所述存儲(chǔ)器以及多條所述傳輸路徑的一條傳輸路徑。
全文摘要
本發(fā)明提供一種半導(dǎo)體系統(tǒng)、中繼器及芯片電路。中繼器在總線主控器與存儲(chǔ)器之間使數(shù)據(jù)在被網(wǎng)絡(luò)化的通信總線上進(jìn)行傳輸。該中繼器包括延遲時(shí)間處理部,其獲取存在于發(fā)送數(shù)據(jù)的多條傳輸路徑上的其他中繼器中的處理延遲時(shí)間的信息;和低延遲路徑選擇部,其基于所獲取到的與多條傳輸路徑相關(guān)的處理延遲時(shí)間的信息,選擇存儲(chǔ)器以及多條傳輸路徑中的向存儲(chǔ)器進(jìn)行傳輸?shù)囊粭l傳輸路徑。由此,可以實(shí)現(xiàn)考慮了通訊特性差異以及時(shí)刻變化的存儲(chǔ)器的存取負(fù)荷的、更高效率且低延遲的網(wǎng)絡(luò)傳輸。
文檔編號(hào)H04L12/56GK102474468SQ20118000256
公開日2012年5月23日 申請(qǐng)日期2011年1月19日 優(yōu)先權(quán)日2010年1月25日
發(fā)明者吉田篤, 山口孝雄, 石井友規(guī) 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社