TWI797868B - 積體電路及查找及計數gpon gem訊框的方法 - Google Patents
積體電路及查找及計數gpon gem訊框的方法 Download PDFInfo
- Publication number
- TWI797868B TWI797868B TW110145242A TW110145242A TWI797868B TW I797868 B TWI797868 B TW I797868B TW 110145242 A TW110145242 A TW 110145242A TW 110145242 A TW110145242 A TW 110145242A TW I797868 B TWI797868 B TW I797868B
- Authority
- TW
- Taiwan
- Prior art keywords
- gem
- memory array
- column
- port
- memory
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q11/0067—Provisions for optical access or distribution networks, e.g. Gigabit Ethernet Passive Optical Network (GE-PON), ATM-based Passive Optical Network (A-PON), PON-Ring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0064—Arbitration, scheduling or medium access control aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0073—Provisions for forwarding or routing, e.g. lookup tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0086—Network resource allocation, dimensioning or optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Small-Scale Networks (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Interface Circuits In Exchanges (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一種查找方法,適用於千兆無源光網路(GPON)。所述查找方法包括:將GEM訊框的GPON封裝方式埠標識(GEM Port ID)拆解成第一部分GEM Port ID及第二部分GEM Port ID;利用所述第一部分GEM Port ID在第一記憶體陣列中進行列查找,並利用所述第二部分GEM Port ID在第一記憶體陣列中進行行查找;及根據所述在第一記憶體陣列中進行列查找及行查找的結果,判斷出第一記憶體陣列的特定位元位置,其中所述特定位元位置代表所述GEM訊框使用的特定GPON封裝方式埠(GEM Port)。
Description
本發明是關於無源光網路的技術領域,更具體而言是關於千兆無源光網路架構中查找及計數GEM訊框(GPON Encapsulation Mode Frame)的方法。
無源光網路PON(Passive Optical Network,PON),也稱被動式光纖網路,是一種不耗能的純介質網路技術。這種技術可避免外部設備的電磁干擾和雷電影響,減少線路和外部設備的故障率,故可提高系統的可靠性。無源光網路的架構實現了點對多點拓撲,其單根光纖通過使用無源光纖分路器將光能量分給多根光纖,或者將多根光纖傳輸的光能量合成到一根光纖中,從而為多端點提供服務。
千兆無源光網路(Gigabit Passive Optical Network,GPON)是一種新興標準,為用戶提供更高速的數據(data)服務,通常包括互聯網、電話、或電視廣播。
圖1顯示GPON的系統架構圖。
圖2顯示下行數據包訊框結構的示意圖。
GPON網路採用光纖將光纜終端裝置(Optical Line Terminal,OLT)、分光器和光網路單元(Optical Network Unit,ONU)連線起來,上下行採用不同的波長進行數據傳輸。上行採用1310nm(奈米)波長,下行採用1490nm波長。GPON系統採用波分複用的原理通過上下行不同波長在同一個光分配網路上進行數據傳輸。此外下行通過廣播的方式傳送數據,而上行通過分時多任務(Time Division Multiple Access,TDMA)的原理,進行數據上傳。
每個GPON封裝方式埠(GPON Encapsulation Mode Port,GEM Port)是由一個唯一的GPON封裝方式埠標識(GEM Port ID)標識,並由OLT進行全域分配。每個ONU需要根據GEM Port ID來找到屬於自己的GEM訊框,而若不是屬於自己的GEM訊框就丟棄。此外,國際電信聯盟(international telecommunication union,ITU)發布的標準G.988還規定需要基於GEM訊框(GEM frame)進行計數。計數的屬性包括GEM Frame的發送數目、GEM Frame的接收數目、所發送的淨荷的位元組數目以及所接收的淨荷(Payload)的位元組(byte)數目。
GEM訊框頭包括淨荷長度指示(Payload Length Indicator,PLI)占12位元(bit)、埠標識(Port ID)占12位元、淨荷類型指示(Payload Type Indicator,PTI)占3位元及訊框頭錯誤控制(Header Error Control,HEC)占13位元,四個部分。
考慮到PON網路中多ONU及多埠複用的情況,引入了GEM Port ID。因此,對本發明而言,GEM Port ID特別重要,因為ONU是基於GEM Port ID進行識別的。
隨著GPON技術的發展,現有的GEM訊框查找及計數方法比較占用芯片面積。
因此,亟須提出一種全新的快速查找及計數GPON GEM訊框的方法,以消除或緩和上述問題。
本發明旨在提供一種創新的查找及計數GPON GEM訊框的方法,SRAM透過兩個記憶體陣列來達成,本發明的方法能夠以相對較小的SRAM面積,找到所對應的計數組。
根據本發明,提供一種創新的查找GPON GEM訊框的方法,並由此提供一種創新的計數GPON GEM訊框的方法。
具體而言,根據本發明的一觀點,提出一種查找方法,適用於千兆無源光網路。所述查找方法包括:將GEM訊框的GEM Port ID拆解成第一部分GEM Port ID及第二部分GEM Port ID;利用所述第一部分GEM Port ID在第一記憶體陣列中進行列查找(row look-up),並利用所述第二部分GEM Port ID在第一記憶體陣列中進行行查找(column look-up);及根據所述在第一記憶體陣列中進行列查找及行查找的結果,判斷出第一記憶體陣列的特定位元位置,其中所述特定位元位置代表所述GEM訊框使用的特定GEM Port。
可選地,或較佳地,所述方法還包括:由ONU利用所述特定位元位置的值判斷所述GEM訊框是否屬於所述ONU。
可選地,或較佳地,所述方法還包括:利用所述第一部分GEM Port ID於第一記憶體陣列進行列查找,而取得特定的GPON封裝方式埠。
可選地,或較佳地,所述第一記憶體陣列具有多個記憶體列,所述多個記憶體列分別具有各自的列地址,且所述多個記憶體列儲存的數據包括多個位元,每一個位元分別代表一個GEM Port。
可選地,或較佳地,所述第二記憶體陣列配置成除了第0列記憶體列的數據外,第M列記憶體列的數據為 Q N ,其中,M為0至255,QN為第一記憶體陣列的第N列記憶體列之中的有效位元數目,Σ為加總運算子,N為加總下標,以及其中所述第二記憶體陣列配置成定義第0列記憶體列中的值為0。
根據本發明的另一觀點,提出一種GPON ONU積體電路,其中,所述GPON積體電路包括第一記憶體陣列及第二記憶體陣列。所述第一記憶體陣列,由第一記憶體列構成,並且包括多個儲存單元(memory cell),每一儲存單元代表一個GEM Port,每一儲存單元儲存的第一數據指出相關的GEM Port的有效性。所述第二記憶體陣列,由第二記憶體列構成,其中所述第二記憶體列在所述第二記憶體陣列中的設置順序相同於所述第一記憶體列在所述第一記憶體陣列中的設置順序,其中所述第二記憶體列儲存的第二數據為設置在所述第一記憶體列之前的所有記憶體列的有效GEM Port總數,其中所述第二數據相關於計數器指針(counter index)。
可選地,或較佳地,所述第一記憶體列與所述第二記憶體列具有相同的列地址。
可選地,或較佳地,所述第二記憶體列的位元數需要大於或等於所述GPON ONU積體電路支持的所述GEM Port的最大數量。
根據本發明的再一觀點,提出一種應用於上述另一觀點的GPON ONU積體電路的查找方法。所述查找方法包括:通過待測GEM Port ID對所述第一記憶體陣列進行查找,判斷出第一儲存單元是否有效;響應所述第一儲存單元為有效的事件,基於所述待測GEM Port ID對所述第二記憶體陣列進行查找,以取得所述第二數據;以及基於所述第二數據判斷出所述計數器指針。
可選地,或較佳地,所述基於所述第二數據判斷出所述計數器指針包括:基於所述待測GEM Port ID及所述第二數據判斷出所述計數器指針。
可選地,或較佳地,所述查找方法還包括:將所述待測GEM Port ID拆解成第一部分GEM Port ID及第二部分GEM Port ID,其中所述通過以待測GEM Port ID對所述第一記憶體陣列進行查找,判斷出第一儲存單元包括:利用所述第一部分GEM Port ID在所述第一記憶體陣列中進行列查找;以及利用所述第二部分GEM Port ID在所述第一記憶體陣列中進行行查找。
可選地,或較佳地,所述響應所述第一儲存單元為有效的事件,基於所述待測GEM Port ID對所述第二記憶體陣列進行查找,以取得所述第二數據,包括:通過所述第一部分GEM Port ID在所述第二記憶體陣列中進行列查找,從所述第二記憶體陣列中判斷出所述第二記憶體列;以及由所述第二記憶體列提供所述第二數據。
可選地,或較佳地,所述基於所述待測GEM Port ID及所述第二數據判斷出所述計數器指針還包括:通過加總所述第二部分GEM Port ID及所述第二數據,取得一加總結果;以及將所述加總結果作為所述計數器指針。
下文將配合圖式並詳細說明,使本發明的其他目的、優點、及新穎特徵更明顯。
圖1顯示GPON的系統架構圖。
圖2顯示下行數據包訊框結構的示意圖。
圖3顯示根據一種參考示例的靜態隨機存取記憶體陣列的配置方式的示意圖。
圖4顯示圖3的SRAM陣列儲存的數據的示意圖。
圖5顯示本發明一實施例的SRAM之中的第一記憶體陣列及第二記憶體陣列的記憶體陣列的配置方式的示意圖。
圖6顯示參考示例與實施例的比較表。
以下提供本發明的不同實施例。這些實施例是用於說明本發明的技術內容,而非用於限制本發明的權利範圍。一實施例的一特徵可透過合適的修飾、置換、組合、分離以應用於其他實施例。
應注意的是,在本文中,除了特別指明者之外,具備“一”組件不限於具備單一的所述組件,而可具備一或更多的所述組件。
此外,在本文中,除了特別指明者之外,“第一”、“第二”等序數,只是用於區別具有相同名稱的多個組件,並不表示它們之間存在位階、層級、執行順序、或製程順序。一“第一”組件與一“第二”組件可能一起出現在同一構件中,或分別出現在不同構件中。序數較大的一組件的存在不必然表示序數較小的另一組件的存在。
所謂的“包括”、“包含”、“具有”、“含有”,是指包括但不限於此。
此外,在本文中,“系統”、“設備”、“裝置”、“模組”、或“單元”等用語,是指一電子組件或由多個電子組件所組成的一數位電路、一類比電路、或其他更廣義電路,且除了特別指明者之外,它們不必然有位階或層級關係。
此外,終端機或服務器皆可包括上述組件,或以上述方式來實現。
(參考示例)
圖3顯示根據一種參考示例的靜態隨機存取記憶體(Static Random Access Memory,SRAM)的陣列的配置方式的示意圖,圖4顯示圖3的SRAM陣列
儲存的數據的示意圖。下文將基於圖3及圖4來說明一種參考示例的ONU查找(look-up)GEM訊框的方法。
依照國際電信聯盟(International Telecommunication Union,ITU)標準,需要為特定ONU的GEM Port所接收的GEM訊框進行計數。為此,需要找到GEM Port所對應的計數器組,以所述計數器組進行計數,其中所述計數組包括至少一計數器。
一般來說,一個OLT支持4096個GEM Port。而如前所述,“GEM Port ID”是用於識別GEM Port,因此需要4096個GEM Port ID。SRAM的列地址(row address)是一種GEM Port ID的可能實現方式。為此,ONU提供4096個SRAM列地址,分別對應至4096個GEM Port。十進制的4096在轉換成二進制時,需要以12個位元來表示,這12個位元之中的最高有效位(Most Significant Bit,MSB)為gpid[11],最低有效位(Least Significant Bit,LSB)為gpid[0],整體則以gpid[11:0]來表示。在本文中,gpid是取自“GEM Port ID”的“G”、“P”、“I”及“D”四個字母。
參考圖3,在參考示例中,ONU的SRAM包括4096個SRAM列。第0列SRAM列的列地址為0000-0000-0000、第1列SRAM列的列地址為0000-0000-0001,依此類推,直到第4095列SRAM列的列地址為1111-1111-1111,其中符號「-」僅是為了提升可讀性,列地址可不包括該符號。
在操作時,若OLT提供的GEM訊框包含的GEM Port ID為0000-0000-0000,則ONU可識別出其對應至第0列SRAM列;類似地,若OLT提供的GEM訊框包含的GEM Port ID為0000-0000-0001,則ONU可識別出其對應至第1列SRAM列,依此類推。
ONU在基於GEM訊框包含的GEM Port ID識別出對應的SRAM列後,即可自SRAM輸出對應的SRAM列儲存的數據(data)。
參照圖4,SRAM列儲存有9個位元的數據,這9個位元之中的MSB為bit[8],LSB為bit[0],整體則以bit[8:0]來表示。舉例而言,第0列SRAM列儲存著0-XXXX-XXXX,第1列SRAM列儲存著0-0000-0001,圖4顯示SRAM列儲存的數據僅是示例性的。
在比較例中,作為MSB的bit[8]是用於指出特定GEM訊框是否屬於特定ONU。當MSB=1,則表示特定GEM Port ID屬於特定ONU,也就是特定GEM訊框屬於特定ONU。當MSB=0,則表示特定GEM Port ID不屬於特定ONU,也就是特定GEM訊框不屬於特定ONU。
剩下的8個位元,即bit[7:0],是用於指出特定GEM訊框使用的特定計數組,換句話說,bit[7:0]是作為計數器指針。由於ONU最多支持256個GEM Port,而2的8次方為256,因此計數器指針bit[7:0]共有8個位元。
為了更具體說明參考示例的ONU查找(look-up)GEM訊框的方法,假設在一個特定情況中,特定ONU僅支持1個GEM Port,那麽,在4096個SRAM列中,只會出現1個SRAM列儲存的數據的MSB=1,在參考示例中,為第31列SRAM列,只是示例性的,在其他例子中,可能是其他列。
在操作時,若OLT提供的GEM訊框包含的GEM Port ID為0,亦即,gpid[11:0]=0000-0000-00002=010,則ONU可識別出其對應至第0列SRAM列,然後,即可輸出第0列SRAM列儲存的數據“0-XXXX-XXXX”。在此數據中,MSB=0,故可判斷出此GEM訊框不屬於此ONU,因此不需要進一步判斷此GEM訊框使用哪一個計數組。在此,應注意的是,諸如“0000-0000-00002”這樣的編碼的下標
“2”表示所述編碼是以2進制表示,而諸如“010”這樣的編碼的下標“10”表示所述編碼是以10進制表示,以下亦同。
在操作時,若OLT提供的GEM訊框包含的GEM Port ID為31,亦即,gpid[11:0]=0000-0001-11112=3110,則ONU可識別出其對應至第31列SRAM列,然後,即可輸出第31列SRAM列儲存的數據“1-0000-0010”。在此數據中,MSB=1,故可判斷出此GEM訊框屬於此ONU。這樣,需要進一步判斷此GEM訊框使用哪一個計數組,基於計數器指針bit[7:0]為0000-0010,例如,它可用於表示SRAM的另一儲存空間(圖未繪示)的SRAM列地址,以查找出此GEM訊框使用的計數組。
在上述假設的特定情況中,ONU支持1個GEM Port。然而,無論在何種情形下,ONU最多支持256個GEM Port,也就是說,在4096個SRAM列中,最多只有256個SRAM列的MSB為1。換言之,剩下的3840個SRAM列(因為4096-256=3840)的MSB都是0。本發明意識到,一旦MSB=0,則剩下的8個位元是無用的,換句話說,至少浪費了3840×8=30720的記憶體空間,就SRAM的面積成本而言,利用率低。
因此,有必要提出一種新的查找GPON GEM訊框的方法及一種新的GPON GEM訊框的計數方法。
(本發明的查找GPON GEM訊框的方法)
本發明的查找GPON GEM訊框的方法,適用於GPON系統,GPON系統包括:OLT、分光器、ONU、及多個用戶端。ONU包括積體電路,積體電路包括SRAM,但不限於此,其他記憶體亦是可能的。在本發明中,SRAM中配置有第一記憶體陣列及第二記憶體陣列。
圖5顯示本發明一實施例的SRAM之中的第一記憶體陣列及第二記憶體陣列的記憶體陣列的配置方式的示意圖。下文將基於圖5來說明本發明一實施例的查找GPON GEM訊框的方法。
首先,本發明的第一記憶體陣列及第二記憶體陣列的配置方式及使用方式說明如下。應理解的是,為了解決SRAM的面積利用率低的問題,及配合一個OLT支持4096個GEM Port的條件,而形成以下的配置。
(第一記憶體陣列的配置)
在一廣義實施例中,第一記憶體陣列具有多個第一記憶體列(row),在本發明中為SRAM列,這些SRAM列分別具有對應的列地址(row address)。在一特定實施例中,第一記憶體陣列配置成具有256個SRAM列。
十進制的256在轉換成二進制時,需要以8個位元來表示,因此,第一記憶體陣列的列地址為8個位元。舉例來說,如圖5所示,第0列SRAM列的列地址為0000-0000,第1列SRAM列的列地址為0000-0001,依此類推,直到第255列SRAM列的列地址為1111-1111。
第一記憶體陣列的SRAM列包括16個儲存單元,而儲存有16個位元的數據,這16個位元自LSB至MSB分別為Bit 0、Bit 1、Bit 2、Bit 3、Bit 4、Bit 5、Bit 6、Bit 7、Bit 8、Bit 9、Bit 10、Bit 11、Bit 12、Bit 13、Bit 14及Bit 15。每一個位元位置代表一個GEM Port,例如,第0列SRAM列的Bit 0代表第0列SRAM列的第1個GEM Port,第0列SRAM列的Bit 15代表第0列的第16個GEM Port,以此類推。
因此,每一列SRAM列可用來表示16個GEM Port,第一記憶體陣列總共有256列SRAM列,因此第一記憶體陣列可用來代表4096個GEM Port(因為256×16=4096)。
(第二記憶體陣列的配置)
在詳細說明第二記憶體陣列的配置方式之前,特別說明,設置第二記憶體陣列的用意是將第一記憶體陣列各SRAM列的有效位元(valid bit)數目依序加總,得到“儲存總和”,並將儲存總和儲存在第二記憶體陣列中。
在一廣義實施例中,第二記憶體陣列具有多個第二記憶體列,在本發明中為SRAM列,這些SRAM列分別具有對應的列地址。在一特定實施例中,第二記憶體陣列配置成具有256列SRAM列。同理,十進制的256在轉換成二進制時,需要以8個位元來表示,因此,第二記憶體陣列的列地址為8個位元。舉例來說,如圖5所示,第0列SRAM列的列地址為0000-0000,第1列SRAM列的列地址為0000-0001,依此類推,直到第255列SRAM列的列地址為1111-1111。由此可見,第二記憶體列在第二記憶體陣列中的設置順序可相同於第一記憶體列在第一記憶體陣列中的設置順序。此外,第一記憶體列與第二記憶體列可具有相同的列地址。
第二記憶體陣列的SRAM列包括8個儲存單元,而儲存有8個位元的數據。8個位元的設置是考慮到,ONU最多支持256個GEM Port,因此第一記憶體陣列至多只會有256個有效位元。廣義而言,第二記憶體列的位元數需要大於或等於積體電路能夠支持的GEM Port的最大數量。
在一實施例中,第二記憶體陣列配置成定義第0列SRAM列儲存的數據(值)為0,其他SRAM列則是儲存著“儲存總和”。儲存總和的計算方式如下:第二記憶體陣列的第M列SRAM列儲存的數據(值)為 Q N ,其中,M為0至255,QN為第一記憶體陣列的第N列SRAM列之中的有效位元數目,Σ為加總運算子,N為加總下標。
在圖5的例子中,Q0為第一記憶體陣列的第0列SRAM列之中的有效位元數目,第0列SRAM列儲存的數據為0001000010000000,有2個1,故Q0=2;類似地,Q1為第一記憶體陣列的第1列SRAM列之中的有效位元數目,第1列SRAM列儲存的數據為1000000000000010,故Q1=2。
接著,計算第二記憶體陣列各SRAM列的儲存總和。首先,根據定義,第二記憶體陣列的第0列SRAM列儲存的數據(值)為010,其二進制表示為000000002。
第二記憶體陣列的第1列SRAM列儲存的數據,根據 Q N 來計算,得到其為Q0,即210,其二進制表示為000000102。第二記憶體陣列的第2列SRAM列儲存的數據,同樣根據 Q N 來計算,得到其為Q0及Q1的加總,即410,其二進制表示為000001002。
如此,SRAM中的第一記憶體陣列及第二記憶體陣列已建構完成。應注意的是,圖5顯示第一記憶體陣列及第二記憶體陣列的各SRAM列儲存的數據僅是示例性的。本發明的查找GPON GEM訊框的方法的具體步驟,將在下文中說明。
(查找GPON GEM訊框的方法的具體說明)
在下文中,作為非限定性的實施例,ONU將分別對GEM Port ID=0的GEM訊框以及GEM Port ID=32的GEM訊框進列查找。
第一個例子是GEM Port ID=0,也就是gpid[11:0]=010=0000000000002。根據本發明的原理,可將gpid[11:0]=0000000000002拆解成gpid[11:4]=000000002及gpid[3:0]=00002。應理解的是,gpid[11:0]存在12個位
元,gpid[11:4]表示這12個位元之中的前8個位元,gpid[3:0]表示這12個位元之中的後4個位元。
首先,ONU須進行列查找,由於gpid[11:4]=000000002的意義是第一記憶體陣列的列地址,其轉換成十進制為010,故ONU識別出其對應至第0列SRAM列。
在識別出其對應至第0列SRAM列後,ONU須進行行查找,根據gpid[3:0]=00002所轉換而成的十進制為010,ONU識別出其指向Bit 0,亦即,第一記憶體陣列的SRAM列儲存的16個位元的第1個位元(最低有效位)的位置。關於Bit 0、…、Bit 15的意義,請參考“第一記憶體陣列的配置”小節的說明,於此不再贅述。
接著,根據gpid[3:0]所指出的位元位置判斷此GEM訊框是否屬於此ONU。其判斷準則為:指出的位元的值為1表示有效(valid),而指出的位元的值為0表示無效(invalid)。據此,在這個例子中,由於第0列SRAM列的Bit 0的值為0,判斷出GEM Port ID=0的GEM訊框不屬於此ONU。
在這個例子中,由於已判斷GEM Port ID=0的GEM訊框不屬於此ONU,不需要進一步判斷此GEM訊框使用哪一個GEM Port。
第二個例子是GEM Port ID=32,也就是gpid[11:0]=3210=0000001000002。根據本發明的原理,可將gpid[11:0]=0000001000002拆解成gpid[11:4]=000000102及gpid[3:0]=00002。
首先,ONU須進行列查找,由於gpid[11:4]=000000102的意義是第一記憶體陣列的列地址,其轉換成十進制為210,故ONU識別出其對應至第2列SRAM列。
在識別出其對應至第2列SRAM列後,ONU須進行行查找,根據gpid[3:0]=00002所轉換而成的十進制為0,ONU識別出其指向Bit 0,亦即,第一記憶體陣列的SRAM列儲存的16個位元的第1個位元(最低有效位)的位置。
接著,根據gpid[3:0]所指出的位元位置判斷此GEM訊框是否屬於此ONU。在這個例子中,由於第2列SRAM列的Bit 0的值為1,判斷出此ONU具有GEM Port ID=32。
(計數GPON GEM訊框的方法的具體說明)
回到圖5的例子,在判斷出GEM Port ID=32的GEM訊框屬於此ONU後,須進一步判斷特定的GEM Port的順位。首先,利用第一記憶體陣列進行查找,是在通過gpid[11:4]=000000102而判斷出其對應至第一記憶體陣列的第2列SRAM列後,根據gpid[3:0]=00002=的010,ONU識別出其指向Bit 0,亦即,第一記憶體陣列的SRAM列儲存的16個位元的第1個位元(最低有效位)的位置,進而判斷出GEM Port是第一記憶體陣列的第2列SRAM列之中的第1個GEM Port(這個GEM Port即第一儲存單元)。
接著,利用第二記憶體陣列進行查找。由於gpid[11:4]=000000102的意義是第二記憶體陣列的列地址,其轉換成十進制為210,可判斷其對應至第2列SRAM列,據此,輸出第2列SRAM列儲存的數據000001002,轉換成十進制為410。此意味著,在第一記憶體陣列中,排在第2列SRAM列之前的SRAM列總共具有四個有效的GEM Port。因為GEM Port ID=32的GEM Port是第一記憶體陣列的第2列SRAM列之中的第1個GEM Port,因此取得GEM Port ID=32的GEM Port是第5個GEM Port。
總的來說,判斷特定的GEM Port的過程,利用了第一記憶體陣列得到的結果(在這個例子中,就是得到第2列SRAM列的Bit 0這個指引);再利用第二記憶體陣列得到的結果(第二數值),而自GEM Port ID取得特定的GEM Port。
根據前述的計數方法,加總所述第二部分GEM Port ID及所述第二數據,取得一加總結果,並將所述加總結果作為所述計數器指針,因此根據計算1+4,而可得知是GEM Port ID=32的GEM frame屬於這個ONU的第5個GEM Port。
接著,在查找計數組方面,以第5個GEM Port的5的二進制000001012為計數器指針,找到對應的計數組。
在本發明中,第一記憶體陣列的空間為256×16位元,第二記憶體陣列的空間為256×8位元,兩者合計為6144位元,小於比較例中記憶體陣列所需的4096×9=36864位元,大幅節省了3840×8=30720位元的記憶體空間,根據6144與36864的比值,可知道本發明所需要的記憶體空間僅為比較例的六分之一。
(參考示例與實施例的比較)
圖6顯示參考示例與實施例的比較表。
現在,以相同的執行效能(即一個ONU支持256個GEM Port)的條件下,通過圖6的比較表,可以發現到,在參考示例中(一組記憶體陣列),SRAM的面積要求是須可容納36864個位元;在透過實施方式呈現的例子中(二組記憶體陣列),通過配置第一儲存記憶體陣列及第二記憶體陣列所需的總面積只須容納6144個位元,僅需要現有技術SRAM面積的六分之一。顯然,本發明在減少SRAM的面積上具有優勢。
總的來說,根據本發明的方法,查找過程中先透過第一記憶體陣列找到GEM Port ID是位於哪一列中的哪一個位置,並以第二記憶體陣列找到相應的有效位元總和,再據此計算出計數器指針以進行計數。
如此,根據本發明的優勢在於,本發明提出的方法大幅地減少SRAM面積,從而實現快速查找及計數GEM訊框的方法。
儘管本發明已透過多個實施例來說明,應理解的是,只要不背離本發明的精神及申請專利範圍所主張者,可做出許多其他可能的修飾及變化。
Claims (13)
- 一種查找方法,適用於千兆無源光網路(GPON),所述查找方法包括:將GEM訊框的GPON封裝方式埠標識(GEM Port ID)拆解成第一部分GEM Port ID及第二部分GEM Port ID;利用所述第一部分GEM Port ID在第一記憶體陣列中進行列查找,並利用所述第二部分GEM Port ID在第一記憶體陣列中進行行查找;及根據所述在第一記憶體陣列中進行列查找及行查找的結果,判斷出第一記憶體陣列的特定位元位置,其中所述特定位元位置代表所述GEM訊框使用的特定GPON封裝方式埠(GEM Port)。
- 如請求項1所述的查找方法,其中,所述方法還包括:由ONU利用所述特定位元位置的值判斷所述GEM訊框是否屬於所述ONU。
- 如請求項1所述的查找方法,其中,所述方法還包括:利用所述第一部分GEM Port ID於第一記憶體陣列進行列查找,而取得特定的GPON封裝方式埠。
- 如請求項1所述的查找方法,其中,所述第一記憶體陣列具有多個記憶體列,所述多個記憶體列分別具有各自的列地址,且所述多個記憶體列儲存的數據包括多個位元,每一個位元分別代表一個GEM Port。
- 一種千兆無源光網路(GPON)光網路單元(ONU)積體電路,其中,所述GPON ONU積體電路包括:第一記憶體陣列,由第一記憶體列構成,並且包括多個儲存單元,每一儲存單元代表一個GPON封裝方式埠(GEM Port),每一儲存單元儲存的第一數據指出相關的GEM Port的有效性;以及第二記憶體陣列,由第二記憶體列構成,其中所述第二記憶體列在所述第二記憶體陣列中的設置順序相同於所述第一記憶體列在所述第一記憶體陣列中的設置順序,其中所述第二記憶體列儲存的第二數據為設置在與所述第二記憶體相同列地址之所述第一記憶體列之前的所有記憶體列的有效GEM Port總數,其中所述第二數據相關於計數器指針(counter index)。
- 如請求項6所述的GPON ONU積體電路,其中所述第一記憶體列與所述第二記憶體列具有相同的列地址。
- 如請求項6所述的GPON ONU積體電路,其中所述第二記憶體列的位元數需要能表示所述GPON ONU積體電路能夠支持的所述GEM Port的最大數量。
- 一種應用於請求項6的GPON ONU積體電路的查找方法,其中,所述查找方法包括:通過待測GPON封裝方式埠標識(GEM Port ID)對所述第一記憶體陣列進行查找,判斷出第一儲存單元; 響應所述第一儲存單元為有效的事件,基於所述待測GEM Port ID對所述第二記憶體陣列進行查找,以取得所述第二數據;以及基於所述第二數據判斷出所述計數器指針。
- 如請求項9所述的查找方法,其中,所述基於所述第二數據判斷出所述計數器指針包括:基於所述待測GEM Port ID及所述第二數據判斷出所述計數器指針。
- 如請求項10所述的查找方法,其中,所述查找方法還包括:將所述待測GEM Port ID拆解成第一部分GEM Port ID及第二部分GEM Port ID,其中所述通過以待測GPON封裝方式埠標識(GEM Port ID)對所述第一儲存記憶體陣列進行查找,判斷出第一儲存單元包括:利用所述第一部分GEM Port ID在所述第一記憶體陣列中進行列查找;以及利用所述第二部分GEM Port ID在所述第一記憶體陣列中進行行查找。
- 如請求項11所述的查找方法,其中,其中所述響應所述第一儲存單元為有效的事件,基於所述待測GEM Port ID對所述第二記憶體陣列進行查找,以取得所述第二數據,包括:通過所述第一部分GEM Port ID在所述第二記憶體陣列中進行列查找,從所述第二記憶體陣列中判斷出所述第二記憶體列;以及由所述第二記憶體列提供所述第二數據。
- 如請求項12所述的查找方法,其中,其中所述基於所述待測GEM Port ID及所述第二數據判斷出所述計數器指針還包括: 通過加總所述第二部分GEM Port ID及所述第二數據,取得一加總結果;以及將所述加總結果作為所述計數器指針。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110145242A TWI797868B (zh) | 2021-12-03 | 2021-12-03 | 積體電路及查找及計數gpon gem訊框的方法 |
US17/708,360 US11778355B2 (en) | 2021-12-03 | 2022-03-30 | Method for searching and counting GPON gem frame |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110145242A TWI797868B (zh) | 2021-12-03 | 2021-12-03 | 積體電路及查找及計數gpon gem訊框的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI797868B true TWI797868B (zh) | 2023-04-01 |
TW202324976A TW202324976A (zh) | 2023-06-16 |
Family
ID=86607171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110145242A TWI797868B (zh) | 2021-12-03 | 2021-12-03 | 積體電路及查找及計數gpon gem訊框的方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11778355B2 (zh) |
TW (1) | TWI797868B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009013215A2 (en) * | 2007-07-25 | 2009-01-29 | Nokia Siemens Networks Oy | Method for addressing ethernet streams with a structured gpon gem port id |
CN102056029A (zh) * | 2009-11-10 | 2011-05-11 | 中兴通讯股份有限公司 | 一种gpon系统中实现以太网包重组的方法和装置 |
US20140178074A1 (en) * | 2011-07-04 | 2014-06-26 | Huawei Technologies Co., Ltd. | Method for acquiring pon port association relationship, optical network device, and optical network system |
US10194007B2 (en) * | 2016-08-11 | 2019-01-29 | Calix, Inc. | Concurrent optical network terminal simulation |
TWI693802B (zh) * | 2018-01-26 | 2020-05-11 | 大陸商華為技術有限公司 | 無源光網路系統、光線路終端、光網路單元及無源光網路系統中的資訊傳輸方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4410792B2 (ja) * | 2006-12-21 | 2010-02-03 | 株式会社日立コミュニケーションテクノロジー | 暗号化装置 |
CN102026049B (zh) * | 2009-09-23 | 2014-01-01 | 中兴通讯股份有限公司 | 一种基于gpon的上行报文调度方法及其系统 |
KR102514458B1 (ko) * | 2021-03-02 | 2023-03-29 | 한국전자통신연구원 | 네트워크 공유를 이용한 pon 슬라이싱 방법 및 장치 |
-
2021
- 2021-12-03 TW TW110145242A patent/TWI797868B/zh active
-
2022
- 2022-03-30 US US17/708,360 patent/US11778355B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009013215A2 (en) * | 2007-07-25 | 2009-01-29 | Nokia Siemens Networks Oy | Method for addressing ethernet streams with a structured gpon gem port id |
CN102056029A (zh) * | 2009-11-10 | 2011-05-11 | 中兴通讯股份有限公司 | 一种gpon系统中实现以太网包重组的方法和装置 |
US20140178074A1 (en) * | 2011-07-04 | 2014-06-26 | Huawei Technologies Co., Ltd. | Method for acquiring pon port association relationship, optical network device, and optical network system |
US10194007B2 (en) * | 2016-08-11 | 2019-01-29 | Calix, Inc. | Concurrent optical network terminal simulation |
TWI693802B (zh) * | 2018-01-26 | 2020-05-11 | 大陸商華為技術有限公司 | 無源光網路系統、光線路終端、光網路單元及無源光網路系統中的資訊傳輸方法 |
Also Published As
Publication number | Publication date |
---|---|
US11778355B2 (en) | 2023-10-03 |
TW202324976A (zh) | 2023-06-16 |
US20230179895A1 (en) | 2023-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5323389A (en) | ATM cell interface and method for dispatching an ATM cell | |
JP3901942B2 (ja) | Vp/vcルックアップ機能 | |
US8542686B2 (en) | Ethernet forwarding database method | |
US8792497B2 (en) | Method and apparatus for performing link aggregation | |
CA2160820C (en) | Method and apparatus for storing and retrieving routing information in a network node | |
JP4929954B2 (ja) | Macブリッジフィルタ及び方法 | |
US6725216B2 (en) | Partitioning search key thereby distributing table across multiple non-contiguous memory segments, memory banks or memory modules | |
US6804230B1 (en) | Communication device with forwarding database having a trie search facility | |
WO2009141677A2 (en) | System and method for application of hash function in telecommunication and networking | |
US20090282167A1 (en) | Method and apparatus for bridging | |
US6819671B1 (en) | Relay control circuit using hashing function algorithm | |
US7330481B2 (en) | Highly channelized port polling in a telecommunications switch | |
CN115883681A (zh) | 报文解析方法、装置、电子设备及存储介质 | |
US6996559B1 (en) | IP address resolution methods and apparatus | |
TWI797868B (zh) | 積體電路及查找及計數gpon gem訊框的方法 | |
CN101729193B (zh) | 编码方法和装置、解码方法和装置以及编解码系统 | |
CN101483844B (zh) | 索引移动电话号码的方法和系统 | |
CN116233653A (zh) | 查找及计数gpon gem帧的方法 | |
CN109194665A (zh) | 一种报文查找键值的生成方法及装置 | |
WO2004112250A1 (ja) | 統計カウンタ装置 | |
JPH10233788A (ja) | Atmネットワーク装置の項目に仮想接続を介して到達するatmセルをデータに関連付ける方法 | |
US20030198233A1 (en) | Cross-connect switch and route monitoring assist apparatus | |
US6377578B1 (en) | ATM re-assembly circuit and method | |
US7424022B2 (en) | Method and circuit for providing a context datum of a device based on an address associated with this device | |
CN101917347B (zh) | 一种基于hash进行标签映射的交叉方法 |