專(zhuān)利名稱:總線站以及保持總線站同步的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及具有總線和通過(guò)該總線耦接的多個(gè)總線站電路的電 子系統(tǒng)、總線站電路以及操作這種系統(tǒng)的方法。
背景技術(shù):
總線是能被不同總線站電路使用來(lái)彼此發(fā)送消息的共享通信媒 介。該消息被從源站電路發(fā)送到目的站電路,并且每個(gè)消息通常都攜 帶一目的地地址來(lái)標(biāo)識(shí)該目的站電路。此種系統(tǒng)中的一個(gè)問(wèn)題是,必 須指示該消息的開(kāi)始,以便定位該消息中的目的地地址和/或命令數(shù) 據(jù)。已知有各種用于指示消息的開(kāi)始的技術(shù)。美國(guó)專(zhuān)利申請(qǐng)No. 2003/0225951描述了使用特殊信號(hào)線來(lái)給出同步信號(hào),同步信號(hào) 的定時(shí)指示消息的開(kāi)始。另一方案是在同一線路(或幾個(gè)線路)上發(fā)送 預(yù)定的唯一的同步碼形(pattern)作為該消息。通常把這種預(yù)定同步 碼形在每一消息的開(kāi)始處發(fā)送,以便把該消息的開(kāi)始提醒給站。但是,這些同步技術(shù)陷于這樣的額外困擾,即,增加了系統(tǒng)的 復(fù)雜性和/或降低了能在一給定時(shí)間間隔內(nèi)發(fā)送的消息的數(shù)量。發(fā)明內(nèi)容在各種目的當(dāng)中,本發(fā)明的一個(gè)目的是減少在采用總線進(jìn)行總 線站電路之間的消息發(fā)送的電子系統(tǒng)中用于同步的額外開(kāi)銷(xiāo)。本發(fā)明提供了根據(jù)權(quán)利要求1的一種電子系統(tǒng)。其中的總線站 電路使用消息的內(nèi)容來(lái)檢測(cè)同步的丟失。除非在消息之間有間隔,否 則一條消息的結(jié)束將定義下一消息的開(kāi)始,從而使得當(dāng)接收站保持對(duì) 開(kāi)始的同步時(shí),原則上在每一消息開(kāi)始處不需要預(yù)定同步碼形,也不 需要同步信號(hào)。而當(dāng)總線站電路遇到具有無(wú)效內(nèi)容的消息時(shí),該總線站電路將切換到一種同步禁用狀態(tài),其忽略消息直到已發(fā)現(xiàn)新的同步 為止。在一實(shí)施例中,在總線站電路中執(zhí)行所述消息內(nèi)容的測(cè)試,而 不考慮該消息是否被尋址到該總線站電路。因此,用于另一總線站電 路的消息內(nèi)容也被用于檢測(cè)同步的丟失,這將增加檢測(cè)的可靠性。在一個(gè)實(shí)施例中,把同步碼形提供在總線上,在一對(duì)連續(xù)的同 步碼形之間有多個(gè)消息。在此情況下,該同步碼形可被用于重獲同步 啟動(dòng)狀態(tài),其中能夠使用對(duì)消息頭接尾的標(biāo)識(shí)。另外或作為一種選擇, 可以不必丟失總線帶寬而利用總線上沒(méi)有信息傳輸?shù)目臻e期來(lái)重獲 該同步實(shí)現(xiàn)狀態(tài)。在一個(gè)實(shí)施例中,在一對(duì)連續(xù)的同步碼形之間定義多個(gè)時(shí)隙。 總線站電路通過(guò)測(cè)量在第一個(gè)同步碼形發(fā)送之后經(jīng)過(guò)的時(shí)間來(lái)至少 部分地限定該時(shí)隙。在第一時(shí)隙中使用了基于消息的頭接尾標(biāo)識(shí)的禁 用的消息內(nèi)容,在經(jīng)過(guò)了該第一時(shí)隙的時(shí)間間隔之后,在接收到下一 同步碼形之前,以不同的方法保持在第二時(shí)隙中的同步。因此,檢測(cè) 到無(wú)效消息內(nèi)容之后對(duì)消息的頭接尾標(biāo)識(shí)進(jìn)行禁用的不利效果將被 僅局限于在連續(xù)同步碼形的傳輸之間的時(shí)間間隔的 一部分。可以在整 個(gè)第二時(shí)隙中接收流數(shù)據(jù)而不測(cè)試該流數(shù)據(jù)的內(nèi)容,以便在該第二時(shí) 隙的一部分期間禁用接收。在一個(gè)實(shí)施例中,可從消息內(nèi)容中計(jì)算出一個(gè)簽名值來(lái)測(cè)試該 消息內(nèi)容的有效性,以便決定是否繼續(xù)使用消息的頭接尾標(biāo)識(shí)。簽名 值可以例如是從糾錯(cuò)碼得知的校正子的奇偶值。在另一個(gè)實(shí)施例中, 來(lái)自該消息的命令碼的有效性被用于決定該消息內(nèi)容的有效性,以便 決定是否繼續(xù)使用該消息的頭接尾標(biāo)識(shí)。在另一個(gè)實(shí)施例中,命令的 參數(shù)值被用于決定該消息內(nèi)容的無(wú)效性,以便決定是否繼續(xù)使用消息 的頭接尾標(biāo)識(shí)。最好是使用有效參數(shù)值的范圍的與命令碼相關(guān)的定義 來(lái)測(cè)試有效性。在另外實(shí)施例中,根據(jù)消息的目的地地址而選擇有效 命令碼和/或參數(shù)值的范圍來(lái)決定內(nèi)容的有效性,以便決定是否繼續(xù) 使用消息的頭接尾標(biāo)識(shí)。在一個(gè)實(shí)施例中,使用消息的目的地地址的 有效性來(lái)決定該內(nèi)容的有效性,以便決定是否繼續(xù)使用消息的頭接尾 標(biāo)識(shí)。用于決定有效性的這些技術(shù)可以獨(dú)立使用或以任何組合方式使8用。命令碼、參數(shù)范圍和/或目的地地址的使用所具有的優(yōu)點(diǎn)在于不 需要在該消息中包括專(zhuān)用于有效性測(cè)試的信息。在另外實(shí)施例中,對(duì)消息內(nèi)容的有效性的測(cè)試還被用于搜索消 息的開(kāi)始。因此,即使沒(méi)有同步碼形也可以重獲同步。
從使用下列附圖的示例性實(shí)施例的描述中將使得本發(fā)明的這些 和其它目的和優(yōu)勢(shì)方面變得顯見(jiàn)。 圖1示出一個(gè)總線系統(tǒng); 圖2示出一個(gè)總線信號(hào); 圖3示出一個(gè)總線站電路; 圖4示出消息處理流程圖; 圖5、圖6示出狀態(tài)圖。
具體實(shí)施方式
圖1示出一個(gè)總線系統(tǒng),其包含總線10、總線主站12(也稱為總 線主機(jī)站)和多個(gè)普通總線站14(也稱為從站)。普通總線站14和總線主 站12耦接到總線10。總線IO可以組成例如數(shù)據(jù)導(dǎo)線和時(shí)鐘信號(hào)導(dǎo)線。 然而做為選擇,可以僅使用數(shù)據(jù)導(dǎo)線,而從該數(shù)據(jù)導(dǎo)線上的信號(hào)中恢 復(fù)時(shí)鐘。同樣可以并行使用多個(gè)數(shù)據(jù)導(dǎo)線。最好是在總線10中不使用 分開(kāi)的同步信號(hào)導(dǎo)線。圖2示意地示出了總線10上的作為時(shí)間"t"的函數(shù)的一個(gè)總線信 號(hào)。該總線信號(hào)包括同步碼形20和在同步碼形20的連續(xù)對(duì)之間的時(shí) 隙A-D。若干時(shí)隙B-D是等時(shí)的時(shí)隙。在相對(duì)于每一同步碼形20的各 個(gè)時(shí)間上的位置上分配等時(shí)的時(shí)隙來(lái)用于各個(gè)數(shù)據(jù)流(例如音頻或視頻 數(shù)據(jù))的發(fā)送,通常該各個(gè)數(shù)據(jù)流低于最小吞吐量的限制。每一等時(shí)的 時(shí)隙B-D都包含所分配給的數(shù)據(jù)流的字段26。跟隨在發(fā)送該同步碼形20之后的第一時(shí)隙A是命令消息時(shí)隙, 在該時(shí)隙中,總線站12、 14發(fā)送和接收命令消息22。無(wú)需完全填充第 一時(shí)隙A??梢源嬖陂g隔24,在該間隔24中的總線IO是空閑的。圖3示出一個(gè)總線站電路??偩€站電路包括連接至總線(沒(méi)示出)的連接線31、數(shù)據(jù)處理電路30、總線接口電路32、總線定時(shí)電路34 和存儲(chǔ)器36??偩€接口電路32耦接在數(shù)據(jù)處理電路30和總線IO(沒(méi)示 出)之間。總線定時(shí)電路34耦接到總線接口電路32和數(shù)據(jù)處理電路30。 存儲(chǔ)器36耦接到數(shù)據(jù)處理電路30(總線主站12可以具有相似的結(jié)構(gòu), 該總線接口起到發(fā)送器的作用)。操作中,在其它部分中,該總線接口電路32起到接收機(jī)的作用, 其接收來(lái)自總線的消息并把該消息的內(nèi)容提供到數(shù)據(jù)處理電路30。如 果消息被發(fā)送至總線站電路,則數(shù)據(jù)處理電路30使用來(lái)自該消息的命 令碼和參數(shù)信息來(lái)控制其操作。應(yīng)該理解,在是否由數(shù)據(jù)處理電路30、 總線接口電路32和總線定時(shí)電路34來(lái)執(zhí)行該總線站電路的功能方面 存在相當(dāng)?shù)淖杂啥取R虼税堰@些電路共同稱為消息處理電路。劃分成 數(shù)據(jù)處理電路30、總線接口電路32和總線定時(shí)電路34主要是功能性 的總線接口電路32處理總線信號(hào)處理的內(nèi)容無(wú)關(guān)方面,例如位提取、 分離消息、同步碼形的檢測(cè)等;數(shù)據(jù)處理電路30處理內(nèi)容相關(guān)功能, 例如編譯和執(zhí)行該消息中的命令以及內(nèi)容有效性(可以使用例如可被編 程來(lái)執(zhí)行這些功能的可編程處理器,或可以使用具有布置成用來(lái)執(zhí)行 這些功能的晶體管連接的專(zhuān)用電路);并且總線定時(shí)電路34處理定時(shí)方 面,例如在消息的開(kāi)始、時(shí)隙的開(kāi)始發(fā)送時(shí)間信號(hào)。圖4示出總線站電路的操作。最初,該總線站電路處于禁用狀態(tài), 用循環(huán)步驟41表示。在循環(huán)步驟41中,總線接口電路32(或數(shù)據(jù)處理 電路30)把從總線10接收的信號(hào)與預(yù)定同步碼形進(jìn)行比較,以便檢測(cè) 同步碼形20的發(fā)送。只要沒(méi)有檢測(cè)到同步碼形,就重復(fù)循環(huán)步驟41。 只要循環(huán)步驟41重復(fù),就認(rèn)為總線站電路處于禁用狀態(tài)中。一旦檢測(cè)到同步碼形,總線站就切換到啟用狀態(tài),在流程圖中對(duì) 應(yīng)于除了循環(huán)步驟41之外的其余步驟的執(zhí)行。在切換到啟用狀態(tài)之后, 數(shù)據(jù)處理電路30執(zhí)行第二步驟42,在該步驟中把一個(gè)消息的開(kāi)始通知 到總線定時(shí)電路34??偩€定時(shí)電路34把消息的開(kāi)始指示給總線接口電 路32。 一旦接收到一個(gè)消息的開(kāi)始的指示,總線接口電路32就從總線 10接收消息的內(nèi)容并把該內(nèi)容提供到數(shù)據(jù)處理電路30。在第三步驟43中,數(shù)據(jù)處理電路30測(cè)試該內(nèi)容的有效性。如果該內(nèi)容無(wú)效,則數(shù)據(jù) 處理電路30使該總線站電路返回到禁用狀態(tài)(即流程圖重新進(jìn)入循環(huán)步驟41),從而禁止總線定時(shí)電路34通知消息的開(kāi)始。應(yīng)該理解,雖然使用了禁用狀態(tài)和啟用狀態(tài)的術(shù)語(yǔ),但這些術(shù)語(yǔ) 僅適于該總線站電路接收新消息的能力。事實(shí)上,該總線站電路處于 禁用狀態(tài)中并不意味其被禁止執(zhí)行其它功能,或例如當(dāng)那些同步時(shí)隙 的定時(shí)僅由該同步碼形20確定而不是由在第一時(shí)隙A中的消息22確 定時(shí),總線站電路在同步時(shí)隙B-D中進(jìn)行發(fā)送或接收??梢杂酶鞣N可選方案來(lái)測(cè)試有效性。在一個(gè)實(shí)施例中,數(shù)據(jù)處理 電路30從該消息中讀出命令碼,并把該命令碼與有效命令碼的列表比 較。在另一實(shí)施例中,存儲(chǔ)器36存儲(chǔ)針對(duì)不同類(lèi)型的總線站電路的有 效命令碼(或有效命令碼的范圍)的列表以及對(duì)與各個(gè)目的地地址相關(guān) 的總線站電路的類(lèi)型進(jìn)行標(biāo)識(shí)的信息。例如,當(dāng)總線站電路是存儲(chǔ)裝 置時(shí),例如可以支持"加載"和"存儲(chǔ)"命令,而是不"顯示"相關(guān)的命令, 而倘若該總線站電路包含顯示屏的話,則可以支持顯示相關(guān)的命令而 不是加載和存儲(chǔ)命令。在這另一實(shí)施例中,數(shù)據(jù)處理電路30還從該消息中讀出目的地地 址,并使用該地址來(lái)檢取針對(duì)與目的地地址相關(guān)的總線站類(lèi)型的命令 碼(或范圍)。數(shù)據(jù)處理電路30把來(lái)自該消息的命令碼與來(lái)自該列表的 命令(或范圍)相比較。如果來(lái)自該消息的命令不在該列表上(或不屬于 該列表范圍),則數(shù)據(jù)處理電路30檢測(cè)該命令是無(wú)效的。應(yīng)該指出,針 對(duì)有效命令的此類(lèi)檢測(cè)不局限于被尋址到測(cè)試有效性的總線站電路的 消息。能夠以這種方式來(lái)檢測(cè)針對(duì)任何其它總線站電路的消息的有效 性。在另一個(gè)實(shí)施例中,可對(duì)在該消息中的參數(shù)值使用相似的方法。 例如,如果至少某些總線站電路支持對(duì)地址的一個(gè)范圍進(jìn)行讀出和寫(xiě) 入,則存儲(chǔ)器36可以存儲(chǔ)關(guān)于與該總線站的目的地地址相關(guān)聯(lián)的地址 范圍的信息,并且,數(shù)據(jù)處理電路30可以單獨(dú)或者和其它測(cè)試一起使 用此信息來(lái)查驗(yàn)該消息的有效性。在另一個(gè)實(shí)施例中,可以使用來(lái)自該消息的簽名(signature)信息來(lái)決定是否切換到禁用狀態(tài)。在本實(shí)施例中,發(fā)送消息的總線站電 路把冗余信息包括在該消息中,使得以該消息作為自變量的一個(gè)給定 數(shù)學(xué)簽名函數(shù)的估算將產(chǎn)生一個(gè)預(yù)定值。附加信息的一個(gè)簡(jiǎn)單實(shí)例是 一位奇偶校驗(yàn),選擇該一位奇偶校驗(yàn)而使得在消息中的邏輯'T'的位數(shù) 是偶數(shù)。在此情況下,該數(shù)學(xué)函數(shù)包括進(jìn)行確定的操作,以便確定具有邏輯"r的值在該消息中的位數(shù)是偶數(shù)還是奇數(shù)。然而,也可以使用本身己從檢錯(cuò)碼得知的奇偶信息的其它類(lèi)型。在本實(shí)施例中,數(shù)據(jù)處 理電路30根據(jù)簽名估計(jì)函數(shù)來(lái)估算該消息,以便確定是否產(chǎn)生了一個(gè)預(yù)定值。如果沒(méi)有,數(shù)據(jù)處理電路30把總線站電路切換到禁用狀態(tài)。在另一個(gè)實(shí)施例中,可以使用關(guān)于其它總線站電路的狀態(tài)信息來(lái)測(cè)試消息的有效性。在本實(shí)施例中,數(shù)據(jù)處理電路30保持總體上關(guān)于 系統(tǒng)的一個(gè)狀態(tài)的信息,或在一個(gè)可選實(shí)施例中,保持關(guān)于各個(gè)總線 站電路的狀態(tài)的信息。每當(dāng)數(shù)據(jù)處理電路30接收命令時(shí),即使在該命 令不是指定到數(shù)據(jù)處理電路30作為其局部的總線站時(shí),數(shù)據(jù)處理電路 30也使用來(lái)自該命令的信息來(lái)更新該狀態(tài)信息。由數(shù)據(jù)處理電路30保 持的該狀態(tài)信息可以指示例如哪些數(shù)據(jù)流正能從哪些總線站傳送信號(hào) 和/或向哪些總線站傳送信號(hào)、哪個(gè)總線站電路已經(jīng)接通或斷開(kāi)、或切 換到某些工作模式。在本實(shí)施例中,存儲(chǔ)器36存儲(chǔ)關(guān)于命令和/或參數(shù) 值的信息,這些命令和/或參數(shù)值對(duì)于與不同狀態(tài)中的不同目的地地址 相關(guān)的總線站電路是有效的。數(shù)據(jù)處理電路30使用已針對(duì)該系統(tǒng)(或針 對(duì)與目的地地址關(guān)聯(lián)的總線站電路)存儲(chǔ)的狀態(tài)以及還可選地使用消息 的目的地地址,并且檢取關(guān)于在此狀態(tài)中的有效命令和/或參數(shù)值范圍 的信息,以便與在該消息中的命令和/或參數(shù)值相比較。如果該命令和/ 或參數(shù)值對(duì)于該狀態(tài)不是有效的,數(shù)據(jù)處理電路30則把總線站電路切 換到禁用狀態(tài),從而禁止總線定時(shí)電路34通知一個(gè)消息的開(kāi)始。在另 一個(gè)實(shí)施例中,可以驗(yàn)證該消息的目標(biāo)地地址對(duì)應(yīng)于實(shí)際出現(xiàn)在該系 統(tǒng)中的一個(gè)總線站電路。這些測(cè)試方法的每一個(gè)可被獨(dú)自使用,或把這些方法的幾個(gè)結(jié)合 使用來(lái)提供更強(qiáng)的有效性測(cè)試。如可被注意到的那樣,任何一個(gè)方法 都不要求有預(yù)定的同步碼形出現(xiàn)在總線信號(hào)中來(lái)檢測(cè)同步的丟失。效,則執(zhí)行第四步驟44,其中數(shù)據(jù)處理電路30確定該消息是否被指定到數(shù)據(jù)處理電路30作為其局部的總線站 電路。如果否,該流程通過(guò)第六步驟46返回第二步驟42,即它保持在啟用狀態(tài)中并且在接收下一消息之前不執(zhí)行對(duì)于新同步碼形的搜索。 如果該消息被尋址到該總線電路,則數(shù)據(jù)處理電路30執(zhí)行第五步驟45,執(zhí)行來(lái)自該消息的命令并且經(jīng)過(guò)第六步驟46返回第二步驟42,即保持 啟用狀態(tài)而不作針對(duì)同步碼形的搜索。在第六步驟46中,總線定時(shí)電 路34針對(duì)第二步驟42的執(zhí)行而使用該消息的長(zhǎng)度來(lái)確定下一消息的 起始時(shí)間??蛇x地,數(shù)據(jù)處理電路30可以通知總線定時(shí)電路34關(guān)于 可以通知消息的開(kāi)始。應(yīng)該指出,在總線站電路中執(zhí)行使用該消息內(nèi)容來(lái)檢查有效性的 第三步驟43,而不管消息是否指定到該總線站電路,以便把該總線站 電路切換到禁用狀態(tài)直到同步被恢復(fù)為止。應(yīng)該理解到,這些步驟的 次序并不關(guān)鍵,例如可以并行執(zhí)行幾個(gè)步驟。在一個(gè)實(shí)施例中,在提 供來(lái)進(jìn)行命令解析的數(shù)據(jù)處理電路30的設(shè)計(jì)中的一部分還被用于測(cè)試 消息的有效性。因此,不需要大的額外開(kāi)銷(xiāo)來(lái)控制同步。在一個(gè)實(shí)施例中,循環(huán)步驟41僅測(cè)試同步碼形20的存在。這由 例如總線接口電路32實(shí)現(xiàn)。然而可以使用附加測(cè)試。在進(jìn)一步的實(shí)施 例中,還使用了空閑周期24。在本實(shí)施例中,當(dāng)檢測(cè)到在第一時(shí)隙A 及空閑周期24期間沒(méi)有消息發(fā)送時(shí),總線站電路(例如總線接口電路 32)切換到第二步驟42,并且隨后消息傳輸恢復(fù)。因此,在第一時(shí)隙A 期間還使用空閑信號(hào)24來(lái)從禁用狀態(tài)切換到啟用狀態(tài)。可以在不同的時(shí)隙A-D中使用不同的同步技術(shù)。總線定時(shí)電路34 可被用于對(duì)從同步碼形20的接收直到第一時(shí)隙A的結(jié)束的一個(gè)預(yù)定的 時(shí)間間隔進(jìn)行計(jì)數(shù),并且據(jù)此計(jì)數(shù)來(lái)通知總線接口電路32,即通知必 須使用與第一時(shí)隙A不同的同步技術(shù)。可以在不同時(shí)隙A-D的開(kāi)始把 輔助同步碼形包括在總線信號(hào)中。在此情況下,總線接口電路32可被 用于檢測(cè)這些輔助同步碼形,并當(dāng)檢測(cè)這些碼形時(shí)切換到不同的同步 技術(shù)。而且,在時(shí)隙的開(kāi)始周?chē)囊粋€(gè)時(shí)間間隔中的時(shí)間間隔計(jì)數(shù)和 輔助碼形檢測(cè)的組合可被用于檢測(cè)該時(shí)隙的開(kāi)始,以便切換到不同的同步技術(shù)。在另一個(gè)實(shí)施例中,對(duì)有效命令的搜索還可被用于離開(kāi)該禁用狀 態(tài)。在本實(shí)施例中,對(duì)消息的連續(xù)潛在起點(diǎn)進(jìn)行嘗試并且檢驗(yàn)從這種 起點(diǎn)產(chǎn)生的消息的有效性,直到檢測(cè)到有效信息(或預(yù)定個(gè)數(shù)(例如2個(gè)至5個(gè))的連續(xù)有效消息)為止,然后開(kāi)始第二步驟42。雖然在己經(jīng)示出的實(shí)例中包含消息的第一時(shí)隙A是跟隨同步碼形 20的第一時(shí)隙,但應(yīng)該理解,可以可選地將另一時(shí)隙而不是第一時(shí)隙 A用于這些消息,該另一時(shí)隙在此時(shí)隙和下一個(gè)在前的同步碼形之間 具有一個(gè)同步時(shí)隙。而且,可以使用具有干預(yù)同步時(shí)隙和沒(méi)有干預(yù)同 步碼形的多個(gè)時(shí)隙,而不僅使用第一時(shí)隙A。在一個(gè)實(shí)施例中,數(shù)據(jù)流被分成(在其它數(shù)據(jù)流中)的幀,這些幀 被細(xì)分為時(shí)隙和單元。單元是出現(xiàn)在通信系統(tǒng)上的最小單位,并且負(fù) 載單個(gè)信息位。四個(gè)單元結(jié)合成一個(gè)時(shí)隙,時(shí)隙是在根據(jù)本發(fā)明的系 統(tǒng)上進(jìn)行帶寬分配的基礎(chǔ)。在一個(gè)最佳實(shí)施例中,幀以768個(gè)單元重 復(fù)。由于音頻應(yīng)用通常需要固定的帶寬,所以可以有利地使用一個(gè)信 道機(jī)制??捎煽偩€管理單元(主機(jī)站或主站)動(dòng)態(tài)地把時(shí)隙分組為幾個(gè)信 道,以使得具體的應(yīng)用程序能夠以預(yù)定的時(shí)滯和吞吐量傳送或接收信 息。數(shù)據(jù)和控制通信優(yōu)選地在單一總線上統(tǒng)一。為了促進(jìn)這種統(tǒng)一,已經(jīng)預(yù)定了一個(gè)信道控制信道。在這一信道內(nèi)定義了一個(gè)協(xié)議,該 協(xié)議使得多個(gè)設(shè)備在此信道內(nèi)相互發(fā)送異步消息。圖5示出了說(shuō)明同步的狀態(tài)圖。在一個(gè)TDMA(時(shí)域多路復(fù)用接入) 總線通信系統(tǒng)上,所希望的是每一個(gè)所連接的裝置都知道在數(shù)據(jù)流中 的什么點(diǎn)開(kāi)始一個(gè)新的幀(和/或時(shí)隙)。最好把全部同步機(jī)制都多路復(fù) 用到該數(shù)據(jù)線上。使用一個(gè)附加控制協(xié)議,通過(guò)該附加控制協(xié)議已經(jīng) 實(shí)現(xiàn)對(duì)于該控制信道的同步。這尤其有利于這樣的異步協(xié)議,即只要 控制信道可用(即不是正在使用),則使得任何裝置或站都可隨時(shí)開(kāi)始發(fā) 送。因此同步到該幀結(jié)構(gòu)的任何裝置都被布置成檢測(cè)該控制信道是否 為空。這被稱之為"消息同步"。在一個(gè)實(shí)施例中,如圖5所示的同步處理從初始狀態(tài)50開(kāi)始,裝置開(kāi)始對(duì)導(dǎo)致與幀結(jié)構(gòu)同步的嵌入信息進(jìn)行搜索,隨后切換到幀同步 狀態(tài)52。在此狀態(tài)中,觀測(cè)該控制信道來(lái)搜索該嵌入信息,并且當(dāng)發(fā) 現(xiàn)該嵌入信息時(shí)切換到消息同步狀態(tài)54。在消息同步之后,切換到操
作狀態(tài)56,其中能夠經(jīng)總線發(fā)送和接收數(shù)據(jù)。圖5中的所有向上的箭
頭都指示對(duì)于可能出現(xiàn)在總線上的錯(cuò)誤狀態(tài)的反應(yīng)。有些時(shí)候不能正 確地解析控制信道中的消息將可能導(dǎo)致裝置切換回到該消息同步狀態(tài)
54,同時(shí),不能驗(yàn)證嵌入的幀同步信息可能使得裝置返回到幀同步狀 態(tài)52。這將實(shí)現(xiàn)一個(gè)用于實(shí)現(xiàn)和驗(yàn)證消息同步的低成本、低額外開(kāi)銷(xiāo) 的機(jī)制。
圖6示出進(jìn)一步說(shuō)明同步的另一狀態(tài)圖。根據(jù)本發(fā)明的方法中的 消息協(xié)議通常具有可用于實(shí)現(xiàn)和/或驗(yàn)證消息同步的若干特征 -可用特殊符號(hào)來(lái)指示消息的不存在(IDLE)。 -特殊符號(hào)可被用于指示消息的開(kāi)始/結(jié)束。
消息可能需要符合某些規(guī)則(即必須在第一字節(jié)中指示字節(jié)長(zhǎng)度等)。
消息可以包含糾錯(cuò)碼/檢錯(cuò)碼。
根據(jù)本發(fā)明的方法的優(yōu)點(diǎn)在于任意一個(gè)上述特征或若干上述特
征的組合可用于實(shí)現(xiàn)和驗(yàn)證消息同步。
作為一個(gè)實(shí)例使用在通信系統(tǒng)中的本方法的一個(gè)實(shí)施例在消息
之間的間隔中使用了符號(hào)或碼"OxOO"。但是,如果不應(yīng)用附加編碼,則 有可能該碼"OxOO"出現(xiàn)在一個(gè)消息內(nèi)。因此,如果沒(méi)有特定編碼被使用, 則單個(gè)"OxOO"通常不足以用作為消息同步,但該單個(gè)"OxOO"是該控制信 道可能處于空閑的一個(gè)指示。連續(xù)的"OxOO"出現(xiàn)將增大消息信道是空附 的可能性。如果"OxOO"的數(shù)量超過(guò)一個(gè)消息的長(zhǎng)度,則已經(jīng)實(shí)現(xiàn)了消息 同步。如果檢測(cè)到其它值,則假設(shè)消息的開(kāi)始并且該裝置開(kāi)始解析到 來(lái)的數(shù)據(jù),就像是在消息同步中一樣。在檢測(cè)一個(gè)誤差之時(shí),重新開(kāi) 始該整個(gè)處理過(guò)程。這種實(shí)例在圖6中示出。
圖6中,頂部的'ParseMessage'狀態(tài)64被用于實(shí)現(xiàn)同步。只要檢測(cè) 到在期望的信息結(jié)構(gòu)和接收的結(jié)構(gòu)之間的不匹配(例如一個(gè)CRC錯(cuò)誤) 時(shí),都觸發(fā)導(dǎo)致返回檢測(cè)IDLE狀態(tài)62的過(guò)渡。如果檢測(cè)到一個(gè)足夠長(zhǎng)的IDLE周期,則可能有從檢測(cè)IDLE到同步狀態(tài)66的直接過(guò)渡。 該較低的ParseMessage狀態(tài)68被用于驗(yàn)證同步而不是被用于實(shí)現(xiàn)同 步。在此描述的本發(fā)明的實(shí)施例意在用于說(shuō)明。提供了通信方法,該 方法被用在一個(gè)時(shí)域多路復(fù)用通信系統(tǒng)中,該系統(tǒng)包括一個(gè)主機(jī)站和 經(jīng)通信總線連接的從站,該通信總線具有用于分布時(shí)鐘信號(hào)的第一線 路和用于在該主機(jī)站和該從站之間傳輸數(shù)據(jù)的第二線路,其特征在于 該同步信息是經(jīng)該數(shù)據(jù)線發(fā)送的??梢宰鞒龈鞣N修改。例如清楚可見(jiàn) 的是可以使用多個(gè)數(shù)據(jù)線而不是單個(gè)數(shù)據(jù)線。
權(quán)利要求
1.一種總線站電路包括-總線接口(32),用于從總線(10)接收消息;-消息處理電路(30,32,34),構(gòu)成用于處理該消息,并且用于-當(dāng)操作在一個(gè)同步啟用狀態(tài)中時(shí),從緊挨著的在先消息的結(jié)束點(diǎn)開(kāi)始頭接尾地標(biāo)識(shí)連續(xù)消息的起點(diǎn);-測(cè)試該消息內(nèi)容的有效性;-響應(yīng)對(duì)具有無(wú)效內(nèi)容的消息的檢測(cè),切換到同步禁用狀態(tài),在該同步禁用狀態(tài)中,跟隨在具有無(wú)效內(nèi)容的消息之后的起點(diǎn)標(biāo)識(shí)被禁用。
2. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路被構(gòu)成 來(lái)執(zhí)行所述消息內(nèi)容的測(cè)試和切換,該執(zhí)行與消息是否被尋址到總線 站電路無(wú)關(guān)。
3. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路(30, 32, 34)包括檢測(cè)器,用于檢測(cè)同步碼形的發(fā)送和/或所述總線(10)上的空 閑周期,該消息處理電路(30, 32, 34)被構(gòu)成來(lái)響應(yīng)于該同步碼形的 檢測(cè)、和/或該空閑周期的檢測(cè)、和/或在檢測(cè)到的空閑周期之后的消 息發(fā)送的開(kāi)始而從該同步禁用狀態(tài)切換回同步啟用狀態(tài)。
4. 根據(jù)權(quán)利要求1的總線站電路,包括檢測(cè)器,用于檢測(cè)總線 (IO)上的同步碼形的發(fā)送,該消息處理電路(30, 32, 34)被構(gòu)成用于-響應(yīng)同步碼形的檢測(cè),從同步禁用狀態(tài)切換回同步啟用狀態(tài); -至少定義第一時(shí)隙和跟隨該第一時(shí)隙的第二時(shí)隙,該第一時(shí)隙 和第二時(shí)隙都在一對(duì)連續(xù)的同步碼形之間;-在該第 一 時(shí)隙期間執(zhí)行所述的對(duì)起點(diǎn)的標(biāo)識(shí); -測(cè)量從對(duì)該同步碼形的第一個(gè)同步碼形的檢測(cè)開(kāi)始所經(jīng)過(guò)的時(shí)間,以便定義該第二時(shí)隙的開(kāi)始;-隨著測(cè)量到的該第二時(shí)隙的開(kāi)始,切換到一種模式,在該模式 中第二個(gè)總線站電路從第二時(shí)隙中整體上接收數(shù)據(jù)。
5. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路被構(gòu)成 來(lái)在該第二時(shí)隙中發(fā)送和/或接收等時(shí)的數(shù)據(jù)。
6. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路(30, 32, 34)被構(gòu)成為通過(guò)驗(yàn)證由該消息計(jì)算出來(lái)的簽名值來(lái)執(zhí)行所述的測(cè) 試。
7. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路(30, 32, 34)被構(gòu)成為通過(guò)測(cè)試該消息的目的地地址是否不對(duì)應(yīng)于該系統(tǒng)中的 一個(gè)總線站電路來(lái)執(zhí)行所述測(cè)試。
8. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路(30, 32, 34)被構(gòu)成為通過(guò)測(cè)試該消息中的命令碼是否為有效的命令碼來(lái)執(zhí)行 所述的測(cè)試。
9. 根據(jù)權(quán)利要求8的總線站電路,其中該消息處理電路(30, 32, 34)被構(gòu)成為根據(jù)該消息的目的地地址來(lái)定義該命令碼的有效值。
10. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路(30, 32, 34)被構(gòu)成為通過(guò)以下方式來(lái)執(zhí)行所述測(cè)試,該方式為從該消 息中提取一個(gè)命令的參數(shù)值,并且在該參數(shù)值不處于針對(duì)由該命令碼 標(biāo)識(shí)的命令的有效參數(shù)值范圍之內(nèi)時(shí)檢測(cè)無(wú)效性。
11. 根據(jù)權(quán)利要求10的總線站電路,其中該消息處理電路(30, 32,34)被構(gòu)成為根據(jù)該消息的目的地地址和/或該消息中的命令碼來(lái) 定義針對(duì)該參數(shù)值的有效范圍。
12. 根據(jù)權(quán)利要求1的總線站電路,其中該消息處理電路被構(gòu)成 為通過(guò)下列步驟來(lái)搜索同步,所述步驟為-選擇不同的時(shí)間點(diǎn);-從分別的時(shí)間點(diǎn)開(kāi)始從該總線中提取分別的測(cè)試消息; -測(cè)試該測(cè)試消息的內(nèi)容的有效性;-當(dāng)發(fā)現(xiàn)針對(duì)測(cè)試消息之一的有效性時(shí),使用針對(duì)初始化同步的 有效測(cè)試消息的開(kāi)始時(shí)間點(diǎn)來(lái)切換到同步啟用狀態(tài)。
13. —種電子系統(tǒng),包括總線(10)以及經(jīng)由該總線(10)耦接的多個(gè)總線站電路(12, 14),至少第一個(gè)總線站電路(12)包括用于經(jīng)該總線發(fā)送消息的發(fā)送器;至少第二個(gè)總線站電路(14)包括用于從該總線(10)接收消息的總線接口 (32),以及用于處理來(lái)自該總線(IO) 的消息的消息處理電路(30, 32, 34),該消息處理電路(30, 32, 34) 可操作在同步啟用狀態(tài)和同步禁用狀態(tài),并且該消息處理電路(30, 32, 34)被構(gòu)成用于-當(dāng)操作在該同歩啟用狀態(tài)中時(shí),從緊挨著的在先消息的結(jié)束點(diǎn) 開(kāi)始頭接尾地標(biāo)識(shí)連續(xù)消息的起點(diǎn);-測(cè)試該消息內(nèi)容的有效性;-響應(yīng)對(duì)具有無(wú)效內(nèi)容的消息的檢測(cè),切換到該同步禁用狀態(tài), 當(dāng)在該同步禁用狀態(tài)中時(shí),在第二個(gè)總線站電路中禁用跟隨在具有無(wú) 效內(nèi)容的消息之后的消息的起點(diǎn)標(biāo)識(shí)。
14. 根據(jù)權(quán)利要求13的電子系統(tǒng),包括總線主電路(IO),該總 線主電路(10)被構(gòu)成用于在若干時(shí)隙之間周期性地發(fā)送同步碼形,該若干時(shí)隙中的每個(gè)時(shí)隙都被提供用于多個(gè)消息的發(fā)送,該消息處理電 路(30, 32, 34)被構(gòu)成用于-檢測(cè)同步碼形的發(fā)送和/或該總線上的空閑周期;-響應(yīng)該同步碼形的檢測(cè)、和/或空閑周期的檢測(cè)、禾n/或檢測(cè)到的空閑周期之后的消息發(fā)送的開(kāi)始,從該同步禁用狀態(tài)切換回該同步 啟用狀態(tài)。
15. 根據(jù)權(quán)利要求14的電子系統(tǒng),其中該消息處理電路被構(gòu)成 來(lái)在該第二時(shí)隙中發(fā)送和/或接收等時(shí)的數(shù)據(jù)。
16. 根據(jù)權(quán)利要求15的電子系統(tǒng),其中該消息處理電路(30, 32, 34)被構(gòu)成通過(guò)下列步驟來(lái)搜索同步,所述步驟包括-選擇不同的時(shí)間點(diǎn);-從分別的時(shí)間點(diǎn)開(kāi)始,從該總線提取分別的測(cè)試消息; -測(cè)試該測(cè)試消息的內(nèi)容的有效性;-當(dāng)發(fā)現(xiàn)針對(duì)測(cè)試消息之一的有效性時(shí),使用針對(duì)初始化同步的 有效測(cè)試消息的開(kāi)始時(shí)間點(diǎn)來(lái)切換到同步啟用狀態(tài)。
17. 根據(jù)權(quán)利要求13的電子系統(tǒng),其中,該消息處理電路(30, 32, 34)被構(gòu)成為在發(fā)現(xiàn)所述測(cè)試消息之一的有效性之前,只有己經(jīng) 發(fā)現(xiàn)了這些測(cè)試消息的另外一個(gè)的有效性,才切換到同步啟用狀態(tài), 該有效測(cè)試消息的開(kāi)始的時(shí)間點(diǎn)是從所述另外一個(gè)測(cè)試消息得出的。
18. 根據(jù)權(quán)利要求13的總線站電路,其中該消息處理電路被構(gòu) 成為通過(guò)下列方式來(lái)執(zhí)行所述測(cè)試,所述方式為驗(yàn)證由該消息計(jì)算 出來(lái)的簽名值、和/或測(cè)試該消息的目的地地址是否不對(duì)應(yīng)于系統(tǒng)中 的總線站電路、和/或測(cè)試該消息中的命令碼是否為有效的命令碼、 和/或從該消息中提取命令的參數(shù)值并在該參數(shù)值不處于針對(duì)由該命 令碼標(biāo)識(shí)的命令的有效參數(shù)值范圍之內(nèi)時(shí)檢測(cè)無(wú)效性。
19. 一種在具有總線(10)的電子系統(tǒng)中操作總線站電路(14)的 方法,該方法包括步驟-通過(guò)檢測(cè)總線上的同步信號(hào)碼形來(lái)確定起始同步時(shí)間點(diǎn),并且 當(dāng)檢測(cè)到該同步信號(hào)碼形時(shí)切換到同步啟用狀態(tài);-當(dāng)操作在該同步啟用狀態(tài)中時(shí),從緊挨著的在先消息的結(jié)束點(diǎn) 開(kāi)始頭接尾地標(biāo)識(shí)連續(xù)消息的起點(diǎn);-測(cè)試該消息內(nèi)容的有效性;-響應(yīng)對(duì)具有無(wú)效內(nèi)容的消息的檢測(cè),利用在該總線站電路中被 禁用的同步禁用狀態(tài)中接收到的消息,來(lái)切換到同步禁用狀態(tài); -等待一個(gè)同步事件,以便切換回同步啟用狀態(tài)。
全文摘要
一種總線站電路(14),其操作在具有總線(10)的電子系統(tǒng)中。通過(guò)檢測(cè)該總線上的同步信號(hào)碼形并且在檢測(cè)到同步信號(hào)碼形時(shí)切換到同步啟用狀態(tài),該總線站確定一個(gè)起始同步時(shí)間點(diǎn)。當(dāng)操作在該同步啟用狀態(tài)中時(shí),從緊挨著的在先消息的結(jié)束點(diǎn)開(kāi)始頭接尾地確定連續(xù)消息的起點(diǎn)。對(duì)這些消息的內(nèi)容做有效性檢測(cè)。響應(yīng)對(duì)具有無(wú)效內(nèi)容的消息的檢測(cè),該總線站切換到一個(gè)同步禁用狀態(tài)。在處于該同步禁用狀態(tài)的同時(shí),禁止在該總線站電路中使用所接收到的消息。在該同步禁用狀態(tài)中,總線站等待一個(gè)同步事件,以便切換回同步啟用狀態(tài)。
文檔編號(hào)G06F13/42GK101317167SQ200680044489
公開(kāi)日2008年12月3日 申請(qǐng)日期2006年11月28日 優(yōu)先權(quán)日2005年11月29日
發(fā)明者博納德斯·范弗利梅倫, 彼得·范登哈默, 赫里特·登貝斯特恩 申請(qǐng)人:Nxp股份有限公司