新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 如何運(yùn)用Specman Elite實(shí)現(xiàn)汽車CAN總線的全面驗(yàn)證

如何運(yùn)用Specman Elite實(shí)現(xiàn)汽車CAN總線的全面驗(yàn)證

作者: 時(shí)間:2012-11-27 來源:網(wǎng)絡(luò) 收藏
CAN是汽車產(chǎn)業(yè)中得到廣泛應(yīng)用的數(shù)據(jù)與控制通信網(wǎng)絡(luò),汽車環(huán)境中有許多應(yīng)用要求極高的可靠性和容錯能力,本文介紹如何運(yùn)用 的強(qiáng)大功能為含有控制器局域網(wǎng)絡(luò)或CAN接口的待測設(shè)計(jì)提供全面的驗(yàn)證。

當(dāng)今采用HDL原始程序代碼的先進(jìn)驗(yàn)證工具廣泛采納了系統(tǒng)工程知識,并與代替專門測試裝置的可再使用驗(yàn)證組件整合在一起,為設(shè)計(jì)師提供了豐富的支持能力。Cadence公司的 驗(yàn)證工具就是這樣一款驗(yàn)證技術(shù)工具,它能提供可配置、可再使用和可擴(kuò)展的驗(yàn)證組件,這些組件被稱為eVC。這些組件采用高級驗(yàn)證語言e編寫,能夠產(chǎn)生足夠多的測試激勵訊號,并能對設(shè)計(jì)行為與預(yù)期結(jié)果進(jìn)行檢查確認(rèn)。eVC可以極大地縮短驗(yàn)證時(shí)間和提高產(chǎn)品品質(zhì)。具有互通性的eVC套件可以透過第三方程式或取得授權(quán),可用來測試算法模塊或總線接口等常見的電路功能。這種方法的突出優(yōu)點(diǎn)是eVC的成熟性、可移植性和可再使用性,使eVC具有與被測IP模塊設(shè)計(jì)同等的價(jià)值。

CAN是一種汽車產(chǎn)業(yè)中得到廣泛使用的數(shù)據(jù)與控制通信網(wǎng)絡(luò),是一種極具強(qiáng)韌性的電氣規(guī)范和協(xié)議,專門設(shè)計(jì)用于轎車或卡車中危險(xiǎn)、常常無法預(yù)料的惡劣環(huán)境,而這種環(huán)境中有許多應(yīng)用需要極高的可靠性和容錯能力。CAN總線最初是由Robert Bosch GmbH建構(gòu)的。現(xiàn)在的汽車設(shè)計(jì)通常包含50個(gè)以上的微處理器,每個(gè)處理器都各自負(fù)責(zé)相應(yīng)的應(yīng)用,如引擎管理、牽引或?車控制、安全氣囊等乘客安全裝置、氣溫控制、燈光等。這些處理器透過多級CAN總線互連和通信,接收驅(qū)動器發(fā)出的命令,并將數(shù)據(jù)發(fā)送給儀器設(shè)備??煽啃缘脑鰪?qiáng)、成本的降低、重量和空間的節(jié)省都源自對每個(gè)組件的簡單饋電和差分CAN線對代替復(fù)雜布線機(jī)制的結(jié)果。

總線上的每個(gè)CAN組件都分配有一個(gè)軟件賦值的ID。總線在邏輯上等效于線與功能,可以被任意一個(gè)試圖發(fā)送數(shù)據(jù)的組件拉低。發(fā)送時(shí)脈是由發(fā)送組件產(chǎn)生的,因此所有接收組件必須重建時(shí)脈和數(shù)據(jù)位。組件之間傳送的數(shù)據(jù)遵循標(biāo)準(zhǔn)的CAN訊框格式,其中包括目的組件ID、控制和數(shù)據(jù)訊息負(fù)荷以及CRC。最終指定的接收器將把總線拉低以確認(rèn)收到一個(gè)完整的、CRC正確的訊框,然后釋放總線使之回到空閑狀態(tài)。每個(gè)試圖發(fā)送的組件在發(fā)送之前首先要檢查總線是否處于空閑狀態(tài)。如果出現(xiàn)多個(gè)組件試圖同時(shí)發(fā)送的情況,并且總線上數(shù)據(jù)出錯時(shí)它們必須相互偵聽,先后退一段時(shí)間然后再嘗試發(fā)送。CAN的執(zhí)行速度可達(dá)1Mbps,該總線簡單且高效,極具強(qiáng)韌性,可以滿足汽車工業(yè)的成本約束要求。

