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の時は、確か、ケイデンスのシステムだった気がする。