T-S-T三級交換網(wǎng)絡(luò)路徑搜索算法的研究-基礎(chǔ)電子_第1頁
T-S-T三級交換網(wǎng)絡(luò)路徑搜索算法的研究-基礎(chǔ)電子_第2頁
T-S-T三級交換網(wǎng)絡(luò)路徑搜索算法的研究-基礎(chǔ)電子_第3頁
T-S-T三級交換網(wǎng)絡(luò)路徑搜索算法的研究-基礎(chǔ)電子_第4頁
T-S-T三級交換網(wǎng)絡(luò)路徑搜索算法的研究-基礎(chǔ)電子_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

精品文檔-下載后可編輯T-S-T三級交換網(wǎng)絡(luò)路徑搜索算法的研究-基礎(chǔ)電子1引言

光纖通訊技術(shù)的飛速發(fā)展使得目前高速通訊網(wǎng)絡(luò)性能的瓶頸集中在高速交換系統(tǒng),研究、設(shè)計和制造高速交換系統(tǒng)對目前高速通訊網(wǎng)絡(luò)具有極其重要的意義。而且隨著電信網(wǎng)和計算機(jī)網(wǎng)絡(luò)的高速發(fā)展,高速大容量的交叉連接或交換設(shè)備和芯片的性能也在大幅度的提高。同時由于現(xiàn)在的交換機(jī)在不停地更新?lián)Q代,對新的交換算法的需求也在不斷增加。

本文的研究工作旨在利用矩陣置換的思想,模擬開發(fā)一種基于T(時分)-S(空分)-T(時分)交換網(wǎng)絡(luò)的調(diào)度算法。提出一種新的三級交換的矩陣模型,并在這種模型上設(shè)計相應(yīng)的無阻塞交換算法。利用矩陣作為數(shù)學(xué)模型,可以利用矩陣的置換操作搜索交換的設(shè)置。算法設(shè)計和實(shí)現(xiàn)的過程中,大量的實(shí)驗(yàn)表明,本算法具有良好的特性,而且通過芯片級聯(lián)可實(shí)現(xiàn)。

本算法不同于以往的基于圖論的尋徑調(diào)度算法,力圖通過對這個算法的研究,為未來的大型綜合數(shù)字交換網(wǎng)絡(luò)奠定理論和實(shí)踐基礎(chǔ),并為變化多端的網(wǎng)絡(luò)環(huán)境下快速建立有保障的網(wǎng)絡(luò)服務(wù)提供先期的技術(shù)研究。

2T-S-T數(shù)字交換網(wǎng)絡(luò)結(jié)構(gòu)

典型的T-S-T數(shù)字交換網(wǎng)絡(luò)可以用圖1的模型描述。

整個交換網(wǎng)絡(luò)以S接線器為組織。對于一個具有N條輸入復(fù)用線和N條輸出復(fù)用線的交換網(wǎng)絡(luò)而言,需要配置2N套T接線器,其中N套在輸入側(cè),為初級T接線器,完成用戶的發(fā)送時隙到交換網(wǎng)絡(luò)內(nèi)部的公共時隙的交換;N套在輸出側(cè),稱為次級T接線器,完成將交換網(wǎng)絡(luò)內(nèi)部的公共時隙上的住處傳送到另一用戶的接收時隙上。因此,交換網(wǎng)絡(luò)內(nèi)部提供的公共時隙的數(shù)量就決定了交換網(wǎng)絡(luò)中能夠形成的話音通路的數(shù)量。中間的S接線器主要由一個N×N的交叉接點(diǎn)和具有N個存儲器的控制存儲器組來組成,用來完成將交換網(wǎng)絡(luò)內(nèi)部運(yùn)載的用戶信息從一條輸入側(cè)復(fù)用線上交換到規(guī)定的一條輸出復(fù)用線上。

3T-S-T交換網(wǎng)絡(luò)數(shù)學(xué)模型的建立

3.1問題的描述

