Variables used in DSP 1-4 Buffer Management

Variable Description Stored/Used
dsp_rdy DSP is Busy writing data to Buffer
No more Stack Words from DSP FPGA
 
Ninp Number of Active Inputs (Buffers) for this DSP Buffer Manager
Nmain Size (in words) of Buffer Main Memory Buffer i Info
Novf Size (in words) of Buffer Overflow Memory Buffer i Info
Nrps Size (in elements) of Read Pointer Stack Read Ptr Stack
buff_no Current Buffer No. for write
After write:
•  next(buff_no) = mod(buff_no+1,Ninp)
Buffer Manager
buff_full Current Buffer is full
Condition for this:
•  w_ptr<(rs_ptr->r_ptr) & next(w_ptr)>(rs_ptr->r_ptr)
Buffer Manager
in_serwd Stack Word from DSP FPGA Buffer Manager
wrdcnt Word Count for current buffer
Derived from Stack Word
Buffer Manager
mem_start Addr. for Start of Buffer i Main Mem Buffer i Info
mem_end Addr. for End of Buffer i Main Mem Buffer i Info
ovf_end Addr. for End of Buffer i Overflow Mem Buffer i Info
w_ptr Addr. for next/current write
After write: next(w_ptr) = Base +
•  w_ptr + wrdcnt   If   w_ptr + wrdcnt <= mem_end
•  0 otherwise
Buffer i Info
rs_off Read Pointer Stack element Offset for next/current read
Addr. for evt_done Stack:
•  Base + rs_off
Addr. for r_ptr,wrdcnt Stacks:
•  Base + 2*rs_off
After read, Release the Current Read Stack Element
•  evt_done=0
•  next(rs_off) = mod(rs_off+1,Nrps)
Buffer i Info
evt_done Flag for All Input Buffers Loaded for this Event Read Ptr Stack
r_ptr[i] Address for Start of Event Data in Buffer i Read Ptr Stack
wrdcnt[i] Number of Words to Read from Buffer i Read Ptr Stack