1,255 views
A vertical microprogrammed control unit supports 512 instructions. The system is using 8 conditional flags and contains 31 control signals. Each instruction on an average required 1 μ operation. The approximate size of control memory is ________ in bytes.

Ans. 1088 Bytes.

Same type of question:-   https://gateoverflow.in/181814/control-memory

But i didn't understood how they calculate the size of control memory.

Shouldn't it be :- Size of control memory = #Instruction * size of control word.

In above question size of control word = 17 Bit.

So answer is :- Size = 512 * 17 / 8 = 1088 B. (By Made easy solution)

But in above link the last Step is different please Clear my doubt which approach is good.

Anybody Help me here. Little guidance will be appreciated :)

Yes, there will be 512 µ operations or 512 µ Instructions(Each instruction has 1 microoperation)Since the question is saying about vertical µ programming, So we need not generate 31 control signals at the same time, So we will use a decoder  of 5 * 32 size which needs 5 bits for control signal field of a control word and since there are 8 flag conditions are used for condition checking, so we need MUX 8*1 using 3 select lines, we need 3 bits for storing this information in control word, Apart from this, since there are 512 micro Instructions present in control memory , so we need 9 bits for the next address field of a control word.

So the size of a control word = 5 + 3 + 9 = 17 bits

Size of control memory = Number of control words(Micro Instructions) * size of each control word

= 512 * 17 bits

= 1088 Bytes

1088 B

Yes . 512 nos instructions( 2^9) correspond to 9 bits.

8 nos FLAGs ( 2^3) correspond to 3 bits and 31 Control Signals ( 2^5) corresponds to 5 bits.

Hence total nos of bits =9+3+5= 17 bits.

Hence the size of Control memory= (512*17)/8 byte =1088 bytes.