在建立T-S-T交換網(wǎng)絡(luò)的數(shù)學(xué)模型之前,首先給出這樣的數(shù)學(xué)抽象:用1個n×n的輸入矩陣inport表示輸入數(shù)據(jù)流,每一行代表1個T-S-T交換網(wǎng)絡(luò)的輸入鏈路,也就是說每一行代表l根鏈路HW,每一行內(nèi)元素的位置代表1個時隙內(nèi)各個數(shù)據(jù)幀的次序關(guān)系。由于T交換是對同一根鏈路的不同時隙之間進(jìn)行的交換,故將其抽象為矩陣的行內(nèi)置換。因此當(dāng)輸入矩陣inport經(jīng)過T交換后,得到1個中間矩陣after_t1,此矩陣是inport矩陣通過每一行數(shù)據(jù)的行內(nèi)變換得到。同理,由于S交換是在不同鏈路的相同時隙之間進(jìn)行的交換,類似于對一個矩陣在其同一列內(nèi)進(jìn)行列內(nèi)變換,稱其為列內(nèi)置換。這樣當(dāng)after_tl又經(jīng)過S交換,得到另外一個中間矩陣after_s,此矩陣是after_tl矩陣通過列內(nèi)變換得到的。,又經(jīng)過第二級的T交換,產(chǎn)生outport矩陣,類似地,他是after_s矩陣通過行內(nèi)變換得到。于是,可以將交換算法這樣描述:對于初始矩陣inport,怎樣能找到一種滿足T-S-T三級交換的變換方式,終得到1個輸出矩陣outport。而且對于用戶要求的任意outport(此矩陣與inport是單播關(guān)系),都可以通過算法找到其變換方式,即可以找到2個中間矩陣。

3.2矩陣模型的建立

將T變換對應(yīng)于矩陣的行內(nèi)變換,而S變換對應(yīng)于矩陣的列內(nèi)變換,這樣上面的這一段敘述就可以描述為inport矩陣經(jīng)過一系列的行內(nèi)變換得到after_t1矩陣,after_t1矩陣經(jīng)過一系列的列內(nèi)變換得到after_s矩陣,after_s矩陣又經(jīng)過一系列的行內(nèi)變換得到outport矩陣如圖2所示。

4交換算法的設(shè)計思想

從上面論述可以看到,本文已經(jīng)將具體的路徑選擇問題,抽象成純粹的數(shù)學(xué)問題。接下來,本文將從純數(shù)學(xué)的角度來找出一種算法,從而解決這個交換問題。

4.1問題的數(shù)學(xué)分析

觀察從輸入矩陣inport→中間矩陣after_t1→中間矩陣after_s→輸出矩陣outport整個的變換過程,輸入矩陣先后經(jīng)過2次時間變換,而只經(jīng)過1次空間變換。也就是說,當(dāng)輸入矩陣inport中的某個元素,要發(fā)生列變換時,他只有1次變換機(jī)會,此情況對于inport中的任意一個元素都是適用的。所以,時間變換只起到調(diào)整作用,因此本文要重點(diǎn)考察空間變換,試圖從空間變換S變換中找出矩陣的特點(diǎn)。

不難發(fā)現(xiàn),中間矩陣after_s(n×m)(一般情況下,本文取m=n,無阻塞的交換網(wǎng)絡(luò))有這樣的特點(diǎn):每一列的n個元素,他們的行號包含從1~n的所有行號。如上面的例子可以看到這一點(diǎn)。這樣,將after_s矩陣經(jīng)過1個空間變換,向空間變換的反方向變換的時候,這n個元素就會回到在inport矩陣原來的行上,在經(jīng)過1個時間變換的反變換就可以變成為輸入矩陣inport。

在發(fā)現(xiàn)中間矩陣after_s的特點(diǎn)之后,就有了基本的思路。這里的算法只要能夠使得outport矩陣經(jīng)過1個時間變換的反變換后能夠變成為滿足中間矩陣after_s的特點(diǎn)的矩陣,那么,也就找到一種矩陣的變換方式。解決了這個交換問題。有沒有一個從inport到outport的變換的問題,轉(zhuǎn)換成能不能找到一個滿足after_s矩陣要求的問題,此after_s矩陣只是outport矩陣經(jīng)過一個時間變換得到。

這樣,對于任意輸入矩陣inpott,經(jīng)過矩陣的行內(nèi)、列內(nèi)、行內(nèi)3次變換可以得到任意輸出矩陣outport,從而成功的完成了T-S-T交換。本文為了方便描述inport和T-S-T交換的算法,不妨將inport定義為順序矩陣n×n,就是以行為序,從0~n×n-1,例如n=4,inport被定義為:

