当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]引言CAN(Controller Area Network,控制器局域网)总线是德国Bosch公司在20世纪80年代初,为了解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信

引言

CAN(Controller Area Network,控制器局域网)总线是德国Bosch公司在20世纪80年代初,为了解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议。它的短帧数据结构、非破坏性总线性仲裁技术以及灵活的通信方式适应了汽车的实时性和可靠性要求,倍受汽车生产厂商的青睐。随着汽车电子技术的发展,汽车上的ECU(Electronic Control Unit,电子控制单元)越来越多,如电控燃油喷射系统、防抱死制动系统、防滑控制系统等,相应的数据量也越来越大,如何采用合理的存储方案是记录仪大容量存储系统的关键。本文详细阐述了大容量存储系统系统的整体结构、硬件电路设计。利用“FPGA+单片机”作为存储控制器,采用基于LZW算法的数据压缩技术,以SDRAM作为周期存储和缓存,SD卡作为最终存储载体。实验结果表明,该存储系统可以很好地应用于车载信息记录仪。

1 系统整体结构设计

如图1所示,存储系统主要包括以下模块:FPGA主控模块、CAN总线监听控制模块、数据压缩模块、SDRAM控制模块和单片机控制CH376模块。本文主要介绍存储部分,CAN总线监听控制模块不做介绍。图中,点画线内的部分均由FPGA控制。后端SD卡由MSP430单片机控制,SD协议芯片采用CH376。FPGA控制CAN总线控制芯片、CAN总线收发器从总线上获取数据,经过数据压缩模块压缩,存入SDRAM里。这里采用两种存储模式:一种是利用SDRAM存储的可覆盖性进行周期存储,具体存储周期由压缩率和SDRAM容量决定;另一种是直接存储,SDRAM作为缓存。当选择直接存储时,FPGA与单片机通信,利用FIFO给单片机发送数据,单片机控制 CH376将数据存入SD卡(存储时间由SD卡容量决定)。

 

系统设计" />

2 系统硬件设计

2.1 FPGA主控模块

FPGA选用Altera公司的Cyclone II系列芯片EP2C5T14418N,它具有内部资源丰富、速度快的特点。上电后,主控模块使能CAN总线监听控制模块、数据压缩模块、SDRAM控制模块。如果选择周期存储,则不使能单片机;若选择直接存储,则让单片机处于低功耗状态,当SDRAM有数据时FPGA把数据发给单片机,并使其控制 CH376工作。

2.2 数据压缩模块

压缩算法采用LZW算法。该算法是一种基于字典的压缩算法,在数据的压缩过程中会根据输入的数据动态地建立一个字典。后续输入的数据都会在这个字典中进行匹配查找,根据查找是否成功决定压缩编码的输出。该算法的巧妙之处在于,压缩过程中动态建立的字典不需要与压缩数据流一道进行传输和存储,然而在对数据进行解压时也能够通过压缩数据流重新建立一个字典,来完成解压缩。 LZW压缩算法流程如图2所示。根据该流程,采用C语言设计压缩与解压缩软件以验证算法和硬件压缩的正确性,用Verilog语言编写了压缩代码,利用 FPGA内部RAM资源建立字典。LZW压缩算法的硬件逻辑功能框图如图3所示。

 

 

2.3 SDRAM控制模块

SDRAM(同步动态随机存储器)是一种易失性存储器,以其容量大、价格低的特点得到越来越广泛的应用。但其控制逻辑复杂,需要周期性刷新操作、行列管理、不同延时和命令序列等。图4是SDRAM的控制状态转移图。

 

2.4 单片机控制CH376模块

CH376是一款国产文件管理控制芯片,用于单片机系统读写U盘或者SD卡中的文件。CH376内置了SD卡的通信接口、 FATl6、FAT32以及FAT l2文件系统等固件,无需自己编写底层协议,控制简单,提供2 MB、24MHz的SPI设备接口,支持连接到单片机的SPI串行总线。CH376应用连接图如图5所示。

 

3 系统仿真与测试

程序编写完之后,利用Modelsim语言仿真软件对其进行仿真。ModelSim能提供友好的仿真环境,是单内核支持VHDL和Verilog混合仿真的仿真器。它采用直接优化的编译技术、Tcl/Tk技术和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,是FPGA/ASIC设计的首选仿真软件。硬件压缩与存储模块仿真如图6所示。仿真结果表明,硬件压缩与软件压缩完全符合。

 

记录仪的大容量存储系统设计" />

结语

本文设计了基于“FPGA+单片机”的车载CAN总线采集系统。利用FPGA的优势编写了数据压缩和SDRAM控制两个模块,作为存储系统的核心部分;利用单片机控制能力强、简单的特点设计了SD卡存储控制器,作为数据的最终存储介质,以方便用户在计算机上直接读取数据。实验表明,该系统工作稳定,适合长时间记录数据。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