QMSS: Components Overview Major HW components of the QMSS: Queue Manager Two PDSPs (Packed Data Structure Processors): – Descriptor Accumulation / Queue.

Slides:



Advertisements
Similar presentations
INPUT-OUTPUT ORGANIZATION
Advertisements

Dr. Rabie A. Ramadan Al-Azhar University Lecture 3
Computer System Organization Computer-system operation – One or more CPUs, device controllers connect through common bus providing access to shared memory.
TI Keystone Networking Coprocessor Introduction
Processor System Architecture
1 TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
CS-334: Computer Architecture
KeyStone Training Multicore Navigator Overview. Overview Agenda What is Navigator? – Definition – Architecture – Queue Manager Sub-System (QMSS) – Packet.
Midterm Tuesday October 23 Covers Chapters 3 through 6 - Buses, Clocks, Timing, Edge Triggering, Level Triggering - Cache Memory Systems - Internal Memory.
CPU Chips The logical pinout of a generic CPU. The arrows indicate input signals and output signals. The short diagonal lines indicate that multiple pins.
Unit-5 CO-MPI autonomous
Group 7 Jhonathan Briceño Reginal Etienne Christian Kruger Felix Martinez Dane Minott Immer S Rivera Ander Sahonero.
Using Multicore Navigator Multicore Applications.
Multicore Navigator: Queue Manager Subsystem (QMSS)
Cortex-M3 Debugging System
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
Chapter 7 Input/Output Luisa Botero Santiago Del Portillo Ivan Vega.
Using Multicore Navigator
KeyStone Multicore Navigator
Network Coprocessor (NETCP) Packet Accelerator (PA)
Chapter 10: Input / Output Devices Dr Mohamed Menacer Taibah University
KeyStone Training Network Coprocessor (NETCP) Overview.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Principles of I/0 hardware.
1-1 Embedded Network Interface (ENI) API Concepts Shared RAM vs. FIFO modes ENI API’s.
C66x KeyStone Training HyperLink. Agenda 1.HyperLink Overview 2.Address Translation 3.Configuration 4.Example and Demo.
Computers Internal Communication. Basic Computer System MAIN MEMORY ALUCNTL..... BUS CONTROLLER Processor I/O moduleInterconnections BUS Memory.
Ethernet Driver Changes for NET+OS V5.1. Design Changes Resides in bsp\devices\ethernet directory. Source code broken into more C files. Native driver.
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CE-321: Computer.
KeyStone Training Multicore Navigator: Packet DMA (PKTDMA)
Challenges in KeyStone Workshop Getting Ready for Hawking, Moonshot and Edison.
NS Training Hardware.
1 - Charlie Wiseman - 05/11/07 Design Review: XScale Charlie Wiseman ONL NP Router.
1 DSP handling of Video sources and Etherenet data flow Supervisor: Moni Orbach Students: Reuven Yogev Raviv Zehurai Technion – Israel Institute of Technology.
8051 Micro controller. Architecture of 8051 Features of 8051.
Organisasi Sistem Komputer Materi VIII (Input Output)
KeyStone SoC Training SRIO Demo: Board-to-Board Multicore Application Team.
Embedded Network Interface (ENI). What is ENI? Embedded Network Interface Originally called DPO (Digital Product Option) card Printer without network.
The computer system’s I/O architecture is its interface to the outside world. This architecture provides a systematic means of controlling interaction.
Electronic Analog Computer Dr. Amin Danial Asham by.
NetCP - NWAL API Flow. NetCP (HW,SW) Overview NWAL Feature Overview Data path offload Control configuration –Blocking / Non Blocking support –L2: MAC.
Chapter 13 – I/O Systems (Pgs ). Devices  Two conflicting properties A. Growing uniformity in interfaces (both h/w and s/w): e.g., USB, TWAIN.
Using Multicore Navigator CIV Application Team January 2012.
Network Coprocessor (NETCP) Overview
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
KeyStone SoC Training SRIO Demo: Board-to-Board Multicore Application Team.
WINLAB Open Cognitive Radio Platform Architecture v1.0 WINLAB – Rutgers University Date : July 27th 2009 Authors : Prasanthi Maddala,
CRU PCIe usage 1 1.
UNIT – Microcontroller.
SERIAL PORT PROGRAMMING
Dr. Michael Nasief Lecture 2
Processor Organization and Architecture
Number Representations and Basic Processor Architecture
Outline Module 1 and 2 dealt with processes, scheduling and synchronization Next two modules will deal with memory and storage Processes require data to.
BIC 10503: COMPUTER ARCHITECTURE
Md. Mojahidul Islam Lecturer Dept. of Computer Science & Engineering
Md. Mojahidul Islam Lecturer Dept. of Computer Science & Engineering
Components of a CPU AS Computing - F451.
Created by Vivi Sahfitri
Programmable Data Communication Blocks
Chapter 2: Operating-System Structures
VIRTIO 1.1 FOR HARDWARE Rev2.0
Chapter 2: Operating-System Structures
Chapter 13: I/O Systems “The two main jobs of a computer are I/O and [CPU] processing. In many cases, the main job is I/O, and the [CPU] processing is.
Presentation transcript:

