idf_performance_target.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. * SPDX-FileCopyrightText: 2020-2022 Espressif Systems (Shanghai) CO LTD
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. #pragma once
  7. #include "sdkconfig.h"
  8. #ifdef CONFIG_XTAL_FREQ_26
  9. #define IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL 1900
  10. #else
  11. #define IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL 1200
  12. #endif
  13. // SHA256 hardware throughput at 160 MHz, threshold set lower than worst case
  14. #define IDF_PERFORMANCE_MIN_SHA256_THROUGHPUT_MBSEC 14
  15. // esp_sha() time to process 32KB of input data from RAM
  16. #define IDF_PERFORMANCE_MAX_TIME_SHA1_32KB 2500
  17. #define IDF_PERFORMANCE_MAX_ECP_P192_POINT_MULTIPLY_OP 9000
  18. #define IDF_PERFORMANCE_MAX_ECP_P192_POINT_VERIFY_OP 300
  19. #define IDF_PERFORMANCE_MAX_ECP_P256_POINT_MULTIPLY_OP 14000
  20. #define IDF_PERFORMANCE_MAX_ECP_P256_POINT_VERIFY_OP 300
  21. #define IDF_PERFORMANCE_MAX_ECDSA_P192_VERIFY_OP 32000
  22. #define IDF_PERFORMANCE_MAX_ECDSA_P256_VERIFY_OP 49000
  23. #define IDF_PERFORMANCE_MAX_SPI_CLK_FREQ 40*1000*1000
  24. #define IDF_PERFORMANCE_MAX_SPI_PER_TRANS_POLLING 20
  25. #define IDF_PERFORMANCE_MAX_SPI_PER_TRANS_POLLING_NO_DMA 16
  26. #define IDF_PERFORMANCE_MAX_SPI_PER_TRANS_NO_POLLING 45
  27. #define IDF_PERFORMANCE_MAX_SPI_PER_TRANS_NO_POLLING_NO_DMA 41
  28. // floating point instructions per divide and per sqrt (configured for worst-case with PSRAM workaround)
  29. #define IDF_PERFORMANCE_MAX_CYCLES_PER_DIV 70
  30. #define IDF_PERFORMANCE_MAX_CYCLES_PER_SQRT 140
  31. #define IDF_PERFORMANCE_MAX_ADC_ONESHOT_STD_ATTEN3 3