Recent changes to np_arbiter.h introduced a workaround for configurations using SCC::LT with a bus width of 0. A zero bus width causes division-by-zero errors when processing read and write transactions. The current workaround prevents these errors by replacing the bus width with a fixed value of 64.
A current project requires SCC::LT and therefore depends on this workaround. The existing fallback to a bus width of 64 should be retained for now. In the future, the bus width should be made more flexible to support projects with different requirements.
For now, the fallback logic is currently implemented twice: once in the read path and once in the write path. The bus width should instead be validated and normalized in a single shared location. This will reduce code duplication and minimize the risk of future inconsistencies or defects.
Recent changes to np_arbiter.h introduced a workaround for configurations using SCC::LT with a bus width of 0. A zero bus width causes division-by-zero errors when processing read and write transactions. The current workaround prevents these errors by replacing the bus width with a fixed value of 64.
A current project requires SCC::LT and therefore depends on this workaround. The existing fallback to a bus width of 64 should be retained for now. In the future, the bus width should be made more flexible to support projects with different requirements.
For now, the fallback logic is currently implemented twice: once in the read path and once in the write path. The bus width should instead be validated and normalized in a single shared location. This will reduce code duplication and minimize the risk of future inconsistencies or defects.