[libre-riscv-dev] partitioned signals and Cat

Luke Kenneth Casson Leighton lkcl at lkcl.net
Sat Feb 8 23:15:09 GMT 2020

well, dang, i just realised that with Cat and changing the size of Signals
in general by fixed amounts, partitioning got *seriously* complicated.

take for example the seemingly innocuous task of extending a Signal by 2
bits using Cat(x, 0, 0)

this is really straightforward to assign to another Signal that is 2 bits
longer.  length += 2.

for a PartitionedSignal that goes out the window, because if the partitions
are open, it's a 64 + 2 bit Signal, and if the partitions are closed, it's
8x 8+2 bit Signals.

some serious thought is going to have to go into this.  possibly to the
extent of mirroring the nmigen ArrayProxy infrastructure.

any ideas?


crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68

More information about the libre-riscv-dev mailing list