9/20/6Lecture 2 - Prog Model1 MicroBaby A simple micro-controller encompassing all the basics Start this class by organizing into groups.

Slides:



Advertisements
Similar presentations
Chapter 8: Central Processing Unit
Advertisements

CEG3420 L1 Intro.1 Copyright (C) 1998 UCB CEG3420 Computer Design Lecture 1 Philip Leong.
INTRODUCTION TO THE ARM PROCESSOR – Microprocessor Asst. Prof. Dr. Choopan Rattanapoka and Asst. Prof. Dr. Suphot Chunwiphat.
EKT 222/4 Microprocessor Systems SUBJECT INTRODUCTION.
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
Introduction Digital systems (logic design, digital logic, switching circuits) are employed in: computers data communication control systems many other.
Spring 2008, Jan. 14 ELEC / Lecture 2 1 ELEC / Computer Architecture and Design Spring 2007 Introduction Vishwani D. Agrawal.
COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) Lecturer: Hui Wu Session.
Term Project Overview Yong Wang. Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build.
Aug. 24, 2007ELEC 5200/6200 Project1 Computer Design Project ELEC 5200/6200-Computer Architecture and Design Fall 2007 Vishwani D. Agrawal James J.Danaher.
1  1998 Morgan Kaufmann Publishers Lectures for 2nd Edition Note: these lectures are often supplemented with other materials and also problems from the.
ECE 232 L2 Basics.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 2 Computer.
CIS 314 : Computer Organization Lecture 1 – Introduction.
CS 61C L20 Introduction to Synchronous Digital Systems (1) Garcia, Fall 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c.
9/20/6Lecture 2 - Prog Model1 MicroBaby A simple micro-controller encompassing all the basics Start this class by organizing into groups.
Microcontroller based system design
More Basics of CPU Design Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University.
COM181 Computer Hardware Ian McCrumRoom 5B18,
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
Chapter 1 Introduction. Computer Architecture selecting and interconnecting hardware components to create computers that meet functional, performance.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
Dr. Rabie A. Ramadan Al-Azhar University Lecture 6
ECE Lecture 1 1 Introduction to Microcontrolllers Department of Electrical and Computer Engineering The Ohio State University ECE 2560.
1 A Simple but Realistic Assembly Language for a Course in Computer Organization Eric Larson Moon Ok Kim Seattle University October 25, 2008.
Computer Architecture and Organization Introduction.
Fall 2015, Aug 17 ELEC / Lecture 1 1 ELEC / Computer Architecture and Design Fall 2015 Introduction Vishwani D. Agrawal.
1 4.2 MARIE This is the MARIE architecture shown graphically.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Chapter 1 An Introduction to Processor Design 부산대학교 컴퓨터공학과.
COMP3221 lec04--prog-model.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lecture 4: Programmer’s Model of Microprocessors
Digital Design and Computer Architecture Dr. Robert D. Kent LT Ext Lecture 1 Introduction.
Advanced Computer Architecture 0 Lecture # 1 Introduction by Husnain Sherazi.
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 12 Overview and Concluding Remarks.
Computer Organization and Design Computer Abstractions and Technology
CSE 171 Introduction to Digital Logic and Microprocessors Prof. Richard E. Haskell 115 Dodge Hall.
10-Sep Fall 2001: copyright ©T. Pearce, D. Hutchinson, L. Marshall Sept Recall Objective: understand computers at machine level interested.
Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
Important Concepts  Parts of the CPU  Arithmetic/Logic Unit  Control Unit  Registers  Program Counter  Instruction Register  Fetch/Decode/Execute.
1 Text Reference: Warford. 2 Computer Architecture: The design of those aspects of a computer which are visible to the programmer. Architecture Organization.
Computer Architecture Souad MEDDEB
MICROOCESSORS AND MICROCONTROLLER:
1 chapter 1 Computer Architecture and Design ECE4480/5480 Computer Architecture and Design Department of Electrical and Computer Engineering University.
Building Your Own Machine The Universal Machine (UM) Introduction Noah Mendelsohn Tufts University Web:
CSE 3322 Computer Architecture Dr. John Patterson 614 NH Office Hours: M, W 11 –12 noon Grading Policy: Project 25%
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
9/22/2010Lecture 1 - Introduction1 ECE 5465 Advanced Microcomputers.
Spring 2016, Jan 13 ELEC / Lecture 1 1 ELEC / Computer Architecture and Design Spring 2016 Introduction Vishwani D. Agrawal.
Compsci Today’s topics l Operating Systems  Brookshear, Chapter 3  Great Ideas, Chapter 10  Slides from Kevin Wayne’s COS 126 course l Performance.
The Universal Machine (UM) Implementing the UM Noah Mendelsohn Tufts University Web:
1 TM 1 Embedded Systems Lab./Honam University ARM Microprocessor Programming Model.
CECS 347 Microprocessors and Controllers II Chapter 1 - An Overview of Computing Systems Instructor: Eric Hernandez.
MICROPROCESSOR INTEL 8086/8088 BY: SERA SYARMILA SAMEON.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
Computer Organization and Architecture Lecture 1 : Introduction
Microprocessor and Assembly Language
Morgan Kaufmann Publishers
Central Processing Unit
EEL 4713/EEL 5764 Computer Architecture
COSC121: Computer Systems
T Computer Architecture, Autumn 2005
Lecture 1 - Introduction
Arithmetic Logical Unit
Instruction encoding We’ve already seen some important aspects of processor design. A datapath contains an ALU, registers and memory. Programmers and compilers.
Instruction encoding We’ve already seen some important aspects of processor design. A datapath contains an ALU, registers and memory. Programmers and compilers.
COMS 361 Computer Organization
Course Outline for Computer Architecture
ELEC / Computer Architecture and Design Fall 2014 Introduction
Dr. Clincy Professor of CS
Presentation transcript:

