From 3f12558f0ea2168e43c7958582573200f8588ce0 Mon Sep 17 00:00:00 2001
From: JobvanWee <wee@astron.nl>
Date: Tue, 17 May 2022 14:19:05 +0200
Subject: [PATCH] Save

---
 .../libraries/ddrctrl/src/vhdl/ddrctrl.vhd    | 41 ++++++++++---------
 .../ddrctrl/src/vhdl/ddrctrl_controller.vhd   | 26 ++++++------
 .../ddrctrl/src/vhdl/ddrctrl_input.vhd        | 19 +++++----
 .../ddrctrl/src/vhdl/ddrctrl_input_repack.vhd |  2 +-
 4 files changed, 45 insertions(+), 43 deletions(-)

diff --git a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl.vhd b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl.vhd
index 0517a0d491..0d4f4cd8b7 100644
--- a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl.vhd
+++ b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl.vhd
@@ -112,24 +112,24 @@ ARCHITECTURE str OF ddrctrl IS
   SIGNAL    s_last_burstsize    : NATURAL                                   := c_last_burstsize;
 
   -- signals for connecting the components
-  SIGNAL    ctrl_clk          : STD_LOGIC;
-  SIGNAL    ctrl_rst          : STD_LOGIC;
-  SIGNAL    rst_ddrctrl_input : STD_LOGIC;
-  SIGNAL    out_of            : NATURAL                                     := 0;
-  SIGNAL    out_sosi          : t_dp_sosi                                   := c_dp_sosi_init;
-  SIGNAL    out_adr           : NATURAL                                     := 0;
-  SIGNAL    dvr_mosi          : t_mem_ctlr_mosi                             := c_mem_ctlr_mosi_rst;
-  SIGNAL    dvr_miso          : t_mem_ctlr_miso                             := c_mem_ctlr_miso_rst;
-  SIGNAL    wr_sosi           : t_dp_sosi                                   := c_dp_sosi_init;
-  SIGNAL    rd_siso           : t_dp_siso                                   := c_dp_siso_rst;
-  SIGNAL    rd_sosi           : t_dp_sosi                                   := c_dp_sosi_init;
-  SIGNAL    stop              : STD_LOGIC;
-  SIGNAL    wr_fifo_usedw     : STD_LOGIC_VECTOR(c_wr_fifo_uw_w-1 DOWNTO 0);
-  SIGNAL    rd_fifo_usedw     : STD_LOGIC_VECTOR(c_rd_fifo_uw_w-1 DOWNTO 0);
-  SIGNAL    rd_ready          : STD_LOGIC;
-  SIGNAL    inp_bsn_adr       : NATURAL;
-  SIGNAL    bsn_co            : STD_LOGIC_VECTOR(c_dp_stream_bsn_w-1 DOWNTO 0);
-  SIGNAL    data_stopped      : STD_LOGIC;
+  SIGNAL    ctrl_clk              : STD_LOGIC;
+  SIGNAL    ctrl_rst              : STD_LOGIC;
+  SIGNAL    rst_ddrctrl_input_ac  : STD_LOGIC;
+  SIGNAL    out_of                : NATURAL                                     := 0;
+  SIGNAL    out_sosi              : t_dp_sosi                                   := c_dp_sosi_init;
+  SIGNAL    out_adr               : NATURAL                                     := 0;
+  SIGNAL    dvr_mosi              : t_mem_ctlr_mosi                             := c_mem_ctlr_mosi_rst;
+  SIGNAL    dvr_miso              : t_mem_ctlr_miso                             := c_mem_ctlr_miso_rst;
+  SIGNAL    wr_sosi               : t_dp_sosi                                   := c_dp_sosi_init;
+  SIGNAL    rd_siso               : t_dp_siso                                   := c_dp_siso_rst;
+  SIGNAL    rd_sosi               : t_dp_sosi                                   := c_dp_sosi_init;
+  SIGNAL    stop                  : STD_LOGIC;
+  SIGNAL    wr_fifo_usedw         : STD_LOGIC_VECTOR(c_wr_fifo_uw_w-1 DOWNTO 0);
+  SIGNAL    rd_fifo_usedw         : STD_LOGIC_VECTOR(c_rd_fifo_uw_w-1 DOWNTO 0);
+  SIGNAL    rd_ready              : STD_LOGIC;
+  SIGNAL    inp_bsn_adr           : NATURAL;
+  SIGNAL    bsn_co                : STD_LOGIC_VECTOR(c_dp_stream_bsn_w-1 DOWNTO 0);
+  SIGNAL    data_stopped          : STD_LOGIC;
 
 BEGIN
 
