日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

具有共享配置儲(chǔ)存庫的廣播路由器的制作方法

文檔序號(hào):6411850閱讀:203來源:國知局
專利名稱:具有共享配置儲(chǔ)存庫的廣播路由器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及可編程器件,尤其涉及具有多個(gè)卡的系統(tǒng),所述多個(gè)卡中的每一個(gè)具有一個(gè)或多個(gè)可利用共享配置儲(chǔ)存庫來配置的可編程器件。
背景技術(shù)
廣播路由器使得其多個(gè)輸出中的每一個(gè)都被分配了來自于到達(dá)該廣播路由器的多個(gè)輸入中的任何一個(gè)的信號(hào)。例如,N×M廣播路由器含有N個(gè)輸入端和M個(gè)輸出端,這N個(gè)輸入端和M個(gè)輸出端通過使N個(gè)輸入端的任何一個(gè)施加給M個(gè)輸出端的每一個(gè)的路由器矩陣二耦合在一起。許多這樣的廣播路由器,尤其是較大的廣播路由器包含單個(gè)容納了多個(gè)一般稱為“卡”的印刷電路板的機(jī)架,所述多個(gè)印刷電路板以各種結(jié)構(gòu)進(jìn)行互聯(lián)。常常,廣播路由器中容納的許多卡是在同一廣播路由器中容納的其他卡的副本。例如,在前面通過引用并入于此的同時(shí)待審美國專利申請(qǐng)第10/__(代理人案號(hào)IU010620)號(hào)中,公開了1280×1280的廣播路由器,在構(gòu)造該廣播路由器時(shí)需要使用每一個(gè)都具有32個(gè)輸入端的40個(gè)相同配置的輸入卡。
通常,一個(gè)或多個(gè)現(xiàn)場可編程門陣列(或“FPGA”)存在于這樣的卡上。FPGA是一種可以在制造之后在現(xiàn)場進(jìn)行編程的集成電路。當(dāng)通過對(duì)在其中安裝了例如前述承載有一個(gè)或多個(gè)FPGA的卡的廣播路由器加電,或通過在加電之后將該卡插入(或“熱-插入”)到廣播路由器的輸入/輸出(或“I/O”)總線,來對(duì)所述卡加電時(shí),必須配置在該卡上的FPGA。傳統(tǒng)的,已通過存儲(chǔ)器件配置了FPGA,所述存儲(chǔ)器件例如是與FPGA一起存在于該卡上的可編程只讀存儲(chǔ)器(或“PROM”)。但是,以這種方式來配置FPGA使得在每一個(gè)承載請(qǐng)求配置的FPGA或其他可編程器件的卡上復(fù)制需要的配置電路和數(shù)據(jù)存儲(chǔ)器件。這樣的配置技術(shù)被證明是昂貴的,尤其是對(duì)于包含有多個(gè)在其上存在請(qǐng)求配置的器件的廣播路由器或其他系統(tǒng)。

發(fā)明內(nèi)容
提供一種包括多個(gè)功能卡的電子系統(tǒng),每一個(gè)功能卡具有至少一個(gè)存在于其上的可編程器件。該電子系統(tǒng)還包括耦合至多個(gè)功能卡中的每一個(gè)的配置控制卡,用于配置存在于多個(gè)功能卡上的可編程器件。在本發(fā)明的一個(gè)方面,存在于配置控制卡上的存儲(chǔ)器件作為共享配置信息儲(chǔ)存庫,用于保存當(dāng)配置存在于多個(gè)功能卡上的可編程器件時(shí)使用的配置信息。在另一個(gè)方面,通過存在于配置控制卡上的主控制器和存在于功能卡上的外圍控制器來控制存在于多個(gè)功能卡中的一個(gè)卡上的可編程器件的配置。在這一方面,外圍控制器用于將來源于可編程器件的配置請(qǐng)求轉(zhuǎn)送到主控制器。轉(zhuǎn)而,主控制器從存儲(chǔ)器子系統(tǒng)檢索配置信息,并將檢索的信息轉(zhuǎn)送到外圍控制器。外圍控制器隨后將接收到的配置信息轉(zhuǎn)送到進(jìn)行請(qǐng)求的可編程器件。
在本發(fā)明的又一個(gè)實(shí)施例中,電子系統(tǒng)是廣播路由器,所述多個(gè)功能卡可以包括廣播路由器的輸入卡、輸出卡和/或路由器卡,并且可編程器件可以是FPGA。


