本发明专利技术公开了一种基于FPGA的LPC与SPI及I2C转换适配器及其实现方法,属于接口适配器,本发明专利技术要解决的技术问题为如何能够实现LPC接口与SPI接口以及其他接口的转换,读取存储BIOS的Flash的内容完成校验。技术方案为:(1)一种基于FPGA的LPC与SPI及I2C转换适配器,包括LPC模块、数据存储模块、接口选择模块、速率选择模块、地址映射模块、SPI模块和I2C模块,所述LPC模块分别连接地址映射模块和数据存储模块。(2)一种基于FPGA的LPC与SPI及I2C转换适配器的实现方法,该方法的步骤如下:通过地址映射模块将LPC模块传输的地址编码成SPI模块和I2C模块的地址、并传输到接口选择模块。
【技术实现步骤摘要】
一种基于FPGA的LPC与SPI及I2C转换适配器及其实现方法
本专利技术涉及接口适配器
,具体地说是一种基于FPGA的LPC与SPI及I2C转换适配器及其实现方法。
技术介绍
FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。目前计算机无论是国产还是Intel、AMD等平台都配备了LPC接口,用于连接嵌入式控制器(EC)及扩展其他外设。市场上通用的LPC接口转换芯片都有一定的局限性,每一款产品的需求不一样,因此不能通用。基于TCM项目,需要完成国产平台的LPC接口到SPI接口的转换,用于读取存储BIOS的Flash的内容完成校验等处理。目前,市场上没有此类成熟芯片。LPC(全名:LowPinCount),97年Intel发布的取代传统ISABUS的一种新接口规范。以往为了连接ISA扩充槽、适配器、ROMBIOS芯片、SuperI/O等接口,南桥芯片必须保留一个ISABUS,并且连通SuperI/O芯片,以控制传统的外围设备。Intel所定义的PC接口,将以往ISABUS的地址/数据分离译码,改成类似PCI的地址/数据信号线共享的译码方式,信号线数量大幅降低,工作速率由PCI总线速率同步驱动,虽然改良过的LPC接口一样维持最大传输值16MB/s,不过所需要的信号脚位数大幅降低25~30个,以LPC接口设计的SuperI/O芯片、Flash芯片都能享有脚位数减少、体积微缩的好处,主板的设计也可以简化,这也就是取名LPC——LowPinCount的原因。可接的设备:用LPC接口的SuperIO可以接鼠标、键盘、打印机、软驱等;有些Flash也用LPC接口。SPI(SerialPeripheralInterface--串行外设接口)总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。SPI有三个寄存器分别为:控制寄存器SPCR,状态寄存器SPSR,数据寄存器SPDR。外围设备包括FLASHRAM、网络控制器、LCD显示驱动器、A/D转换器和MCU等。SPI总线系统可直接与各个厂家生产的多种标准外围器件直接接口,该接口一般使用4条线:串行时钟线(SCLK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平有效的从机选择线NSS(有的SPI接口芯片带有中断信号线INT、有的SPI接口芯片没有主机输出/从机输入数据线MOSI)。专利号为CN104503936A的专利文献公开了一种基于FPGA实现的RS232-I2C转换适配器的方法,该方法是利用FPGA的可编程性在FPGA内部搭建I2C模块、RS232模块,通过调整I2C模块速率参数和RS232模块速率参数来调整I2C的通信速率和RS232通信速度;利用FPGA的引脚数量多和FPGA模块的可重构性实现一个FPGA搭建多路RS232-I2C转换适配器。该专利只能实现RS232-I2C转换适配器,不能实现LPC与SPI及其它转换适配器。由此可见,如何能够实现LPC接口与SPI接口以及其他接口的转换,读取存储BIOS的Flash的内容完成校验等处理是目前现有技术中存在的技术问题。
技术实现思路
本专利技术的技术任务是针对以上不足之处,提供一种结构简单、生产成本低、易于加工、对环境无污染的基于FPGA实现的LPC与SPI及I2C转换适配器的方法。本专利技术解决其技术问题所采用的技术方案是:一种基于FPGA的LPC与SPI及I2C转换适配器,包括LPC模块、数据存储模块、接口选择模块、速率选择模块、地址映射模块、SPI模块和I2C模块,所述LPC模块分别连接地址映射模块和数据存储模块,地址映射模块连接接口选择模块,数据存储模块分别连接速率选择模块和接口选择模块,接口选择模块分别连接SPI模块和I2C模块。作为优选,所述数据存储模块采用FIFO存储模块。其中,FIFO(FirstInFirstOut)简单说就是指先进先出。由于微电子技术的飞速发展,新一代FIFO芯片容量越来越大,体积越来越小,价格越来越便宜。作为一种新型大规模集成电路,FIFO芯片以其灵活、方便、高效的特性,逐渐在高速数据采集、高速数据处理、高速数据传输以及多机处理系统中得到越来越广泛的应用。一种基于FPGA的LPC与SPI及I2C转换适配器的实现方法,该方法的步骤如下:(1)通过地址映射模块将LPC模块传输的地址编码成SPI模块和I2C模块的地址、并传输到接口选择模块;(2)通过数据存储模块将LPC接口传输的数据转换成32位透明数据存入数据存储模块中、并传输到接口选择模块;(3)接口选择模块根据步骤(1)和步骤(2)中的地址及数据,选择连通SPI模块和/或I2C模块;(4)通过SPI模块和I2C模块将数据存储模块中的数据分别以SPI接口和I2C接口的协议进行转换和传输;(5)速率选择模块根据SPI接口和I2C接口的通信速率,通过硬件上的拨码开关或者LPC接口命令实现SPI接口和I2C接口的通信速率的调整。本专利技术的一种基于FPGA的LPC与SPI及I2C转换适配器及其实现方法和现有技术相比,存在以下优点:1、本专利技术通过在FPGA内部搭建LPC模块、SPI模块以及I2C模块,通过接口选择模块,可以选择连通SPI接口和/或I2C接口,实现了LPC接口与SPI接口以及I2C接口的转换,读取存储BIOS的Flash的内容完成校验等处理,同时确保提高了本专利技术的转换适配器的普遍适用性;2、采用SPI接口,SPI接口具有信号线少,协议简单,相对数据速率高的特点,故本专利技术的转换适配器具有使用灵活方便、适应性强,增强了接口稳定性,同时降低了成本。由此可见,本专利技术具有设计合理、结构简单、易于加工、体积小、使用方便、一物多用等特点,因而,具有很好的推广使用价值。附图说明下面结合附图对本专利技术进一步说明。附图1为一种基于FPGA的LPC与SPI及I2C转换适配器的结构框图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步说明。实施例1如附图1所示,一种基于FPGA的LPC与SPI及I2C转换适配器,包括LPC模块、数据存储模块、接口选择模块、速率选择模块、地址映射模块、SPI模块和I2C模块,LPC模块分别连接地址映射模块和数据存储模块,地址映射模块连接接口选择模块,数据存储模块分别连接速率选择模块和接口选择模块,接口选择模块分别连接SPI模块和I2C模块。数据存储模块采用FIFO存储模块。该转换适配器利用FPGA的可编程特性在FPGA内部搭建LPC模块、SPI模块、I2C模块以及接口选择模块,通过接口选择模块选择连通SPI模块和I2C模块,通过调整LPC模块速率参数、SPI模块速率参数以及I2C模块速率参数来调整LPC接口的通信速率、SPI接口通信速率以及I2C接口的通信速率;利用FPGA内部模块的可重构性实现一个LPC接口与多个SPI接口及I2C接口的转换。实施例2一种基于FPGA的LPC与SPI及I2C转换适配器的实现方法,该本文档来自技高网...
【技术保护点】
一种基于FPGA的LPC与SPI及I2C转换适配器,其特征在于:包括LPC模块、数据存储模块、接口选择模块、速率选择模块、地址映射模块、SPI模块和I2C模块,所述LPC模块分别连接地址映射模块和数据存储模块,地址映射模块连接接口选择模块,数据存储模块分别连接速率选择模块和接口选择模块,接口选择模块分别连接SPI模块和I2C模块。
【技术特征摘要】
1.一种基于FPGA的LPC与SPI及I2C转换适配器,其特征在于:包括LPC模块、数据存储模块、接口选择模块、速率选择模块、地址映射模块、SPI模块和I2C模块,所述LPC模块分别连接地址映射模块和数据存储模块,地址映射模块连接接口选择模块,接口选择模块分别连接SPI模块和I2C模块,通过地址映射模块将LPC模块传输的地址编码成SPI模块和I2C模块的地址、并传输到接口选择模块;数据存储模块分别连接速率选择模块和接口选择模块,通过数据存储模块将LPC接口传输的数据转换成32位透明数据存入数据存储模块中、并传输到接口选择模块;接口选择模块根据接收到的地址及数据,选择连通SPI模块和/或I2C模块;通过SPI模块和I2C模块将数据存储模块中的数据分别以SPI接口和I2C接口的协议进行转换和传输;速率选择模块根据SPI接口和I2C接口的通信速率,通过硬件上的拨码开关或者LPC接口命令实现SPI...
【专利技术属性】
技术研发人员:路永轲,沈忱,冯磊,
申请(专利权)人:山东超越数控电子有限公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。