计 算 机 系 统 应 用 http://www.c-s-a.org.cn 2016 年 第 25 卷 第 1 期 的 编 程 语 言 Giotto [9] 编 写 控 制 程 序, 可 以 方 便 的 控 制 程 序 的 逻 辑 执 行 时 间, 从 而 使 得 任 务 时 间 的 依 赖 关 系



Similar documents
Microsoft Word - 专论综述1.doc

Mechanical Science and Technology for Aerospace Engineering October Vol No. 10 Web SaaS B /S Web2. 0 Web2. 0 TP315 A

<4D F736F F D D DBACEC0F25FD0A3B6D4B8E55F2DB6FED0A32D2D2DC8A5B5F4CDBCD6D0B5C4BBD8B3B5B7FBBAC52E646F63>

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

2 3. 1,,,.,., CAD,,,. : 1) :, 1,,. ; 2) :,, ; 3) :,; 4) : Fig. 1 Flowchart of generation and application of 3D2digital2building 2 :.. 3 : 1) :,

Vol. 22 No. 4 JOURNAL OF HARBIN UNIVERSITY OF SCIENCE AND TECHNOLOGY Aug GPS,,, : km, 2. 51, , ; ; ; ; DOI: 10.

IP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I

填 写 要 求 一 以 word 文 档 格 式 如 实 填 写 各 项 二 表 格 文 本 中 外 文 名 词 第 一 次 出 现 时, 要 写 清 全 称 和 缩 写, 再 次 出 现 时 可 以 使 用 缩 写 三 涉 密 内 容 不 填 写, 有 可 能 涉 密 和 不 宜 大 范 围 公

Microsoft Word - 王彬_已修改_.doc

2011第1期第二部分

小论文草稿2_邓瀚

CHINA SCIENCE AND TECHNOLOGY DEVELOPMENT REPORT

,,, () 20 80,,,,, ;,, ;,, ;,,,,,,,,, [1 ], :,,,,2 2,,, () (),,,,:,,,,:,,,, :, [2 ] :,,,,,,, : AN NA,,,,,, ( ),:,,: ( F) = (A1 + A2 + A3 + An -

CH01.indd

80 温 州 大 学 学 报 社 会 科 学 版 (2012) 第 25 卷 第 1 期 构 混 乱 表 意 不 明 不 合 逻 辑 其 中 前 四 种 属 于 结 构 类 语 病, 考 查 几 率 较 高 ; 后 两 种 属 于 语 义 类 语 病, 有 时 会 单 独 出 题 上 面 这 道 题

/3 CAD JPG GIS CAD GIS GIS 1 a CAD CAD CAD GIS GIS ArcGIS 9. x 10 1 b 1112 CAD GIS 1 c R2VArcscan CAD MapGIS CAD 1 d CAD U

1. 课 程 负 责 人 情 况 姓 名 蒋 效 宇 性 别 男 出 生 年 月 基 本 信 息 最 终 学 历 研 究 生 职 称 副 教 授 电 话 学 位 博 士 职 务 无 传 真 研 究 方 向 MIS 系 统 整 合 电 子

10 ( ) ( ) [5] 1978 : [1] (P13) [6] [1] (P217) [7] [1] (P19) : : [1] [4] (P1347) (P18) 1985 : [1] (P343) 1300 : [1] (P12) 1984 :


交流活动

Microsoft Word - 专论综述1.doc

<4D F736F F F696E74202D20C8EDBCFEBCDCB9B9CAA6D1D0D0DEBDB2D7F92E707074>

标题

Microsoft Word - A doc

[1] Liu Hongwei,2013, Study on Comprehensive Evaluation of Iron and Steel Enterprises Production System s Basic Capacities, International Asia Confere

2015 年 第 24 卷 第 11 期 计 算 机 系 统 应 用 历 的 主 体 部 分 多 以 非 结 构 化 的 文 本 形 式 存 储, 很 多 研 究 只 能 基 于 有 限 的 结 构 化 数 据 进 行 [4,5], 无 法 满 足 临

,,.,, : 1),,,,, 2),,,,, 3),,,,,,,,,, [6].,,, ( ),, [9], : 1), 2),,,,, 3),,, 2.,, [10].,,,,,,,,, [11]. 2.1,, [12],, ;, ; Fig. 1 1 Granular hier

48 Computer Education 课 程 体 系 设 置 2.1 科 学 设 置 培 养 方 案 课 程 模 块, 确 定 培 养 方 向 首 先, 我 们 通 过 对 人 才 市 场 需 求 分 析, 确 定 了 专 业 培 养 目 标 然 后, 根 据 教 育 部 高 等

1 引言

,.,,.. :,, ,:, ( 1 ). Π,.,.,,,.,.,. 1 : Π Π,. 212,. : 1)..,. 2). :, ;,,,;,. 3

第一章 前言

Microsoft Word - A doc

第 1 期 常 壮 等 : 基 于 RS-485 总 线 的 舰 船 损 管 训 练 平 台 控 系 统 研 究 87 能 : 1) 损 管 基 本 理 论 的 学 习 帮 助 舰 员 熟 悉 舰 艇 舱 室 相 关 规 章 制 度 损 管 施 分 布 和 使 用 不 沉 性 文 件 等 ) 损 管

IT 36% Computer Science Teachers Association, CSTA K K-12 CSTA K-12 K-12 K-6 K6-9 K STEM STEM STEM

Microsoft Word - 19王建华.doc

g 100mv /g 0. 5 ~ 5kHz 1 YSV8116 DASP 1 N 2. 2 [ M] { x } + [ C] { x } + [ K]{ x } = { f t } 1 M C K 3 M C K f t x t 1 [ H( ω )] = - ω 2

