李忠濤 中國電子科技集團公司第五十四研究所
SJA2512屬于獨立CAN總線控制器,其屬于最先的總線控制器替代產品,其主要是在原本產品的基礎上添加全新的工作模式。在本文所研究的系統(tǒng)中使用外接晶振能夠實現(xiàn)系統(tǒng)時鐘,并且在數(shù)據(jù)地址復用總線引腳和DSP相互連接。其中的地址鎖存信號、芯片都能夠實現(xiàn)信號的讀取,其中的MODE引腳能夠和高電平相互連接,使其能夠在Inter時序中工作。圖1為CAN總線控制器的模塊工作原理結構。
圖1 CAN總線控制器的模塊工作原理結構
總線收發(fā)器屬于總線控制器與物理總線的接口,其屬于較為長線的總線收發(fā)器,其能夠對總線提供差動發(fā)送能力,并且還能夠對總線控制器提供相應的差動接收能力。其中的RS引腳主要是在高速工作及斜率控制兩種模式中工作,因為系統(tǒng)總線比較短,并且波特率比較低,所以此引腳主要是利用外部鏈接47k電阻實現(xiàn),從而使芯片能夠在斜率控制模式中工作。
因為FPGA中I/O口輸入和輸出電平都是標準信號,SJA引腳輸入輸出點評都是電平信號,兩者無法實現(xiàn)直接連接及數(shù)據(jù)傳輸,要利用兩片電平轉換芯片,能夠實現(xiàn)以上兩個芯片的相互轉換。因為總線控制器數(shù)據(jù)地址的復用總線總線不僅能夠從FPGA中實現(xiàn)數(shù)據(jù)的接收,也能夠對FPGA實現(xiàn)數(shù)據(jù)的發(fā)送。所以就將復用總線在芯片中連接,其他的控制信號在另外的芯片中連接,從而實現(xiàn)電平轉換方向的控制。因為控制信號引腳要通過FPGA中進行命令的接收,所以就要將其方向引腳到低電平中接收。
在該系統(tǒng)中,對于數(shù)字信號處理芯片的選用,選擇了具有高性能的TMS320C67x系列,其由TI公司推出,在工作頻率方面能夠達到1GHz,這種較強的數(shù)據(jù)處理能力,可以確保高速數(shù)據(jù)傳輸?shù)囊蟮玫交緷M足。對于DSP來說,受其地址線與數(shù)據(jù)線是分開的影響,不能直接同DO-D7相連,因此將其地址線AO作為數(shù)據(jù)選擇線,在AO=0情況下,以DSP數(shù)據(jù)線上的數(shù)據(jù)為地址對SJAl000進行寫入,在A0=1情況下,以DSP數(shù)據(jù)線上的數(shù)據(jù)為數(shù)據(jù)對SJAl000進行寫入。在該系統(tǒng)中,DSP模塊主要負責對SJAl000初始化過程的完成及對發(fā)送過程的控制。因SJAl000內部大部分寄存器的讀寫必須處于復位模式,為此在對SJAl000實施初始化前,需對其處理使其處于復位模式。完成配置后,確保SJAl000重新進入正常操作模式,等待對數(shù)據(jù)進行發(fā)送或接收。對SJAl000進行發(fā)送時,需對狀態(tài)寄存器sR中的值進行讀取,主要為TCS和TBS位的值,保證在SJAl000最近一次發(fā)送上已經獲得成功,同時需保證發(fā)送緩沖器處在釋放狀態(tài)。之后面向發(fā)送緩沖器TXB對TX標識碼進行寫入、對TX結構信息進行寫入、對待發(fā)送的數(shù)據(jù)進行寫入;在最后,需面向命令寄存器CMR的TR位,對1進行寫入,對發(fā)送請求進行置位,對發(fā)送操作進行完成。
該系統(tǒng)在芯片的選擇上,選擇了低功耗處理器,即EPlC6Q240C8型芯片,其由Altera公司提供,可對185個I/0接口進行提供,在處理速度上較快,且具有靈活、可靠等優(yōu)勢。對于FPGA模塊來說,其主要負責對SJAl000地址鎖存信號ALE的時序控制,完成對芯片使能信號CS的時序控制,并完成對讀有效RD的時序控制,以及完成對寫有效WR的時序控制。在DSP向SJAl000對數(shù)據(jù)進行寫入時,trl數(shù)值為0,對于3.3VTTL標準信號,會使其轉換成5VCOMS電平信號;在DSP向SJAl000對數(shù)據(jù)進行讀出時,trl數(shù)值為1,對于5VCOMS電平信號,會使其轉換成3.3VTTL標準信號。
信息的完整性指的是信號線中信號的質量,信號破損并不是因為某個因素導致的,其是因為多種因素導致的,信號完整性問題和振鈴、反射、串擾,實際上在對高速數(shù)字信息進行處理過程設計一直都是CAN總線通信系統(tǒng)的設計難點。信號通過PCB進行傳輸,在信號走線比信號波長要大的時候,此走線也可以稱之為傳輸線,要對PCB線際互聯(lián)及板層特性對于電氣新能影響進行全面的考慮。對于本文所設計的總線通信系統(tǒng)進行調試,首先要實現(xiàn)電路的調試。在對系統(tǒng)調試之后,表示系統(tǒng)的總線節(jié)點能夠實現(xiàn)數(shù)據(jù)測試的接收,并且還能夠解決其他中斷程序對CAN總線接收的干擾,表示本文所設計的CAN總線程序能夠有效執(zhí)行
為了使CAN總線的能夠實現(xiàn)多節(jié)點可靠高速性傳輸,本文基于FPGA和DSP對CAN總線通信系統(tǒng)進行了設計。FPGA和DSP下的CAN總線通信系統(tǒng)設計,在硬件部分對DSP+FPGA加以采用,將其作為核心通訊處理單元,在軟件部分對DSP模塊程序與FPGA模塊程序進行設計,具有很好的實時性,還能夠確保系統(tǒng)數(shù)據(jù)在傳輸過程中穩(wěn)定可靠。