|
RAM8 is a "chip" with 8 16-bit registers.
That chip will take as input a 16-bit value, a load bit, and an address that is used to specify which of the 8 registers should be outputted by the chip's 16-bit output.
For RAM8, k is 3 because you will need a 3 bit address to be able to address any of the 8 registers. Why 3 bits? Because with 3 bits, each a 0 or 1, you have 2x2x2 = 8 possible addresses, specifically addresses 0, 1, 2, 3, 4, 5,6,7. If k were less than 3, the chip would be impossible to build. k could be greater than 3, but it would be a waste of unused bits. You only need 3 bits to be able to address 8 possible addresses.
|