0% found this document useful (0 votes)
100 views

Proposal For Team K 1. Team Members

Team K's proposal includes a 2-person team to design a simple processor over 6 weeks. Srishti will focus on the datapath and control unit design, as well as coding, the report, and web design. Krishna will also work on the datapath and control unit, along with coding, the report, and web development. Their processor will have 16 instructions and 8 registers, using 3 instruction formats. The assembly code and machine code for a sample program is provided.

Uploaded by

teamk
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
100 views

Proposal For Team K 1. Team Members

Team K's proposal includes a 2-person team to design a simple processor over 6 weeks. Srishti will focus on the datapath and control unit design, as well as coding, the report, and web design. Krishna will also work on the datapath and control unit, along with coding, the report, and web development. Their processor will have 16 instructions and 8 registers, using 3 instruction formats. The assembly code and machine code for a sample program is provided.

Uploaded by

teamk
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Proposal for Team K

1. Team Members
Team Leader: Srishti, [email protected]
Team member: Krishna, [email protected]

2. Meetings (Oct 30 – Nov 3)


Ex)
Name # of meetings # of attendance Contribution hours
Srishti 2 2 8
Krishna 2 2 8

3. Design Overview
1. The number of instructions is 16.
2. The clocking methodology is rising edge triggered.
3. The number of registers is 8.

3.1 Instruction Format


R-Format:
opcode Rs Rt Rd Func
4 bits 3 bits 3 bits 3 bits 3 bits

I-Format:
Opcode Rs Rt Imm6
4 bits 3 bits 3 bits 6 bits

J format:
Opcode Imm8(offset) Unused 4 bits
4 bits 8 bits 4 bits

3.2 Instructions

Name Mnemonic Operation OpCode Format


Addition add add $s1, $s2, 0000 R
$s3; #$s1 =
$s2 + $s3
Subtraction sub sub $s1, $s2, 0001 R
$s3; #$s1 =
$s2 -$s3
Add Immediate addi addi $s1, $s2, 0010 I
$s3; #$s1 =
$s2 + $s3
Set on Less Than slt slt $s1, $s2, 0011 R
$s3; #$s1=1 if
$s2<$s3
Load lw lw $s1, $s2, 0100 I
imm4;
#$s1=Mem[$s
2+imm4]
Store sw sw $s1, $s2, 0101 I
imm4;
#Mem[$s2+im
m4]=$s1
Shift left Logical sll sll $s1, $s2, 0110 I
imm4;
#$s1=$s2<<i
mm4
Shift Right Logical srl srl $s1, $s2, 0111 I
imm4;
#$s1=$s2>>i
mm4
Branch On Less Than Or Equal ble ble $s1, $s2, 1000 I
To imm4;# goto
imm4*2+PC+
2 if $s1<=$s2
Branch On Not Equal bne bne $s1, $s2, 1001 I
imm4; #goto
imm4*2+PC+
2 if $s1!=$s2
Ex-Or xor xor $s1, $s2, 1010 R
$s3; #$s1=$s2
xor $s3
Jump jump jump imm8 ; 1011 I
#goto
imm8*2+Pc+2
Or or or $s1, $s2, 1100 R
$s3; #$s1=$s2
| $s3
And and and $s1, $s2, 1101 R
$s3; #$s1=$s2
& $s3
Shift Right Arithmetic sra sra $s1, $s2, 1110 I
imm4;
#$s1=$s2>>i
mm4
Return 1111

4. Assembly language and Machine code for the test program (Pseudocode)
Pseudocode given:

While ($a1 > 0) do


{ $a1 = $a1 –1;
$t0 = Mem[$a0];
$a0 = $a0 + 2;
if ($t0 > 0100hex) then { $v0 = $v0 ÷ 8;
$v1 = $v1 | $t0; //or
Mem[$a0 − 2] = FF00hex; }
else { $v2 = $v2 × 3;
$v3 = $v3 ⊕ $v2; //xor
Mem[$a0 − 2] = 00FFhex;}
}
Return;

Assembly language Machine code


Start: sub $t1,$t1,$t1 #$t1=0 0001111111111000
ble $a1,$t1,22 1000101111010110
addi $a1,$a1,-1 0010101101111111
lw $t0,$a0,0 0100110100000000
addi $a0,$a0,2 0010100100000010
addi $t1,$t1,1 0010111111000001
sll $t1,$t1,8 0110111111001000
ble $t0,$t1,13 1000110111001101
sra $v0,$v0,3 1110000000000011
or $v1,$v1,$t0 1100001001110000
sub $t1,$t1,$t1 0001111111111000
addi $t1,$t1,63 0010111111111111
sll $t1,$t1,2 0110111111000010
addi $t1,$t1,3 0010111111000011
sll $t1,$t1,8 0110111111001000
sw $t1,$a0,-2 0101111100111110
jump 16 1011000100000000
Else: sll $v2,$v2,1 0110010010000001
xor $v3,$v3,$v2 1010011011010000
sub $t1,$t1,$t1 0001111111111000
addi $t1,$t1,15 0010111111001111
sll $t1,$t1,4 0110111111000100
addi $t1,$t1,15 0010111111001111
sw $t1,$a0,-2 0101111100111110
jump 16 1011000100000000
return 1111111111111111
5. Team member Tasks and Schedule

Name Tasks Schedule


week 1 week 2 week 3 week 4 week 5 week 6
Srishti Datapath x x
Control
Unit x
Coding x x x
Report x x x
Web x x x
Design
Krishna Datapath
Control x x
Unit
Coding x x x
Report x x x
Web x x x x x
Design

You might also like