FPGA 版 FM 音源 (54) -- YMF297 (OPN3/OPL3) 測定 (20) -- EG クロック・プリスケーラ (7)

EG プリスケーラ部の CLK_EN 信号と SFT_SEL 信号の波形写真を示します。
まず、CLK_EN の波形です。

設定としては、RATE = 11、トレースの下から上に向かって順に Rof = 0、1、2、3 となっています。 RATE = 12 では出力パルス同士が隣り合うと値が連続することになり、パルスの個数としてカウントしにくいので、パルスが分離する RATE = 11 を選びました。
2 現象のオシロなので、リアルタイムで見ているのは下側の 2 つのトレースだけで、上側の 2 つのトレースはメモリしておいた参照波形を表示しています。
サンプリング周波数 fs = 48 kHz なので、サンプリング周期を Ts と表すと、

  Ts = 1 / fs = 20.8 μs

となります。
各パルス幅 (値が「1」となっている期間) は 1 Ts であり、RATE = 11 での CLK_EN 信号の周期としては

  16 Ts = 333.3 μs

となっています。
この 16 Ts の中で、Rof の値に対応して、それぞれ、

  • (Rof = 3) : 7 パルス
  • (Rof = 2) : 6 パルス
  • (Rof = 1) : 5 パルス
  • (Rof = 0) : 4 パルス

が出力されます。
下に SFT_SEL の波形を示します。

SFT_SEL 信号の周期は 8 Ts (166.7 μs)、パルス幅は、下から 2 番目 (Rof = 1) と下から 3 番目 (Rof = 2) が 2 Ts (41.7 μs)、一番上 (Rof = 3) が 6 Ts (125 μs) です。