單板、通信系統及為器件分配獨立地址的方法
2023-06-02 07:42:01 1
專利名稱:單板、通信系統及為器件分配獨立地址的方法
技術領域:
本發明屬於通信技術領域,尤其涉及一種單板、通信系統及為器件分配獨立地址的方法。
背景技術:
現有單板中各內部集成電路(Inter Integrated Circuit, IIC)器件均需獨立的 IIC線路與之配套,這造成了硬體資源的浪費。例如,一塊單板具有48個光模塊,僅管理48 個光模塊就需要48路IIC資源,外加48套使能和告警等,為此浪費較多硬體資源,並增加了可靠性風險。此外,也有使用單獨的複雜可編程邏輯器件(Complex Programmable Logic Device, CPLD)來擴展IIC,或者使用專用的IIC擴展器件來擴展IIC,這同樣會造成硬體資源的浪費。
發明內容
本發明實施例的目的在於解決現有單板中各IIC器件均需一個IIC線路與之配套,造成資源浪費的問題。本發明實施例的目的是通過下述方式實現的。一種單板,包括內部集成電路IIC線路、多個掛設於同一 IIC線路的器件以及為所述多個器件分配獨立地址的IIC控制器,所述多個器件通過所述IIC線路連接到所述IIC 控制器。一種通信系統,所述通信系統採用上述單板。一種為器件分配獨立地址的方法,應用於多個器件連接到同一 IIC線路的單板中,所述方法包括以下步驟向所述IIC線路上的器件的一個管腳輸入高電平信號;在所述管腳被輸入高電平信號的情況下,通過所述管腳將為所述器件分配的獨立地址寫入該器件;所述獨立地址寫完後,釋放所述高電平信號。本發明實施例中同一 IIC線路下掛設多個器件,極大地節約了單板硬體資源,增強了單板的可靠性。為同一 IIC線路上的多個器件中的任意器件分配獨立地址時,先向所述Iic線路上的器件的一個管腳輸入高電平信號;在所述管腳被輸入高電平信號的情況下,通過所述管腳將為所述器件分配的獨立地址寫入該器件;所述獨立地址寫完後,釋放上述高電平信號。IIC控制器讀取各器件時,各器件均根據接收到的地址信息選用相應的IIC 協議,兼容性強。所述管腳可以是所述器件的一個管腳或者組合管腳。
圖I是本發明實施例提供的單板的結構示意圖;圖2是本發明第一實施例提供的為同一 IIC線路上多個光模塊分配獨立地址的流程圖;圖3是本發明第一實施例提供的寫光模塊獨立地址時序流程圖;圖4是本發明第一實施例提供的支持獨立地址的光模塊在不同使用環境下讀取時的選擇流程;圖5是讀取本發明第一實施例提供的支持獨立地址的光模塊的時序圖;圖6是光模塊在通用IIC協議下的讀寫時序圖;圖7是讀取本發明第二實施例提供的支持獨立地址的光模塊的時序圖。
具體實施例方式為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。本發明實施例中同一 IIC線路下掛設多個器件,極大地節約了單板硬體資源,增強了單板的可靠性。為同一 IIC線路上的多個器件中的任意器件分配獨立地址時,先向所述Iic線路上的器件的一個管腳輸入高電平信號;在所述管腳被輸入高電平信號的情況下,通過所述管腳將為所述器件分配的獨立地址寫入該器件;所述獨立地址寫完後,釋放上述高電平信號。IIC控制器讀取各器件時,各器件均根據接收到的地址信息選用相應的IIC 協議,兼容性強。所述管腳可以是所述器件的一個管腳或者組合管腳。本發明實施例提供的單板包括內部集成電路IIC線路、多個掛設於同一 IIC線路的器件以及為所述多個器件分配獨立地址的Iic控制器,所述多個器件通過所述IIC線路連接到所述IIC控制器。本發明實施例提供的通信系統採用上述單板。本發明實施例提供的為同一 IIC線路上多個器件分配獨立地址的方法,包括以下步驟向所述IIC線路上的器件的一個管腳輸入高電平信號;在所述管腳被輸入高電平信號的情況下,通過所述管腳將為所述器件分配的獨立地址寫入該器件;所述獨立地址寫完後,釋放上述高電平信號。可選地,所述獨立地址寫完後,釋放所述高電平信號具體包括為所述器件分配獨立地址;將所述獨立地址發送給所述器件;接收所述器件發送的確認信號,根據所述確認信號將所述管腳去使能。所述管腳可以是所述器件的一個管腳或者組合管腳。下面以所述器件為光模塊為例對本發明的實現進行詳細描述。實施例一如圖I所示,本發明實施例提供的單板包括IIC線路I、多個掛設於同一 IIC線路 I的光模塊2以及為各光模塊2分配獨立地址的IIC控制器3,所述光模塊2內設MCU,所述多個光模塊2通過所述IIC線路I連接到所述IIC控制器3。其中,IIC控制器3可為CPLD 或 CPU。本發明實施例由IIC控制器3為光模塊分配獨立地址,該獨立地址存儲在光模塊的空餘用戶寄存器中,使得一個IIC線路可以掛多個光模塊,併兼容現有光模塊的訪問模式。圖2示出了本發明實施例提供的為同一 IIC線路上的多個光模塊分配獨立地址的實現流程。在步驟SlOl中,IIC控制器向IIC線路上的一個光模塊的一個管腳或組合管腳輸入聞電平/[目號。本發明實施例中,具體可以是向光模塊的發光使能管腳tx_dis輸入高電平信號, 此即圖3所示第I階段。於該第I階段,IIC控制器向光模塊的發光使能管腳tx_dis輸入高電平信號。所述光模塊的IIC線路由時鐘信號線SCL和數據信號線SDA組成。其中,SCL 表示串行時鐘,SDA表示時鐘數據。在步驟S102中,在光模塊的一個管腳或組合管腳被輸入高電平信號的情況下,將為所述光模塊分配的獨立地址通過該管腳或者組合管腳傳送給該光模塊。本發明實施例中,IIC控制器檢測到光模塊的在位信號後,向該光模塊的發光使能管腳tx_dis輸入高電平信號,使能該發光使能管腳tx_dis,然後為該光模塊分配獨立地址,具體可以將「40h+埠號」設為光模塊的獨立地址,其中,「40h」是用16進位表示的地址,埠號可以是該光模塊在所述單板上的埠號。IIC控制器在為光模塊分配獨立地址後,將該獨立地址通過發光使能管腳tx_dis 傳送給該光模塊,由該光模塊將該獨立地址寫入自身的EEPR0M。具體地,該光模塊可以將所述獨立地址寫入光模塊的第128個寄存器,光模塊的獨立地址空間為41h-7Fh(共63個可分配地址),其前兩位均為01 ;地址40h與光模塊管腳tx_dis配合用於將所述獨立地址寫入所述光模塊。以下結合圖3,分別對為光模塊分配獨立地址的各階段進行詳細描述。第I階段,IIC控制器向光模塊的發光使能管腳tx_dis輸入高電平信號。第2階段,IIC控制器向IIC線路發送START信號。第3階段,IIC控制器向IIC線路發送40h信號,40h是個寫光模塊獨立地址的命令字,需要與光模塊的發光使能管腳tX_dis信號配合使用,即只有在發光使能管腳tx_dis 被輸入高電平時,IIC控制器才能向光模塊發送該命令字。第4階段,IIC控制器在IIC協議的R//W位時,發送寫標示(此階段SDA發送低電平)。第5階段,光模塊向IIC控制器返回應答信號ACK,確認已接收到獨立地址。第6階段,IIC控制器向IIC線路發送80h信號,目的是選擇光模塊的80h寄存器, 即第128個寄存器。第7階段,光模塊向IIC控制器返回應答信號ACK,確認該80h寄存器可以使用。第8階段,IIC控制器向IIC線路發送DATA,即IIC控制器分配給光模塊的獨立地址,由於該光模塊的獨立地址為40h+埠號,且一般埠不會超過64個,因此,光模塊獨立地址空間範圍為41h-7Fh,即DATA的內容為41h_7Fh中的一個值,光模塊接收到後將DATA 寫入80h寄存器。第9階段,光模塊向IIC控制器返回應答信號ACK。應當注意的是,只有發光使能管腳tx_dis被輸入高電平信號的光模塊對寫光模塊獨立地址命令進行響應,此處寫光模塊獨立地址命令為40h。
在步驟S103中,所述獨立地址寫完後,所述IIC控制器釋放上述高電平信號。本發明實施例中所述光模塊的獨立地址(40h+埠號)寫完後,IIC控制器會收到光模塊發送的應答信號ACK,然後IIC控制器釋放光模塊的發光使能管腳tx_dis的高電平信號,此即圖3所示第10階段。在第10階段,IIC控制器向IIC線路發出STOP信號,並釋放光模塊的發光使能管腳tx_dis的高電平信號。應當理解,此能夠為光模塊分配獨立地址(40h+埠號)的IIC協議兼容原光模塊協議,且光模塊被分配獨立地址後仍可以正常插入到其他標準光模塊的使用環境中,圖4 示出了在不同使用環境下讀取支持獨立地址的光模塊的選擇流程。本發明實施例讀取光模塊的地址的方法按如下方式進行。IIC控制器讀取光模塊的地址時,所述光模塊接收所述IIC控制器發送的頁地址,所述光模塊根據接收到的頁地址前兩位進行判斷。如果所述頁地址前兩位是01,則先讀取所述光模塊的獨立地址,接著讀取A0/A2頁地址,此即本發明實施例提供的IIC協議,如圖5所示,以下分別對圖5所示各階段進行詳細描述。第I階段,IIC控制器向IIC線路發送START信號開始訪問光模塊。第2階段,IIC控制器向IIC線路發送光模塊的獨立地址,該獨立地址為獨立地址空間41h-7Fh內的一個地址。第3階段,光模塊接收到地址後,返回ACK應答信號,確認已接收到光模塊獨立地址。第4階段,IIC控制器發送光模塊的頁地址A0/A2。第5階段,IIC控制器在IIC協議的R//W位時,發送讀寫標示(此階段SDA為高電平時表不讀,低電平時表不寫)。第6階段,光模塊向IIC控制器返回應答信號ACK。第7階段,IIC控制器向IIC線路發送光模塊內部要訪問的寄存器地址。第8階段,光模塊向IIC控制器返回應答信號ACK,確認已接收到寄存器地址。第9階段,如果第5階段為寫時,IIC控制器向IIC線路發送DATA,DATA的內容為寫光模塊寄存器的值;如果第5階段為讀時,光模塊通過IIC線路向IIC控制器發送DATA, DATA的內容為光模塊寄存器的內容。第10階段,如果第5階段為寫時,光模塊向IIC控制器返回應答信號ACK,確認已經寫入光模塊;如果第5階段為讀時,IIC控制器返回應答信號ACK,確認已經接收到。第11階段,IIC控制器向IIC線路發出STOP信號,表示此次通信結束。如果所述頁地址前兩位是10,則按通用IIC協議直接讀取A0/A2頁地址,其中AO =10100000,如圖6所示,以下分別對圖6所示各階段進行詳細描述。第I階段,IIC控制器向IIC線路發送START信號開始訪問光模塊。第2階段,IIC控制器向IIC線路發送光模塊頁地址A0/A2。第3階段,IIC控制器向IIC線路發送讀寫光模塊標示(此階段SDA為低電平時表不對光模塊寫操作,高電平時表不讀操作)。第4階段,光模塊向IIC控制器返回應答信號ACK。第5階段,IIC控制器向IIC線路發送光模塊內部要訪問的寄存器地址。第6階段,光模塊向IIC控制器返回應答信號ACK,確認已接收到寄存器地址。
第7階段,如果第3階段為寫時,IIC控制器向IIC線路發送DATA,DATA的內容為 寫光模塊寄存器的值;如果第3階段為讀時,光模塊通過IIC線路向IIC控制器發送DATA, DATA的內容為光模塊寄存器的內容。第8階段,如果第3階段為寫時,光模塊向IIC控制器返回應答信號ACK,確認已經 寫入光模塊;如果第3階段為讀時,IIC控制器返回應答信號ACK,確認已經接收到。第9階段,IIC控制器向IIC線路發送STOP信號,表示此次通信結束。實施例二與實施例一不同的是,本實施例將非A0/A2的地址設為光模塊的獨立地址。在光 模塊一個管腳或組合管腳(指除發光使能管腳tx_dis外任何光模塊管腳)輸入高電平信 號時,將所述獨立地址(非A0/A2的地址)寫入光模塊的EEPR0M。本實施例將所述獨立地 址寫入光模塊的第128個寄存器。應當理解,此能夠為光模塊分配獨立地址(非A0/A2的地址)的IIC協議兼容原 光模塊協議,且此光模塊被分配獨立地址後仍可以正常插入到其他標準光模塊的使用環境中。本發明實施例讀取光模塊的地址的方法按如下方式進行。IIC控制器讀取光模 塊的地址時,所述光模塊接收所述IIC控制器發送的頁地址並根據接收到的頁地址進行判 斷;如果接收到的頁地址為A0/A2頁地址,則按通用IIC協議直接讀取A0/A2頁地址,其中 A0 = 10100000, A2 = 10100010,如圖6所示;否則,先讀取所述光模塊的獨立地址,接著讀 取A0/A2頁地址,此即本發明實施例提供的IIC協議,如圖7所示,以下分別對圖7所示各 階段進行詳細描述。第1階段,IIC控制器向IIC線路發送START信號開始訪問光模塊。第2階段,IIC控制器向IIC線路發送光模塊獨立地址(非A0/A2地址)。第3階段,光模塊接收到地址後,返回ACK應答信號,確認已接收到光模塊獨立地址。第4階段,IIC控制器發送光模塊的頁地址A0/A2。第5階段,IIC控制器在IIC協議的R//W位時,發送讀寫標示(此階段SDA為高 電平時表不讀,低電平時表不寫)。第6階段,光模塊向IIC控制器返回應答信號ACK。第7階段,IIC控制器向IIC線路發送光模塊內部要訪問的寄存器地址。第8階段,光模塊向IIC控制器返回應答信號ACK,確認已接收到寄存器地址。第9階段,如果第5步為寫時,IIC控制器向IIC線路發送DATA,DATA的內容為寫 光模塊寄存器的值;如果第5步為讀時,光模塊通過IIC線路向IIC控制器發送DATA,DATA 的內容為光模塊寄存器的內容。第10階段,如果第5步為寫時,光模塊向IIC控制器返回應答信號ACK,確認已經 寫入光模塊;如果第5步為讀時,IIC控制器返回應答信號ACK,確認已經接收到。第11階段,IIC控制器向IIC線路發送STOP信號,表示此次通信結束。綜上所述,當單板有大量IIC光模塊時,使用本發明實施例提供的方法使多個光 模塊共用一 lie線路,節約了大量硬體資源。理論上此IIC協議可以掛63個光模塊,但考 慮到實際使用時的信號完整性要求,建議掛7個光模塊並選擇適當的匹配方式,以保證一路IIC正常訪問7個光模塊。當然,對其他所有Iic器件而言,均可使用本發明實施例提供的方法進行IIC獨立地址的動態分配併兼容現有IIC協議。以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種單板,其特徵在於,所述單板包括內部集成電路IIC線路、多個掛設於同一 IIC 線路的器件以及為所述多個器件分配獨立地址的Iic控制器,所述多個器件通過所述IIC 線路連接到所述Iic控制器。
2.如權利要求I所述的單板,其特徵在於,所述器件為光模塊。
3.一種通信系統,其特徵在於,所述通信系統採用如權利要求I或2所述的單板。
4.一種為器件分配獨立地址的方法,應用於多個器件連接到同一 IIC線路的單板中, 其特徵在於,所述方法包括以下步驟向所述IIC線路上的器件的一個管腳輸入高電平信號;在所述管腳被輸入高電平信號的情況下,通過所述管腳將為所述器件分配的獨立地址寫入該器件;所述獨立地址寫完後,釋放所述高電平信號。
5.根據權利要求4所述的方法,其特徵在於,所述將為所述器件分配的獨立地址寫入該器件,所述獨立地址寫完後,釋放所述高電平信號具體包括為所述器件分配獨立地址;將所述獨立地址發送給所述器件;接收所述器件發送的確認信號,根據所述確認信號將所述管腳去使能。
6.如權利要求4或5所述的方法,其特徵在於,所述器件為內設微控制單兀MCU的光模塊,所述獨立地址為40h+埠號,所述埠號為所述光模塊在所述單板上的埠號;所述管腳為光模塊的發光使能管腳tx_dis。
7.如權利要求6所述的方法,其特徵在於,將所述獨立地址寫入所述光模塊的第128個寄存器,其中地址40h與所述管腳tx_dis配合用於將所述獨立地址寫入所述光模塊。
8.如權利要求4或5所述的方法,其特徵在於,所述器件為內設微控制單元MCU的光模塊,所述獨立地址為非A0/A2的地址;所述管腳為光模塊除發光使能管腳tx_dis之外的一個管腳或組合管腳。
9.如權利要求8所述的方法,其特徵在於,將所述獨立地址寫入光模塊的第128個寄存器,其中地址40h與所述管腳或組合管腳配合用於將所述獨立地址寫入所述光模塊。
10.一種讀取光模塊的地址的方法,其特徵在於,所述方法包括以下步驟IIC控制器讀取光模塊的地址時,所述光模塊接收所述IIC控制器發送的頁地址,所述光模塊根據接收到的所述頁地址前兩位進行判斷;如果所述頁地址前兩位是01,則先讀取所述光模塊的獨立地址,接著讀取A0/A2頁地址;如果所述頁地址前兩位是10,則按通用IIC協議直接讀取A0/A2頁地址,其中AO = 10100000。
11.一種讀取光模塊的地址的方法,其特徵在於,所述方法包括以下步驟IIC控制器讀取光模塊的地址時,所述光模塊接收所述IIC控制器發送的頁地址,所述光模塊根據接收到的頁地址進行判斷;如果接收到的頁地址為A0/A2頁地址,則按通用IIC協議直接讀取A0/A2頁地址,其中 AO = 10100000,A2 = 10100010 ;否則,先讀取所述光模塊的獨立地址,接著讀取A0/A2頁地址。
全文摘要
本發明適用於通信技術領域,提供了一種單板、通信系統及為器件分配獨立地址的方法,所述單板包括內部集成電路IIC線路、多個掛設於同一IIC線路的器件以及為所述多個器件分配獨立地址的IIC控制器,所述多個器件通過所述IIC線路連接到所述IIC控制器。本發明於同一IIC線路掛設多個器件,極大地節約了單板硬體資源,增強了單板的可靠性。為器件分配獨立地址時,先向所述IIC線路上的器件的一個管腳輸入高電平信號;在所述管腳被輸入高電平信號的情況下,通過所述管腳將為所述器件分配的獨立地址寫入該器件;所述獨立地址寫完後,釋放上述高電平信號。IIC控制器讀取各器件時,各器件均根據接收到的地址信息選用相應的IIC協議,兼容性強。
文檔編號G06F13/20GK102609381SQ20121002435
公開日2012年7月25日 申請日期2012年2月3日 優先權日2012年2月3日
發明者彭中, 牛翔平, 薛旺喜, 陳文 , 黃為東 申請人:華為技術有限公司