Group Number One GITHU Processor Tom Bozic Ian Nuber Greg Ramsey Henry Romero Matt Unangst GITHU Processor General Purpose 32-bit, pipelined computer processor MIPS-like architecture – Reduced instruction set 16-bit address space 16
Download ReportTranscript Group Number One GITHU Processor Tom Bozic Ian Nuber Greg Ramsey Henry Romero Matt Unangst GITHU Processor General Purpose 32-bit, pipelined computer processor MIPS-like architecture – Reduced instruction set 16-bit address space 16
Group Number One GITHU Processor Tom Bozic Ian Nuber Greg Ramsey Henry Romero Matt Unangst GITHU Processor General Purpose 32-bit, pipelined computer processor MIPS-like architecture – Reduced instruction set 16-bit address space 16 Registers – – R0 = 0 R15 = return address Data/Address Ribbon Cable Ribbon Cable RAM ROM Level Shift I/O Ribbon Cable LCD Interrupt Controller / Chip Select FPGA Key Pad Level Shift Interrupt Data Ribbon Cable Ribbon Cable Keyboard In Monitor Out UART Instruction Set Architecture First two bits indicate instruction category – 16 bit immediate built into R-type reduces complexity of design Addressing Modes – – Load, store, bra/jump, R-type Direct Indirect with Offset ISA accounts for full address space – NO PC-relative addressing Instruction Format Load / Store 31 30 29 Op(2) 24 23 Addr(6) 20 19 Rt (4) 16 15 0 Rs (4) Address Displacement (16) R-Type 31 30 29 Op (2) 25 Funct (5) 24 Imm (1) 23 20 19 Rd (4) 16 15 Rs1 (4) 12 11 Rs2 (4) 0 Immediate (12) Bra / Jmp 31 30 29 Op(2) 26 25 Type(4) 24 23 Addr (2) 20 19 Rs (4) 0 Address Continued (20) Load/Store Instructions (Op = 00/01) Instruction Assembly Meaning Ld Ld 0[r3], r2 R2 Mem(r3) St St r4, 4[r3] R4 Mem(r3 + 4) R-Type Instructions (OP = 10) Instruction Function Immed Assembly Ex Meaning (** = bitwise op) Add 00000 0 Add r2, r3, r4 R2 = R3 + R4 Addi 00000 1 Addi r2, r2, 5 R2 = R2 + 5 Sub 00001 0 Sub r6, r3, r5 R6 = R3 – R5 Subi 00001 1 Subi r3, r4, 3 R3 = R4 – 3 And 00100 0 And r3, r2, r8 R3 = R2 & R8 ** Andi 00100 1 Andi r4, r4, 255 R4 = R4 & 0xFF ** Or 00110 0 Or r2, r3, r4 R2 = R3 | R4 ** Ori 00110 1 Ori r2, r8, 10 R2 = R8 | 0xA ** Nand 00101 0 Nand r3, r5, r9 R3 = !(R5 & R9) ** Nor 00111 0 Nor r2, r1, r4 R2 = !(R1 | R4) ** Xor 10010 0 Xor r3, r4, r5 R3 = R4 ! R5 Mult 11000 0 Mult r2, r3, r4 R2 = R3 * R4 Div 11100 0 Div r4, r5, r2 R4 = R5 / R2 R-Type Instructions (Cont’d) Instruction Function Immed Assembly Ex Meaning (** = bitwise op) Sll 01000 0 Sll r2, r2, r3 R2 = [R2] << R3 Slr 01001 0 Slr r2, r2, r3 R2 = [R2] >> R3 Sal 01010 0 Sal r4, r4, r3 R2 = [R4] << R3 Sar 01011 0 Sar r4, r4, r3 R2 = [R4] >> R3 Scl 01100 0 Scl r4, r4, 1 Circular shift left Scr 01101 0 Scr r3, r3, 1 Circular shift right Slt 10000 0 Slt r2, r3, r4 R2 =1 IF R3<R4, ELSE R2 = 0 Nop 11111 0 Nop Insert Stall Bra/Jmp Instructions (Op = 11) Instruction Type Assembly Meaning Beq 0001 Beq r2, loop IF r2 == 0, go to loop Bne 0010 Bne r3, loop IF r3 != 0, go to loop Jmp 0100 Jmp main Jump to “main” Jpr 0110 Jpr r3 Jmp to addr. In r3 Jsr 1000 Jsr sub Jump to sub, save PC Hardware Data Path Diagram RAM – Read Access RAM – Write Access ROM – Timing Diagram LCD – Display Timing Parts List Item Quantity Xilinx XCV400 FPGA (Virtex) 1 Flash Memory 2 SRAM 1 Perf Board 1 Level Shifters 5 Ribbon Cable (and headers) 4 Dip Sockets 8 4 x 20 LCD screen 1 16 button Keypad 1 Remaining Individuals Roles Tom Bozic – Ian Nuber – Memory system design (RAM, ROM), PCB design Henry Romero – Maintain Assembler, Interrupt handler, program design Greg Ramsey – Control logic, documentation, Interrupt Controller PCB design, peripheral integration Matt Unangst – – Pipeline implementation (forwarding, rollback) Design integration oversight Milestone 1 Pipeline implemented – Thoroughly tested First PCB rev completed Successful integration of processor, I/O, Memory Test program(s) written User’s Manual near completion Milestone 2 FINAL PRODUCT COMPLETE – Allows room for unexpected errors Forwarding Path’s implemented in pipeline Final PCB rev completed, implemented Full integration of processor, I/O, memory Demo program completed Complete documentation Schedule Questions?