# サイクル
ゲームボーイのCPUのサイクルについて言及する際には、クロックサイクルが使われる場合と、マシンサイクルが使われる場合の2種類があります。
## クロックサイクル
ゲームボーイでは、これをマスターサイクル[1](#mastercycle)としています。
`C-cycle`(Clock cycle)や`T-states`とも呼ばれます。
CPUのクロック周波数、4.194304MHz(CGBの倍速モードでは8.4MHz)をそのまま使ったもので、
```
1x: 1 C-cycle = 1/4194304 秒 = 0.000000238 秒 = 0.24μs
2x: 1 C-cycle = 1/8388608 秒 = 0.000000119 秒 = 0.12μs
```
となります。
## マシンサイクル
`M-cycle`(Machine cycle)とも呼ばれます。[2](#mcycle)
ゲームボーイのタイミングはすべて4で割り切れるので、タイミングとクロック周波数を4で割ったものを`M-cycles`(マシンサイクル)と呼び、`M-cycles`単位でタイミングを指定する場合もあります。
つまり、
```
1x: 1 M-cycle = 4クロックサイクル = 1/(4194304/4)秒 = 0.000000954 秒 = 0.95μs
2x: 1 M-cycle = 4クロックサイクル = 1/(8388608/4)秒 = 0.000000477 秒 = 0.47μs
```
となります。
1: 全ての元となるサイクル 他のサイクルは、マスターサイクルの倍数で表される
2: M-cycleは、メモリアクセスに要する時間に対応するので`Memory cycle`と呼んだ方がわかりやすそうだが...