国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法及路由單元與流程

      文檔序號:11732040閱讀:252來源:國知局
      一種基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法及路由單元與流程

      本發(fā)明涉及微處理器片上網(wǎng)絡(luò)傳輸技術(shù)領(lǐng)域,尤其涉及一種基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法及路由單元。



      背景技術(shù):

      隨著現(xiàn)代科技的發(fā)展,片上網(wǎng)絡(luò)的結(jié)構(gòu)逐漸成為超大規(guī)模集成電路設(shè)計的熱門結(jié)構(gòu),但這種結(jié)構(gòu)在增加性能的同時也產(chǎn)生了大量溫度問題,包括為了提高傳輸效率減小了全局互連線的長度,以及以更低的功耗提供了更大的帶寬、互連線的縮短和流量的增加加快了熱量的產(chǎn)生等;同時,由于面積和時序的約束問題,眾核的排列變得更加緊密,塊堆疊使得散熱更加困難,同時3d-noc結(jié)構(gòu)使得不同核的熱消散路徑也不相同,一般的設(shè)計中是將散熱層置于最底層,因此底層的散熱相對較好,而頂層的散熱最為困難。

      溫度的增加會進一步加大芯片的功耗,進而又增加溫度,造成惡性循環(huán)影響整體的性能,當(dāng)溫度到達一定程度后甚至?xí)斐尚酒豢赡娴膿p壞,因此需要對溫度進行控制。溫控的方法除了基本的動態(tài)溫度管理外還可以采用各種路由算法,常規(guī)的路由算法主要是降低溫度增長速度或讓整體的溫度趨于平衡,便于使用各種動態(tài)溫度管理措施。目前的路由方法主要分為維序路由和自適應(yīng)路由兩種,其中維序路由使用最為頻繁、廣泛,該類路由結(jié)構(gòu)簡單,并且不存在死鎖的可能,但是減少了路由的多樣性,同時在發(fā)生擁塞或過熱的情況時很難進行規(guī)避,因此會造成局部的擁塞或熱點及路徑延遲的增加;自適應(yīng)路由可以根據(jù)不同的參數(shù)選擇不同的路徑,繞過擁塞或過熱的區(qū)域,增加路徑的多樣性,使整體的溫度趨于平衡,減少擁塞并增大吞吐率,但是路徑的計算比較復(fù)雜,且存在增加局部路徑長度及造成死鎖的情況。

      針對于路由方式目前主要分為整體路由和水平路由兩種情況,整體路由是在垂直方向上使用和水平方向上同樣的路由方法,即對東南西北上下六個方向的選擇是基于同樣的路由算法,這種情況會造成在垂直方向上很大的資源浪費,由于散熱層在整個3d架構(gòu)的最底層,考慮到散熱問題,一般垂直堆疊的層數(shù)為3~5層,而水平網(wǎng)絡(luò)卻要大的多,因此垂直方向可以采用簡單的方法進行層數(shù)的選擇以減小計算復(fù)雜度與資源的浪費,而在水平方向上采用復(fù)雜的自適應(yīng)路由以增大吞吐量及路徑的多樣性。有從業(yè)者提出在底層完成大部分水平傳輸以降低溫度,但同時會增加擁塞且增大路徑長度。

      目前片上網(wǎng)絡(luò)傳輸中,通常是采用在達到擁塞前將所有的傳輸在底層進行固定的先水平再垂直或先垂直再水平傳輸?shù)木S序路由方式,使得過多在底層傳輸導(dǎo)致?lián)砣疫^多垂直傳輸導(dǎo)致延遲增大,如源節(jié)點和目的節(jié)點均在頂層時,采用上述路由方式向下路由,則增加了大量冗余的垂直方向的傳輸,使傳輸路徑長度大大增加,既增加了延遲又增加了底部的負擔(dān);又如源節(jié)點在低層、目的節(jié)點在頂層,采用上述路由方式先垂直再水平傳輸,則會出現(xiàn)在頂層傳輸,使得頂層散熱路徑長,導(dǎo)致溫度過高的問題。



      技術(shù)實現(xiàn)要素:

      本發(fā)明要解決的技術(shù)問題就在于:針對現(xiàn)有技術(shù)存在的技術(shù)問題,本發(fā)明提供一種具有實現(xiàn)方法簡單、傳輸時間少、能夠避免傳輸擁塞,同時實現(xiàn)溫度控制、傳輸靈活的基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法,以及結(jié)構(gòu)簡單、面積和功耗小、路由傳輸高效且能夠?qū)崿F(xiàn)溫度控制的路由單元。

      為解決上述技術(shù)問題,本發(fā)明提出的技術(shù)方案為:

      一種基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法,所述路由方法包括當(dāng)從源節(jié)點傳輸數(shù)據(jù)至目的節(jié)點時,每次根據(jù)傳輸數(shù)據(jù)的當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間的關(guān)系確定下一個傳輸節(jié)點的方向,使得當(dāng)源節(jié)點在目的節(jié)點的上層位置時,從源節(jié)點先按垂直方向傳輸再按水平方向傳輸至目的節(jié)點,以及當(dāng)源節(jié)點在目的節(jié)點的下層位置時,從源節(jié)點先按水平方向傳輸再按垂直方向傳輸至目的節(jié)點,以及當(dāng)源節(jié)點與目的節(jié)點處于同層時,從源節(jié)點直接按水平方向傳輸至目的節(jié)點。

      作為本發(fā)明方法的進一步改進:所述當(dāng)源節(jié)點在目的節(jié)點的上層位置時,具體使得從源節(jié)點位置按垂直方向傳輸至目的節(jié)點所在層,再在目的節(jié)點所在層按水平方向傳輸至目的節(jié)點;所述當(dāng)源節(jié)點在目的節(jié)點的下層位置時,具體使得在源節(jié)點所在層從源節(jié)點位置按水平方向傳輸至目的節(jié)點所在列,在目的節(jié)點所在列按垂直方向傳輸至目的節(jié)點。

      作為本發(fā)明方法的進一步改進:每次所述確定下一個傳輸節(jié)點的方向的具體步驟為:

      s1.判斷當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置的z坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向下一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)加1以進行更新;如果不是,轉(zhuǎn)入執(zhí)行步驟s2;

      s2.判斷當(dāng)前節(jié)點坐標(biāo)位置的x、y坐標(biāo)是否等于目的節(jié)點坐標(biāo)位置的x、y坐標(biāo),如果不是,在當(dāng)前層根據(jù)當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間x、y坐標(biāo)大小關(guān)系確定下一個傳輸節(jié)點的方向,并更新當(dāng)前節(jié)點坐標(biāo)位置;如果是,轉(zhuǎn)入執(zhí)行步驟s3;

      s3.比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間z坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向上一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)減1以進行更新;如果相等則退出,完成路由過程。

      作為本發(fā)明方法的進一步改進,所述步驟s2的具體步驟為:

      s21.判斷當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置之間x坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向東方向作為下一個傳輸節(jié)點方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)加1以進行更新;否則轉(zhuǎn)入執(zhí)行步驟s22;

      s22.比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間y坐標(biāo)的大小,如果小于,取當(dāng)前傳輸節(jié)點所在層的向南方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)加1以進行更新;如果大于,取當(dāng)前傳輸節(jié)點所在層的向北方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)減1以進行更新;如果相等,轉(zhuǎn)入執(zhí)行步驟s23;

      s23.比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間x坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向西方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)減1以進行更新;如果相等,轉(zhuǎn)入執(zhí)行步驟s3。

      本發(fā)明進一步公開一種用于實現(xiàn)上述基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法的路由單元,片上網(wǎng)絡(luò)中每個節(jié)點配置有所述路由單元進行數(shù)據(jù)傳輸,所述路由單元包括相互連接的輸入輸出接口單元、輸入輸出選擇單元以及用于確定下一個傳輸節(jié)點方向的方向計算單元,片上網(wǎng)絡(luò)中各個方向的所述路由單元通過所述輸入輸出接口單元連接;

      所述輸入輸出接口單元接收各傳輸方向的傳輸請求、傳輸數(shù)據(jù)以及所傳輸數(shù)據(jù)的當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置,所述輸入輸出選擇單元根據(jù)接收到的所述傳輸請求,從所述輸入輸出接口單元中對應(yīng)輸入接口接入目標(biāo)傳輸數(shù)據(jù)、所述目標(biāo)傳輸數(shù)據(jù)對應(yīng)的當(dāng)前節(jié)點坐標(biāo)位置及目的節(jié)點坐標(biāo)位置,經(jīng)過所述方向計算單元確定得到下一個傳輸節(jié)點的方向,通過所述輸入輸出接口單元中對應(yīng)輸出接口輸出目標(biāo)傳輸請求、目標(biāo)傳輸數(shù)據(jù)以及對應(yīng)的當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置。

      作為本發(fā)明路由單元的進一步改進:所述輸入輸出接口單元包括輸入接口、輸出接口,所述輸入接口包括傳輸請求輸入接口、傳輸數(shù)據(jù)輸入接口,以及對應(yīng)各傳輸方向的當(dāng)前節(jié)點坐標(biāo)位置輸入接口、目標(biāo)節(jié)點坐標(biāo)位置輸入接口,所述輸出接口包括傳輸請求輸出接口、傳輸數(shù)據(jù)輸出接口,以及對應(yīng)各傳輸方向的當(dāng)前節(jié)點坐標(biāo)位置輸出接口、目標(biāo)節(jié)點坐標(biāo)位置輸出接口;所述傳輸方向包括本層向北方向、本層向南方向、本層向西方向、本層向東方向、向上層方向以及向下層方向。

      作為本發(fā)明路由單元的進一步改進:所述輸入輸出選擇單元包括輸入選擇模塊、輸出選擇模塊,所述輸入選擇模塊輸入各個傳輸方向的傳輸請求、傳輸數(shù)據(jù)以及通過各所述輸入接口接入的各組當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置,輸出對應(yīng)所述傳輸請求中傳輸方向有效的一組當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置,所述傳輸請求由對應(yīng)各個傳輸方向的傳輸請求是否有效的標(biāo)識構(gòu)成;所述輸出選擇模塊接入所述方向計算單元輸出的下一個傳輸節(jié)點的方向、更新后當(dāng)前節(jié)點坐標(biāo)位置,輸出目標(biāo)傳輸請求、目標(biāo)傳輸數(shù)據(jù)、更新后當(dāng)前節(jié)點坐標(biāo)位置以及目的節(jié)點坐標(biāo)位置至對應(yīng)輸出接口。

      作為本發(fā)明路由單元的進一步改進,所述方向計算單元包括:

      第一計算單元,用于判斷當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置的z坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向下一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)加1以進行更新;如果不是,轉(zhuǎn)入執(zhí)行第二計算單元;

      第二計算單元,用于判斷當(dāng)前節(jié)點坐標(biāo)位置的x、y坐標(biāo)是否等于目的節(jié)點坐標(biāo)位置的x、y坐標(biāo),如果不是,在當(dāng)前層根據(jù)當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間x、y坐標(biāo)大小關(guān)系確定下一個傳輸節(jié)點的方向,并更新當(dāng)前節(jié)點坐標(biāo)位置;如果是,轉(zhuǎn)入執(zhí)行第三計算單元;

      第三計算單元,用于比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間z坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向上一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)減1以進行更新;如果相等則退出,完成路由傳輸過程。

      作為本發(fā)明路由單元的進一步改進,所述第二計算單元具體包括:

      第一x方向計算單元,用于判斷當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置之間x坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向東方向作為下一個傳輸節(jié)點方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)加1以進行更新;否則轉(zhuǎn)入執(zhí)行y方向計算單元;

      y方向計算單元,用于比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間y坐標(biāo)的大小,如果小于,取當(dāng)前傳輸節(jié)點所在層的向南方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)加1以進行更新;如果大于,取當(dāng)前傳輸節(jié)點所在層的向北方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)減1以進行更新;如果相等,轉(zhuǎn)入執(zhí)行第二x方向計算單元;

      第二x方向計算單元,比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間x坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向西方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)減1以進行更新;如果相等,轉(zhuǎn)入執(zhí)行所述第三計算單元。

      與現(xiàn)有技術(shù)相比,本發(fā)明基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法的優(yōu)點在于:

      1)本發(fā)明基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法,綜合考慮靠近散熱層和減小傳輸路徑長度問題,通過比較當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間的關(guān)系來進行傳輸,同層節(jié)點間的傳輸時直接水平傳輸,無需先垂直傳輸;由上垂直的傳輸時,執(zhí)行先垂直傳輸再水平傳輸;由下向上的傳輸時,執(zhí)行先水平傳輸再垂直傳輸,從而結(jié)合源節(jié)點和目的節(jié)點的位置靈活的控制水平與垂直傳輸方式,路由實現(xiàn)簡單,與傳統(tǒng)的維序路由相比,能夠讓傳輸更靠近底層,同時又避免了底層的過多傳輸導(dǎo)致的擁塞以及過多垂直傳輸導(dǎo)致的延遲增大等問題,從而傳輸延遲小,能夠?qū)崿F(xiàn)有效的溫度控制;

      2)本發(fā)明基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法,若源節(jié)點和目的節(jié)點均在頂層,直接進行水平傳輸,相比于傳統(tǒng)需要向下路由,能夠減少大量冗余的垂直方向的傳輸,使傳輸路徑長度大大減小,從而減小傳輸延遲的同時降低底部的傳輸負擔(dān);若源節(jié)點在低層、目的節(jié)點在頂層,先按水平方向在當(dāng)前層傳輸至目的節(jié)點所在列位置,再按垂直方向傳輸至目的節(jié)點,以及若源節(jié)點在頂層、目的節(jié)點在低層,先按垂直方向傳輸至目的節(jié)點所在層位置,再按水平方向傳輸至目的節(jié)點,能夠減少在頂層的傳輸,從而縮短頂層散熱路徑,避免頂層溫度過高,實現(xiàn)溫度控制。

      與現(xiàn)有技術(shù)相比,本發(fā)明路由單元的優(yōu)點在于:本發(fā)明路由單元結(jié)構(gòu)簡單,片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法能夠減少路由部分的面積和功耗,減少傳輸時間的浪費,且編程實現(xiàn)簡單、模塊面積小,能夠適用于各種微處理器中,同時還可以輔助完成芯片的溫度控制,增加芯片的穩(wěn)定性以及減小漏流功耗。

      附圖說明

      圖1是本實施例基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法的實現(xiàn)流程示意圖。

      圖2是本實施例實現(xiàn)基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法的路由單元結(jié)構(gòu)示意圖。

      圖3是本實施例中輸入輸出接口單元的接口結(jié)構(gòu)示意圖。

      圖4是本實施例輸入選擇模塊的接口結(jié)構(gòu)示意圖。

      圖5是本實施例輸出選擇模塊的接口結(jié)構(gòu)示意圖。

      圖6是本實施例方向計算單元的結(jié)構(gòu)原理示意圖。

      圖7是本發(fā)明具體實施例中整體路由網(wǎng)絡(luò)傳輸實現(xiàn)原理示意圖。

      具體實施方式

      以下結(jié)合說明書附圖和具體優(yōu)選的實施例對本發(fā)明作進一步描述,但并不因此而限制本發(fā)明的保護范圍。

      本發(fā)明基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法包括當(dāng)從源節(jié)點傳輸數(shù)據(jù)至目的節(jié)點時,每次根據(jù)傳輸數(shù)據(jù)的當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間的關(guān)系確定下一個傳輸節(jié)點的方向,使得當(dāng)源節(jié)點在目的節(jié)點的上層位置時,從源節(jié)點先按垂直方向傳輸再按水平方向傳輸至目的節(jié)點,以及當(dāng)源節(jié)點在目的節(jié)點的下層位置時,從源節(jié)點先按水平方向傳輸再按垂直方向傳輸至目的節(jié)點,以及當(dāng)源節(jié)點與目的節(jié)點處于同層時,從源節(jié)點直接按水平方向傳輸至目的節(jié)點。

      本發(fā)明綜合考慮靠近散熱層和減小傳輸路徑長度問題,通過比較當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間的關(guān)系來進行傳輸,同層節(jié)點間的傳輸時直接水平傳輸,無需先垂直傳輸;由上垂直的傳輸時,執(zhí)行先垂直傳輸再水平傳輸;由下向上的傳輸時,執(zhí)行先水平傳輸再垂直傳輸,從而結(jié)合源節(jié)點和目的節(jié)點的位置靈活的控制水平與垂直傳輸方式,實現(xiàn)垂直方向的自適應(yīng)路由,路由實現(xiàn)簡單,與傳統(tǒng)的在達到擁塞前將所有的傳輸在底層進行、固定的先水平再垂直或先垂直再水平的維序路由相比,能夠讓傳輸更靠近底層,同時又避免了底層的過多傳輸導(dǎo)致的擁塞以及過多垂直傳輸導(dǎo)致的延遲增大等問題,從而傳輸延遲小,能夠?qū)崿F(xiàn)有效的溫度控制。

      本發(fā)明采用上述路由方法,若源節(jié)點和目的節(jié)點均在頂層,直接進行水平傳輸,相比于傳統(tǒng)需要向下路由,能夠減少大量冗余的垂直方向的傳輸,使傳輸路徑長度大大減小,從而減小傳輸延遲的同時降低底部的傳輸負擔(dān);若源節(jié)點在低層、目的節(jié)點在頂層,先按水平方向在當(dāng)前層傳輸至目的節(jié)點所在列位置,再按垂直方向傳輸至目的節(jié)點,以及若源節(jié)點在頂層、目的節(jié)點在低層,先按垂直方向傳輸至目的節(jié)點所在層位置,再按水平方向傳輸至目的節(jié)點,能夠減少在頂層的傳輸,從而縮短頂層散熱路徑,避免頂層溫度過高,實現(xiàn)溫度控制。

      如圖1所示,本實施例中基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法具體通過在垂直方向上比較當(dāng)前節(jié)點坐標(biāo)位置和目的坐標(biāo)位置的z坐標(biāo)大小來進行路由選擇,以確定是先進行水平傳輸還是垂直傳輸,若源節(jié)點的z坐標(biāo)zsrc小于目的節(jié)點zdst,即對應(yīng)源節(jié)點在目的節(jié)點的上層位置,先按垂直方向傳輸至目的節(jié)點所在層(目的層),再在目的節(jié)點所在層按水平方向傳輸至目的節(jié)點;否則先按水平方向傳輸至目的節(jié)點所在列(目的列),到達目的節(jié)點所在列后判斷源節(jié)點的z坐標(biāo)zsrc是否等于目的節(jié)點zdst,如果不相等,即對應(yīng)源節(jié)點在目的節(jié)點的下層位置,則再從目的節(jié)點所在列按垂直方向傳輸至目的節(jié)點,完成路由傳輸過程;如果相等,即對應(yīng)源節(jié)點與目的節(jié)點處于同層,則當(dāng)前已到達目的節(jié)點,完成路由傳輸過程。

      本實施例中,每次確定下一個傳輸節(jié)點的方向的具體步驟為:

      s1.判斷當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置的z坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向下一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)加1以進行更新;如果不是,轉(zhuǎn)入執(zhí)行步驟s2;

      s2.判斷當(dāng)前節(jié)點坐標(biāo)位置的x、y坐標(biāo)是否等于目的節(jié)點坐標(biāo)位置的x、y坐標(biāo),如果不是,在當(dāng)前層根據(jù)當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間x、y坐標(biāo)大小關(guān)系確定下一個傳輸節(jié)點的方向,并更新當(dāng)前節(jié)點坐標(biāo)位置;如果是,轉(zhuǎn)入執(zhí)行步驟s3;

      s3.比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間z坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向上一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)減1以進行更新;如果相等則退出,完成路由過程。

      通過上述步驟,每次傳輸時依次比較當(dāng)前節(jié)點、目的節(jié)點之間z、x、y坐標(biāo)大小來確定下一個傳輸節(jié)點的方向,可以結(jié)合當(dāng)前節(jié)點、目的節(jié)點之間的位置關(guān)系,使得當(dāng)源節(jié)點在目的節(jié)點的上層位置時,先按垂直方向傳輸再按水平方向傳輸;當(dāng)源節(jié)點在目的節(jié)點的下層位置時,先按水平方向傳輸再按垂直方向傳輸;當(dāng)源節(jié)點與目的節(jié)點處于同層時,直接水平傳輸,從而能夠讓傳輸更靠近底層,減少傳輸延遲及傳輸擁塞產(chǎn)生,同時實現(xiàn)底層與頂層的溫度控制。

      本實施例中,步驟s2執(zhí)行水平傳輸?shù)木唧w步驟為:

      s21.判斷當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置之間x坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向東方向作為下一個傳輸節(jié)點方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)加1以進行更新;否則轉(zhuǎn)入執(zhí)行步驟s22;

      s22.比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間y坐標(biāo)的大小,如果小于,取當(dāng)前傳輸節(jié)點所在層的向南方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)加1以進行更新;如果大于,取當(dāng)前傳輸節(jié)點所在層的向北方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)減1以進行更新;如果相等,轉(zhuǎn)入執(zhí)行步驟s23;

      s23.比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間x坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向西方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)減1以進行更新;如果相等,轉(zhuǎn)入執(zhí)行步驟s3。

      本實施例以x-y維序路由執(zhí)行水平方向傳輸,實現(xiàn)簡單,當(dāng)然在其他實施例中,還可以根據(jù)實際需求采用其他水平傳輸方式。

      如圖2所示為本實施例實現(xiàn)上述基于片上網(wǎng)絡(luò)的自適應(yīng)垂直路由方法的路由單元,片上網(wǎng)絡(luò)中每個節(jié)點配置有該路由單元進行數(shù)據(jù)傳輸,路由單元包括輸入輸出接口單元、輸入輸出選擇單元以及用于確定下一個傳輸節(jié)點方向的方向計算單元,片上網(wǎng)絡(luò)中各個方向的路由單元通過輸入輸出接口單元連接;輸入輸出接口單元接收各傳輸方向的傳輸請求、傳輸數(shù)據(jù)以及所傳輸數(shù)據(jù)的當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置,輸入輸出選擇單元根據(jù)接收到的傳輸請求,從輸入輸出接口單元中對應(yīng)輸入接口接入目標(biāo)傳輸數(shù)據(jù)、目標(biāo)傳輸數(shù)據(jù)對應(yīng)的當(dāng)前節(jié)點坐標(biāo)位置及目的節(jié)點坐標(biāo)位置,經(jīng)過方向計算單元確定得到下一個傳輸節(jié)點的方向,通過輸入輸出接口單元中對應(yīng)輸出接口輸出目標(biāo)傳輸請求、目標(biāo)傳輸數(shù)據(jù)以及對應(yīng)的當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置。

      如圖3所示,本實施例中輸入輸出接口單元包括輸入接口、輸出接口,輸入接口包括傳輸請求輸入接口、傳輸數(shù)據(jù)輸入接口,以及對應(yīng)各傳輸方向的當(dāng)前節(jié)點坐標(biāo)位置輸入接口、目標(biāo)節(jié)點坐標(biāo)位置輸入接口,輸出接口包括傳輸請求輸出接口、傳輸數(shù)據(jù)輸出接口,以及對應(yīng)各傳輸方向的當(dāng)前節(jié)點坐標(biāo)位置輸出接口、目標(biāo)節(jié)點坐標(biāo)位置輸出接口;傳輸方向包括本層向北方向、本層向南方向、本層向西方向、本層向東方向、向上層方向以及向下層方向。

      參見圖3,本實施例路由單元的輸入接口的接入數(shù)據(jù)具體包括從東西南北上下六個方向的路由及本地處理單元(pe)中得到的傳輸數(shù)據(jù)合值data_rx[6:0],傳輸請求合值req_rx[6:0],及每個方向得到一個當(dāng)前的坐標(biāo)值current_id_north/east/south/west/up/down[7:0],及每個方向?qū)?yīng)的一個目的坐標(biāo)值dst_id_north/east/south/west/up/down[7:0],同時還包括本地pe傳輸?shù)漠?dāng)前節(jié)點坐標(biāo)值current_id_local[7:0]和目的節(jié)點坐標(biāo)值dst_id_local[7:0];輸出接口的輸出數(shù)據(jù)包括輸送給六個方向的傳輸請求合值req_tx[5:0],傳輸數(shù)據(jù)合值data_tx[5:0],及傳輸給每個方向上更新后的坐標(biāo)值new_id_north/east/south/west/up/down[7:0]和目的坐標(biāo)值dst_id_north/east/south/west/up/down[7:0]。

      本實施例中,輸入輸出選擇單元包括輸入選擇模塊、輸出選擇模塊,輸入選擇模塊輸入各個傳輸方向的傳輸請求、傳輸數(shù)據(jù)以及通過各輸入接口接入的各組當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置,輸出對應(yīng)傳輸請求中傳輸方向有效的一組當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置,傳輸請求由對應(yīng)各個傳輸方向的傳輸請求是否有效的標(biāo)識構(gòu)成。本實施例輸入選擇模塊具體根據(jù)輸入的接收請求信號的位數(shù)從輸出的7組當(dāng)前坐標(biāo)和目的坐標(biāo)中選擇其中一組。

      如圖4所示,本實施例輸入選擇模塊具體為一個選擇器,根據(jù)傳輸請求合值req_rx[6:0]來選擇相應(yīng)方向的輸入數(shù)據(jù)、當(dāng)前節(jié)點坐標(biāo)值和目的節(jié)點坐標(biāo)值,其中傳輸請求合值req_rx中自低至高的0~6七位分別依次代表從north,east,south,west,up,down,local七個方向接收到的輸入請求,當(dāng)相應(yīng)的值為高時,首先從傳輸數(shù)據(jù)合值data_rx[6:0]中選擇相應(yīng)方向(傳輸請求信號為高電平)的data送至輸出接口,其次選擇對應(yīng)方向上的當(dāng)前節(jié)點坐標(biāo)值送給current_id[7:0],以及選擇對應(yīng)的目標(biāo)節(jié)點坐標(biāo)值送給dst_id[7:0]。輸入選擇模塊選擇當(dāng)前節(jié)點坐標(biāo)值current_id[7:0]、目標(biāo)節(jié)點坐標(biāo)值dst_id[7:0]后,再分別進行拆分處理,得到當(dāng)前節(jié)點坐標(biāo)值、目標(biāo)節(jié)點坐標(biāo)值對應(yīng)每個軸上的坐標(biāo)值,其中高2位為z坐標(biāo)值、中間3位為y坐標(biāo)值、低3位是x坐標(biāo)值,輸出current_id_x、current_id_y、current_id_z以及dst_id_x、dst_id_y、dst_id_z。

      本實施例中,方向計算單元根據(jù)當(dāng)前節(jié)點坐標(biāo)位置和目的節(jié)點坐標(biāo)位置進行比較,得到下一個傳輸節(jié)點的方向,并且根據(jù)下一個傳輸節(jié)點的方向更新所需傳輸數(shù)據(jù)當(dāng)前的節(jié)點坐標(biāo)值,輸出給下一個傳輸節(jié)點。如圖5所示,本實施例方向計算單元具體包括:

      第一計算單元,用于判斷當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置的z坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向下一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)加1以進行更新,返回執(zhí)行第一計算單元;如果不是,轉(zhuǎn)入執(zhí)行第二計算單元;

      第二計算單元,用于判斷當(dāng)前節(jié)點坐標(biāo)位置的x、y坐標(biāo)是否等于目的節(jié)點坐標(biāo)位置的x、y坐標(biāo),如果不是,在當(dāng)前層根據(jù)當(dāng)前節(jié)點坐標(biāo)位置、目的節(jié)點坐標(biāo)位置之間x、y坐標(biāo)大小關(guān)系確定下一個傳輸節(jié)點的方向,并更新當(dāng)前節(jié)點坐標(biāo)位置,返回執(zhí)行第二計算單元;如果是,轉(zhuǎn)入執(zhí)行第三計算單元;

      第三計算單元,用于比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間z坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向上一層方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的z坐標(biāo)減1以進行更新,返回執(zhí)行第三計算單元;如果相等則退出,完成路由過程。

      本實施例中,第二計算單元具體包括:

      第一x方向計算單元,用于判斷當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)是否小于目的節(jié)點坐標(biāo)位置之間x坐標(biāo),如果是,取當(dāng)前傳輸節(jié)點所在層的向東方向作為下一個傳輸節(jié)點方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)加1以進行更新,返回執(zhí)行第一x方向計算單元;否則轉(zhuǎn)入執(zhí)行y方向計算單元;

      y方向計算單元,用于比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間y坐標(biāo)的大小,如果小于,取當(dāng)前傳輸節(jié)點所在層的向南方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)加1以進行更新,返回執(zhí)行y方向計算單元;如果大于,取當(dāng)前傳輸節(jié)點所在層的向北方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的y坐標(biāo)減1以進行更新,返回執(zhí)行y方向計算單元;如果相等,轉(zhuǎn)入執(zhí)行第二x方向計算單元;

      第二x方向計算單元,比較當(dāng)前節(jié)點坐標(biāo)位置與目的節(jié)點坐標(biāo)位置之間x坐標(biāo)的大小,如果大于,取當(dāng)前傳輸節(jié)點所在層的向西方向作為下一個傳輸節(jié)點的方向,將當(dāng)前節(jié)點坐標(biāo)位置的x坐標(biāo)減1以進行更新,返回執(zhí)行第二x方向計算單元;如果相等,轉(zhuǎn)入執(zhí)行第三計算單元。

      本實施例方向計算單元執(zhí)行計算時,具體首先將當(dāng)前節(jié)點坐標(biāo)值的z坐標(biāo)與目的節(jié)點坐標(biāo)值的z坐標(biāo)進行對比,當(dāng)目的節(jié)點坐標(biāo)值的z坐標(biāo)較大時,輸出向下的方向,當(dāng)前節(jié)點坐標(biāo)值的z坐標(biāo)值加1送給更新后z坐標(biāo);否則比較x坐標(biāo),當(dāng)目的節(jié)點坐標(biāo)值的x坐標(biāo)較大時,輸出向東的方向,當(dāng)前節(jié)點坐標(biāo)值的x坐標(biāo)值加1送給更新后的x坐標(biāo);否則比較y坐標(biāo),當(dāng)目的節(jié)點坐標(biāo)值的y坐標(biāo)較大時,輸出向南的方向,當(dāng)前節(jié)點坐標(biāo)值的y坐標(biāo)值加1送給更新后y坐標(biāo),當(dāng)目的節(jié)點坐標(biāo)值的y坐標(biāo)較小時,輸出向北的方向,當(dāng)前節(jié)點坐標(biāo)值的y坐標(biāo)值減1送給更新后y坐標(biāo);當(dāng)y坐標(biāo)相等時,比較x坐標(biāo),當(dāng)目的節(jié)點坐標(biāo)值的x坐標(biāo)較小時,輸出向西方向,當(dāng)前節(jié)點坐標(biāo)值的x坐標(biāo)值減1送給更新后x坐標(biāo);當(dāng)x坐標(biāo)相等時,比較z坐標(biāo),當(dāng)目的節(jié)點坐標(biāo)值的z坐標(biāo)較小時,輸出向上的方向,當(dāng)前節(jié)點坐標(biāo)值的z坐標(biāo)值減1送給更新后z坐標(biāo);當(dāng)z坐標(biāo)相同時,輸出本地的方向;最后根據(jù)輸出的方向更新方向信號direction[6:0]并輸出,除上述根據(jù)方向更新的坐標(biāo)值外,其他坐標(biāo)值不變,發(fā)送至對應(yīng)的輸出接口。若更新后當(dāng)前節(jié)點坐標(biāo)值與目的節(jié)點坐標(biāo)值相同,則輸出本地方向,即傳給當(dāng)前pe,刪除坐標(biāo)值,路由傳輸過程結(jié)束。

      本實施例中,輸出選擇模塊接入方向計算單元輸出的下一個傳輸節(jié)點的方向、更新后當(dāng)前節(jié)點坐標(biāo)位置,輸出目標(biāo)傳輸請求、目標(biāo)傳輸數(shù)據(jù)、更新后當(dāng)前節(jié)點坐標(biāo)位置以及目的節(jié)點坐標(biāo)位置至對應(yīng)輸出接口。如圖6所示,本實施例輸出選擇模塊具體為一個輸出選擇器,首先將更新后的xyz坐標(biāo)值按照zyx的排列順序合成一個更新的坐標(biāo)值new_id,通過方向信號direction[6:0]選擇相應(yīng)的有效方向更新坐標(biāo)值,輸出各個傳輸方向的更新坐標(biāo)值new_id[7:0],同時根據(jù)方向信號direction[6:0]的值置輸出的傳輸請求信號req_tx[6:0]中相應(yīng)傳輸方向的輸出請求置為有效,得到目標(biāo)傳輸請求,結(jié)合輸入選擇模塊的data信號,得到相應(yīng)輸出的目標(biāo)傳輸數(shù)據(jù)信號data_tx[6:0]。

      本發(fā)明具體實施例中在多處理器路由網(wǎng)絡(luò)采用上述路由方法的傳輸如圖7所示,傳輸結(jié)構(gòu)為8*8*4,附圖中僅示出其中4*4*3結(jié)構(gòu)圖部分,水平方向以采用xy維序路由傳輸方式為例;圖(a)對應(yīng)源節(jié)點s與目的節(jié)點d均處于頂層lay0的情況,直接從源節(jié)點s按照水平方向傳輸至目的節(jié)點d,無需如傳統(tǒng)的需先垂直向下傳輸,避免了大量冗余的垂直方向傳輸;圖(b)對應(yīng)源節(jié)點s在目的節(jié)點d上層的情況,即向下的傳輸,先從源節(jié)點s按照垂直方向傳輸至目的節(jié)點d所在層lay2,再在lay2層按照水平方向傳輸至目的節(jié)點d,讓傳輸更靠近底層,同時避免底層執(zhí)行過多傳輸;圖(c)對應(yīng)源節(jié)點s在目的節(jié)點d下層的情況,即向上的傳輸,先在從源節(jié)點s按照水平方向傳輸至目的節(jié)點d所在列,再垂直傳輸至目的節(jié)點,而不是如傳統(tǒng)的先垂直再水平傳輸,能夠讓傳輸更靠近底層,避免在頂層傳輸,實現(xiàn)頂層的溫度控制。

      本實施例通過上述路由單元基于硬件層面實現(xiàn)了片上網(wǎng)絡(luò)自適應(yīng)垂直路由,結(jié)構(gòu)簡單,各路由單元根據(jù)當(dāng)前節(jié)點坐標(biāo)和目的節(jié)點坐標(biāo)的位置關(guān)系來進行路由選擇,能夠減少路由部分的面積和功耗、減少傳輸時間的浪費,且編程實現(xiàn)簡單、模塊面積小,能夠適用于各種微處理器(數(shù)字芯片)中,使用上述路由單元時,還可以輔助完成芯片的溫度控制,從而增加芯片的穩(wěn)定性以及減小漏流功耗。

      上述只是本發(fā)明的較佳實施例,并非對本發(fā)明作任何形式上的限制。雖然本發(fā)明已以較佳實施例揭露如上,然而并非用以限定本發(fā)明。因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明技術(shù)實質(zhì)對以上實施例所做的任何簡單修改、等同變化及修飾,均應(yīng)落在本發(fā)明技術(shù)方案保護的范圍內(nèi)。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1