diff --git a/前端感知设备软件接口控制文件_V1.0.docx b/前端感知设备软件接口控制文件_V1.0.docx new file mode 100644 index 0000000..1296cd4 Binary files /dev/null and b/前端感知设备软件接口控制文件_V1.0.docx differ diff --git a/前端感知软件数据表V1.0.md b/前端感知软件数据表V1.0.md new file mode 100644 index 0000000..a367641 --- /dev/null +++ b/前端感知软件数据表V1.0.md @@ -0,0 +1,172 @@ +# **前端感知设备软件接口控制文件 (ICD)** + +**文档编号**: FES-SW-ICD-001 + +**版本**: V1.0 + +**日期**: 2025-05-01 + +**密级**: 内部公开 + +## **1\. 范围** + +本接口控制文件(ICD)规定了前端感知系统中,信号处理系统(SPS)、数据采集控制系统(DACS)、天馈射频系统及相关外设之间的通信协议、数据格式及时序要求。 +本文件适用于前端感知系统的软件开发、系统集成及联调测试。 + +## **2\. 系统概述与接口关系** + +前端感知系统采用星型分布式架构,由1个信号处理系统作为主控节点,控制3个分布式数据采集控制系统。 + +### **2.1 节点定义** + +| 设备名称 | 缩写 | 逻辑编号 | IP地址 | 备注 | +| :---- | :---- | :---- | :---- | :---- | +| 信号处理系统 | SPS | 0x01 | 192.168.0.100 | 主控节点 | +| 数据采集控制系统1 | DACS-1 | 0x02 | 192.168.0.200 | 子阵1控制 | +| 数据采集控制系统2 | DACS-2 | 0x03 | 192.168.0.201 | 子阵2控制 | +| 数据采集控制系统3 | DACS-3 | 0x04 | 192.168.0.202 | 子阵3控制 | +| 天馈射频系统 | ANT | 0x05 | N/A | LVDS/串行连接 | +| 时统供电系统 | PSU/Time | 0x06 | N/A | RS485连接 | + +### **2.2 通信链路规划** + +| 链路名称 | 连接对象 | 物理介质 | 传输协议 | 带宽要求 | 关键约束 | +| :---- | :---- | :---- | :---- | :---- | :---- | +| **控制/状态链路** | SPS \<-\> DACS | Ethernet | UDP/IP | 10 Gbps | 低延迟优先 | +| **大数据回波链路** | SPS \<-\> DACS | Ethernet | UDP/IP | 10 Gbps | **MTU 9000 (Jumbo Frame)** | +| **前端控制链路** | DACS \<-\> ANT | LVDS/RS422 | 私有串行 | 5 Mbps | **CRC-16 校验** | + +## **3\. 通用协议规范** + +### **3.1 数据格式与字节序** + +为保证基于 x86/ARM 架构的通用计算平台处理效率,系统内所有多字节字段(short, int, long, float 等)传输时均采用 **小端模式 (Little-Endian)**,即低字节在前,高字节在后。 + +### **3.2 结构体对齐** + +所有通信数据包结构体均采用 **1字节对齐 (1-byte alignment/packed)**,严禁编译器插入填充字节。 + +### **3.3 校验算法** + +为确保复杂电磁环境下的数据完整性,所有串行通信链路均采用 **CRC-16-CCITT** 算法。 + +* **多项式**: 0x1021 ($x^{16} \+ x^{12} \+ x^5 \+ 1$) +* **初始值**: 0xFFFF +* **结果处理**: 不取反,小端传输 + +## **4\. 以太网通信协议** + +### **4.1 端口分配** + +| 发送方 | 接收方 | 信息类型 | 协议 | 目标端口 (Base) | 备注 | +| :---- | :---- | :---- | :---- | :---- | :---- | +| SPS | DACS (1\~3) | 控制命令 | UDP | 10011 \~ 10013 | \+0, \+1, \+2 | +| DACS (1\~3) | SPS | 状态信息 | UDP | 10021 \~ 10023 | \+0, \+1, \+2 | +| DACS (1\~3) | SPS | 回波数据 | UDP | 10031 \~ 10033 | **需开启巨型帧** | + +### **4.2 通用报文头结构 (Ethernet Header)** + +所有以太网UDP报文(命令、状态、回波)均包含以下标准包头(15字节): + +| 偏移 | 字段名称 | 长度 | 类型 | 说明 | +| :---- | :---- | :---- | :---- | :---- | +| 0 | SenderID | 1B | uint8 | 发送设备编号 | +| 1 | RespFlag | 1B | uint8 | 响应标志 (0:无需, 1:需要) | +| 2 | SeqID | 2B | uint16 | 命令序号 (循环计数) | +| 4 | TargetID | 1B | uint8 | 受控设备编号 | +| 5 | CmdCode | 1B | uint8 | 命令编号 (见附录A) | +| 6 | RetryCnt | 1B | uint8 | 重发次数 (0-2) | +| 7 | Timestamp | 4B | uint32 | 数据生成时间 (秒计数) | +| 11 | Version | 2B | uint16 | 版本号/子序号 | +| 13 | DataLen | 2B | uint16 | 后续载荷长度 (不含包头) | + +## **5\. 详细载荷定义** + +### **5.1 参数安排数据包 (SPS \-\> DACS)** + +对应命令编号:0x22 (状态设置和参数安排) + +| 序号 | 字段名称 | 类型 | 精度/单位 | 说明 | +| :---- | :---- | :---- | :---- | :---- | +| 1 | FrameCount | uint32 | 1 | 搜索帧计数 | +| 2 | BeamTotal | uint16 | 1 | 帧波束总数 | +| 3 | SecBeamNum | uint16 | 1 | 秒周期安排波束数 | +| 4 | CPICount | uint32 | 1 | CPI计数基数 | +| 5 | BeamID | uint8 | 1 | 波束编号 | +| 6 | WorkStatus | uint8 | Bitfield | D2-0:天线模式, D4-3:收发控制, D5:射频模拟, D7-6:波束类型 | +| 7 | WidthSel | uint8 | Bitfield | D1-0:收发展宽, D4-2:方位展宽, D7-5:俯仰展宽 | +| 8 | Azimuth | int16 | **0.0025°** | 方位指向,范围 \[-65, 65\] 度 | +| 9 | Elevation | int16 | **0.0025°** | 俯仰指向,范围 \[-65, 65\] 度 | +| 10 | FreqCode | uint8 | 10MHz | 0=15.5GHz, Step=10MHz | +| 11 | MGC\_Gain | uint16 | 0.5dB | D7-0:短码增益, D15-8:长码增益 | +| 12 | SigType | uint8 | N/A | 信号波形类型定义 | +| 13 | Bandwidth | uint16 | 0.5MHz | D7-0:短码带宽, D15-8:长码带宽 | +| 14 | PulseWidth | uint16 | 0.5us | D7-0:短码脉宽, D15-8:长码脉宽 | +| 15 | PRT | uint16 | 1us | 脉冲重复周期 | +| 16 | AccPoints | uint16 | 1 | 积累点数 | +| 17 | SimDelay | uint16 | 0.01us | 模拟目标距离延迟 | +| 18 | SimSpeed | int16 | 360/2^15 | 模拟目标速度 | +| 19 | SampShort | uint16 | 1 | 短码采样点数 | +| 20 | SampLong | uint16 | 1 | 长码采样点数 | +| 21 | DataRate | uint8 | 1Mbps | 采样率 | + +### **5.2 回波AD数据包 (DACS \-\> SPS)** + +**注意**:该数据包载荷通常超过 1500 字节,严禁依赖 IP 分片。网络交换设备必须配置 **MTU 9000**。 + +| 序号 | 字段名称 | 类型 | 说明 | +| :---- | :---- | :---- | :---- | +| 1 | CPICount | uint32 | CPI计数 | +| 2-21 | (参数回传) | \- | 包含当前CPI的实际执行参数(结构同5.1节序号6-21) | +| 22 | PRT\_Count | uint16 | N (脉冲个数) | +| 23 | IQ\_Data | Buffer | 变长数据区。排列格式: N \* (和路短码IQ \+ 和路长码IQ \+ 差路短码IQ ... \+ 辅助路IQ) | + +## **6\. 串行通信协议 (DACS \<-\> 天馈)** + +### **6.1 下行控制包 (DACS \-\> ANT)** + +采用定长数据帧,总长度 **24 Bytes**。 + +| 偏移 | 字段名称 | 长度 | 说明 | +| :---- | :---- | :---- | :---- | +| 0 | Header | 2B | 固定 **0x55AA** | +| 2 | DestID | 1B | 固定 0x05 (天馈) | +| 3 | SrcID | 1B | DACS ID (0x02/03/04) | +| 4 | TotalLen | 2B | 固定 24 (0x0018) | +| 6 | CPICount | 4B | CPI/波束计数 | +| 10 | WorkMode | 1B | 工作方式 (同表A.3) | +| 11 | WidthSel | 1B | 展宽选择 (同表A.3) | +| 12 | Azimuth | 2B | 方位指向 (0.0025°/LSB) | +| 14 | Elevation | 2B | 俯仰指向 (0.0025°/LSB) | +| 16 | Frequency | 1B | 工作频率代码 | +| 17 | MGC\_Gain | 2B | MGC 增益控制 | +| 19 | **Reserved** | **3B** | 保留字段 (全0) | +| 22 | **CRC16** | **2B** | **CRC-16-CCITT 校验码** | + +### **6.2 上行状态包 (ANT \-\> DACS)** + +采用定长数据帧,总长度 **24 Bytes**。 + +| 偏移 | 字段名称 | 长度 | 说明 | +| :---- | :---- | :---- | :---- | +| 0 | Header | 2B | 固定 **0x55AA** | +| 2 | DestID | 1B | DACS ID (0x02/03/04) | +| 3 | SrcID | 1B | 固定 0x05 (天馈) | +| 4 | TotalLen | 2B | 固定 24 (0x0018) | +| 6 | CPICount | 4B | 对应执行的CPI计数 | +| 10 | WorkMode | 1B | 当前工作方式 | +| 11 | WidthSel | 1B | 当前展宽状态 | +| 12 | Azimuth | 2B | 当前方位 (0.0025°/LSB) | +| 14 | Elevation | 2B | 当前俯仰 (0.0025°/LSB) | +| 16 | Frequency | 1B | 当前频率 | +| 17 | MGC\_Gain | 2B | 当前增益 | +| 19 | FaultCode | 2B | 故障状态码 (Bit0: 综合故障, Bit1-15: 扩展定义) | +| 21 | **Reserved** | **1B** | 保留字段 (全0) | +| 22 | **CRC16** | **2B** | **CRC-16-CCITT 校验码** | + +## **附录 A:单位换算参考** + +1. **角度**: Physical\_Angle (deg) \= Raw\_Value \* 0.0025 +2. **频率**: Frequency (MHz) \= 15500 \+ Raw\_Value \* 10 +3. **增益**: Gain (dB) \= Raw\_Value \* 0.5 +4. **时间**: Ethernet Header 中的 Timestamp 为 UTC 时间的秒数部分。 diff --git a/协议升级研究报告建议.pdf b/协议升级研究报告建议.pdf new file mode 100644 index 0000000..8779f82 Binary files /dev/null and b/协议升级研究报告建议.pdf differ