IXP1200 Microengines Apparao Kodavanti Srinivasa Guntupalli.

Slides:



Advertisements
Similar presentations
CPU Structure and Function
Advertisements

COMP375 Computer Architecture and Organization Senior Review.
More Intel machine language and one more look at other architectures.
Comparison of Altera NIOS II Processor with Analog Device’s TigerSHARC
EZ-COURSEWARE State-of-the-Art Teaching Tools From AMS Teaching Tomorrow’s Technology Today.
ARCHITECTURE OF APPLE’S G4 PROCESSOR BY RON WEINWURZEL MICROPROCESSORS PROFESSOR DEWAR SPRING 2002.
1 Lecture 3: Instruction Set Architecture ISA types, register usage, memory addressing, endian and alignment, quantitative evaluation.
Princess Sumaya Univ. Computer Engineering Dept. Chapter 2: IT Students.
Chapter 12 CPU Structure and Function. CPU Sequence Fetch instructions Interpret instructions Fetch data Process data Write data.
©UCR CS 162 Computer Architecture Lecture 8: Introduction to Network Processors (II) Instructor: L.N. Bhuyan
Architectural Considerations for CPU and Network Interface Integration C. D. Cranor; R. Gopalakrishnan; P. Z. Onufryk IEEE Micro Volume: 201, Jan.-Feb.
Introduction to ARM Architecture, Programmer’s Model and Assembler Embedded Systems Programming.
Performance Analysis of the IXP1200 Network Processor Rajesh Krishna Balan and Urs Hengartner.
Alyssa Concha Microprocessors Final Project ADSP – SHARC Digital Signal Processor.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Intel IXP1200 Network Processor q Lab 12, Introduction to the Intel IXA q Jonathan Gunner, Sruti.
RISC. Rational Behind RISC Few of the complex instructions were used –data movement – 45% –ALU ops – 25% –branching – 30% Cheaper memory VLSI technology.
ARM programmer’s model and assembler Embedded Systems Programming.
Pyxis Aaron Martin April Lewis Steve Sherk. September 5, 2005 Pyxis16002 General-purpose 16-bit RISC microprocessor bit registers 24-bit address.
©UCB CS 162 Computer Architecture Lecture 2: Introduction & Pipelining Instructor: L.N. Bhuyan
ECE 526 – Network Processing Systems Design IXP XScale and Microengines Chapter 18 & 19: D. E. Comer.
Embedded Systems Programming
Unit-1 PREPARED BY: PROF. HARISH I RATHOD COMPUTER ENGINEERING DEPARTMENT GUJARAT POWER ENGINEERING & RESEARCH INSTITUTE Advance Processor.
The MSP430xxxx Department of Electrical and Computer Engineering
Group 5 Alain J. Percial Paula A. Ortiz Francis X. Ruiz.
Lect 13-1 Lect 13: and Pentium. Lect Microprocessor Family  Microprocessor  Introduced in 1989  High Integration  On-chip 8K.
Paper Review Building a Robust Software-based Router Using Network Processors.
Basic Microcomputer Design. Inside the CPU Registers – storage locations Control Unit (CU) – coordinates the sequencing of steps involved in executing.
CSE 58x: Networking Practicum Instructor: Wu-chang Feng TA: Francis Chang.
Computer architecture Lecture 11: Reduced Instruction Set Computers Piotr Bilski.
Chapter 2 Summary Classification of architectures Features that are relatively independent of instruction sets “Different” Processors –DSP and media processors.
Memory Memory 10/ INF5060: Multimedia data communication using network processors.
designKilla: The 32-bit pipelined processor Brought to you by: Victoria Farthing Dat Huynh Jerry Felker Tony Chen Supervisor: Young Cho.
Implementing Click IP Router Kernel on VLIW Architectures Kanyu Mark Cao and Xiaodong Jin Many thanks to Scott Weber and Kees Vissers for the help on this.
ARM for Wireless Applications ARM11 Microarchitecture On the ARMv6 Connie Wang.
What is µP? “An integrated circuit containing … a central processing unit (CPU) and a means to access external memory” -- (Ball 2000)
IXP Lab 2012: Part 1 Network Processor Brief. NCKU CSIE CIAL Lab2 Outline Network Processor Intel IXP2400 Processing Element Register Memory Interface.
RISC and CISC. What is CISC? CISC is an acronym for Complex Instruction Set Computer and are chips that are easy to program and which make efficient use.
8086 Internal Architecture
CISC and RISC 12/25/ What is CISC? acronym for Complex Instruction Set Computer Chips that are easy to program and which make efficient use of memory.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Fundamentals of Programming Languages-II
ISA's, Compilers, and Assembly
ECE 526 – Network Processing Systems Design Microengine Programming Chapter 23: D. E. Comer.
RISC / CISC Architecture by Derek Ng. Overview CISC Architecture RISC Architecture  Pipelining RISC vs CISC.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
Address alignment When a word (4-bytes) is loaded or stored the memory address must be a multiple of four. This is called an alignment restriction. Addresses.
ARM7 Architecture What We Have Learned up to Now.
Operating Systems A Biswas, Dept. of Information Technology.
CPU (Central Processing Unit). The CPU is the brain of the computer. Sometimes referred to simply as the processor or central processor, the CPU is where.
Chapter 3 Getting Started. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. Objectives To give an overview of the structure of a contemporary.
Topics to be covered Instruction Execution Characteristics
Protection in Virtual Mode
Lecture 6: Assembly Programs
Chapter 1: A Tour of Computer Systems
Visit for more Learning Resources
Gunjeet Kaur Dronacharya Group of institutions
A Closer Look at Instruction Set Architectures
MIPS Assembly.
Number Representations and Basic Processor Architecture
The TMS320C6x Family of DSPs
Architectural Overview
Apparao Kodavanti Srinivasa Guntupalli
* From AMD 1996 Publication #18522 Revision E
Introduction to Microprocessor Programming
The ARM Instruction Set
ARM ORGANISATION.
A Level Computer Science Topic 5: Computer Architecture and Assembly
System Programming By Prof.Naveed Zishan.
Author: Xianghui Hu, Xinan Tang, Bei Hua Lecturer: Bo Xu
Presentation transcript:

