1 / 10

Eclipse[10]

Eclipse[10]. MIPSinEclipse. Overview. Goal: To provide a friendly development environment for CS students programming in MIPS (particularly CS33 at UCLA), and early exposure to Eclipse. Updates since last presentation.

Download Presentation

Eclipse[10]

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. Eclipse[10] MIPSinEclipse

  2. Overview • Goal: To provide a friendly development environment for CS students programming in MIPS (particularly CS33 at UCLA), and early exposure to Eclipse

  3. Updates since last presentation • Completion of all milestones/requirements, many new features implemented since the midterm, plus an extra feature that was not in our requirements (SPIM execution with breakpoints)

  4. Features • Editing environment with: • Syntax highlighting • Code collapsing (folding) • MIPS label browser for quick location of labels • MIPS Help: pop-ups explaining instructions and formats, viewing window with instruction set

  5. Features • Macro processor capabilities: • Simple (string) macros • Macros with arguments (like functions) • Combining different files into a single file to run in SPIM *Note on the macro processor: using an existing macro processor was taken into consideration; none were found that were open source, easy to integrate (written in java), used a simple grammar, and known to be reliable (we found one on sourceforge, but it had no error checking in it)

  6. Features • Simulator (built over SPIM): • Normal execution • Single step execution • Execution with breakpoints • Viewing window for register contents in different formats (hex, decimal, etc.)

  7. Potential • Almost all universities teach MIPS architecture • SPIM is the most popular simulator, but doesn’t have an editor, and does not take macros or provide for execution with breakpoints • The Eclipse environment provides many nice features (indexable help contents, version management, searches, etc.) • Open source: free and customizable

  8. Working with eclipse • For an application like this, it saves you a lot of work! • You have less to do because the Eclipse environment already has a lot of what you need (menu bar, customizable layout, “search” function, etc.) • Many components that you want probably already exist in the API (such as file wizards, message dialogs, and more) • It’s easy to test your plug-in; just click “run” to start new instance of Eclipse with plug-in added

  9. Working with Eclipse • The challenge: seemingly simple tasks can take a lot longer than you expect • It is sometimes less than obvious how something should be done in Eclipse, since many of the internals are somewhat hidden from the developer • Finding helpful documentation on Eclipse plug-in development is difficult: • Eclipse comes out with new versions frequently, a lot of documentation is outdated, and sample source code no longer works (it does make a difference!) • Information is scattered among many different sources; often like “grab bags” of tricks • Overall, we think it’s a really good tool once you learn how to use it; it allows you to do a lot in much less time than building from scratch

  10. What’s ahead: • April 10: meeting with Professor Smallberg and Professor Rohr to review, critique, and discuss possible changes and additions • In the meantime, make improvements to quality: • More testing • Refactoring • More help documentation for users • Improve the UI, aiming to make it more intuitive and easier to use • Get feedback from others • Goals: release next quarter, get accepted for use in CS33

More Related