A shared memory router has (N) inputs and (M) outputs and include (P) router modules each having (n) inputs connected to respective inputs of the router and (m) outputs connected to respective outputs of the router. Each router module includes an output memory having (Q*m) memory locations (Q>1), wherein each output of the module is associated with a unique set of (Q) locations and each location is able to store a data word. A data word received at any one of the (n) inputs can be written to any selected group of locations of the output memory. The data words are read from the (Q*m) locations in a predetermined order and the data word read from each location of the output memory is supplied to the output associated with that location.