1 / 19

PicoJava Microprocessor Architecture

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department COE -390 : Seminar. PicoJava Microprocessor Architecture. Presented by Muhammad F. Sagr. Contents. Java Virtual Machine 3 Ways to Execute Java Code PicoJava Overview

jihan
Download Presentation

PicoJava Microprocessor Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department COE -390 : Seminar PicoJava Microprocessor Architecture Presented by Muhammad F. Sagr

  2. Contents • Java Virtual Machine • 3 Ways to Execute Java Code • PicoJava Overview • PicoJava Structural Implementation • The Stack Cache • Cost and Performance PicoJava Microprocessor Architecture – Muhammad Sagr Page 2 of 40

  3. Java Virtual Machine(A Machine within a Machine) System Calls PicoJava Microprocessor Architecture – Muhammad Sagr Page 3 of 40

  4. 3 Ways to Execute Java Code PicoJava Microprocessor Architecture – Muhammad Sagr Page 4 of 40

  5. PicoJava Chip PicoJava Microprocessor Architecture – Muhammad Sagr Page 5 of 40

  6. PicoJava Structural Implementation PicoJava Microprocessor Architecture – Muhammad Sagr Page 6 of 40

  7. Stack cache • The stack cache is a 64 entry register file which caches the top few entries of the operand stack. • Stack is circular. 65 pushes would result in one cache replacement. PicoJava Microprocessor Architecture – Muhammad Sagr Page 7 of 40

  8. PicoJava Features • Developed Using Verilog RTL. • Supports: • Hardware floating-point arithmatics. • 6-digit instruction pipeline. • Instruction / Data Caching. • Innovative Stack Management Unit. • Stack-based architecture: • Has no General-purpose Registers • Allows up to 2 POP and 1 PUSH per clock cycle. PicoJava Microprocessor Architecture – Muhammad Sagr Page 8 of 40

  9. JVM and PicoJava • Data types: byte, short, int, long, float, double, char, object, returnAddress • All opcodes have 8 bits followed by a variable number of operands (1,2,3…) • Opcodes • 200 assigned • 24 quick variations • 2 reserved PicoJava Microprocessor Architecture – Muhammad Sagr Page 9 of 40

  10. JVM Code Size • Compact Code • Average JVM instruction is 1.8 bytes • RISC instruction required 4 bytes • Java based bytecodes are smalls • No register specifiers • Implicit “VARS” register for local variable accesses • Large application (2500+ lines) coded both the C++ and Java Languages • Java bytecodes are 2 – 3 x smaller than the RISC code from the C++ complier PicoJava Microprocessor Architecture – Muhammad Sagr Page 10 of 40

  11. PicoJava Microprocessor Overview • Pipeline instructions. • Single cycle execution for most instructions. • Implement in hardware only those instructions that make a difference. • Trap for costly instruction that do not occur often. PicoJava Microprocessor Architecture – Muhammad Sagr Page 11 of 40

  12. PicoJava 4-Stage Pipeline • Figure 2 Simple 4 stage pipeline FETCH Fetch fixed Cache lines (from I/O via Instruction Cache) into the Instruction Buffer. DECODE Decode and apply folding Logic, if Appropriate. EXECUTE Execute for one Or more cycles. WRITE-BACK Write results back Into the operand’s Stack. PicoJava Microprocessor Architecture – Muhammad Sagr Page 12 of 40

  13. Stack-Based Architecture • Stack architecture implement as a RISC • Operands typically accessed from the stack, put back on the stack • Example: Integer addition • Add top 2 entries in the stack and put the result back on top of the stack • Typical emulation on a RISC processor • LOAD TOS • LOAD TOS-1 • ADD • STORE TOS-1 PicoJava Microprocessor Architecture – Muhammad Sagr Page 13 of 40

  14. PicoJava: Performance and cost • Embeded market products (mobile phones etc) very sensitive to systems cost • Eliminates interpreter or JIT • Excellent systems performance compare to other processor ( Pentium etc.) • Efficient implementation through use of the same methodology; process circuit techniques developed for RISC processors PicoJava Microprocessor Architecture – Muhammad Sagr Page 14 of 40

  15. PicoJava: Performance and cost • Simple and very efficient • Accelerates runtime • Support for garbage collection • Support for threads PicoJava Microprocessor Architecture – Muhammad Sagr Page 15 of 40

  16. Comparison of PicoJava and Pentium chips Fig. 6 PicoJava Microprocessor Architecture – Muhammad Sagr Page 16 of 40

  17. Conclusion • PicoJava is used in internet appliances, WebTV, mobile phones and other high speed appliances. • In the very near future, PicoJava will be a processor of choice for CPUs. • PicoJava achieved speed and efficiency. • Five major companies are already licensed for PicoJava chips. PicoJava Microprocessor Architecture – Muhammad Sagr Page 17 of 40

  18. References • PicoJava Microprocessor Core Architecture: http://www.cs.ualberta.ca/~macg/C429/Extras/picoJava.htm • Sun Microsystems: http://www.sun.com PicoJava Microprocessor Architecture – Muhammad Sagr Page 18 of 40

  19. Thank you! ? ? ? Questions? ? ? ? PicoJava Microprocessor Architecture – Muhammad Sagr Page 19 of 40

More Related