The Downloading of SVT

L.Ristori

27-Jul-1995

1. Introduction

SVT contains a number of RAM's that need to be initialized. Most of them will be downloaded at power-up and will never change during normal running. In this note we make an inventory of all these RAM's according to the present status of the SVT design and estimate the time it will take to initialize the whole system based on the amount of data to be transfered and the expected available bandwidth.

2. Data Inventory

2.1 Hit Finder

Each Hit Finder reads all the R-Phi strips in a single wedge (1/12 in Phi and 1/6 in z). There are about 2k such strips in a Wedge. The pedestals of all the strips are stored in a table. The size is 1 byte per strip. Each hit Finder also has a Memory LookUp (MLU) to compute the centroid of each cluster. It takes 5 bits each from three consecutive strips as address an outputs 8 bits of data (4 bit mantissa + quality flags). The size is 2**15 = 32k bytes.

2.2 Hit Buffer

The SS Map is addressed by 17 bits from the hit coordinate and outputs a 16 bit pointer to the Hit List Memory. The size is 2**17 x 16 bit = 256k bytes. The AM Map is addressed by a 17 bit wide road number plus a 3 bit wide layer number and outputs a 16 bit pointer to the Hit List Memory. The size is 2**(17+3) x 16 bits = 2M bytes.

2.3 AM Sequencer

The SS Map is addressed by 17 bits from the hit coordinate (same as in the Hit Buffer) and outputs a 15 bit SuperStrip number (including a 3 bit layer field). The size is 2**17 x 15 bit = 256k bytes. The sequencer is implemented as a finite state machine driven by a RAM look-up. It has 16 inputs and 20 outputs (3 bytes). The size is 2**16 x 3 bytes = 192k bytes

2.4 AM Board

Each Associative Memory board houses 128 AM chips with 128 roads each. Each road is 6 layers and there is a 12 bit SuperStrip address for each layer. The total size is then 128 x 128 x 6 x 2 bytes = 192k bytes.

2.5 Track Fitters

We do not know how long the algorithm will be but it has to be very simple and a reasonable guess is that it will be less than 1k. If we assume that we will use for the fit 4 Si layers plus 2 parameters from the central tracker, we will have 3 constraints with 6 coefficients plus 2 cuts each and we will need one set of 6 coefficients plus 1 offset for each of the 3 parameters to be computed (phi, curvature, d). The total set of geometrical constants is therefore 3x8 + 3x7 = 45 numbers. If we assume each number is 8 bytes we get 45x8 = 360 bytes. We will need one such set for each barrel (x6), for each phi sector (x12), and for each possible mixture of layers in adjacent barrels a track can traverse (6 combinations x 5 inter barrel boundaries). So the total size is 360 x 12 x (6 + 6x5) = 152k bytes.

3. Network Topology

In the attached figure we show the topology of the network of CPU's that will control the operation of SVT. Each VME crate has its own control CPU that is capable of accessing all the modules in the crate via the backplane bus. All the control CPU's are connected through a dedicated Ethernet branch to a number of control workstations. A bridge connects the SVT Ethernet branch to the rest of the world and filters out all unwanted traffic.

4. Downloading time

All the data base needed for SVT is resident on mass storage (disk) local to the control workstations. At initialization time data are retrieved from disk by software running on the control workstations and sent over Ethernet to the control CPU's that proceed to dowload and initialize individual modules. In order to estimate the time it takes to initialize SVT, we assumed that each RAM could be downloaded with a single I/O transaction as seen by the control workstation operating system. We also assumed that each transaction will require a system overhead of 1 ms plus a time proportional to the amount of data transfered and corresponding to 20% of the total Ethernet bandwidth (20% of 10 Megabit/s). These numbers are reasonable guesses based on past experience with similar systems. We hope we will be able to measure the real performance of this system in the near future and to come up with more reliable estimates. The table below shows the time estimates based on the numbers given above broken down by module. The first column (mult) is the total number of modules of that kind in SVT, the second column is the module name, the third column shows the data block to be downloaded, the fourth column (kB each) shows the size, in kBytes, of each module, the fifth column (kB x mult) shows the total size in all modules, the sixth column (ms ea.) shows the time it takes to download one module in milliseconds, the seventh column (ms x mult) shows the time it takes to download all modules. The last row shows the total amount of data (in kBytes) to be downloaded and the total time it takes (in milliseconds).

The total time to initialize is about 160 seconds. We believe this is acceptable since it will be needed very seldom, typically only as part of a system cold start at power on.

_________________________________________________________________
mult  module       data      kB each|kB x mult| ms ea.| ms x mult
-----------------------------------------------------------------
72  Hit Finder     Pedestals       2      144       9       648 
72                 MLU RAM        32    2,304     129     9,288 

12  Hit Buffer     SS Map        256    3,072   1,025    12,300 
12                 AM Map      2,000   24,000   8,001    96,012 
                        
12  AM Sequencer   SS Map        256    3,072   1,025    12,300 
12                 Seq. program  192    2,304     769     9,228 
                        
24  AM Board       Roads         192    4,608     769    18,456 
                        
12  Track Fitters  Algorithm       1       12       5        60
12                 Geom. const.  152    1,824     609     7,308 
-----------------------------------------------------------------                       
                         TOTAL   kB    41,340       ms  165,600 
_________________________________________________________________