YOGITECH提供的CAN eVC兼容博世公司定義的v2.0A/B CAN標(biāo)準(zhǔn),允許用戶例化與待測設(shè)計(jì)(DUT)具有收發(fā)關(guān)系的不同CAN組件。

應(yīng)用層測試時(shí)采用的eVC可以建構(gòu)預(yù)先確定的CAN訊框數(shù)據(jù),然后根據(jù)預(yù)先確定的響應(yīng)監(jiān)視特定結(jié)果。YOGITECH eVC可以建構(gòu)任何類型的訊框序列。因此測試人員可以定義完整的循環(huán),以用于所有可能應(yīng)用相關(guān)總線環(huán)境下的CAN組件訓(xùn)練器。用戶可以瀏覽高度仿真執(zhí)行期間收集到的數(shù)據(jù),或者仿真裝置一直自由執(zhí)行直到它捕捉到錯誤狀態(tài)。CAN eVC能夠在從訊框到時(shí)間量分辨率范圍內(nèi)的不同抽象層檢查收集到的數(shù)據(jù)。 的數(shù)據(jù)瀏覽器提供了跨越各個(gè)抽象層的導(dǎo)航功能。

然而,YOGITECH的CAN eVC遠(yuǎn)不止提供功能和協(xié)議測試,它還能完全控制訊框和位時(shí)序,并仿真公共CAN總線噪音和其它干擾。在硅芯片投產(chǎn)之前,測試電路在這些額外條件下的響應(yīng)顯得特別有用,可以很快顯示設(shè)計(jì)中的任何強(qiáng)韌性欠缺。更重要的是,這種系統(tǒng)知識融合進(jìn)了eVC程序代碼中,可以供其它設(shè)計(jì)師在后序項(xiàng)目中繼續(xù)使用。

可以被YOGITECH eVC仿真的CAN總線活動和狀態(tài)有:
  • 數(shù)據(jù)和REMOTE訊框
  • 錯誤的產(chǎn)生和處理
  • 過載的隨機(jī)產(chǎn)生和處理
  • 多個(gè)CAN代理可以用不同行為實(shí)例化
  • 確認(rèn)處理
  • 總線監(jiān)視
  • DUT錯誤計(jì)數(shù)器追蹤
  • 時(shí)脈飄移和同步
  • 發(fā)送時(shí)增加抖動
  • 噪音注入(見下文)
  • 在訊框中注入錯誤
  • 不良CRC
  • 遠(yuǎn)程響應(yīng)的產(chǎn)生
  • 產(chǎn)生每個(gè)都含CAN復(fù)訊框的序列
  • 總線業(yè)務(wù)的覆蓋
  • 透過記錄和追蹤機(jī)制報(bào)告總線狀態(tài)
  • 數(shù)據(jù)一致性和協(xié)議時(shí)序的自動自檢
  • 特殊訊框的處理,如喚醒
  • 總線仲裁,也就是多個(gè)組件發(fā)送引起的沖突

總線噪音:CAN總線仿真器建構(gòu)于能夠生成噪音位的更高頻率仿真,因此數(shù)據(jù)樣本的測試在接收端進(jìn)行CAN組件應(yīng)該可以解決這些類型的錯誤,必要的話可進(jìn)行重傳直至成功。同時(shí)它們在重傳時(shí)不應(yīng)由于故障或冗余設(shè)計(jì)造成總線阻塞,而且在硅芯片投產(chǎn)前必須對這些情況加以確認(rèn)。

YOGITECH eVC設(shè)計(jì)人員可以確保他們的eVC能夠?qū)λ屯鵇UT和來自DUT的位時(shí)序提供嚴(yán)格控制,結(jié)果eVC應(yīng)該可以將各種脈沖注入進(jìn)DUT以驗(yàn)證抗噪音性能,否則很小的脈沖寬度都可能喚醒處于休眠狀態(tài)的CAN組件。雖然引擎工作時(shí)能夠提供足夠的功率,但節(jié)省電力在汽車設(shè)計(jì)中仍占非常重要的地位。當(dāng)汽車停開一周時(shí)很容易耗光電池電量,因此CAN組件設(shè)計(jì)師和測試人員應(yīng)該非常小心,確保組件功耗最小化,并且不對組件作不必要的喚醒。

