Synthesis of OR 1200 Peripherals Elena Weinberg ECE 6502.

Slides:



Advertisements
Similar presentations
Computer Architecture
Advertisements

Exceptions. Exception Types Exception Handling Vectoring Interrupts Interrupt Handlers Interrupt Priorities Interrupt applications 6-2.
Programmable Interval Timer
8051 Core Specification.
Interrupts What is an interrupt? What does an interrupt do to the “flow of control” Interrupts used to overlap computation & I/O – Examples would be console.
6-1 I/O Methods I/O – Transfer of data between memory of the system and the I/O device Most devices operate asynchronously from the CPU Most methods involve.
1 CSIT431 Introduction to Operating Systems Welcome to CSIT431 Introduction to Operating Systems In this course we learn about the design and structure.
Computer System Structures memory memory controller disk controller disk controller printer controller printer controller tape-drive controller tape-drive.
Timers and Interrupts Shivendu Bhushan Summer Camp ‘13.
INTERRUPTS PROGRAMMING
NS Training Hardware. System Controller Module.
3-1 System peripherals & Bus Structure Memory map of the LPC2300 device is one contiguous 32-bit address range. However, the device itself is made up of.
What are Exception and Interrupts? MIPS terminology Exception: any unexpected change in the internal control flow – Invoking an operating system service.
Interrupts. What Are Interrupts? Interrupts alter a program’s flow of control  Behavior is similar to a procedure call »Some significant differences.
7/23 Timers in Coldfire Processor Computer Science & Engineering Department Arizona State University Tempe, AZ Dr. Yann-Hang Lee (480)
CORTEX-M0 Structure Discussion 2 – Core Peripherals
1 Computer System Overview Chapter 1. 2 n An Operating System makes the computing power available to users by controlling the hardware n Let us review.
Computer System Overview Chapter 1. Operating System Exploits the hardware resources of one or more processors Provides a set of services to system users.
MICROPROCESSOR INPUT/OUTPUT
Timers.
1 CS/COE0447 Computer Organization & Assembly Language Chapter 5 part 4 Exceptions.
The Functions of Operating Systems Interrupts. Learning Objectives Explain how interrupts are used to obtain processor time. Explain how processing of.
Lecture 11 Low Power Modes & Watchdog Timers
Interrupt.
Direct Memory Access (DMA) Microprocessors I -1. Topics to be discussed  Basic DMA Concept Basic DMA Concept  DMA pins and timing DMA pins and timing.
Time Management.  Time management is concerned with OS facilities and services which measure real time, and is essential to the operation of timesharing.
13-Nov-15 (1) CSC Computer Organization Lecture 7: Input/Output Organization.
ARM Cortex-M0 August 23, 2012 Paul Nickelsberg Orchid Technologies Engineering and Consulting, Inc. CORTEX-M0 Structure Discussion.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
Chapter 2 Processes and Threads Introduction 2.2 Processes A Process is the execution of a Program More specifically… – A process is a program.
Timers and Interrupts Anurag Dwivedi. Let Us Revise.
Interrupt driven I/O. MIPS RISC Exception Mechanism The processor operates in The processor operates in user mode user mode kernel mode kernel mode Access.
AT91 Interrupt Handling. 2 Stops the execution of main software Redirects the program flow, based on an event, to execute a different software subroutine.
CE Operating Systems Lecture 2 Low level hardware support for operating systems.
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
ECE 447 Fall 2009 Lecture 7: MSP430 Polling and Interrupts.
Interrupts  An interrupt is any service request that causes the CPU to stop its current execution stream and to execute an instruction stream that services.
CE Operating Systems Lecture 2 Low level hardware support for operating systems.
System Integration Module MTT Motoola SYSTEM INTEGRATION MODULE (SIM)
Interrupt driven I/O Computer Organization and Assembly Language: Module 12.
Lecture 4 General-Purpose Input/Output NCHUEE 720A Lab Prof. Jichiang Tsai.
Managing Processors Jeff Chase Duke University. The story so far: protected CPU mode user mode kernel mode kernel “top half” kernel “bottom half” (interrupt.
Time Management.  Time management is concerned with OS facilities and services which measure real time.  These services include:  Keeping track of.
MICROPROCESSOR DETAILS 1 Updated April 2011 ©Paul R. Godin prgodin gmail.com.
The 8085 Microprocessor Architecture. What 8085 meant for? 80 - year of invention bit processor 5 - uses +5V for power.
 The Programmable Interrupt Controller (PlC) functions as an overall manager in an Interrupt-Driven system. It accepts requests from the peripheral equipment,
CS-280 Dr. Mark L. Hornick 1 Sequential Execution Normally, CPU sequentially executes instructions in a program Subroutine calls are synchronous to the.
Interrupts and Exception Handling. Execution We are quite aware of the Fetch, Execute process of the control unit of the CPU –Fetch and instruction as.
Introduction to Exceptions 1 Introduction to Exceptions ARM Advanced RISC Machines.
80C51 Block Diagram 1. 80C51 Memory Memory The data width is 8 bits Registers are 8 bits Addresses are 8 bits – i.e. addresses for only 256.
DEPARTMENT OF ELECTRONICS ENGINEERING V-SEMESTER MICROPROCESSOR & MICROCONTROLLER 1 CHAPTER NO microcontroller & programming.
Renesas Electronics Europe GmbH A © 2010 Renesas Electronics Corporation. All rights reserved. RL78 AD converter.
Advanced Operating Systems CS6025 Spring 2016 Processes and Threads (Chapter 2)
Chapter 10 Interrupts. Basic Concepts in Interrupts  An interrupt is a communication process set up in a microprocessor or microcontroller in which:
Homework Reading Machine Projects Labs
Timer and Interrupts.
Interrupts In 8085 and 8086.
Presentation On 8259 Made by Md Shabbir Hasan.
RX Compare Match Timer (CMT)
RX 8-Bit Timer (TMR) 4/20/2011 Rev. 1.00
Programmable Interrupt Controller 8259
8253 Timer In software programming of 8085, it has been shown that a delay subroutine can be programmed to introduce a predefined time delay. The delay.
Computer System Overview
Processor Fundamentals
CPE 323 Introduction to Embedded Computer Systems: DMA Controller
8259 Programmable Interrupt Controller
8253 – PROGRAMMABLE INTERVAL TIMER (PIT). What is a Timer? Timer is a specialized type of device that is used to measure timing intervals. Timers can.
Computer System Overview
COMP3221: Microprocessors and Embedded Systems
Presentation transcript:

Synthesis of OR 1200 Peripherals Elena Weinberg ECE 6502

Introduction Synthesized 3 OR 1200 peripherals:  Tick Timer Facility  Programmable Interrupt Controller  Power Management Unit

Motivation  Power constrained age  Power management crucial  In order to implement power-saving modes OR 1200 requires  Power Management Unit  Tick Timer Facility  Programmable Interrupt Controller

Overview: Tick Timer (TT)  Timer clocked by RISC clock  OS uses for precise time measurement and system scheduling  Operates from separate clock source so that doze power management mode can be implemented

TT Features  Max timer count: 2^32 clock cycles  Max time period between interrupts: 2^28 clock cycles  Maskable tick timer interrupt  Single run, restartable, or continues counter modes

TT implementation TT enabled with TTMR TTCR incremented with each clock cycle TT Mode Register (TTMR): -Programmed with time period of TT and mode bits that control operation of TT TT Count Register (TTCR) -Holds current value of TT Block diagram:

Timer Modes Indicated by [M] bits in TTMR: [TP] = Time Period, bits 27:0 of TTMR 00Tick timer is disabledDisabled Timer Mode 01Timer is restarted when TTMR[TP] matches TTCR[27:0] Auto-Restart Timer Mode 10Timer stops when TTMR[TP] matches TTCR[27:0] (change TTCR to resume counting) One-Shot Timer Mode 11Timer does not stop when TTMR[TP] matches TTCR[27:0] Continuous Timer Mode

Overview: Programmable Interrupt Controller (PIC)  Receives interrupts from external sources and forwards them as low or high priority interrupt exceptions to the CPU core  PIC has 3 special-purpose registers and 32 interrupt inputs  30 other interrupt inputs can be masked and prioritized through programming special- purpose registers

PIC Registers PIC Mask Register (PICMR) -Used to mask or unmask up to 30 programmable interrupt sources PIC Status Register (PICSR) -Used to determine status of each interrupt input PIC Priority Register (PICPR) -Used to assign low or high priority to max of 30 interrupt sources

Interrupt Handling  Peripheral asserts interrupt  Handler processes interrupt  Handler notifies peripheral that interrupt has been processed  Peripheral de-asserts interrupt  Handler clears corresponding bit in PICSR and returns Note: peripheral must de-assert promptly

PIC Implementation  Latched level-sensitive interrupt  Once interrupt line is latched (its value appears in PICSR), no new interrupts can be triggered for that line until its bit in PICSR is cleared Block diagram:

Overview: Power Management (PM) OR 1200 has 3 power saving features:  Slow/Idle mode  Doze mode  Sleep mode

Power Management Features  Slow mode  enables full functionality at lower frequency to reduce power consumption  Usually set dynamically by OS’s idle routine that monitors usage of processor core

Power Management Features  Doze mode  suspends software processing on the core by disabling all clocks to the processor internal units except to TT and PIC  Other on-chip blocks (outside of the processor block) continue to function normally  If interrupt occurs, processor must leave doze mode

Power Management Features  Sleep mode  all processor internal units are disabled and V DD may be lowered  Disabled by interrupt received from PIC

Power Management Register (PMR) & Implementation 32-bit special-purpose register used to enable or disable PM features & modes  Slow Mode: Software controlled with 4-bit value in PMR[SDF]  lower value means higher performance expected from processor core  Doze Mode: Activated by setting PMR[DME] bit  Sleep Mode: Activated by setting PMR[SME] bit

Power Management Evaluation

Place and Route with IC Compiler

Tick Timer Dimensions: 45.5 X 45.5 Total area: 2071μm Total power: 298μW

PIC Dimensions: 32.6 X 32.6 Total area: 1065μm Total power: 157μW

PM Dimensions: 8.5 X 8.5 Total area: 72μm Total power: 3μW

Sources  The OpenRisc 1200 is an open source architecture available at

Thank You!

TT: DC Synthesis

TT: DFT Synthesis

PIC: DC Synthesis

PIC: DFT Synthesis

PM: DC Synthesis

PM: DFT Synthesis