Urgent ~~Simulator Question

M

Milk

Hi all,
Can anyone help me to do this Question. Coz this is my first time study C++
language and my lecture want me to do this kind of program, i really don't
have any ideal
pls help me

here is the Question::
Improve the following (badly written) matrix multiplicationprogram and
translate it into MIPs assembly language then assemble into machine language
(hexadecimal representation). You may use a compiler to produce an assembly
language file and SPIM to produce the final hexadecimal machine language but
it WILL be faster to compile the program manually given past experience by
students. It will also mean you need to implement less instructions in the
simulator, or put it another way, do LESS WORK.

#define n varies see belowtypedef char index_;typedef longint
matrix[n + 1][n + 1];main(){ index_ i, j, k; matrix a, b, c; for (j = 0;
j< n; j++) { for (i = 0; i< n; i++) { a[j] = i * j; b[j]
= a[j]; } } for (i = 0; i< n; i++) { for (k = 0; k< n; k++)
{ c[k] = 0.0; for (j = 0; j < n; j++) c[k] += a[k][j]
* b[j]; } }}
Write a simulator for the final version of the pipelined datapath from your
text book adding a 1-bit branch predictor and assuming two pipeline delays
for the data memory. The branch logic MUST remain in the ALU stage; do not
move it back to the register/decode stage. You MUST use branch flushing (do
NOT use branch delay slots), you MUST implement data forwarding and detect
and resolve load hazards.



Beware the text has a number of errors.

The simulator must display on screen the contents of pipeline and registers
being used and 8 memory locations commencing with one currently being
accessed. A simple text based display is acceptable as long as the screen
does not scroll every clock cycle! The simulator must also support single
step operation and be able to run until a particular instruction address is
reached. The simulator must read in the hexadecimal format machine
instructions. You may choose what language to use.

You are only required to implement the instructions used in the
multiplication program. For Assignment 1 use 16x16 matrices only. The Branch
Target Buffer must have only 1 entry only (to simplify the problem!).



~ Let us linux ~
 
D

David Harmon

On 11 Apr 2004 00:50:16 +0800 in comp.lang.c++, "Milk"
Can anyone help me to do this Question. Coz this is my first time study C++
language and my lecture want me to do this kind of program, i really don't
have any ideal

"Don't have any idea" questions are often beyond the help that you can
expect from newsgroups. I think you should go talk to your instructor
about why his class is not working for you.
here is the Question::
Improve the following (badly written) matrix multiplicationprogram and
translate it into MIPs assembly language then assemble into machine language

Of course the assembly language part of that is not on topic here. Did
you have a question about the C++ part?
Write a simulator for the final version of the pipelined datapath from your
text book adding a 1-bit branch predictor and assuming two pipeline delays

That's a pretty large project; you should not expect to accomplish it
without spending some time on it. Your "Urgent" subject suggests that
you thought otherwise.
 
C

Claudio Puviani

[snip]

Your urgent request is important to us. Please stay on the newsgroup and a
representative will be with you as soon as possible.

The average wait time is...

THREE

....days.

<elevator music>
 
M

Milk

Hi, Victor Bazarov"
i really can't find it..coz a lot page so would u mind tell me which day and
year i need to looking for it?

Milk said:
Hi all,
Can anyone help me to do this Question. Coz this is my first time study C++
language and my lecture want me to do this kind of program, i really don't
have any ideal
pls help me

here is the Question::
Improve the following (badly written) matrix multiplicationprogram and
translate it into MIPs assembly language then assemble into machine language
(hexadecimal representation). You may use a compiler to produce an assembly
language file and SPIM to produce the final hexadecimal machine language but
it WILL be faster to compile the program manually given past experience by
students. It will also mean you need to implement less instructions in the
simulator, or put it another way, do LESS WORK.

#define n varies see belowtypedef char index_;typedef longint
matrix[n + 1][n + 1];main(){ index_ i, j, k; matrix a, b, c; for (j = 0;
j< n; j++) { for (i = 0; i< n; i++) { a[j] = i * j; b[j]
= a[j]; } } for (i = 0; i< n; i++) { for (k = 0; k< n; k++)
{ c[k] = 0.0; for (j = 0; j < n; j++) c[k] += a[k][j]
* b[j]; } }}
Write a simulator for the final version of the pipelined datapath from your
text book adding a 1-bit branch predictor and assuming two pipeline delays
for the data memory. The branch logic MUST remain in the ALU stage; do not
move it back to the register/decode stage. You MUST use branch flushing (do
NOT use branch delay slots), you MUST implement data forwarding and detect
and resolve load hazards.



Beware the text has a number of errors.

The simulator must display on screen the contents of pipeline and registers
being used and 8 memory locations commencing with one currently being
accessed. A simple text based display is acceptable as long as the screen
does not scroll every clock cycle! The simulator must also support single
step operation and be able to run until a particular instruction address is
reached. The simulator must read in the hexadecimal format machine
instructions. You may choose what language to use.

You are only required to implement the instructions used in the
multiplication program. For Assignment 1 use 16x16 matrices only. The Branch
Target Buffer must have only 1 entry only (to simplify the problem!).



~ Let us linux ~



~ Let us linux ~
 
V

Victor Bazarov

Milk said:
Hi, Victor Bazarov"
i really can't find it..coz a lot page so would u mind tell me which day and
year i need to looking for it?

i have no ideal what you wrote.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,773
Messages
2,569,594
Members
45,123
Latest member
Layne6498
Top