发明名称 SPI与Localbus的互通方法及其应用
摘要 本发明公开了一种SPI与Localbus的互通方法,用于实现处理器的SPI接口与芯片的Localbus之间的通讯,用CPLD连接处理器的SPI接口和Localbus,以处理器的SPI接口为主机模式,以CPLD的SPI接口为从机模式,CPLD外接50MHz的有源晶振作为同步时钟;所述互通方法根据CPLD的SPI接口的片选信号变化而对处理器的SPI接口数据和Localbus作不同处理。本互通方法应用于网络语音交换设备。本发明通过在处理器的SPI接口和芯片的Localbus之间连接CPLD,将Localbus的读写操作全部转换到CPLD的SPI接口和处理器的SPI接口上操作,将芯片与处理器之间的连接做到最大程度的简化,提高了连接的可靠性,降低了开发难度,大大节约了系统成本。
申请公布号 CN104077258A 申请公布日期 2014.10.01
申请号 CN201410315594.5 申请日期 2014.07.03
申请人 成都智科通信技术有限公司 发明人 林雪峰
分类号 G06F13/38(2006.01)I;G06F13/40(2006.01)I 主分类号 G06F13/38(2006.01)I
代理机构 北京天奇智新知识产权代理有限公司 11340 代理人 杨春
主权项 一种SPI与Localbus的互通方法,用于实现处理器的SPI接口与芯片的Localbus之间的通讯,其特征在于:用CPLD连接处理器的SPI接口和Localbus,以处理器的SPI接口为主机模式,下称SPI主机接口,以CPLD的SPI接口为从机模式,下称SPI从机接口,CPLD外接50MHz的有源晶振作为同步时钟;所述互通方法如下:在SPI主机接口发起写操作命令时,首先发出第一个字节数据0x6F,第二个字节为操作芯片的寄存器地址,第三个字节为写入芯片当前地址寄存器的数据;对应CPLD中SPI从机接口和Localbus的写操作流程为:系统复位时将所有变量做初始化操作;SPI从机接口时钟频率为12MHz,以50MHz作为同步时钟,在SPI从机接口片选为低电平,同时SPI从机接口时钟处于上升沿后的稳定高电平状态下,将临时变量spi_cnt作加1操作;如果片选为高电平,则将spi_cnt清0,同时,片选为低电平状态时,SPI从机接口时钟处于上升沿后的稳定高电平状态时,按照spi_cnt的数值将SPI主机接口输出的稳定数据MOSI存入变量spi_in的对应位;在片选信号变化为高电平的稳定状态下,如果SPI主机接口的状态寄存器spi_cmd_cnt值为0,判断spi_in的值,如果是0x6F,将spi_cmd_cnt置为1,如果spi_cmd_cnt值为2,就将spi_cmd_cnt作清0处理,否则spi_cmd_cnt作加1处理;当spi_cmd_cnt值为1时,同时片选处于由电平到高电平变化后的第一个稳定时刻,将spi_in中的地址数据写入Localbus的地址总线;当spi_cmd_cnt值为2时,同时片选处于由电平到高电平变化后的第一个稳定时刻,将spi_in中的数据写入Localbus的数据总线;当spi_cmd_cnt值为0时,同时片选处于由电平到高电平变化后的第一个稳定时刻,Localbus的写信号置0,完成一次Localbus写操作;SPI从机接口发送Localbus到SPI主机接口的操作流程是其写操作的反向操作,区别在于SPI主机接口发送的第一个数据为0x2F。
地址 610041 四川省成都市高新区天华一路99号天府软件园B区7栋7层