|
|
@@ -111,6 +111,8 @@ localparam SpiTxRxEn5 = 1'b0;
|
|
|
localparam SpiTxRxEn6 = 1'b0;
|
|
|
|
|
|
localparam [15:0] SpiTxRxEnRegData = {8'h0, SpiTxRxEn6, SpiTxRxEn5, SpiTxRxEn4, SpiTxRxEn3, SpiTxRxEn2, SpiTxRxEn1, SpiTxRxEn0};
|
|
|
+localparam [15:0] SpiTxRxEnRegDataSet = {8'h0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0};
|
|
|
+localparam [15:0] SpiTxRxEnRegDataClr = {8'h0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b0, 1'b1};
|
|
|
|
|
|
|
|
|
|
|
|
@@ -209,6 +211,8 @@ localparam [10:0] Spi6RxFifoAddr = BaseAddr6 + 28;
|
|
|
//***********************************************
|
|
|
|
|
|
localparam SpiTxRxEnAddr = 11'h780;
|
|
|
+localparam SpiTxRxEnSetAddr = 11'h782;
|
|
|
+localparam SpiTxRxEnClrAddr = 11'h784;
|
|
|
|
|
|
//***********************************************
|
|
|
// GPIO Reg Adress
|
|
|
@@ -219,8 +223,8 @@ localparam GPIOAddr = 11'hFF0;
|
|
|
//***********************************************
|
|
|
// ASSIGNS
|
|
|
//***********************************************
|
|
|
-assign SmcBe_i = (tb_cnt >0 && tb_cnt <=44) ? 2'b00 : 2'b11;
|
|
|
-assign SmcAmsN_i = (tb_cnt > 0 && tb_cnt <= 44) ? 1'b0 : 1'b1;
|
|
|
+assign SmcBe_i = (tb_cnt >0 && tb_cnt <=48) ? 2'b00 : 2'b11;
|
|
|
+assign SmcAmsN_i = (tb_cnt > 0 && tb_cnt <= 48) ? 1'b0 : 1'b1;
|
|
|
assign smcData = SmcData_i;
|
|
|
assign mosi1_io = (!Mode0) ? mosi0_o : 1'bz;
|
|
|
|
|
|
@@ -259,7 +263,7 @@ always @(posedge Clk_i) begin
|
|
|
SmcAwe_i <= 1'b1;
|
|
|
end
|
|
|
else begin
|
|
|
- if (tb_cnt > 0 && tb_cnt <= 44) begin
|
|
|
+ if (tb_cnt > 0 && tb_cnt <= 48) begin
|
|
|
if (tb_cnt % 2 != 0) begin
|
|
|
SmcAwe_i <= 1'b1;
|
|
|
end
|
|
|
@@ -270,17 +274,12 @@ always @(posedge Clk_i) begin
|
|
|
end
|
|
|
end
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
always @(posedge Clk_i) begin
|
|
|
if (Rst_i) begin
|
|
|
SmcAddr_i <= 0;
|
|
|
end
|
|
|
else begin
|
|
|
- if (tb_cnt < 27) begin
|
|
|
+ if (tb_cnt < 31) begin
|
|
|
case (tb_cnt)
|
|
|
0: begin
|
|
|
SmcAddr_i <= BaseAddr0;
|
|
|
@@ -309,6 +308,12 @@ always @(posedge Clk_i) begin
|
|
|
23 : begin
|
|
|
SmcAddr_i <= SpiTxRxEnAddr;
|
|
|
end
|
|
|
+ 25 : begin
|
|
|
+ SmcAddr_i <= SpiTxRxEnSetAddr;
|
|
|
+ end
|
|
|
+ 27 : begin
|
|
|
+ SmcAddr_i <= SpiTxRxEnClrAddr;
|
|
|
+ end
|
|
|
endcase
|
|
|
end
|
|
|
else begin
|
|
|
@@ -328,7 +333,7 @@ always @(posedge Clk_i) begin
|
|
|
SmcData_i <= 16'h0;
|
|
|
end
|
|
|
else begin
|
|
|
- if (tb_cnt < 27 ) begin
|
|
|
+ if (tb_cnt < 31 ) begin
|
|
|
case (tb_cnt)
|
|
|
0 : begin
|
|
|
SmcData_i <= Spi0CtrlRegData;
|
|
|
@@ -357,6 +362,12 @@ always @(posedge Clk_i) begin
|
|
|
23 : begin
|
|
|
SmcData_i <= SpiTxRxEnRegData;
|
|
|
end
|
|
|
+ 25 : begin
|
|
|
+ SmcData_i <= SpiTxRxEnRegDataSet;
|
|
|
+ end
|
|
|
+ 27 : begin
|
|
|
+ SmcData_i <= SpiTxRxEnRegDataClr;
|
|
|
+ end
|
|
|
endcase
|
|
|
end
|
|
|
else begin
|