Utopium. ● MCU8051 processor ● Several asynchronous examples ● 256 instructions – Some reather complex ● 256 bytes of ram with memory mapped: – Register.

Slides:



Advertisements
Similar presentations
Machine cycle.
Advertisements

Adding the Jump Instruction
Final Project : Pipelined Microprocessor Joseph Kim.
COMP25212 Further Pipeline Issues. Cray 1 COMP25212 Designed in 1976 Cost $8,800,000 8MB Main Memory Max performance 160 MFLOPS Weight 5.5 Tons Power.
ELEN 468 Advanced Logic Design
Altera FLEX 10K technology in Real Time Application.
Chapter XI Reduced Instruction Set Computing (RISC) CS 147 Li-Chuan Fang.
Chapter 12 CPU Structure and Function. Example Register Organizations.
Lec 9: Pipelining Kavita Bala CS 3410, Fall 2008 Computer Science Cornell University.
1 Sec (2.3) Program Execution. 2 In the CPU we have CU and ALU, in CU there are two special purpose registers: 1. Instruction Register 2. Program Counter.
CPU Fetch/Execute Cycle
Basic Operational Concepts of a Computer
Basic Microcomputer Design. Inside the CPU Registers – storage locations Control Unit (CU) – coordinates the sequencing of steps involved in executing.
3 1 3 C H A P T E R Hardware: Input, Processing, and Output Devices.
Topic:The Motorola M680X0 Family Team:Ulrike Eckardt Frederik Fleck André Kudra Jan Schuster Date:Thursday, 12/10/1998 CS-350 Computer Organization Term.
Computer Science 210 Computer Organization The von Neumann Architecture.
Chapter 1 An Introduction to Processor Design 부산대학교 컴퓨터공학과.
Stack Stack Pointer A stack is a means of storing data that works on a ‘Last in first out’ (LIFO) basis. It reverses the order that data arrives and is.
CS25212 Coarse Grain Multithreading Learning Objectives: – To be able to describe a coarse grain multithreading implementation – To be able to estimate.
Lab 8: A Calculator Using Stack Memory
Chapter 2 Summary Classification of architectures Features that are relatively independent of instruction sets “Different” Processors –DSP and media processors.
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 12 Overview and Concluding Remarks.
6.004 – Fall /29/0L15 – Building a Beta 1 Building the Beta.
The Central Processing Unit (CPU) and the Machine Cycle.
Comp Sci pipelining 1 Ch. 13 Pipelining. Comp Sci pipelining 2 Pipelining.
ECE 456 Computer Architecture Lecture #14 – CPU (III) Instruction Cycle & Pipelining Instructor: Dr. Honggang Wang Fall 2013.
Microprocessor. Interrupts The processor has 5 interrupts. CALL instruction (3 byte instruction). The processor calls the subroutine, address of which.
Computer Architecture Memory, Math and Logic. Basic Building Blocks Seen: – Memory – Logic & Math.
B. Ramamurthy.  12 stage pipeline  At peak speed, the processor can request both an instruction and a data word on every clock.  We cannot afford pipeline.
IT253: Computer Organization Lecture 9: Making a Processor: Single-Cycle Processor Design Tonga Institute of Higher Education.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
TEAM FRONT END ECEN 4243 Digital Computer Design.
E X C E E D I N G E X P E C T A T I O N S L3-CPU IS 4490 N-Tier Client/Server Architectures Dr. Hoganson Kennesaw State University Layer 3 - CPU CPU has.
DECStation 3100 Block Instruction Data Effective Program Size Miss Rate Miss Rate Miss Rate 1 6.1% 2.1% 5.4% 4 2.0% 1.7% 1.9% 1 1.2% 1.3% 1.2% 4 0.3%
The Central Processing Unit (CPU)
Features of the PIC18 microcontroller - 8-bit CPU - 2 MB program memory space (internal 32KB to 128KB) bytes to 1KB of data EEPROM - Up to 4096 bytes.
CS61C L20 Datapath © UC Regents 1 Microprocessor James Tan Adapted from D. Patterson’s CS61C Copyright 2000.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Lecture 9. MIPS Processor Design – Pipelined Processor Design #1 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
8051 Micro Controller. Microcontroller versus general-purpose microprocessor.
8085 INTERNAL ARCHITECTURE.  Upon completing this topic, you should be able to: State all the register available in the 8085 microprocessor and explain.
CPUz 4 n00bz.
Computer Operation. Binary Codes CPU operates in binary codes Representation of values in binary codes Instructions to CPU in binary codes Addresses in.
BASIC COMPUTER ARCHITECTURE HOW COMPUTER SYSTEMS WORK.
Chapter Overview General Concepts IA-32 Processor Architecture
CS2100 Computer Organization
Basic Processor Structure/design
Computer Science 210 Computer Organization
Lecture: Pipelining Basics
ELEN 468 Advanced Logic Design
Components of Computer
Computer Architecture
פרק 2: חיווט, זיכרונות בנקים זוגיים ואי-זוגיים
The fetch-execute cycle
CS 101 – Sept. 25 Continue Chapter 5
Ka-Ming Keung Swamy D Ponpandi
Morgan Kaufmann Publishers The Processor
8085 MICROPROCESSOR 8085 CPU Registers and Status Flags S Z AC P C A B
The Processor Lecture 3.6: Control Hazards
The Little Man Computer
High Performance Asynchronous Circuit Design and Application
Computer Architecture
Chapter 4: Representing instructions
Modified from notes by Saeid Nooshabadi
Chapter 11 Processor Structure and function
Objectives Describe common CPU components and their function: ALU Arithmetic Logic Unit), CU (Control Unit), Cache Explain the function of the CPU as.
Lecture: Pipelining Basics
Computer Operation 6/22/2019.
Sec (2.3) Program Execution.
Presentation transcript:

Utopium

● MCU8051 processor ● Several asynchronous examples ● 256 instructions – Some reather complex ● 256 bytes of ram with memory mapped: – Register bank + stack pointer – Accumulator, status flags – Bit addressable regions ● Started development on February 1 st

February 6 th

February 12 th

February 13 th

February 17 th

Functional development ● 20 days to develop the synchronous version ● Desynchronised ● Dual-rail early output ● Wagging ● 10 days of tuning ● Interesting stuff ● One man month processor ● 12 month of automating the process

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller

Performance wrapper ● Keep original structure and functional behaviour ● Design should remain functional in its synchronous form ● Wagging ● With by-passable stages ● Add pipelining ● Add caching ● Instruction cache ● Data cache

Latch Logic

Latch Logic Latch Logic

Latch Logic Latch Logic Latch Logic Latch Logic

Latch Logic Latch Logic Latch Logic Latch Logic

Latch Logic

Latch Logic

CPU Inst RA M Data RA M

CPU Inst RA M Data RA M CPU MUX

Instruction Decode ALU Data Memory Controller

Instruction Decode ALU Data Memory Controller Data Memory Controller Data Cache Instruction Cache

Instruction cache option 1 ~88 Byte RAM 8 cache lines 8 bytes data + 2 bytes address 1ns+

Instruction cache option 2

Instruction cache option 3

Data cache ● Register bank cache ● 8 registers ● Stack Pointer ● 2 entry stack cache ● Snoops instruction stream – Detects push and call operations ● Flushes one entry ● Allows all instructions to execute in one cycle per instruction stream byte read

Comparisons (How to cheat) ● Handshake solutions ● State performance in MHz equivalent – 60.5 MHz – Woot! ● 6 MIPS ● ~100 times faster ● Caltech ● Only measure the performance of 2 instructions – Accumulate and NOP – Don't memory map the accumulator – ~100 MIPS

Instruction Decode ALU Data Memory Controller

Tape-out ● Implemented in 130nm tech ● 1 st tape-out was “cancelled” ● 2 nd tape-out 22 nd of November