IXP1200 Microengines Apparao Kodavanti Srinivasa Guntupalli

Network Processor IXP 1200 is a network processor that is optimized for networking and communication applications Has one StrongARM Core micro processor and six independent microengines. All the processors are RISC based C compiler and Tornado IDE for programming the StrongARM processor Intel SDK which has a developers’ workbench for programming the microengines

Microengines - Architecture The six microengines each provide the following features Hardware multithreaded support for four contexts – context switching is non preemptive Can hold 1024 instructions in the instruction control store Five stage pipeline enables 1 clock cycle per instruction when fully loaded

Microengine - architecture bit GPRs general purpose registers bit transfer registers – used to transfer data from and to memory Separate registers allow multithreading

Memory Hierarchy 3 different memory interfaces Scratchpad 4k bytes cycles latency SRAM 8MB cycles SDRAM 256 MB cycles Min addressable unit – 4 bytes for scratchpad and SRAM, 8 bytes for SDRAM

Microengine - Software Programming Language- Microcode assembler IXP1200 SDK has Developer’s workbench – consists of simulator, assembler, linker and debugger Software libraries called IXP Blocks – ex- the checksum for an IP header can be calculated by using a IXP block

Assembler instructions ALU, rotate and shift instructions Branch and Jump instructions Immediate and Load Reference instructions – memory and hardware interfaces Miscellaneous – hash, context switch and NOP

A Microcode example Perform an endian swap on a longword, reverse the order of bytes. Used to convert big endian network bytes to little endian bytes used by IXP

Example code alu_shf[rswap,0,B,rbuf, <<rot8] Byte1 byte2 byte3 byte0 ld_field[rswap,1010,rbuf,<<ro t24] Byte3 byte2 byte1 byte0