|
@@ -93,13 +93,15 @@ localparam [4:0] DeviceIdShReg = 5'h5;
|
|
|
localparam [4:0] DeviceIdMax2870 = 5'h6;
|
|
localparam [4:0] DeviceIdMax2870 = 5'h6;
|
|
|
localparam [4:0] DeviceIdGPIO = 5'h7;
|
|
localparam [4:0] DeviceIdGPIO = 5'h7;
|
|
|
|
|
|
|
|
|
|
+localparam [16:0] GpioInitWordNum = 17'd1;
|
|
|
localparam [16:0] Lmx2594InitWordNum = 17'd113;
|
|
localparam [16:0] Lmx2594InitWordNum = 17'd113;
|
|
|
localparam [16:0] DDSInitWordNum = 17'd37;
|
|
localparam [16:0] DDSInitWordNum = 17'd37;
|
|
|
localparam [16:0] MaxInitWordNum = 17'd6;
|
|
localparam [16:0] MaxInitWordNum = 17'd6;
|
|
|
|
|
|
|
|
-localparam [23:0] InitLMX2594Header = {1'h0, DeviceIdLmx2594, Lmx2594InitWordNum, 1'h1};
|
|
|
|
|
-localparam [23:0] InitDDSHeader = {1'h0, DeviceIdDDS, DDSInitWordNum, 1'h1};
|
|
|
|
|
-localparam [23:0] InitMAX2870Header = {1'h0, DeviceIdMax2870, MaxInitWordNum, 1'h1};
|
|
|
|
|
|
|
+localparam [23:0] InitGpioHeader = {1'h0, DeviceIdGPIO, GpioInitWordNum, 1'h1};
|
|
|
|
|
+localparam [23:0] InitLMX2594Header = {1'h0, DeviceIdLmx2594, Lmx2594InitWordNum, 1'h1};
|
|
|
|
|
+localparam [23:0] InitDDSHeader = {1'h0, DeviceIdDDS, DDSInitWordNum, 1'h1};
|
|
|
|
|
+localparam [23:0] InitMAX2870Header = {1'h0, DeviceIdMax2870, MaxInitWordNum, 1'h1};
|
|
|
localparam [3:0] LMXWordNum = 4'd14;
|
|
localparam [3:0] LMXWordNum = 4'd14;
|
|
|
localparam [1:0] DDSWordNum = 2'd3;
|
|
localparam [1:0] DDSWordNum = 2'd3;
|
|
|
localparam POTWordNum = 1'd1;
|
|
localparam POTWordNum = 1'd1;
|
|
@@ -119,7 +121,7 @@ assign Sck_o = (modeSel) ? SckQ : SckR;
|
|
|
assign Ss_o = (modeSel) ? SsQ : SsR;
|
|
assign Ss_o = (modeSel) ? SsQ : SsR;
|
|
|
assign Mosi0_o = (modeSel) ? mosi0Q : mosi0R;
|
|
assign Mosi0_o = (modeSel) ? mosi0Q : mosi0R;
|
|
|
|
|
|
|
|
-assign emptyFlagTx = (trCnt > 183) ? 1'b1 : 1'b0;
|
|
|
|
|
|
|
+assign emptyFlagTx = (trCnt > 187) ? 1'b1 : 1'b0;
|
|
|
assign QSPITotalWordNum = LMXWordNum + DDSWordNum + POTWordNum + DACWordNum + ATTWordNum + ShRegWordNum + MaxWordNum + GPIOWordNum;
|
|
assign QSPITotalWordNum = LMXWordNum + DDSWordNum + POTWordNum + DACWordNum + ATTWordNum + ShRegWordNum + MaxWordNum + GPIOWordNum;
|
|
|
|
|
|
|
|
//***********************************************
|
|
//***********************************************
|
|
@@ -235,18 +237,24 @@ always_comb begin
|
|
|
else begin
|
|
else begin
|
|
|
// if (!rstInit && locked) begin
|
|
// if (!rstInit && locked) begin
|
|
|
if (trCnt == 0) begin
|
|
if (trCnt == 0) begin
|
|
|
|
|
+ SPIdata = InitGpioHeader;
|
|
|
|
|
+ end
|
|
|
|
|
+ else if (trCnt == 2) begin
|
|
|
|
|
+ SPIdata = InitGpioHeader;
|
|
|
|
|
+ end
|
|
|
|
|
+ else if (trCnt == 4) begin
|
|
|
SPIdata = InitLMX2594Header;
|
|
SPIdata = InitLMX2594Header;
|
|
|
end
|
|
end
|
|
|
// else if (trCnt > 0 && trCnt < 114) begin
|
|
// else if (trCnt > 0 && trCnt < 114) begin
|
|
|
// SPIdata = pkt.data;
|
|
// SPIdata = pkt.data;
|
|
|
// end
|
|
// end
|
|
|
- else if (trCnt == 114) begin
|
|
|
|
|
|
|
+ else if (trCnt == 118) begin
|
|
|
SPIdata = InitDDSHeader;
|
|
SPIdata = InitDDSHeader;
|
|
|
end
|
|
end
|
|
|
- else if (trCnt == 152) begin
|
|
|
|
|
|
|
+ else if (trCnt == 156) begin
|
|
|
SPIdata = InitMAX2870Header;
|
|
SPIdata = InitMAX2870Header;
|
|
|
end
|
|
end
|
|
|
- else if (trCnt > 152 && trCnt < 159) begin
|
|
|
|
|
|
|
+ else if (trCnt > 156 && trCnt < 163) begin
|
|
|
// if (trCnt % 2 == 0) begin
|
|
// if (trCnt % 2 == 0) begin
|
|
|
// SPIdata = 32'haaaaaaaa;
|
|
// SPIdata = 32'haaaaaaaa;
|
|
|
// end
|
|
// end
|
|
@@ -256,7 +264,7 @@ always_comb begin
|
|
|
SPIdata = 32'haaaaaaaa;
|
|
SPIdata = 32'haaaaaaaa;
|
|
|
// SPIdata = pkt.data32;
|
|
// SPIdata = pkt.data32;
|
|
|
end
|
|
end
|
|
|
- else if (trCnt == 159) begin
|
|
|
|
|
|
|
+ else if (trCnt == 163) begin
|
|
|
SPIdata = AllDevQSPIHeader;
|
|
SPIdata = AllDevQSPIHeader;
|
|
|
end
|
|
end
|
|
|
else begin
|
|
else begin
|