F4

专 技 能 1. 精 通 Matlab/Simulink 平 台 下 的 海 洋 运 载 器 运 动 控 制 系 统 与 仿 真 建 模 设 计 ; 2. 精 通 51 单 片 机 AVR 单 片 机 Arduino 开 源 板 的 开 发 和 设 计 ; 3. 精 通 基 于 Arduino 板

<4D F736F F D20A3A8D3A1CBA2A3A C4EAB1BEBFC6D7A8D2B5BDE9C9DC5FD6D0CEC45FA3A A3A9>

Microsoft Word - 专论综述1.doc

大学计算机基础B.doc

中 国 系 统 工 程 学 会 理 事 会 民 主 管 理 办 法 中 国 系 统 工 程 学 会 行 政 人 员 人 事 管 理 制 度 中 国 系 统 工 程 学 会 财 务 管 理 办 法 教 育 系 统 工 程 专 业 委 员 会 2015 年 工 作 总 结 过 程 系 统 工 程 专 业

高 职 计 算 机 类 优 秀 教 材 书 目 * 序 号 书 号 (ISBN) 书 名 作 者 定 价 出 版 / 印 刷 日 期 ** 配 套 资 源 页 码 计 算 机 基 础 课 计 算 机 应 用 基 础 刘 升 贵 年 8 月

山东省招生委员会

4 115,,. : p { ( x ( t), y ( t) ) x R m, y R n, t = 1,2,, p} (1),, x ( t), y ( t),,: F : R m R n.,m, n, u.,, Sigmoid. :,f Sigmoid,f ( x) = ^y k ( t) =

,, 2,,,,,,,,, S7-400 PLC, F M mm ;, AGC 6 mm ;,, 3 AGC AFC ( ) ( ), I/O ET 200M, PROFIBUS-DP S7 400 PLC 1 S7-400 PLC ( HMI) ET200M, PROFIBUS

作 主 动 追 求 知 识 获 取 技 能, 在 心 理 和 生 理 上 都 非 常 积 极 的 个 体 (Zimmerman & Pons, 1986) 在 此 期 间, 自 我 效 能 感 (self-efficacy) 自 我 控 制 (self-control) 自 我 管 理 (self-

(Microsoft Word - 22\264\301\261\306\252\ \247\271\246\250.doc)

Tanet

附件4

XXX专业本科人才培养方案

Total Internet Connectivity in a Single Chip

Microsoft Word - 32

计 算 机 系 统 应 用 年 第 25 卷 第 4 期 线 程 的 复 用 [2,3]. 通 常 情 况 下, 服 务 器 端 程 序 在 启 动 时 创 建 若 干 数 量 的 线 程 对 象 并 缓 存 起 来, 此 时 它 们 处 于

业 务 与 运 营 社 交 网 络 行 为 将 对 网 络 流 量 造 成 较 大 影 响 3) 即 时 通 信 类 业 务 包 括 微 信 QQ 等, 该 类 业 务 属 于 典 型 的 小 数 据 包 业 务, 有 可 能 带 来 较 大 的 信 令 开 呼 叫 建 立 的 时 延 销 即 时

CHINA SCIENCE AND TECHNOLOGY DEVELOPMENT REPORT ()

Microsoft Word 定版

56 包 装 工 程 1.2 眼 动 跟 踪 技 术 介 入 APP 图 形 用 户 界 面 可 用 性 评 估 眼 动 仪 是 基 于 眼 动 轨 迹 跟 踪 的 装 置, 用 于 测 量 眼 睛 的 位 置 和 眼 球 运 动 眼 动 仪 是 用 于 人 类 视 觉 系 统 心 理 学 认 知

2 ( 自 然 科 学 版 ) 第 20 卷 波 ). 这 种 压 缩 波 空 气 必 然 有 一 部 分 要 绕 流 到 车 身 两 端 的 环 状 空 间 中, 形 成 与 列 车 运 行 方 向 相 反 的 空 气 流 动. 在 列 车 尾 部, 会 产 生 低 于 大 气 压 的 空 气 流

会 议 组 织 研 讨 会 主 席 : 周 巢 尘 院 士 ( 中 国 科 学 院 软 件 研 究 所 ) 程 序 委 员 会 主 席 : 段 振 华 教 授 ( 西 安 电 子 科 技 大 学 ) 董 云 卫 教 授 ( 西 北 工 业 大 学 ) 工 业 专 题 主 席 : 叶 宏 研 究 员

Microsoft Word - A doc

Microsoft Word - A _ doc

Microsoft Word - CMRO ??????????????? Luxiaoyan

附3

ZS.indd

Microsoft Word - 31空中大學校稿檔.doc

f 2 f 2 f q 1 q 1 q 1 q 2 q 1 q n 2 f 2 f 2 f H = q 2 q 1 q 2 q 2 q 2 q n f 2 f 2 f q n q 1 q n q 2 q n q n H R n n n Hessian

mm ~

06721 main() lock pick proc() restart() [2][4] MINIX minix2.0 GDT, IDT irq table[] CPU CPU CPU CPU (IDTR) idt[] CPU _hwint00:! Interrupt


事故的共性原因: 行为、知识、习惯

JOURNAL OF NANJING UNIVERSITY OF FINANCE AND ECONOMICS Wild t % 50% 15% % 19 17%

,2(1) 基 礎 上, 各 種 數 據 均 以 圖 形 化 方 式 表 達, 因 此 各 級 分 析 結 果 均 可 以 隨 時 檢 驗 另 外, 由 於 系 統 是 以 網 站 形 式 發 佈, 任 何 用 戶 均 可 通 過 網 絡 查 詢 瀏 覽 系 統 中 的 數 據, 因

