next up previous contents
Next: 1.4 Readout options Up: 1 Silicon Hit Finding Previous: 1.2 Data flow

1.3 Memory

  Below, the preliminary memory map for the Power PCs is shown. Apart from accessing the Raw-, Hit-, Pedestal-, and Sigma buffers, the HitFinding routines need no further interaction with the memory since all information is passed via input and returning arguments. Note that the memory is addressed via the PCI bus by three tasks:

  1. the XiLinX delivering raw data from the FADCs
  2. the PowerPC processing the raw data
  3. the VME Taxi reading hit data

Global Area Memory Map Offsets (Total = 8 MBytes)

All offsets must be added to Base

$0000'0000 - $0000'1000 ; VMEtaxi SiDAQ parameters       Taxi/W PPC/Read 4KB max
$0000'0000 - $0000'0080 : Mailbox area
$0000'0080 -            ; Status offset (STATOFF)   length $80   Taxi/W PPC/R
$0000'0100 -            ; SiDAQSPEC block (SPECOFF) length $80   Taxi/W PPC/R

$0000'1000 -            ; Event Indicator Area (EVENTOFF)        Taxi/PPC/W/R
                                  (see separate section for description)

$0010'0000 - $001F'FFFF ; Event Data Area 1 Mbyte                Taxi/R PPC/W 

$0010'0000 - $0017'FFFF ; Raw Event Data 16 buffers each of 32 KBytes
$001N'0000 - $001N'7FFF ; Raw Event Data Buffer 2N   (N=0 thru 7)
$001N'8000 - $001N'FFFF ; Raw Event Data Buffer 2N+1 (N=0 thru 7)
eg.
$0010'0000 - $0010'7FFF ; Raw Event Data Buffer 0
$0011'8000 - $0011'FFFF ; Raw Event Data Buffer 3
$0013'0000 - $0013'7FFF ; Raw Event Data Buffer 6
$0017'8000 - $0017'FFFF ; Raw Event Data Buffer 15

For each Raw Data Buffer the following offsets are written to by the Xilinx:
$7FF8 - $7FFB : Pipeline counter once ADC data are written
$7FFC - $7FFF : Xilinx Event Number flag once ADC data are written
The Event Number flag must be the last written word by the Xilinx.
It is then cleared by the ppcdaq_readout task for internal bookkeeping.
In principle the Xilinx needs only write access to the Global area over the PCI.
Note also the use of the location $001N'7FF4 as a last data word flag.
Should this last effective data word location be indicated none-zero, contrary to the 
event number flag, the PIC is set to $FF with a software incremented event number.

$0018'0000 - $001F'FFFF ; Hit Event Data in blocks of maximum size 32 KBytes
eg.
$0018'0000 - $0018'7FFF ; Hit Event Data Buffer 0
$0019'8000 - $0019'FFFF ; Hit Event Data Buffer 3
$001B'0000 - $001B'7FFF ; Raw Event Data Buffer 6
$001F'8000 - $001F'FFFF ; Hit Event Data Buffer 15

$0020'0000 - $002F'FFFF ; Pedestals (8192*2*32 peds*16-bits)  xi/PPC/R/W 1MB max

$0030'0000 - $003F'FFFF ; Simulation Event Data Area SIMODE bit 8 set (see below) 

$0040'0000 - $005F'FFFF ; Available for constants storage     xi/PPC/R/W 2MB 

$0060'0000 - $006F'FFFF ; Reserved                            xi/PPC/R/W 1MB

$0070'0000 - $007F'FFFF ; Temporary PPC program space         xi/W PPC/R 1MB max
$0070'0000 - $0070'7FFF ; Main task booted from fprom ($E'0000) on reset
$0070'8000 - $0070'FFFF ; Hit detection algorithm booted from memory on reset
                          Memory is battery-backup at $C0'8000
                                Raw Object from MPW-PPC-C. Real start at offset $8C.



Markus Kausch
Fri Oct 17 13:45:07 MST 1997