CAN能夠?yàn)槠囯娮釉O(shè)備提供穩(wěn)定、可靠的低成本網(wǎng)絡(luò)連接。迄今為止,全球的CAN節(jié)點(diǎn)已達(dá)1.5億個(gè),本地互連網(wǎng)絡(luò)(LIN)能夠?yàn)殡姍C(jī)、開關(guān)、傳感器和車燈提供一種低成本的網(wǎng)絡(luò)連接方式,本文介紹飛思卡爾(Freescale)的車內(nèi)CAN/LIN網(wǎng)絡(luò)解決方案。
控制器區(qū)域網(wǎng)絡(luò)(CAN)是一種異步的多主(multi-master)串行通信協(xié)議,可用來(lái)連接汽車和工業(yè)應(yīng)用中的各種電子控制模塊。最初,CAN 是為需要高級(jí)數(shù)據(jù)集成能力、以及要求數(shù)據(jù)速率達(dá)1Mbps以上的汽車應(yīng)用而設(shè)計(jì)的。未來(lái),CAN的應(yīng)用范圍還會(huì)繼續(xù)增加,以至于任何一個(gè)需要穩(wěn)定、可靠的低成本網(wǎng)絡(luò)的系統(tǒng)或設(shè)備,都有可能成為CAN節(jié)點(diǎn)。
CAN應(yīng)用的挑戰(zhàn)
汽車應(yīng)用中的CAN網(wǎng)絡(luò)可根據(jù)流量性質(zhì)的不同,分為兩種截然不同的類型。第一種是車身控制網(wǎng)絡(luò),它的功能是控制乘客的舒適系統(tǒng),因此該網(wǎng)絡(luò)主要處理多種無(wú)序或以非規(guī)律頻率出現(xiàn)的消息標(biāo)示符(message identifier)。另一種是汽車動(dòng)力總成網(wǎng)絡(luò)(Powertrain network),它的功能是傳輸與引擎和傳動(dòng)控制有關(guān)的消息,這些待處理信息的類型相對(duì)單一,但出現(xiàn)的頻率卻非常快,也非常有規(guī)律。但由于需要處理的信息類型的不同,導(dǎo)致兩種網(wǎng)絡(luò)在硬件和軟件系統(tǒng)設(shè)計(jì)上也大向徑庭。
與其它重要的網(wǎng)絡(luò)協(xié)議一樣, CAN需要一個(gè)物理層器件來(lái)執(zhí)行通信功能。其物理層規(guī)范源自ISO/OSI規(guī)定的7層模型,負(fù)責(zé)對(duì)總線進(jìn)行電流和電壓控制。 物理層器件還需要處理瞬態(tài)電壓,以及信令鏈路上的錯(cuò)誤,并盡可能地糾錯(cuò)。
在過(guò)去10年里,有2個(gè)主要的物理層設(shè)計(jì)走上前臺(tái),并成為絕大多數(shù)CAN應(yīng)用的物理層設(shè)計(jì)的基礎(chǔ)。它們通常被稱為高速和低速的物理層,并且都以電壓差的方式在一對(duì)差分信號(hào)線上執(zhí)行通信功能。當(dāng)差分信號(hào)線中的某一條線出現(xiàn)短路或開路故障時(shí),低速物理層架構(gòu)就可變成一種單線架構(gòu)(參考地電平)。由于要執(zhí)行這項(xiàng)功能,低速架構(gòu)對(duì)于總線速度高于125kpbs的操作來(lái)說(shuō),成本過(guò)于昂貴。這也正是125kpbs成為劃分低速CAN和高速CAN的根本原因。盡管兩種架構(gòu)都是在一對(duì)線上使用一個(gè)電壓參考,但每一種架構(gòu)的終止方法(termination method)并不一樣,產(chǎn)品系統(tǒng)也不兼容。
另外,通用汽車在不久前開發(fā)了一種新的CAN物理層。這種物理層只采用一根線,并將速度性能限制在33.33 kbps。這種單線的CAN物理層與上面兩種類型有著顯著的不同,也沒(méi)有得到廣泛接受。
其實(shí),CAN標(biāo)準(zhǔn)規(guī)范中沒(méi)有任何對(duì)物理層的要求,其它的標(biāo)準(zhǔn)組織也開發(fā)出了各種標(biāo)準(zhǔn)來(lái)幫助設(shè)計(jì)工程師開發(fā)各種能相互兼容的CAN設(shè)備。國(guó)際標(biāo)準(zhǔn)組織 (ISO)和汽車工程師協(xié)會(huì)(SAE)分別為歐洲和美國(guó)市場(chǎng)制定了各種標(biāo)準(zhǔn),以確保各種物理層器件與推薦的設(shè)計(jì)規(guī)程之間有互用性。請(qǐng)?jiān)L問(wèn)www.iso.org,了解ISO11519-2(低速容錯(cuò)CAN)和ISO 11898(高速CAN);或訪問(wèn)www.sae.org,了解SAE J2411(單線CAN)和SAE J2284-125/250/500(高速CAN)的標(biāo)準(zhǔn)規(guī)范。
針對(duì)CAN應(yīng)用的解決方案
飛思卡爾的32位MCU采用了TouCAN或FlexCAN硬件模塊,來(lái)與CAN總線進(jìn)行通信。這些模塊都是基于傳統(tǒng)的"郵箱"或"完全 CAN(full-CAN)"硬件架構(gòu),具有16個(gè)消息緩沖器。當(dāng)接收到消息后,相應(yīng)的硬件過(guò)濾器會(huì)把消息裝入到這16個(gè)"郵箱"中的一個(gè)(接收緩沖器)。這種方法非常適合于動(dòng)力總成系統(tǒng),因?yàn)樵撓到y(tǒng)中的消息都非常有規(guī)律、可以預(yù)測(cè),應(yīng)用開發(fā)商可通過(guò)軟件以足夠快的速度清?quot;郵箱",以便新的消息不會(huì)覆蓋掉未處理的舊消息。但如果多條消息進(jìn)入的速度實(shí)在太快、來(lái)不及處理和清空時(shí),數(shù)據(jù)就會(huì)丟失。這就是為什么郵箱式架構(gòu)并不一定適合于不可預(yù)測(cè)的、事件驅(qū)動(dòng)型的數(shù)據(jù)網(wǎng)絡(luò)的原因。
前面曾提到,車身電子網(wǎng)絡(luò)的消息是零星產(chǎn)生的,具有不可預(yù)測(cè)的性質(zhì),這使飛思卡爾的Scalable CAN (msCAN) 架構(gòu)非常適合這些應(yīng)用。因?yàn)镠C08、HC12和HCS12等MCU系列都是8位和16位的控制器,它們都是車身電子系統(tǒng)與器件的核心,因此msCAN模塊適合用這些MCU系列來(lái)開發(fā)。由msCAN模塊接收的CAN消息被放到一個(gè)先進(jìn)先出(FIFO)的存儲(chǔ)結(jié)構(gòu)中,這種結(jié)構(gòu)保持了所接收的消息的順序,因此許多具有同一標(biāo)示符的消息能夠有序地快速接收,不必?fù)?dān)心單一接收緩沖器會(huì)出現(xiàn)溢出問(wèn)題。
為滿足多種類型的CAN物理層的需求,飛思卡爾提供了一系列CAN物理層器件,來(lái)滿足或超越ISO或SAE制訂的性能標(biāo)準(zhǔn)。
但僅有一個(gè)簡(jiǎn)單的物理層器件是不夠的。例如,所有的汽車模塊都需要由經(jīng)過(guò)調(diào)整的電源供電。有時(shí),一個(gè)本地開關(guān)或傳感器需要將該模塊從睡眠狀態(tài)下迅速激活為運(yùn)行 狀態(tài),而開關(guān)或傳感器的電壓為汽車蓄電池的電壓。這就是飛思卡爾的系統(tǒng)基礎(chǔ)芯片(SBC)為汽車設(shè)計(jì)表(design table)帶來(lái)的幫助和價(jià)值。SBC結(jié)合了CAN物理層所需要的電壓調(diào)整、獨(dú)立的看門狗定時(shí)器、本地激活電路,以便能用更少的元器件獲得更大的靈活性。當(dāng)這些電路能夠采用同一半導(dǎo)體工藝制造時(shí),就有必要將這些功能集成到單一封裝內(nèi),減少設(shè)計(jì)最后階段所需要的元器件數(shù)量。這將減少開發(fā)成本、提高可靠性、增加設(shè)計(jì)靈活性。
LIN應(yīng)用的設(shè)計(jì)挑戰(zhàn)
本地互連網(wǎng)絡(luò) (LIN) 是一種基于 UART 的單主 (節(jié)點(diǎn)) 多從 (節(jié)點(diǎn)) 網(wǎng)絡(luò)架構(gòu),最早是為汽車傳感器和制動(dòng)器(actuator)的聯(lián)網(wǎng)應(yīng)用而開發(fā)的。它為電機(jī)、開關(guān)、傳感器和車燈提供了一種低成本的網(wǎng)絡(luò)連接方式。LIN不僅僅可以連接獨(dú)立的傳感器和制動(dòng)器,其主節(jié)點(diǎn)還可以在LIN網(wǎng)絡(luò)與CAN等更高級(jí)網(wǎng)絡(luò)之間進(jìn)行連接。
然而想把LIN網(wǎng)絡(luò)集成到汽車環(huán)境中去并非輕而易舉。目前絕大多數(shù)適合LIN的應(yīng)用,都采用了分立的、點(diǎn)對(duì)點(diǎn)的線束系統(tǒng),而沒(méi)有考慮到負(fù)載端的芯片、電路和元件。因此,不論負(fù)載是燈或電機(jī),還是傳感器,通常都通過(guò)簡(jiǎn)單的連接器連接到雜亂的線束。結(jié)果,剩下的板上空間就十分有限,很難再集成LIN所需要的元件。例如在電動(dòng)后視鏡中,供應(yīng)商可能會(huì)放置多達(dá)3個(gè)電機(jī)、發(fā)熱元件、電鍍鉻玻璃和多個(gè)車燈,于是就沒(méi)有留下足夠的空間來(lái)滿足其它潛在性要求。
對(duì)汽車電子制造商來(lái)說(shuō), 制造控制模塊的能力是另一個(gè)重大挑戰(zhàn)。 它不僅僅是LIN開發(fā)商會(huì)碰到的問(wèn)題,也是電機(jī)、傳感器和制動(dòng)器制造商經(jīng)常面對(duì)的問(wèn)題。
最后,智能化的LIN網(wǎng)絡(luò)系統(tǒng)為開發(fā)商提供了新的選擇?,F(xiàn)在,系統(tǒng)前端可以完成對(duì)電機(jī)、車燈和螺線管等負(fù)載的控制。由于可提供前所未有的控制和系統(tǒng)級(jí)信息,LIN網(wǎng)絡(luò)可輕易否決診斷數(shù)據(jù)。然而問(wèn)題是,為了控制和診斷這些負(fù)載,該如何設(shè)計(jì)一個(gè)小體積的半導(dǎo)體芯片,以適合于非常狹小的應(yīng)用空間。
降低LIN網(wǎng)絡(luò)的能量輻射也同樣重要,因?yàn)殚L(zhǎng)距離的線纜總線在傳輸信息時(shí),會(huì)像天線一樣對(duì)周圍的其它器件輻射能量。作為單線總線,LIN可以在地電平與電池電壓之間進(jìn)行切換。這種大幅度的電壓切換也會(huì)造成大量的電磁輻射,因此在進(jìn)行物理層器件設(shè)計(jì)時(shí)需要更加仔細(xì)。
針對(duì)LIN應(yīng)用的解決方案
作為一種開放式標(biāo)準(zhǔn)的UART協(xié)議,LIN使飛思卡爾能夠開發(fā)出一條完整的、高度集成的機(jī)電元件產(chǎn)品線。這些元器件在一個(gè)非常緊湊的封裝內(nèi),為特定的從設(shè)備應(yīng)用(slave application)集成了所有需要的半導(dǎo)體器件與連接器,給LIN的從節(jié)點(diǎn)(slave node)開發(fā)商提供了巨大的好處。
高集成度解決了許多客戶的設(shè)計(jì)挑戰(zhàn)。其中一種機(jī)電器件的制造方法,是將MCU、物理層和負(fù)載處理(load hand-ling)的半導(dǎo)體器件放置在一個(gè)絕緣金屬襯底 (IMS)上(該襯底可當(dāng)作一個(gè)小的PCB),這種方法可獲得極佳的熱性能。該IMS為負(fù)載處理、通信與邏輯半導(dǎo)體提供了無(wú)以倫比的散熱性能。