5. 充 分 发 挥 文 献 阅 读 在 夯 实 硕 士 生 有 关 科 专 业 知 识 和 理 论 基 础 中 的 作 用 在 导 师 组 的 指 导 下, 硕 士 生 要 充 分 阅 读 本 专 业 的 经 典 文 献, 并 力 求 内 和 外 相 结 合, 以 内 阅 读 督 促 外 阅 读


10 中 草 药 Chinese Traditional and Herbal Drugs 第 43 卷 第 1 期 2012 年 1 月 生 药 打 粉 入 药 的 基 本 特 点, 借 鉴 材 料 学 粉 体 学 等 学 科 的 研 究 成 果, 在 中 药 传 统 制 药 理 念 的 启 发

基 础 实 室 4 计 算 机 网 络 唐 爱 红 专 业 机 房 PROTEL 联 想 同 方 电 脑 180 台 唐 爱 红 MATLAB 计 算 机 网 络 电 工 电 子 技 能 训 练 室 电 子 基 本 技 能 示 波 器 毫 伏 表 雕 刻 机 图 示 仪 电 子 实 训 台 电 工

Microsoft Word - 08_科普作品選讀示例一_ doc

~ ~ ~

Microsoft Word - chnInfoPaper6

University of Science and Technology of China A dissertation for master s degree Research of e-learning style for public servants under the context of

Microsoft Word tb 何颖

目次 

Microsoft Word - 61-杨丽丽

2011年上海市高校精品课程申报表(本科)

Microsoft Word - 01李惠玲ok.doc

System Design and Setup of a Robot to Pass over Steps Abstract In the research, one special type of robots that can pass over steps is designed and se

附件2:

ZHONG Chong A Study on the Map of Provincial Capital of Zhejiang Past and Present

环境指标

MAXQ BA ( ) / 20

第 02 期 1 医 疗 信 息 现 状 20% EMR Electronic Medical Record HIS HIS [1-2] 张 肖 等 : 基 于 大 数 据 的 医 疗 健 康 创 新 应 用 2 大 数 据 环 境 下 医 疗 数 据 特 征 分 析 PC [3]

Microsoft Word - 11-秦华伟.doc


59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID

% % CHINA SCIENCE AND TECHNOLOGY DEVELOPMENT REPORT % % % % 28.6%

社科网-论文在线

F3

208 中 南 大 学 学 报 ( 社 会 科 学 版 ) 2013 年 第 19 卷 第 6 期 节 目 录 上 卷 一 所 载 篇 名, 乃 总 目 录 中 篇 名 之 误, 正 文 卷 一 收 录 篇 名 为 月 支 使 者 玄 觉 杜 凝 妻 灌 国 婴 女 独 狐 及 吕 卿 均 五 篇

2013 年 科普工作全面扎实推进 科普能力建设稳步增强 科 普队伍继续壮大 科普经费投入增长显著 科普基础设施日益完善 全国科技活动周 等一系列重大科普活动得到公众广泛参与 针对 农村 青少年等特定地区 特定人群的科普活动在保持原有特色的 基础上不断创新 新媒体科普迅速发展 官方的科技资源网络共享

Transcription:

