基于FPGA的多路SPI接口并行数据采集系统 | 您所在的位置:网站首页 › fpga速度有多快 › 基于FPGA的多路SPI接口并行数据采集系统 |
基于 FPGA 的多路 SPI 接口并行数据采集系统
0 引言
随着数字技术发展与应用, 越来越多的芯片被用于数据采集与数字交换。 在 这些芯片中, SPI (Serial Peripheral Interface) 作为电路接口应用非常普遍,因而也 成为了很多单片机的标准配置。然而很多单片机的 SPI 接口硬件资源非常有限, 在需要同时使用较大数目 SPI 接口的数据采集系统中, 只能对 SPI 接口扩展并分 时复用,这样势必造成数据采集速度下降。 FPGA 具有高度并行的特点 [1] ,笔者 根据实际应用,设计了基于 FPGA 的多路 SPI 接口并行系统,应用于需多个 SPI 接口同步运行的数据采集系统中。
1 SPI 总线接口
SPI( 串行外围设备接口 ) 是 Motorola 公司推出的一种同步串行接口,具有传 送速率高、连接线少等特点,常用于 MCU 与外设数据交换 [2] 。 SPI 只需要 4 条 线就能完成主、从与外围器件全双工同步通信,这 4 条线分别为:串行时钟线 (SCK) 、主机输出从机输入线 (MOSI) 、主机输入从机输出线 (MISO) 、从机选择线 (CS) 。
SPI 系统分为主机和从机两类,其中主机提供 SPI 时钟信号和片选信号,作 为从机的输入;从机是接收 SPI 信号的任何集成电路,包括简单的 TTL 移位寄 存器或其他 MCU 等。时钟极性 (CPOL) 和时钟相位 (CPHA) 的配合完成一次数据 传输。其中, CPOL 表示时钟在空闲状态的电平, CPHA 决定数据在时钟的上升 沿传送还是下降沿传送。 CPOL 与 CPHA 的不同, 可以使 SPI 总线工作在 4 种模 式下。
(1) CPOL=0 , CPHA=0 : SCK 的空闲电平为低电平,数据在 SCK 的第一个 跳变沿被采集;
(2) CPOL=0 , CPHA=1 : SCK 的空闲电平为低电平,数据在 SCK 的第二个 跳变沿被采集;
(3) CPOL=1 , CPHA=0 : SCK 的空闲电平为高电平,数据在 SCK 的第一个 跳变沿被采集;
|
CopyRight 2018-2019 实验室设备网 版权所有 |