BESIII在线数据格式.docx

上传人:b****6 文档编号:5989116 上传时间:2023-01-02 格式:DOCX 页数:19 大小:194.20KB
下载 相关 举报
BESIII在线数据格式.docx_第1页
第1页 / 共19页
BESIII在线数据格式.docx_第2页
第2页 / 共19页
BESIII在线数据格式.docx_第3页
第3页 / 共19页
BESIII在线数据格式.docx_第4页
第4页 / 共19页
BESIII在线数据格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

BESIII在线数据格式.docx

《BESIII在线数据格式.docx》由会员分享,可在线阅读,更多相关《BESIII在线数据格式.docx(19页珍藏版)》请在冰豆网上搜索。

BESIII在线数据格式.docx

BESIII在线数据格式

BESIII在线数据格式说明

V1.1

2007.4.26

BESIIIDAQGroup

目录

目录2

1事例格式3

1.1通用格式3

1.2事例片断头部格式4

1.3ROD片段格式6

1.4其他片段格式6

1.4.1ROB对ROD的封装6

1.4.2读出PC级(ROS)2

1.4.3探测器级Sub-detector2

1.4.4完整事例3

2数据单元格式定义3

2.1MDC3

2.2TOF4

2.3EMC4

2.4MUC4

3数据文件结构4

3.1文件名4

3.2文件结构5

3.3文件示例7

1事例格式

BESIII实验的数据获取系统(DAQ)是在ATLASTDAQ软件基础上开发的,在线数据事例格式也参考了ATLAS实验的事例格式。

1.1通用格式

BES

DAQ的一个完整事例的格式如图1所示。

事例格式建立在片断(Fragment)的基础上:

一个完整事例由一或多个子探测器片断(Sub-detectorFragment)构成;每个子探测器片断由一个或多个ROS片断(ROSFragment)构成;每个ROS片断由一个或多个ROB片断(ROBFragment)构成;每个ROB片断包含一个ROD片断;ROD片段比较特殊,和其它片段有较大不同。

每个片断均含有自身的头部(Header)。

图1完整事例的通用格式

如图2所示为事例格式实现的类图。

相应于完整事例、子探测器、ROS和ROB这些对象的差别,其各自的事例片断类:

FullEventFragment,SubDetectorFragment,ROSFragment和ROBFragment也有所不同,但是它们的组织结构是相同的:

头部(header)+数据区(data)。

因此很自然地这些事例片断类都继承了头部类。

它们包含在名字空间eformat中,定义在eformat库中。

ROB和ROD的对应是个例外,一个ROB固定封装一个ROD,它们可以等价看待。

只有ROD包含的才是具体的以32位为单元的探测器击中信息。

图2事例格式的类图

如图3为在线事例层次结构与硬件的对应关系。

图3层次与硬件的对应关系

1.2事例片断头部格式

头部分为通用部分和专用部分。

前者在所有的事例片断类中都存在,而后者则根据事例片断类型的不同而不同。

事例片段通用头部格式如图4所示,各个字段含义分别介绍如下:

图4事例片段通用头部格式

✧Headermarker头部标记,指示一个fragment的开始。

不同的fragment的标记不同,详见eformat/HeadMarker.h文件:

enumHeaderMarker{

ROD=0xee1234ee,///

ROB=0xdd1234dd,///

ROS=0xcc1234cc,///

SUB_DETECTOR=0xbb1234bb,///<子探测器标记

FULL_EVENT=0xaa1234aa///<完整事例标记

};

✧Fragmentsize和Headersize顾名思义,前者是整个事例片断的大小,包括头部和数据,后者只是头部的大小。

两者均以字为单位计数。

✧FormatversionNumber,事例格式的版本号。

目前最新的事例格式版本号是3.0,不同版本的事例格式有略微区别。

当处理到有区别的地方时,软件会做版本号的判断,以防止程序出错。

✧Sourceidentifier,该域指明了事例的来源。

如它包含了两部分信息:

子探测器ID号和模块ID号。

这两个值的组合在整个BES

