用于運行通信裝置的方法
【專利摘要】本發(fā)明涉及一種用于在環(huán)形通信裝置(50)的用戶之間傳輸幀的方法,所述幀具有數(shù)據(jù),所述通信裝置具有主機(52)和至少一個從機(54、56、58、60)作為用戶,其中每個用戶具有至少一個中斷寄存器(62、64、66),其中所述至少一個中斷寄存器(62、64、66)的字段被分配給中斷請求并且包括中斷位的值,其中由從機(54、56、58、60)在構(gòu)造為空幀(42)的幀中向主機(52)傳送中斷請求,該中斷請求包括中斷位,其中空幀此外具有用于所有從機(54、56、58、60)的切換位,該切換位說明中斷請求的狀態(tài)。
【專利說明】用于運行通信裝置的方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及一種用于運行通信裝置的方法以及一種通信裝置。
【背景技術(shù)】
[0002]在汽車【技術(shù)領(lǐng)域】中,串行接口(例如SPI,Serial Peripheral Interface (串行外設(shè)接口))在控制設(shè)備中被用于在例如可被構(gòu)造為集成電路(IC, Integrated Circuit)的邏輯組件之間傳輸數(shù)據(jù)。該SPI接口描述在構(gòu)造為主機的組件與不同的構(gòu)造為從機的組件之間的雙向的、同步的以及串行的數(shù)據(jù)傳輸。在此,接口在主機與從機之間包括至少三條線路,通常這是兩條數(shù)據(jù)線和一條時鐘線。在多個從機的情況下,這些組件中的每個都需要主機的附加的選擇線或選中線。SPI接口能夠?qū)崿F(xiàn)菊花鏈或總線拓撲的構(gòu)造。
[0003]在一些情況下,SPI接口并不適于傳輸時間關(guān)鍵控制信號,以便使目前的安全關(guān)鍵應(yīng)用的實時要求變得合理。經(jīng)常利用SPI只進行診斷和狀態(tài)信息的交換。時間關(guān)鍵控制信號通常在利用定時器單元和/或?qū)S薪涌诘那闆r下以高花費被傳輸給執(zhí)行器和/或傳感器的分析電路的控制組件。
[0004]在應(yīng)用總線拓撲形式的SPI接口時,在較高數(shù)據(jù)率的情況下由于EMV特性差而出現(xiàn)越來越差的信號完整性并且高干擾影響。此外,只有發(fā)送信號與時鐘信號同步地被傳輸,而接收信號的相位同步的傳輸由于在從機中的內(nèi)部延遲時間在高數(shù)據(jù)率的情況下變得越來越難。這樣,在將SPI接口應(yīng)用于菊花鏈拓撲、即環(huán)形拓撲中時可能形成非常高的等待時間,為此這樣的通信裝置不能有效地在汽車控制設(shè)備中予以利用。
[0005]在現(xiàn)有技術(shù)中,基于物理傳輸層、例如SPI,為了在兩個實例之間無損耗地傳輸數(shù)據(jù),使用所謂的三次握手(tree-way-handshake)方法。在輸送消息時,參與的實例需要確保由其接觸的實例已獲得消息的可能性。因此,當消息到達時,進行發(fā)送的實例想要確認應(yīng)答。這樣,第一用戶將消息發(fā)送給第二用戶。基于環(huán)形拓撲,進行發(fā)送的第一用戶、例如主機現(xiàn)在可以讀回其所發(fā)送的信息并且比較,是否出現(xiàn)了傳輸錯誤,然而,第一用戶不能辨別,原始消息是否已經(jīng)受干擾地到達了第二用戶處,或該原始消息是否正確地到達了第二用戶處并且在返回路徑上變?yōu)榱耸д?。此外,第二用戶、例如從機必須有把握,其信息、例如確認被正確地傳輸給了第一用戶,以便之后例如能夠以新數(shù)據(jù)占用存儲位置。
【發(fā)明內(nèi)容】
[0006]在此背景下介紹具有獨立權(quán)利要求的特征的方法和通信裝置。本發(fā)明的其他擴展方案由從屬權(quán)利要求和說明書中得出。
[0007]利用本發(fā)明尤其提供用于在通信裝置中的用戶之間傳輸數(shù)據(jù)的方法的協(xié)議和數(shù)據(jù)結(jié)構(gòu),其中用戶彼此串行地連接并且通信裝置以環(huán)形拓撲具有通常環(huán)形的結(jié)構(gòu)。在此情況下在擴展方案中規(guī)定,在用于傳輸?shù)膮f(xié)議中和/或在數(shù)據(jù)結(jié)構(gòu)中通過特殊的段保護數(shù)據(jù)的傳輸。在用戶的中斷寄存器中的中斷位和在中斷請求中的切換位被用作這樣的段。在此,每一個從機被分配一個中斷位,其中相應(yīng)的從機通過在空幀中設(shè)定被分配給其的中斷位用信號通知主機:該從機是否可以向主機提供數(shù)據(jù)。若該從機可以向主機提供數(shù)據(jù),則從機利用所設(shè)定的中斷位要求主機向其發(fā)送數(shù)據(jù)幀,該從機可以將數(shù)據(jù)插入到該數(shù)據(jù)幀中??蓸?gòu)造為空幀或數(shù)據(jù)幀的每個幀具有用于所有用戶的切換位。通過切換位的值顯示以前的幀的傳輸是否無干擾地進行,即是否必須被重復(fù)。
[0008]因此,可以以直到高數(shù)據(jù)率的方式實現(xiàn)用戶在通信裝置的邏輯組件上利用例如至少一個專用集成電路(ASIC)的至少一個微控制器的簡單且成本低的實施。為了應(yīng)用于安全關(guān)鍵應(yīng)用中,該方法能夠?qū)崿F(xiàn)在用戶之間無錯誤地傳輸數(shù)據(jù)。
[0009]在可能的應(yīng)用中,使在軟件方面通常所需的保護最小化。因此,在用戶的計算機核心與接口模塊之間的交互的需求減小,該接口模塊可以構(gòu)造為串行接口。通信裝置因此支持在用戶之間受保護地傳輸信息,其中通信裝置的一個用戶被構(gòu)造為主機而至少一個另外的用戶被構(gòu)造為從機。在傳輸錯誤的情況下,在本發(fā)明的一種擴展方案中,可以自給自足地重復(fù)數(shù)據(jù)請求,而無軟件交互。此外,所描述的通信裝置能夠?qū)崿F(xiàn)所連接的用戶同步到統(tǒng)一的時間域上并且支持用于數(shù)據(jù)的單播、多播或廣播傳輸,由此主機可以同時響應(yīng)多個從機。
[0010]在具有環(huán)形拓撲的通信裝置中,用戶通過點對點連接以最小的引腳數(shù)目連接。用戶之一、例如微控制器在此作為主機起作用,由此不需要總線仲裁。從機可以不同地被構(gòu)造。這樣,分立組件可以具有多個從機或可以僅具有一個從機。分別具有至少一個從機的分立組件可以構(gòu)造為ASIC (專用集成電路),其中,其中集成有至少一個從機的至少一個組件可由邏輯電路、例如微控制器或另一 ASIC作為主機來控制。主機通常發(fā)送連續(xù)的數(shù)據(jù)流,該數(shù)據(jù)流依次經(jīng)過從機。通過連續(xù)同步的可能性,從機也不需要其他時鐘。為了能夠在用戶間進行數(shù)據(jù)交換,在本發(fā)明的擴展方案中,設(shè)置有具有所屬數(shù)據(jù)結(jié)構(gòu)的統(tǒng)一協(xié)議。
[0011]在本發(fā)明的另外的擴展方案中,可以在串行的、環(huán)形的通信裝置、例如所謂的環(huán)形總線的用戶之間傳輸數(shù)據(jù),在該通信裝置中用戶彼此串行地連接。在此,數(shù)據(jù)包可以從構(gòu)造為主機的用戶傳送給構(gòu)造為從機的另外的用戶,其中,該數(shù)據(jù)包在從機間被傳送。此外,可以從用戶到用戶以至少一位持續(xù)時間的延遲傳輸數(shù)據(jù),由此可包含消息的數(shù)據(jù)包可以在用戶之間以非常小的等待時間被傳輸。
[0012]根據(jù)本發(fā)明的通信裝置被構(gòu)造用于執(zhí)行所介紹的方法的所有步驟。在此,該方法的各個步驟也可以由該通信裝置的各個部件來執(zhí)行。此外,該通信裝置的功能或該通信裝置的各個部件的功能可以被轉(zhuǎn)換為該方法的步驟。此外,可能的是,將該方法的步驟實現(xiàn)為該通信裝置的至少一個部件或整個通信裝置的功能。
[0013]本發(fā)明的其他優(yōu)點和擴展方案從說明書和附圖中得出。
[0014]易于理解的是,前面所提及的和下面還要闡述的特征不僅可以以分別所說明的組合而且可以以其他組合或者單獨地被使用,而不離開本發(fā)明的范圍。
【專利附圖】
【附圖說明】
[0015]圖1以示意圖示出具有米勒/MFM編碼的幀間符號的實例,這些幀間符號在根據(jù)本發(fā)明的方法的一個實施方式中被使用。
[0016]圖2以示意圖示出構(gòu)造為數(shù)據(jù)幀的幀的結(jié)構(gòu),該幀在根據(jù)本發(fā)明的方法的另一實施方式中被使用。
[0017]圖3以示意圖示出構(gòu)造為空幀的幀的結(jié)構(gòu),該幀在根據(jù)本發(fā)明的方法的另一實施方式中被使用。
[0018]圖4以示意圖示出根據(jù)本發(fā)明的通信裝置的一種實施方式,在根據(jù)本發(fā)明的方法的一種實施方式中利用該通信裝置觸發(fā)軟中斷請求。
[0019]圖5以示意圖示出在執(zhí)行根據(jù)本發(fā)明的方法的另一實施方式時用于可靠地傳輸中斷請求的流程控制的實例。
[0020]圖6以示意圖示出在執(zhí)行根據(jù)本發(fā)明的方法的另一實施方式時使用切換位(觸發(fā)位(Toggle-Bit))來自給自足地返回(重傳)信息的實例。
【具體實施方式】
[0021]本發(fā)明的其他優(yōu)點和擴展方案從說明書和附圖中得出。
[0022]易于理解的是,前面所提及的和下面還要闡述的特征不僅可以以分別所說明的組合而且可以以其他組合或者單獨地被使用,而不離開本發(fā)明的范圍。
[0023]圖1示出幀間符號2、4、6、8、10、12的實例,這些幀間符號在根據(jù)本發(fā)明的方法的實施中被用作數(shù)據(jù)包的組成部分,這些組成部分在根據(jù)本發(fā)明的通信裝置的用戶之間被傳送。在這樣的數(shù)據(jù)包中,跟隨在所示出的幀間符號2、4、6、8、10、12之一后面的是幀14,該幀可以被構(gòu)造為數(shù)據(jù)幀或空幀。
[0024]在根據(jù)本發(fā)明的方法的一種擴展方案中被用于對數(shù)據(jù)包進行編碼的MFM編碼和因此米勒編碼的情況下,尤其得出圖1中所示的、數(shù)據(jù)流的數(shù)據(jù)包的幀間符號2、4、6、8、10、12的實例。在此,每個幀間符號2、4、6、8、10、12具有有所分配的周期持續(xù)時間的獨特的信號變化曲線16、18、20、22、24、26。每個幀間符號2、4、6、8、10、12的信號變化曲線16、18、
20、22、24、26由于米勒編碼而具有在用戶初始化時所使用的不允許的2.5或3位的周期持續(xù)時間,該周期持續(xù)時間與在發(fā)送數(shù)據(jù)時所使用的傳統(tǒng)周期持續(xù)時間不同。前兩個幀間符號2、4的信號變化曲線16、18具有3位的周期持續(xù)時間,而其他幀間符號6、8、10、12的信號變化曲線20、22、24、26分別具有2.5位的周期持續(xù)時間。具有不允許的周期持續(xù)時間的幀間符號2、4、6、8、10、12由于違反編碼(Kodierverletzung)而產(chǎn)生。中間符號2、4、6、8、
10、12對應(yīng)于無效的數(shù)據(jù)信號,然而所述數(shù)據(jù)信號被用戶所識別。
[0025]通過在初始化期間重復(fù)發(fā)送這樣的幀間符號2、4、6、8、10、12,通信裝置的每個從機獲得在兩個相繼的邊沿變換之間交替地短的和長的周期持續(xù)時間的序列,所述周期持續(xù)時間通過信號變化曲線16、18、20、22、24、26限定。
[0026]功能上對應(yīng)于數(shù)據(jù)包的包開始(Start of Package)和/或包結(jié)束(End ofPackage)的巾貞間符號2、4、6、8、10、12 (IFS, Interframe-Symbol)被插入到要傳輸?shù)臄?shù)據(jù)流中,以便能夠由用戶在連續(xù)的數(shù)據(jù)流中識別和提取信息。幀間符號(IFS)2、4、6、8、10、12也可以構(gòu)造為前同步碼,由此構(gòu)造為從機的用戶可以被同步到隨后的信息。幀間符號2、4、
6、8、10、12因此被用于對幀進行同步,這些幀可以構(gòu)造為數(shù)據(jù)幀或空幀。
[0027]為了保證可靠地識別幀間符號2、4、6、8、10、12,要排除在數(shù)據(jù)流中出現(xiàn)相同的位序列。這例如可以通過合適的編碼或違反編碼來確保。為了產(chǎn)生可被用作同步符號的特殊的幀間符號2、4、6、8、10、12,所應(yīng)用的線路編碼、例如米勒編碼的規(guī)則可以被利用,所述規(guī)則在數(shù)據(jù)流中確定數(shù)量的零或一之后總是設(shè)置邊沿變換。只要在數(shù)據(jù)流中根據(jù)該方法的實施超過沒有邊沿變換的最小或最大持續(xù)時間,則提供無效的編碼。由于低于沒有邊沿變換的最小周期持續(xù)時間提高通信裝置的帶寬要求,所以替代地選擇沒有邊沿變換的最大允許的周期持續(xù)時間的無效提聞。
[0028]圖2以示意圖示出數(shù)據(jù)包的構(gòu)造為數(shù)據(jù)幀28的幀的構(gòu)造的實例,該幀可以在根據(jù)本發(fā)明的通信裝置的用戶之間發(fā)送。該數(shù)據(jù)幀28包括標識字段30、地址字段34、數(shù)據(jù)字段36以及可選的用于循環(huán)冗余校驗的CRC字段38。此外,圖2分別示出直接在數(shù)據(jù)幀28之前或直接在數(shù)據(jù)幀28之后的幀間符號40。
[0029]在根據(jù)本發(fā)明的方法的一種實施方式中能夠在根據(jù)本發(fā)明的通信裝置的用戶之間交換的、構(gòu)造為空幀42的幀的結(jié)構(gòu)的實例在圖3中示意性地被示出。該空幀42同樣包括標識字段30以及在空幀42中可選的且因此并不一定必需的地址字段34。此外,空幀42包括用于中斷請求(IRQ,Interrupt Request)的IRQ字段44。空巾貞42同樣可以具有可選的用于循環(huán)冗余校驗的CRC字段38。在所發(fā)送的數(shù)據(jù)流中,在兩個幀間符號40之間的空幀42也直接被布置在空幀42之前并且直接被布置在空幀42之后。
[0030]根據(jù)圖2和圖3中所介紹的幀的數(shù)據(jù)結(jié)構(gòu),跟隨在幀間符號40之后的是具有幀標識位(Frame-1D-Bits)的序列的標識字段30。這些幀標識位用信號信息用戶:在隨后的數(shù)據(jù)流中涉及何種類型的信息。在一種示例性的配置中,可以分別設(shè)置一個幀標識位和四個地址位。在替代的實施中,也可以提高或縮小報頭的位,該報頭包括標識字段30以及地址字段34。
[0031]在本發(fā)明的擴展方案中,數(shù)據(jù)包的幀的地址字段34以及標識字段30配備有奇偶校驗位,由此防止有錯誤的尋址。替代地或補充地,也可以在整個幀、通常整個數(shù)據(jù)幀之上執(zhí)行循環(huán)冗余校驗(cyclic redundancy check,CRC)并且在此計算校驗和。對完整巾貞的校驗和的計算提高傳輸錯誤的識別并且因此也使得能夠在安全關(guān)鍵裝置中、例如在汽車的控制設(shè)備中使用。
[0032]在另一種應(yīng)用中,在幀的標識字段30中的標識位通過主機來配置,使得所連接的從機可以將信息解釋為數(shù)據(jù)幀28。在一種示例性的配置中,數(shù)據(jù)幀28的特征在于,數(shù)據(jù)幀28的標識字段30中的第一標識位FDO未被設(shè)置:FD0=0。信息的數(shù)據(jù)內(nèi)容因此僅允許由被尋址的用戶處理。這種信息(數(shù)據(jù)幀28)對應(yīng)于串行外設(shè)接口(SPI)的數(shù)據(jù)內(nèi)容。
[0033]除了具有標識位的標識字段30之外,幀具有有地址位的地址字段34。在此,用戶的尋址可以通過設(shè)定和/或改變地址字段34中的地址值并且因此地址位來執(zhí)行,由此設(shè)定幀的地址字段34的地址信息。在對用戶尋址時,如下利用環(huán)形拓撲,即每個用戶、通常從機從例如通過地址值限定的當前地址減去0x01,由此在具有相應(yīng)地址值的地址0x00的情況下尋址所期望的用戶。實現(xiàn)通常由I位減法器通過傳輸?shù)谝蛔畹陀行?leastsignificant bit, LSB-First)的地址來進行。
[0034]此外,幀的標識字段30中的其他標識位例如可以被用于傳輸指令(單播、多播和/或廣播指令)。通過相應(yīng)的配置,在傳輸數(shù)據(jù)幀28時可以執(zhí)行寫入(廣播寫入)和/或讀取(廣播讀取)。在這樣的用于寫入和/或用于讀取的傳輸指令的情況下,隨后的地址值不再被解釋為地址信息而是被解釋為傳輸標識(廣播ID)并且不被從機改變。因此可以執(zhí)行地址、即例如在具有4位的長度的地址報頭的情況下16個地址的大量不同傳輸(廣播)。
[0035]在傳輸?shù)牡谝粦?yīng)用(廣播應(yīng)用)中,主機作為用戶向參與該通信的從機發(fā)送用于調(diào)整系統(tǒng)時鐘的指令,加上單獨的偏移(Versatz),該偏移對應(yīng)于環(huán)形通信裝置中的延遲并且該偏移對于主機而言是已知的。此外,主機可以以已知的時間偏移向多個從機發(fā)送唯一的幀。主機到第一從機的時間偏移為X位+數(shù)據(jù)位的數(shù)目,因為該從機只有在其接收了整個幀之后才能調(diào)整其時鐘。然而,該時間是固定的并且可計算。相繼的從機利用僅僅一個另外的時間偏移并且因此僅僅一個另外的節(jié)拍偏移來調(diào)整其時鐘,因為每個用戶的延遲在本發(fā)明的擴展方案中僅為一位。
[0036]在傳輸?shù)牡诙?yīng)用中,主機將用于輸出/調(diào)整角度時鐘(Winkeluhren)的指令發(fā)送給所連接的從機。在一種示例性應(yīng)用中,環(huán)形網(wǎng)絡(luò)裝置中的第一從機識別用于輸出角度時鐘的其值的傳輸指令。第一從機如下改變在通常構(gòu)造為數(shù)據(jù)幀28的幀的標識字段30中通過在標識位中所存儲的標識,即隨后的從機以讀取方式訪問數(shù)據(jù)內(nèi)容并且用角度時鐘的值填充由主機留空的幀的數(shù)據(jù)部分。隨后的從機現(xiàn)在以類似于在第一應(yīng)用中的方式利用該傳輸來在考慮到一位的節(jié)拍偏移的情況下設(shè)置其角度時鐘的值。當附加地還傳輸當前的改變速度時(其中考慮到幀可以任意長),從機可以被保持足夠精確地角度同步。
[0037]在本發(fā)明的擴展方案中規(guī)定,空幀42的每個IRQ字段44對于每個參與的從機具有一個中斷位,該中斷位明確地被分配給相應(yīng)的從機。每個從機可以通過將被分配給其的中斷位設(shè)置和/或設(shè)定為I或O來將中斷請求傳送給主機并且因此用信號通知,主機應(yīng)執(zhí)行特別的動作,例如將數(shù)據(jù)幀28發(fā)送給該從機,該從機可以將針對主機的數(shù)據(jù)插入到該數(shù)據(jù)幀中。
[0038]在根據(jù)本發(fā)明的方法的一種可能的擴展方案中中斷請求的觸發(fā)和復(fù)位在圖4中示例性地被示出。
[0039]圖4以示意圖示出在根據(jù)本發(fā)明的方法的一種實施方式中在三個時間上相繼的運行情況下根據(jù)本發(fā)明的通信裝置50的實例。在此環(huán)形的通信裝置50具有作為用戶的主機52以及從機54、56、58、60,其在通信裝置50中彼此串行地并且環(huán)形地連接。在此,第一從機54經(jīng)由數(shù)據(jù)連接與主機52連接。所有從機54、56、58、60串聯(lián)并且同樣經(jīng)由數(shù)據(jù)連接彼此連接。通信裝置的最后的從機60又與主機52連接。
[0040]此外,在圖4中針對每個從機54、56、58、60示出了具有字段的中斷寄存器62,該字段顯示中斷位的狀態(tài)并且因此顯示中斷請求的位的狀態(tài),該中斷請求的位具有狀態(tài)O或I。主機52包括兩個中斷寄存器64、66,其中主機52的這兩個中斷寄存器64、66中的每個都具有I個字段,其中中斷寄存器64、66的第X個字段的值被分配給第X個從機54、56、58、60的中斷的值和/或狀態(tài)。主機52的第一中斷寄存器64顯示在前的第k-Ι個空幀的中斷位的數(shù)據(jù)內(nèi)容。第二中斷寄存器66顯示第k個空幀的當前中斷位的數(shù)據(jù)內(nèi)容。
[0041]在圖4中同樣示出的時間軸68被劃分成三個區(qū)域,其中第一區(qū)域通過第一時間點70 t=0和第二時間點72來形成邊界,在第二時間點第η個空幀從主機52被發(fā)送給從機54、56、58、60,其中在這兩個時間點70、72之間執(zhí)行通信裝置50的初始化74。通過第二時間點72和第三時間點76形成邊界的第二區(qū)域表示中斷的觸發(fā)78,其中在第三時間點由主機52將第η+1個空幀發(fā)送給從機54、56、58、60。在第三時間點76之后,執(zhí)行中斷的復(fù)位80。在對中斷并且因此中斷請求復(fù)位80時,不是將從機54、56、58、60之一的中斷寄存器62中的中斷位復(fù)位,而是將主機52的第二中斷寄存器66的針對中斷的第X個字段的值接收到主機52的第一中斷寄存器64中。以此,在從機54、56、58、60的中斷寄存器62中的中斷位的值保持不變。只要從機54、56、58、60現(xiàn)在想要向主機52傳送新中斷請求,從機54、56、58、60的中斷寄存器62中的中斷位的狀態(tài)就被反轉(zhuǎn),該主機52在通過空幀傳輸之后借助第一中斷寄存器64與第二中斷寄存器66的比較根據(jù)上述方法來識別這一點。
[0042]在初始化74通信裝置50時,在本發(fā)明的所描述的實施方式中規(guī)定,針對所有從機54、56、58、60的所有中斷位被設(shè)置為O。在中斷觸發(fā)78時規(guī)定,在此第三從機58通過切換其中斷寄存器62中的中斷位來標記中斷的觸發(fā)78,這又由主機52在接收各個從機54、56、58、60的中斷字段之后通過如下方式記錄在其第二中斷寄存器66中:該第二中斷寄存器66的第三字段中的值被設(shè)置為I而其他字段的值為O。
[0043]替代地可能的是,中斷位在初始化74時被設(shè)置為I并且只要從機54、56、58、60可以為主機52提供數(shù)據(jù),該從機54、56、58、60將被分配給其的中斷位的值設(shè)置為0,。通過合適地設(shè)置和/或設(shè)定中斷位(這根據(jù)定義可以意味著,中斷位被設(shè)置和/或調(diào)整為O或1),從機54、56、58、60可以向主機傳送信號。
[0044]若從機54、56、58、60中之一設(shè)置中斷請求,則相應(yīng)的從機54、56、58、60通過設(shè)定其中斷寄存器62中的中斷位的值來觸發(fā)該中斷請求。此外,中斷位的當前值與相應(yīng)從機54、56、58、60現(xiàn)在是否觸發(fā)中斷請求無關(guān)地在一個幀、通??諑斜粋鬏?,該幀在通信裝置50中在用戶間傳輸,即從主機52出發(fā)從從機54、56、58、60被傳輸至從機54、56、58、60并且最后又被傳輸至主機52。在此,每個幀通常具有X個字段,其中,第X個字段明確地被分配給第X個從機54、56、58、60的中斷位的值。一旦主機52在自從機54、56、58、60循環(huán)至從機54、56、58、60之后又接收了幀,主機52的第一中斷寄存器64的字段就可以被更新,其中中斷位的值從所接收的幀的第X個字段被傳輸?shù)街鳈C52的設(shè)置為參考的第一中斷寄存器64的第X個字段中。
[0045]在另一應(yīng)用中,幀的標識位通過主機52來配置,使得所連接的從機54、56、58、60可以將作為信息接收的幀解釋為空幀。在一種示例性配置中,空幀的特征在于,在標識字段中的至少第一標識位FDO合適地被設(shè)置并且因此被定義,其中第一標識位例如被設(shè)置為FDO=I。幀定義為空幀應(yīng)根據(jù)所使用的協(xié)議進行,其中通過設(shè)置幀的為此設(shè)置的字段和/或位將空幀定義為這樣的幀??諑且灿糜谠谕ㄐ叛b置50的空轉(zhuǎn)中同步的用戶,以便能夠?qū)⒅袛嗾埱蟆⑺^的軟中斷從從機54、56、58、60傳送給主機52。從機54、56、58、60可以通過這樣的中斷請求例如將新數(shù)據(jù)包用信號通知主機52,主機52可以利用讀取請求提取該數(shù)據(jù)包。每個從機54、56、58、60在可構(gòu)造為數(shù)據(jù)巾貞或空巾貞的巾貞中固定地被分配至少一個中斷位,所述中斷位可以由所述從機修改。中斷請求的處理的按優(yōu)先級排列現(xiàn)在可以由主機52、例如微控制器執(zhí)行。
[0046]在所使用的協(xié)議中規(guī)定,從機54、56、58、60的中斷請求(軟中斷)在交叉尋址時通過主機52正確應(yīng)答,即還在從機54、56、58、60的中斷請求被處理和/或復(fù)位之前,主機52對從機54、56、58、60作出響應(yīng)。例如,在由主機54成功處理中斷請求之后可以向從機54、56、58、60發(fā)射(absetzen)用于復(fù)位(Reset)的指令,然而該指令由于通信裝置50的等待時間在如下時間點才能在從機54、56、58、60中被實施,在該時間點之后已經(jīng)存在新中斷請求。因此可能的是,在接收最后的空幀之后直至實施針對中斷請求的復(fù)位指令的時間間隔中繼續(xù)出現(xiàn)的中斷請求在從機54、56、58、60中被無意地消除。
[0047]為了防止這一點,在所描述的通信裝置的擴展方案中,設(shè)置有關(guān)于中斷請求的信息的單向傳輸。在該擴展方案中,每個從機54、56、58、60具有中斷寄存器62并因此具有用于中斷請求的寄存器。從機54、56、58、60中的中斷寄存器62的值隨著中斷請求的出現(xiàn)和/或觸發(fā)被反轉(zhuǎn)。中斷寄存器60的當前狀態(tài)由每個用戶插入到空幀中并且傳輸給主機52。主機52已經(jīng)包含和/或包括來自以前的循環(huán)的中斷寄存器64的狀態(tài)信息的映射并且現(xiàn)在可以針對中斷請求通過將中斷位的當前狀態(tài)與以前的狀態(tài)比較來判定,在執(zhí)行軟中斷服務(wù)例程并且因此執(zhí)行用于提供中斷請求的程序時構(gòu)造為從機54、56、58、60的至少哪一個用戶應(yīng)被處理,其中至少一個從機54、56、58、60可能根據(jù)被分配給其的優(yōu)先級來處理。
[0048]圖5針對根據(jù)本發(fā)明的方法的另一實施方式示出具有在主機側(cè)的第一時間軸82和在從機側(cè)的第二時間軸84的圖,其中沿著這兩個時間軸82、84登記事件,這些事件在用于可靠地傳輸中斷請求和因此對請求中斷的請求的流程控制期間發(fā)生。
[0049]在此,在第一時間點86由主機向至少一個從機發(fā)送空幀,并且只要在所述至少一個從機中存在新數(shù)據(jù),就由所述從機在第二時間點88設(shè)置中斷位。若由所述至少一個從機向該主機發(fā)送中斷,則該中斷在第三時間點90被接收并且由該主機執(zhí)行該中斷的處理。此夕卜,由該主機向所述至少一個從機發(fā)射第一讀取指令和/或?qū)懭胫噶睿⑶以诘谒臅r間點92由所述至少一個從機接收,其中此外由所述至少一個從機讀出例如關(guān)于時間戳的寄存器內(nèi)容。
[0050]在所述至少一個從機隨后對主機應(yīng)答時,現(xiàn)在規(guī)定,出現(xiàn)通信的干擾94。由于該干擾94,在數(shù)據(jù)流中出現(xiàn)傳輸錯誤。然而,該傳輸錯誤由主機在第五時間點96通過分析循環(huán)冗余校驗和(CRC)被證實。基于此,重復(fù)讀取指令,于是由主機向所述至少一個從機發(fā)送第二讀取指令和/或?qū)懭胫噶畈⑶以诘诹鶗r間點98由所述至少一個從機接收。此外,通過所示至少一個從機重復(fù)以前的(第一)讀取指令和/或?qū)懭胫噶?。之后,由所述至少一個從機向主機傳送數(shù)據(jù)并且由主機在第七時間點100接收。在接收數(shù)據(jù)之后,將該數(shù)據(jù)轉(zhuǎn)移到主機的存儲器、例如RAM中。之后,可以由主機向所述至少一個從機重新發(fā)送空幀,該空幀由所述至少一個從機在第八時間點102接收。
[0051]圖6以示意圖示出在根據(jù)本發(fā)明的方法的一種實施方式的時間過程中在根據(jù)本發(fā)明的通信裝置的用戶之間的數(shù)據(jù)流中的在此構(gòu)造為數(shù)據(jù)幀104的幀的實例。在此,在該數(shù)據(jù)幀104之前設(shè)置有幀間符號106。此外,數(shù)據(jù)幀104包括:標識字段108,其在此具有觸發(fā)位110或切換位以及具有標識位112 ;以及地址字段114,數(shù)據(jù)字段116和用于循環(huán)冗余校驗的CRC字段118。
[0052]通常,每個幀與該幀是構(gòu)造為數(shù)據(jù)幀104還是構(gòu)造為空幀無關(guān)地具有觸發(fā)位并且因此具有針對所有用戶(通常所有從機)的切換位。通過切換位的值用信號通知幀的傳輸是否被正確執(zhí)行或在此在數(shù)據(jù)幀或空幀的以前的循環(huán)中是否出現(xiàn)了干擾并且因此出現(xiàn)了錯誤。數(shù)據(jù)字段116此外具有中斷位,其中每個從機明確地被分配一中斷位。
[0053]規(guī)定,在此所示的數(shù)據(jù)幀104的標識位112在所有時間點都具有值0,這將該幀識別為數(shù)據(jù)幀104。若標識位替代地將具有值1,則該幀將為空幀。在第一時間點120,在數(shù)據(jù)字段116中進行第k-Ι個信息的第一傳輸,其中此外規(guī)定,觸發(fā)位110具有值I。在第二時間點122,觸發(fā)位110被切換到值O并且在數(shù)據(jù)字段116中進行第k個信息的第一傳輸。然而,在此在第二時間點122之后在第一傳輸期間發(fā)生傳輸錯誤124。由此,在隨后的第三時間點得出,觸發(fā)位110不被主機反轉(zhuǎn),使得該觸發(fā)位在本實例中保持值O。由此,此外得出,從機重復(fù)以前的、在此第k個信息,使得第k個信息被第二次傳輸。然而在此可考慮的是,可以限制重復(fù)嘗試的次數(shù)。在第四時間點128,觸發(fā)位110又被反轉(zhuǎn)為I并且在數(shù)據(jù)字段116中首次傳輸?shù)趉+Ι個信息。
[0054]在通信裝置的一種設(shè)計中(利用該設(shè)計尤其還考慮由通信裝置的用戶以何種速度執(zhí)行和/或?qū)崿F(xiàn)不同的功能和因此例如程序和/或指令),此外規(guī)定,中斷請求在從機中比通過空幀提取該中斷請求更緩慢地出現(xiàn)。此外,通過兩次觸發(fā)、即切換或來回轉(zhuǎn)換中斷寄存器又建立輸出狀態(tài),由此中斷寄存器通過在主機中比較狀態(tài)信息不能被識別。在不注意該規(guī)則時,中斷請求可能丟失,然而確保了,決不出現(xiàn)過多的中斷請求,這在擴展方案中可以通過如下方式來實現(xiàn):在由第一用戶給第二用戶的兩個中斷請求之間設(shè)置有具有要確定的最小長度的時間區(qū)間,該長度例如可以取決于通信裝置的用戶的數(shù)目和/或幀的長度。
[0055]除了傳輸中斷請求之外,在通信裝置的連續(xù)運行中,空幀被用于配置從機。如已提及的那樣,在安全關(guān)鍵應(yīng)用中,對例如構(gòu)造為數(shù)據(jù)幀的幀執(zhí)行具有和/或經(jīng)由循環(huán)冗余校驗(CRC, cyclic redundancy check)的編碼。為了防止由于傳輸錯誤引起的對用戶有錯誤的尋址,地址報頭和因此針對幀的地址的數(shù)據(jù)頭同樣執(zhí)行CRC計算,其中針對地址報頭計算校驗和,其中由用戶使用其地址。
[0056]在擴展方案中,每個用戶、通常每個從機通過空幀被分配其地址。但這導(dǎo)致,在環(huán)形通信裝置中的每個用戶具有關(guān)于其絕對地址的知識并且可以將該知識用于CRC計算。為此,主機發(fā)送具有地址字段的空幀,該地址字段被分配地址值0x00。每個從機從該地址值減去值0x01并且拒絕所接收的地址。因此,從機隨著空幀的每次接收獲得關(guān)于其在環(huán)中的位置的信息。在此,進行接收的從機的位置典型地與地址字段中的相應(yīng)的地址值有關(guān),該地址值提供關(guān)于已經(jīng)執(zhí)行了地址值的多少次減法的情況,其中減法的次數(shù)對應(yīng)于從機的數(shù)目,該從機在通過信裝置中被布置在進行接收的從機前面,即被布置在主機之后且進行接收的從機之前。
[0057]在另一種應(yīng)用中,數(shù)據(jù)包的幀的標識位通過主機來配置,使得標識位中的一個由從機解釋為所謂的切換位(觸發(fā)位)。在一種示例性配置中,切換位通過該幀的第二標識位FDl來描述。借助該幀的被定義為切換位的第二標識位FD1,在有傳輸錯誤的情況下,主機可以重新請求數(shù)據(jù)包。在此,通常規(guī)定,根據(jù)對循環(huán)冗余校驗的校驗和的分析執(zhí)行對傳輸錯誤的檢測。有錯誤地傳輸?shù)臄?shù)據(jù)包和/或相應(yīng)地有錯誤地傳輸?shù)男畔⒌姆祷?重傳)在此在主機中自給自足地啟動,即不需要與中央計算單元(中央處理單元、CPU)執(zhí)行交互。在通過主機重新發(fā)送前面已經(jīng)發(fā)送的以前的數(shù)據(jù)包之后,從機識別是否涉及以前的請求的重復(fù)或是否已經(jīng)涉及具有類似內(nèi)容的新信息。為此,切換位FDl相應(yīng)地被主機修改。只要到達的信息的切換位相對于以前的循環(huán)沒有被改變,就規(guī)定,從機再次傳輸以前的數(shù)據(jù)包。在相反的情況下,若切換位FDl通過切換被修改,則從機處理當前的數(shù)據(jù)包并且與該當前的數(shù)據(jù)包一起同時獲得對以前的數(shù)據(jù)包成功傳輸給主機的確認(acknowledge)。
[0058]在用于在具有主機52和至少一個從機54、56、58、60作為用戶的環(huán)形通信裝置50的用戶之間傳輸具有數(shù)據(jù)的幀的方法中,每個用戶具有至少一個中斷寄存器62、64、66。在此,至少一個中斷寄存器62、64、66的字段被分配給中斷請求并且包括中斷位的值。在此,由從機54、56、58、60向主機52以通常構(gòu)造為空幀42的幀傳送中斷請求,該中斷請求包括中斷位。在該方法的擴展方案中可以規(guī)定,在空幀42中每個從機54、56、58、60明確地被分配這樣的中斷位。也可能的是,構(gòu)造為數(shù)據(jù)幀28、116的幀針對從機54、56、58、60中的每個具有中斷位??諑?2但是還有每個數(shù)據(jù)幀28、116和因此典型地任何幀此外可以具有用于所有從機54、56、58、60的切換位,該切換位說明所傳輸?shù)膸臓顟B(tài)并且因此也說明在空幀42中所傳送的中斷請求的狀態(tài)。通常,通過切換位的值可以用信號通知,以前的幀是否無錯誤地被傳輸了或在傳輸中是否例如由于干擾而出現(xiàn)了錯誤。
[0059]通常,每個從機54、56、58、60具有中斷寄存器62,其中在出現(xiàn)傳輸請求時中斷寄存器62的中斷位的值被從機54、56、58、60反轉(zhuǎn)。在此,中斷寄存器62的字段的當前值可以由從機54、56、58、60插入到通常構(gòu)造為空幀42或必要時構(gòu)造為數(shù)據(jù)幀28、104的幀中并且被傳輸給主機52。在此,第X個從機54、56、58、60將其中斷位的值傳輸?shù)皆搸牡趚個字段中,該第X個字段明確地被分配給第X個從機54、56、58、60。一旦從機52接收具有用于中斷位的值的更新過的字段的幀,這些值可以被傳輸?shù)街鳈C52的第一中斷寄存器62中。
[0060]此外可能的是,主機52具有兩個中斷寄存器64、66,其中第一中斷寄存器64的第X個字段包括中斷位,用于說明以前循環(huán)的第X個從機54、56、58、60的中斷請求的存在或不存在,并且其中第二中斷寄存器66的第X個字段包括中斷位,用于說明當前循環(huán)的第X個從機54、56、58、60的中斷請求的存在或不存在。中斷請求的存在可以通過分析或比較主機52的這兩個中斷寄存器64、66來確定,其中該主機按優(yōu)先級排列中斷請求的處理。
[0061]此夕卜,由至少一個從機54、56、58、60利用空巾貞42用信號通知主機52:由從機54、56、58、60利用構(gòu)造為數(shù)據(jù)幀28的幀可提取數(shù)據(jù)包,其中該空幀包括中斷請求。通過空幀的第X個字段中的中斷位的值用信號通知主機:第X個從機54、56、58、60是否已觸發(fā)這樣的中斷請求。中斷請求的存在可以根據(jù)通過第X個從機54、56、58、60的中斷位的值I或O的定義來顯示。
[0062]在通常構(gòu)造為空幀42和/或構(gòu)造為數(shù)據(jù)幀28、104的幀中的切換位在傳輸無錯誤時由主機52反轉(zhuǎn),其中該幀中的切換位的值在以前的傳輸受干擾時被保持,并且其中在切換位不變的情況下由從機54、56、58、60再次傳輸以前的構(gòu)造為數(shù)據(jù)幀28、104和/或構(gòu)造為空幀42的幀,該幀包括要傳輸?shù)臄?shù)據(jù)或要傳輸?shù)男畔ⅰT诖?,每個幀通常僅證實用于所有用戶的這樣的切換位,該切換位登記相應(yīng)幀的傳輸?shù)臓顟B(tài)。
[0063]通常,在從機54、56、58、60中中斷請求比在空幀42中提取中斷請求更緩慢地出現(xiàn)。中斷請求可以單向地被傳送。
【權(quán)利要求】
1.一種用于在環(huán)形通信裝置(50)的用戶之間傳輸幀的方法,所述幀具有數(shù)據(jù),所述通信裝置具有主機(52)和至少一個從機(54、56、58、60)作為用戶,其中每個用戶具有至少一個中斷寄存器(62、64、66),其中所述至少一個中斷寄存器(62、64、66)的字段被分配給中斷請求并且包括中斷位的值,其中由從機(54、56、58、60)在構(gòu)造為空幀(42)的幀中向所述主機(52)傳送中斷請求,該中斷請求包括所述中斷位,其中所述空幀此外具有用于所有從機(54、56、58、60 )的切換位,該切換位說明中斷請求的狀態(tài)。
2.根據(jù)上述權(quán)利要求之一所述的方法, 其中,每個從機(54、56、58、60)具有中斷寄存器(62),其中在出現(xiàn)中斷請求時所述中斷寄存器(62)的中斷位的值被從機(54、56、58、60)反轉(zhuǎn)。
3.根據(jù)權(quán)利要求2所述的方法, 其中,所述中斷寄存器(62)的字段的當前值由從機(54、56、58、60)插入到空幀(42)中并且傳輸給所述主機(52 )。
4.根據(jù)上述權(quán)利要求之一所述的方法, 其中,所述主機(52)具有兩個中斷寄存器(64、66),其中第一中斷寄存器(64)的第X個字段包括中斷位,用于說明以前循環(huán)的第X個從機(54、56、58、60)的中斷請求的存在,并且其中第二中斷寄存器(66)的第X個字段包括中斷位,用于說明當前循環(huán)的第X個從機(54、。56、58、60)的中斷請求的存在。
5.根據(jù)權(quán)利要求4所述的方法, 其中,中斷請求的存在通過分析所述主機(52)的兩個中斷寄存器(64、66)來確定,其中由該主機(52 )按優(yōu)先級排列中斷請求的處理。
6.根據(jù)上述權(quán)利要求之一所述的方法, 其中,利用包括中斷請求的空幀(42)由所述至少一個從機(54、56、58、60)通過設(shè)定在所述空巾貞中被分配給所述至少一個從機(54、56、58、60)的中斷位用信號通知所述主機(52):由該從機(54、56、58、60)利用構(gòu)造為數(shù)據(jù)幀(28)的幀能夠提取數(shù)據(jù)包。
7.根據(jù)上述權(quán)利要求之一所述的方法, 其中,在傳輸無錯誤時,在空幀(42)中或在數(shù)據(jù)幀(28、116)中的切換位由所述主機(52)反轉(zhuǎn),并且其中在傳輸受干擾時,在空幀(42)中或在數(shù)據(jù)幀(28、116)中的切換位的值被保持,其中在切換位不變的情況下由從機(54、56、58、60 )再次傳輸以前的空幀(42 )或數(shù)據(jù)幀(28、116 ),所述空幀或數(shù)據(jù)幀包括信息。
8.根據(jù)上述權(quán)利要求之一所述的方法, 其中,中斷請求單向地被傳送并且其中在由主機(52 )處理之后從機(54、56、58、60 )中的切換位不被復(fù)位。
9.一種環(huán)形通信裝置(50),所述環(huán)形通信裝置具有主機(52)和至少一個從機(54、56、。58、60)作為用戶,其中所述用戶相互之間傳輸幀,所述幀具有數(shù)據(jù),其中每個用戶具有至少一個中斷寄存器(62、64、66),其中所述至少一個中斷寄存器(62、64、66)的字段被分配給中斷請求并且包括中斷位的值,其中從機(54、56、58、60)在構(gòu)造為空幀(42)的幀中向主機(52)傳送中斷請求,該中斷請求包括所述中斷位,其中所述空幀此外具有用于所有從機(54、56、58、60 )的切換位,該切換位說明中斷請求的狀態(tài)。
【文檔編號】H04L12/423GK103814550SQ201280047034
【公開日】2014年5月21日 申請日期:2012年9月19日 優(yōu)先權(quán)日:2011年9月27日
【發(fā)明者】A-J.羅哈切克, D.托斯, S.托多羅夫, T.胡克 申請人:羅伯特·博世有限公司