專利名稱:用于使用嵌入式控制器自動配置電信設備的系統和方法
技術領域:
本發明涉及一種電信芯片,尤其涉及一種用串行接口自動配置的電信芯片。
背景技術:
轉發器通常被用于光信號傳輸。從一個光纖到達的承載著數據的光信號被轉發器轉換成電信號,并隨后經過傳導介質將該電信號發送到使用該數據的目的地。載有數據的電信號也可以由所述轉發器轉換為光信號并且通過光纖發送到另一個目的地。在經由所述光纖傳輸數據期間或在數據轉換為電信號期間可能發生錯誤,并且這些錯誤將不利地影響所述數據。
所述錯誤可以通過一個糾錯電路而被校正。所述光信號或電信號可以由一個外部的糾錯單元在這些信號被發送給其它電路使用之前加以處理。然而,外部的糾錯單元增加了基于轉發單元的轉發器的總體設計的復雜性。
一種可選方案是將所述糾錯單元結合到所述轉發器單元中。這種方案讓得到的轉發器單元更緊湊并且消除了對外部糾錯單元的需要。然而,這種方法增加了數據連接器的數目,該數目經常超過了允許的連接器的數目。
糾錯單元通常被作為一個專用集成電路(ASIC)實現,其能夠被不同地配置以符合不同的操作條件。除接收信號數據之外,所述糾錯單元也從外部信源接收配置數據。這樣,所述糾錯單元需要大量的用于處理所述信號數據和配置數據的連接器。
當所述糾錯單元被結合結合到所述轉發器中時,連接器的數目將超過轉發器允許的引腳限制,并且即使有可能不超過轉發器封裝引腳的常規限制,也將使得該組合電路非常困難。因而渴望具有一種裝置和方法,其在沒有超出用于轉發器的連接器限制的情況下把一個糾錯單元結合在一個轉發器中,并且本發明主要致力于這種裝置和方法。
發明內容
根據本發明的一種自動配置的電信設備具有用于處理光信號和電信號的糾錯能力。所述電信設備包括光-電轉換單元,用于轉換從第一外部信源接收的輸入的光信號成為輸入的電信號,電-光轉換單元用于將從自動配置的糾錯單元接收的輸出的電信號轉換成為輸出的光信號,所述自動配置的糾錯單元能夠根據預定的算法校正所述輸入的電信號中的錯誤和輸出電信號,以及串行接口單元,能夠從第二外部信源中接收配置數據并將所述配置數據存儲到存儲單元中。
在另一個實施例中,本發明是用于處理通信網絡中的預定功能的自動配置的電信設備。所述電信設備包括功能單元,用于處理預定的電信功能,主控制器,能夠從外存儲器設備中檢索配置數據,至少一個寄存器,用于存儲所述配置數據,從控制器,能夠把所述配置數據從外部控制器傳送到至少一個寄存器中,并且根據來自于所述外部控制器的請求,從至少一個芯片級寄存器中檢索所述配置數據,以及通用處理器接口單元,用于提供到所述外部控制器的接口。所述配置數據用來在剛一加電時就自動配置所述電信設備。
在又一個實施例中,本發明是一種用于自動配置目標設備的方法。所述方法包括步驟從外部單元接收多個信號,通過多個信號確定用于所述目標設備的工作狀態,如果所述工作狀態是主模式,則從外部信源通過串行接口檢索配置數據,如果所述工作狀態是從模式,則從外部處理器通過所述串行接口接收所述配置數據,并且存儲所述配置數據到芯片級寄存器中,其中所述配置數據將被用于自動配置所述目標設備。
在又一個實施例中,本發明是一種用于從第一存儲設備中檢索目標數據并且在第二存儲設備中為其存儲確定目標地址的方法。該方法包括步驟從第一存儲設備中檢索所述數據,從第一存儲設備中檢索用于所述目標數據的當前地址組,確定用于所述當前地址組的格式,如果所述當前地址組具有第一格式,該格式包括一個頁面地址和偏移地址,通過增加所述頁面地址到所述當前地址組的偏移地址來為目標數據計算目標地址,并且如果當前地址組具有第二格式,該格式包括一個偏移地址,通過增加來自于以前的地址組中的頁面地址到來自于所述當前地址組中的偏移地址來為目標數據計算目標地址。
從下述的
、具體的實施方式、以及提出的權利要求中將,將顯見本發明的其它的目的、特征、和優點。
從下列本發明的示范性的實施例的詳細描述中,本發明的優點將變得顯而易見,其描述將應結合所述附圖一起考慮,其中附圖1是一個按照本發明的示范性的自動配置的電信設備的方框圖,其具有自動配置和糾錯的能力;附圖2是一個按照本發明的示范性的自動配置的電信設備的接口方框圖;附圖3是一個按照本發明的附圖2的所述示范性自動配置的電信設備的方框圖;附圖4是一個用于確定糾錯單元的工作狀態的流程圖;附圖5是一個舉例說明內部集成電路(I2C)主接口的操作的流程圖;附圖6A-6D描繪存儲在一個存儲設備中的數據結構;附圖7是一個在I2C主模式中操作的流程圖;以及附圖8是一個在I2C從模式中操作的流程圖。
具體實施例方式
電信設備傳統上使用UPI接口來配置,本發明為其提供串行接口,因此糾錯單元能夠在不超出電信設備的連接器限制的情況下被結合到所述電信設備中。附圖1舉例說明一個示范性的自動配置的電信設備的方框圖100。在這個實施例中,所述電信設備是一個具有自動配置和糾錯能力的轉發器模塊110。所述轉發器模塊110可以從光纖中接收以光信號形式的數據,轉換所述光信號為電信號,并且傳送所述電信號到電路。所述轉發器模塊110也可以從所述電路中接收電信號,轉換它們為光信號,并且把所述光信號傳送到所述光纖上。所述轉發器模塊110包括糾錯單元120,存儲單元130,電信號到光信號轉換(E/O)單元140,以及光信號到電信號轉換(O/E)單元150。
所述O/E單元150從光纖中接收光信號并且轉換所述光信號成為電信號。這些電信號可能包含來自于所述傳送和轉換的錯誤,并且在它們被傳送到其它電路之前需要被校正。所述校正通過所述糾錯單元120來進行。所述E/O單元140從所述糾錯單元120中接收電信號并且在把它們傳送到所述光纖上之前轉換它們成為光信號。
根據一個預定的算法,在轉換這些電信號成為光信號并且把它們傳送到所述光纖上之前,所述糾錯單元120也校正任何可能被嵌入到從其它電路中接收的電信號中的錯誤。所述算法可能履行國際電信聯盟(ITU)標準,ITU G.709,其利用前向糾錯(FEC機制。所述糾錯單元120能夠通過一個串行接口自動地存取存儲在存儲單元130中的配置數據。在一個實施例中,所述在糾錯單元120和存儲單元130之間的串行接口是一個內部集成電路(I2C)接口。所述糾錯單元120從所述存儲單元130中檢索所述配置數據并且把它們存儲在它的內部寄存器中以便可以在所述自動配置過程期間使用。所述糾錯單元120還可以通過一個外部處理單元被配置(在附圖1中未顯示)。在這種情況下,所述糾錯單元120充當一個所述外部處理單元的從設備并且所述外部處理單元提供配置數據到所述糾錯單元120。
所述存儲單元130可以是電可擦可編程只讀存儲器(EEPROM),閃速存儲器(Flash ROM),電可編程只讀存儲器(EPROM),或其它適當的存儲器設備。所述配置數據被保存在所述存儲單元130中。
當所述糾錯單元120被加電時,它通過一個串行的且雙向的數據連接器,MSDA,在一個時鐘控制信號,MSCL的控制下從所述存儲單元130中讀取數據。在結束從所述存儲單元130中讀取數據之后,所述糾錯單元120存儲所述配置數據到它的內部芯片級寄存器中然后根據所述配置數據自動地配置它本身。可替換地,所述糾錯單元120能夠用來自于另一個外部元件的數據通過另一個串行的且雙向的數據連接器SSDA和另一個時鐘控制信號SSCL被編程。
轉到附圖2,舉例說明微程序控制器(MCU)210和糾錯單元120之間的接口方框圖200。在這個實施例中,所述糾錯單元120能夠根據用戶需求被自動配置并且校正從外部元件中接收的信號中的錯誤。所述糾錯單元120與一個存儲單元230通信。所述糾錯單元120也被耦合到所述諸如MCU 210之類的外部元件上。在一個實施例中,所述糾錯單元120提供三個接口,其包括通用處理器接口(UPI),一個主串行接口,以及一個從串行接口。所述UPI,如附圖2所示,包括地址總線201,控制總線202,和數據總線203。所述從串行接口包括從時鐘連接器(SSCL)204和從數據連接器(SSDA)205。所述從串行接口被用于從模式中。主串行接口包括主時鐘連接器(MSCL)206和主數據連接器(MSDA)207。所述主串行接口被用于主模式中,并且這些主連接器連接所述糾錯單元120到所述存儲單元230。所述數據總線203,SSDA 205,和MSDA 207全部都是雙向的。在一個實施例中,所述主和從串行接口是內部集成電路(I2C)接口。
盡管在附圖2中示出的實施例包括三個不同類型的接口,UPI,主串行接口,和從串行接口,本領域中的那些普通技術人員應當理解利用所述接口的任何一個的實施例將提供配置所述糾錯單元120需要的功能性。
UPI是一個MCU210和糾錯單元120之間的并行接口并且可以用來在它們之間傳送數據。本領域中的那些普通技術人員將應認識到所述MCU 210可以是任何種類的處理器,微處理器或其它通用處理器。當糾錯單元120被加電時,它能夠通過所述UPI從MCU210接收數據或發送數據到MCU210。所述UPI利用多條總線來在MCU 210和糾錯單元120之間傳送信息。所述數據總線203在MCU 210和糾錯單元120之間傳送數據。所述控制總線202包括在MCU 210和糾錯單元120之間的所有的控制信號。所述地址總線201在所述糾錯單元120中選擇內部芯片級寄存器的一個特殊的地址空間,在其中所述MCU210想要控制或存儲所述數據。例如,所述MCU 210能夠使用控制總線202上的控制信號來指示所述糾錯120從MCU 210中接收數據或傳送數據從糾錯單元120到MCU 210中。依據來自于MCU 210的請求,然后數據能夠在MCU 210和糾錯單元120之間傳送并且通過地址總線203確定數據的目的地。所述糾錯單元120能夠把接收到的數據存儲到它的芯片級寄存器中。在芯片級寄存器中的數據可用于配置所述糾錯單元120。
從時鐘連接器SSCL 204和從數據連接器SSDA 205由所述從串行接口使用。當糾錯單元120以從模式運行時使用所述從串行接口。所述從串行接口可以利用UPI選擇性地共享所述插腳或連接器。所述從串行接口被連接到一個諸如MCU 210之類的外部元件。所述MCU 210還可以通過所述從串行接口控制MCU 210和糾錯單元120之間的數據傳輸。所述糾錯單元120能夠進入從模式并且從所述諸如MCU 210之類的外部元件中接收數據。在從模式期間,所述糾錯單元120通過使用所述從時鐘連接器(諸如SSCL 204)響應MCU 210。當糾錯單元120加電,它通過所述數據連接器SSDA 205從MCU 210中接收數據。當所有的配置數據已經被接收并且存儲到被嵌入在糾錯單元120中的芯片級寄存器中時,所述糾錯單元120根據接收到的數據自動配置。在糾錯單元120啟動并且運行之后,它校正電信數據中的錯誤。同理,MCU 210可以從所述糾錯單元120中通過數據連接器SSDA 205請求并且接收信息。
主時鐘連接器MSCL 206和主數據連接器MSDA 207由所述主串行接口在主模式中被使用。所述主串行接口可能是I2C接口。所述主串行接口用來存取所述存儲單元230。存儲單元230被提供給糾錯單元120用于存儲自動配置數據。所述存儲單元230可以是電可擦可編程序只讀存儲器(EEPROM),電可編程只讀存儲器(EPROM),或其它適當的存儲設備。當所述電源首先被提供給糾錯單元120時,它以主模式運行并且從所述存儲單元230中通過主數據連接器MSDA 207讀取配置數據。所述配置數據被存儲到所述糾錯單元的內部芯片級寄存器中。在從存儲單元230中讀取數據之后,所述糾錯單元120根據配置數據配置它本身。在電信數據中的由傳送和轉換引起的錯誤被所述糾錯單元120根據一個預定的算法,諸如ITU G.709被校正。
附圖3舉例說明所述糾錯單元120的一個配置接口方框圖300。在這個實施例中,所述糾錯單元120可以包括I2C主控制器310,I2C從控制器320,UPI 330,多路復用器(MUX)1340,多路復用器(MUX)2350,和芯片級寄存器360。主數據連接器MSDA 207和主時鐘連接器MSCL 206由I2C主控制器310以主模式被使用。從數據連接器SSDA205和從時鐘連接器SSCL 204由所述I2C從控制器320以從模式被使用。在附圖3中示出的UPI信號208表示數據,控制信號和來自于地址總線201,控制總線202,和數據總線203的其它信號。所述MUX1 340和所述MUX 2 350用于選擇哪個數據將被存儲到所述芯片級寄存器360中。信號MIICENA 301和IICSEL 302是使能信號用于選擇所述糾錯單元120的操作模式。
信號MIICENA 301和IICSEL 302啟動所述糾錯單元120來以主模式動作并且被耦合到一個主串行接口。I2C主控制器310能夠從外部信源,例如所述存儲單元230(在圖3中未顯示)中檢索數據。I2C主控制器310能夠在它被加電之后直接通過所述I2C接口從外部信源中讀取所述數據。更具體地說,在所述主時鐘連接器,MSCL 206的控制下所述數據通過I2C接口,例如MSDA 207的數據連接器被讀取。所述I2C主控制器310能夠在所述芯片級寄存器360中存儲用于自動配置所述糾錯單元120的自動配置的數據。
所述I2C從控制器320用于從模式以及通過另一個I2C接口從外部通用處理器,例如所述MCU 210(在圖3中未示出)中接收數據。所述I2C從控制器320通過所述從數據連接器SSDA 205從外部通用處理器中接收所述數據。在接收所述數據之后,糾錯單元120能夠在芯片級寄存器360中存儲所述配置的數據。
本領域中的那些普通技術人員應當意識到所述I2C主控制器以及I2C從控制器可以被結合成為一個單獨的單元,主數據連接器和從數據連接器可以被結合,并且主時鐘連接器和從時鐘連接器也可以被結合。在這個實施例中,數據連接器可以是雙向的。
UPI 330提供一個默認的并行模式到所述糾錯單元120。所述UPI 330提供到所述外部通用處理器的并行接口。通過所述UPI在外部通用處理器的控制下傳送數據。在可替換的實施例中,I2C接口,或者I2C從控制器320或I2C主控制器,可以與UPI 330共享所述連接器插腳。
信號MIICENA 301和IICSEL 302用來控制所述糾錯單元120的工作模式并且選擇哪個接口被使用。所述信號MIICENA 301和信號IICSEL 302是使能信號。它們用來確定哪個接口將是活動的并且用于在外部元件和所述糾錯單元120的芯片級寄存器360之間傳送數據。
從I2C主控制器310和I2C從控制器320輸出的數據被送給所述MUX1 340。所述MUX1 340根據信號MIICENA 301路由多個數據輸出中的一個到它的輸出。來自于MUX1 340的輸出和來自于UPI 330的數據輸出被送給所述MUX2 350。MUX2 350根據所述信號IICSEL 302路由多個數據輸出中的一個給它的輸出,其被連接到所述芯片級寄存器360。通過MUX1 340和MUX2 350的組合,來自于主串行接口,從串行接口,以及UPI的數據可以被存儲到所述芯片級寄存器360中。
在芯片級寄存器360內的數據也可以通過外部處理器來讀取。來自于芯片級寄存器360的數據可以通過I2C從控制器320或者UPI330來讀取。雖然所述I2C接口被表示在圖3中,但是本領域中的那些技術人員將會理解在沒有脫離本發明的精神的情況下其它的串行接口也可能被實現。
附圖4舉例說明一個用于在一加電時確定所述工作模式的流程圖400。當所述糾錯單元120被加電時,步驟410,它檢查信號MIICENA301和IICSEL 302,步驟420。如果MIICENA 301和IICSEL 302兩者都是高(也就是說這些信號的狀態可以被表示為(1,1)),所述糾錯單元I20進入主模式,例如I2C主模式,步驟440,其啟動所述I2C主控制器310從外部信源中檢索數據。在檢索數據之后,所述糾錯單元120進入從模式,例如I2C從模式,步驟450。如果MIICSEL301是低并且IICSEL 302是高,步驟430,所述糾錯單元120進入從模式,步驟450,其中所述糾錯單元120等候來自于所述外部處理器的命令。在I2C從模式中,可以通過所述數據連接器SSDA 205在外部處理器和I2C從控制器320之間傳送數據。如果IICSEL 302不是高,那么所述糾錯進入UPI模式,步驟460。在UPI模式,所述外部處理器可以通過所述UPI 330從所述糾錯單元120中讀出數據,和/或傳送數據到所述糾錯單元120中。
附圖5是一個舉例說明在主模式中的糾錯單元120的操作的流程圖500。所述糾錯單元120通過所述I2C接口從所述外存儲器單元230中讀出用于所述芯片級寄存器360的數據,步驟520。在讀取所述數據之后,糾錯單元120把所述數據寫入到所述芯片級寄存器360中,步驟530。所述糾錯單元120檢查是否所有的數據已經被讀取,步驟540。如果所述糾錯單元120沒有結束讀取所述數據,重復步驟520和530。如果所述糾錯單元120已經結束了讀取所述數據,糾錯單元120進入所述I2C從模式,步驟550。
附圖6A描繪了一個存儲設備的內存印象圖610,其舉例說明了芯片級寄存器的地址和數據是如何存儲在所述存儲設備中的。所述地址和數據被存儲在連續的存儲位置中。所述地址被分類成為兩個可能的種類頁面地址和偏移地址。芯片級寄存器的地址具有第一格式,其包括一個頁面地址和一個偏移地址,以及第二格式,其僅僅包括一個偏移地址。一個芯片級寄存器的頁面地址,偏移地址,以及數據形成一個信息集。芯片級寄存器的信息集被順序地存儲在所述存儲器中。然而,如果一個信息集的頁面地址和以前的信息集的頁面地址相同,所述頁面地址可以從該信息集中刪除。在存儲那些需要被自動配置地芯片級寄存器的信息集之后,文件結束(EOF)標志將被存儲在最后。當從所述存儲設備中檢索所述信息集時,如果一個信息集不包含頁面地址,來自于以前信息集的頁面地址用來計算用于所述數據的芯片級寄存器地址。繼續所述檢索操作直到一個文件結束(EOF)被讀取。在圖6A所示的內存印象圖610中,第一信息集,存儲位置000H-002H,包括一個頁面地址,一個偏移地址,以及一個數據。第二信息集,存儲位置003H-004H,包括一個偏移地址以及一個數據。使用所述第一信息集的頁面地址和第二信息集的偏移地址計算第二信息集的數據的存儲位置。這個刪除重復頁面地址的原理和機制也被用于存儲設備中信息存儲過程。這個機制在讀和/或寫操作期間增加了效率。
附圖6B舉例說明用于頁面地址的格式620。所述頁面地址通過一個頭4位設置為 的字節定義。附圖6C舉例說明一個用于偏移地址的格式630。所述偏移地址通過一個最高有效位(MSB)設置為0的字節定義。附圖6D舉例說明用于EOF的格式640。所述EOF通過一個其中所有的位被設置為1的字節定義。
所述芯片級寄存器360形成一個16頁的可尋址存儲空間并且每頁具有128字節。16頁的每一頁可以由一個頁面地址選中并且在所述頁之內的每字節可以通過所述偏移地址尋址。所述地址通過一個表示為A[10:0]的11位地址定義。A[10:7]加一個固定的二進制的’1000’作為一個寄存器的頁面地址。因此,以格式620示出的頁面地址具有下列組成部分位[7:4]被固定到4位二進制數據’1000’;位[3:0]是所述寄存器地址A[10:0]的A[10:7]。所述芯片級寄存器的每一頁具有128個字節,并且它通過A[6:0]尋址。A[6:0]加’0’形成所述寄存器的偏移地址。同樣地,以格式630表示的偏移地址具有下列組成部分位7被設置為一個-二進制數據’0’;位[6:0]是所述寄存器地址A[10:0]的A[6:0]。如果提供一個字節并且所述字節的最高有效位是’1’,所述字節是以格式620示出的寄存器的頁面地址。另外,如果所述字節的最高有效位是’0’,那么所述字節是以格式630示出的寄存器的偏移地址。如果所述字節是’11111111’,它是以格式640示出的指令’EOF’。所述指令’EOF’標明所述存儲設備中的地址或數據的結尾。
在內存印象圖610中,所述存儲設備具有用于第一芯片級寄存器(寄存器1)的第一頁面地址(頁面地址1),第一偏移地址(偏移地址1)和第一數據(數據1)。第一頁面地址,第一偏移地址和第一數據可以被存儲在所述存儲設備中的三個連續的入口處。在第一頁面地址,第一偏移地址,以及第一數據被存儲之后,第二芯片級寄存器的第二頁面地址(頁面地址2),第二偏移地址(偏移地址2),以及第二數據(數據2)被提供給所述存儲設備。在第二頁面地址,第二偏移地址,和第二數據被存儲之前,首先將確定第二頁面地址和第一頁面地址是否相同。如果第二頁面地址等于第一頁面地址,第二頁面地址將被刪除,并且只有第二偏移地址和第二數據將緊跟著第一數據被存儲到所述存儲設備中的兩個連續的入口中。另外,如果第二頁面地址不同于第一頁面地址,第二頁面地址,第二偏移地址,和第二數據將被存儲到所述存儲設備中的三個連續的入口中。同樣地,所述寄存器的地址和配置數據以一個有效地址-數據對的結構(例如依次存儲的{頁面地址,偏移地址,數據}或{偏移地址,數據})被存儲在所述存儲設備中。第三,第四,...或第N個芯片級寄存器的地址和數據將繼續以和第二芯片級寄存器類似的方法存儲在所述存儲設備中,直到標記EOF被發送給所述存儲設備。所述標記EOF通常指示所述有效地址-數據對的結尾。所述方法可以大大有效地減少存儲設備的空間。在所述地址和數據被存儲在所述存儲設備中之后,它們可以通過所述糾錯單元120讀取并且寫入到所述芯片級寄存器360中。第一數據將被寫入到所述由第一頁面地址和第一偏移地址確定的第一芯片級寄存器中。第二數據將被寫入到由第二頁面地址和第二偏移地址確定的第二芯片級寄存器中。并且所述第三,第四,...,或第N個數據將被分別存儲到所述第三,第四,...,或第N個芯片級寄存器中。
圖7是一個I2C主模式中的操作的流程圖700。當所述糾錯單元120被加電時,所述單元120開始從外部信源(諸如所述存儲位置230)中讀取數據。所述糾錯單元120初始化一個外部信源的存取地址為000h,步驟702,并且從這個地址讀取第一字節(b1),步驟703。
如果第一字節(b1)不是EOF,步驟710,所述糾錯單元120檢查來自于所述外部信源的第一字節(b1)是否是一個頁面地址,步驟720。如果第一字節(b1)指示它是一個頁面地址(例如,b1[7]是’1’),步驟720,所述外部信源的存取地址增加一并且所述糾錯單元120根據新的存取地址從所述外部信源中讀取第二字節(b2),步驟721。第二字節(b2)在這里是一個偏移地址。在結束讀取第二字節(b2)之后,所述外部信源的存取地址又增加一,并且所述糾錯單元120從所述外部信源中讀取第三字節(b3),步驟722。這里的第三字節(b3)是配置數據。所述頁面地址和偏移地址用來生成糾錯單元120中的芯片級寄存器的目標地址,步驟723。在步驟724,配置數據b3(亦稱目標數據)(第三字節)將被寫入到由步驟723生成的地址指定的芯片級寄存器中。在存儲第一配置數據(第三字節(b3))之后,所述存取地址被增加一,步驟725,并且重復所述存儲設備讀循環。
如果第一字節(b1)不是EOF或頁面地址,它將是一個偏移地址,步驟730。如果第一字節(b1)是偏移地址(例如b1[7]是’0’),所述糾錯單元120從所述外部信源中讀取第二字節(b2),步驟731。第二字節(b2)是配置數據,其后來將被寫入到芯片級寄存器中。所述芯片級寄存器的目標地址通過使用從外部信源中讀取的最后的頁面地址和剛剛從它中讀取的偏移地址得出,步驟732。最后讀取的數據被寫入到由在步驟732中計算的地址指定的芯片級寄存器中,步驟733。在數據被寫入到所述芯片級寄存器中之后,重復所述存儲器存取循環。
當從所述存儲設備中讀取的字節是EOF時,步驟710,那么所述糾錯單元120將結束所述存儲器存取循環并且進入I2C從模式,步驟711。
附圖8舉例說明在一個I2C從模式中的操作的流程圖800。所述糾錯單元120通過一個串行接口從外部主機(未顯示)中接收一個命令,步驟820,例如MCU。在接收所述命令之后,應確定外部主機是否想要把數據寫入到所述糾錯單元120中的芯片級寄存器360中,步驟830。
如果外部主機想要把數據寫入到芯片級寄存器360中,糾錯單元120從I2C命令中提取一個地址A[10:0]和數據D[7:0],步驟850。然后糾錯單元120把數據D[7:0]寫入到一個芯片級寄存器中,步驟860。芯片級寄存器的地址是A[10:0]。在把所述數據D[7:0]寫入到由地址A[10:0]指定的芯片級寄存器中之后,所述糾錯單元120可以返回到步驟820,并且接收另一條命令。
如果所述外部主機想要從糾錯單元120中讀取數據,步驟840,單元120從由地址A[10:0]指定的芯片級寄存器中提取地址A[10:0]并且讀取數據D[7:0],步驟870。糾錯單元120將通過所述I2C接口發送所述數據D[7:0],步驟880。在發送所述數據之后,糾錯單元120將接收另一條I2C命令,步驟820,并且所述循環被重復。如果接收到的命令不是寫或讀命令,所述糾錯單元120將返回到步驟820并且從外部I2C主機中接收一條新的命令。
在操作中,所述轉發器110接收,轉換,并且傳送光和電信號。在加電過程期間,在所述轉發器110內的糾錯單元120經歷一個自動配置過程,其中所述糾錯單元120根據存儲在它的內部芯片級寄存器360中的數據被配置。所述數據可以在主模式下或者從模式下被傳送到所述芯片級寄存器360中。通過I2C協議所述數據被傳送到所述糾錯單元120中。所述I2C協議是一個串行接口并且將用于傳送的引腳的數目減到最小。
當所述糾錯單元120被加電時,它檢查它是以主模式還是以從模式運行。當信號IICSEL 301和MICENA 302兩個都有效,所述糾錯單元進入I2C主模式。所述糾錯單元120讀取所述外存儲器單元230,所述配置數據以前被存儲在其中。在所述外存儲器單元230中的信息被順序地讀取。所述信息包括頁面地址,偏移地址,和配置數據。所述糾錯單元120根據頁面地址和偏移地址確定每一配置數據被存儲在哪個芯片級寄存器360中。
在圖4-5和7-8的上下文中,所述方法可以被實現,例如,通過運行計算機電路的一部分或執行機器可讀的指令序列或它們的組合。所述指令可以駐留在各種類型的信號或數據存儲介質上,所述數據存儲介質可以是主存儲介質、次級或者第三級存儲介質。所述介質可能包含,例如,通過無線網絡的元件存取或駐留在所屬無線網絡的元件之內的RAM(未顯示)。無論被包含在RAM,磁盤,或其它次要的存儲介質中,所述指令可以被存儲在各種機器可讀數據存儲介質上,諸如DASD存儲(例如,傳統的″硬盤″或RAID陣列),磁帶,電只讀存儲器(例如,ROM,EPROM,或EEPROM),閃速存儲卡,光存儲設備(例如CD-ROM,WORM,DVD,數字光帶),紙“打孔”卡,或其它適當的包括數字和模擬傳輸介質的數據存儲介質。
雖然已經在此描述了一些實施例,但是在此描述的使用本發明的幾個實施例是以示例的方式給出而非對本發明的限制。對于本領域中的技術人員來說,在不背離本發明精神實質和所附權利要求定義的上的精神和范圍的情況下,將顯見許多其它的實施例。此外,盡管本發明的元件可能以單數描述或請求保護,但除非被明確地表明限制為單數,復數也是被考慮的。
權利要求
1.一種具有糾錯能力的自動配置的電信設備,用于處理光信號和電信號,所述設備包括光-電轉換單元,用于轉換從第一外部信源接收的輸入的光信號成為輸入的電信號;電-光轉換單元,用于轉換從自動配置的糾錯單元接收的輸出的電信號成為輸出的光信號;所述自動配置的糾錯單元能夠根據預定的算法校正所述輸入的電信號中的錯誤和輸出電信號;以及串行接口單元,能夠從第二外部信源中接收配置數據并且將該配置數據儲存到一個存儲單元中。
2.如權利要求1所述的自動配置的電信設備,其特征在于,進一步的包含能夠將所述配置數據發送到所述存儲單元的通用處理器接口(UPI)單元。
3.如權利要求1所述的自動配置的電信設備,其特征在于,所述串行接口單元進一步的包含串行數據連接器。
4.如權利要求3所述的自動配置的電信設備,其特征在于,所述串行數據連接器是雙向的數據連接器。
5.如權利要求1所述的自動配置的電信設備,其特征在于,所述串行接口單元是內部集成電路(I2C)接口。
6.如權利要求1所述的自動配置的電信設備,其特征在于,所述串行接口單元進一步的包含I2C主接口單元和I2C從接口單元。
7.如權利要求1所述的自動配置的電信設備,其特征在于,所述存儲單元進一步的包含多個芯片級寄存器。
8.一種自動配置的電信設備,用于處理通信網絡中的預定功能,自動配置的電信設備與外部存儲器設備和外部控制器通信,包括功能單元,用于處理預定功能;主控制器,能從外部存儲器設備檢索配置數據,該配置數據用來配置自動配置的電信設備;至少一個寄存器,用于存儲配置數據;從控制器,能夠在外部控制器的控制下,將配置數據從外部存儲器設備傳送到至少一個寄存器并且從至少一個寄存器中檢索配置數據;以及通用處理器接口(UPI)單元,用于向外部控制器提供接口,該UPI單元能夠將配置數據從外部控制器傳送到至少一個寄存器并且從至少一個芯片級寄存器中檢索配置數據,其中,該配置數據用于當自動配置的電信設備加電時,自動配置所述電信設備。
9.如權利要求8所述的自動配置的電信設備,其特征在于,進一步的包含主串行接口,用于從外存儲器設備中讀取配置數據;以及從串行接口,用于在外部控制器和至少一個寄存器之間傳送配置數據,其中從串行接口能夠雙向傳送數據。
10.如權利要求9所述的自動配置的電信設備,其特征在于,主串行接口進一步的包含主串行數據連接器并且從串行接口進一步的包含從串行數據連接器。
11.如權利要求10所述的自動配置的電信設備,其特征在于,主串行數據連接器是雙向的連接器并且從串行數據連接器是雙向的連接器。
12.如權利要求9所述的自動配置的電信設備,其特征在于,主串行接口是內部集成電路(I2C)接口并且從串行接口是I2C接口。
13.如權利要求9所述的自動配置的電信設備,其特征在于,進一步的包含包括第一數據通路,第二數據通路和第三數據通路的電路,其中第一數據通路連接至少一個寄存器和主串行接口,第二數據通路連接至少一個寄存器和從串行接口,并且第三數據通路連接至少一個寄存器和UPI接口單元。
14.如權利要求8所述的自動配置的電信設備,其特征在于,外存儲器設備是EEPROM。
15.一種用于自動配置目標設備的方法,該目標設備能夠以主模式和從模式運行,包含目標設備從外部電路中接收多個信號;根據所述多個信號確定用于目標設備的工作模式;如果工作模式是主模式,從外部信源中通過串行接口檢索配置數據;如果工作模式是從模式,在目標設備從外部處理器中通過串行接口接收配置數據;并且將配置數據存儲到目標設備中的芯片級寄存器中,其中配置數據將用來自動配置所述目標設備。
16.如權利要求15所述的方法,其特征在于,進一步的包括如果工作模式是UPI模式,從外部處理器中通過UPI存取接口接收配置數據。
17.如權利要求15所述的方法,其特征在于,一旦加電,目標設備進入主模式。
18.如權利要求15所述的方法,其特征在于,可以任何時候通過設置多個信號進入主模式。
19.如權利要求15所述的方法,其特征在于,可以任何時候通過設置多個信號進入從模式。
20.如權利要求15所述的方法,其特征在于,進一步的包含在主模式之后進入從模式。
21.如權利要求15所述的方法,其特征在于,串行接口是內部集成電路(I2C)接口。
22.如權利要求15所述的方法,其特征在于,外部信源是EEPROM。
23.一種用于從第一存儲設備中檢索目標數據并且確定用于存儲目標數據到第二存儲設備中的目標地址的方法,包含從第一存儲設備中檢索目標數據;從第一存儲設備中檢索用于目標數據的當前地址組;確定用于當前地址組的格式;如果當前地址組具有第一格式,其包括頁面地址和偏移地址,通過將當前地址組的頁面地址與偏移地址相加來計算用于目標數據的目標地址;以及如果當前地址組具有第二格式,其包括偏移地址,通過將來自于以前的地址組的頁面地址與來自于當前地址組的偏移地址相加來計算用于目標數據的目標地址。
24.如權利要求23所述的方法,其特征在于,進一步的包含存儲數據到由目標地址確定的第二存儲設備中。
全文摘要
本發明是一個具有自動配置能力的電信設備,其支持串行的和并行的數據接口。所述電信設備能夠通過諸如I2C接口之類的串行接口和諸如UPI之類的并行接口傳遞配置數據。所述電信設備能夠通過I2C接口在主模式中自動配置。存儲在第二存儲設備中的可選擇的配置數據由電信設備通過I2C接口取出。
文檔編號G06F11/00GK1825783SQ20061005802
公開日2006年8月30日 申請日期2006年2月24日 優先權日2005年2月25日
發明者帕特里克·S·李, 余曉光 申請人:美國凹凸微系有限公司