Hello, I am trying to understand the resource requirements for the CASPER X-engine. To reduce confusion, I'm going to consider dual polarization antennas
Looking at the xeng block in simulink, it appears that an X engine with no demux will require about acc_len * ceil(Nant/2 + 1) memory locations for the delays So for 32 antennas and acc_len 128, this should be easily implemented with 32 BRAMs About 4*ceil(Nant/2 +1) CMAC blocks will be required. I see each CMAC can be implemented as 4 BRAMs or 4 DSP48s, so a total of ~ 256 DSP48s or 256 BRAMs would be needed (or a mixture) At the 32 antenna level, it looks like the CMACs are what drives the number of xengines that can fit on a ROACH/ROACH2. Is that correct? using 4 DSP48s for a 4-bit CMAC seems really inefficient, is there any way to improve that? How do packet buffering (to ensure you have one packet from each F engine) and final VACC resource utilization compare to the X engine? Thanks, Glenn