而outport將是inport的任意置換矩陣。在這里也不妨將outport假設(shè)為:

為了從inport矩陣變換到outport矩陣,必須找到兩個中間矩陣after_t1和after_s,從而完成交換路徑的接續(xù)。因此本文的目標(biāo)是研究一種算法,根據(jù)輸入矩陣和輸出矩陣產(chǎn)生這兩個中間矩陣,從而使處理機(jī)可以根據(jù)4個矩陣往寄存器陣列中填值,這樣就可以實(shí)現(xiàn)T-S-T網(wǎng)絡(luò)交換。為了以后敘述方便,3個寄存器陣列定義為:Tregister1(時分)、Sregister(空分)、Tregister2(時分)。

由于在實(shí)際的T-S-T交換中,CPU根據(jù)各個控制寄存器中的值來完成交換。由交換的特點(diǎn)可知,每個控制寄存器的值是由輸入序列和輸出序列決定的。其中Tregisterl的值可以由inport和after_t1決定,同理,Sregister的值由after_t1和after_s決定,Tregister2的值由after_s和outport決定。

4.2算法思想的設(shè)計

算法設(shè)計要求:

(1)對于任意給定的輸入矩陣和輸出矩陣,都能夠得到2個中間矩陣;

(2)由輸入矩陣到個中間矩陣只能經(jīng)過一系列行內(nèi)置換;

(3)由個中間矩陣到第二個中間矩陣只能經(jīng)過一系列列內(nèi)置換;

(4)由第二個中間矩陣到輸出矩陣只能經(jīng)過一系列行內(nèi)置換。

由行內(nèi)變換和列內(nèi)變換的性質(zhì)可以推斷出after_t1(AT)和after_s(AS)矩陣的特點(diǎn)如下:

AT的特點(diǎn):ATij=INij'(只能在同一行上進(jìn)行置換);AS的特點(diǎn):AS是inport的一個置換矩陣;AS的同一列上不可能出現(xiàn)inport同一行上的元素。

這是由于AT同一列上不可能出現(xiàn)inport同一行上的元素,而AT到AS經(jīng)過的是列內(nèi)變換。

現(xiàn)在有了inport和outport,目標(biāo)是通過這2個矩陣找到after_t1和after_s。從上面的設(shè)計要求和模型2個中間矩陣的特點(diǎn)可以看出,由inport到outport所經(jīng)過的置換與由outport到inport所經(jīng)過的置換是對稱的,所以由outport到inpott置換所得的2個中間矩陣也是問題的解。而且inport相對于output較為確定,因此為了方便描述和算法實(shí)現(xiàn),本文采用逆推法,由outport經(jīng)過一系列的行內(nèi)變換逆推出after_s,由after_s經(jīng)過一系列的列內(nèi)變換逆推出after_t1。很容易發(fā)現(xiàn)從after_s到after_t1只需要一個簡單的排序就可以完成,因此算法的關(guān)鍵是由outport推導(dǎo)after_s。

這樣本文研究的交換網(wǎng)絡(luò)調(diào)度算法要解決的關(guān)鍵問題等效后分解為:將一個任意置換矩陣經(jīng)過一系列的行內(nèi)變換變成為同一列上不存在輸入矩陣的同一行數(shù)據(jù)的置換矩陣(這是由AS的特點(diǎn)所決定的)。將解決這個關(guān)鍵問題的算法稱為交換網(wǎng)絡(luò)調(diào)度算法的算法。

5關(guān)鍵矩陣算法的思想和步驟

5.1高沖突值行優(yōu)先排列算法

一些約定和定義:

規(guī)則:矩陣after_s同一列上不存在矩陣inport同一行上的數(shù)據(jù)。

