Presentation is loading. Please wait.

Presentation is loading. Please wait.

SimArch: Work in Progress Multimedia Teaching Tool Faculty of Electronic Engineering University of Nis Serbia.

Similar presentations


Presentation on theme: "SimArch: Work in Progress Multimedia Teaching Tool Faculty of Electronic Engineering University of Nis Serbia."— Presentation transcript:

1 SimArch: Work in Progress Multimedia Teaching Tool Faculty of Electronic Engineering University of Nis Serbia

2 2/23 Outline  SimArch, motivation and application area  SimArch v.1.0, system and user view  Work in progress

3 3/23  SimArch is a teaching tool that supports lectures of computer architectures.  Basic package distribution contains files with RISC architectures that are involved in computer architecture courses at Faculty of Electronic Engineering, University of Nis.  Flexibility allows SimArch to meet requirements of any computer architecture course. SimArch - Application area

4 4/23 Motivation Need for a visualization tool that leads to higher quality lectures. – less time spent on drawing = more time for talk (explanation, discussion) – "Live" hardware presentation (step-by-step data flow) = better lecture understanding PowerPoint

5 5/23 Software requirements FUNCTIONAL REQUIREMENTS  Visualization of custom processor architecture.  Hardware descriptions have to be stored in separate files.  Capabilities of viewing hardware component details.  Visualization of instruction flow through processor components.  Detailed information of hardware components status need to be derived from actual hardware simulation.  Flexibility that enables easy involving of new lectures.  User-friendly interface.  Easy software upgrading.  Visualization of custom processor architecture.  Detailed information of hardware components status need to be derived from actual hardware simulation.  Flexibility that enables easy involving of new lectures.

6 6/23 Software requirements NON-FUNCTIONAL REQUIREMENTS  Graphical elements optimized for presentation using video- beam.  Supported platforms: Microsoft  Win9x, Win2000, WinXP.

7 7/23 Development environment  CASE tools that have been used for software development are: Rational  Rose 2000e (UML notation), Microsoft  Visual Studio 6.0 (Visual C++).

8 8/23 Used techniques  Involved requirement complexity demands the usage of Design Patterns as well as an involvement of some task-separation techniques.  Used Design Patterns: Singleton classes Manager classes Interface classes

9 9/23 Software model  SimArch contains a few sub-systems.  Sub-systems are Components Engine Window Manager Draw Manager Shared Components

10 10/23 UML model Fig 1. UML model of sub-system Components

11 11/23 Script language  A specialized, custom script language has been developed to meet requirements of lecture description. Script language consists of three different notations: Script file for hardware description, Lecture scenario description, Pseudo-assembler language.

12 12/23 Script example PC(0,1;2) %38 ?28,302,29,60,1 OR#3(7,93;1) %1 ?30,100,26,26,1 CONSTANT#1(;3) %4 ?80,238,0,0,1 ADD#1(2,3;4) ?110,185,35,80,1 INSTRUCTION_MEMORY(2;5) %.\Code\Code.mps ?85,302,69,125,1 IF_ID(5,4,6,7;8,9) ?175,217,22,330,1 BUS_SPLITER#1(8;57) %31,26 ?0,0,0,0,0 … #INSTRUCTION=ADD PC INSTRUCTION_MEMORY ADD#1 CONSTANT#1 MUX2X1#17 MUX2X1#18 2-1 2-2 3-1 4-1 5-1 87-1 0-1 stop 30: sw $25, 50($7) 34: j 16 38: lw $10, 0($1) 3c: add $8, $10, $8 40: sub $11, $2, $3 44: lw $16, -12($7) 48: and $12, $1, $7 4c: or $13, $1, $7 50: add $1, $2, $1 54: slt $12, $15, $6 58: beq $3, $9, -11 5c: slt $3, $0, $1 60: or $2, $3, $5 64: sub $1, $2, $25.\1_Singleclock implementation\Single.shm.\2_Multiclock implementation\Multi.shm.\3_Pipeline without Forwarding\Main.shm.\3_Pipeline without Forwarding\Main_HDU.sh m.\4_Pipeline with Forwarding\Main.shm.\4_Pipeline with Forwarding\Main_FU_HD U.shm

13 13/23 How to use SimArch?  Lectures are being prepared by the following steps: Step 1: Architecture selection Step 2: Planning the lecture flow Step 3: Scripts writing.

14 14/23 How to use SimArch?  Presentation conduction consists of two steps: Step 1: Selection and loading of created script Step 2: Step-by-step presentation driven by the script.

15 15/23 How to use SimArch? please wait…

16 16/23 Work in progress  Moving components descriptions to user level  Expanding of Component Library  Architecture draw tool

17 17/23 Work in progress Moving components descriptions to user level In v.1.0 components descriptions – C++ functions, embedded in source code We want to allow users to add/change components without compilation of entire program VHDL as a native language for HW description is chosen Teachers may use descriptions they already posses Usage of external simulator

18 18/23 Work in progress Moving components descriptions to user level Implementation: Connection with Symphony EDA VHDL Simili v2.1 Free edition Simili simulates components (not entire architecture)

19 19/23 Work in progress Moving components descriptions to user level

20 20/23 Work in progress Expanding of Component Library Easier expanding by VHDL input. In standard package distribution : CISC processor components Components needed by most of DSP architectures

21 21/23 Work in progress Architecture draw tool Architecture layout description is in script file – inconvenient (Hard work to adjust manually)script file We are designing a tool for visual creation of script file, similar to Block Diagram tools that can be found in commercial products

22 22/23 Work in progress Architecture draw tool

23 23/23 Conclusion  Recent developments of SimArch have been presented.  Future work will be focused on – Client-server functionality – Web version of the application – Further improvements of the interface and visualization.

24 SimArch: Work in Progress Multimedia Teaching Tool Faculty of Electronic Engineering University of Nis Serbia


Download ppt "SimArch: Work in Progress Multimedia Teaching Tool Faculty of Electronic Engineering University of Nis Serbia."

Similar presentations


Ads by Google