1 基 于 PRET 的 编 程 模 型 李 晓 飞, 陈 香 兰 ( 中 国 科 学 技 术 大 学 计 算 机 学 院, 合 肥 230039) 摘 要 : 时 间 可 预 测 性 在 信 息 物 理 系 统 设 计 领 域 正 变 得 越 来 越 重 要, 目 前 时 间 可 预 测 性 系 统 的 设 计 分 为 编 程 模 型 和 体 系 结 构 两 个 层 次, 编 程 模 型 的 研 究 往 往 是 基 于 传 统 RTOS 而 提 出 新 的 时 间 模 型, 体 系 结 构 层 则 是 现 有 体 系 结 构, 设 计 的 具 有 时 间 属 性 的 指 令 集 流 水 线 等 等. 基 于 时 间 可 预 测 体 系 结 构 PRET 和 可 预 测 时 间 模 型 LET 的 研 究, 提 出 将 PRET 和 LET 模 型 相 结 合 的 编 程 模 型, 并 通 过 分 析 和 实 验 证 明 了 这 种 设 计 的 可 行 性 和 优 势, 进 一 步 证 明 了 时 间 在 系 统 设 计 中 的 重 要 性. 关 键 词 : 时 间 可 预 测 性 ; 精 确 时 间 机 ; 逻 辑 时 间 模 型 ; 系 统 设 计 PRET-Based Programming Model LI Xiao-Fei, CHEN Xiang-Lan (School of Electronic Science and Technology, University of Science and Technology of China, Hefei 230039, China) Abstract: In CPS related embedded system design area, time predictability is becoming increasingly important. The system of time predictability can be divided into two level: the programming level based on the traditional RTOS or platform and the architecture level extended with time behavior. In this paper, based on the research between the predictable architecture and the predictable programming model, and a new programming model based on both PRET(PRecised Timed machine) was proposed. Finally an implementation based on this new model was exhibited, through this exhibition we can find that this new model had advantages to the Giotto model. Key words: time predictability; precised timed machine; logical execution time; system design 1 引 言 时 间 可 预 测 性 目 前 在 学 术 界 还 没 有 统 一 的 定 义. Grund 给 出 了 一 种 比 较 宽 泛 的 定 义 [1], 但 无 法 通 过 穷 举 的 方 法 找 到 定 义 中 的 最 大 值 和 最 小 值, 无 法 给 出 其 确 切 的 时 间 可 预 测 性 值. 不 过 通 过 静 态 分 析 的 方 法 给 出 其 执 行 时 间 的 上 界 和 下 界, 通 过 减 少 两 者 之 间 的 差 值, 肯 定 会 提 高 定 义 中 的 时 间 时 间 可 预 测 性. 因 此 该 定 义 并 不 能 给 出 测 量 时 间 可 预 测 性 的 方 法, 但 是 给 出 了 提 高 时 间 可 预 测 性 的 思 路. 为 了 提 高 系 统 时 间 可 预 测 性, 从 体 系 结 构 层 次 出 发, Lee 提 出 了 精 确 时 间 机 的 概 念 [2], 也 就 是 PRET (Precison Timed Machines), 他 和 S.Edward 设 计 出 一 种 基 于 XilinxSpartan 3 XC3S200 平 台 的 PRET, 不 过 由 于 其 完 全 了 抛 弃 了 处 理 器 的 流 水 线 功 能, 效 率 并 不 高. [3] 之 后 Ip 和 Liu 分 别 提 出 了 基 于 SPARC 指 令 集 和 [4] ARM 指 令 集 的 PRET, Liu 的 PTARM 采 用 了 五 级 细 粒 度 多 线 程 流 水 线, 大 大 提 高 了 效 率, 然 而 由 于 只 是 将 线 程 进 行 简 单 隔 离, 并 不 能 进 行 线 程 的 调 度, 当 线 程 数 量 小 于 4 的 时 候, 就 会 有 大 量 空 闲 的 时 钟 周 期 浪 费. Zimmer 在 PTARM 之 上 提 出 了 FlexPRET 平 台 [5], 该 平 台 解 决 PTARM 的 线 程 调 度 问 题. 编 程 模 型 方 面, 时 间 可 预 测 性 模 型 的 研 究 也 在 快 速 发 展, 最 早 由 G.Berry 提 出 的 同 步 语 言 [6], 通 过 假 设 程 序 的 执 行 时 间 为 瞬 时, 更 加 容 易 确 定 程 序 执 行 的 顺 序, 进 而 提 高 其 确 定 性, 不 过 由 于 使 用 同 步 语 言 设 计 程 序 比 较 复 杂, 需 要 验 证 满 足 定 点 原 理 (fixed-point) [7], 使 用 起 来 并 不 方 便. Kirsch 在 同 步 语 言 基 础 上, 提 出 了 逻 辑 执 行 时 间 (LET) 的 概 念 [8], 通 过 使 用 LET 时 间 模 型 1 基 金 项 目 : 国 家 自 然 科 学 基 金 (61379040,61272131); 江 苏 省 自 然 科 学 基 金 (SBK2012194) 收 稿 时 间 :2015-04-19; 收 到 修 改 稿 时 间 :2015-05-07 Software Technique Algorithm 软 件 技 术 算 法 141