那么對于任一給定輸出矩陣outport(OP),本算法的任務(wù)是;根據(jù)“規(guī)則”將outport的每一行元素放到after_s(AS)同行的適當(dāng)位置上。例如假設(shè)現(xiàn)在開始第i行的排列,也就是說,第0行到第i~l行的數(shù)據(jù)已經(jīng)初步放置完畢(考慮到回溯,所以說“初步”),則前i行的每一列元素的初始矩陣行可以組成1個一維矩陣,一共n個一維矩陣,定義為垂直行陣v[0],v[1]。…,v[n一1];而OP的第i行的所有元素的初始矩陣行又可以組成1個一維矩陣(元素的初始矩陣行等于該元素整除矩陣維數(shù)的商),定義為水平行陣h,數(shù)據(jù)結(jié)構(gòu)如圖3所示:

定義:垂直沖突值:vRepeat[n],其中vRepeat[i](i=0,1,2,…,n-1)等于u[i]中的元素在h中的重復(fù)次數(shù)的和。

水平?jīng)_突值:hRepeat[n],其中hRepcat[i](i=0,1,…,n-1)等于k[i]在v中的重復(fù)次數(shù)的和。

生存數(shù)(lifenum):假設(shè)vRepeat[j]等于k,也就是說,O[i]中有k個元素不能放在AS的第j列,能放在這一列的元素個數(shù)只有n-k個,定義為生存數(shù)(lifenum),將這n-k個元素下標(biāo)取出形成向量,定義為生存空間(lifespace)

5.2高沖突值行優(yōu)先排列算法的實(shí)現(xiàn)

算法安放數(shù)據(jù)元素時,首先從vRepeat的那一列開始安放hRepeat的符合“規(guī)則”的元素,再逐次安放vRepeat中較小的且符合“規(guī)則”的列。這樣,大沖突值的元素得到優(yōu)先安放,重排或回溯的可能性就大大減小。

5.2.1主流程

(1)排列第1行數(shù)據(jù),row=0;

(2)row=row+1,如果row≥n,則停止,否則轉(zhuǎn)下一步;

(3)統(tǒng)計沖突值,調(diào)用判回溯算法判斷是否回溯,如果回溯,調(diào)用回溯算法,否則轉(zhuǎn)下一步;

(4)選擇vRepeat沖突值的列,根據(jù)“規(guī)則”安放hRepeat中的元素;

(5)更新vRepeat和hRepeat;

(6)判斷這一行的數(shù)據(jù)是否都安放完畢,如果是,轉(zhuǎn)(2),否則轉(zhuǎn)(3)。

5.2.2判斷回溯算法

回溯條件:生存數(shù)為k,生存空間相同的列的個數(shù)和大于生存數(shù)k,則回溯,原因是某生存空間“不夠分配”。例如,第i列和第j列(i不等于j)的生存數(shù)都為1和生存空間都為{2},這樣第2個元素只能放在一個位置上,也就是說,無論如何排列都無法滿足“規(guī)則”,需要回溯。

定義節(jié)點(diǎn)數(shù)據(jù)結(jié)構(gòu)如圖4所示:

判回溯的算法流程:

(1)將生存數(shù)相同的所有節(jié)點(diǎn)串成鏈表,鏈表的序號等于生存數(shù);

(2)從鏈表序號為0向鏈表序號為n順序掃描鏈表,統(tǒng)計生存空間相同的節(jié)點(diǎn)個數(shù),當(dāng)出現(xiàn)節(jié)點(diǎn)個數(shù)大于生存數(shù)的情況,需要回溯,否則轉(zhuǎn)下一步;

(3)將本鏈并入下一個鏈表;

(4)如果所有鏈表都不出現(xiàn)生存空間相同的節(jié)點(diǎn)個數(shù)和大于生存數(shù)的情況,則不需要回溯。

5.2.3回溯算法

定義經(jīng)歷表:在回溯過程中,各元素所“呆過”的位置序列。

回溯算法流程:

(1)確定回溯元素(沖突值原則);

(2)為回溯元素找一個“合法位置”;

合法條件:

規(guī)則:沖突值小于當(dāng)前情況;位置不在經(jīng)歷表中。

(3)為其他元素找“合法位置”;

6算法的正確性證明和復(fù)雜度分析

從前面的分析可以知道,要解決整個交換算法的關(guān)鍵是確定和尋找中間矩陣after_s,也就是說,在解決問題之前,必須確定問題有解。如何確定after_s一定存在,這里可以通過組合數(shù)學(xué)中的抽屜原理證明必然存在這樣的矩陣,證明過程比較簡單,本文在這里不做

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論