第四章
指令处理时间/步骤概述
4-1指令处理时间/步骤概述
4-2
4
手指
命令
处处
多莉
什么时候
之间
/
波波
苏
一个;一个。工作;工作。1
浏览
4-1指令处理时间/步骤概述
以下是CP系列中每种命令语言的处理时间。
整个用户程序(注)内,各指令语言的处理时间合计即为周期时间中的「运算处理时间」。 注: 确切地说,是周期执行任务中可执行状态的任务和分配到中断条件成立的中断任 务的程序。 指令语言的处理时间因指令执行时的条件而不同。 此外,请注意即使不执行指令,也会需要处理时间。 同时,表示指令长度(步)。这表示含有操作数的各指令语言占有多少用户程序区域。根据 指令语言,每一个指令语言需要从最小 1 步到最大 7 步的容量。 同时,请注意步并不表示指令语言的个数。 注 1: 程序容量以「步」为单位表示。1 步基本上相当于以往的 1 字。・ 除一部分指令语言外,可以附加微分执行(基本指令为「↑↓」、应用指令为「@%」)的选 项。请在此时的处理时间基础上加上以下所示的时间。
条件 CP1H CPU 单元
带微分(↑↓)时 +0.24μs
带微分(@%)时 +0.24μs 注 2:不执行指令时的处理时间的标准如下所示。
CP1H CPU 单元
约 0.1μs
参 考
从以往机型到 P 系列的程序容量换算标准 从以往机型(C 系列或者 CVM1/CV 系列)的程序容量(单位:字)换算为 CP 系列的程序容量(单位:步)时的标准如下。 另外,与 CS/CJ 系列相同,不需要换算。 在以往机型(C 系列或者 CVM1/CV 系列)的程序容量(单位:字)的逐个指 令上,加下表所示值(n)后的值为 CP 系列中的程序容量(单位:步)。
以往机型中的字数=a 字时 CP1→ 中的步数=(a+n)步
指令分类 动作选项 从 C 系列转换为 CP 系列时的 n 值
从 CVM1/CV 转换为 CP 系 列时的 n 值
基本指令 无 OUT 指令、SET 指令、RSET 指 令、KEEP 指令时:-1 其他指令:0
0
带上升沿微分 无 +1 带每次刷新 无 0 带有上升沿微分以及每
次刷新 无 +2
4-1 指令处理时间/步数一览
4-3
4
指 令 处 理 时 间 / 步 数 一 览
以往机型中的字数=a 字时 CP1→ 中的步数=(a+n)步
指令分类 动作选项 从 C 系列转换为 CP 系列时的 n 值
从 CVM1/CV 转换为 CP 系 列时的 n 值
应用指令 无 0 -1 带上升沿微分 +1 0 带每次刷新 无 +3 带有上升沿微分以及每次
刷新 无 +4
例如,OUT 指令时(地址 0~25515 指定时),C 系列中,每 1 指令 2 字,其中减 1 后, 在 CP 系列中,每 1 指令就是 1 步。 例如,每次刷新型传送指令 !MOV 的情况下,在 CVM1/CV 系列中,每 1 指令 4 字,其中 +3 后,变为 7 步。
■ 时序输入指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
读 LD 1 0.10 !LD 2 +24.10 带!的加数 读・ 非 LD NOT 1 0.10 !LD NOT 2 +24.10 带!的加数 与 AND 1 0.10 !AND 2 +24.10 带!的加数 与・ 非 AND NOT 1 0.10 !AND NOT 2 +24.10 带!的加数 或 OR 1 0.10 !OR 2 +24.10 带!的加数 或・ 非 OR NOT 1 0.10 !OR NOT 2 +24.10 带!的加数 块与 AND LD 1 0.05 块或 OR LD 1 0.05 非 NOT 520 1 0.05 P.F.上升沿微分 UP 521 3 0.50 P.F.下降沿微分 DOWN 522 4 0.50 LD 型・ 位测试 LD TST 350 4 0.35 LD 型・ 位测试非 LD TSTN 351 4 0.35 AND 型・ 位测试非 AND TSTN 351 4 0.35 OR 型・ 位测试 OR TST 350 4 0.35 OR 型・ 位测试非 OR TSTN 351 4 0.35
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-4
4
指 令 处 理 时 间 / 步 数 一 览
■ 时序输出指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时(μs) 执行条件
OUT 1 0.35 输出 !OUT 2 +23.07 带!的加数
输出非 OUT NOT 1 0.35 !OUT NOT 2 +23.07 带!的加数 保持 KEEP 011 1 0.40 上升沿微分 DIFU 013 2 0.50 下降沿微分 DIFD 014 2 0.50 置位 SET 1 0.30 !SET 2 +23.17 带!的加数 复位 RSET 1 0.30 通道指定 !RSET 2 +23.17 带!的加数 多位置位 SETA 530 4 11.77 1bit 置位 67.03 1000bit 置位 多位复位 RSTA 531 4 11.80 1bit 复位 69.63 1000bit 复位 1 位置位 SETB 532 2 0.5 !SETB 3 +23.31 1 位复位 RSTB 534 2 0.5 !RSTB 3 +23.31 1 位输出 OUTB 534 2 0.45 !OUTB 3 +23.22
*1:指定倍长常数时,指令长度为表中数值+1。
■ 时序控制指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时(μs) 执行条件
结束 END 001 1 9.18 无功能 NOP 000 1 0.05 互锁 IL 002 1 0.15 互锁解除 ILC 003 1 0.15
MILH 517 3 10.3 执行 IL 时 13.3 执行非 IL 时,不进行 IL
多重互锁 (微分标志保持型)
16.6 执行非 IL 时, 进行 IL
MILR 518 3 10.3 执行 IL 时 13.3 执行非 IL 时,不进行 IL
多重互锁 (微分标志不保持型)
16.6 执行非 IL 时,进行 IL MILC 519 2 8.3 IL 解除时以外 多重互锁解除 9.6 IL 解除时
转移 JMP 004 2 0.95 转移结束 JME 005 2 - 条件转移 CJP 510 2 0.95 JMP 条件成立时 条件不转移 CJPN 511 2 0.95 JMP 条件成立时 多重转移 JMP0 515 1 0.15 多重转移结束 JME0 516 1 0.15 重复开始 FOR 512 2 1.00 常数指定 循环中断 BREAK 514 1 0.15 重复结束 NEXT 513 1 0.45 循环继续时 0.55 循环结束时
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-5
4
指 令 处 理 时 间 / 步 数 一 览
■ 定时器/计数器指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
定时器 TIM 3 1.30 TIMX 550 循环继续时 计数器 CNT 3 1.30 CNTX 546 循环继续时 高速定时器 TIMH 015 3 1.80 TIMHX 551 循环继续时 超高速定时器 TMHH 540 3 1.75 TMHHX 552 累计定时器 TTIM 087 3 24.81 17.79 RESET 时 13.97 IL 时
TTIMX 555 3 23.78 17.76 RESET 时
14.11 IL 时 长时间定时器 TIML 542 4 15.69 13.61 IL 时 TIMLX 553 4 17.51 13.11 IL 时 多输出定时器 MTIM 543 4 35.36 12.81 RESET 时 MTIMX 554 4 41.95 17.42 RESET 时 可逆计数器 CNTR 012 3 29.03 CNTRX 548 22.44
CNR 545 3 15.27 1CH 复位 5.95ms 1000CH 复位 CNRX 547 3 14.44 1CH 复位
定时器/计数器复位
5.95ms 1000CH 复位
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-6
4
指 令 处 理 时 间 / 步 数 一 览
■ 数据比较指令
指令名称 助记符 FUN 编 号
指令长度 (步)*1
执行时
(μs) 执行条件
LD,AND,OR+= 300 4 0.35 LD,AND,OR+<> 305 LD,AND,OR+< 310 LD,AND,OR+<= 315 LD,AND,OR+> 320
符号比较(无符号)
LD,AND,OR+>= 325 LD,AND,OR+=+L 301 4 0.35 LD,AND,OR+<>+L 306 LD,AND,OR+<+L 311 LD,AND,OR+<=+L 316 LD,AND,OR+>+L 321
符号比较(倍长・ 无符号)
LD,AND,OR+>=+L 326 LD,AND,OR+=+S 302 4 0.35 LD,AND,OR+<>+S 307 LD,AND,OR+<+S 312 LD,AND,OR+<= 317 LD,AND,OR+>+S 322
符号比较(带符号)
LD,AND,OR+>=+S 327 LD,AND,OR+=+SL 303 4 0.35 LD,AND,OR+<>+SL 308 LD,AND,OR+<+SL 313 LD,AND,OR+<=+SL 318 LD,AND,OR+>+SL 323
符号比较(倍长・ 带符号)
LD,AND,OR+>=+SL 328 时刻比较 *2 =DT 341 4 18.8 <>DT 342 4 45.6 <DT 343 4 45.6 <=DT 344 4 18.8 >DT 345 4 45.6 >=DT 346 4 18.8 比较 CMP 020 3 0.10 !CMP 020 7 +45.2 带!的加数
倍长比较 CMPL 060 3 0.50 带符号 BIN 比较 CPS 114 3 0.30 !CPS 114 7 +45.2 带!的加数 带符号 BIN 倍长比较 CPSL 115 3 0.50 表格一致 TCMP 085 4 27.66 多通道比较 MCMP 019 4 42.33 无符号表格比较 BCMP 068 4 47.21
BCMP2 502 4 13.20 数据数 1 扩展表格间比较 650.0 数据数 255
区域比较 ZCP 088 3 11.53 倍长区域比较 ZCPL 116 3 11.28
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-7
4
指 令 处 理 时 间 / 步 数 一 览
■ 数据传送指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
传送 MOV 021 3 0.30 !MOV 021 7 +35.1 带!的加数
倍长传送 MOVL 498 3 0.60 否定传送 MVN 022 3 0.35 否定倍长传送 MVNL 499 3 0.60 位传送 MOVB 082 4 0.50 数字传送 MOVD 083 4 0.50 多位传送 XFRB 062 4 20.1 1bit 传送 266.30 255bit 传送 块传送 XFER 070 4 8.80 1 CH 传送 1.18ms 1000 CH 传送 块设定 BSET 071 4 14.63 1 CH 置位 570.17 1000 CH 置位 数据交換 XCHG 073 3 0.80
数据倍长交換 XCGL 562 3 1.5
数据分配 DIST 080 4 12.77 数据抽取 COLL 081 4 12.85 变址寄存器设定 MOVR 560 3 0.60 变址寄存器设定 MOVRW 561 3 0.60
*1:指定倍长常数时,指令长度为表中数值+1。
■ 数据移位指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
移位寄存器 SFT 010 3 12.68 1 CH 移位 1.49ms 1000 CH 移位 左右移位寄存器 SFTR 084 4 13.76 1 CH 移位 1.54ms 1000 CH 移位 非同步移位寄存器 ASFT 017 4 14.21 1 CH 移位 2.94ms 1000 CH 移位 字移位 WSFT 016 4 11.20 1 CH 移位 1.47ms 1 000CH 移位 左移 1 位 ASL 025 2 0.45 倍长左移 1 位 ASLL 570 2 0.80
右移 1 位 ASR 026 2 0.45 倍长右移 1 位 ASRL 571 2 0.80 带 CY 左循环 1 位 ROL 027 2 0.45 带 CY 倍长左循环 1 位 ROLL 572 2 0.80 无 CY 左循环 1 位 RLNC 574 2 0.45 无 CY 倍长左循环 1 位 RLNL 576 2 0.80 带 CY 右循环 1 位 ROR 028 2 0.45 带 CY 倍长右循环 1 位 RORL 573 2 0.80 无 CY 右循环 1 位 RRNC 575 2 0.45 无 CY 倍长右循环 1 位 RRNL 577 2 0.80 左移 1 位 SLD 074 3 11.86 1 CH 移位 1.24ms 1000 CH 移位 右移 1 位 SRD 075 3 13.95 1 CH 移位 1.85ms 1000 CH 移位
N 位数据左移 NSFL 578 4 14.39 1bit 移位 90.10 1000bit 移位 N 位数据右移 NSFR 579 4 14.43 1bit 移位 130.27 1000bit 移位 N 位左移 NASL 580 3 0.45 N 位倍长左移 NSLL 582 3 0.80 N 位右移 NASR 581 3 0.45 N 位倍长右移 NSRL 583 3 0.80
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-8
4
指 令 处 理 时 间 / 步 数 一 览
■ 增量/减量指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
BIN 增量 ++ 590 2 0.45 BIN 倍长增量 ++L 591 2 0.80 BIN 减量 -- 592 2 0.45 BIN 倍长减量 --L 593 2 0.80 BCD 增量 ++B 594 2 12.09 BCD 倍长增量 ++BL 595 2 10.59 BCD 减量 --B 596 2 11.63 BCD 倍长减量 --BL 597 2 9.59
*1:指定倍长常数时,指令长度为表中数值+1。
■ 四则运算指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
带符号・ 无 CY BIN 加法运算 + 400 4 0.30 带符号・ 无 CY BIN 倍长加法运算 +L 401 4 0.60 符号・ 带 CY BIN 加法运算 +C 402 4 0.40
符号・ 带 CY BIN 倍长加法运算 +CL 403 4 0.60 无 CY BCD 加法运算 +B 404 4 18.14 无 CY BCD 倍长加法运算 +BL 405 4 22.87 带 CY BCD 加法运算 +BC 406 4 19.07 带 CY BCD 倍长加法运算 +BCL 407 4 23.63 带符号・ 无 CY BIN 减法运算 - 410 4 0.3 带符号・ 无 CY BIN 倍长减法运算 -L 411 4 0.60 符号・ 带 CY BIN 减法运算 -C 412 4 0.40 符号・ 带 CY BIN 倍长减法运算 -CL 413 4 0.60 无 CY BCD 减法运算 -B 414 4 17.57 无 CY BCD 倍长减法运算 -BL 415 4 22.09 带 CY BCD 减法运算 -BC 416 4 18.37 带 CY BCD 倍长减法运算 -BCL 417 4 22.91 带符号 BIN 乘法运算 * 420 4 0.65 带符号 BIN 倍长乘法运算 *L 421 4 13.02 无符号 BIN 乘法运算 *U 422 4 0.75 无符号 BIN 倍长乘法运算 *UL 423 4 13.23 BCD 乘法运算 *B 424 4 16.83 BCD 倍长乘法运算 *BL 425 4 33.33 带符号 BIN 除法运算 / 430 4 0.70 带符号 BIN 倍长除法运算 /L 431 4 13.35 无符号 BIN 除法运算 /U 432 4 0.8 无符号 BIN 倍长除法运算 /UL 433 4 12.91 BCD 除法运算 /B 434 4 18.03 BCD 倍长除法运算 /BL 435 4 27.77
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-9
4
指 令 处 理 时 间 / 步 数 一 览
■ 数据转换指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
BCD→BIN 转换 BIN 023 3 0.40 BCD→BIN 倍长转换 BINL 058 3 10.41 BIN→BCD 转换 BCD 024 3 10.22 BIN→BCD 倍长转换 BCDL 059 3 10.18 2 的补数转换 NEG 160 3 0.35 2 的补数倍长转换 NEGL 161 3 0.60 符号扩展 SIGN 600 3 0.60
12.09 4→16 解码时/位数 1 位 14.15 4→16 解码时/位数 4 位 24.01 8→256 解码时/位数 1 位
4→16/8→256 解码器 MLPX 076 4
37.72 8→256 解码时/位数 4 位 11.90 16→4 解码时/位数 1 位 58.70 16→4 解码时/位数 4 位 19.76 256→8 解码时/位数 1 位
16→4/256→8 编码器 DMPX 077 4
80.32 256→8 解码时/位数 2 位 ASCII 代码转换 ASC 086 4 12.49 1 位 ASCII 代码转换 18.03 4 位 ASCII 代码转换 ASCII→HEX 转换 HEX 162 4 12.64 1 位转换 位列→位行转换 LINE 063 4 34.95 位行→位列转换 COLM 064 4 42.09 带符号 BCD→BIN 转换 BINS 470 4 15.73 数据类型指定编号 0 15.93 数据类型指定编号 1 15.93 数据类型指定编号 2 16.00 数据类型指定编号 3
BISL 472 4 18.59 数据类型指定编号 0 18.66 数据类型指定编号 1 18.41 数据类型指定编号 2
带符号 BCD→BIN 倍长转换
18.47 数据类型指定编号 3 带符号 BIN→BCD 转换 BCDS 471 4 13.16 数据类型指定编号 0 13.18 数据类型指定编号 1 13.00 数据类型指定编号 2 13.12 数据类型指定编号 3
BDSL 473 4 13.74 数据类型指定编号 0 13.58 数据类型指定编号 1 13.79 数据类型指定编号 2
带符号 BIN→BCD 倍长转换
13.75 数据类型指定编号 3 格雷码转换 GRY 474 4 82.99 8bit BIN 81.67 8bit BCD 98.65 8bit 角度 97.67 15bit BIN 98.99 15bit BCD 110.67 15bit 角度 97.00 360°BIN 108.33 360°BCD 113.00 360°角度
*1:指定倍长常数时,指令长度为表中数值+1。
■ 逻辑运算指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
字逻辑积 ANDW 034 4 0.30 字倍长逻辑积 ANDL 610 4 0.60 字逻辑和 ORW 035 4 0.45 字倍长逻辑和 ORWL 611 4 0.60 字异或 XORW 036 4 0.45 字倍长异或 XORL 612 4 0.60 字同或 XNRW 037 4 0.45 字倍长同或 XNRL 613 4 0.60 位取反 COM 029 2 0.45 位倍长取反 COML 614 2 0.80
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-10
4
指 令 处 理 时 间 / 步 数 一 览
■ 特殊运算指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
BIN 平方根运算 ROTB 620 3 43.99 BCD 平方根运算 ROOT 072 3 49.32 数值转换 APR 069 4 13.96 SIN,COS 计算指定 30.51 曲线近似计算指定 浮点除法运算(BCD) FDIV 079 4 222.90 位计数器 BCNT 067 4 29.70 1 CH 计数
*1:指定倍长常数时,指令长度为表中数值+1。
■ 浮点转换・ 运算指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
浮点→16 位 BIN 转换 FIX 450 3 13.03 浮点→32 位 BIN 转换 FIXL 451 3 12.03 16 位 BIN→浮点转换 FLT 452 3 8.97 32 位 BIN→浮点转换 FLTL 453 3 9.92 浮点加法运算 +F 454 4 12.60 浮点减法运算 -F 455 4 12.70 浮点除法运算 /F 457 4 13.40 浮点乘法运算 *F 456 4 12.67 角度→弧度转换 RAD 458 3 15.00 弧度→角度转换 DEG 459 3 17.97 SIN 运算 SIN 460 3 37.10 COS 运算 COS 461 3 41.97 TAN 运算 TAN 462 3 30.86 SIN-1 运算 ASIN 463 3 65.14 COS-1 运算 ACOS 464 3 31.26 TAN-1 运算 ATAN 465 3 53.07 平方根运算 SQRT 466 3 20.73 指数运算 EXP 467 3 53.07 对数运算 LOG 468 3 50.08 乘方运算 PWR 840 4 185.77
LD、AND、OR+=F 329 3 11.01 单精度浮点数据比较 LD、AND、OR+<>F 330
LD、AND、OR+<F 331 LD、AND、OR+<=F 332 LD、AND、OR+>F 333 LD、AND、OR+>=F 334 浮点<单>→字符串转换 FSTR 448 4 46.57 字符串→浮点<单>转换 FVAL 449 3 25.37
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-11
4
指 令 处 理 时 间 / 步 数 一 览
■ 双精度浮点转换・ 运算指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
双精度浮点数据比较 LD、AND、OR+=D 335 3 16.04 LD、AND、OR+<>D 336 LD、AND、OR+<D 337 LD、AND、OR+<=D 338 LD、AND、OR+>D 339 LD、AND、OR+>=D 340 浮点→16 位 BIN 转换<倍> FIXD 841 3 15.63 浮点→32 位 BIN 转换<倍> FIXLD 842 3 14.90 16 位 BIN→浮点转换<倍> DBL 843 3 12.29 32 位 BIN→浮点转换<倍> DBLL 844 3 14.13 浮点加法运算<倍> +D 845 4 17.89 浮点减法运算<倍> -D 846 4 17.96 浮点乘法运算<倍> *D 847 4 17.96 浮点除法运算<倍> /D 848 4 37.09 角度→弧度转换<倍> RADD 849 3 32.07 弧度→角度转换<倍> DEGD 850 3 33.76 SIN 运算<倍> SIND 851 3 66.97 COS 运算<倍> COSD 852 3 55.89 TAN 运算<倍> TAND 853 3 85.56 SIN-1 运算<倍> ASIND 854 3 22.64 COS-1 运算<倍> ACOSD 855 3 15.64 TAN-1 运算<倍> ATAND 856 3 14.91 平方根运算<倍> SQRTD 857 3 46.97 指数运算<倍> EXPD 858 3 102.49 对数运算<倍> LOGD 859 3 19.03 乘方运算<倍> PWRD 860 4 182.83
*1:指定倍长常数时,指令长度为表中数值+1。
■ 表格数据处理指令
指令名称 助记符 FUN 编号
指令长度 (步) *1
执行时 (μs)
执行条件
栈区域设定 SSET 630 3 16.97 栈区域中设定 5 CH 700.67 栈区域中设定 1000 CH 栈数据存储 PUSH 632 3 14.20 先入先出 FIFO 633 3 11.50 栈区域中设定 5 CH 1.48ms 栈区域中设定 1000 CH 后入先出 LIFO 634 3 16.94 表格区域宣言 DIM 631 5 30.69 记录位置设定 SETR 635 4 12.82 记录位置读取 GETR 636 4 15.78 数据检索 SRCH 181 4 29.11 1 CH 检索 4.86ms 1000 CH 检索 字节交换 SWAP 637 3 22.67 1 CH 替换 3.79ms 1000 CH 替换 最大值检索 MAX 182 4 34.17 1 CH 检索 4.46ms 1000 CH 检索 最小值检索 MIN 183 4 34.97 1 CH 检索 4.74ms 1000 CH 检索 总数值计算 SUM 184 4 46.63 1 CH 算出 2.37ms 1000 CH 算出 FCS 值计算 FCS 180 4 33.17 表格长 1 字 3.30ms 表格长 1000 字 栈数据数输出 SNUM 638 3 12.21 栈数据参见 SREAD 639 4 14.24 栈数据更新 SWRIT 640 4 13.20 栈数据插入 SINS 641 4 17.83 栈数据插入 758.04 表格长 1000 字 栈数据删除 SDEL 642 4 19.83 栈数据删除 763.61 表格长 1000 字
*:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-12
4
指 令 处 理 时 间 / 步 数 一 览
■ 数据控制指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
PID 运算 PID 190 4 550.12 开始执行时 546.43 取样时 152.87 非取样时 上下限限位控制 LMT 680 4 27.1 死区控制 BAND 681 4 27.23 静区控制 ZONE 682 4 26.43 时分割比例输出 TPO 685 4 19.85 PF=OFF 86.03 PF=ON 占空指定 or 输出限位无
效 95.27 PF=ON 操作量指定&输出限位
有效 缩放 SCL 194 4 23.30 缩放 2 SCL2 486 4 20.93 缩放 3 SCL3 487 4 24.37 数据平均化 AVG 195 4 63.4 1 次平均 540.87 64 次平均
PIDAT 191 4 740.97 PID 运算时 开始执行时 611.30 PID 运算时 取样时 197.97 PID 运算时 非取样时 212.86 AT 时 开始执行时
带自整定 PID 运算
548.97 AT 时 取样时
*1:指定倍长常数时,指令长度为表中数值+1。
■ 子程序指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
子程序调用 SBS 091 2 2.04 子程序进入 SBN 092 2 - 子程序回送 RET 093 1 1.80 宏 MCRO 099 4 47.9 全局子程序进入 GSBN 751 2 - 全局子程序回送 GRET 752 1 2.04 全局子程序调用 GSBS 750 2 1.80
*1:指定倍长常数时,指令长度为表中数值+1。
■ 中断控制指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
中断屏蔽设置 MSKS 690 3 51.90 置位 63.09 复位 中断屏蔽前导 MSKR 692 3 19.99 置位 43.67 复位 中断解除 CLI 691 3 49.46 置位 38.93 复位 中断任务执行禁止 DI 693 1 14.83 解除中断任务执行禁止 EI 694 1 27.44
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-13
4
指 令 处 理 时 间 / 步 数 一 览
■ 高速计数器/脉冲输出指令
指令名称 助记符 FUN 编 号
指令长度 (步)*1
执行时(μs) 执行条件
动作模式控制 INI 880 4 80.39 高速计数器比较开始 47.99 高速计数器比较停止 47.99 脉冲输出当前值变更 48.01 高速计数器当前值变更 27.92 中断输入计数器模式当前值变更 48.45 脉冲输出停止 26.08 PWM 输出停止 脉冲当前值读取 PRV 881 4 80.39 脉冲输出当前值读取 40.92 高速计数器当前值读取 28.63 中断输入计数器模式当前值读取 39.20 脉冲输出状态读取 66.43 高速计数器当前值读取 34.63 PWM 状态读取 对应机型不一致 145.52 高速计数器带域比较結果读取 47.48 高速计数器0频率读取 脉冲频率转换 PRV2 883 4 20.03 比较表登录 CTBL 882 4 221.63 目标一致表格登录&比较开始(1 点) 9.578ms 目标一致表格登录&比较开始(48 点) 262.37 带域比较表格登录&比较开始 166.03 仅限目标一致表格登录(1 点) 9.557ms 仅限目标一致表格登录(48 点) 241.70 仅限带域比较表格登录 频率设定 SPED 885 4 89.24 连续模式 94.47 单独模式 脉冲量设置 PULS 886 4 32.63 定位 PLS2 887 5 103.19
频率加减速控制 ACC 888 4 111.26 连续模式 121.73 单独模式 原点搜索 ORG 889 3 112.93 原点搜索 98.65 原点复位 PWM 输出 PWM 891 4 30.26
*1:倍长常数指定时,指令长度为表中数值+1。
■ 工序步进控制指令
指令名称 助记符 FUN 编号
指令长度 (步) *1
执行时 (μs)
执行条件
STEP 008 2 36.10 步继电器为 ON 时 步梯形图区域定义 18.77 步继电器为 OFF 时
步梯形图区域步进 SNXT 009 2 10.35
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-14
4
指 令 处 理 时 间 / 步 数 一 览
■ I/O 单元用指令 指令名称 助记符 FUN
编号 指令长
度 (步)*1
执行时 (μs)
执行条件
I/O 刷新 IORF 097 3 119.50 对象单元(CPM1A 系列扩展单元) 1 CH IN 122.17 对象单元(CPM1A 系列扩展单元) 1 CH OUT 282.20 对象单元(CJ 系列 高功能 I/O 单元) 10 CH IN 390.50 对象单元(CJ 系列 高功能 I/O 单元) 10 CH OUT 1.58ms 对象单元(CPM1A 系列扩展单元) 15 CH IN 1.50ms 对象单元(CPM1A 系列扩展单元) 15 CH OUT
720.83 对象单元(CJ 系列 高功能 I/O 单元) 40 CH IN 1.032m
s 对象单元(CJ 系列 高功能 I/O 单元) 40 CH OUT
7 段解码器 SDEC 078 4 12.53 数字式开关 DSW 210 6 85.43 4 位指定、数据输入值:0 80.43 4 位指定、数据输入值:F 82.11 8 位指定、数据输入值:00 75.23 8 位指定、数据输入值:FF 10 键输入 TKY 211 4 17.49 数据输入值:00 18.69 数据输入值:FF 16 键输入 HYK 212 5 72.77 数据输入值:00 75.63 数据输入值:FF 矩阵输入 MTR 213 5 71.55 数据输入值:00 79.77 数据输入值:FF 7 段显示 7SEG 214 5 88.23 4 位指定时 86.97 8 位指定时
IORD 222 4 232.10 开始 237.10 程序繁忙
智能 I/O 读取
229.57 完成时 IOWR 223 4 261.10 开始 259.10 程序繁忙
智能 I/O 写入
259.77 完成时 CPU 高功能单元 每次 I/O 刷新
DLNK 226 4 425.69 1CH 占有
*1:指定倍长常数时,指令长度为表中数值+1。 *2:IORD、IORW 指令根据读取对象的高功能 I/O 单元而有所差异。
■ 串行通信指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时(μs) 执行条件
协议宏 PMCR 260 5 152.83 发送 0CH、接收 0CH 186.37 发送 249CH、接收 249CH 串行端口输出 TXD 236 4 107.67 发送字节数 1 字节 1.22ms 发送字节数 256 字节 串行端口输入 RXD 235 4 149.3 保存字节数 1 字节 1.33ms 保存字节数 256 字节
串行通信单元 串行端口输出 TXDU 256 4 145.64 发送字节数 1 字节
串行通信单元 串行端口输入 RXDU 255 4 44.48 保存字节数 1 字节 串行通信设定変更 STUP 237 3 479.3
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-15
4
指 令 处 理 时 间 / 步 数 一 览
■ 网络通信用指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时(μs) 执行条件
网络发送 SEND 090 4 174.63 网络接收 RECV 098 4 173.97 指令发送 CMND 490 4 195.97 通用 Explicit 信息发送 EXPLT 720 228.63 Explicit 读出 EGATR 721 203.30 Explicit 写入 ESATR 722 197.30 Explicit CPU 单元数据读出 ECHRD 723 188.63 Explicit CPU 单元数据写入 ECHWR 724 181.97 串行通信单元输出 TXDU 256 4 205.05 串行通信单元输入 RXDU 255 4 200.44
*1:指定倍长常数时,指令长度为表中数值+1。
■ 显示功能用指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
消息表示 MSG 046 3 17.16 消息显示 15.43 解除消息显示 7 段 LED 通道数据显示 SCH 047 3 48.13 7 段 LED 控制 SCTRL 048 2 36.40
*1:指定倍长常数时,指令长度为表中数值+1。
■ 时钟功能指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
日历加法 CADD 730 4 212.90 日历减法 CSUB 731 4 176.23 时分秒→秒转换 SEC 065 3 34.19 秒→时分秒转换 HMS 066 3 40.95 时钟补正 DATE 735 2 134.67
*1:指定倍长常数时,指令长度为表中数值+1。
■ 调试处理指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
TRSM 045 1 201.33 1 点+0 CH 取样 跟踪存储器取样 1.12ms 31 点+6 CH 取样
*1:指定倍长常数时,指令长度为表中数值+1。
■ 故障诊断指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时(μs) 执行条件
运转持续故障诊断 FAL 006 3 23.24 异常登录 266.57 异常解除(最优先) 817.17 异常解除(全部异常) 305.33 异常解除(个别) 运转停止故障诊断 FALS 007 3 - 故障点检测 FPD 269 4 245.07 执行时 258.2 开始时 317.73 执行时 316.4 开始时
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-16
4
指 令 处 理 时 间 / 步 数 一 览
■ 特殊指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时(μs) 执行条件
置进位 STC 040 1 0.15 清除进位 CLC 041 1 0.15 扩展 DM 程序库切换 EMBC 281 2 13.75 周期时间的监视时间设定 WDT 094 2 23.94 状态标志保存 CCS 282 1 14.97 状态标志加载 CCL 283 1 17.83 CV→CS 地址转换 FRMCV 284 3 31.03 CS→CV 地址转换 TOCV 285 3 34.90 外围服务禁止 IOSP 287 1 解除外围服务禁止 IORS 288 1
*1:指定倍长常数时,指令长度为表中数值+1。
■ 块程序指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
块程序 BPRG 096 2 26.59 块程序结束 BEND 801 1 24.19 块程序暂时停止 BPPS 811 2 18.13 块程序再启动 BPRS 812 2 9.29 带条件结束 输入条件 806 1 23.33 EXIT 条件成立 EXIT 9.33 EXIT 条件不成立 带条件结束(非) EXIT 继电器编号 806 2 26.78 EXIT 条件成立 11.47 EXIT 条件不成立
806 2 26.74 EXIT 条件成立 带条件结束(否定) EXIT NOT 继电器编 号 11.41 EXIT 条件不成立
条件分支块 输入条件 802 1 7.4 IF 真 IF 13.5 IF 伪 条件分支块 IF 继电器编号 802 2 11.55 IF 真 13.55 IF 伪
802 2 11.61 IF 真 条件分支程序块(非) IF NOT 继电器编号 13.61 IF 伪
条件分支伪块 ELSE 803 1 7.71 IF 真 13.55 IF 伪
IEND 804 1 13.58 IF 真 条件分支块结束 7.49 IF 伪
1 扫描条件等待 输入条件 805 1 27.53 WAIT 条件成立 WAIT 6.15 WAIT 条件不成立 1 扫描条件等待 WAIT 继电器编号 805 2 28.78 WAIT 条件成立 9.82 WAIT 条件不成立
805 2 26.27 WAIT 条件成立 1 扫描条件等待(非) WAIT NOT 继电器 编号 9.78 WAIT 条件不成立
计数等待 CNTW 814 4 36.57 开始启动时 36.40 通常执行时 CNTWX 818 4 43.69 开始启动时 36.95 通常执行时 高速定时等待 TMHW 815 3 48.37 开始启动时 48.20 通常执行时 TMHWX 817 3 50.59 开始启动时 45.52 通常执行时 重复块 LOOP 809 1 17.03
输入条件 810 1 17.13 LEND 条件成立 重复块结束 LEND 18.07 LEND 条件不成立 LEND 继电器编号 810 2 20.77 LEND 条件成立 重复块结束 23.63 LEND 条件不成立
810 2 23.43 LEND 条件成立 重复块结束(非) LEND NOT 继电器 编号 20.97 LEND 条件不成立
定时器等待 TIMW 813 3 48.40 开始启动时 46.33 通常执行时 TIMWX 816 3 48.02 开始启动时 47.09 通常执行时
*1:指定倍长常数时,指令长度为表中数值+1。
4-1 指令处理时间/步数一览
4-17
4
指 令 处 理 时 间 / 步 数 一 览
■ 字符串处理指令 指令名称 助记符 FUN
编号 指令长度 (步)*1
执行时 (μs)
执行条件
字符串・ 传送 MOV$ 664 3 68.44 1 字符传送 字符串・ 连接 +$ 656 4 145.10 1 字符+1 字符 字符串・ 从左读出 LEFT$ 652 4 87.81 从 2字符中读出 1字符 字符串・ 从右读出 RGHT$ 653 4 91.81 从 2字符中读出 1字符 字符串・ 从任意位置读出 MID$ 654 5 94.77 从 3字符中读出 1字符 字符串・ 搜索 FIND$ 660 4 82.81 从 2字符中搜索 1字符 字符串・ 长度检测 LEN$ 650 3 32.61 1 字符检测 字符串・ 置换 RPLC$ 661 6 269.43 将 2字符的第 1字符置
换为 1 字符 字符串・ 删除 DEL$ 658 5 114.00 将 2字符中开始的 1字
符删除 字符串・ 交换 XCHG$ 665 3 108.54 1 字符和 1 字符交换 字符串・ 清除 CLR$ 666 2 37.33 1 字符清除 字符串・ 插入 INS$ 657 5 199.43 在 2字符的第 1字符后
插入 1 字符 LD,AND, OR+=$ 670 4 64.47 1 字符和 1 字符比较 LD,AND, OR+<>$ 671 LD,AND, OR+<$ 672
字符串比较
LD,AND, OR+>$ 674 LD,AND, OR+>=$ 675
*1:指定倍长常数时,指令长度为表中数值+1。
■ 任务控制指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时
(μs) 执行条件
任务执行启动 TKON 820 2 30.65 任务执行待机 TKOF 821 2 18.30
*1:指定倍长常数时,指令长度为表中数值+1。
■ 机型转换用指令 指令名称 助记符 FUN
编号 指令长度 (步)*1
执行时
(μs) 执行条件
块传送 XFERC 565 4 37.04 1 CH 传送 2922ms 1000 CH 传送
24.80 数据分配动作时 数据分配 DISTC 566 4 35.57 栈动作时 29.83 数据抽出动作时 30.13 栈动作时 30.10 栈动作时(将 1 CH 分 FIFO 时)
数据抽出 COLLC 567 4
8100ms 栈动作时(将 1000 CH 分 FIFO 时) 位传送 MOVBC 568 4 28.03
32.97 1 CH 计数 位计数 BCNTC 621 4 5703ms 1000 CH 计数
*1:指定倍长常数时,指令长度为表中数值+1。
■ 功能块用特殊指令
指令名称 助记符 FUN 编号
指令长度 (步)*1
执行时 (μs)
执行条件
变量类别获取 GETID 286 4 26.5
*1:指定倍长常数时,指令长度为表中数值+1。
4-2 关于使用功能块时的实例执行时间
4-18
4
指 令 处 理 时 间 / 步 数 一 览
4-2 关于使用功能块时的实例执行时间 制作功能块定义,在用户程序上粘贴了实例时,执行实例对周期时间产生的影响如下。
实例对周期时间产生的影响 = 启动时间 A +输入输出参数传送处理时间 B +功能块定义内指令执行时间 C
各 A、B、C 的时间如下所示。
内容 CP1H CPU 单元
A 启动时间 除去输入输出参数传送的启动时间 6.8μs
B 输入输出参数传送处理时间 1 位(BOOL)的输入输出变量时 0.4μs
( )内为数据型 1 字(INT、UINT、WORD)的输入输出变量时 0.3μs
2 字(DINT、UDINT、DWORD、REAL)的输入输出变量 时
0.5μs
4 字(LINT、ULINT、LWORD、LREAL)的输入输出变量 时
1.0μs
C 功能块定义内指令执行时间 指令处理时间的合计(与通常的用户程序相同)
例) 数据型为 1 字(INT)的输入变量=3 个、 数据型为 1 字(INT)的输出变量=2 个、 功能块定义部分的指令处理时间合计为 10μs 时: 执行 1 个实例的时间= 6.8μs + (3+2)×0.3μs+ 10μs = 18.3μs。 注:多次粘贴同一功能块定义时(实例有多个时),根据实例数,执行时间有所増加。
4-2 关于使用功能块时的实例执行时间
4-19
4
指 令 处 理 时 间 / 步 数 一 览
参 考 关于使用功能块时的程序步数,
制作功能块定义,在用户程序上粘贴实例时的程序步数如下所示。
步数
=实例数×(调出部容量 m +输入输出参数传送部容量 n×参数个数)+功
能块定义内指令步数 p(注)
注:多次粘贴同一功能块定义时(实例有多个时),在第 2 个以后的实例中,功能 块定义内指令步数(p)不被消耗。因此,上述计算式中,对于功能块定义内指 令步数(p)不乘以实例数。
内容 CP1/CS/CJ 单元以后共通
m 调出部 57 步 1 位(BOOL)的输入输出变量时 6 步 1 字(INT、UINT、WORD)的输入输出变量时 6 步 2 字(DINT、UDINT、DWORD、REAL)的输入输 出变量时
6 步
n 输入输出参数传送部 ( )内为数据型
4 字(LINT、ULINT、LWORD、LREAL)的输入 输出变量时
12 步
p 功能块定义内指令步数 指令步数的合计(与通常的用户程序相同) 中,加上 27 步的步数
例) 数据型为 1 字(INT)的输入变量=5 个、 数据型为 1 字(INT)的输出变量=5 个、 功能块定义部分的步数为 100 步时: 1 个实例的步数= 57 + (5+5)×6 步+100 步+27 步 = 244 步。
4-2 关于使用功能块时的实例执行时间
4-20
4
指 令 处 理 时 间 / 步 数 一 览