• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種光模塊I2C總線亂時序診斷方法及裝置制造方法及圖紙

    技術編號:14014735 閱讀:162 留言:0更新日期:2016-11-17 20:31
    本發明專利技術公開了一種光模塊I2C總線亂時序診斷方法及裝置,用以識別和記錄光模塊內部存在的非常規I2C寫操作,包括:光模塊通過I2C總線接收終端發送的開始時鐘信號;開始時鐘信號用于指示光模塊在用戶可操作區寫入數據;根據開始時鐘信號,檢測在非用戶可操作區是否存在I2C總線寫操作;若存在,設置標識符,用以標記在非用戶可操作區存在的I2C總線寫操作,并將在非用戶可操作區寫入的數據存儲在指定存儲區域。上述方法實現光模塊識別非用戶可操作區存在不允許的寫操作時,記錄寫入非用戶可操作區的數據,以便終端能夠基于光模塊識別和記錄的非用戶可操作區存在的寫操作,診斷是否因I2C亂時序而導致光模塊側的非常規I2C寫操作。

    【技術實現步驟摘要】

    本專利技術實施例涉及通信
    ,尤其涉及一種光模塊I2C總線亂時序診斷方法及裝置
    技術介紹
    常見的I2C(Inter-Integrated Circuit,I2C總線)總線通訊架構中,I2C總線在硬件上獨立共享總線,通常由一個I2C master設備與多個I2C slave設備分享同一I2C總線,根據協議,不允許兩個進程同時占用I2C總線,因此容易出現不同進程之間的資源搶占問題。當一個I2C master設備與I2C slave設備進行較大的數據通訊時,常用的I2C總線通訊讀寫模式有連續讀模式(圖1a),連續寫模式(圖1b)和連續隨機地址讀模式(圖1c)。因為I2C寫通訊時大部分時序控制權在I2C master設備端,如果出現不同進程的程序協調不當或同一進程調度不當,就會現異常的讀寫。以一個I2C Master與一個I2C slave設備的寫通訊為例,由于多進程之間相關干擾、共享設備I2C總線不同進程的程序爭奪,會產生亂時序,亂時序很導致一個完整的時序不再完整,這時候會出現異常的讀寫。例如,當在連續讀Sequential I2C Read序列的“Start”或“Read”狀態位出現錯誤或I2C slave設備的具體電氣指標差異時,造成I2C通訊的混亂,進而產生I2C亂時序,如Sequential I2C Read序列變成Sequential I2C Write序列,原來的Sequential I2C Read序列中被插入一個Sequential I2C Write序列,原來的Equential I2C Read序列變成一個不完整的亂時序。產生I2C亂時序時,由于I2C亂時序一直在通信,從在造成總線上各種不可預知的情況出現,如在不允許進行寫操作的區域寫入了數據,或者在一些不允許修改數據的區域被修改了數據,這是設備端不期望出現,并極力避免的。根據SFF-8472協議,對于一個I2C slave設備,允許進行寫操作的區域,如用戶可寫區A2[128~247],密碼輸入區A2[123~126],密碼設置區A2[119~122]。還有一些區域不允許進行寫操作,如果在不允許進行寫操作的區域寫入數據,則視為非常規的I2C操作行為。I2C master設備的一個進程A為:讀一個I2C slave設備1的A2[110]的讀時序;而I2C總線上在傳輸進程A的讀時序的“start”位時,突然被進程B打斷,假如此刻進程A的“read”位出現錯誤,進程A的“read”位變成“write”位,進程A變成了寫I2C slave設備1的A2[110]的寫時序。假如進程B為:連續讀A2[0~95],則進程A在A2[110]的寫時序中會插入進程B的時序,如圖1d所示,進程A的寫時序變成一個亂時序,即進程A的“110”位置(圖1d中的“MEMORY ADDRESS”右邊的偏移地址位置)會被進程B的設備地址“A2”代替(圖1d中的“MEMORY ADDRESS”右邊的偏移地址位置插入了進程B的“--XFP ADDRESS--”),即進程B的“A2”被寫入到原進程A的“110”位置,因進程B是連續讀模式,因此進程B的偏移地址“0~95”會陸續寫入到原進程A的“111~205”位置。進程A原來的讀“110”的時序變成了連續寫“110~205”的時序,但I2C master設備卻不知道原來的進程A變成了一個亂時序,也不知道進程A在I2C slave設備1上的不允許寫的區域寫入了數據,這樣將會對系統造成災難性的后果,例如A2[110].6為光模塊的發光控制位,如果這個位置被寫入了其他數據,導致光模塊由正常發光到突然關斷發光,這將會遭到客戶投訴的風險。I2C master設備端通常無法感知是因為自己的時序控制導致了亂時序,I2C slave設備也不沒有動機去識別I2C總線上是否發生了亂時序,而若亂時序導致的這些非常規的I2C寫操作繼續發生,就會導致整個系統崩潰,針對上述問題,現有技術還沒有提出一種有效的解決方案。
    技術實現思路
    本專利技術實施例提供一種光模塊I2C總線亂時序診斷方法及裝置,用以識別和記錄光模塊內部存在的非常規I2C寫操作,以便終端基于光模塊識別和記錄的非用戶可操作區存在的寫操作,診斷是否因I2C總線亂時序而導致光模塊側的非常規I2C寫操作。本專利技術實施例提供一種光模塊I2C總線亂時序診斷方法,包括:光模塊通過I2C總線接收終端發送的開始時鐘信號;所述開始時鐘信號用于指示所述光模塊在用戶可操作區寫入數據;所述光模塊根據所述開始時鐘信號,檢測在非用戶可操作區是否存在I2C總線寫操作;若存在,設置標識符,用以標記在所述非用戶可操作區存在的I2C總線寫操作,并將在非用戶可操作區寫入的數據存儲在指定存儲區域。本專利技術實施例提供一種光模塊I2C總線亂時序診斷裝置,包括:接收單元,用于通過I2C總線接收終端發送的開始時鐘信號;所述開始時鐘信號用于指示所述光模塊在用戶可操作區寫入數據;檢測單元,用于根據所述開始時鐘信號,檢測在非用戶可操作區是否存在I2C總線寫操作;處理單元,用于若所述檢測單元檢測到在非用戶可操作區存在I2C總線寫操作,則設置標識符,用以標記在所述非用戶可操作區存在的I2C總線寫操作,并將在所述非用戶可操作區寫入的數據存儲在指定存儲區域。本專利技術實施例中,光模塊作為I2C slave設備,終端作為I2C master設備,為了使光模塊識別非用戶可操作區是否存在不允許的寫操作,以及使終端能夠查看到非用戶可操作區寫入的數據,在光模塊中設置一個功能模塊,用于執行上述方法流程,即在接收到在用戶可操作區寫入數據的開始時鐘信號時,檢測在非用戶可操作區是否存在I2C總線寫操作;若存在,設置標識符,用以標記在所述非用戶可操作區存在的I2C總線寫操作,光模塊將在非用戶可操作區寫入的數據存儲在指定存儲區域。功能模塊通過執行上述方法流程,實現光模塊識別非用戶可操作區是否存在不允許的寫操作,以及存在不允許的寫操作時,可記錄寫入非用戶可操作區的數據,以便終端能夠基于光模塊識別和記錄的非用戶可操作區存在的寫操作,診斷是否因I2C亂時序而導致光模塊側的非常規I2C寫操作。附圖說明附圖用來提供對本專利技術的進一步理解,并且構成說明書的一部分,與本專利技術實施例一起用于解釋本專利技術,并不構成對本專利技術的限制。在附圖中:圖1a至1c為現有技術中的三種常用的I2C總線通訊讀寫模式的結構示意圖;圖1d為現有技術中存在進程B搶占進程A導致的進程A的時序為亂時序的示意圖;圖2為本專利技術實施例提供的一種光模塊I2C總線亂時序診斷方法的方法流程示意圖;圖3為本專利技術實施例提供的一種光模塊I2C亂時序的識別和記錄的方法流程示意圖;圖4為本專利技術實施例提供的一種提示終端光模塊內部存在非常規的I2C寫操作的方法流程示意圖;圖5為本專利技術實施例提供的一種終端查看I2C亂時序數據的方法流程示意圖;圖6為本專利技術實施例提供的一種光模塊I2C總線亂時序診斷裝置的結構示意圖。具體實施方式為了使本專利技術所解決的技術問題、技術方案以及有效果更加清楚明白,以下結合說明書附圖對本專利技術的優選實施例進行說明,應當理解,此處所描述的優選實施例僅用于說明和解釋本專利技術,并不用于限定本專利技術。并且在不沖突的情況下,本申請中的實施例及實施例中的本文檔來自技高網
    ...
    一種光模塊I2C總線亂時序診斷方法及裝置

    【技術保護點】
    一種光模塊I2C總線亂時序診斷方法,其特征在于,包括:光模塊通過I2C總線接收終端發送的開始時鐘信號;所述開始時鐘信號用于指示所述光模塊在用戶可操作區寫入數據;所述光模塊根據所述開始時鐘信號,檢測在非用戶可操作區是否存在I2C總線寫操作;若存在,設置標識符,用以標記在所述非用戶可操作區存在的I2C總線寫操作,并將在非用戶可操作區寫入的數據存儲在指定存儲區域。

    【技術特征摘要】
    1.一種光模塊I2C總線亂時序診斷方法,其特征在于,包括:光模塊通過I2C總線接收終端發送的開始時鐘信號;所述開始時鐘信號用于指示所述光模塊在用戶可操作區寫入數據;所述光模塊根據所述開始時鐘信號,檢測在非用戶可操作區是否存在I2C總線寫操作;若存在,設置標識符,用以標記在所述非用戶可操作區存在的I2C總線寫操作,并將在非用戶可操作區寫入的數據存儲在指定存儲區域。2.如權利要求1所述的方法,其特征在于,所述標識符為Flag,所述Flag的取值用以標記在非用戶可操作區存在的I2C總線寫操作的累計次數;所述設置標識符,包括:將標識符Flag的取值自增;在所述設置標識符之后,所述方法還包括:在所述光模塊接收到所述終端發送的在所述用戶可操作區寫入數據的結束時鐘信號時,根據所述結束時鐘信號,將所述Flag自增后的取值寫入到第一偏移地址對應的存儲位置。3.如權利要求1或2所述的方法,其特征在于,將在非用戶可操作區寫入的數據存儲在指定存儲區域,包括:將所述在非用戶可操作區寫入的數據作為I2C總線亂時序數據存儲在內存中;在所述光模塊接收到所述終端發送的在用戶可操作區寫入數據的結束時鐘信號時,根據所述結束時鐘信號,將所述內存中存儲的所述I2C總線亂時序數據轉存在閃存中。4.如權利要求3所述的方法,其特征在于,所述方法還包括:所述光模塊接收所述終端發送的第一顯示指令,所述第一顯示指令是所述終端在確定所述光模塊的非用戶可操作區存在I2C總線數據的寫操作時發送的;所述光模塊根據所述第一顯示指令,將所述閃存中存儲的所述I2C總線亂時序數據寫入到第二偏移地址對應的第一存儲位置,并顯示所述第一存儲位置寫入的所述I2C總線亂時序數據。5.如權利要求4所述的方法,其特征在于,在設置所述標識符之后,所述方法還包括:向所述終端發送通知消息,通知所述終端讀取所述光模塊的所述第一偏移地址對應的存儲位置的數據;其中,若所述終端讀取所述第一偏移地址對應的存儲位置的數據為非0,則所述終端確定所述光模塊的非用戶可操作區存在I2C總線寫操作。6.一種光模塊I...

    【專利技術屬性】
    技術研發人員:李剛,王文希,王魁
    申請(專利權)人:青島海信寬帶多媒體技術有限公司,
    類型:發明
    國別省市:山東;37

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 午夜福利无码不卡在线观看| 精品无码久久久久国产| 人妻精品久久无码专区精东影业 | AV无码人妻中文字幕| 日韩av无码一区二区三区| 免费无码午夜福利片69| 日韩精品无码一区二区三区| 免费A级毛片无码A| 久久久久亚洲Av无码专| 日韩精品无码一区二区视频| 亚洲精品无码久久久久秋霞 | 国产精品无码亚洲一区二区三区| 东京热av人妻无码专区| 无码一区二区三区中文字幕| 亚洲中文字幕无码av在线| 精品无人区无码乱码毛片国产| 久久国产精品成人无码网站| 精品人妻系列无码一区二区三区| 亚洲成a人片在线观看无码| 亚洲无码视频在线| 国产精品无码av片在线观看播| 在线精品自偷自拍无码中文| 亚洲熟妇无码爱v在线观看| 久久久久成人精品无码中文字幕| 国内精品无码一区二区三区| 亚洲中文字幕无码爆乳av中文 | 一本色道久久综合无码人妻| 亚洲成AV人在线观看天堂无码| 成在人线av无码免费高潮喷水| 亚洲国产精品无码久久九九| 亚洲成a人在线看天堂无码| 国产精品无码一区二区在线观一| 亚洲午夜AV无码专区在线播放| 国产高清不卡无码视频| 免费无码又爽又刺激高潮的视频| 无码中文字幕av免费放| 亚洲AV无码成人精品区狼人影院| 色综合无码AV网站| 国产精品第一区揄拍无码| 精品无人区无码乱码大片国产| 少妇无码太爽了在线播放|