Notes from L2 meetings on 19, 20, 22 Aug 1997 Some comments on Myron's CDF L2 presentation transparencies ----------------------------------------------------------- 50 KHz * 700B = 35 MB/s on muon alone this isn't exactly light loading on MBus No obvious attempt to put data on bit/byte boundaries trading less input time for more processing time We would like interrupt generated on FIFO_EMPTY * EVENT_DONE to be selectable between whether FIFO_EMPTY comes from open collector and of all processors, or is just the local processor General ------- Purchases: dualport mem cards can shake down tcc/alpha communications ask for first prototype form Myron--universe chip final anyway style manual: how to lock array into a physical location assertions/ code inspections conventions for naming: is it a pointer, handle, or variable, etc Philippe back soon: need a PLAN for what he is to have ready when Roger comes Marvin: manpower for engineering? Will we need to order KAI for Linux? (Roger) Choosing NT vs Unix as development platform Compression Algorithm for L2 output data? too slow EDN FPGA search algorithm? Global ------ Admin can't free event until checked for monitoring info Worker: must check event for monitoring qualifier. if so, capture monitoring info at end of event could bundle into "answer" to admin: - event number and pass/fail mask - monitor info, if present - R/O info, if pass this gives a copying problem: must be sure that it goes into distinct slots in Admin, since this contains data that must be copied before it is overwritten and data is not fixed format maybe using mapper message technique helps sort this out, or does this break in face of more workers? could just mark as done, and copy internally in worker and let administrator copy this cache at leisure Messages from worker to admin (probably in global as well) verified parts of event in preprocessor are matched flag if data was incomplete, but this is what I did anyway Global: (multiple workers) "Ping-pong" mode is not trivial--have to have a flag to tell nodes which events to skip? or let free-run and do that? Cal --- CAL: what breaks in our model: are more buffers needed? does admin need to knnow about L2G communication roughly: no, do before "reply" to admin Answers from L2 decision only on SCL, not on inputs SCL MUST be examined before L3 R/O started--that is where answers come from. Loop roughly is reversed from that in global SCL still uses 1 input on L2Cal 10 tower energy inputs 2 hot tower inputs mismatch not TOO Bad: 2560B data/10 = 256B of tower data/10 inputs assumes TOT is still only 8 bits beware: different scale from EM by *2 1280 bits X 8 thresholds = 1280B /2 inputs = 640 B on tower line mismatch by maybe a factor of 2-3 is all needs to build full readout pointer list for every event the reply to admin is not really an "answer" more communication to rebuild this info (only for passed events?) Need 2 sets of input pointers for buffer handling in administrator e, j need to check whether buffer is "free" from both e, j could start w/o this feature and event-lock them, but likely to be a performance hit to do without it Next big breakpoint in code (after linear/ asynch I/O) is multiple workers when break event synchronism of workers provision for possible expansion in number of workers: make compile-time or runtime? Monitoring ---------- Does capturing buffer disposition at end of "Monitor Qualifier" event give a fair representation of the situation in the preprocessors and the global processor? The capture does not take place synchronously at one moment in time. If there are biases, it could be deceptive, eg if the capture in preprocessors took a long time, allowing the global to clear out before the monitor event arrived. need for processing time capture if variations in processing time Can distinguish L2 vs L3 buffers running out in VRB (different BUSY's) slow L3 xfers (different data cables) will show up as differences in deadtimes among geo sections L1 HWFW has # events waiting L2 decisions this should be encoded/decoded and scaled may not be perfect match to # l2 buffers in use in VRB's if buffers flipped from L2 to L3 by copying MBT specs: ---------- need to be able to set up which sources are needed and which aren't the un-needed ones provide "Done" to Open Collector outputs register for each Fifo to read how many events it contains, and another register giving max of these should these be sent to scalers as well?