计 算 机 系 统 应 用 http://www.c-s-a.org.cn 2016 年 第 25 卷 第 1 期 的 编 程 语 言 Giotto [9] 编 写 控 制 程 序, 可 以 方 便 的 控 制 程 序 的 逻 辑 执 行 时 间, 从 而 使 得 任 务 时 间 的 依 赖 关 系 不 会 影 响 到 其 执 行 顺 序 而 仅 仅 和 时 间 相 关, 在 执 行 顺 序 确 定 的 情 况 下, 时 间 可 预 测 性 可 以 得 到 保 证, Giotto 语 言 相 比 同 步 语 言 简 洁 很 多, 但 其 描 述 能 力 有 限, 它 只 能 通 过 基 于 状 态 的 方 式 描 述 系 统 的 执 行 过 程, 当 系 统 状 态 很 多 的 时 候, 描 述 起 来 就 会 非 常 的 繁 冗. Henziger 提 出 的 另 外 一 个 编 程 语 言 HTL 很 好 的 解 决 了 描 述 能 力 平 坦 化 的 问 题 [10], 通 过 使 用 Refinement 原 理, 支 持 任 务 的 层 次 化 描 述, 使 得 任 务 描 述 从 线 性 变 成 了 树 型, 此 时 其 可 调 度 性 分 析 的 难 度 加 大. 本 文 通 过 对 体 系 结 构 层 和 编 程 模 型 层 的 研 究, 提 出 在 LET 和 PRET 相 结 合 的 编 程 模 型, 并 通 过 实 例 证 明 了 该 模 型 的 可 行 性 和 相 对 于 LET 时 间 模 型 的 优 势. 2 相 关 工 作 PRET 的 思 想 是 系 统 的 时 序 特 性 需 要 像 其 功 能 特 性 一 样 清 晰. 就 像 能 够 保 证 处 理 器 上 的 算 术 是 移 植 可 预 测 并 且 可 以 文 档 化 的. 我 们 也 希 望 它 的 执 行 速 度 也 是 如 此. 当 然, 将 时 钟 频 率 降 低 是 一 种 方 法. 但 是 这 样 会 明 显 大 幅 降 低 处 理 器 性 能. PRET 的 目 标 是 重 新 思 考 体 系 结 构 的 特 点 并 对 其 进 行 重 新 设 计 使 其 具 有 时 间 可 预 测 性. 在 SPARC-PRET 中, 使 用 DEAD 指 令 进 行 时 间 的 同 步, 在 PTARM 中 则 使 用 DELAY_UNTIL 完 成 时 间 同 步. 它 们 的 实 际 作 用 是 相 同 的, 在 此 并 不 详 细 介 绍 两 种 PRET 的 实 现, 而 是 通 过 实 例 介 绍 基 于 PRET 的 编 程 模 型. 2.1 时 间 指 令 DEAD 指 令 允 许 程 序 员 直 接 在 代 码 中 设 定 精 确 到 时 钟 周 期 的 定 时 器. 该 指 令 设 定 某 段 代 码 的 执 行 下 界. 图 1 中 代 码 两 次 使 用 了 DEAD 指 令, 第 2 行 中 的 DEAD 指 令 将 定 时 器 设 定 为 28, 此 时 可 能 之 前 也 使 用 了 DEAD 指 令, 因 此 首 先 等 待 并 不 会 立 即 执 行 下 面 的 指 令 而 是 首 先 等 待 定 时 器 变 为 0, 之 后 再 将 定 时 器 设 定 为 28, 并 开 始 执 行 下 面 的 指 令. 在 遇 到 第 二 个 DEAD 指 令 的 时 候, 在 此 会 等 待 定 时 器 变 为 0, 并 再 设 定 为 26. 这 样 就 可 以 保 证 在 指 定 时 刻 开 始 执 行 DEAD 后 面 的 指 令 完 成 同 步 操 作. Producer 1:int main() 2: DEAD(28); 3: volatile unsigned in * buf = 4: (unsigned int *)(0x3F800200); 5: unsigned int i = 0; 6: for (i = 0; ; i++) 7: DEAD(26); 8: *buf = I; 9: 10: return 0; 11: 图 1 DEAD 代 码 片 段 2.2 线 程 交 错 流 水 线 PRET 大 多 采 用 流 水 线 线 程 分 离 技 术 来 防 止 出 现 数 据 访 问 冲 突 并 且 提 高 系 统 吞 吐 率. 所 谓 流 水 线 线 程 分 离 指 的 是 在 流 水 线 中 将 不 同 的 线 程 依 次 分 配 在 各 级 流 水 线 中, 当 一 个 线 程 取 值 之 后 下 一 个 时 钟 周 期 的 取 值 的 为 不 相 关 的 线 程, 只 有 在 某 个 线 程 写 回 周 期 执 行 之 后 才 会 继 续 执 行 下 条 指 令, 从 而 不 会 出 现 数 据 冲 突 控 制 冲 突 等 会 导 致 流 水 线 停 留 的 的 情 况 发 生. 另 外, 同 时 执 行 多 条 线 程 增 加 了 处 理 器 的 吞 吐 量, 在 线 程 少 于 流 水 线 级 别 的 情 况 下, 在 某 个 机 器 周 期 可 能 会 出 现 空 闲 状 况, 因 此 合 理 的 划 分 线 程 数 量 也 是 充 分 利 用 PRET 流 水 线 的 思 路 之 一. 2.3 逻 辑 运 行 时 间 Henziger 将 系 统 时 间 模 型 分 为 三 种, 零 执 行 时 间 模 型 (ZET), 边 界 执 行 时 间 模 型 (BET) 及 逻 辑 执 行 时 间 模 型 (LET). 其 中 BET 是 目 前 系 统 设 计 的 最 主 要 的 模 型, 通 过 限 定 任 务 执 行 的 截 止 时 间, 只 要 尽 量 安 排 任 务 在 截 止 时 间 之 前 执 行 完 毕 就 能 够 保 证 模 型 的 正 确 执 行, 基 于 截 止 时 间 的 EDF 算 法 是 BET 的 典 型 应 用. ZET 模 型 指 的 是 将 程 序 的 执 行 时 间 假 设 为 瞬 时, 从 而 只 需 要 关 注 任 务 的 执 行 序 列, 而 不 需 要 考 虑 任 务 在 执 行 过 程 中 发 生 的 竞 态 条 件, 典 型 的 应 用 为 同 步 语 言, 如 Esterel Lustre 等. LET 模 型 和 ZET 模 型 的 区 别 是 ZET 将 执 行 时 间 假 设 为 瞬 时, 而 LET 将 通 信 时 间 假 设 为 瞬 时. 三 者 在 执 行 时 间 的 区 别 可 以 通 过 图 2 准 确 的 看 出. 图 中 横 向 坐 标 代 表 时 间 轴, 横 线 箭 头 代 表 任 务 的 执 行 时 间, 可 以 看 出, ZET 中 没 有 横 线 箭 头, 执 行 时 间 为 0, LET 横 线 箭 头 横 跨 整 个 时 间 段, 而 BET 则 执 行 时 间 处 在 时 间 段 的 任 意 位 置. 也 就 是 说, BET 并 不 能 确 定 任 务 的 真 实 完 成 时 刻, 从 而 增 加 其 不 确 定 性. 142 软 件 技 术 算 法 Software Technique Algorithm

