王淑芬,邵 健,桂江華
(中國(guó)電子科技集團(tuán)公司第58研究所,江蘇 無(wú)錫 214035)
低壓高可靠性CAN協(xié)議芯片
王淑芬,邵健,桂江華
(中國(guó)電子科技集團(tuán)公司第58研究所,江蘇 無(wú)錫 214035)
隨著現(xiàn)場(chǎng)總線技術(shù)的不斷發(fā)展,CAN總線在實(shí)際中的應(yīng)用越來(lái)越廣泛,這對(duì)CAN通信的可靠性提出了更高的要求。另外,用戶的低壓應(yīng)用越來(lái)越普遍。針對(duì)這兩個(gè)方面的要求設(shè)計(jì)了一款低壓高可靠CAN協(xié)議芯片,通過(guò)芯片中的錯(cuò)誤管理邏輯提高了通信的可靠性。
局域網(wǎng)絡(luò)控制器;低壓;可靠性;專用集成電路
CAN(Controller Area Network)總線屬于現(xiàn)場(chǎng)總線范疇,是一種串行通信協(xié)議。它能有效地支持具有很高安全等級(jí)的分布實(shí)時(shí)控制,具有通信速率高、可靠性強(qiáng)、連接方便、性價(jià)比高等諸多特點(diǎn)。CAN總線在上世紀(jì)九十年代初期成為歐洲的研究熱點(diǎn),近幾年隨著研究的深入,CAN通信協(xié)議得到了進(jìn)一步的擴(kuò)展和加強(qiáng),并形成了國(guó)際化標(biāo)準(zhǔn)。本文介紹了CAN通信的協(xié)議,分析了CAN控制器在ASIC中的應(yīng)用以及通信中高可靠性的保證,最后闡述了低壓CAN芯片的實(shí)現(xiàn)。
2.1CAN總線OSI參考模型
CAN總線協(xié)議是建立在國(guó)際標(biāo)準(zhǔn)組織的開放OSI 7層互連參考模型基礎(chǔ)之上的,其模型分為3層,分別為邏輯鏈路控制子層、媒體訪問控制子層和物理層。邏輯鏈路控制子層為遠(yuǎn)程數(shù)據(jù)請(qǐng)求以及數(shù)據(jù)傳輸提供服務(wù),也為恢復(fù)管理和過(guò)載通知提供手段,并且確定由實(shí)際要使用的邏輯鏈路層接收哪個(gè)報(bào)文;媒體訪問控制子層的作用主要是傳送規(guī)則,也就是控制幀結(jié)構(gòu)、執(zhí)行仲裁、錯(cuò)誤檢測(cè)、出錯(cuò)標(biāo)定和故障界定,總線上什么時(shí)候開始發(fā)送新報(bào)文及什么時(shí)候開始接收?qǐng)?bào)文,均在這一子層確定;物理層的作用是在不同結(jié)點(diǎn)之間根據(jù)所有的電氣屬性進(jìn)行位的實(shí)際傳輸。
2.2報(bào)文傳輸
CAN總線有4種幀類型,分為數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀和過(guò)載幀,幀的格式如圖1所示,數(shù)據(jù)幀由7個(gè)不同的位場(chǎng)組成,1為幀起始,2為仲裁場(chǎng),3為控制場(chǎng),4為數(shù)據(jù)場(chǎng),5為CRC校驗(yàn)場(chǎng),6為應(yīng)答場(chǎng),7是幀的結(jié)尾。其中數(shù)據(jù)場(chǎng)的長(zhǎng)度可以為0。
圖1 CAN通信數(shù)據(jù)幀格式
報(bào)文以圖1中的固定格式在總線上發(fā)送,在總線空閑的時(shí)候任何連接總線的CAN節(jié)點(diǎn)都可以進(jìn)行發(fā)送。如果有兩個(gè)或者兩個(gè)以上的節(jié)點(diǎn)同時(shí)進(jìn)行報(bào)文發(fā)送,那么就會(huì)產(chǎn)生總線訪問沖突,這個(gè)沖突可以通過(guò)標(biāo)識(shí)符的逐位仲裁來(lái)解決。在仲裁期間,每一個(gè)節(jié)點(diǎn)都對(duì)總線進(jìn)行監(jiān)測(cè),如果發(fā)送和接收的電平相同,則該節(jié)點(diǎn)可以繼續(xù)發(fā)送報(bào)文。比如發(fā)送的是一“顯性”電平而監(jiān)測(cè)到的是一“隱性”電平, 則該節(jié)點(diǎn)失去仲裁,需要立即退出發(fā)送狀態(tài)。仲裁的機(jī)制使得整個(gè)CAN網(wǎng)絡(luò)可以穩(wěn)定有序地工作。
在CAN系統(tǒng)中,不需要對(duì)任何節(jié)點(diǎn)的軟硬件做任何改變就可以直接添加新的CAN節(jié)點(diǎn)。CAN系統(tǒng)中報(bào)文傳輸以多種方式工作,網(wǎng)絡(luò)上任意節(jié)點(diǎn)都可以在任意時(shí)刻向所有節(jié)點(diǎn)發(fā)送報(bào)文,不分主從關(guān)系。由于系統(tǒng)中引入了報(bào)文濾波概念,CAN節(jié)點(diǎn)可以實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)以及廣播方式發(fā)送或者接收數(shù)據(jù)。
2.3同步機(jī)制
同步分為硬同步和重新同步兩種不同的形式,遵循以下規(guī)則:
(1)在一個(gè)位時(shí)間里只允許一個(gè)同步。
(2)僅當(dāng)采集點(diǎn)之前探測(cè)到的值與緊跟沿之后的總線值不相符合時(shí),才把沿用作于同步。
(3)總線空閑期間,有一“隱性”轉(zhuǎn)變到“顯性”的沿,無(wú)論如何都要執(zhí)行硬同步。
(4)如果僅僅是將“隱性”轉(zhuǎn)化為“顯性”的沿用作于重新同步使用,則其他符合規(guī)則1和規(guī)則2的所有從“隱性”轉(zhuǎn)化為“顯性”的沿可以用作為重新同步。有一例外情況,即當(dāng)發(fā)送以“顯性”位的節(jié)點(diǎn)不執(zhí)行重新同步而導(dǎo)致一“隱性”轉(zhuǎn)化為“顯性”沿,此沿具有正的相位誤差,不能作為重新同步使用。
本設(shè)計(jì)的CAN控制器由Verilog編寫,經(jīng)過(guò)綜合、布局布線之后生成最后的ASIC電路,電路的模塊結(jié)構(gòu)圖如圖2所示,主要由接口管理模塊、發(fā)送接收緩沖模塊、位流處理模塊、接收濾波模塊和錯(cuò)誤管理模塊組成。
本設(shè)計(jì)的高可靠性主要是通過(guò)錯(cuò)誤管理邏輯模塊來(lái)實(shí)現(xiàn)的,電路處理錯(cuò)誤的整個(gè)過(guò)程是完全自動(dòng)的,無(wú)論什么時(shí)候發(fā)生CAN總線錯(cuò)誤,它都會(huì)強(qiáng)制產(chǎn)生相應(yīng)的總線出錯(cuò)中斷。同時(shí),當(dāng)前位的位置被存入寄存器,在這個(gè)數(shù)據(jù)被讀出之前,它都保持在這個(gè)寄存器之中,根據(jù)寄存器中的內(nèi)容區(qū)分4種錯(cuò)誤類型:格式出錯(cuò)、填充出錯(cuò)、位出錯(cuò)和其他錯(cuò)誤。另外寄存器還有額外的信息表明這個(gè)錯(cuò)誤是在發(fā)送還是接收的時(shí)候發(fā)生的。用戶也可以根據(jù)這個(gè)寄存器里的值知道系統(tǒng)中發(fā)生了什么錯(cuò)誤。
圖2 CAN控制器模塊結(jié)構(gòu)圖
電路內(nèi)部有錯(cuò)誤計(jì)數(shù)器,根據(jù)一定規(guī)則計(jì)數(shù)器會(huì)進(jìn)行計(jì)數(shù),根據(jù)計(jì)數(shù)器的數(shù)值,錯(cuò)誤狀態(tài)分為3種:錯(cuò)誤激活、錯(cuò)誤認(rèn)可和總線離線,電路總能在其中的某種狀態(tài)工作。當(dāng)計(jì)數(shù)器的值在0~127之間,電路處于錯(cuò)誤激活狀態(tài),此時(shí)產(chǎn)生錯(cuò)誤激活標(biāo)志(6個(gè)顯性位)。當(dāng)計(jì)數(shù)器的值在128~255之間,電路處于錯(cuò)誤認(rèn)可狀態(tài),此時(shí)產(chǎn)生錯(cuò)誤認(rèn)可標(biāo)志(6個(gè)隱性位)。如果計(jì)數(shù)器數(shù)值大于255,則到達(dá)總線離線狀態(tài),此時(shí)電路自動(dòng)置位復(fù)位請(qǐng)求位。
本設(shè)計(jì)已經(jīng)通過(guò)仿真并且綜合成網(wǎng)表應(yīng)用于項(xiàng)目之中,時(shí)序仿真如圖3所示。CAN總線的通信速率為500 kbit/s。通過(guò)CAN總線接口可完成和外部各個(gè)模塊的通信。該電路支持版本號(hào)的查詢、CAN FIFO數(shù)據(jù)的讀取和發(fā)送,具有完備的超時(shí)重傳機(jī)制。接收到正確ACK應(yīng)答信號(hào)后,CAN發(fā)送端不再發(fā)送數(shù)據(jù)幀;沒有接收到應(yīng)答信號(hào),CAN發(fā)送端間隔10 ms通過(guò)1通道再次發(fā)送,無(wú)應(yīng)答后通過(guò)2通道再次發(fā)送,之后結(jié)束通信。該電路具有看門狗復(fù)位電路,保證電路出現(xiàn)異常時(shí)能夠復(fù)位。電路工作異常3 s后電路清0。FIFO通信機(jī)制同異步口FIFO通信。由此可見,電路的通道0和通道1收發(fā)功能都正常,符合本設(shè)計(jì)的高可靠性要求。
圖3 CAN通信時(shí)序仿真圖
根據(jù)電路的性能及市場(chǎng)需求,該芯片采用SMIC 0.35 μm 1P4M工藝流片,工作電壓為3.3 V。物理實(shí)現(xiàn)的工作包括:布局規(guī)劃、電源網(wǎng)絡(luò)設(shè)計(jì)、標(biāo)準(zhǔn)單元擺放、時(shí)鐘樹綜合及優(yōu)化、布線及可制造性設(shè)計(jì)、物理驗(yàn)證和流片數(shù)據(jù)的準(zhǔn)備。該芯片面積約4500 μm× 6500 μm,電源網(wǎng)絡(luò)采用power ring與power stripe構(gòu)成網(wǎng)狀結(jié)構(gòu),以滿足芯片的IR drop和EM,布局如圖4所示。
圖4 芯片布局規(guī)劃圖
由于管殼腔體和電源管腳的限制,只有3組電源地可供使用,考慮到整體芯片的IR drop和供電能力以及ESD要求,最終使用標(biāo)準(zhǔn)單元庫(kù)PVDD3和PVSS3供電,將內(nèi)核與端口的電源地連接在一起,并用5組PVDD3和PVSS3作為filler來(lái)完成ESD的泄放回路,最終達(dá)到2 000 V的要求,電源與地的IR drop小于 5%。芯片的整體版圖如圖5所示。
圖5 芯片版圖概貌圖
本文針對(duì)目前對(duì)CAN通信低功耗和高可靠性的要求,設(shè)計(jì)了一款符合要求的CAN芯片,通過(guò)仿真驗(yàn)證了芯片通信的可靠性,版圖設(shè)計(jì)時(shí)采用3.3 V工藝實(shí)現(xiàn),流片后的芯片通過(guò)J750測(cè)試機(jī)測(cè)試,功能正確,交直流參數(shù)正常,可以應(yīng)用到實(shí)際工程中去。
[1] 韓成浩,高曉紅. CAN總線技術(shù)及其應(yīng)用[J]. 制造業(yè)自動(dòng)化,2010,2: 146-149.
[2] 姜幼卿,左國(guó)華,陳勤學(xué),等. 基于CAN總線的溫室自動(dòng)控制系統(tǒng)的通信設(shè)計(jì)[J]. 儀表技術(shù)與傳感器,2005(4): 60-62.
[3] 任俊香. SoC芯片版圖的設(shè)計(jì)與驗(yàn)證[J]. 科學(xué)與創(chuàng)新,2015,19: 36-39.
[4] Etschberger K. Controller area network: basics,protocols,chips and applications[J]. 2001.
CAN Protocol Chip with Low Voltage and High Reliability
WANG Shufen , SHAO Jian , GUI Jianghua
(China Electronic Technology Group Corporation No.58 Research Institute, Wuxi 214035, China)
With the development of field bus, the use of CAN bus become more and more widely in daily life. So the reliability of CAN communication needs higher requirements. On the other hand, low-voltage is more and more serious. In this paper, a low voltage and high reliable CAN chip is designed for these application. The reliability of communication is improved by the error management.
CAN; low-voltage; reliability; ASIC
TN402
A
1681-1070(2015)12-0027-03
王淑芬(1987—),女,安徽安慶人,工程師,主要研究方向?yàn)榇笠?guī)模數(shù)字集成電路設(shè)計(jì)。
2015-10-26