DAQ软件中能唯一标明事例来源。

表1Sourceidentifier格式

字节位置

3

2

1

0

内容

保留

子探测器ID号

模块ID号

子探测器ID已经事先静态分配了,如表2所示。

由于事例筛选将追加数据到事例数据中,追加的数据内容以一个单独的子探测片断的方式添加,该片断的子探测器ID定义为0x7C,Sourceidentifier一般为0x7C0000。

表2子探测器ID号定义

探测器类型

EF

MDC

TOF

EMC

MUC

TRG

ID值

0x7C

0xA1

0xA2

0xA3

0xA4

0xA5

在ROB和ROD一级,模块ID号也就是PowerPC的编号。

✧Numberofstatuselements,statuselement的数目。

✧Statuselement,描述了事例片断中数据的状态。

该字段由构造这个事例片断的软件模块负责定义和填写。

✧Numberoffragmentspecific,专用部分的数目。

✧Specificelement,每个element占据4个字节,不同的事例片断有不同的专用部分,详细介绍见后节各个字段说明。

1.3ROD片段格式

ROD的事例片断结构如图5所示,一共分为三个部分。

具体的字段的格式如表3所示,头部各字段和其它片段类似。

但在ROD还有一个尾部字段,如果状态项目位置为0,则在数据区中状态字段位于数据块的前面;如果该值为1,则反过来放置这两个部分。

表3ROD片断格式

0xEE1234EE

头长度

数据格式版本号

事例来源

Run号

触发号

保留

保留

保留

状态单元1

.

数据单元1(32位)

.

.

.

状态字段单元数量

数据字段单元数量

状态字段位置=0

图5ROD的事例片断结构

1.4其他片段格式

1.4.1ROB对ROD的封装

ROBFragment的格式如表4所示。

表4ROB格式

0xDD1234DD

总长度

头长度

数据格式版本号

事例来源

状态字段单元数量

状态单元1

..

..

专有字段数量=0

子片断(只有一个ROD)

1.4.2读出PC级(ROS)

ROSFragment的格式如表5所示。

表5ROS格式

0xCC1234CC

总长度

头长度

数据格式版本号

事例来源

状态单元数量

状态单元1

..

专有字段数量=3

Run号

保留

触发号

子片段(ROBs)

1.4.3探测器级Sub-detector

SubDetectorFragment的格式如表6所示。

表6Sub-detector格式

0xBB1234BB

总长度

头长度

数据格式版本号

事例来源

状态记录数量

状态单元1

..

专有字段数量=0

子片段(ROSs)

1.4.4完整事例

FullEventFragment格式如表7所示:

表7FullEventFragment格式

0xAA1234AA

总长度

头长度

数据格式版本号

事例来源

状态字段单元数量

状态单元1

.

.

专有字段单元数量=10

事例组装时间(秒自1970.1.100:

00:

00)

Globaleventid(Run内事例号)

Run号

Level1ID

保留

保留

事例筛选标记1

事例筛选标记2

事例筛选标记3

事例筛选标记4

子片段(SubDetectors)

..

2数据单元格式

BESIIIDAQ系统在线数据的数据单元均为32位(四个字节)的数据,不同的子探测器单元格式的表示不同,分别说明如下:

2.1MDC

表7所示为MDC的数据单元格式,其中第26-31位为层号,这6位数值的1-31表示第1-31层(第31位为0),第18-25位为对应层的丝号;由于MDC部分外层的信号丝数大于255,所以从第32层开始,即26-31位的值大于31时,改由第27-31位表示层号(第31位为1),这五位的值加16就是其实际的层号,第18-26位表示丝号。

表7MDC数据单元格式

二进制位

31~26

25~18

17

16

15~0

位数

6

8

1

1

16

数据内容

T/Q

溢出

ADC/TDC值

1~31

二进制位

31~27

26~18

位数

5

9

1

1

16

数据内容

层+16

T/Q

溢出

ADC/TDC值

32~43

2.2TOF