的, 用 户 需 要 编 写 时 间 和 功 能 两 份 代 码, 并 且 需 要 对 任 务 执 行 的 整 个 过 程 进 行 建 模 然 后 才 能 转 化 为 Giotto 代 码. 图 2 ZET LET 和 BET 的 区 别 和 逻 辑 运 行 时 间 相 对 应 的 为 物 理 运 行 时 间, 从 图 2 中 可 以 看 出 两 者 之 间 的 关 系 和 区 别. 在 考 虑 抢 占 调 度 的 情 况 下, 任 务 的 物 理 执 行 时 间 可 能 是 不 连 续 的, 并 且 只 占 用 其 对 应 逻 辑 运 行 时 间 的 部 分 时 间. 逻 辑 运 行 时 间 是 模 型 假 设 的 运 行 时 间, 在 实 际 情 况 下, 为 了 保 证 可 调 度 性 往 往 还 会 比 其 物 理 时 间 大 很 多. 图 3 显 示 了 LET 模 型 中 逻 辑 时 间 和 物 理 时 间 的 区 别. LET 时 间 模 型 和 其 它 两 种 时 间 模 型 相 比 具 有 一 定 的 优 势, LET 比 BET 具 有 更 为 确 定 的 输 入 输 出 时 间, 相 对 于 ZET 则 具 有 更 为 宽 松 的 限 制 条 件. 编 程 模 型 的 时 间 模 型 实 际 上 是 粗 粒 度 的 时 间 同 步 机 制, 通 过 任 务 级 别 的 时 间 同 步 保 证 任 务 能 够 在 指 定 时 间 完 成 同 步, 与 代 码 级 别 的 同 步 相 比, 性 能 损 耗 较 高. 逻 辑 物 理 开 始 执 行 逻 辑 执 行 时 间 激 活 运 行 被 抢 占 恢 复 运 行 图 3 逻 辑 运 行 时 间 和 物 理 运 行 时 间 的 比 较 典 型 LET 编 程 模 型 语 言 为 Giotto. Giotto 拥 有 配 套 编 译 器 和 解 析 器, 其 中 编 译 器 负 责 将 Giotto 代 码 编 译 为 E code, 解 析 器 E machine 则 负 责 E code 的 解 析 执 行. E machine 将 任 务 周 期 划 分 为 若 干 个 Unit 时 间 段, 该 时 间 段 也 就 是 E machine 的 逻 辑 时 钟, 它 记 录 了 逻 辑 时 间 的 变 化, 每 经 过 Unit 的 时 间, 逻 辑 时 钟 加 一, 同 时 E machine 需 要 解 析 E code. 为 了 保 证 LET 中 的 任 务 IO 时 间 瞬 时 的, 需 要 保 证 每 个 Unit 时 间 足 够 执 行 完 所 有 可 能 的 输 入 输 出 操 作. Giotto 的 系 统 设 计 流 程 较 为 繁 琐. 用 户 首 先 需 要 编 写 Giotto 代 码 和 任 务 代 码, 然 后 使 用 Giotto 编 译 器 将 Giotto 代 码 编 译 转 换 为 E code, 再 将 任 务 代 码 和 E code 放 在 具 有 E machine 的 RTOS 平 台 上 运 行, 可 以 看 出, Giotto 的 设 计 模 式 中, 时 序 代 码 和 功 能 代 码 是 分 离 结 束 执 行 3 LET 在 PRET 上 的 设 计 本 文 目 标 平 台 选 用 基 于 ARM 指 令 集 的 PTARM 作 为 硬 件 平 台, PTARM 是 基 于 armv4t 指 令 集 的 平 台 并 配 有 PTARM 仿 真 器. 本 节 首 先 提 出 代 码 级 逻 辑 执 行 时 间 概 念 并 给 出 并 发 模 型 同 时 提 出 基 于 Ptolemy 的 面 向 角 色 建 模 方 法, 最 后 通 过 实 例 设 计 说 明 该 设 计 方 法. 3.1 执 行 时 间 优 化 将 Giotto 模 型 应 用 到 PRET 上 的 最 简 单 实 现 已 经 存 在, 对 于 周 期 为 1000ms 的 task1, 其 实 现 代 码 如 图 4. Task1: task1(); output1(); 图 4 PRET 平 台 上 的 Giotto 实 现 DEAD 指 令 在 指 定 的 定 时 器 的 时 间 为 下 界 的 时 间 内, 指 定 时 间 到 达 之 前, 在 执 行 完 两 个 DEAD 之 间 的 代 码 之 后 不 会 执 行 任 何 指 令. 以 task1 为 例, 在 执 行 完 task1() 的 代 码 之 后, 处 理 器 会 处 于 空 转 状 态, 直 到 定 时 器 的 值 降 为 0, 这 实 际 上 是 处 理 器 资 源 的 浪 费. 这 实 际 上 是 由 于 粗 粒 度 的 时 间 同 步 导 致 的, 如 图 5 中 为 对 其 改 进. Task1: task1(); sleep(8000); output1(); Task2: task2(); sleep(18000); output2(); 图 5 PRET 平 台 上 的 实 现 改 进 task1 和 task2 给 出 执 行 的 上 界 为 1000us, 并 给 出 两 个 output 驱 动 的 执 行 时 间 上 界 也 为 1000us. 给 出 的 时 间 需 要 保 证 大 于 WCET 时 间 同 时 又 不 会 造 成 过 多 延 迟, 如 此 在 使 用 DEAD 指 令 时 就 不 会 出 现 过 多 的 处 理 Software Technique Algorithm 软 件 技 术 算 法 143

