|
|
@@ -74,21 +74,28 @@ wire [8:0] selector;
|
|
|
//==========================================
|
|
|
// Parameters
|
|
|
//==========================================
|
|
|
-localparam [22:0] DECREMENT_LOAD_ORDER = 23'h400000; //23'b100 0000 0000 0000 0000 0000
|
|
|
-localparam [22:0] DECREMENT_DDS = 23'h80000; //23'b000 1000 0000 0000 0000 0000
|
|
|
-localparam [22:0] DECREMENT_GPIO = 23'h10000; //23'b000 0001 0000 0000 0000 0000
|
|
|
-localparam [22:0] DECREMENT_LMX = 23'h1000; //23'b000 0000 0001 0000 0000 0000
|
|
|
-localparam [22:0] DECREMENT_MAX = 23'h200; //23'b000 0000 0000 0010 0000 0000
|
|
|
-localparam [22:0] DECREMENT_SH_REG = 23'h40; //23'b000 0000 0000 0000 0100 0000
|
|
|
-localparam [22:0] DECREMENT_POT = 23'h8; //23'b000 0000 0000 0000 0000 1000
|
|
|
-localparam [22:0] DECREMENT_DAC = 23'h4; //23'b000 0000 0000 0000 0000 0100
|
|
|
-localparam [22:0] DECREMENT_ATT = 23'h2; //23'b000 0000 0000 0000 0000 0010
|
|
|
+// localparam [22:0] DECREMENT_DDS = 23'h80000; //23'b000 1000 0000 0000 0000 0000
|
|
|
+// localparam [22:0] DECREMENT_GPIO = 23'h10000; //23'b000 0001 0000 0000 0000 0000
|
|
|
+// localparam [22:0] DECREMENT_LMX = 23'h1000; //23'b000 0000 0001 0000 0000 0000
|
|
|
+// localparam [22:0] DECREMENT_MAX = 23'h200; //23'b000 0000 0000 0010 0000 0000
|
|
|
+// localparam [22:0] DECREMENT_SH_REG = 23'h40; //23'b000 0000 0000 0000 0100 0000
|
|
|
+// localparam [22:0] DECREMENT_POT = 23'h8; //23'b000 0000 0000 0000 0000 1000
|
|
|
+// localparam [22:0] DECREMENT_DAC = 23'h4; //23'b000 0000 0000 0000 0000 0100
|
|
|
+// localparam [22:0] DECREMENT_ATT = 23'h2; //23'b000 0000 0000 0000 0000 0010
|
|
|
|
|
|
+localparam [22:0] DECREMENT_LMX = 23'h40000; //23'b000 0100 0000 0000 0000 0000
|
|
|
+localparam [22:0] DECREMENT_GPIO = 23'h10000; //23'b000 0001 0000 0000 0000 0000
|
|
|
+localparam [22:0] DECREMENT_DDS = 23'h1000; //23'b000 0000 0001 0000 0000 0000
|
|
|
+localparam [22:0] DECREMENT_MAX = 23'h200; //23'b000 0000 0000 0010 0000 0000
|
|
|
+localparam [22:0] DECREMENT_SH_REG = 23'h40; //23'b000 0000 0000 0000 0100 0000
|
|
|
+localparam [22:0] DECREMENT_POT = 23'h8; //23'b000 0000 0000 0000 0000 1000
|
|
|
+localparam [22:0] DECREMENT_DAC = 23'h4; //23'b000 0000 0000 0000 0000 0100
|
|
|
+localparam [22:0] DECREMENT_ATT = 23'h2; //23'b000 0000 0000 0000 0000 0010
|
|
|
//==========================================
|
|
|
// Assignments
|
|
|
//==========================================
|
|
|
-assign lmxOr = |dataSpiReg[15:12];
|
|
|
-assign ddsOr = |dataSpiReg[21:19];
|
|
|
+assign lmxOr = |dataSpiReg[21:18];
|
|
|
+assign ddsOr = |dataSpiReg[14:12];
|
|
|
assign potOr = |dataSpiReg[4:3];
|
|
|
assign dacOr = dataSpiReg[2];
|
|
|
assign attOr = dataSpiReg[1];
|
|
|
@@ -97,7 +104,7 @@ assign maxOr = |dataSpiReg[10:9];
|
|
|
assign gpioOr = |dataSpiReg[17:16];
|
|
|
assign loadOrderOr = dataSpiReg[22];
|
|
|
|
|
|
-assign selector = {loadOrderOr,ddsOr, gpioOr, lmxOr, maxOr, shRegOr, potOr, dacOr, attOr};
|
|
|
+assign selector = {lmxOr, gpioOr, ddsOr, maxOr, shRegOr, potOr, dacOr, attOr};
|
|
|
|
|
|
//==========================================================================//
|
|
|
// CODING //
|
|
|
@@ -133,27 +140,23 @@ always @(posedge Clk_i) begin
|
|
|
else if (ValDataFromSpi_i) begin
|
|
|
if ((dataSpiReg == 0) && (DataFromSpi_i[23] == 1'b1)) begin
|
|
|
dataSpiReg[22:1] <= DataFromSpi_i[22:1];
|
|
|
- LmxWordNum_o <= DataFromSpi_i[15:12];
|
|
|
- DdsWordNum_o <= DataFromSpi_i[21:19];
|
|
|
+ LmxWordNum_o <= DataFromSpi_i[21:18];
|
|
|
+ DdsWordNum_o <= DataFromSpi_i[14:12];
|
|
|
ValWordNum_o <= 1'b1;
|
|
|
end
|
|
|
else begin
|
|
|
casez(selector)
|
|
|
- 9'b1????????: begin //LoadOrder
|
|
|
- dataSpiReg <= dataSpiReg - DECREMENT_LOAD_ORDER;
|
|
|
- ValLoadOrder_o <= 1'b1;
|
|
|
- end
|
|
|
- 9'b01???????: begin //DDS
|
|
|
- dataSpiReg <= dataSpiReg - DECREMENT_DDS;
|
|
|
- ValDdsDataToFifo_o <= 1'b1;
|
|
|
+ 8'b1???????: begin //LMX
|
|
|
+ dataSpiReg <= dataSpiReg - DECREMENT_LMX;
|
|
|
+ ValLmxDataToFifo_o <= 1'b1;
|
|
|
end
|
|
|
9'b001??????: begin //GPIO
|
|
|
dataSpiReg <= dataSpiReg - DECREMENT_GPIO;
|
|
|
ValGpioDataToFifo_o <= 1'b1;
|
|
|
end
|
|
|
- 9'b0001?????: begin //LMX
|
|
|
- dataSpiReg <= dataSpiReg - DECREMENT_LMX;
|
|
|
- ValLmxDataToFifo_o <= 1'b1;
|
|
|
+ 8'b001?????: begin //DDS
|
|
|
+ dataSpiReg <= dataSpiReg - DECREMENT_DDS;
|
|
|
+ ValDdsDataToFifo_o <= 1'b1;
|
|
|
end
|
|
|
9'b00001????: begin //MAX
|
|
|
dataSpiReg <= dataSpiReg - DECREMENT_MAX;
|