Skip to content

Commit

Permalink
Merge pull request #1 from virtual-labs/dev
Browse files Browse the repository at this point in the history
Dev
  • Loading branch information
sravanthimodepu authored Aug 11, 2021
2 parents fa8c2dd + b7b555c commit d4742f6
Show file tree
Hide file tree
Showing 12 changed files with 98 additions and 275 deletions.
39 changes: 39 additions & 0 deletions experiment-descriptor.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"unit-type": "lu",
"label": "",
"basedir": ".",
"units": [
{
"unit-type": "aim"
},
{
"target": "theory.html",
"source": "theory.md",
"label": "Theory",
"unit-type": "task",
"content-type": "text"
},
{
"target": "procedure.html",
"source": "procedure.md",
"label": "Procedure",
"unit-type": "task",
"content-type": "text"
},
{
"target": "simulation.html",
"source": "simulation/index.html",
"label": "Simulation",
"unit-type": "task",
"content-type": "simulation"
},
{
"target": "references.html",
"source": "references.md",
"label": "References",
"unit-type": "task",
"content-type": "text"
}
]
}

8 changes: 7 additions & 1 deletion experiment/aim.md
Original file line number Diff line number Diff line change
@@ -1 +1,7 @@
### Aim of the experiment
There are multiple approaches for CPU design.

1. Single Cycle
2. Mutiple Cycle
3. Pipelined

In this lab we shall understand the Single Cycle CPU design for a subset of instructions from the MIPS ISA.
2 changes: 1 addition & 1 deletion experiment/experiment-name.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
## Experiment name
### Single Cycle
2 changes: 2 additions & 0 deletions experiment/objective.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- The objective of this experiment is to learn the design principles behind a Single Cycle CPU using a subset of MIPS ISA as example.

135 changes: 0 additions & 135 deletions experiment/posttest.js

This file was deleted.

135 changes: 0 additions & 135 deletions experiment/pretest.js

This file was deleted.

3 changes: 2 additions & 1 deletion experiment/procedure.md
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
### Procedure
Procedure is also explained in the experiment.

2 changes: 1 addition & 1 deletion experiment/references.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
### Link your references in here
- Patterson, D. A. and Hennessy, J. L. Computer Organization and Design: the Hardware/Software Interface. 3rd Edition.
9 changes: 9 additions & 0 deletions experiment/simulation/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,15 @@
<body>
<!-- Your code goes here-->

<p><a href="./v19.swf">Click Here<script type="text/javascript">
AC_AX_RunContent( 'width','100%','height','100%','src','v19.swf','movie','v19.swf' ); //end AC code
</script><noscript><object height="100%" width="100%">
<param name="movie" value="v19.swf"></param>
<embed src="v19.swf"></embed>

</object></noscript> </a> to perform the experiment</p>
</p>

<!-- Add JS at the bottom of HTML file -->
<script src="./js/main.js"></script>
</body>
Expand Down
33 changes: 33 additions & 0 deletions experiment/simulation/v19.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<html><head><!--Google Tag Manager--><script class="gtm">(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-W59SWTR');</script><!--End Google Tag Manager-->
<!-- Google Analytics Code starts here -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-42255654-1', 'virtual-labs.ac.in');
ga('send', 'pageview');

</script>
<!-- Google Analytics Code ends here -->
</head>
<body><!--Google Tag Manager (noscript)--><noscript class="gtm"><iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-W59SWTR" style="display:none;visibility:hidden" width="0"></iframe></noscript><!--End Google Tag Manager (noscript)-->
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/
cabs/flash/swflash.cab#version=6,0,40,0" height="100%" id="intro" width="100%">

<param name="movie" value="v19.swf"></param>

<param name="quality" value="high"></param>

<embed align="" height="100%" name="v19" pluginspage="http://www.macromedia.com/go/getflashplayer" quality="high" src="v19.swf" type="application/x-shockwave-flash" width="100%"></embed>


</object>


</body></html>
Binary file added experiment/simulation/v19.swf
Binary file not shown.
5 changes: 4 additions & 1 deletion experiment/theory.md
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
### Link your theory in here
- In Single Cycle CPU design approach each instruction takes exactly one clock cycle to execute.
- In Multicycle CPU each instruction multiple clock cycles to execute.
- In Pipelined approach instruction execution takes place in a overlapped fashion.
- The instructions supported by the Single Cycle cpu in our experiment and how to microcode new instructions are all given as a part of the experiment itself.

0 comments on commit d4742f6

Please sign in to comment.