| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- //////////////////////////////////////////////////////////////////////////////////
- // Company: TAIR
- // Engineer:
- //
- // Create Date: 10/30/2023 11:24:31 AM
- // Design Name:
- // Module Name: SpiLinesMuxer
- // Project Name: S5443_V3_FPGA3
- // Target Devices: BOARD: BY5443v3. FPGA: xc7s25csga225-2
- // Tool Versions:
- // Description: This module multiplexing Spi output signals based on an settings.
- //
- // Dependencies:
- //
- // Revision:
- // Revision 1.0 - File Created
- // Additional Comments:
- //
- ////////////////////////////////////////////////////////////////////////////////////
- module SpiLinesMuxer (
- input SsR_i,
- input SsQ_i,
- input SckR_i,
- input SckQ_i,
- input Mosi0R_i,
- input Mosi0Q_i,
- input ChipSelFpga_i,
- input ChipSelFlash_i,
- input Assel_i,
- input SpiMode_i,
- output Ss_o,
- output SsFlash_o,
- output Sck_o,
- output Mosi0_o
- );
- //================================================================================
- // REG/WIRE
- //================================================================================
- wire ssMuxed;
- wire sckMuxed;
- wire mosi0Muxed;
- //================================================================================
- // ASSIGNMENTS
- //================================================================================
- assign sckMuxed = (SpiMode_i) ? SckQ_i : SckR_i;
- assign ssMuxed = (SpiMode_i) ? SsQ_i : SsR_i;
- assign mosi0Muxed = (SpiMode_i) ? Mosi0Q_i : Mosi0R_i;
- assign Ss_o = (Assel_i) ? (ChipSelFpga_i ? ssMuxed : 1'b1) : ChipSelFpga_i;
- assign SsFlash_o = (Assel_i) ? (ChipSelFlash_i ? ssMuxed:1'b1) : ChipSelFlash_i;
- assign Sck_o = sckMuxed;
- assign Mosi0_o = mosi0Muxed;
- endmodule
|