|
|
@@ -25,7 +25,7 @@ module S5443_3Top
|
|
|
parameter CmdRegWidth = 32,
|
|
|
parameter AddrRegWidth = 12,
|
|
|
parameter STAGES = 3,
|
|
|
- parameter SpiNum = 1
|
|
|
+ parameter SpiNum = 7
|
|
|
|
|
|
)
|
|
|
(
|
|
|
@@ -46,12 +46,13 @@ module S5443_3Top
|
|
|
output [SpiNum-1:0] Mosi0_o,
|
|
|
inout [SpiNum-1:0] Mosi1_io,//inout: when RSPI mode, input; when QSPI mode output;
|
|
|
output [SpiNum-1:0] Mosi2_o,
|
|
|
- output [SpiNum-1:0] Mosi3_o,
|
|
|
+ output [SpiNum-2:0] Mosi3_o,
|
|
|
output [SpiNum-1:0] Ss_o,
|
|
|
output [SpiNum-1:0] SsFlash_o,
|
|
|
output [SpiNum-1:0] Sck_o,
|
|
|
output [SpiNum-1:0] SpiRst_o,
|
|
|
output [SpiNum-1:0] SpiDir_o,
|
|
|
+ output LoCsReg_o,
|
|
|
output LD_o
|
|
|
|
|
|
);
|
|
|
@@ -306,15 +307,23 @@ module S5443_3Top
|
|
|
assign Mosi1_io[5] =(SpiDir_o[5])?mosi1[5]:1'bz;
|
|
|
assign Mosi1_io[6] =(SpiDir_o[6])?mosi1[6]:1'bz;
|
|
|
assign Mosi2_o = mosi2;
|
|
|
- assign Mosi3_o = mosi3;
|
|
|
-
|
|
|
- assign Ss_o[0] = (assel[0]) ? (chipSelFpga[0] ? ssMuxed[0] : 1'b1) : chipSelFpga[0];
|
|
|
- assign Ss_o[1] = (assel[1]) ? (chipSelFpga[1] ? ssMuxed[1] : 1'b1) : chipSelFpga[1];
|
|
|
- assign Ss_o[2] = (assel[2]) ? (chipSelFpga[2] ? ssMuxed[2] : 1'b1) : chipSelFpga[2];
|
|
|
- assign Ss_o[3] = (assel[3]) ? (chipSelFpga[3] ? ssMuxed[3] : 1'b1) : chipSelFpga[3];
|
|
|
- assign Ss_o[4] = (assel[4]) ? (chipSelFpga[4] ? ssMuxed[4] : 1'b1) : chipSelFpga[4];
|
|
|
- assign Ss_o[5] = (assel[5]) ? (chipSelFpga[5] ? ssMuxed[5] : 1'b1) : chipSelFpga[5];
|
|
|
- assign Ss_o[6] = (assel[6]) ? (chipSelFpga[6] ? ssMuxed[6] : 1'b1) : chipSelFpga[6];
|
|
|
+ assign Mosi3_o[0] = mosi3[0];
|
|
|
+ assign Mosi3_o[1] = mosi3[1];
|
|
|
+ assign Mosi3_o[2] = mosi3[2];
|
|
|
+ assign Mosi3_o[3] = mosi3[3];
|
|
|
+ assign Mosi3_o[4] = mosi3[4];
|
|
|
+ // assign Mosi3_o[5] = mosi3[5];
|
|
|
+ assign Mosi3_o[5] = mosi3[6];// Mosi6
|
|
|
+
|
|
|
+
|
|
|
+ assign Ss_o[0] = (assel[0]) ? (chipSelFpga[0] ? ssMuxed[0] : 1'b1) : chipSelFpga[0];
|
|
|
+ assign Ss_o[1] = (assel[1]) ? (chipSelFpga[1] ? ssMuxed[1] : 1'b1) : chipSelFpga[1];
|
|
|
+ assign Ss_o[2] = (assel[2]) ? (chipSelFpga[2] ? ssMuxed[2] : 1'b1) : chipSelFpga[2];
|
|
|
+ assign Ss_o[3] = (assel[3]) ? (chipSelFpga[3] ? ssMuxed[3] : 1'b1) : chipSelFpga[3];
|
|
|
+ assign Ss_o[4] = (assel[4]) ? (chipSelFpga[4] ? ssMuxed[4] : 1'b1) : chipSelFpga[4];
|
|
|
+ assign Ss_o[5] = (assel[5]) ? (chipSelFpga[5] ? ssMuxed[5] : 1'b1) : chipSelFpga[5];
|
|
|
+ assign Ss_o[6] = (assel[6]) ? (chipSelFpga[6] ? ssMuxed[6] : 1'b1) : chipSelFpga[6];
|
|
|
+ assign LoCsReg_o = (assel[5]) ? (chipSelFpga[5] ? ssMuxed[5] : 1'b1) : chipSelFpga[5];
|
|
|
|
|
|
assign SsFlash_o[0] = (assel[0]) ? (chipSelFlash[0] ? ssMuxed[0] : 1'b1) : chipSelFlash[0];
|
|
|
assign SsFlash_o[1] = (assel[1]) ? (chipSelFlash[1] ? ssMuxed[1] : 1'b1) : chipSelFlash[1];
|
|
|
@@ -949,6 +958,17 @@ module S5443_3Top
|
|
|
);
|
|
|
end
|
|
|
endgenerate
|
|
|
+
|
|
|
+ QuadSPIs QuadSPIs (
|
|
|
+ .Clk_i(spiClkBus[0]),
|
|
|
+ .Rst_i(initRstGen[0] | !spiMode[0]),
|
|
|
+ .Sck_i(sckQ[0]),
|
|
|
+ .Ss_i(ssQ[0]),
|
|
|
+ .Mosi0_i(mosi0Q[0]),
|
|
|
+ .Mosi1_i(mosi1[0]),
|
|
|
+ .Mosi2_i(mosi2[0]),
|
|
|
+ .Mosi3_i(mosi3[0])
|
|
|
+ );
|
|
|
|
|
|
InitRst InitRst_inst
|
|
|
(
|