Skip to content
Snippets Groups Projects
Commit 54a22bba authored by wierenga's avatar wierenga
Browse files

BugID: 781

Now keeping separate states on each individual write to following registers:
DIAG_WG
SST
XST
CDO

This is important to make sure any changes are written correctly from cache to hardware.
parent be3f3ede
No related branches found
No related tags found
No related merge requests found
...@@ -71,11 +71,11 @@ namespace LOFAR { ...@@ -71,11 +71,11 @@ namespace LOFAR {
rcuprotocol_state.resize(nrRcus); rcuprotocol_state.resize(nrRcus);
hbaprotocol_state.resize(nrRcus); hbaprotocol_state.resize(nrRcus);
rsuclear_state.resize(nrRspBoards); rsuclear_state.resize(nrRspBoards);
diagwgsettings_state.resize(nrRcus); diagwgsettings_state.resize(nrRcus * EPA_Protocol::MEPHeader::N_DIAG_WG_REGISTERS);
sst_state.resize(nrBlps); sst_state.resize(nrBlps * EPA_Protocol::MEPHeader::SST_N_FRAGMENTS);
bst_state.resize(nrRspBoards); bst_state.resize(nrRspBoards);
xst_state.resize(nrRspBoards); xst_state.resize(nrRspBoards * EPA_Protocol::MEPHeader::XST_NR_STATS);
cdo_state.resize(nrRspBoards); cdo_state.resize(nrRspBoards * EPA_Protocol::MEPHeader::N_CDO_REGISTERS);
bs_state.resize(nrBlps); bs_state.resize(nrBlps);
tdclear_state.resize(nrRspBoards); tdclear_state.resize(nrRspBoards);
tdwrite_state.resize(nrRspBoards); tdwrite_state.resize(nrRspBoards);
...@@ -110,29 +110,29 @@ namespace LOFAR { ...@@ -110,29 +110,29 @@ namespace LOFAR {
ts_state.reset(); ts_state.reset();
sys_state.read(); sys_state.read();
bf_state.write_force(); bf_state.write();
ss_state.write_force(); ss_state.write();
rcusettings_state.write_force(); rcusettings_state.write();
rcuprotocol_state.write_force(); rcuprotocol_state.write();
hbaprotocol_state.write_force(); hbaprotocol_state.write();
rsuclear_state.check(); rsuclear_state.check();
diagwgsettings_state.write_force(); diagwgsettings_state.write();
sst_state.read(); sst_state.read();
bst_state.read(); bst_state.read();
xst_state.read(); xst_state.read();
cdo_state.write_force(); cdo_state.write();
bs_state.check(); bs_state.check();
tdclear_state.check(); tdclear_state.check();
tdwrite_state.check(); tdwrite_state.check();
tdread_state.check(); tdread_state.check();
rad_state.write_force(); rad_state.write();
ts_state.write_force(); ts_state.write();
} }
void schedule() { void schedule() {
sys_state.read(); sys_state.read();
bf_state.write_force(); // always write bf bf_state.write(); // always write bf
ss_state.write_force(); // always write ss ss_state.write(); // always write ss
rcusettings_state.check(); rcusettings_state.check();
rcuprotocol_state.check(); rcuprotocol_state.check();
hbaprotocol_state.check(); hbaprotocol_state.check();
...@@ -147,7 +147,7 @@ namespace LOFAR { ...@@ -147,7 +147,7 @@ namespace LOFAR {
tdwrite_state.check(); tdwrite_state.check();
tdread_state.check(); tdread_state.check();
rad_state.check(); rad_state.check();
ts_state.write_force(); // always write timestamp ts_state.write(); // always write timestamp
} }
void clear() { void clear() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment