2018-04-01から1ヶ月間の記事一覧

ESP32 の命令実行サイクル数 (2)

「esp-idf」環境で作成されるアプリケーションでは、通常の C プログラムでの main() 関数に相当するものは app_main() 関数となっています。 FreeRTOS ベースで構成されており、システム側での各種の「お膳立て」が終了した後に app_main() 関数が呼ばれま…

ESP32 の命令実行サイクル数 (1)

gcc のインライン・アセンブラを使って Xtensa LX6 の「MAC16 拡張命令」を記述し、実行サイクル数の削減を試みていますが、次の 2 つの理由で成功していません。 インライン・アセンブラを利用すると、「ハードウェア・ループ命令」が使われなくなり、通常…

新版FM音源プログラム (29)

Cortex-M シリーズを離れて、Espressif Systems 製の ESP-WROOM-32 モジュール (Cadence/Tensilica の Xtensa LX6 デュアル・コア内蔵) に対してプログラムを作成し、所要サイクル数を測定してみました。 具体的には、ハードウェアとしては「ESP32-DevKitC E…

新版FM音源プログラム (28)

gcc の「インライン・アセンブラ」で書いた ARMv7E-M (Cortex-M4) 版の acc_calc_slot() 関数のリストを下に示します。 「中身」は armcc 版と同等です。