9/20/6Lecture 2 - Prog Model1 MicroBaby A simple micro-controller encompassing all the basics Start this class by organizing into groups.

9/20/6Lecture 2 - Prog Model2 Lecture Overview  What is MicroBaby  The architecture  Addressing modes  Instructions  Internal registers and control signals

What is MicroBaby?  Micro-Baby is a simple computer architecture, in fact, very simple.  All microcontrollers and microprocessors are computer architectures, in most cases fairly simple ones.  In today’s world even microcontrollers are eons beyond basic. 9/20/6Lecture 2 - Prog Model3

Basic assumptions  It is assumed that the reader possesses a basic understanding of the binary number system and the implementation of logic equations in digital logic using AND, OR, NAND, NOR, XOR and NOT gates.  It is also assumed that the reader also has a somewhat beyond basic understanding of computer architecture. 9/20/6Lecture 2 - Prog Model4

Basic styles of architecture  Micro-Baby is a accumulator based load-store architecture.  It embodies the essence of the principles of a RISC architecture.  All instruction execution results are left in the accumulator.  The accumulator based load-store architecture is the base processor architecture that all other architectures build upon 9/20/6Lecture 2 - Prog Model5

MicroBaby internal structure  High level and high level internal structure 9/20/6Lecture 2 - Prog Model6

The memory modules  Interface to the memory modules 9/20/6Lecture 2 - Prog Model7

The ALU  Version 1 of the alu 9/20/6Lecture 2 - Prog Model8

The datapath  The datapath showing the internal data bus 9/20/6Lecture 2 - Prog Model9

The controller  Version 2 of the conroller 9/20/6Lecture 2 - Prog Model10

The instructions  The instruction set  Offers the basics  Would like to have logical shift instruction  Maybe rotate 9/20/6Lecture 2 - Prog Model11

Debugging the controller  The controller encoding in the microcode needs debugging to insure correctness.  Note the multiple control signals need to allow the architecture to function.  Along with discussion of MU0. Groups should also become familiar with the MU0 architecture. 9/20/6Lecture 2 - Prog Model12

Instruction Set Simulator  An Instruction Set Simulator (ISS) simulates the operation of a computer architecture instruction by instruction, updating registers, memory, and I/O.  A modern ISS has graphical display to show the contents (values) of registers and possibly even on busses. 9/20/6Lecture 2 - Prog Model13

A Microbaby ISS  A Microbaby ISS will have a display that shows the value of the accumulator, the B input to the ALU, the instruction register, the temp address register in the controller, and memory. Both the data memory and the instruction memory should be displayed.  It should also be possible to show, on a cycle by cycle basis, the value on the address bus and the data bus. 9/20/6Lecture 2 - Prog Model14

Input and Output  The Microbaby architecture is a memory mapped I/O architecture and a few addresses of data memory will be the I/O ports.  It will be up to each group as to how this I/O is implemented and what is supported. Possibly as part of the graphical display there will a LED display. With color display to show the LEDs on/off. 9/20/6Lecture 2 - Prog Model15

The software structure  Graphical Display – Top level and substructure.  Update Graphical Display – update the display items of the graphical display  Executive – runs the whole ball of wax – should allow for instruction by instruction, free run, free run with breakpoints.  Instruction interpreter – disassembles the machine code into assembly language.  Memory display  I/O display  Define the assembly language specification and implement an assembler. 9/20/6Lecture 2 - Prog Model16

The setup  Each group will work on their own version of the system.  IT IS A COMPETITION!! The best product wins. The best get an A on the assignment. Others equal to it also get an A.  This is interesting as you set the bar. 9/20/6Lecture 2 - Prog Model17

By FRIDAY  For Friday Jan 22, 2016  Have a plan for your approach to the software  Know the language you are going to use.  Have the assembler language for programmer use defined.  This will be included in your first progress report, Jan 29  BY Jan 29 have the graphical interface running for the real time simulation display.  Have a good start on the assembler.  Have a good start on the simulation executive. 9/20/6Lecture 2 - Prog Model18

9/20/6Lecture 2 - Prog Model19

9/20/6Lecture 2 - Prog Model20

9/20/6Lecture 2 - Prog Model21

Topics for presentation next week  Next Wednesday Jan 21st  Group 1 – Chapter 1 of text Processor architecture and organization Hardware Design Abstraction MU0 – a simple processor  Group 2 – Chapter 1 of text Processor design tradeoffs RISC – organization – advantages – drawbacks Design for low power  Discussion – compare and contrast MU0 to microbaby 9/20/6Lecture 2 - Prog Model22

Future topics – for Monday Jan 26  The Acorn RISC – history of deployment, more details on company development and interaction with Apple, VLSI Technology. This led to Acorn RISC Machines, Ltd. which became ARM.  Architectural inheritenance from the Berkeley RISC I and II. Details of the Berkeley RISC and its history 9/20/6Lecture 2 - Prog Model23

Future topics  The ARM programmer’s model – what the programmer sees. (2 presentations) - This includes what is in the datapath and the structure of memory and I/O seen. Tools for assembler language programming.  It would be nice to have a “free” simulation tool for ARM about now. ARM Sim from the University of Victoria may be the one we use.  Free textbook is available online  Also, wikipedia is a great source for information. 9/20/6Lecture 2 - Prog Model24