Tidbits

DMA-considerations

Size of the slots and FIFOs:

For 1 slot Rx - ics554 Tx - ics564
Samples 2560*2=5120=5k 2560*2=5120=5k
Bytes 5120*16=81920=80k 5120*4=20480=20k
FIFO-size [bytes] 65536*8=512k 65536*4*2=512k
Max samples Graph Graph

The samples per slot is given by the pseudo-UMTS system of the software-radio and is fixed for the moment at 2560 samples. As we do an oversampling by a factor of 2, this gives 2560*2=5120 samples per slot, for both the ics554 and ics564.

The total bytes is calculated as Graph, where Graph is:

4
= 16bit real + 16bit imaginary
16
= 32bit real + 32bit imaginary, but for two channels, as we can't treat only one channel at a time in the ics554-card

According to the ics-554 documentation E10681 Rev.B p. 55, the FIFO is sized at 65536 * 64bit-values, which gives 512kBytes. The ics-564 documentation E10734 Rev.- p. 9 gives the size 65536 16bit-samples as {}``approximately one quarter of the FIFO-size''. So the total is 65536*4*2 = 512kBytes.

Conclusion

The DMA-size will be dependant on the slot-size. So, there will be 1 slot per DMA-transfer. This limits the slot-length to 16kSamples for the Rx-part, but that should be OK.

Care has to be taken for small slot-sizes, as the DMA-transfer happens in two steps:

  1. Fill up the FIFOs on the ics564
  2. Start the transfer
  3. Wait for underflow of the FIFOs and re-transmit

Server

The old implementation of the server takes DMA_BLOCK-sized packets and works on these. In order to rewrite only what is necessary, I adjusted the Base/Antenna/Simul_ics in a way to chop down the slots into DMA_BLOCK-sized packets. Too bad if it is not a multiple of these. There is no check against that.

Resampler

A big mess that nobody understands. Hopefully the work of the student this summer sheds some light on this.

Samples, Chips and Symbols

The current setup has 2 Samples for 1 Chip, and 1 Chip for 1 Symbol (without a spreading-sequence). This means, that there is a 2 x oversampling.

Last modified:: %2007/%02/%23 %14:%Feb