Lana Abadie, March 2004 Content Objectives DB Design - - PowerPoint PPT Presentation

lana abadie march 2004 content
SMART_READER_LITE
LIVE PREVIEW

Lana Abadie, March 2004 Content Objectives DB Design - - PowerPoint PPT Presentation

Lana Abadie, March 2004 Content Objectives DB Design Methodology Readout network dataflow Use cases Entity relationship models Table design Conf.DB & PVSS (JCOP) C routine example : use case 3 & 4


slide-1
SLIDE 1

Lana Abadie, March 2004

slide-2
SLIDE 2

Content

  • Objectives
  • DB Design Methodology

– Readout network dataflow – Use cases – Entity relationship models – Table design

  • Conf.DB & PVSS (JCOP)
  • C routine example : use case 3 & 4
  • Test Tool
  • Conclusion & future works
slide-3
SLIDE 3

Objectives

  • Storage of all controllable devices from all sub-

systems (electronics...)

– static data (geographical position, links,...) – dynamic data (recipes, code to download...)

  • Each device will be stored in the Conf.DB and

linked to its connectivity counterpart.

  • Implement tools: to populate, to configure, to

maintain, to communicate with other existing tool such as PVSS.

slide-4
SLIDE 4

DB Design Methodology

  • 1. Dataflow of the system
  • 2. Define the use cases (scenarios)
  • 3. Build Entity relationship models
  • 4. Design tables
slide-5
SLIDE 5

FE cards (L1FE)

  • 4 outputs(DAQ)+1(Throttle)
  • 2 types of traffic
  • HLT(1link)
  • Level 1 (up to 3)
  • Ex: VELO_L1FE00_00_00

. Multiplexing layer:2 types of switch

Sorter TRM (1 module) TFC system

(readout supervisor) HLT traffic Level 1 traffic mixed traffic HLT possible link Level 1 possible link

Storage System

ReadOutNetwork Data Flow

Readout Network Switch (RNS_Slot)

RNS_Slot_00 RNS_Slot_15

Level 1(16I/2O) (L1MS) Ex:L1MS_05 HLT (16 I /2 O) (HLTMS) Ex:HLTMS_10

SFC

Switch

CPU CPU CPU

SFC

Switch

CPU CPU CPU

SFC

Switch

CPU CPU CPU

SFC

Switch

CPU CPU CPU CPU Farm SFC_Switch SFC_Node

slide-6
SLIDE 6

Use cases

  • 1. Define the properties of a switch

A switch has a type (L1MS for example) and a name (L1MS_05) and a hostname. Each switch type is characterized by a number of input and output ports.

  • 2. Define the properties of a port
  • 3. Find the adjacent switches (links) up or down

connected to a given switch

  • 4. Find all the connection paths between 2 devices
  • 5. Check that a path exists between 2 extreme

nodes (ie L1FE and SFC_node)

  • 6. Retrieve all the links belonging to a given band

link number and vice versa.

slide-7
SLIDE 7

Path concept

Example: I want to know all the possible connexion paths from

VELO_L1FE00_00_00 to RNS_Slot which carries HLT Traffic.

Switch from VELO_L1FE00_00_00 L1MS_05

1 1 5 HLTMS_10 2 3 4 8 5 2

path 1: [(VELO_L1FE00_00_00, 2), (HLTMS_10, 4), HLT] [(HLTMS_10,0),(RNS_Slot_03, 2), HLT]→ Selected path 2 : [(VELO_L1FE00_00_00, 3), (HLTMS_10, 8), HLT] [(HLTMS_10,0),(RNS_Slot_03, 2), HLT]→Selected path 3: [(VELO_L1FE00_00_00, 1), (L1MS_05, 5),L1] [L1MS_05,0),(RNS_Slot_11, 5), L1]→ Not Selected path 4: [(VELO_L1FE00_00_00, 0), (L1MS_05, 1),L1] [L1MS_05,1),(RNS_Slot_11, 5), L1]→Not Selected

RNS_Slot_03 RNS_Slot_11

first link second link HLT Traffic L1 traffic RNS_Slot

slide-8
SLIDE 8

Entity relationship models

Switch

