如果在FPGA设计中,需要多端口,大数据量的交换,那么交换矩阵则是一个不错的实现方案。交换矩阵使用的目的主要有几个,一,灵活的端口转发。通过交换矩阵灵活实现数据流的灵活交换,减少外部负责控制。 二,高效的转发效率,交换矩阵能够实现通常单一总线不能达到的转发效率,满足高吞吐量的系统的需要。三,系统设计以交换矩阵为中心,便于IP集成和模块复用。
交换矩阵的实现方案较为复杂,最早的交换沿袭了共享总线式的架构,因此对于某个端口需要传输,则其他端口只能阻塞,等待总线空闲后再进行传输。而交换矩阵则是一个全互联的结构。如下图所示,如有4个输入,4个输出的交换矩阵,可认为是一个4端口的交换单元,每个端口包含一个发送接口和一个接收模块,如端口0就包含发送模块m0和接收模块s0。
假设每路传输的速率为N,则整个交换矩阵的传输速率