如表8所示为TOF的数据单元格式,其中第25-26位区分层号,1表示第1层,2表示第2层,3表示端盖。

第18-24位区分单元号,1-88分别表示桶部第1-88个单元,1-48分别表示端盖第1-48个单元。

另外0表示东、1表示西;0表示T,1表示Q。

表8TOF数据单元格式

二进制位

31~28

27

26

25

24~18

17

16

15~0

位数

4

1

2

7

1

1

16

数据

保留

东/西

单元

T/Q

溢出

ADC/TDC值

2.3EMC

如表9所示为EMC的数据单元格式,其中第26-30位代表每一圈晶体的位置,1-22表示桶部晶体第1-22圈,23-28表示端盖晶体第1-6圈。

第19-25位代表每一块晶体在该圈中的位置,1-120表示桶部第1-120块晶体,1-64(64、80、80、96、96)表示端盖第1-64(64、80、80、96、96)块晶体。

0表示东、1表示西。

 

表9EMC数据单元格式

二进制位

31

30~26

25~19

18~13

12~11

10~0

位数

1

5

7

6

2

11

数据内容

东/西

晶体

时间信息

量程

电荷信息

2.4MUC

如表10所示为MUC的数据单元格式。

表10MUC数据单元格式

二进制位

31~26

25~16

15~0

位数

6

10

16

数据内容

保留

FEC地址

FEC数据

3数据文件结构

3.1文件名

/___file.data

●path:

文件存放路径

●applicationname:

写此文件的应用程序名

●tag:

用户自定义标记,在DAQ软件界面上配置

●runnumber:

Run号

●filenumber:

此文件在本次Run中的编号

3.2文件结构

目前BESIIIDAQ系统采用的数据文件格式,基于ATLASTDAQ软件的数据格式,文件格式组成部分及排列方式如图6所示。

图6数据文件格式组成图

各个字段的具体定义如表8所示:

表8数据文件字段定义

标记

类型

备注

file_start_record

marker

U32

0x1234aaaa

record_size

U32

本段标记长度(字)

version

U32

文件格式版本

file_number

U32

文件编号

date

U32

写文件日期

time

U32

写文件时间

sizeLimit_dataBlocks

U32

最大事例数

sizeLimit_MB

U32

最大文件大小(MB)

file_name_strings

marker

U32

0x1234aabb

length

U32

应用程序名长度(Byte)

appName

string

应用程序名(补空格32位对齐)

length

U32

用户自定义标记长度(Byte)

fileNameTag

string

用户自定义标记(32位对齐)

run_parameters_record

marker

U32

0x1234bbbb

record_size

U32

本段标记长度(字)

run_number

U32

Run号

max_events

U32

最大事例数

rec_enable

U32

是否记录

trigger_type

U32

触发类型

detector_mask

U32

FromIS.

beam_type

U32

FromIS.

beam_energy

U32

FromIS.

data_separator_record

marker

U32

0x1234cccc

record_size

U32

本段标记长度(字)

data_block_number

U32

Run内事例编号

data_block_size

U32

事例大小(Byte)

file_end_record

marker

U32

0x1234dddd

record_size

U32

本段标记长度(字)

Date

U32

文件关闭日期

Time

U32

文件关闭时间

events_in_file

U32

文件内事例数

data_in_file

U32

文件大小(MB)

events_in_run

U32

本Run内事例数

data_in_run

U32

本Run内数据量(MB)

status

U32

非零标记本Run的最后一个文件

end_marker

U32

0x1234eeee

3.3文件示例

在本示例中,为了便于观察,整个Run将只有2个事例,文件也被配置成最多只能存2个事例。

这样一来将会有两个事例文件,第一个存有2个事例,第二个只有文件结构没有数据。

事例的内部构成如下:

FullEvent

SubDetector(MDC)

ROS

ROB(ROD)

ROB(ROD)

ROB(ROD)

ROB(ROD)

ROS

ROB(ROD)

ROB(ROD)

ROB(ROD)

ROB(ROD)

SubDetector(TOF)

ROS

ROB(ROD)

