How Computers Work?
What if you got ask the very basic question: How Computers Work?
A brief answer:
A more comprehensive answer:
What if you got ask the very basic question: How Computers Work?
A brief answer:
A more comprehensive answer:
CPU pipelining is a common technique to increase throughput and instruction level parallelism. Can we arbitrarily increase the CPU pipeline depth? Short answer is NO.
This is an open question. We recommend interviewees to answer this question from the following aspects:
Continue reading → Can we arbitrarily increase the CPU pipeline depth?
Interviewers often ask how to design a memory controller in technical interviews. We show one example below.
The memory controller takes incoming requests along with address and request ID as inputs. It is expected to provide read responses along with response ID as outputs. Internally, it can access memory to fetch the read data.
Continue reading → How to design a memory controller with in-order read responses?
Usually, with cache upsizing, we expect to see system performance improvement. However, this is not always the case. There could be several reasons:
Continue reading → Why is there no possible performance improvement with cache upsizing?
Obviously, w = 3/2 x + 1/4 y + z = x + (x >> 1) + (y >> 2) + z. But, this is not the end of the story.
All variables here need to be interpreted as fixed point number, with lower 2 digits representing 0.5 and 0.25.
Let’s say x, y and z are within the range between 0 and 3, inclusive. Then w is within the range between 0 and 8.25, inclusive. w’s integer part has 4 bits, and w has 6 bits in total.
‘d8.25 can be represented as ‘b1000.01