Doing Architecture

Thread Starter

uknowwho

Joined Nov 13, 2014
4
I was catching up on some computer architecture stuff. As in the spring semester we'll be starting it.
I was going through some of the stuff in the Morris Mano book. Some of the questions that were troubling me
are:
1. If suppose we had a memory of 512mb then what will be the size of address and data bus.
My attempt: as 2^9 = 512 so it will be of 9-bits. For the 512mb of memory I assume that there is a 32-bit processor so the data bus will be of 4 bits as 8 x 4 = 32. is this correct?
I get caught up in bits and bytes. How to know if the address bus or data bus will be in bits or bytes, how do you determine that?

2. How can I convert a conditional statement like this If (X=1) then (R1<-R1+R2) else if (Y=1) then (R1<-R1–R3) into register transfer language? Also how to make it's block diagram

My attempt: X: R1<-R1+R2
XY ' : R1<- R1 - R3
 

Papabravo

Joined Feb 24, 2006
12,301
512 mb = 536,870,912 = 2^29
There is some ambiguity in your post about the meaning of 'b'. From the information you have given there is no good way to tell.
The size of the memory does not really give a clue to the size of the data bus. It could be anything.
Your second problem is not well defined. XY can have 4 different values. It seems clear that you should do nothing if X = Y = 0. What should you do if X = Y = 1. Is there a missing 'else' clause?
 

Thread Starter

uknowwho

Joined Nov 13, 2014
4
It was Mega byte,not bit sorry about that. And yes I know for the data bus we need to know the size of the CPU, but in the question only the size of RAM is given
for the second part the complete given statement is If (X=1) then (R1<-R1+R2) else if (Y=1) then (R1<-R1–R3)..nothing more.
 

MrChips

Joined Oct 2, 2009
19,154
For the second part of the question, if you are asking for machine code then you have to state the machine, microcontroller unit (MCU) that you are using.
 

Papabravo

Joined Feb 24, 2006
12,301
RTL = Register Transfer Language
This is an abstract language that is often used in designing new machines that don't exist yet. It has been around since the 1960's
 

Thread Starter

uknowwho

Joined Nov 13, 2014
4
I'm also not sure how to make a block diagram out of it..would i need to add a adder to do the additions involved?
 

Papabravo

Joined Feb 24, 2006
12,301
Yes an adder would be helpful. It could also include the subtraction function, or you could put a complement block in front of one of the inputs. The idea is to do subtraction by adding the complement of the subtrahend to the minuend.
 

Thread Starter

uknowwho

Joined Nov 13, 2014
4
can you show that in terms of block diagram, I'm not that good at making block diagrams though I do understand what you're saying
 
Top