From c60c637cb62fe120fd8b6ae37edf475810ceb78f Mon Sep 17 00:00:00 2001
From: Erik Kooistra <kooistra@astron.nl>
Date: Tue, 24 Jul 2018 10:07:57 +0000
Subject: [PATCH] Updated after summer holiday.

---
 .../apertif_fpga_firmware_planning_erko.txt   | 71 +++++++++----------
 1 file changed, 33 insertions(+), 38 deletions(-)

diff --git a/applications/apertif/doc/apertif_fpga_firmware_planning_erko.txt b/applications/apertif/doc/apertif_fpga_firmware_planning_erko.txt
index f716782d1e..5b78f339b5 100755
--- a/applications/apertif/doc/apertif_fpga_firmware_planning_erko.txt
+++ b/applications/apertif/doc/apertif_fpga_firmware_planning_erko.txt
@@ -4,20 +4,7 @@
 Done) #1274: Arts SC1: Beamlet selection for CB 0 also seems to require CB 1 --> fixed in BF 18316 by using dp_block_resize.vhd
 Done) #1654: Arts SC1: Run Arts SC1 with MAC controling the Apertif BF using cold Apertif start and 
              warm Arts start in main.py
-
-*) #1658: Implement beamlet or channel offload by Apertif X to Arts on UniBoard2
-  - See section 9 in SP-062: output channels for SC3 or beamlets for SC2
-
-*) #1648: Arts SC1: Support TAB1 weights gain control dependent on number of dishes in main.py --> Daniel
-
-*) #1300: Arts SC4: Subband bandpass correction after the channel filterbank?
-
-*) #1484: Additional fringe stopping for TAB within CB --> not necessary for SC3,4, only for SC2
-   WontFix) #1593: Arts SC4: Apply TAB weights per channel instead of per beamlet?  --> WontFix, see #1484
-   -) #1660: Arts SC4: TAB BF driver support in MAC --> not needed anymore
-   -) #1691: Arts SC4: Provide Python script to control TAB beamformer weights --> Pieter
-
-*) #1515: Make Arts beamlet mapping independent of Apertif
+Done) #1515: Make Arts beamlet mapping independent of Apertif
   Done) Create single element beam mapping for Arts SC4 and apply in dish_command.sh:
        python /home/kooistra/svnroot/UniBoard_FP7/UniBoard/trunk/Software/python/base/unb_apertif.py
        
@@ -26,7 +13,22 @@ Done) #1654: Arts SC1: Run Arts SC1 with MAC controling the Apertif BF using col
     therefore also for the BF weights and the fringe stopping. The R_beamout reorders the beamlets to
     route the CB to the PN for Arts. For Apertif X it does not matter which PN processes the beamlets,
     because they all arrive via the 1/10GbE network at the same DW.
+
+Done) #1484: Additional fringe stopping for TAB within CB --> not necessary for SC3,4, only for SC2
+   WontFix) #1593: Arts SC4: Apply TAB weights per channel instead of per beamlet?  --> WontFix, see #1484
+   Rejected) #1660: Arts SC4: TAB BF driver support in MAC --> not needed anymore
+   Done) #1691: Arts SC4: Provide Python script to control TAB beamformer weights --> Pieter
+
+*) #1648: Arts SC1: Support TAB1 weights gain control dependent on number of dishes in main.py --> Daniel
+
+*) #1300: Arts SC4: Subband bandpass correction after the channel filterbank? --> better make status Rejected (= Wontfix)
+
+*) #2090: SC4 6-bit mode (relates to #1651)
     
+*) #2055: Add SC3 support logic to apertif-unb1_correlator_full
+  -) #1658: Implement beamlet or channel offload by Apertif X to Arts on UniBoard2
+     See section 9 in SP-062: output channels for SC3 or beamlets for SC2
+
   -) #1650 Inverse R_beamout function on beamlet indices at Apertif X output, to transparently 
     support SC3 --> add method in pi_apertif_system.py, add firmware function in X
     
@@ -157,19 +159,13 @@ Done) #1518: 135 --> 200 MHz
    On 20 June 2018 --cmd 53 --scheme 300MHz_37CB was PASSED, so the MAC software programs 300MHz_37CB when at 200MHz.
      
 *) #1510: Integrate main.py into MAC software, purpose is to have MAC control and thus know all settings (one captain).
