若计算机主存地址为 32 位, 按字节编址, 某 Cache 的数据区容量为 $32 \mathrm{~KB}$, 主存块大小为 $64 \mathrm{~B}$, 采用 8 路组相联映射方式, 该 Cache 中比较器的个数和位数分别为 () .
A. 8,20
B. 8,23
C. 64,20
D. 64,23
组相联映射地址包括标记、组号和块内地址。cache 容量 $32 \mathrm{~KB}$, 每块/行大小为 $64 \mathrm{~B}$,所以 cache 共有 $32 \mathrm{~KB} \div 64 \mathrm{~B}=512$ 块/行, 又因采用 8 路组相联映射, 所以 cache 的结构为 64 组 $(512 / 8)$, 组号位数为 $6\left(2^{6}=64\right)$, 每组 8 行。主存块大小为 $64 \mathrm{~B}$, 所以块内地址为 6 位 $\left(2^{6}=64\right)$,地址线共 32 位, 标记位 $=32-6-6=20$ 。 8 路组相联映射, 所以需要 8 个比较器; 标记位为 20 ,所以比较器位数为 20 。

因此答案为：A