计 算 机 系 统 应 用 http://www.c-s-a.org.cn 2016 年 第 25 卷 第 1 期 器 浪 费. 之 后 使 用 睡 眠 原 语 将 处 理 器 安 全 的 交 出, 从 而 将 多 余 的 时 间 让 给 其 它 的 任 务 执 行. 3.2 代 码 级 逻 辑 运 行 时 间 传 统 LET 时 间 模 型 是 任 务 级 的, 它 要 求 任 务 在 执 行 的 过 程 中 不 能 发 生 交 互, 这 一 点 在 很 多 应 用 场 景 并 不 符 合, 例 如 生 产 者 消 费 者 模 型 中, 生 产 者 任 务 和 消 费 者 任 务 在 执 行 过 程 中 一 直 在 进 行 数 据 的 交 互. 为 此 本 文 提 出 了 代 码 级 逻 辑 运 行 时 间 概 念, 本 文 称 这 种 通 过 DEAD 指 令 设 定 的 时 间 为 代 码 级 逻 辑 运 行 时 间, 它 需 要 大 于 指 定 代 码 的 WCET 时 间, 同 时 在 此 期 间 内 CPU 不 能 被 抢 占. 在 消 除 代 码 执 行 时 间 抖 动 的 同 时 确 定 了 代 码 的 输 出 在 指 定 时 间 有 效. 通 过 代 码 级 LET 模 型 将 任 务 分 为 不 可 抢 占 的 若 干 代 码 片 段, 为 提 高 CPU 利 用 率, 使 用 sleep 来 设 置 可 抢 占 区 域 执 行 时 间, 从 而 实 现 了 代 码 级 的 执 行 时 间 控 制. LET 时 间 模 型 限 制 了 任 务 的 交 互 时 间 不 能 发 生 在 任 务 执 行 的 过 程 中, 决 定 了 其 时 间 同 步 粒 度 为 任 务 级 的, 同 时 也 限 制 了 任 务 的 设 计. 与 此 不 同 的 是, PRET 平 台 的 指 令 集 中 的 DEAD 指 令 能 够 从 代 码 级 别 控 制 某 段 代 码 的 执 行 时 间. 定 义 1( 代 码 级 逻 辑 运 行 时 间 ) 代 码 级 逻 辑 运 行 时 间 为 一 段 代 码 的 执 行 时 间 抽 象, 这 段 时 间 记 录 了 该 段 程 序 从 读 取 数 据 到 写 入 数 据 的 时 间 而 并 不 关 心 实 际 执 行 时 间. 代 码 级 逻 辑 运 行 时 间 和 传 统 逻 辑 运 行 时 间 本 质 上 的 区 别 是 同 步 粒 度. 在 传 统 逻 辑 执 行 时 间 模 型 中, 需 要 进 行 同 步 的 数 据 由 单 个 任 务 周 期 性 更 新, 因 此 只 需 要 将 任 务 的 周 期 作 为 mode [10]. 此 时 任 务 划 分 应 当 是 以 数 据 的 更 新 周 期 为 原 则 并 不 灵 活. 而 在 代 码 级 别 上, 使 用 逻 辑 执 行 时 间 来 抽 象 某 段 代 码 的 逻 辑 执 行 时 间, 因 此 在 任 务 设 计 商 更 为 灵 活. 3.3 并 发 模 型 DEAD 指 令 不 能 够 被 抢 占, CPU 利 用 率 不 高. 为 此 本 文 为 PRET 加 入 并 发 模 型. 添 加 PAR 语 言 扩 展 来 指 定 其 多 个 任 务 的 并 发 操 作. 定 义 2 PAR(time, thread1,thread2,thread3,..) 指 定 多 个 thread 可 以 并 发 执 行. 并 且 在 time 时 间 之 后 进 行 同 步. 为 保 证 执 行 的 过 程 不 发 生 等 待, 禁 止 各 个 thread 存 在 资 源 竞 争. time 设 定 通 过 各 个 thread 的 WCET 时 间 相 加 得 到. 3.4 细 粒 度 时 间 精 确 LET 模 型 为 了 保 证 硬 实 时 一 般 采 用 时 间 触 发 的 方 式, Giotto 中 使 用 Unit 来 更 新 逻 辑 时 钟, 并 且 需 要 使 用 时 钟 中 断 来 更 新 物 理 时 钟, 由 于 时 钟 中 断 还 需 要 完 成 触 发 调 度 的 工 作, 其 频 率 是 毫 秒 级 的, 这 使 得 Giotto 的 实 时 性 能 也 是 毫 秒 级 的 [10]. 在 PRET 中, 采 用 cycle 级 别 的 定 时 器, 从 而 使 其 精 确 到 cycle 级 别. 大 幅 提 高 其 精 度. 3.5 面 向 角 色 设 计 方 法 [11] 面 向 角 色 设 计 是 对 于 带 参 行 为 的 封 装, 实 现 的 是 输 入 数 据 到 输 出 数 据 的 过 程. 本 文 采 用 面 向 角 色 的 设 计 方 法 将 任 务 的 执 行 过 程 根 据 其 功 能 划 分 为 各 个 独 立 的 角 色 单 元, 各 个 角 色 具 有 自 身 的 代 码 级 逻 辑 执 行 时 间. 3.5.1 避 障 循 迹 小 车 设 计 流 程 以 避 障 循 迹 小 车 系 统 为 例 来 说 明 整 个 设 计 过 程. 首 先 给 出 设 计 流 程 图 如 图 6, 然 后 对 各 个 步 骤 进 行 解 释. 角 色 时 间 属 性 提 取 生 成 结 束 同 步 代 码 时 间 计 算 功 能 和 时 间 代 码 拼 接 角 色 功 能 代 码 提 取 图 6 基 于 PRET 平 台 设 计 流 程 3.5.2 面 向 角 色 建 模 按 照 面 向 角 色 的 设 计 思 路 首 先 对 任 务 进 行 划 分, 避 障 循 迹 小 车 包 括 有 避 障 和 循 迹 两 个 功 能. 其 中 避 障 主 要 基 于 双 目 超 声 波 传 感 器 实 现, 循 迹 主 要 基 于 两 侧 灰 度 传 感 器 实 现. 按 照 输 入 数 据 输 出 数 据 的 设 计 原 则. 超 声 波 数 据 包 括 信 号 数 据 到 距 离 数 据 的 转 换, 距 离 数 据 到 停 车 动 作 的 转 换. 灰 度 数 据 包 括 由 信 号 数 据 到 偏 离 方 向 的 转 换, 由 偏 离 方 向 到 小 车 转 弯 动 作 的 转 换. 因 此 可 以 得 到 四 个 角 色. 分 别 为 距 离 计 算 停 止 计 算 偏 离 计 算 和 拐 弯 计 算. 由 于 停 止 和 拐 弯 都 属 于 小 车 动 作 而 且 两 者 互 斥, 将 两 者 合 二 为 一 可 以 得 到 如 下 的 面 向 角 色 执 行 流 图 如 图 7. 读 取 超 声 波 传 感 器 读 取 灰 度 传 感 器 距 离 计 算 偏 向 计 算 动 作 计 算 执 行 动 作 图 7 避 障 循 迹 小 车 面 向 角 色 建 模 144 软 件 技 术 算 法 Software Technique Algorithm