+   - Use ARGS to created ICD of LCU - MM registers interface for the Apertif FB, BF and X FPGAs
+   - Use ARGS to created ICD of LCU - MM registers interface for the for the Arts SC1, 4, 3 FPGAs
 
 *) #1860: Use beamlet clipping for correlator and TAB
-  - dish beamlet output -->
-    . clip instead of wrap is better for Apertif X, see email 17 apr 2017 (Work in progress) and correlator_null_clip_or_wrap.m
-    . for SR3,4 IAB using clip is preferred, similar as for X
-    . for voltage TAB (even after F_chan) using wrap can cancel from some amount of overflow due to RFI
-    . advantage of using clip is that it also kind of flags the data, whereas wrap kind of scrambles the data
-    . advantage of only using clip is that we do not have to select between clip and wrap per Apertif X and Arts SC
-    --> Conclusion: Use clip in node_apertif_unb1_fn_beamformer
-    . however if clipping occurs then there is RFI, so the visibility will not be useful anyway
-    --> Conclusion: Keep wrap in node_apertif_unb1_fn_beamformer
     
 *) #1931: Confirm complex format of BF weights: is it (Im,Re) or (Re,Im).
+
 *) #1999: Use Apertif X image as factory image to avoid too much flash writing and to speed up main.py
 
 ###############################################################################
@@ -212,18 +208,31 @@ Done) Compare SST with BST
 Done) #1276: Plot BST per CB
   - Supported by pi_apertif_system.py --cmd 71
   
-Done) #1163, #397: Flagging for failing links, RFI ? etc.
+Done) #1163, #397, #1937: Flagging for failing links, RFI ? etc.
   - Support MAC
   - Failing links during observation can be handled by MAC
   - RFI is detected by astronomers at visibility level.
 
+Done) Correlator synthesis @ 200 MHz
+  - For r 17830 4 out of 5 synthesis achieved timing > 200 MHz
+  - Enable channel FIR filter in Apertif X --> fits and achieves > 200MHz with r 18042
+  - Read back channel FIR coefficients in Python ok
+
 Done) #1543: End to end VHDL simulations using MM file IO (20 story points)
   
+*) #1542: End to end WG to Correlator output test (8 story points)
+  - Intermediate verification points are the SST, BST, but finally the visibilities should be verified given WG for single element BF
+  - Overwrite statistics before reading to ensure fresh data
+  - Verify visibility output order and output load to DW using a databuffer in the correlator output, see also #1543
+
 *) #1655: Finalize quantisation (8 story points)
   - SST
   - BST
   - Visibility output
 
+*) #1243: Channel ghosts in channel 16 and 48
+
+*) #818: Commisioning verify channel filter using the test code of busy week 2 (Feb 2017)
 *) #1657: Finalize subband and channel FIR filter coefficients (8 story points)
   - Decide on subband and channel FIR filter impulse response
   - Adapt Lofar subband filter with no DC per polyphase, as compromise between having no DC and still the high
@@ -234,26 +243,12 @@ Done) #1543: End to end VHDL simulations using MM file IO (20 story points)
   - Fchan SST is already disabled, because there are N_blk sync per t_int_x, so not enough time to read the SST anyway.
   - Fchan reorder needed for SC3, so then do not reorder in Apertif X output.
 
-*) #1243 Channel ghosts in channel 16 and 48
-
 *) #676: FPGA register map with number of instances, ready in firmware, to do in MAC.
 
-*) Correlator synthesis @ 200 MHz
-  - For r 17830 4 out of 5 synthesis achieved timing > 200 MHz
-  - Enable channel FIR filter in Apertif X --> fits and achieves > 200MHz with r 18042
-  - Verify channel FIR coefficients in Python
-  - 6 bit mode
-  - #1650) Restore Apertif beamlet numbering via inverse R_beamout on beamlet indices
-
 
 ###############################################################################
 # SR-6: Dual polarization
 
-*) #1542: End to end WG to Correlator output test (8 story points)
-  - Intermediate verification points are the SST, BST, but finally the visibilities should be verified given WG for single element BF
-  - Overwrite statistics before reading to ensure fresh data
-  - Verify visibility output order and output load to DW using a databuffer in the correlator output, see also #1543
-
 *) #1868: wpfb_unit_dev force Fchan channel output data to 0 for first N_tap bin samples after sync
 
 
-- 
GitLab