在嵌入式系统中,PL(Programmable Logic)和PS(Processing System)通常是分离的。PS是基于ARM处理器和与之关联的外设构建的,而PL是一些可编程逻辑资源,如FPGA。它们通常通过AXI总线相互连接。
AXI总线是一种高性能、高带宽的总线体系结构,由ARM公司开发。在PL和PS之间进行通信和传输时,AXI总线是首选的接口,因为它是在ARM体系结构之上构建的,因此AXI和PS之间具有较好的兼容性。
AXI总线在PL和PS之间提供了一种高速、可靠的数据传输方式,使得设计师可以更容易地在两个域之间进行交互。AXI总线是搭载在不同连接器上的,所以在使用AXI总线传输数据时,还需要选择合适的组件进行建立连接和协议设置。
ZYNQ(赛灵思产品)是一系列面向高性能嵌入式应用的集成器系列,它提供了一个统一的硬件/软件编程平台,可通过多种方式与处理系统互联,以快速实现平台特定功能的设计。其内部结构包括ARM CPU和FPGA,PL和PS之间的通信可以通过在这些芯片上和软件上设置的方式实现。
DMA(Direct Memory Access)是指芯片内一个用于控制系统内部数据流的功能单元。DMA控制器可以将处理器与I / O设备之间的数据传输直接从存储器中移动,而无需经过CPU的干预,这比使用CPU来完成数据传输要快得多。
当PL和PS之间的数据传输量较大时,使用DMA控制器可以在数据传输期间减轻CPU负担,从而提高整个嵌入式系统的性能。此外,DMA控制器还可以在数据传输过程中实现数据的缓存和预处理,减少数据传输时出现的延迟和错误发生的可能性。
除了上述介绍的几种选择外,还有一些其他的选择可以用于PL向PS传输,例如I2C、SPI和UART等传输协议和接口。这些选择在特定的嵌入式系统中可能更适用,可以根据具体的需求来进行选择。
在嵌入式系统中,PL向PS传输的选择因系统特性不同而有所不同。 AXI总线是最流行的接口标准,DMA控制器提供了一种快速处理大量数据的方法,而集成化芯片和其他选择,则可以根据特定的需求来进行选择。