Bringing Bits, Bytes, Devices and Computers to Life

Download Report

Transcript Bringing Bits, Bytes, Devices and Computers to Life

Pedagogic Value in Understanding
Computer Architecture of Implementing the
Marie Computer from Null and Lobur in the
Logic Emulation Software, Multimedia
Logic
Timothy Stanley*, Daniel Prigmore*, Scott Mikolyski,
George Embrey, Leslie Fife, Don Colton
Brigham Young University – Hawaii
* Presenters
Outline
• Background (Assignment Approach)
• Choice of Marie by Null and Lobur
– Simulated Computer with Data Path Animator
– Assembler and Editor
– Used for Computer Organization Classes
• Marie Emulated in Multi-Media Logic
– Requires building the data path
– Requires designing the control circuitry
– Runs programs assembled with Null’s Marie
Assignment Approach
•
•
•
•
•
Ask for a one page design specification
Show an example specification
Work through development to specification
Have weekly status reports
Present designs to Dean, Department
Chairs, and interested students
MARIE* by Null & Lobur
Instruction Number
Binary
Hex
0000
0
0001
1
0010
2
0011
3
0100
4
0101
5
0110
6
0111
7
1000
8
1001
9
1010
A
Instruction
JnS X
Load X
Store X
Add X
Subt X
Input
Output
Halt
Skipcond
Jump X
Clear
1011
B
AddI X
1100
C
JumpI X
Meaning
Store the PC at address X and jump to X=1
Load contents of address X into AC.
Store the contents of AC at address X.
Add the contents of address X to AC.
Subtract the contents of Address X from AC.
Input a value from the keyboard into AC.
Output the value in AC to the display.
Terminate program.
Skip next instruction on condition.
Load the value of X into PC.
Sets AC to zero.
Add indirect: Go to address X. Use the value at X as
the actual address of the data operand to add to AC.
Jump indirect: Go to address X. Use the value at X as
the actual address of the location to jump to
* Machine Architecture that is Really Intuitive and Easy
Marie User Interface
Marie Data Path Simulator
Marie in Multimedia Logic*
• Machine codes from Assembly Listing
– Need to separate into higher and lower byte
– Copy into separate 8 bit RAM chips in MML
• Full implementation except skip
conditional if Acc < 0
– Did not know how to test for Acc < 0
– Worried about unsigned numbers
* Mulimedia Logic (MML) software by George Mills, available at Softronix.com
Memory Address Register (MAR)
Memory Buffer Register (MBR)
Accumulator and ALU
Input Register
Output Register
Instruction Register (IR)
Memory
Program Counter & Incrementer
Bus
Control Logic & Decoder ROM
Instruction Decoder ROM
Conditional Execution Logic
Input / Output Interface
Results & Conclusions
• Understanding through design & building
– Data Paths
– Address Bus
– Control Logic and Bus
– Programming with a limited instruction set
– Machine language programming
• A deep appreciation for computers,
operating systems and compliers