圖1是全冗余線性可擴(kuò)展廣播路由器的方塊圖;圖2是圖1的全冗余線性可擴(kuò)展廣播路由器的第一廣播路由器部件的放大方塊圖;圖3是圖2的第一廣播路由器部件的一部分的放大方塊圖;圖4A和4B是配置存在于圖2的第一廣播路由器部件中的可編程器件的方法的流程圖。
具體實(shí)施例方式
首先參照?qǐng)D1,現(xiàn)在更詳細(xì)地描述全冗余線性可擴(kuò)展廣播路由器100。正如現(xiàn)在所看到的那樣,全冗余線性可擴(kuò)展廣播路由器100包括相互耦合以形成較大全冗余線性可擴(kuò)展廣播路由器100的數(shù)個(gè)廣播路由器部件。每個(gè)廣播路由器部件是包括第一和第二路由器矩陣的分離路由器設(shè)備,第二路由器矩陣是第一路由器矩陣的冗余。因此,每個(gè)廣播路由器含有第一和第二路由引擎,分別用于第一和第二路由器矩陣之一,每一個(gè)路由引擎在它的輸入端接收相同的輸入數(shù)字音頻數(shù)據(jù)流,并在其輸出端上放置相同的輸出數(shù)字音頻數(shù)據(jù)流。正如此處所公開的那樣,用于構(gòu)造全冗余線性可擴(kuò)展廣播路由器的每個(gè)廣播路由器部件都是N×M大小的廣播路由器。但是,完全可以設(shè)想,全冗余線性可擴(kuò)展廣播路由器100可以替換為由大小彼此不同的廣播路由器部件構(gòu)成。
正如此處進(jìn)一步公開的那樣,全冗余線性可擴(kuò)展廣播路由器100是通過將第一、第二、第三和第四廣播路由器部件102、104、106和108耦合在一起而形成的。當(dāng)然,當(dāng)前公開的全冗余線性可擴(kuò)展廣播路由器100由4個(gè)廣播路由器部件組成純粹是舉個(gè)例子。因此,應(yīng)該清楚地認(rèn)識(shí)到,按照本發(fā)明的原理構(gòu)造的全冗余線性可擴(kuò)展廣播路由器100可以利用各種其它數(shù)目的廣播路由器部件來形成。第一、第二、第三和第四廣播路由器部件102、104、106和108當(dāng)以本文公開的方式全部連接時(shí),集體(collectively)形成全冗余線性可擴(kuò)展廣播路由器100,并可以一起存放在如圖1所示的公用機(jī)架中,或者如果需要的話,存放在分立的機(jī)架中。雖然如以前所述,廣播路由器部件102、104、106和108可以具有彼此不同的大小,或者可選地,可以全部具有相同的N×M大小,但已經(jīng)證明適合于此處設(shè)想使用的大小是256×256。并且,全冗余線性可擴(kuò)展廣播路由器100的適當(dāng)配置將能耦合每一個(gè)大小為256×256的5個(gè)廣播路由器部件,從而導(dǎo)致產(chǎn)生1,280×1,280的廣播路由器。
第一廣播路由器部件102由第一路由器矩陣102A和用于在第一路由器矩陣102A出現(xiàn)故障的情況下取代該第一路由器矩陣102A的第二(或“冗余”)路由器矩陣102B組成。類似地,全冗余線性可擴(kuò)展廣播路由器100的第二、第三和第四廣播路由器部件104、106和108中的每一個(gè)分別由第一路由器矩陣104A、106A和108A以及分別用于在它們出現(xiàn)故障的情況下取代所述第一路由器矩陣104A、106A和108A的第二冗余路由器矩陣104B、106B和108B組成。當(dāng)然,指定第二路由器矩陣102B、104B、106B和108B為冗余矩陣,以便在第一路由器矩陣102A、104A、106A和108A發(fā)生故障時(shí)作為備份使用純粹是任意的,并且完全可以設(shè)想,位于廣播路由器部件內(nèi)的路由器矩陣對(duì)的任何一個(gè)都可以作為存在那個(gè)廣播路由器部件內(nèi)的路由器矩陣對(duì)中的另一個(gè)的備份。
正如從圖1中進(jìn)一步看到,第一廣播路由器部件102的第一路由器矩陣102A、第二廣播路由器部件104的第一路由器矩陣104A、第三廣播路由器部件106的第一路由器矩陣106A、和第四廣播路由器部件108的第一路由器矩陣108A以遵從全連接拓?fù)浣Y(jié)構(gòu)的路由器矩陣的第一種配置耦合在一起。類似地,第一廣播路由器部件102的第二路由器矩陣102B、第二廣播路由器部件104的第二路由器矩陣104B、第三廣播路由器部件106的第二路由器矩陣106B、和第四廣播路由器部件108的第二路由器矩陣108B以像第一種配置那樣遵從全連接拓?fù)浣Y(jié)構(gòu)的第二種配置耦合在一起。在全連接拓?fù)浣Y(jié)構(gòu)中,路由器矩陣配置的每個(gè)路由器矩陣通過分離鏈路與形成該種路由器矩陣配置一部分的每一個(gè)其它路由器矩陣耦合。
因此,對(duì)于路由器矩陣的第一種配置,第一、第二和第三雙向鏈路110、112和114將第一廣播路由器部件102的第一路由器矩陣102A分別與第二廣播路由器部件104的第一路由器矩陣104A、第三廣播路由器部件106的第一路由器矩陣106A、和第四廣播路由器部件108的第一路由器矩陣108A相耦合。另外,第四和第五雙向鏈路116和118將第二廣播路由器部件104的第一路由器矩陣104A分別與第三廣播路由器部件106的第一路由器矩陣106A、和第四廣播路由器部件108的第一路由器矩陣108A相耦合。最后,第六雙向鏈路120將第三廣播路由器部件106的第一路由器矩陣106A與第四廣播路由器部件108的第一路由器矩陣108A相耦合。
類似地,對(duì)于路由器矩陣的第二種配置,第一、第二和第三雙向鏈路122、124和126將第一廣播路由器部件102的第二路由器矩陣102B分別與第二廣播路由器部件104的第二路由器矩陣104B、第三廣播路由器部件106的第二路由器矩陣106B、和第四廣播路由器部件108的第二路由器矩陣108B相耦合。另外,第四和第五雙向鏈路128和130將第二廣播路由器部件104的第二路由器矩陣104B分別與第三廣播路由器部件106的第二路由器矩陣106B、和第四廣播路由器部件108的第二路由器矩陣108B相耦合。最后,第六雙向鏈路132將第三廣播路由器部件106的第二路由器矩陣106B與第四廣播路由器部件108的第二路由器矩陣108B相耦合。
現(xiàn)在將更加詳細(xì)地描述廣播路由器部件102、104、106和108。圖2示出了第一廣播路由器部件102。另一方面,第二、第三和第四廣播路由器部件104、106和108與第一廣播路由器部件102類似地配置。因此,不需要更加詳細(xì)地描述第二、第三和第四廣播路由器部件104、106和108。應(yīng)當(dāng)注意,為了描述的簡潔,在下面的描述中省略了來源于第二、第三和第四廣播路由器部件104、106和108的、到第一廣播路由器部件102的輸入。在前面通過引用并入于此的同時(shí)待審美國專利申請(qǐng)第10/__(代理人案號(hào)IU020160)號(hào)中論述了這樣的輸入的進(jìn)一步的細(xì)節(jié)。
如現(xiàn)在所看到的,第一廣播路由器部件102包括第一路由器矩陣卡134A以及與第一路由器矩陣卡134A同樣配置的第二路由器矩陣卡134B。在廣播路由器100的機(jī)架(未示出)中可滑動(dòng)地容納并可支持地安裝第一和第二路由器矩陣卡134A和134B中的每一個(gè)。當(dāng)然,盡管當(dāng)實(shí)踐此處公開的本發(fā)明的某個(gè)方面時(shí)不需要使用多個(gè)路由器矩陣卡,但是通常優(yōu)選使用多個(gè)路由器矩陣卡,因?yàn)槠溆欣趶V播路由器100的連續(xù)的正確操作以及發(fā)生故障的路由器矩陣卡的修理和/或替換,而不會(huì)擾亂正常工作的路由器矩陣卡。
同樣由機(jī)架可滑動(dòng)地容納并可支持地安裝的是輸入卡136-1到136-N和輸出卡138-1至138-N。每一個(gè)輸入卡136-1到136-N耦合到第一路由器矩陣卡134A和第二路由器矩陣卡134B。同樣,每一個(gè)輸出卡138-1至138-N耦合到第一路由器矩陣卡134A和第二路由器矩陣卡134B。當(dāng)然,盡管在圖2中示出了分離的輸入和輸出卡136-1到136-N和138-1至138-N,但是應(yīng)當(dāng)清楚的知道,如果需要,存在于例如輸入卡136-N和輸出卡138-1的輸入和輸出卡兩者上的功能可以替換為置于單個(gè)I/O卡上。此外,盡管圖1示出了分離的輸入和輸出卡136-1到136-N和138-1至138-N,但是完全可以設(shè)想,取決于其上的可用空間,圖示為存在于例如輸入卡136-1的輸入卡、例如輸出卡138-1的輸出卡、或這兩者上的全部或部分功能可以替換為存在于第一路由器矩陣卡134A、第二路由器矩陣卡134B或它們的某些結(jié)合上。
存在于每一個(gè)輸入卡136-1到136-N上的是輸入信號(hào)選擇電路(未示出)。該輸入信號(hào)選擇電路123從由此接收的多個(gè)輸入信號(hào)中選擇將被傳送到第一路由器矩陣卡122A和第二路由器矩陣卡122B兩者的輸入信號(hào)。如此處所公開的,第一和第二路由器卡134A和134B中的每一個(gè)從輸入卡136-1到136-N中的每一個(gè)接收N個(gè)輸入數(shù)字音頻數(shù)據(jù)流中的一個(gè)。當(dāng)然,這樣的配置純粹是示例性的,完全可以設(shè)想,可以從輸入卡136-1到136-N中的一個(gè)中接收N個(gè)輸入數(shù)字音頻數(shù)據(jù)流中的多個(gè)。另外,N個(gè)輸入數(shù)字音頻數(shù)據(jù)流中的每一個(gè)都被路由到第二、第三和第四廣播路由器部件104、106和108中的每一個(gè)的第一路由器卡和第二路由器卡。類似地,第一和第二路由器卡134A和134B中的每一個(gè)分別從第二、第三和第四廣播路由器部件104、106和108接收輸入數(shù)字音頻數(shù)據(jù)流N+1到2N、2N+1到3N、和3N+1到4N。這樣,第一路由器矩陣卡134A和第二路由器矩陣卡134B接收同樣的4N個(gè)輸入。
存在于第一和第二路由器矩陣卡134A和134B中的每一個(gè)上的功能允許其M個(gè)輸出中的每一個(gè)連接到到達(dá)它的4N個(gè)輸入中所選的一個(gè)。通過控制電路(未示出)來控制從4N個(gè)輸入中選擇M個(gè)輸出中的每一個(gè)都與其相連接的特定的一個(gè)。相同地控制第一和第二路由器矩陣卡134A和134B,從而第一路由器矩陣卡134A的M個(gè)輸出數(shù)字音頻數(shù)據(jù)流與第二路由器矩陣卡134B的M個(gè)輸出數(shù)字音頻數(shù)據(jù)流相同。M個(gè)輸出數(shù)字音頻數(shù)據(jù)流中的每一個(gè)從第一和第二路由器矩陣卡134A和134B中傳播到輸出卡138-1到138-M中相應(yīng)的一個(gè)。存在于每一個(gè)輸出卡138-1到138-M上的是輸出信號(hào)選擇電路(未示出),該輸出信號(hào)選擇電路從從第一路由器矩陣卡134A接收到的第一輸出數(shù)字音頻數(shù)據(jù)流和從第二路由器矩陣卡134B接收到的第二輸出數(shù)字音頻數(shù)據(jù)流中選擇將要輸出到第一廣播路由器部件102的數(shù)字音頻數(shù)據(jù)流。
如下面將要更加全面描述的,輸入卡136-1到136-N中的每一個(gè)、第一路由器矩陣卡134A、第二路由器矩陣卡134B、和輸出卡138-1到138-M中的每一個(gè)包括一個(gè)或多個(gè)例如FPGA的可編程器件,每當(dāng)對(duì)廣播路由器100加電,或每當(dāng)把在其上存在可編程器件的卡熱插入廣播路由器100的I/O總線時(shí),要求配置所述可編程器件。耦合到輸入卡136-1到136-N中的每一個(gè)、第一路由器矩陣卡134A、第二路由器矩陣卡134B、和輸出卡138-1到138-M中的每一個(gè)的配置控制卡140將配置信息提供給存在于其上的FPGA或其他可編程器件。與輸入卡136-1到136-N、第一路由器矩陣卡134A、第二路由器矩陣卡134B、和輸出卡138-1到138-M類似,配置控制卡140可滑動(dòng)地容納在第一廣播路由器部件102的機(jī)架中,并由該機(jī)架可支持地安裝。
當(dāng)然,F(xiàn)PGA僅僅是一種類型的、在加電時(shí)需要配置信息的可編程器件,完全可以設(shè)想,在輸入卡136-1到136-N中的一個(gè)或多個(gè)、第一路由器矩陣卡134A、第二路由器矩陣卡134B、和輸出卡138-1到138-M中的一個(gè)或多個(gè)中可以存在其他類型的需要配置信息的可編程器件,以代替FPGA或者與FPGA共同存在。類似地,盡管圖2示出了三種耦合到配置控制卡140以便從該配置控制卡接收配置信息的卡——輸入卡、路由器矩陣卡、和輸出卡,但是完全可以設(shè)想,在其上存在一個(gè)或多個(gè)FPGA或其他可編程器件的各種卡可以耦合到配置控制卡140以接收可編程信息。此外,盡管圖2將舉例說明的所有種類的卡都圖示為連接到配置控制卡140,以便從該配置控制卡接收配置信息,但是可以設(shè)想,一個(gè)或多個(gè)舉例說明的種類的卡可以不需要配置信息,或可選地,可以不耦合到配置控制卡140以接收配置信息。最后,盡管圖2示出了專用卡——具體地說,配置控制卡140——來配置存在于輸入卡136-1到136-N、第一路由器矩陣卡134A、第二路由器矩陣卡134B、和輸出卡138-1到138-M上的可編程器件,但是應(yīng)當(dāng)清處地理解,配置存在于輸入卡136-1到136-N、第一路由器矩陣卡134A、第二路由器矩陣卡134B、和輸出卡138-1到138-M上的可編程器件所需的功能可以替換為存在于一個(gè)多功能卡上,例如代替廣播路由器部件102執(zhí)行其他控制功能的卡。
下面參見圖3,將詳細(xì)描述配置控制卡140和輸出卡138-1到138-M之間的相互連接。盡管在圖3中,可以看到配置控制卡140和輸出卡138-1到138-M兩者的附加部件,但是應(yīng)當(dāng)清楚地知道,圖3已經(jīng)被極大地簡化了,并且為了容易描述,省略了配置控制卡140和輸出卡138-1到138-M兩者的、理解本發(fā)明所不需要的各種部件。還應(yīng)當(dāng)知道,盡管沒有在圖3中圖示說明,但是輸入卡136-1到136-N中的每一個(gè)、第一路由器矩陣卡134A和第二路由器矩陣卡134B(1)在其上存在與存在于輸出卡138-1到138-M上的部件相同的附加部件;(2)都相類似地與配置控制卡140相互連接;和(3)都以相同的方式配置。
如現(xiàn)在所看到的,存在于輸出卡138-1到138-M中的每一個(gè)上的是FPGA142-1到142-M以及與FPGA 142-1到142-M相耦合的外圍控制器144-1到144-M。另一方面,存在于配置控制卡140上的是存儲(chǔ)器146和耦合到存儲(chǔ)器146的主控制器148,所述存儲(chǔ)器146用作用于FPGA 142-1到142-M中的每一個(gè)的配置信息的共享儲(chǔ)存庫。最后,主控制器148耦合到外圍控制器144-1到144-M中的每一個(gè)。如下面將要更加全面地描述的,前面提到的FPGA142-1到142-M、外圍控制器144-1到144-M、主控制器148和存儲(chǔ)器146之間的鏈接用于使得能夠響應(yīng)于從FPGA 142-1到142-M流動(dòng)到存儲(chǔ)器146的信號(hào),而使控制信息從存儲(chǔ)器146流動(dòng)到FPGA 142-1到142-M。但是,應(yīng)當(dāng)注意,盡管圖3示出了一系列分離的外圍控制器144-1到144-M,每一個(gè)對(duì)應(yīng)于FPGA 142-1到142-M中的一個(gè),但是完全可以設(shè)想,存在于每個(gè)外圍控制器中的功能可以替換為置于相應(yīng)的FPGA中。當(dāng)然,在這樣的結(jié)構(gòu)中,F(xiàn)PGA 142-1到142-M中的每一個(gè)將直接耦合到主控制器148。此外,F(xiàn)PGA142-1到142-M將執(zhí)行在下面描述為由外圍控制器144-1到144-M執(zhí)行的那些功能。
存儲(chǔ)器146被劃分為多個(gè)區(qū)域,每個(gè)區(qū)域保留關(guān)于一種可編程器件的配置信息。在圖3中,存儲(chǔ)器146包括第一區(qū)域149-1,在該區(qū)域中保存配置第一類型的器件所需的信息,所述第一類型的器件例如存在于輸出卡138-1到138-M上的可編程器件;第二區(qū)域149-2,在該區(qū)域中保存配置第二類型的器件所需的信息,所述第二類型的器件例如存在于輸入卡136-1到136-N上的可編程器件;和第三區(qū)域149-3,在該區(qū)域中保存配置第三類型的器件所需的信息,所述第三類型的器件例如第一和第二路由器矩陣卡134A和134B。優(yōu)選地,一般在將存儲(chǔ)器146焊接到配置控制卡140之前,經(jīng)由JTAG端口或另一程序設(shè)計(jì)端口將保存在存儲(chǔ)器146中的配置信息編程到存儲(chǔ)器146中。當(dāng)然,盡管圖3示出了可以根據(jù)在其上存在可編程器件的板的類型,來相互區(qū)分存儲(chǔ)器146為其保留了配置信息的、多種類型的可編程器件,但是應(yīng)當(dāng)清楚地知道,可以進(jìn)一步設(shè)想,所述多種類型的可編程器件可以替換為存在于一種類型的板上。
下面參照?qǐng)D4,現(xiàn)在詳細(xì)說明利用共享配置信息儲(chǔ)存庫,具體地說,保存在存儲(chǔ)器146中的配置信息,來配置例如存在于多個(gè)卡(此處為輸出卡138-1到138-M)上的FPGA 142-1到142-M的多個(gè)可配置器件的方法。但是,在進(jìn)一步公開上述內(nèi)容之前應(yīng)當(dāng)注意,本發(fā)明可以用于各種配置技術(shù)。一種這樣的技術(shù)涉及共同的器件類型的多個(gè)器件的配置。在這樣的技術(shù)中,將在存儲(chǔ)器146中保存單個(gè)配置文件,例如FPGA配置文件149-1。認(rèn)為這一技術(shù)在單個(gè)個(gè)配置文件可以用于配置多個(gè)可編程器件的情況中特別有利。另一種技術(shù)涉及不同器件類型的多個(gè)可編程器件的配置。在這樣的技術(shù)中,必須在存儲(chǔ)器146中保存多個(gè)配置文件,例如第一、第二和第三配置文件149-1、149-2和149-3。
在進(jìn)一步描述這些技術(shù)的之前,將給出與短語“不同類型的可編程器件”有關(guān)的、當(dāng)前使用的術(shù)語“不同類型”的進(jìn)一步的解釋。更具體的,除了對(duì)其用法的通常的理解之外,如此處所使用的,短語“不同類型”的可編程器件意思是包括相同物理類型的可編程器件,如果這樣的器件需要不同的配置信息的話。例如,配置存在于輸入卡上的FPGA可能需要第一組指令,而配置存在于路由器卡上的FPGA可能需要不同于第一組指令的第二組指令。如果是這樣,認(rèn)為存在于輸入卡上的FPGA相對(duì)于存在于路由器卡上的FPGA是不同類型的可編程器件。相反,認(rèn)為可以使用同一組指令來配置的任何兩個(gè)可編程器件是相同類型的可編程器件,無論他們物理上是否相同。
現(xiàn)在將參照?qǐng)D4描述配置多個(gè)相同類型的多個(gè)可編程器件的方法。該方法開始于步驟150,在步驟152,例如FPGA 142-1的可編程器件發(fā)出配置請(qǐng)求到與進(jìn)行請(qǐng)求的可配置器件一起存在于共同的板上的外圍控制器,此處該外圍控制器是與FPGA 142-1一起存在于輸出卡138-1上的外圍控制器144-1。發(fā)出配置請(qǐng)求可以由多個(gè)事件來觸發(fā)。例如,通過將輸出卡138-1插入第一廣播路由器部件102的輸入/輸出(或“I/O”)總線的插槽(未示出)或通過對(duì)第一廣播路由器部件102自身加電來對(duì)FPGA 142-1加電,將使得FPGA 142-1發(fā)出配置請(qǐng)求。轉(zhuǎn)而,接收配置請(qǐng)求的外圍控制器(此處是外圍控制器144-1)將該請(qǐng)求轉(zhuǎn)發(fā)到主控制器148,主控制器在步驟154接收配置請(qǐng)求。當(dāng)然,如果存在于外圍控制器144-1中的功能替換為存在于FPGA 142-1中,則FPGA142-1將前面提到的配置請(qǐng)求直接發(fā)到主控制器148。
當(dāng)主控制器148在步驟154檢測到配置請(qǐng)求的到達(dá)時(shí),該方法繼續(xù)到步驟156,在該步驟,主控制器148將在預(yù)先選定的時(shí)限內(nèi)等待附加配置請(qǐng)求的到達(dá)。例如,如果通過對(duì)第一廣播路由器部件102加電來觸發(fā)發(fā)出所檢測到的配置請(qǐng)求,可以設(shè)想,對(duì)于與輸出卡138-1類似配置的卡上存在的FPGA的配置請(qǐng)求將在由FPGA 142-1發(fā)出檢測到的配置請(qǐng)求之后很快到達(dá)。繼續(xù)到步驟158,如果預(yù)先選定的、主控制器將在此期間等待另一配置請(qǐng)求的時(shí)限尚未期滿,則該方法返回到步驟156,以等待另一個(gè)配置請(qǐng)求。但是,如果在步驟158確定預(yù)先選定的時(shí)限已經(jīng)期滿,則所述方法繼續(xù)到步驟160,在該步驟,主控制器148開始配置請(qǐng)求配置的可編程器件。
由于只要配置一種類型的器件,所述方法從步驟160繼續(xù)到步驟164,在該步驟,主控制器148開始檢查與其相耦合的可編程器件,以識(shí)別哪個(gè)可編程器件請(qǐng)求了配置。為此,在步驟164,主控制器148從與其相耦合的多個(gè)可編程器件中選擇第一可編程器件。例如,主控制器148可以選擇FPGA142-1。當(dāng)然,由于耦合至主控制器148的所有可編程器件是相同類型的,主控制器148不需要考慮所選擇的可編程器件的類型。隨后,所述方法繼續(xù)到步驟166,在該步驟,主控制器148詢問耦合到所選擇的可編程器件(此處為FPGA 142-1)的外圍控制器(此處為外圍控制器144-1),以確定所選擇的可編程器件是否已經(jīng)請(qǐng)求了配置。在步驟166,如果主控制器148確定被詢問的外圍控制器已經(jīng)為所選擇的可編程器件發(fā)出了配置請(qǐng)求,則所述方法繼續(xù)到步驟168,在該步驟,主控制器148配置所選擇的可編程器件。為此,主控制器148檢索保存在存儲(chǔ)器146的第一區(qū)域149-1中的配置信息,并將檢索的配置信息轉(zhuǎn)送到外圍控制器144-1。外圍控制器144-1隨后利用接收到的配置信息以傳統(tǒng)的方式辦理FPGA 142-1的配置。當(dāng)然,如果存在于外圍控制器144-1中的功能替換為存在于FPGA 142-1中,則主控制器將直接詢問FPGA142-1,以確定FPGA 142-1是否已經(jīng)請(qǐng)求了配置。如果已經(jīng)請(qǐng)求了配置,主控制器148隨后將檢索的配置轉(zhuǎn)送到FPGA 142-1。
當(dāng)在步驟168完成了FPGA 142-1的配置,或者當(dāng)在步驟166確定FPGA142-1從未發(fā)出配置請(qǐng)求時(shí),所述方法繼續(xù)到步驟170。在步驟170,確定是否存在其它需要就它們是否已經(jīng)發(fā)出了配置請(qǐng)求而進(jìn)行檢查的可編程器件。如果存在其它需要檢查的可編程器件,所述方法繼續(xù)到步驟172,在該步驟中,選擇下一個(gè)可編程器件。所述方法隨后返回到步驟166,以便以前述的方法進(jìn)行進(jìn)一步的處理。但是,如果在步驟172中確定已經(jīng)輪詢了所述的可編程器件以便確定他們是否已經(jīng)發(fā)出了配置請(qǐng)求,則所述方法將繼續(xù)到其終止的步驟178。
再次返回圖4,將詳細(xì)說明再一次利用共享配置信息儲(chǔ)存庫在具有多個(gè)卡的系統(tǒng)中配置多個(gè)可編程器件的方法,其中在所述多個(gè)卡上存在多種類型的可編程器件。如前所述,該方法開始于步驟150,在步驟152,還是例如FPGA142-1的可編程器件發(fā)出配置請(qǐng)求到與進(jìn)行請(qǐng)求的可配置器件一起存在于共同的板上的外圍控制器,此處該外圍控制器還是與FPGA 142-1一起存在于輸出卡138-1上的外圍控制器144-1。轉(zhuǎn)而,接收配置請(qǐng)求的外圍控制器(此處是外圍控制器144-1)將該請(qǐng)求轉(zhuǎn)送到主控制器148,主控制器在步驟154接收配置請(qǐng)求。當(dāng)然,如果存在于外圍控制器144-1中的功能替換為存在于FPGA142-1中,則FPGA 142-1將前面提到的配置請(qǐng)求直接發(fā)到主控制器148。
當(dāng)主控制器148在步驟154檢測配置請(qǐng)求的到達(dá)時(shí),該方法繼續(xù)到步驟156,在該步驟,主控制器148將在預(yù)先選定的時(shí)限內(nèi)等待附加配置請(qǐng)求的到達(dá)。繼續(xù)到步驟158,如果主控制器將在此期間等待附加配置請(qǐng)求的預(yù)先選定的時(shí)限尚未期滿,則該方法返回到步驟156,以等待附加配置請(qǐng)求。但是,如果在步驟158確定預(yù)先選定的時(shí)限已經(jīng)期滿,則所述方法繼續(xù)到步驟160,在該步驟,主控制器148開始配置請(qǐng)求配置的可編程器件。
由于在本發(fā)明的這一實(shí)施例中,可以有多種類型的請(qǐng)求配置的可編程器件,在步驟162,主控制器148選擇第一類型的可編程器件來配置。預(yù)期可以使用各種技術(shù)來確定在步驟162中所選擇的器件的特定類型。例如,在步驟154檢測到其初始配置請(qǐng)求的器件類型可以是在步驟162中選擇的器件類型。根據(jù)這一技術(shù),在接收到附加配置請(qǐng)求時(shí),主控制器148將關(guān)于器件類型而檢查接收到每個(gè)配置請(qǐng)求,并保存在預(yù)先選定的時(shí)限期滿之前接收到關(guān)于它的至少一個(gè)配置請(qǐng)求的所有類型的器件的列表。繼續(xù)到步驟164,主控制器148開始檢查可編程器件,看看它們是否已請(qǐng)求了配置。此外,主控制器148檢查可編程器件以便確定他們是否已請(qǐng)求了配置的處理可以被容易地改變。例如,主控制器148可以輪詢與可編程器件相關(guān)聯(lián)的每個(gè)外圍控制器,以確定(1)相關(guān)的可編程器件是否是所選擇的器件類型;和(2)外圍控制器是否已經(jīng)代表可編程器件發(fā)出了配置請(qǐng)求。當(dāng)然,如果存在于外圍控制器中的功能替換為存在于相應(yīng)的可編程器件中,則主控制器將直接輪詢每個(gè)外圍控制器,以確定(1)可編程器件是否是所選擇的器件類型;和(2)可編程器件是否已發(fā)出了配置請(qǐng)求。主控制器將直接詢問FPGA 142-1,以確定FPGA142-1是否已經(jīng)請(qǐng)求了配置。
在步驟166,如果主控制器148確定被詢問的外圍控制器已經(jīng)為所選擇的可編程器件發(fā)出了配置請(qǐng)求,并且所選擇的可編程器件是所述選擇的類型,則所述方法繼續(xù)到步驟168,在該步驟,主控制器148配置所選擇的可編程器件。為此,主控制器檢索在存儲(chǔ)器146的、保存進(jìn)行請(qǐng)求的可編程器件類型的配置信息的區(qū)域中保存的配置信息,并將檢索的配置信息轉(zhuǎn)送到外圍控制器144-1。外圍控制器144-1隨后利用接收到的配置信息以傳統(tǒng)的方式辦理FPGA 142-1的配置。當(dāng)然,如果存在于外圍控制器中的功能替換為存在于所選擇的可編程器件中,則在步驟166,主控制器148替換為確定所選擇的可編程器件是否已發(fā)出了配置請(qǐng)求并且是否是所選擇的類型,在步驟168,主控制器148將檢索的配置信息轉(zhuǎn)送到FPGA 142-1。
當(dāng)在步驟168完成了FPGA 142-1的配置,或者當(dāng)在步驟166確定FPGA142-1從未發(fā)出配置請(qǐng)求時(shí),所述方法繼續(xù)到步驟170。在步驟170,確定是否存在其它需要就它們是否已經(jīng)發(fā)出了配置請(qǐng)求以及它們是否是所選擇的可編程器件類型而進(jìn)行檢查的可編程器件。如果存在其它需要檢查的可編程器件,所述方法繼續(xù)到步驟172,在該步驟中,選擇下一個(gè)可編程器件。所述方法隨后返回到步驟166,以便以前述的方法進(jìn)行進(jìn)一步的處理。但是,如果在步驟172中確定已經(jīng)輪詢了所述的可編程器件以便確定他們是否已經(jīng)發(fā)出了配置請(qǐng)求以及他們是否是所選擇的可編程器件類型,則所述方法將繼續(xù)到步驟174,在該步驟,主控制器148確定是否存在已請(qǐng)求了配置的、其它類型的可編程器件。例如,主控制器148可以檢查請(qǐng)求配置的可編程器件類型的列表,看看是否存在尚未被配置的、其它類型的可編程器件。如果存在需要配置的其它類型的可編程器件,則所述方法繼續(xù)到步驟176,在該步驟,主控制器148選擇下一類型的可編程器件,以進(jìn)行配置。所述方法隨后返回到步驟164,以便以前述的方法進(jìn)行進(jìn)一步的處理。但是,如果在步驟174中確定已經(jīng)配置了所有類型的、請(qǐng)求配置的可編程器件,則所述方法將在步驟178結(jié)束。
當(dāng)然,存在多種實(shí)踐本發(fā)明實(shí)施例的方法,其中使用共享配置信息儲(chǔ)存庫來配置多種類型的可編程器件,其不需要主控制148保存請(qǐng)求配置的可編程器件類型的列表,或者對(duì)于每一個(gè)請(qǐng)求了配置的可編程器件類型輪詢一次每一個(gè)可編程器件。這樣,在開始配置進(jìn)行請(qǐng)求的可編程器件之后,主控制器148將詢問所選擇外圍控制器,與之相關(guān)聯(lián)的可編程器件是否請(qǐng)求了配置。如果外圍控制器指出可編程器件已經(jīng)請(qǐng)求了配置,則主控制器148將就與外圍控制器相關(guān)聯(lián)的可編程器件的類型進(jìn)行詢問。主控制器148可以使用這一信息從存儲(chǔ)器146檢索適當(dāng)?shù)呐渲眯畔?,并繼續(xù)進(jìn)行如上所述的可編程器件的配置。主控制器148隨后將選擇下一個(gè)可編程器件,并重復(fù)這一處理直到已經(jīng)輪詢過所有的可編程器件以確定他們是否已經(jīng)請(qǐng)求了配置,并且如果請(qǐng)求了配置,是否已得到配置。應(yīng)當(dāng)理解,上述方法減少了為了配置所有進(jìn)行請(qǐng)求的可編程器件主控制148必須進(jìn)行傳遞的數(shù)目。上述方法還消除了對(duì)于主控制器148保存請(qǐng)求配置的可編程器件類型的列表的任何需要。
因此,這里已經(jīng)公開和圖解說明了具有用于配置多個(gè)可編程器件的共享配置信息儲(chǔ)存庫的廣播路由器,所述多個(gè)可編程器件中的每一個(gè)位于廣播路由器內(nèi)不同的板上。共享配置信息儲(chǔ)存庫可以用來配置其中每一個(gè)位于相同板類型的不同板上多個(gè)可編程器件,或者可以用來配置其中每一個(gè)位于不同板類型的不同板上多個(gè)可編程器件。通過以這種方式配置廣播路由器,通過消除對(duì)于用于每一個(gè)可編程器件的分離存儲(chǔ)器件的需要而實(shí)現(xiàn)了存儲(chǔ)器資源的相當(dāng)大的節(jié)省。
當(dāng)然,雖然此處已經(jīng)顯示和描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域的普通技術(shù)人員可以在不偏離本發(fā)明的精神或原理的情況下,作出各種各樣的修改和其它改變。因此,本發(fā)明的保護(hù)范圍不局限于此處所述的實(shí)施例,而是只由所附權(quán)利要求書來限定。
權(quán)利要求
1.一種電子系統(tǒng)(100),包括多個(gè)功能卡(138-1到138-M),每一個(gè)功能卡具有至少一個(gè)存在于其上的可編程器件(142-1到142-M);和耦合至所述多個(gè)功能卡(138-1到138-M)中的每一個(gè)的配置控制卡(140);其中所述配置控制卡(140)配置存在于所述多個(gè)功能卡(138-1到138-M)中的每一個(gè)上的所述至少一個(gè)可編程器件(142-1到142-M)。
2.如權(quán)利要求1所述的電子系統(tǒng),還包括存在于所述配置控制卡(140)上的存儲(chǔ)器子系統(tǒng)(146);其中所述配置控制卡(140)利用在所述存儲(chǔ)器子系統(tǒng)(146)中存儲(chǔ)的配置信息來配置存在于所述多個(gè)功能卡(138-1到138-M)中的每一個(gè)上的所述至少一個(gè)可編程器件(142-1到142-M)。
3.如權(quán)利要求2所述的電子系統(tǒng),其中所述配置控制卡(140)還包括耦合至所述存儲(chǔ)器子系統(tǒng)(146)和所述多個(gè)功能卡(138-1到138-M)的主控制器(148);所述主控制卡(148)利用在所述存儲(chǔ)器子系統(tǒng)(146)中存儲(chǔ)的所述配置信息來配置所述多個(gè)功能卡(138-1到138-M)中的每一個(gè)。
4.如權(quán)利要求3所述的電子系統(tǒng),其中存在于所述多個(gè)功能卡(138-1到138-M)中的每一個(gè)上的所述至少一個(gè)可編程器件(142-1到142-M)中的每一個(gè)是現(xiàn)場可編程門陣列FPGA。
5.如權(quán)利要求3所述的電子系統(tǒng),還包括存在于所述多個(gè)功能卡(138-1到138-M)中的每一個(gè)上的外圍控制器(144-1到144-M);所述外圍控制器(144-1到144-M)中的每一個(gè)辦理(1)將來源于與所述外圍控制器(144-1到144-M)一起存在于所述多個(gè)功能卡(138-1到138-M)中的一個(gè)上的所述可編程器件(142-1到142-M)的、對(duì)于配置的請(qǐng)求轉(zhuǎn)送到所述主控制器(148);和(2)將由所述主控制器(148)提供的配置信息轉(zhuǎn)送到與所述外圍控制器(144-1到144-M)一起存在于所述多個(gè)功能卡(138-1到138-M)中的一個(gè)上的所述可編程器件(142-1到142-M)。
6.如權(quán)利要求2所述的電子系統(tǒng),其中所述多個(gè)功能卡(138-1到138-M)還包括多個(gè)第一類型的功能卡(136-1到136-N),所述第一類型的功能卡(136-1到136-N)請(qǐng)求用于配置其的第一組指令;多個(gè)第二類型的功能卡(138-1到138-M),所述第二類型的功能卡(138-1到138-M)請(qǐng)求用于配置其的第二組指令;所述第一組指令存儲(chǔ)在所述存儲(chǔ)器子系統(tǒng)(146)的第一區(qū)域(149-1)中,所述第二組指令存儲(chǔ)在所述存儲(chǔ)器子系統(tǒng)(146)的第二區(qū)域(149-2)中;其中所述配置控制卡(140)利用存儲(chǔ)在所述存儲(chǔ)器子系統(tǒng)(146)的所述第一區(qū)域(149-1)中的所述第一組指令來配置所述多個(gè)第一類型的功能卡(136-1到136-N),所述配置控制卡(140)利用存儲(chǔ)在所述存儲(chǔ)器子系統(tǒng)(146)的第二區(qū)域(149-2)中的所述第二組指令來配置所述多個(gè)第二類型的功能卡(138-1到138-M)。
7.如權(quán)利要求6所述的電子系統(tǒng),其中所述配置控制卡(140)還包括主控制器(148),耦合至所述存儲(chǔ)器子系統(tǒng)(146)、所述多個(gè)第一類型的功能卡(136-1到136-N)、和所述多個(gè)第二類型的功能卡(138-1到138-M);所述主控制器(148)利用在所述存儲(chǔ)器子系統(tǒng)(146)的所述第一區(qū)域(149-1)中存儲(chǔ)的所述第一組指令來配置所述多個(gè)第一類型的功能卡(136-1到136-N)中的每一個(gè);和所述配置控制卡(140)利用在所述存儲(chǔ)器子系統(tǒng)(146)的所述第二區(qū)域(149-2)中存儲(chǔ)的所述第二組指令來配置所述多個(gè)第二類型的功能卡(138-1到138-M)中的每一個(gè)。
8.如權(quán)利要求7所述的電子系統(tǒng),還包括存在于所述多個(gè)功能卡(136-1到136-N,138-1到138-M)中的每一個(gè)上的外圍控制器(144-1到144-M);所述外圍控制器(144-1到144-M)中的每一個(gè)辦理將來源于與所述外圍控制器(144-1到144-M)一起存在于所述多個(gè)功能卡(136-1到136-N,138-1到138-M)中的一個(gè)上的所述可編程器件(142-1到142-M)的、對(duì)于配置的請(qǐng)求轉(zhuǎn)送到所述主控制器(148);和所述外圍控制器(144-1到144-M)中的每一個(gè)還辦理將由所述主控制器(148)提供的配置信息轉(zhuǎn)送到與所述外圍控制器(144-1到144-M)一起存在于所述多個(gè)功能卡(136-1到136,138-1到138-M)中的一個(gè)上的所述可編程器件(142-1到142-M)。
9.一種廣播路由器(100),包括第一路由器卡(134A),具有輸入端、輸出端、和至少一個(gè)存在于其上的可編程器件(142-1到142-M);多個(gè)輸入卡(136-1到136-N),所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)耦合至所述路由器卡(134A)的所述輸入端,并具有至少一個(gè)存在于其上的可編程器件(142-1到142-M);多個(gè)輸出卡(138-1到138-M),所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè)耦合至所述路由器卡(134A)的所述輸出端,并具有至少一個(gè)存在于其上的可編程器件(142-1到142-M);和配置控制卡(140),其耦合至所述路由器卡(134A)、所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)、和所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè),所述配置控制卡(140)配置存在于所述路由器卡(134A)上的所述至少一個(gè)可編程器件(142-1到142-M)、所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)、和所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè)。
10.如權(quán)利要求9所述的裝置,還包括第二路由器卡(134B),具有輸入端、輸出端、和至少一個(gè)存在于其上的可編程器件(142-1到142-M);所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)還耦合至所述第二路由器卡(134B)的所述輸入端;所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè)還耦合至所述第二路由器卡(134B)的所述輸出端;所述配置控制卡還配置存在于所述第二路由器卡(134B)上的所述至少一個(gè)可編程器件(142-1到142-M)。
11.如權(quán)利要求9所述的裝置,還包括存在于所述配置控制卡(140)上的存儲(chǔ)器子系統(tǒng)(146),所述存儲(chǔ)器子系統(tǒng)(146)包括第一存儲(chǔ)區(qū)域(149-1)、第二存儲(chǔ)區(qū)域(149-2)和第三存儲(chǔ)區(qū)域(149-3);其中所述配置控制卡(140)利用存儲(chǔ)在所述存儲(chǔ)器子系統(tǒng)(146)的所述第一區(qū)域(149-1)中的配置信息來配置存在于所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)上的所述至少一個(gè)可編程器件(142-1到142-M),利用存儲(chǔ)在所述存儲(chǔ)器子系統(tǒng)(146)的所述第二區(qū)域(149-2)中的配置信息來配置存在于所述第一路由器卡(134A)上的所述至少一個(gè)可編程器件(142-1到142-M),利用存儲(chǔ)在所述存儲(chǔ)器子系統(tǒng)(146)的所述第三區(qū)域(149-3)中的配置信息來配置存在于所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè)上的所述至少一個(gè)可編程器件(142-1到142-M)。
12.如權(quán)利要求7所述的裝置,其中存在于所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)上、所述第一路由器卡(134A)上、所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè)上的所述可編程器件(142-1到142-M)中的每一個(gè)是現(xiàn)場可編程門陣列FPGA。
13.如權(quán)利要求12所述的裝置,其中所述配置控制卡(140)還包括存儲(chǔ)器子系統(tǒng)(146),所述存儲(chǔ)器子系統(tǒng)(146)包括第一存儲(chǔ)區(qū)域(149-1)、第二存儲(chǔ)區(qū)域(149-2)和第三存儲(chǔ)區(qū)域(149-3);主控制器(148),耦合至所述存儲(chǔ)器子系統(tǒng)(146)、所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)、所述第一路由器卡(134A)、和所述多個(gè)輸出卡(138-1到138-M);所述主控制器(148)利用在所述存儲(chǔ)器子系統(tǒng)(146)的所述第一區(qū)域(149-1)中存儲(chǔ)的第一組指令來配置所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)的所述至少一個(gè)FPGA(142-1到142-M),利用在所述存儲(chǔ)器子系統(tǒng)(146)的所述第二區(qū)域(149-2)中存儲(chǔ)的第二組指令來配置所述第一路由器卡(134A)的所述至少一個(gè)FPGA(142-1到142-M),和利用在所述存儲(chǔ)器子系統(tǒng)(146)的所述第三區(qū)域(149-3)中存儲(chǔ)的第三組指令來配置所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè)的所述至少一個(gè)FPGA(142-1到142-M)。
14.如權(quán)利要求13所述的裝置,還包括第二路由器卡(134B),具有輸入端、輸出端、和至少一個(gè)存在于其上的FPGA(142-1到142-M);所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)還耦合至所述第二路由器卡(134B)的所述輸入端;所述多個(gè)輸出卡(138-1到138-M)中的每一個(gè)還耦合至所述第二路由器卡(134B)的所述輸出端;所述主控制器(148)利用在所述存儲(chǔ)器子系統(tǒng)(146)的所述第二區(qū)域(149-2)中存儲(chǔ)的所述第二組指令來配置所述第二路由器卡(134B)的所述至少一個(gè)FPGA(142-1到142-M)。
15.如權(quán)利要求14所述的電子系統(tǒng),還包括存在于所述多個(gè)輸入卡(136-1到136-N)中的每一個(gè)上、所述第一和第二路由器卡(134A和134B)上、和所述多個(gè)輸出路由器卡(138-1到138-M)中的每一個(gè)上的外圍控制器(144-1到144-M);所述外圍控制器(144-1到144-M)中的每一個(gè)辦理將來源于與所述外圍控制器(144-1到144-M)一起存在于所述多個(gè)輸入卡(136-1到136-N)中的一個(gè)上、所述第一路由器卡(134A)上、所述第二路由器卡(134B)上、或所述多個(gè)輸出卡(138-1到138-M)中的一個(gè)上的所述FPGA(142-1到142-N)的、對(duì)于配置的請(qǐng)求轉(zhuǎn)送到所述主控制器(148);和所述外圍控制器(144-1到144-M)中的每一個(gè)還辦理將由所述主控制器(148)提供的配置信息轉(zhuǎn)送到與所述外圍控制器(144-1到144-M)一起存在于所述多個(gè)輸入卡(136-1到136-N)中的一個(gè)上、所述第一路由器卡(134A)上、所述第二路由器卡(134B)上、或所述多個(gè)輸出卡(138-1到138-M)中的一個(gè)上的所述FPGA(142-1到142-N)。
16.一種用于配置廣播路由器(100)的方法,所述廣播路由器(100)具有至少一個(gè)在其上存在一個(gè)或多個(gè)可配置器件(142-1到142-M)的卡(134A到134B,136-1到136-N,138-1到138-M),所述方法包括發(fā)出第一配置請(qǐng)求,所述第一配置請(qǐng)求由存在于所述至少一個(gè)卡(134A到134B,136-1到136-N,138-1到138-M)中的第一個(gè)卡上的第一可配置器件(142-1到142-M)發(fā)出;從共享配置儲(chǔ)存庫(146)檢索配置信息;和利用從所述共享配置儲(chǔ)存庫(146)檢索到的所述配置信息來配置所述進(jìn)行請(qǐng)求的可配置器件(142-1到142-M)。
17.如權(quán)利要求16所述的方法,還包括;發(fā)出第二配置請(qǐng)求,所述第二配置請(qǐng)求由存在于所述至少一個(gè)卡(134A到134B,136-1到136-N,138-1到138-M)中的第二個(gè)卡上的第二可配置器件(142-1到142-M)發(fā)出;從所述共享配置儲(chǔ)存庫(146)檢索所述配置信息;和利用從所述共享配置儲(chǔ)存庫(146)檢索到的所述配置信息來配置所述進(jìn)行請(qǐng)求的第二可配置器件(142-1到142-M);其中使用相同的配置信息來配置所述進(jìn)行請(qǐng)求的第一和第二可配置器件(142-1到142-M)。
18.如權(quán)利要求16所述的方法,其中所述廣播路由器(100)包括至少一個(gè)第一類型的卡(136-1到136-N)和至少一個(gè)第二類型的卡(138-1到138-M),所述至少一個(gè)第一和第二類型的卡(136-1到136-N,138-1到138-M)中的每一個(gè)具有至少一個(gè)存在于其上的可配置器件(142-1到142-M),所述方法還包括在所述共享配置儲(chǔ)存庫(146)的第一區(qū)域(149-1)中存儲(chǔ)第一組指令;在所述共享配置儲(chǔ)存庫(146)的第二區(qū)域(149-2)中存儲(chǔ)第二組指令;如果所述進(jìn)行請(qǐng)求的可配置器件(142-1到142-M)存在于所述至少一個(gè)第一類型的卡(136-1到136-N)上,則檢索所述第一組指令;如果所述進(jìn)行請(qǐng)求的可配置器件(142-1到142-M)存在于所述至少一個(gè)第二類型的卡(138-1到138-M)上,則檢索所述第二組指令;如果所述進(jìn)行請(qǐng)求的可配置器件(142-1到142-M)存在于所述至少一個(gè)第一類型的卡(136-1到136-N)上,則利用從所述共享配置儲(chǔ)存庫(146)的所述第一區(qū)域(149-1)中檢索的所述第一組指令來配置所述進(jìn)行請(qǐng)求的可配置器件(142-1到142-M);如果所述進(jìn)行請(qǐng)求的可配置器件(142-1到142-M)存在于所述至少一個(gè)第二類型的卡(138-1到138-M)上,則利用從所述共享配置儲(chǔ)存庫(146)的第二區(qū)域(149-2)中檢索的所述第二組指令來配置所述進(jìn)行請(qǐng)求的可配置器件(142-1到142-M)。
19.如權(quán)利要求16所述的方法,其中所述廣播路由器(100)還包括在其上存在主控制器(148)和所述共享配置儲(chǔ)存庫(146)的配置控制卡(140),所述方法進(jìn)一步包括所述主控制器(148)檢測由存在于所述至少一個(gè)卡(134A到134B,136-1到136-N,138-1到138-M)中的所述第一個(gè)卡上的所述一個(gè)或多個(gè)可配置器件(142-1到142-M)中的所述第一個(gè)發(fā)出的第一配置請(qǐng)求;所述主控制器在所述檢測的第一配置請(qǐng)求之后的時(shí)限期滿時(shí)開始配置算法,所述時(shí)限允許所述一個(gè)或多個(gè)可配置器件(142-1到142-M)中的另外一個(gè)在所述配置算法開始之前請(qǐng)求配置。
20.如權(quán)利要求19所述的方法,其中所述配置算法還包括選擇存在于所述廣播路由器(100)的所述至少一個(gè)卡(134A到134B,136-1到136-N,138-1到138-M)中一個(gè)卡上的第一可配置器件;詢問所選擇的可配置器件是否希望進(jìn)行配置;如果所選擇的可配置器件指示其希望進(jìn)行配置,則將配置信息傳播到所選擇的可配置器件;選擇存在于所述廣播路由器(100)的所述至少一個(gè)卡(134A到134B,136-1到136-N,138-1到138-M)中一個(gè)卡上的下一個(gè)可配置器件;和重復(fù)所述詢問、傳播和選擇步驟,直到已詢問了所有所述一個(gè)或多個(gè)可配置器件(142-1到142-M)。
全文摘要
一種廣播路由器(100),包括多個(gè)輸入卡(136-1到136-N)、第一和第二路由器矩陣卡(134A和134B)、和多個(gè)輸出卡(138-1到138-M)。存在于請(qǐng)求配置的卡上的可編程器件(142-1到142-M)發(fā)出配置請(qǐng)求到與共享配置信息儲(chǔ)存庫(146)一起存在于配置控制卡(140)上的主控制器(148)。在允許另外的可編程器件請(qǐng)求配置的時(shí)間段過去之后,主控制器(148)輪詢存在于卡上的可編程器件,以確定可編程器件中的哪一個(gè)已請(qǐng)求了配置,并且使用保存在共享配置信息儲(chǔ)存庫(146)中的配置信息來配置已經(jīng)請(qǐng)求配置的每一個(gè)可編程器件。
文檔編號(hào)G06F11/00GK1663170SQ03814569
公開日2005年8月31日 申請(qǐng)日期2003年6月13日 優(yōu)先權(quán)日2002年6月21日
發(fā)明者卡爾·克里斯坦森, 查爾斯·L·約翰遜, 林恩·H·阿巴克爾 申請(qǐng)人:湯姆森特許公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1