+Switch Name +Switch type +Host name

Link

+LinkID +Switch Name From +Port Number From +Switch Name To +Port Number To +Type of link

Path

+PathID +Link

1 n

Port

+ physical address + switch name + nbr + input or output + RxFC (Enable or not) + TxFC (Enable or not) + status (Broken or not) + speed + Port Management(yes/no) + Wire sense (Switch/Switch, Switch/computer, Autosense) + Phy: T, Sx, SL + Forced Speed (Yes/No) has 1 n

Associaton : a link has 2 ports will determine the status of link

1 2

Band link

+BandID +LinkID 1 n

Switch Type

+Switch type +nbr of input ports +nbr of output ports

slide-9
SLIDE 9

Table Design

Switch Connectivity +Switch_LinkID (pk) +Switch_From +Port_nbr_from +Switch_to +Port_nbr_to +link_type (fk) ref Link Type(link nbr) + bidirectional_used + Unique(Switch_From, port_nbr_from) + Unique(Switch_to, port_nbr_to) + Switch_From, Port_nbr_from (fk) ref Port(switch name,nbr,in_or_out=‘out’) + Switch_to, Port_nbr_to (fk) ref Port(switch name,nbr,in_or_out=‘in’)

SwitchType

+Switch type (pk) +nbr of input port +nbr of output port

Switch List

+Switch Name (pk) +Switch type (fk) ref SwitchType(Switch_type) +host name

Band Link

Link_id (fk) ref SwitchConnectivity(Switch_LinkID) link_band_nbr (pk) Unique(Link_id)

Link Type

+Link type +Link nbr (pk)

READOUTNET_PATH_L1FE

+L1FE link_readNet (fk) ref Switch List(Switch_Name) +MS link_readNet (fk) ref Switch List(Switch_Name) +RNS_Slot link_readNet (fk) ref Switch List(Switch_Name)

READOUTNET_PATH_SFC

+RNS_Slot link_readNet (fk) ref Switch List(Switch_Name) +SFC link_readNet (fk) ref Switch List(Switch_Name) +SFC_Switch link_readNet (fk) ref Switch List(Switch_Name) +SFC_Node link_readNet (fk) ref Switch List(Switch_Name)

Link_readNet (object)

+switch_from +switch_to +port_nbrfrom +port_nbrto +typeOfLink

1 n

Port

+ physical @ (pk) + switch name (fk) ref Switch List(Switch_Name) + nbr + in_or_out + RxFC (Enable or not) + TxFC (Enable or not) + status (Broken or not) + speed:(10,100)/(10,100,1000)/ 1000/10.000 Mbit/s + Port Management(yes/no) + Wire sense (Switch/Switch, + Switch/computer, Autosense) + Phy: T, Sx, SL + Forced Speed (Yes/No) Unique(switch name,nbr,in_or_out)

1 1 1 n n 2 1 n<11

bijection

slide-10
SLIDE 10

Conf.DB & PVSS

PVSS System PVSS Libraires & Tools

fw_recipes fw_recipes _properties fw_device switch link fw_device_ properties fw_com ponents

ADO Functions conversion to datapoint type (JCOP)

(JCOP) PL/SQL scripts

C routines to call when initialising devices

Other tools

java, python user interfaces

  • Conf. DB
slide-11
SLIDE 11

C routine example: use case 3 & 4

  • ProC/C++ precompiler
  • Microsoft Visual C++
  • struct Port {char SwitchName_FROM[21];int PortNb_FROM;

char SwitchName_TO[21];int PortNb_TO;struct Port *next;};

  • Port** test1 (char switch_name[21], int type_port, int link_nature,

char switch_type[21], int adjacent_link)

  • Example: I want to know all the possible connexion paths

from VELO_L1FE00_00_00 to RNS_Slot which carries HLT Traffic. test1(‘VELO_L1FE00_00_00’, 2 , 2 , ’RNS_Slot’ ,0)

slide-12
SLIDE 12

Test Tool

slide-13
SLIDE 13

Conclusion & future works

  • First Table design for TFC & Readout system
  • Integrate this design with JCOP tools
  • Take into account versioning, history
  • Debug C routines & check their compactness.