The Scalable Configurable Instrument Processor

Slides:



Advertisements
Similar presentations
Microprocessor or Microcontroller Not just a case of “you say tomarto and I say tomayto” M. Smith, ECE University of Calgary, Canada.
Advertisements

Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Microprocessors. Microprocessor Buses Address Bus Address Bus One way street over which microprocessor sends an address code to memory or other external.
FPGA Design Using the LEON3 Fault Tolerant Processor Core
© ABB Group Jun-15 Evaluation of Real-Time Operating Systems for Xilinx MicroBlaze CPU Anders Rönnholm.
Embedded Systems Programming
Aug. 24, 2007ELEC 5200/6200 Project1 Computer Design Project ELEC 5200/6200-Computer Architecture and Design Fall 2007 Vishwani D. Agrawal James J.Danaher.
Configurable System-on-Chip: Xilinx EDK
Introduction to ARM Architecture, Programmer’s Model and Assembler Embedded Systems Programming.
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
Jeff Burch Simon Dakermanjian Mazen Arakji Jonah Kadish Derek Smith
Microprocessor or Microcontroller Not just a case of “you say tomarto and I say tomayto” M. Smith, ECE University of Calgary, Canada.
Pyxis Aaron Martin April Lewis Steve Sherk. September 5, 2005 Pyxis16002 General-purpose 16-bit RISC microprocessor bit registers 24-bit address.
GCSE Computing - The CPU
Controllers-system for APS – CubeSat nano-satellite Instructor: Daniel Alkalay Students: Moshe Emmer & Meir Harar Technion – Israel Institute of Technology.
Implementation of DSP Algorithm on SoC. Characterization presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompany engineer : Emilia Burlak.
FPGA VHDL eP32 Design 2012 FIG Taiwan Conference February 17, 2012 Chen-Hanson Ting.
Chapter 17 Microprocessor Fundamentals William Kleitz Digital Electronics with VHDL, Quartus® II Version Copyright ©2006 by Pearson Education, Inc. Upper.
© 2011 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
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.
Cortex-M3 Debugging System
INTRODUCTION TO MICROCONTROLLER. What is a Microcontroller A microcontroller is a complete microprocessor system, consisting of microprocessor, limited.
Ross Brennan On the Introduction of Reconfigurable Hardware into Computer Architecture Education Ross Brennan
Motivation Mobile embedded systems are present in: –Cell phones –PDA’s –MP3 players –GPS units.
Introduction to FPGA AVI SINGH. Prerequisites Digital Circuit Design - Logic Gates, FlipFlops, Counters, Mux-Demux Familiarity with a procedural programming.
COMP2011 Assembly Language Programming and Introduction to WRAMP.
IT253: Computer Organization Lecture 4: Instruction Set Architecture Tonga Institute of Higher Education.
Computer Architecture and Organization Introduction.
Basic Architecture Lecture 15. In general, if the number of bits is n, then the number of different combinations of 0s and 1s that can be made is 2 n.
Introduction of Intel Processors
Hayes 1MAPLD 2005/135 The Scalable Configurable Instrument Processor John R. Hayes Johns Hopkins University Applied Physics Laboratory
Chapter 1 Introduction. Architecture & Organization 1 Architecture is those attributes visible to the programmer —Instruction set, number of bits used.
Macro instruction synthesis for embedded processors Pinhong Chen Yunjian Jiang (william) - CS252 project presentation.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Computer Organization & Assembly Language © by DR. M. Amer.
8085. Microcomputer Major components of the computer - the processor, the control unit, one or more memory ICs, one or more I/O ICs, and the clock Major.
Lab 2 Parallel processing using NIOS II processors
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
© 2010 Altera Corporation - Public Lutiac – Small Soft Processors for Small Programs David Galloway and David Lewis November 18, 2010.
Fail-Safe Module for Unmanned Autonomous Vehicle
Picoblaze Overview EENG Introduction 8-bit microcontroller for Xilinx devices Soft Core – Soft Processor 5% of the resources of spartan 3 (3S200.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Fundamentals of Programming Languages-II
بسم الله الرحمن الرحيم MEMORY AND I/O.
Embedded Systems Design with Qsys and Altera Monitor Program
MODULE 5 INTEL TODAY WE ARE GOING TO DISCUSS ABOUT, FEATURES OF 8086 LOGICAL PIN DIAGRAM INTERNAL ARCHITECTURE REGISTERS AND FLAGS OPERATING MODES.
FPGA Technology Overview Carl Lebsack * Some slides are from the “Programmable Logic” lecture slides by Dr. Morris Chang.
Design methodology for Implementing a Microcontroller in a FPGA. Phillip Southard Ohio University EE 690 Reconfigurable Design.
GCSE Computing - The CPU
Seminar On 8085 microprocessor
PROGRAMMABLE LOGIC CONTROLLERS SINGLE CHIP COMPUTER
Computer System Laboratory
UNIT – Microcontroller.
Overview Introduction General Register Organization Stack Organization
Sega Dreamcast Visual Memory Unit FPGA Implementation
Processor Organization and Architecture
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Introduction to Microprocessors and Microcontrollers
Implementation of IDEA on a Reconfigurable Computer
Course Agenda DSP Design Flow.
FPro Bus Protocol and MMIO Slot Specification
Microprocessor & Assembly Language
Chapter 8 Central Processing Unit
ChipScope Pro Software
The performance requirements for DSP applications continue to grow and the traditional solutions do not adequately address this new challenge Paradigm.
ChipScope Pro Software
First Generation 32–Bit microprocessor
GCSE Computing - The CPU
ADSP 21065L.
Presentation transcript:

The Scalable Configurable Instrument Processor John R. Hayes Johns Hopkins University Applied Physics Laboratory john.hayes@jhuapl.edu Hayes 1

Introduction Instrument processors require low power, small footprint, etc. Few processors meet these requirements Design our own using VHDL and FPGAs Architectural influences: APL’s FRISC (Freja, Flare Genesis) Harris RTX2010 (NEAR, ACE, MESSENGER, New Horizons, etc.) Hayes 2

SCIP Processor Features Stack Architecture: N op T->T (RTX) 16 or 32-bit Internal Data Path 16-bit Instruction OpCode ALU/Condition Architecture (FRISC3/4) Multiply/Divide Steps (FRISC4) Barrel Shifter (FRISC4) Stack Caches (FRISC3/4) Memory-Mapped I/O Hayes 3

Scalability Data path, i.e. buses, ALU, barrel shifter can be 16 or 32 bits wide Buses scale trivially in VHDL: bus_x: in unsigned(DBITS-1 downto 0); ALU based on function blocks with 1-level of carry look-ahead scales easily Multiplier would not scale well; instead use Booth multiply step; “scaling” done in software Hayes 4

More Scalability Barrel shifter (based on funnel shifter) uses N*log(N) resources -- Funnel shifter. process(a, b, count) variable t: unsigned(2*DBITS-1 downto 0); begin t := a & b; for i in 0 to DLBITS-1 loop if count(i) = '1' then t := to_unsigned(0, 2**i) & t(2*DBITS-1 downto 2**i); end if; end loop; result <= t(DBITS-1 downto 0); end process; Hayes 5

Configurability SCIP library AMBA APB component library SCIP (DBITS=16 or 32, ABITS=up to 32) Clock generator (WBITS) AMBA APB bridge (ABITS, DBITS) AMBA APB component library Interrupt controller (INTS) UART (DATABITS, STOPBITS, DIV) Parallel ports (BITS) Others: I2C-subset, watchdog, etc. Hayes 6

Configuring a System on a Chip (SoC) All components except decoders and memory controller are from libraries A basic SoC, processor, interrupt controller, and UART, is ~500 lines of VHDL Hayes 7

Instruction Set Hayes 8

16-Bit Version Adds Code Page and Data Page Registers to supply upper address bits Adds far/near mode bit and special instructions to set/reset mode Not compatible with RTX object code, but most RTX source code runs Most I/O routines must be rewritten APL’s common instrument software library has been ported Hayes 9

32-Bit Version Adds Long Subroutine Call instruction Adds 32-bit option to Load/Store instructions Adds scale to Long Immediate instruction; any 32-bit literal can be constructed with at most two instructions Hayes 10

Implementation: Simulation Port cross-compilers to SCIP, 16-bit and 32-bit versions Write architectural simulator in C Validate architecture, compiler, and simulator Translate C into VHDL Use simulator to generate VHDL test bench Simulate VHDL test bench to validate translation Hayes 11

Implementation: SCIP Synthesis Area Usage Synthesize processor using Synplify Pro Synthesize 16-bit SCIP and 32-bit SCIP for three similar parts Hayes 12

Implementation: Xilinx Xilinx Spartan-3 Starter Kit Board Board has 3S200 FPGA and 1 MB SRAM SCIP-16 with UART Usage: 8% (+ RAM) / 39% SCIP-32 with UART Usage: 14% (+ RAM) / 65% Runs all test programs Hayes 13

Implementation: New Horizons (NH) Demo Build-up flight-spare NH processor board Remove RTX2010 processor Replace NH Actel (SX72) with: SCIP-16, clock gen., memory I/F, etc NH S/C I/F, watchdog, I2C subset, etc. Interrupt control, test port UART, etc. Measure power, etc. Hayes 14

Implementation: NH RTX Processor Board Hayes 15

Implementation: NH SCIP Processor Board Hayes 16

Implementation: NH SCIP Results Actel (SX72) usage: 59 / 60% Running at 6 MHz (instruction rate) Board powered from external 5V (Actel core 2.5 V from on-board regulator) Hayes 17

Implementation: V-Slit Demo Redesign of NH RTX processor board Replace RTX2010 with QuickLogic QL6325: SCIP-16, clock gen., memory I/F, etc QL6325 -> Aeroflex UT6325 path to flight Replace Actel SX72 with SX32: NH S/C I/F, etc. Interrupt control, test port UART, etc. Measure power, etc. Hayes 18

Implementation: V-Slit SCIP Processor Board Hayes 19

Implementation: V-Slit Results QuickLogic (QL6325) usage: 52 / 45 % Running at 6 MHz (instruction rate) Board powered from external 3.3 and 2.5V (QuickLogic and Actel share 2.5 V) Hayes 20

Summary Architecture validated Implementations on Xilinx, Actel, and QuickLogic tested SCIP-16 provides replacement for RTX2010; SCIP-32 provides growth path SCIP use planned on several upcoming flight instruments Hayes 21