ROB(ROD)

SubDetector(EMC)

ROS

ROB(ROD)

ROB(ROD)

ROB(ROD)

SubDetector(MUC)

ROS

ROB(ROD)

存储文件的内容如下:

[jak@daqs2]SFOdata>xxd–g4–c32daq_SFO-1_testbyjak_0001006_file01.data

(如下数据按照字节序排列,每四个字节一组。

数据为littleendian格式,即aaaa3412表示的32位整型为0x1234aaaa)

0000000:

aaaa341208000000020000000100000017d131014da902000000000000000000

0000020:

bbaa34120500000053464f2d3120202000000000bbbb341209000000ec030000

0000040:

000000000000000000000000000000000000000000000000cccc341204000000

0000060:

010000001c070000aa3412aac701000012000000000000030150790001000000

0000080:

000000000a0000006e8b284600000000ec030000000000000000000000000000

00000a0:

00000000000000000000000000000000bb3412bbe60000000800000000000003

00000c0:

0150a100010000000000000000000000cc3412cc6f0000000b00000000000003

00000e0:

0100a100010000000000000003000000ec0300000000000000000000dd3412dd

0000100:

190000000a000000000000030c00a20003000000000000000000000000000000

0000120:

00000000ee3412ee09000000000000030c00a200000000000000000000000000

0000140:

02000000a1000000000000000000000000000000010000000200000000000000

0000160:

dd3412dd190000000a000000000000030d00a200030000000000000000000000

0000180:

0000000000000000ee3412ee09000000000000030d00a2000000000000000000

00001a0:

0000000002000000a10000000000000000000000000000000100000002000000

00001c0:

00000000dd3412dd190000000a000000000000030e00a2000300000000000000

00001e0:

000000000000000000000000ee3412ee09000000000000030e00a20000000000

0000200:

000000000000000002000000a100000000000000000000000000000001000000

0000220:

0200000000000000dd3412dd190000000a000000000000030f00a20003000000

0000240:

00000000000000000000000000000000ee3412ee09000000000000030f00a200

0000260:

00000000000000000000000002000000a1000000000000000000000000000000

0000280:

010000000200000000000000cc3412cc6f0000000b000000000000030100a100

00002a0:

010000000000000003000000ec0300000000000000000000dd3412dd19000000

00002c0:

0a000000000000031000a5000300000000000000000000000000000000000000

00002e0:

ee3412ee09000000000000031000a50000000000000000000000000002000000

0000300:

a1000000000000000000000000000000010000000200000000000000dd3412dd

0000320:

190000000a000000000000031100a50003000000000000000000000000000000

0000340:

00000000ee3412ee09000000000000031100a500000000000000000000000000

0000360:

02000000a1000000000000000000000000000000010000000200000000000000

0000380:

dd3412dd190000000a000000000000031200a500030000000000000000000000

00003a0:

0000000000000000ee3412ee09000000000000031200a5000000000000000000

00003c0:

0000000002000000a10000000000000000000000000000000100000002000000

00003e0:

00000000dd3412dd190000000a000000000000031300a5000300000000000000

0000400:

000000000000000000000000ee3412ee09000000000000031300a50000000000

0000420:

000000000000000002000000a100000000000000000000000000000001000000

0000440:

0200000000000000bb3412bb4500000008000000000000030150a20001000000

0000460:

0000000000000000cc3412cc3d0000000b000000000000030100a20001000000

0000480:

0000000003000000ec0300000000000000000000dd3412dd190000000a000000

00004a0:

000000031400a1000300000000000000000000000000000000000000ee3412ee

00004c0:

09000000000000031400a10000000000000000000000000002000000a2000000

00004e0:

000000000000000000000000010000000200000000000000dd3412dd19000000

0000500:

0a000000000000031500a1000300000000000000000000000000000000000000

0000520:

ee3412ee09000000000000031500a10000000000000000000000000002000000

0000540:

a2000000000000000000000000000000010000000200000000000000bb3412bb

0000560:

5e00000008000000000000030150a300010

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1