天天看點

基本網際網路(ICN)函數及表示

 對于網際網路絡的設計,通常是希望其結構不要過分複雜以降低成本,能提供連接配接的很大靈活性以滿足算法以及應用的需要,提高其性能。同時還希望這種網際網路絡又可以通過使用一系列規整單一的基本構件組合而成, 或者經多次通過, 或者經多級連接配接來實作複雜的互聯,子產品性好,以便于用大規模內建電路來實作。

  為了反映不同網際網路絡的連接配接特性,每種網際網路絡可用一組互聯函數來定義。如果把網際網路絡的n個入端和n個出端分别用整數0,1,…,n-1來表示, 則互聯函數就是表示網際網路絡的出端号和入端号的一一對應關系。 令互聯函數為f,則它的作用是:對于所有的0≤j≤n-1,同時存在入端j連至出端f(j)的對應關系。當互聯函數用來實作處理機之間資料變換時,互聯函數也反映了網絡輸入數組與輸出數組間對應的排列關系或者為置換關系。互聯函數有三種表示法,一種是輸入輸出對應表示法,一種是循環表示法,另一種是函數表示法。

  <b>1.輸入輸出對應表示法 </b>

  這種表示法把互聯函數表示為:

          

基本網際網路(ICN)函數及表示

  這就是說0變換為f(0), 1變換為f(1),…,n-1變換成f(n-1), f是互聯函數。例如,n=8,均勻洗牌函數的這種表示形式為:

基本網際網路(ICN)函數及表示

  <b>2.循環表示法 </b>

  把互聯函數函數f(x)表示為(x0x1x2…xj…xk-1)其中k≤n, 循環表示有下列對應的函數關系f(x0)=x1,f(x1)=x2,……,f(xj)=xj+1,……f(xk-1)=x0

  其中xi為結點編号,這裡k為循環長度。

  <b>3.函數表示法 </b>

  這裡用x表示輸入變量,用f(x)表示互聯函數,常常把輸入端x和輸出端f(x)都用二進制編碼表示,從中看出對應的函數關系和規模,寫出表達式。

  如x:{bn-1bn-2…bi…b0}互聯函數對應地表示為f(bn-1bn-2…bi…b0)。

  例如交換置換寫為

      

基本網際網路(ICN)函數及表示

  它表示實作式二進制位址編号中第0位位值不同的輸入端和輸出端之間連接配接。

  直接畫出輸入結點和輸出結點互聯拓撲結構圖,稱為互聯結構圖法,後面将介紹。

  下面介紹常用的基本互聯函數、它們的函數表達式以及主要的特征。以下例子中,用n表示節點數目, 當用二進制表示這些節點号碼時,将用n位二進制數表示,其中n=log2n

  <b>1.恒等置換</b>

  相同編号的輸入端與輸出端一一對應互聯所實作的置換即為恒等置換,其表達式為:

       

基本網際網路(ICN)函數及表示

  其中等式左邊括号内的xn-1xn-2…x1x0和等式右邊的xn-1xn-2…x1x0均為網絡輸入端和輸出端的二進制位址編号。這種置換完成的變換圖形如7.2.1所示。圖的左部為輸入端,右部為輸出端。

  <b>2.交換置換</b>

  交換置換是實作二進制位址編号中第0位位值不同的輸入端和輸出端之間的連接配接。其表達式為:

基本網際網路(ICN)函數及表示

  它所實作的輸入端與輸出端的互聯圖形見圖7.2.2。

基本網際網路(ICN)函數及表示

  <b>3.方體置換</b>

  方體置換是實作二進制位址編号中第k位位值不同的輸入端輸出端之間的連接配接。其表達式為:

 

基本網際網路(ICN)函數及表示

  這是上述交換置換的一般情形。它應有n個方體置換,如以n=8為例,則有

  

基本網際網路(ICN)函數及表示

這裡是實作二進制第0位的方體變換

基本網際網路(ICN)函數及表示

這裡是實作二進制第1位的方體變換

基本網際網路(ICN)函數及表示

這裡是實作二進制第2位的方體變換

  其變換圖形見圖7.2.3,其中即c0為交換置換。

基本網際網路(ICN)函數及表示

  <b>4.均勻洗牌置換</b>

  均勻洗牌置換是将輸入端分成數目相等的兩半,前一半和後一半按序一個隔一個地從頭至尾依次與輸出端相連,這好比洗撲克牌時,将整副牌分成相等的兩疊來洗,以達到理想的一張隔着一張的均勻情況, 故稱為均勻洗牌置換,或簡稱為洗牌置換, 其函數關系可表示為:

     

基本網際網路(ICN)函數及表示

  由此表達式可見,洗牌變換是将輸入端二進制位址循環左移一位即得到對應的輸出端二進制位址。

  逆均勻洗牌是均勻洗牌的逆函數, 它完成的變換圖形如圖7.2.4所示。兩者的輸入端和輸出端正好互換了位置,其函數表達式為:

基本網際網路(ICN)函數及表示

  這就說明逆洗牌是将輸入端二進制位址編号循環右移一位即得到相應的輸出端位址。均勻洗牌與逆均勻洗牌是兩種十分有用的互聯函數,以它們代表的鍊路與以交換置換代表的開關多級組合起來可構成omega(Ω)網與逆omega(Ω-1)網絡。σ函數在實作多項式求值、矩陣轉置和fft等并行運算以及并行排序等方面都得到廣泛的應用。

基本網際網路(ICN)函數及表示

  <b>5.蝶式置換</b>

  蝶式置換的名稱源于fft 變換的實作時圖形的形狀如蝴蝶式樣。它被定義為:

基本網際網路(ICN)函數及表示

  這種置換是将輸入端二進制位址的最高位和最低位互換位置即可求得相應輸出端的位址。同樣, 可定義子蝶式(subbutterfly)β(k)置換和超蝶式置換β(k)如下:

基本網際網路(ICN)函數及表示
基本網際網路(ICN)函數及表示

  β(k)置換将輸入端二進制位址第k位和最低位互換位置求得輸出端位址。而β(k)是将輸入端第n-k-1位和最高位互換位置求得輸出端位址,圖7.2.5給出n=8的蝶式β(2)、β(2)變換圖。

基本網際網路(ICN)函數及表示

  <b>6.移數置換</b>

  移數置換是将輸入端數組循環移動一定的位置向輸出端傳輸。其函數表達式無需用二進制編号來寫,可表達如下:

          a(x)=(x+k)mod n,0≤x≤n

  k為常數, 指移動的位置值,也可以将整個輸入數組分成若幹個子數組,在子數組内進行循環移數置換,這種段内循環移數的表達式可寫成為兩個式子如下:

       a(x)(r-1):0=((x)(r-1):0+k) mod 2r

       a(x)(n-1):r=(x)(n-1):r

  其中下标(n-1):r和(r-1):0分别指從n-1位到r位和從r-1到0位。

  循環移數的變換圖形見圖7.2.6, 這種變換在實作并行計算和圖像進行中很有用。

基本網際網路(ICN)函數及表示

  <b>7.加減2i(pm2i)置換</b>

  加減2i置換實際上是一種移數置換包含2n個互聯函數,其表達式為:

基本網際網路(ICN)函數及表示

  圖7.2.7給出了這一函數的變換圖像, 它是構成資料變換網絡的基礎。

基本網際網路(ICN)函數及表示

繼續閱讀