引言
CAN(Controller Area Network,控制器局域網(wǎng))總線是德國Bosch公司在20世紀80年代初,為了解決現(xiàn)代汽車中眾多的控制與測試儀器之間的數(shù)據(jù)交換而開發(fā)的一種串行數(shù)據(jù)通信協(xié)議。它的短幀數(shù)據(jù)結構、非破壞性總線性仲裁技術以及靈活的通信方式適應了汽車的實時性和可靠性要求,倍受汽車生產廠商的青睞。隨著汽車電子技術的發(fā)展,汽車上的ECU(Electronic Control Unit,電子控制單元)越來越多,如電控燃油噴射系統(tǒng)、防抱死制動系統(tǒng)、防滑控制系統(tǒng)等,相應的數(shù)據(jù)量也越來越大,如何采用合理的存儲方案是記錄儀等大容量存儲系統(tǒng)的關鍵。本文詳細闡述了大容量存儲系統(tǒng)系統(tǒng)的整體結構、硬件電路設計。利用“FPGA+單片機”作為存儲控制器,采用基于LZW算法的數(shù)據(jù)壓縮技術,以SDRAM作為周期存儲和緩存,SD卡作為最終存儲載體。實驗結果表明,該存儲系統(tǒng)可以很好地應用于車載信息記錄儀。
1 系統(tǒng)整體結構設計
如圖1所示,存儲系統(tǒng)主要包括以下模塊:FPGA主控模塊、CAN總線監(jiān)聽控制模塊、數(shù)據(jù)壓縮模塊、SDRAM控制模塊和單片機控制CH376模塊。本文主要介紹存儲部分,CAN總線監(jiān)聽控制模塊不做介紹。圖中,點畫線內的部分均由FPGA控制。后端SD卡由MSP430單片機控制,SD協(xié)議芯片采用CH376。FPGA控制CAN總線控制芯片、CAN總線收發(fā)器從總線上獲取數(shù)據(jù),經過數(shù)據(jù)壓縮模塊壓縮,存入SDRAM里。這里采用兩種存儲模式:一種是利用SDRAM存儲的可覆蓋性進行周期存儲,具體存儲周期由壓縮率和SDRAM容量決定;另一種是直接存儲,SDRAM作為緩存。當選擇直接存儲時,F(xiàn)PGA與單片機通信,利用FIFO給單片機發(fā)送數(shù)據(jù),單片機控制CH376將數(shù)據(jù)存入SD卡(存儲時間由SD卡容量決定)。
2 系統(tǒng)硬件設計
2.1 FPGA主控模塊
FPGA選用Altera公司的Cyclone II系列芯片EP2C5T14418N,它具有內部資源豐富、速度快的特點。上電后,主控模塊使能CAN總線監(jiān)聽控制模塊、數(shù)據(jù)壓縮模塊、SDRAM控制模塊。如果選擇周期存儲,則不使能單片機;若選擇直接存儲,則讓單片機處于低功耗狀態(tài),當SDRAM有數(shù)據(jù)時FPGA把數(shù)據(jù)發(fā)給單片機,并使其控制CH376工作。
2.2 數(shù)據(jù)壓縮模塊
壓縮算法采用LZW算法。該算法是一種基于字典的壓縮算法,在數(shù)據(jù)的壓縮過程中會根據(jù)輸入的數(shù)據(jù)動態(tài)地建立一個字典。后續(xù)輸入的數(shù)據(jù)都會在這個字典中進行匹配查找,根據(jù)查找是否成功決定壓縮編碼的輸出。該算法的巧妙之處在于,壓縮過程中動態(tài)建立的字典不需要與壓縮數(shù)據(jù)流一道進行傳輸和存儲,然而在對數(shù)據(jù)進行解壓時也能夠通過壓縮數(shù)據(jù)流重新建立一個字典,來完成解壓縮。LZW壓縮算法流程如圖2所示。根據(jù)該流程,采用C語言設計壓縮與解壓縮軟件以驗證算法和硬件壓縮的正確性,用Verilog語言編寫了壓縮代碼,利用FPGA內部RAM資源建立字典。LZW壓縮算法的硬件邏輯功能框圖如圖3所示。
2.3 SDRAM控制模塊
SDRAM(同步動態(tài)隨機存儲器)是一種易失性存儲器,以其容量大、價格低的特點得到越來越廣泛的應用。但其控制邏輯復雜,需要周期性刷新操作、行列管理、不同延時和命令序列等。圖4是SDRAM的控制狀態(tài)轉移圖。
2.4 單片機控制CH376模塊
CH376是一款國產文件管理控制芯片,用于單片機系統(tǒng)讀寫U盤或者SD卡中的文件。CH376內置了SD卡的通信接口、FATl6、FAT32以及FAT l2文件系統(tǒng)等固件,無需自己編寫底層協(xié)議,控制簡單,提供2 MB、24MHz的SPI設備接口,支持連接到單片機的SPI串行總線。CH376應用連接圖如圖5所示。
3 系統(tǒng)仿真與測試
程序編寫完之后,利用Modelsim語言仿真軟件對其進行仿真。ModelSim能提供友好的仿真環(huán)境,是單內核支持VHDL和Verilog混合仿真的仿真器。它采用直接優(yōu)化的編譯技術、Tcl/Tk技術和單一內核仿真技術,編譯仿真速度快,編譯的代碼與平臺無關,是FPGA/ASIC設計的首選仿真軟件。硬件壓縮與存儲模塊仿真如圖6所示。仿真結果表明,硬件壓縮與軟件壓縮完全符合。
結語
本文設計了基于“FPGA+單片機”的車載CAN總線采集系統(tǒng)。利用FPGA的優(yōu)勢編寫了數(shù)據(jù)壓縮和SDRAM控制兩個模塊,作為存儲系統(tǒng)的核心部分;利用單片機控制能力強、簡單的特點設計了SD卡存儲控制器,作為數(shù)據(jù)的最終存儲介質,以方便用戶在計算機上直接讀取數(shù)據(jù)。實驗表明,該系統(tǒng)工作穩(wěn)定,適合長時間記錄數(shù)據(jù)。
大家好,我是鲏。認識我的朋友都知道,我是一個實踐派,相比研究枯燥的理論知識,我更喜歡做自己想做的項目,用技術來實現(xiàn)自己的想法的感覺真的很棒。所以從大學期間一直到現(xiàn)在,除了工作中的項目外,我依然保持著自己做項目的習慣,有堅...
關鍵字: 系統(tǒng)設計 技術選型 需求分析北京2022年8月30日 /美通社/ -- 數(shù)據(jù)已經成為繼土地、勞動力、資本和技術之后的第五大生產要素,是當代經濟社會發(fā)展的基礎資源。存儲作為數(shù)據(jù)載體設備發(fā)揮著重要作用,既要滿足當前全球數(shù)據(jù)量高速增長需求,又要...
關鍵字: 數(shù)據(jù)存儲 存儲系統(tǒng) 供電 電池(全球TMT2022年8月30日訊)近日,在2022英特爾中國數(shù)據(jù)中心合作伙伴技術峰會上,英特爾與浪潮信息等產業(yè)生態(tài)伙伴聯(lián)合發(fā)布了《綠色數(shù)據(jù)中心創(chuàng)新實踐 -- 冷板液冷系統(tǒng)設計參考》白皮書,分享冷板液冷技術關鍵部件的最...
關鍵字: 系統(tǒng)設計 英特爾 數(shù)據(jù)中心 生態(tài)系統(tǒng)北京2022年8月30日 /美通社/ -- 近日,在2022英特爾中國數(shù)據(jù)中心合作伙伴技術峰會上,英特爾與浪潮信息等產業(yè)生態(tài)伙伴聯(lián)合發(fā)布了《綠色數(shù)據(jù)中心創(chuàng)新實踐 -- 冷板液冷系統(tǒng)設計參考》白皮書,分享冷板液冷技術關鍵部...
關鍵字: 系統(tǒng)設計 英特爾 數(shù)據(jù)中心 電量摘要:近年來,受人類活動的影響,各大水域的水質污染問題越來越嚴重,大部分水資源受到嚴重污染,水質處理問題亟需解決。分析水體污染情況對改進水質有著重要意義,目前水質監(jiān)測主要采用人工或無人船的方式。人工監(jiān)測方式工作量大,影響...
關鍵字: 水質監(jiān)測 無人機 系統(tǒng)設計摘要:根據(jù)饒平縣高堂水閘重建工程建設實際需求,對高堂水閘運行管理進行實時在線式監(jiān)控與監(jiān)測,通過閘門控制、視頻監(jiān)控、水情測報、安全監(jiān)測和網(wǎng)絡通信等系統(tǒng)的設計,為高堂水閘的水工建筑物安全、防洪調度和自動化管理提供技術支持,以...
關鍵字: 管理信息系統(tǒng) 水利工程 系統(tǒng)設計北京2022年7月29日 /美通社/ -- 大海里,魚類可以毫不費力地做到兼具速度與優(yōu)雅于一身,最快游速達每小時 70 英里,而人類甚至難以達到每小時 4 英里,即便潛艇也只能達到每小時 50 英里。魚類為何能獲得如此快...
關鍵字: 存儲系統(tǒng) 數(shù)據(jù)中心 SSD 閃存盤湖州2022年7月26日 /美通社/ -- 近日,浙江省科技創(chuàng)新大會在浙江省人民大會堂隆重舉行。大會正式頒布2021年度浙江省科學技術進步獎,隆重表彰為浙江科技創(chuàng)新事業(yè)和經濟社會發(fā)展做出突出貢獻的科技工作者及團隊。...
關鍵字: 電梯 檢測技術 系統(tǒng)設計 零部件摘要:簡要介紹了柴油發(fā)電機組和重油發(fā)電機組的構成和主要特點,以某發(fā)電廠重柴油發(fā)電機組系統(tǒng)設計為例,重點分析了重油發(fā)電機組燃油系統(tǒng)、潤滑油系統(tǒng)、循環(huán)冷卻水系統(tǒng)、壓縮空氣系統(tǒng)的設計要點,以提高柴油、重油發(fā)電機組的運行效率和運...
關鍵字: 重油發(fā)電機組 特性 系統(tǒng)設計摘要:針對一種小型消費級水下機器人,分析了其系統(tǒng)總體設計及各關鍵子系統(tǒng)(推進系統(tǒng)、通信系統(tǒng)、控制系統(tǒng)及其他系統(tǒng)等)設計的要點和方法,舉例介紹了一種五推進器小型消費級水下機器人。經驗證,該設計方法可以用于同類型水下機器人的...
關鍵字: 推進器 系統(tǒng)設計 五推進器