@@ -149,7 +149,8 @@ BEGIN
   )
   PORT MAP(
     clk                       => clk,
-    rst                       => rst_ddrctrl_input,
+    rst                       => rst,
+    rst_ddrctrl_input_ac      => rst_ddrctrl_input_ac,
     in_sosi_arr               => in_sosi_arr,
     in_stop                   => stop,
     out_sosi                  => out_sosi,
@@ -285,7 +286,7 @@ BEGIN
     inp_adr                   => out_adr,
     inp_bsn_adr               => inp_bsn_adr,
     inp_data_stopped          => data_stopped,
-    rst_ddrctrl_input         => rst_ddrctrl_input,
+    rst_ddrctrl_input_ac      => rst_ddrctrl_input_ac,
 
     -- io_ddr
     dvr_mosi                  => dvr_mosi,
diff --git a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_controller.vhd b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_controller.vhd
index edd0f6c160..0fb19322f7 100644
--- a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_controller.vhd
+++ b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_controller.vhd
@@ -64,7 +64,7 @@ ENTITY ddrctrl_controller IS
     inp_adr                   : IN  NATURAL;
     inp_bsn_adr               : IN  NATURAL;
     inp_data_stopped          : IN  STD_LOGIC;
-    rst_ddrctrl_input         : OUT STD_LOGIC;
+    rst_ddrctrl_input_ac      : OUT STD_LOGIC;
 
     -- io_ddr
     dvr_mosi                  : OUT t_mem_ctlr_mosi;
@@ -112,7 +112,7 @@ ARCHITECTURE rtl OF ddrctrl_controller IS
   last_adr_to_write_to        : STD_LOGIC_VECTOR(c_adr_w-1 DOWNTO 0);
   stop_burstsize              : NATURAL;
   stopped                     : STD_LOGIC;
-  rst_ddrctrl_input           : STD_LOGIC;
+  rst_ddrctrl_input_ac        : STD_LOGIC;
 
   -- writing signals
   wr_burst_en                 : STD_LOGIC;
@@ -174,7 +174,7 @@ BEGIN
         v.wr_sosi.valid         := '0';
         v.state                 := WAIT_FOR_SOP;
         v.wr_burst_en           := '1';
-        v.rst_ddrctrl_input     := '1';
+        v.rst_ddrctrl_input_ac  := '1';
       ELSE
         v.dvr_mosi.burstbegin   := '0';
       END IF;
@@ -187,14 +187,14 @@ BEGIN
 
 
     WHEN WAIT_FOR_SOP =>
-      v.dvr_mosi.burstbegin := '0';
-      v.rst_ddrctrl_input := '0';
+      v.dvr_mosi.burstbegin   := '0';
+      v.rst_ddrctrl_input_ac  := '0';
       IF q_reg.started = '0' AND inp_sosi.eop = '1' THEN
-        v.wr_sosi.valid := '1';
+        v.wr_sosi.valid       := '1';
       ELSIF inp_sosi.sop = '1' THEN
-        v.state := WRITING;
+        v.state               := WRITING;
       ELSE
-        v.wr_sosi.valid := '0';
+        v.wr_sosi.valid       := '0';
       END IF;
 
 
@@ -400,10 +400,10 @@ BEGIN
   END PROCESS;
 
   -- fill outputs
-  dvr_mosi          <= q_reg.dvr_mosi;
-  wr_sosi           <= q_reg.wr_sosi;
-  stop_out          <= q_reg.stopped;
-  outp_bsn          <= q_reg.outp_bsn;
-  rst_ddrctrl_input <= q_reg.rst_ddrctrl_input OR rst;
+  dvr_mosi              <= q_reg.dvr_mosi;
+  wr_sosi               <= q_reg.wr_sosi;
+  stop_out              <= q_reg.stopped;
+  outp_bsn              <= q_reg.outp_bsn;
+  rst_ddrctrl_input_ac  <= q_reg.rst_ddrctrl_input_ac OR rst;
 
 END rtl;
diff --git a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input.vhd b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input.vhd
index c27c54acd3..ba0e21be76 100644
--- a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input.vhd
+++ b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input.vhd
@@ -53,14 +53,15 @@ ENTITY ddrctrl_input IS
     g_block_size        : NATURAL
   );
   PORT (
-    clk               : IN  STD_LOGIC := '0';
-    rst               : IN  STD_LOGIC;
-    in_sosi_arr       : IN  t_dp_sosi_arr;                              -- input data
-    in_stop           : IN  STD_LOGIC;
-    out_sosi          : OUT t_dp_sosi;                                  -- output data
-    out_adr           : OUT NATURAL;
-    out_bsn_adr       : OUT NATURAL;
-    out_data_stopped  : OUT STD_LOGIC
+    clk                   : IN  STD_LOGIC := '0';
+    rst                   : IN  STD_LOGIC;
+    rst_ddrctrl_input_ac  : IN  STD_LOGIC;
+    in_sosi_arr           : IN  t_dp_sosi_arr;                              -- input data
+    in_stop               : IN  STD_LOGIC;
+    out_sosi              : OUT t_dp_sosi;                                  -- output data
+    out_adr               : OUT NATURAL;
+    out_bsn_adr           : OUT NATURAL;
+    out_data_stopped      : OUT STD_LOGIC
   );
 END ddrctrl_input;
 
@@ -119,7 +120,7 @@ BEGIN
   )
   PORT MAP(
     clk               => clk,
-    rst               => rst,
+    rst               => rst_ddrctrl_input_ac,
     in_sosi           => sosi_rp_ac,                                    -- input data
     in_data_stopped   => data_stopped_rp_ac,
     out_sosi          => out_sosi,                                      -- output data
diff --git a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input_repack.vhd b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input_repack.vhd
index a385fc82c9..b359172bc8 100644
--- a/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input_repack.vhd
+++ b/applications/lofar2/libraries/ddrctrl/src/vhdl/ddrctrl_input_repack.vhd
@@ -159,7 +159,7 @@ BEGIN
 
     WHEN RESET =>
       v := c_t_reg_init;
-      v.out_sosi.bsn(c_dp_stream_bsn_w-1 DOWNTO 0) := in_sosi.bsn(c_dp_stream_bsn_w-1 DOWNTO 0);
+      v.q_bsn(c_dp_stream_bsn_w-1 DOWNTO 0) := in_sosi.bsn(c_dp_stream_bsn_w-1 DOWNTO 0);
 
 
     WHEN STOP =>
-- 
GitLab