<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

具有靈活數據速率的控制器局域網的制作方法

文檔序號:7989813閱讀:201來源:國知局
具有靈活數據速率的控制器局域網的制作方法
【專利摘要】描述了一種用于通過借助于總線系統連接的傳送節點與至少一個接收節點之間的數據幀的交換進行的串行通信的方法,其中,傳送機和接收機的作用由在CAN標準ISO11898-1中所定義的仲裁程序分配給用于每個數據幀的節點,其中,交換數據幀具有根據CAN標準ISO11898-1的邏輯結構,其中,所述數據幀由位序列組成,其中,所述數據幀的邏輯結構包括幀起始位、仲裁字段、控制字段、數據字段、CRC字段、確認字段和幀結尾字段,其中,所述數據字段可以具有零位的長度,其中,每個其他字段包含至少兩個位,其中,每個位具有位時間,其中,每個位時間被劃分成時間段(SYNC_SEG、PROP_SEG、PHASE_SEG1、PHASE_SEG2),其中,所述位速率由所述位時間的倒數值所定義,其中,對于所述交換數據幀的至少一個第一可預定部分,該部分中的位速率位于1Mbit/s的最大值以下,其中,對于所述交換數據幀的至少一個第二可預定部分,該部分中的位速率位于所述至少一個第一可預定部分中的位速率以上,其特征在于,對于所述交換數據幀的至少兩個不同部分,所述時間段(SYNC_SEG、PROP_SEG、PHASE_SEG1、PHASE_SEG2)的值的至少兩個不同集合是可預定的。
【專利說明】具有靈活數據速率的控制器局域網
[0001]串行通信到越來越多的應用的接受和引入已導致需要增加用于串行通信的帶寬的要求。
[0002]兩個因素限制了 CAN網絡中的有效數據速率,首先是CAN總線仲裁方法的功能所需的最小位時間,以及其次是CAN消息中的數據位與幀位的數目之間的關系。
[0003]本白皮書描述了新的協議,亦即基于如在ISO 11898-1中規定的CAN協議,并且該CAN協議被稱為“具有靈活數據速率的CAN”或CAN FD。其仍使用CAN總線仲裁方法,其通過在仲裁過程結束之后切換至較短位時間來增加位速率,并且在接收機發送其確認位之前在CRC界定符處返回至較長位時間。通過允許較長數據字段來增加有效數據速率。CAN使用四個位作為數據長度代碼,導致16個不同的代碼,但是僅使用前九個值,代表[0-8]字節的數據字段長度的代碼[0-8]。在CAN中,代碼[9-15]被定義成表示八個數據字節。在CANFD中,使用代碼來表示較長數據字段。
[0004]注意:CAN系統能夠逐漸地遷移至CAN FD系統。網絡中的所有節點必須具有用于CAN FD通信的CAN FD協議控制器,但是所有CAN FD協議控制器也能夠參加標準CAN通信。如果CAN FD通信局限于具有達到八個數據字節的長度的數據字段,則除控制器的初始配置之外,改變應用程序不是必要的。
[0005]介紹
控制器局域網(CAN)是以非常高的安全水平有效地支持分布式實時控制的串行通信協議。其應用領域從高速網絡到低成本復用布線變動。在汽車電子裝置中,使用具有達到IMbit/s的位速率的CAN來連接引擎控制單元、傳感器、防滑系統等。同時,構建到例如燈集群、電動車窗等的車身電子裝置中以替換另外要求的布線線束是成本有效的。
[0006]CAN FD(具有靈活數據速率的CAN)補充了要求較高數據速率的應用中的CAN。CANFD協議控制器還能夠參加標準CAN通信,使得成為可能的是,僅在特定操作模式下使用CANFD,例如線尾處軟件下載或維護。CAN FD要求兩組位定時配置寄存器,即用于仲裁相位的一個位時間和用于數據字段的一個位時間。用于仲裁相位的位時間具有與在標準CAN網絡中相同的限制,用于數據字段的位時間是相對于所選收發機的性能和CAN FD網絡的特性而選擇的。
[0007]標準CAN收發機能夠用于CAN FD,專用收發機是可選的。CAN FD協議控制器可以提供附加接口信號以將專用CAN FD收發機(在具有較高位速率的相位中)切換到替換操作模式中。
[0008]專用CAN FD收發機可以在具有較高位速率的相位中使用替換編碼系統,并不局限于CAN的NRZ編碼。
[0009]基本概念
CAN FD幀由與CAN幀相同的元素組成,差別在于在CAN FD幀中,數據字段和CRC字段可以較長。如在CAN中,消息確認要求來自至少一個接收機的顯性確認位。具有錯誤幀、錯誤計數器、錯誤被動水平和總線關閉水平的CAN FD故障禁閉(fault confinement)與在CAN中相同,其基于相同的五個錯誤類型:位錯誤、填充錯誤、CRC錯誤、形式錯誤以及確認錯誤。
[0010]在圖1中描繪了 CAN FD幀的示例。
[0011]CAN FD幀具有與CAN幀相同的結構,CAN幀與CAN FD幀之間的差別是在直接在控制字段中的數據長度代碼之前的預留位處。在CAN FD幀中,此位是隱性地傳送的。
[0012]將直至辨別協議的預留位為止的CAN FD幀的第一部分用與CAN幀相同的位速率進行傳送。該位速率在預留位之后被切換,直至到達CRC界定符或直至CAN FD控制器看到導致錯誤幀的開始的錯誤條件為止。將CAN FD錯誤幀以及ACK字段、幀結尾以及過載幀用與CAN錯誤幀相同的位速率進行傳送。
[0013]幀格式:
圖2示出了消息內切換位速率的位置。
[0014]CAN FD支持CAN協議的標識符長度,即11位長的“標準格式”和29位長的“擴展格式”兩者。在兩種情況下,位速率在預留位r0處(在DLC之前)被切換至較短位時間。
[0015]DATA FIELD (數據字段)中的字節的數目由DATA LENGTH CODE (數據長度代碼)所指示。此DATA LENGTH CODE (數據長度代碼)是4位寬的且在CONTROL FIELD (控制字段)內被傳送。
[0016]DATA LENGTH CODE (數據長度代碼)的編碼在CAN FD中是不同的。前九個代碼是相同的,但是在CAN中指定八個字節的DATA FIELD (數據字段)的以下代碼在CAN FD中指定較長的DATA FIELDS (數據字段)。所有遠程幀應使用零的DATA LENGTH CODE (數據長度代碼),無論對應的數據幀的DATA LENGTH CODE (數據長度代碼)如何。
[0017]注意:在本文檔中,DATA FIELD (數據字段)的最大長度被指定為64字節。此值和DATA LENGTH CODE (數據長度代碼)的> 8的其他值在CAN FD的最終規范中可以改變。
[0018]在圖3中描述了由DATA LENGTH CODE (數據長度代碼)進行的數據字節的數目的編碼。
[0019]CRC FIELD (CRC 字段)包含 CRC SEQUENCE (CRC 序列),后面是 CRC DELIMITER(CRC界定符),如圖4中所示。
[0020]CRC SEQUENCE (CRC序列):幀校驗序列是從循環冗余碼(BCH代碼)得出的。
[0021]為了執行CRC計算,要被除的多項式被定義為多項式,其系數由相關位流給定。CANFD對不同的幀長度使用不同的CRC多項式。針對具有達到八個數據字節的幀,使用與在CAN中相同的多項式。
[0022]針對具有達到八個數據字節的幀,相關位流是由START OF FRAME (幀起始)、ARBITRATION FIELD (仲裁字段)、CONTROL FIELD (控制字段)、DATA FIELD (數據字段,如果存在的話)以及對于15個最低系數而言由0組成的去填充位流。此多項式被除以(系數是計算的模2)發生器多項式,其在漢明間距(Hamming Distance) HD = 6的情況下最適合于具有小于127位的位計數的幀。
[0023]X15 + X14 + XlO + X8 + X7 + X4 + X3 + I。
[0024]針對在DATA FIELD中具有超過八個字節的幀,使用不同(且較長)的CRC多項式,適合于該幀的長度。CRC字段被相應地延長。在較長幀中,還應由CRC來保護在CRCSEQUENCE (CRC序列)之前發生的填充位。
[0025]每個CRC SEQUENCE (CRC序列)是在單獨的移位寄存器塊中計算的。在幀起始時,在所有節點中,應同時地計算所有CRC SEQUENCE,直至CRC SEQUENCES (CRC序列)的仲裁那個被預留位且被DLC所選擇之后為止。只有所選擇的CRC SEQUENCE (CRC序列)能夠引起CRC錯誤。
[0026]注意:實際CRC多項式將是在DATA LENGTH CODE (數據長度代碼)的編碼被最終確定之后被定義的。[0027]CRC DELIMITER (CRC界定符):CRC SEQUENCE (CRC序列)后面是由一個或兩個“隱性”位組成的CRC DELIMITER (CRC界定符)。傳送器應僅發送一個“隱性”位作為CRC界定符,但是所有節點應在開始確認時隙的從隱性至顯性的邊沿之前接受兩個“隱性”位。
[0028]注意:當檢測到CRC界定符時,CAN FD協議控制器切換回至具有較長位時間的位速率。
[0029]CAN網絡中的節點之間的相移由收發機中的延遲時間和CAN總線線路上的傳播時間所定義。相移在CAN中和在CAN FD中是相同的,但是其在具有更短位時間的相位中成比例地更大。網絡中的所有接收機可以具有到傳送機的不同相移,因為其在不同的時間經歷傳送邊沿。為了補償這些相移,當位速率被切換回至較長位時間時,在開始確認時隙的從隱性到顯性的邊沿之前和之后允許一個附加位時間容差。
[0030]ACK FIELD (ACK字段)為兩位或三位長,并且包含ACK SLOT (ACK時隙)和ACKDELIMITER (ACK界定符),如圖5中所示。在ACK FIELD (ACK字段)中,傳送站發送兩個‘隱性’位。已正確地接收到有效消息的RECEIVER (接收機)通過在ACK SLOT (ACK時隙)(其發送‘ACK’)期間發送“顯性”位來將這一點報告給TRANSMITTER (傳送機)。
[0031]ACK SLOT (ACK時隙):已接收到匹配的CRC SEQUENCE (CRC序列)的所有站通過用“顯性”位對TRANSMITTER (傳送機)的“隱性”位加上標來在ACK SLOT內報告這一點。為了補償接收機之間的相移,所有節點接受重疊ACK位的兩位長的“顯性”相位作為有效ACK。
[0032]ACK DELIMITER (ACK 界定符):ACK DELIMITER (ACK 界定符)是 ACK FIELD (ACK字段)的第二或第三位,并且必須是“隱性”位。因此,ACK SLOT被兩個“隱性”位(CRCDELIMITER (CRC 界定符)、ACK DELIMITER (ACK 界定符))圍繞。
[0033]END OF FRAME (幀結尾):每個 DATA FRAME (數據幀)和 REMOTE FRAME (遠程幀)由七個“隱性”位所組成的標志序列來界定。
[0034]CAN FD中的CAN協議特征:
CAN協議規范(版本2.0,Robert Bosch有限公司,1991年)的以下部分在CAN FD協議中未改變地適用:
?TRANSMITTER/RECEIVER (傳送機/接收機)的定義 ?消息過濾 ?消息確認 ?編碼 ?錯誤處理 ?錯誤檢測 ?錯誤信令 ?故障禁閉 位定時要求:CAN FD協議定義了兩個位速率,具有較長位時間的第一位速率和具有較短位時間的第二位速率。用于第一位速率的定義與用于CAN協議規范中的NOMINAL BIT RATE(標稱位速率)和NOMINAL BIT TIME (標稱位時間)的定義相同。用于第二位速率的定義要求單獨配置寄存器組。兩個位時間都由單獨的非重疊時間段組成,這些段
?SYNCHRONIZATION SEGMENT (同步段)(SYNC_SEG)
?PROPAGATION TIME SEGMENT (傳播時間段)(PR0P_SEG)
?PHASE BUFFER SEGMENT I (相位緩沖段 I) (PHASE_SEG1)
?PHASE BUFFER SEGMENT2 (相位緩沖段 2) (PHASE_SEG2)
形成如圖6中所示的位時間。
[0035]用于CAN FD協議的兩個位速率的時間段是由兩組配置寄存器所定義的。
[0036]SYNC SEG:位時間的此部分被用來使總線上的各種節點同步。邊沿被預期落在此段內。
[0037]PROP SEG:位時間的此部分被用來補償網絡內的物理延遲時間。其為信號在總線線路上的傳播時間、輸入比較器延遲以及輸出驅動器延遲的和的兩倍。
[0038]PHASE SEGUPHASE SEG2:這些相位緩沖段被用來補償邊沿相位誤差。這些段能夠通過再同步被延長或縮短。
[0039]SAMPLE POINT (采樣點):SAMPLE POINT (采樣點)是總線電平被讀取并解釋為相應位的值的時間點。其位置在PHASE_SEG1的結尾處。
[0040]INFORMATION PROCESSING TIME (信息處理時間):INFORMATION PROCESSING TIME(信息處理時間)是以被預留用于計算后續位電平的SAMPLE POINT (采樣點)開始的時間段。
[0041]時間段的長度是以TME QUANTUM (時間量)的整數倍來定義的,其中該TMEQUANTUM是從振蕩器周期得出的固定時間單元。存在可編程預定標器(prescaler),具有至少在從I至32范圍變動的整數值。以MINMUM TIME QUANTUM (最小時間量)開始,TMEQUANTUM (時間量)可以具有以下長度
TIME QUANTUM(n) = m(n) * MINIMUM TIME QUANTUM
m是預定標器的值。在CAN FD協議中定義了用于預定標器的兩個值,m(l)和m(2),每個位速率一個,導致TIME QUANTUM (時間量)的兩個不同長度。
[0042]用于第一位速率的時間段的長度:
?SYNC_SEG(1)為 I 個 TME QUANTUM ⑴長。
[0043]? PR0P_SEG(1)可編程為 1、2、...8 個 TME QUANTUM⑴長。
[0044]? PHASE_SEG1 (I)可編程為 1、2、...8 個 TME QUANTUM⑴長。
[0045]? PHASE_SEG2(1)是PHASE_SEG1(1)和 INFORMATION PROCESSING TME 的最大值。
[0046]? INFORMATION PROCESSING TIME (信息處理時間)小于或等于 2 個 TMEQUANTA ⑴長。
[0047]用于第二位速率的時間段的長度
?SYNC_SEG(2)為 I 個 TME QUANTUM(2)長。
[0048]? PR0P_SEG(2)可編程為 1、2、...8 個 TME QUANTUM(2)長。
[0049]? PHASE_SEG1 (2)可編程為 1、2、...8 個 TME QUANTUM(2)長。
[0050]? PHASE_SEG2(2)是PHASE_SEG1(2)和 INFORMATION PROCESSING TME 的最大值。[0051]? INFORMATION PROCESSING TIME (信息處理時間)小于或等于 2 個 TMEQUANTA ⑵長。
[0052]位時間中的TME QUANTA (時間量)的總數必須是至少從8至25可編程的。
[0053]SAMPLE POINT (采樣點)的位置在兩個位定時配置中可以不同,在用于第二位速率的配置中可以減小PR0P_SEG的長度。
[0054]CAN FD 實現:
CAN FD協議實現應提供與CAN協議實現相同的控制器-主機接口以提供用于現有CAN應用的容易遷移路徑。最小要求差別是用于CAN FD操作的新配置寄存器。
[0055]CAD FD協議允許具有超過八個數據字節的幀。并不要求所有CAN FD實現都支持較長幀,CAN FD實現可以局限于DATA FILED (數據字段)長度的子集。僅支持幀中達到例如八個數據字節的CAN FD實現不應將接收到的較長幀處理為錯誤,無故障較長幀應被確認,并且應參加接受過濾。超過CAN FD的數據處理容量的接收數據字節應被丟棄。被請求傳送較長幀的此類受限CAN FD實現應利用恒定字節圖案在幀中填充超過數據處理容量的數據字節。應選擇此圖案,使得其并不引起例如0x33的STUFF BITS (填充位)的插入。
[0056]以下可選接口寄存器提供正在進行中的通信的擴展分析。
[0057]?雙組狀態寄存器,用以在第一位速率或在第二位速率下操作的同時發生的消息和錯誤之間進行區分。
[0058]?專用錯誤計數器,用以比較兩個操作模式下的錯誤率。
[0059]?每消息狀態標志,指 示消息是使用第一位速率還是第二位速率所接收到的。
[0060]?每消息配置標志,控制是將要使用第一位速率還是第二位速率來傳送消息。
[0061]?通信管理狀態機,其根據類似于例如以下的標準來啟用或禁用第二位速率的使用:兩個位速率中的相對誤差率、特定位速率中的消息接收、從外部總線主控所接收的控制消息、由本地主機所寫入的命 令。
【權利要求】
1.一種用于通過借助于總線系統連接的傳送節點與至少一個接收節點之間的數據幀的交換進行的串行通信的方法, 其中,傳送機和接收機的作用由在CAN標準ISO 11898-1中所定義的仲裁程序分配給用于每個數據幀的節點,其中,交換數據幀具有根據CAN標準ISO 11898-1的邏輯結構, 其中,所述數據幀由位序列組成, 其中,所述數據幀的邏輯結構包括幀起始位、仲裁字段、控制字段、數據字段、CRC字段、確認字段和幀結尾字段, 其中,所述數據字段可以具有零位的長度, 其中,每個其他字段包含至少兩個位, 其中,每個位具有位時間, 其中,每個位時間被劃分成時間段(SYNC_SEG、PR0P_SEG、PHASE_SEG1、PHASE_SEG2), 其中,所述位速率由所述位時間的倒數值所定義, 其中,對于所述交換數據幀的至少一個第一可預定部分,該部分中的位速率位于IMbit/s的最大值以下, 其中,對于所述交換數據幀的至少一個第二可預定部分,該部分中的位速率位于所述至少一個第一可預定部分中的位速率以上, 其特征在于,對于所述交換數據幀的至少兩個不同部分,所述時間段(SYNC_SEG、PR0P_SEG、PHASE_SEG1、PHASE_SEG2 )的值的至少兩個不同集合是可預定的。
2.權利要求1的方法,` 其特征在于,在所述時間段(SYNC_SEG、PR0P_SEG、PHASE_SEG1、PHASE_SEG2)的值的所述至少兩個不同集合中的至少一個集合中 PR0P_SEG的值可以偏離在CAN標準ISO 11898-1中所規定的值范圍,并且特別地可以具有零的值。
3.根據權利要求1或2所述的方法, 其特征在于,具有至少兩個不同位時間的所述交換數據幀是通過包含在所述控制字段中的預留位(r0)與具有均勻位時間的數據幀可區分的。
4.根據權利要求1至3中的一項所述的方法, 其特征在于,具有交換數據幀的較短位時間的所述至少一個第二可預定部分以所述預留位(r0)開始并以所述CRC字段的結尾處的隱性位(CRC界定符)或以導致錯誤幀的開始的錯誤條件的檢測結束。
5.根據權利要求1至4中的一項所述的方法, 其特征在于,具有至少兩個不同位時間的交換數據幀可以包含超過八個字節的大小的數據字段, 其中,由包含在所述控制字段中的數據長度代碼來指定所述數據字段的大小, 其中,使用與在CAN標準ISO 11898-1中所定義的編碼相比用于所述數據長度代碼的不同編碼。
6.根據權利要求5所述的方法, 其特征在于,用于所述數據長度代碼的不同編碼是這樣的,使得ObOOOO和OblOOO之間的值與如在CAN標準ISO 11898-1中的零至八個字節的數據字段相對應,并且在OblOOl和Obllll之間的值與大于八個字節的數據字段相對應。
7.根據權利要求5至6中的一項所述的方法, 其特征在于,使用與在CAN標準ISO 11898-1中所定義的多項式相比不同的CRC多項式來確定至少用于具有超過八個字節的數據字段的大小的交換數據幀的CRC字段的內容。
8.根據權利要求5至7中的一項所述的方法, 其特征在于,至少用于具有超過八個字節的數據字段的大小的交換數據幀的CRC字段的大小不同于在CAN標準ISO 11898-1中所定義的大小。
9.根據權利要求5至8中的一項所述的方法, 其特征在于,以所述幀起始位開始,同時地計算至少兩個CRC序列,直至所述CRC序列中的仲裁那個被所述預留位(r0)且被所述數據長度代碼選擇為能夠引起CRC錯誤的有效CRC序列之后為止。
10.根據權利要求1至9中的一項所述的方法, 其特征在于,傳送機在所述CRC序列之后發送一個隱性位(CRC界定符),并且所有節點在開始ACK時隙的總線狀態的改變之前接受兩個隱性位而不檢測錯誤。
11.根據權利要求1至10中的一項所述的方法, 其特征在于,已經接收到匹配 CRC序列的接收機在所述ACK時隙內發送顯性位(ACK),并且所有節點接受重疊ACK位的兩位長的顯性總線狀態而不檢測錯誤。
12.根據權利要求1至11中的一項所述的方法, 其特征在于,所述交換數據幀中的所述至少兩個不同位時間是通過使用預定標器的兩個不同值所產生的, 其中,所述預定標器被定義為時間量與最小時間量之間的比。
13.根據權利要求1至12中的一項所述的方法, 其特征在于,在所述交換數據幀的所述至少一個第二可預定部分中,在位的位時間比在所述至少一個第一可預定部分中更短的情況下,使用與在所述至少一個第一可預定部分中相比不同的位編碼方法。
14.一種用于通過借助于總線系統連接的傳送節點與至少一個接收節點之間的數據幀的交換進行的串行通信的設備, 其中,傳送機和接收機的作用由在CAN標準ISO 11898-1中所定義的仲裁程序分配給用于每個數據幀的節點,其中,交換數據幀具有根據CAN標準ISO 11898-1的邏輯結構, 其中,所述數據幀由位序列組成, 其中,所述數據幀的邏輯結構包括幀起始位、仲裁字段、控制字段、數據字段、CRC字段、確認字段和幀結尾字段, 其中,所述數據字段可以具有零位的長度, 其中,每個其他字段包含至少兩個位, 其中,每個位具有位時間, 其中,每個位時間被劃分成時間段(SYNC_SEG、PR0P_SEG、PHASE_SEG1、PHASE_SEG2), 其中,所述位速率由所述位時間的倒數值所定義, 其中,對于所述交換數據幀的至少一個第一可預定部分,該部分中的位速率位于IMbit/s的最大值以下,其中,對于所述交換數據幀的至少一個第二可預定部分,該部分中的位速率位于所述至少一個第一可預定部分中的位速率以上, 其特征在于,所述設備包含用于為所述交換數據幀的所述至少兩個不同部分對所述時間段(SYNC_SEG、PR0P_SEG、PHASE_SEG1、PHASE_SEG2)的值的至少兩個不同集合進行預定的裝置。
15.根據權利要求14的設備, 其特征在于,所述設備包含用以執行根據權利要求1至13所述的通信方法中的一個的裝置。
【文檔編號】H04L12/40GK103503382SQ201280021339
【公開日】2014年1月8日 申請日期:2012年5月2日 優先權日:2011年5月2日
【發明者】F.哈特維希 申請人:羅伯特·博世有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影