以Freescale公司的i.MX6Q四核处理器及ALTERA EP3C40F324 FPGA为核心的嵌入式硬件平台,介绍i.MX6Q与FPGA基于EIM总线通信接口设计,基于Linux 3.14.28内核开发此接口的驱动程序方法以及基于Linux下从应用到驱动程序的通信实现.该技术已应用到某终端设备研制,实现FPGA芯片与Linux系统的连接,实际测试其与Android应用程序可靠通信,对同类型嵌入式平台的驱动接口设计及开发有借鉴意义.
External Interface Module(EIM)接口是飞思卡尔公司的MCIMX系列芯片的重要接口,是一种并行数据总线接口,主要用于同外设芯片或外部存储器进行数据传输,能异步访问带SRAM接口的器件或者同步访问带NOR Flash或PSRAM接口的器件.介绍了通过EIM接口实现CPU处理器与外设FPGA异步通信的硬件平台和EIM接口的实现原理.论述了Linux操作系统上EIM接口驱动的实现,描述了驱动的示意代码,并通过SignalTapⅡLogic Analyzer进行数据采集和显示屏显示,共同验证EIM接口能够高效地完成数据传输.通过EIM接口对FPGA固定寄存器进行写读操作,写入寄存器的值能够正确无误的读回来,对OLED显示屏进行初始化,大量数据能够正确传输,EIM接口功能完善,传输效率高,能够应用于多种场合.