用于Specman Elite的YOGITECH CAN eVC能幫助設(shè)計(jì)人員對他們的系統(tǒng)功能進(jìn)行嚴(yán)格建模,并預(yù)測和驗(yàn)證DUT的行為。最大的驗(yàn)證挑戰(zhàn)之一是對CAN控制器系統(tǒng)側(cè)的建模。大多數(shù)已有的CAN控制器都具有豐富的包括中斷標(biāo)志在內(nèi)的配置和狀態(tài)位,因此很難預(yù)測組件的行為。此時(shí)必須采用精確的參考模型才能完成組件周期的完整測試。因此eVC需要提供諸如事件和狀態(tài)標(biāo)志之類的大量建模行為,并提供全面的總線狀態(tài)報(bào)告以及DUT正確仲裁、確認(rèn)和報(bào)告錯誤的能力。

此外,使用Specman Elite擴(kuò)展性能可以使eVC很容易滿足用戶特殊的驗(yàn)證需求。在可維護(hù)方面,這些擴(kuò)展特性不具有擴(kuò)散性,因此能夠確保eVC的作業(yè)穩(wěn)定性始終不受影響。

這些性能使得采用Specman Elite的eVC進(jìn)行建模和驗(yàn)證的能力比傳統(tǒng)的C語言模型強(qiáng)很多。

汽車系統(tǒng)驗(yàn)證小組可以采用這些技術(shù)在實(shí)際環(huán)境中開發(fā)和除錯CAN總線作業(yè)的模型,并透過再使用eVC在各項(xiàng)目間分享這些經(jīng)驗(yàn)。在CAN總線受到高壓電線產(chǎn)生的干擾時(shí),引擎管理系統(tǒng)必須不發(fā)生故障,因此在引擎管理系統(tǒng)的開發(fā)中這種能力是無價(jià)的。即使這種問題在現(xiàn)場還是出現(xiàn)了,這些問題也很容易得到建模,并被增加進(jìn)eVC仿真,這樣可確保不發(fā)生同樣的錯誤。涉及到乘客安全、氣囊等更重要的問題,經(jīng)驗(yàn)顯示:如果現(xiàn)場沒有發(fā)現(xiàn)的潛在設(shè)計(jì)缺陷就可能需要付出數(shù)百萬的代價(jià)!這就是目前汽車工業(yè)有必要進(jìn)行嚴(yán)格驗(yàn)證的嚴(yán)峻形勢。

另外一個(gè)重要功能是方便重新設(shè)計(jì),這是因?yàn)楝F(xiàn)場發(fā)現(xiàn)問題時(shí)需要在設(shè)計(jì)實(shí)驗(yàn)室進(jìn)行建模。這種故障情形通常很難用標(biāo)準(zhǔn)測試平臺或C模型進(jìn)行再現(xiàn),因?yàn)樗鼈儼瑥?fù)雜的極端案例。

通常來自現(xiàn)場的報(bào)告只提供了故障的粗略描述,設(shè)計(jì)小組需要用很大的精力并在新技術(shù)幫助下才能確定根本原因。透過使用Specman Elite和YOGITECK eVC,設(shè)計(jì)師可以快速擴(kuò)展明確的仿真領(lǐng)域,從而能夠完整檢查和理解像所有CAN組件同時(shí)存取總線時(shí)造成總線不明原因死鎖之類條件下的行為。

最后,針對CAN協(xié)議各個(gè)方面的整合,功能覆蓋定義提供了實(shí)際驗(yàn)證狀態(tài)的詳細(xì)報(bào)告。根據(jù)Specman Elite的功能覆蓋引擎,設(shè)計(jì)人員能夠清晰地了解驗(yàn)證工作已經(jīng)完成了多少,協(xié)議的哪些方面功能還需要測試。為了分析組件的品質(zhì)和當(dāng)前驗(yàn)證狀態(tài),eVC的這種功能覆蓋性能甚至可以被整合進(jìn)已有的測試平臺中。

傳統(tǒng)CAN存在的問題之一是延遲,這是因?yàn)槿绻偩€已經(jīng)處于忙狀態(tài),那么組件在發(fā)送之前會產(chǎn)生不可預(yù)測的時(shí)延。業(yè)界已開發(fā)出一種被稱為時(shí)間觸發(fā)的CAN或TTCAN的新型總線,這種總線的頻寬是預(yù)先在時(shí)分再使用時(shí)隙內(nèi)給組件分配好的。YOGITECH將很快推出適合這種類型總線的eVC。

現(xiàn)代汽車將透過使用更多的整合復(fù)雜度更高的電子組件提供更好的舒適性、成本效益和功能。在各種汽車模型間整合所有這些系統(tǒng)將導(dǎo)致成百個(gè)CAN組件的組合。為了確保消費(fèi)者享受完美的系統(tǒng),很有必要采用最佳驗(yàn)證工具,而Cadence的Specman Elite工具正是其中之一。



關(guān)鍵詞: Specman Elite 汽車CAN總線

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