QMSS: Components Overview Major HW components of the QMSS: Queue Manager Two PDSPs (Packed Data Structure Processors): – Descriptor Accumulation / Queue Monitoring – Load Balancing and Traffic Shaping Interrupt Distributor (INTD) module Two timers Internal RAM for descriptor memory PKTDMA that supports all cores TeraNet

Infrastructure Packet DMA The Rx and Tx Streaming I/F of the QMSS PKTDMA are wired together to enable loopback. Data packets sent out the Tx side are immediately received by the Rx side. This PKTDMA is used for core-to-core transfers and peripheral-to-DSP transfers. Because the DSP is often the recipient, a descriptor accumulator can be used to gather (pop) descriptors and interrupt the host with a list of descriptor addresses. The host must recycle them.

QMSS: Queue Mapping Queue RangeCountHardware Type Purpose 0 to pdsp/firmwareLow Priority Accumulation queues 512 to queue pendAIF2 Tx queues 640 to 65112queue pendPA Tx queues (PA PKTDMA uses the first 9 only) 652 to 67120queue pendCPintC0/intC1 auto-notification queues 672 to 68716queue pendSRIO Tx queues 688 to 6958queue pendFFTC_A and FFTC_B Tx queues ( for FFTC_A) 696 to 7038General purpose 704 to 73532pdsp/firmwareHigh Priority Accumulation queues 736 to 79964Starvation counter queues 800 to 83132queue pendQMSS Tx queues 832 to 86332Queues for traffic shaping (supported by specific firmware) 864 to 89532queue pendvUSR queues for external chip connections 896 to General Purpose

Tx Example Understanding how the PKTDMAs are triggered and controlled is critical. TeraNet

Receive Example Rx PKTDMA receives packet data from Rx Streaming I/F. Using an Rx Flow, the Rx PKTDMA pops an Rx FDQ. Data packets are written out to the descriptor buffer. When complete, Rx PKTDMA pushes the finished descriptor to the indicated Rx queue. The core that receives the descriptor must recycle the descriptor back to an Rx FDQ. Queue Manager (QMSS) buffer Rx Free Desc Queue Rx queue Rx PKTDMA pop push w r i t e Memory Peripheral TeraNet SCR push pop

How Does it Work During Run Time? For example, Core A wants to send a message to Core B. Core A picks available descriptor (e.g., message structure) that is either partially or completely pre-built. – As needed, Core A adds missing information. Core A pushes the descriptor into a queue. – At this point, Core A is done. The Navigator processes the message and sends it to a queue in the receive side of Core B where it follows a set of pre-defined instructions (Rx flow), such as: – Interrupt Core B and tell it to process the message. – Set a flag so Core B can pull and change a flag value on which Core B synchronizes. – Move buffer into Core B memory space and interrupt the core. After usage, the receive core recycles the descriptors (and any buffer associated with) to prevent memory leaks.

What Needs to Be Configured? Link Ram - Up to two LINK-RAM – One internal, Region 0, address 0x , size up to 16K – One External, global memory, size up to 512K Memory Regions - Where descriptors actually reside – Up to 20 regions, 16 byte alignment – Descriptor size is multiple of 16 bytes, minimum 32 – Descriptor count (per region) is power of 2, minimum 32 – Configuration – base address, start index in the LINK RAM, size and number of descriptors – The way the region is managed Loading PDSP firmware

What Needs to Be Configured? Descriptors – Create and initialize. – Allocate data buffers and associate them with descriptors. Queues – Open transmit, receive, free, and error queues. – Define receive flows. – Configure transmit and receive queues. PKTDMA – Configure all PKTDMA in the system. – Special configuration information used for PKTDMA.