XilinxのGitHubをいろいろと眺めていたら、見つけた。
ARM Trusted Firmwareのplat/xilinx/zynqmp/aarch64/zynqmp_common.cの関数の中を見ると、
switch (ver) { case ZYNQMP_CSU_VERSION_VELOCE: label = "VELOCE"; break; case ZYNQMP_CSU_VERSION_EP108: label = "EP108"; break; case ZYNQMP_CSU_VERSION_QEMU: label = "QEMU"; break; case ZYNQMP_CSU_VERSION_SILICON: label = "silicon"; break; }
UARTのクロック周波数の関数(zymqmp_get_uart_clk)の戻り値を見てみると、
実チップの1/500。
実チップの1/500。
uint32_t zynqmp_get_uart_clk(void) { uint32_t ver = zynqmp_get_silicon_ver(); switch (ver) { case ZYNQMP_CSU_VERSION_VELOCE: return 48000; case ZYNQMP_CSU_VERSION_EP108: return 25000000; case ZYNQMP_CSU_VERSION_QEMU: return 133000000; } return 100000000; }}
Zynq UltraScale+ MPSoC 概要によると、Cortex A53の最大周波数は1.5GHzなので、3MHz程度で動いているのですね。
最初のZynqの時は、確か、ケイデンスのシステムだった気がする。