9 Star 29 Fork 19

opentsn / OpenPlanner

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 3.53 KB
一键复制 编辑 原始数据 按行查看 历史
xyjiang1216 提交于 2023-03-14 10:58 . 减小测试用例的规模

功能

运行方法

  • bin目录下的py文件可直接运行:python main_for_frame_demo.py

依赖包的安装

命令:pip install -r requirement.txt

核心模块

OpenPlanner的功能模块
  • OpenPlanner包括五个核心模块,各模块的功能如下:
    • 拓扑及流量生成模块:根据拓扑和流量需求生成相应的拓扑和流量,并将其写入拓扑信息文本文件和流量信息文本文件
    • 拓扑及流量解析模块:将拓扑信息及流量信息文本文件内容解析为与调度策略相关的数据结构
    • 约束生成模块:将调度约束表示成符合z3语法的逻辑表达式
    • 约束添加和求解模块:将逻辑表达式添加到z3求解器中,并尝试求出一个可行解
    • 输出解析模块:解析z3的输出结果,若有可行解,将可行解写入记录解的文本文件

代码结构

└── open-planner
├── bin:可执行的window_demo和frame_demo
│   ├── main_for_frame_demo.py
│   └── main_for_window_demo.py
├── lib:与调度策略无关的功能模块
│   ├── __init__.py
│   ├── lib.py
│   ├── topo_and_streams_generator.py:拓扑及流量生成模块
│   ├── txt_engine.py
│   └── z3_constraints_solver.py:约束添加和求解模块
├── log:存放解文本文件
├── frame_demo:与frame scheduling策略相关的功能模块
│   ├── constraints_constructor_for_frame_demo.py:约束生成模块
│   ├── data_structure_for_frame_demo.py:数据结构
│   ├── __init__.py
│   ├── topo_and_streams_txt_parser_for_frame_demo.py:拓扑及流量解析模块
│   └── z3_model_parser_for_frame_demo.py:输出解析模块
└── window_demo:与window scheduling策略相关的功能模块
├── constraints_constructor_for_window_demo.py:约束生成模块
├── data_structure_for_window_demo.py:数据结构
├── __init__.py
├── topo_and_streams_txt_parser_for_window_demo.py:拓扑及流量解析模块
└── z3_model_parser_for_window_demo.py :输出解析模块

参考文献

[1] R. Serna Oliver, S. S. Craciunas and W. Steiner, "IEEE 802.1Qbv Gate Control List Synthesis Using Array Theory Encoding," 2018 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), Porto, Portugal, 2018, pp. 13-24, doi: 10.1109/RTAS.2018.00008.

[2] Silviu S. Craciunas, Ramon Serna Oliver, Martin Chmelík, and Wilfried Steiner. 2016. Scheduling Real-Time Communication in IEEE 802.1Qbv Time Sensitive Networks. In Proceedings of the 24th International Conference on Real-Time Networks and Systems (RTNS '16). Association for Computing Machinery, New York, NY, USA, 183–192. https://doi.org/10.1145/2997465.2997470

🔗相关链接

  1. z3py tutorial
  2. Programming Z3
1
https://gitee.com/opentsn/open-planner.git
git@gitee.com:opentsn/open-planner.git
opentsn
open-planner
OpenPlanner
master

搜索帮助