1.一种协议转换器模块系统(1),其特征在于,所述协议转换器模块系统(1)用于使用虚拟地址映射将芯片内部总线读取或写入传输转换为相应的SPI总线读取或写入传输,所述虚拟地址映射是所述协议转换器模块系统(1)的ADDR信号译码的结果,其中所述协议转换器模块系统(1)包括:至少一个虚拟地址解码器(8),所述虚拟地址解码器用于将所述芯片内部总线(7)的ADDR信号译码为定义SPI传输参数的切片;以及SPI状态机(9),所述SPI状态机(9)用于根据选择的SPI传输参数管理SPI传输,而1位宽度的所述ADDR信号的至少一个切片定义传输结束END,如果设置了所述位,则在传输后去使能SS_N线,否则保持SS_N线使能。
2.根据权利要求1所述的协议转换器模块系统(1),其特征在于,所述ADDR信号的另一切片定义SPI传输的数据宽度DWID,其指定了要通过SPI传输的数据的位的数量。
3.根据权利要求1所述的协议转换器模块系统(1),其特征在于,所述ADDR信号的另一切片定义并行模式PMOD,其指定了SPI双向数据线的数量。
4.根据权利要求1所述的协议转换器模块系统(1),其特征在于,所述ADDR信号的另一切片定义时钟分频系数CLKDIV,其指定了所述芯片内部时钟的CLK与SPI时钟的SCLK的时钟比。
5.根据权利要求1所述的协议转换器模块系统(1),其特征在于,所述ADDR信号的另一切片定义从机选择SS,其指定了多个SPI从机(5)的数量,而每个SPI从机(5)具有自己的SS_N信号。
6.根据权利要求1所述的协议转换器模块系统(1),其特征在于,所述ADDR信号的另一切片定义暂停PAUS,其确保对于给定数量的SPI时钟在两次SPI传输之间的暂停。
7.根据权利要求1所述的协议转换器模块系统(1),其特征在于,所述ADDR信号的另一切片定义时钟极性CPOL,其选择时钟极性SPI协议实现细节并具有1位宽度。
8.根据权利要求1所述的协议转换器模块系统(1),其特征在于,所述ADDR信号的另一切片定义时钟相位CPHA,其选择时钟相位SPI协议实现细节并具有1位宽度。
9.根据权利要求1至8中任一项所述的协议转换器模块系统(1),其特征在于,所述协议转换器模块系统(1)还包括:总线数据级(11),所述总线数据级(11)用于从所述芯片内部总线(7)或向所述芯片内部总线(7)采集或呈现写入或读取的数据;
总线状态机(10),所述总线状态机(10)用于采集所述芯片内部总线传输,控制所述总线数据级(11)并与所述SPI状态机(9)交互;
SPI时钟发生器,所述SPI时钟发生器用于根据选择的CLKDIV产生SCLK信号;以及SPI移位寄存器(12),所述SPI移位寄存器(12)用于根据选择的传输模式PMODE、时钟极性CPOL和时钟相位CPHA,产生或采集用于写入或者读取的SPI数据信号。
10.根据权利要求1至8中任一项所述的协议转换器模块系统(1),其特征在于,在所述协议转换器模块系统(1)设计时,假设函数 定义以下符号,其计算编码n个不同值所需的位数:SPIDWID定义SPI双向数据线的最大数量,SPISSWID定义SPI从机的数量,BUSDWID定义芯片内部总线数据宽度,BUSAWID定义芯片内部总线地址宽度,以及CLKDIVWIDCLKDIVWID定义支持高达2 ‑1的时钟分频的时钟分频说明符。
11.一种使用根据权利要求1至8中任一项所述的协议转换器模块系统(1),其特征在于,用于优化运行在片上系统SoC上的公共芯片内部总线协议和运行在外部组件上的SPI协议之间的协议转换的方法,所述方法包括以下用于读取操作的步骤:将ADDR信号从总线主机(2)传输到所述协议转换器模块系统(1)的虚拟地址解码器(8),并提取提供给SPI状态机(9)的SPI传输参数;
由于是读取传输,对所述协议转换器模块系统(1)的MISO引脚进行采样;以及当读取所有位时,将SPI移位寄存器(12)的总线读取值复制到总线数据级(11),并将所述芯片内部总线(7)上的读取值呈现在RDATA线上;
在READY上以高电平结束。
12.一种使用根据前述权利要求所述的协议转换器模块系统(1)来优化运行在片上系统SoC上的公共芯片内部总线协议和运行在外部组件上的SPI协议之间的协议转换的方法,其特征在于,所述方法包括以下用于写入操作的步骤:将ADDR信号从总线主机(2)传输到所述协议转换器模块系统(1)的虚拟地址解码器(8),并提取提供给SPI状态机(9)的SPI传输参数;
通过总线数据级(11)将WDATA信号传输到SPI移位寄存器(12);以及
由于是写入传输,将所述协议转换器模块系统(1)的MOSI引脚上的数据位移出。