Я нахожусь в процессе изучения долот и языка скала и пытаюсь проанализировать некоторые строки кода с ракетным чипом. Кто-нибудь может попытаться объяснить мне эту строку? https://github.com/chipsalliance/rocket-chip/blob/54237b5602a273378e3b35307bb47eb1e58cb9fb/src/main/scala/rocket/RocketCore.scala#L957
Я понимаю, что делает функция log2Up, но не понимаю, почему эти log2Up (n) -1 и 0 были переданы как «аргументы» в addr, который является val типа UInt!?