很 多 建 模 工 具 如 (Simulink LabVIEW SPW) 中 都 提 供 面 向 角 色 建 模. 本 文 使 用 开 源 的 UC Berkeley 实 现 的 Ptolemy 工 具, Ptolemy 本 身 就 是 基 于 面 向 角 色 设 计 的, 而 且 它 的 模 型 生 成 文 件 为 XML, 方 便 进 行 代 码 生 成. 3.5.3 功 能 代 码 编 写 功 能 代 码 需 要 按 照 数 据 读 入, 数 据 处 理, 数 据 写 出 三 个 部 分 进 行 设 计. 由 于 逻 辑 执 行 时 间 内 是 不 允 许 抢 占 的, 因 此 不 需 要 对 于 上 述 三 个 部 分 进 行 顺 序 的 限 定, 只 需 要 角 色 代 码 能 够 完 成 相 应 功 能 即 可. 3.5.4 测 量 角 色 代 码 WCET 硬 实 时 系 统 设 计 中, WCET 的 测 量 是 至 关 重 要 的. 角 色 代 码 中 不 允 许 存 在 相 互 等 待 的 情 况, WCET 的 测 量 可 以 使 用 如 ait Bound-T 等 测 量 工 具. 角 色 的 WCET 时 间 决 定 了 其 在 相 应 平 台 上 执 行 的 物 理 时 间, 因 此 WCET 测 量 的 是 否 直 接 决 定 系 统 能 否 正 确 运 行. 3.5.5 代 码 生 成 使 用 Ptolemy 进 行 设 计 之 后 可 以 直 接 保 存 为 XML 文 件. XML 的 解 析 可 以 使 用 Python 调 用 XML 解 析 库 完 成. int main() par(20,thread1,thread2); computing(); dead(15); output(); void thread1() get_data1(); compute_distance(); void thread2() get_data2(); compute_direction(); 图 8 避 障 小 车 生 成 代 码 图 8 为 图 7 中 设 计 的 生 成 代 码, 代 码 中 已 经 将 之 前 Giotto 代 码 + 任 务 代 码 的 设 计 方 法 缩 减 为 只 需 要 任 务 代 码, 同 时 不 需 要 生 成 E code 调 用 E machine 解 析, 减 少 了 E machine 层 带 来 的 额 外 负 载. 4 结 语 硬 实 时 系 统 设 计 一 直 对 时 间 要 求 苛 刻, 传 统 设 计 方 式 已 经 不 能 满 足 其 对 于 时 间 的 需 求. 本 文 重 新 给 出 逻 辑 执 行 时 间 的 细 粒 度 定 义, 将 LET 模 型 应 用 到 PRET 平 台 上, 通 过 给 出 并 发 拓 展 原 语 和 代 码 设 计 框 架, 给 出 了 PRET 平 台 的 编 程 模 型, 解 决 了 目 前 PRET 平 台 设 计 困 难 的 问 题. 当 然 不 论 体 系 结 构 平 台 还 是 给 出 的 编 程 模 型, 都 还 具 有 不 足 的 地 方, 下 一 步 的 工 作 应 当 包 括 提 高 PTARM 可 用 性 和 完 善 编 程 模 型 实 现 上. 精 确 时 间 机 作 为 硬 实 时 系 统 的 设 计 的 新 方 法 将 成 为 未 来 研 究 热 点 之 一. 参 考 文 献 1 Grund D, Jan R, Wilhelm R. A Template for Predictability Definitions with Supporting Evidence. PPES. 2011. 2 Edwards SA, Lee EA. The case for the precision timed (PRET) machine. Proc. of the 44th annual Design Automation Conference. ACM. 2007. 3 Ip NJH, Edwards SA. A processor extension for cycle-accurate real-time software. Embedded and Ubiquitous Computing. Springer Berlin Heidelberg, 2006: 449 458. 4 Liu I, et al. A PRET microarchitecture implementation with repeatable timing and competitive performance. 2012 IEEE 30th International Conference on Computer Design (ICCD). IEEE. 2012. 5 Zimmer M, et al. FlexPRET: A processor platform for mixed-criticality systems[techinque Report]. ucb/eecs-2013-172. California Univ Berkeley Dept of Electrical Engineering and Computer Sciences. 2013. 6 Benveniste A, Berry G. The synchronous approach to reactive and real-time systems. Proc. of the IEEE 79.9 (1991): 1270 1282. 7 Edwards SA. The specification and execution of heterogeneous synchronous reactive systems[thesis]. University of California, Berkeley, 1997. 8 Kirsch CM, Sokolova A. The Logical Execution Time Paradigm. Advances in Real-Time Systems. Springer Berlin Heidelberg, 2012. 103 120. 9 Henzinger TA, Horowitz B, Kirsch CM. Giotto: A time-triggered language for embedded programming. Embedded Software. Springer Berlin Heidelberg, 2001. 10 Ghosal A, et al. A hierarchical coordination language for interacting real-time tasks. Proc. of the 6th ACM & IEEE International Conference on Embedded Software. ACM, 2006. 11 Lee EA, Neuendorffer S, Wirthlin MJ. Actor-oriented design of embedded hardware and software systems. Journal of Circuits, Systems, and Computers, 2003, 12(3): 231 260. Software Technique Algorithm 软 件 技 术 算 法 145