32 lines
7.4 KiB
JSON
32 lines
7.4 KiB
JSON
|
|
{
|
|||
|
|
"projectId": 75,
|
|||
|
|
"generationId": "codegen_dde59ff85c1e4e4797ab9a9c6483a125",
|
|||
|
|
"language": "C++",
|
|||
|
|
"status": "completed",
|
|||
|
|
"fileIds": [
|
|||
|
|
1076
|
|||
|
|
],
|
|||
|
|
"outputDir": "D:\\workspace\\agent\\DocumentGenerateAgent\\agents\\ai_agents\\project-files\\codegen-runs\\codegen_dde59ff85c1e4e4797ab9a9c6483a125",
|
|||
|
|
"relativeOutputDir": "codegen-runs/codegen_dde59ff85c1e4e4797ab9a9c6483a125",
|
|||
|
|
"generatedFiles": [
|
|||
|
|
"CMakeLists.txt",
|
|||
|
|
"README.md",
|
|||
|
|
"events.ndjson",
|
|||
|
|
"include/app.hpp",
|
|||
|
|
"src/dau.cpp",
|
|||
|
|
"src/dsu.cpp",
|
|||
|
|
"src/main.cpp",
|
|||
|
|
"src/ppu.cpp",
|
|||
|
|
"tests/basic_test.cpp"
|
|||
|
|
],
|
|||
|
|
"analysisSummary": "### **业务目标** \n构建一个高可靠、实时性强的机载系统网络通信环境,支持多协议总线(CAN/CANFD/Ethernet/RS422)的数据采集、协议转换、数据存储与回放、路由转发及故障注入功能。系统需满足军用标准要求,在Win11和Ubuntu 20.04双操作系统环境下稳定运行,服务于实验室测试与未来机载部署场景。\n\n---\n\n### **功能清单** \n1. **基础通用通讯功能**:接收并处理来自多种总线和信号类型的原始数据帧,完成ID过滤、波特率适配、错误处理及总线状态监控。 \n2. **协议兼容与互通信功能**:实现CAN2.0与CANFD之间的协议识别与转换,遵循ARINC825标准,确保跨协议设备间通信一致性。 \n3. **数据存储功能**:将实时总线数据流进行缓冲预处理后持久化写入高速存储介质,具备磁盘故障告警与路径切换能力。 \n4. **数据管理与回放功能**:支持基于时间戳或事件索引的存储数据查询检索,并按原始时序精准回放数据流。 \n\n---\n\n### **数据结构** \n- **原始数据帧**:字节数组(Byte Array),大小可变,范围0–64字节,来源于硬件平台,由DAU接收。 \n- **CAN报文结构体**:包含ID、数据域、时间戳等字段,格式为8–64字节Hex编码,用于总线收发。 \n- **控制指令与状态数据**:JSON字符串格式,通过TCP/IP传输,用于上位机与系统的双向交互。 \n- **配置信息表(SQLite)**:\n - `config_id` (int)\n - `config_name` (string)\n - `config_value` (string)\n - `create_time` (datetime) \n- **存储文件组织**:二进制文件存储原始报文,按时间戳+通道ID分类;索引信息存于SQLite数据库中供快速检索。\n\n---\n\n### **接口或命令** \n| 接口标识 | 类型 | 方向 | 数据类型 | 描述 |\n|--------|------|-------|----------|------|\n| IF-HW-001 | 物理信号接口 | 输入 | Byte Array / Integer | 接收硬件平台的原始数据帧和状态信号 |\n| IF-CTRL-001 | 网络套接字(TCP/IP) | 双向 | JSON String | 上位机发送控制指令,系统返回状态数据 |\n| IF-BUS-001 | CAN/CANFD总线接口 | 双向 | Struct (CAN Frame) | 与外部被测设备进行报文收发 |\n\n**关键内部接口**:\n- `RawDataIn`(输入):接收原始数据帧(Byte[])\n- `ValidDataOut`(输出):输出经过滤的有效数据(Struct)\n- `CanFrameIn`(输入):接收CAN/CANFD帧\n- `CompatibleFrameOut`(输出):输出兼容格式帧\n- `DataStreamIn`(输入):接收待存储的数据流\n- `StorageStatus`(输出):返回当前存储状态(Enum)\n- `QueryCmd`(输入):接收查询条件结构体\n- `ReplayData`(输出):输出用于回放的字节流\n\n---\n\n### **约束** \n1. 运行环境限定为 **Windows 11** 和 **Ubuntu 20.04** 双盘系统。 \n2. 必须符合 **GJB 2786A-2009**、**GJB 438C-2021** 等军用软件开发标准。 \n3. 存储使用本地NVMe SSD,不采用分布式存储方案。 \n4. 所有外部输入必须经过严格校验,防止注入攻击。 \n5. 软件模块必须支持独立测试与替换,耦合度低。 \n6. 关键操作需记录日志,支持审计追溯。 \n7. 支持宽温、抗振动、电磁兼容等机载环境适应性要求。\n\n---\n\n### **测试建议** \n1. **单元测试**:对每个软件单元(如DAU-001、PPU-001)编写测试用例,验证其输入输出行为是否符合设计说明。 \n2. **集成测试**:模拟完整数据流路径(采集→解析→存储/回放),检查各模块间接口协同是否正常。 \n3. **性能测试**:使用LoadRunner或自定义脚本施加高负载数据流,测量延迟、吞吐量、CPU/内存占用率;结合Wireshark分析网络报文。 \n4. **容错测试**:人为制造磁盘满、断网、错误帧等异常情况,验证系统告警、恢复机制是否有效。 \n5. **安全性测试**:尝试注入非法JSON指令或畸形CAN帧,确认系<EFBFBD><EFBFBD>
|
|||
|
|
"eventLogFile": "D:\\workspace\\agent\\DocumentGenerateAgent\\agents\\ai_agents\\project-files\\codegen-runs\\codegen_dde59ff85c1e4e4797ab9a9c6483a125\\events.ndjson",
|
|||
|
|
"repoSettings": {
|
|||
|
|
"username": "root",
|
|||
|
|
"password": "pAssW0rd",
|
|||
|
|
"repoUrl": "http://47.108.255.216:3000/root/net_env_project.git",
|
|||
|
|
"branch": "main"
|
|||
|
|
},
|
|||
|
|
"repoUrl": "http://47.108.255.216:3000/root/net_env_project.git",
|
|||
|
|
"branch": "main"
|
|||
|
|
}
|