Parallel Peripheral Interface (PPI)

Similar documents
Section 14 Parallel Peripheral Interface (PPI)

The World Leader in High Performance Signal Processing Solutions. Section 15. Parallel Peripheral Interface (PPI)

MACROVISION RGB / YUV TEMP. RANGE PART NUMBER

Graduate Institute of Electronics Engineering, NTU Digital Video Recorder

DATASHEET HMP8154, HMP8156A. Features. Ordering Information. Applications. NTSC/PAL Encoders. FN4343 Rev.5.00 Page 1 of 34.

Pivoting Object Tracking System

Laboratory Exercise 4

TMS320DM646x DMSoC Video Port Interface (VPIF) User's Guide

EECS150 - Digital Design Lecture 12 Project Description, Part 2

MIPI D-PHY Bandwidth Matrix Table User Guide. UG110 Version 1.0, June 2015

Logic Analysis Basics

Logic Analysis Basics

The Project & Digital Video. Today. The Project (1) EECS150 Fall Lab Lecture #7. Arjun Singh

AN-ENG-001. Using the AVR32 SoC for real-time video applications. Written by Matteo Vit, Approved by Andrea Marson, VERSION: 1.0.0

Hello, and welcome to this presentation of the STM32 Serial Audio Interface. I will present the features of this interface, which is used to connect

Checkpoint 2 Video Encoder

Block Diagram. dw*3 pixin (RGB) pixin_vsync pixin_hsync pixin_val pixin_rdy. clk_a. clk_b. h_s, h_bp, h_fp, h_disp, h_line

CHAPTER1: Digital Logic Circuits

Digital PC to TV Encoder with Macrovision TM 2. GENERAL DESCRIPTION LINE MEMORY SYSTEM CLOCK PLL. Figure 1: Functional Block Diagram

Video 1 Video October 16, 2001

IMS B007 A transputer based graphics board

Lancelot. VGA video controller for the Altera Nios II processor. V4.0. December 16th, 2005

Chrontel CH7015 SDTV / HDTV Encoder

LSN 12 Shift Registers

Fig. 21-1CIF block diagram. Translate the input video data into the requisite data format

D5CE Serial Digital Encoder

Camera Interface Guide

LogiCORE IP Video Timing Controller v3.0

LogiCORE IP Video Timing Controller v3.0

NOW Handout Page 1. Traversing Digital Design. EECS Components and Design Techniques for Digital Systems. Lec 13 Project Overview.

Logic Devices for Interfacing, The 8085 MPU Lecture 4

Digital Blocks Semiconductor IP

TMS320VC5501/5502/5503/5507/5509/5510 DSP Multichannel Buffered Serial Port (McBSP) Reference Guide

Motion Video Compression

TV Synchronism Generation with PIC Microcontroller

IT T35 Digital system desigm y - ii /s - iii

Design and Implementation of an AHB VGA Peripheral

CH7053A HDTV/VGA/ DVI Transmitter

ECE532 Digital System Design Title: Stereoscopic Depth Detection Using Two Cameras. Final Design Report

NH 67, Karur Trichy Highways, Puliyur C.F, Karur District UNIT-III SEQUENTIAL CIRCUITS

Universal Asynchronous Receiver- Transmitter (UART)

PCM ENCODING PREPARATION... 2 PCM the PCM ENCODER module... 4

BUSES IN COMPUTER ARCHITECTURE

AVRcam Code Commentary. Version 1.3

SPI Serial Communication and Nokia 5110 LCD Screen

DT3130 Series for Machine Vision

Block Diagram. 16/24/32 etc. pixin pixin_sof pixin_val. Supports 300 MHz+ operation on basic FPGA devices 2 Memory Read/Write Arbiter SYSTEM SIGNALS

A * Rockwell. R6500 Microcomputer System DATA SHEET CRT CONTROLLER (CRTC) r- r- 31 O PART NUMBER R FEATURES DESCRIPTION O 30-4 O O

Digital PC to TV Encoder 2. GENERAL DESCRIPTION LINE MEMORY TRUE SCALE SCALING & DEFLICKERING ENGINE SYSTEM CLOCK PLL

CS 110 Computer Architecture. Finite State Machines, Functional Units. Instructor: Sören Schwertfeger.

ZR PCI Bus. Figure 1. JPEG-Based Video Editing Subsystem For PCI Systems

Counters

White Paper Lower Costs in Broadcasting Applications With Integration Using FPGAs

Checkpoint 2 Video Encoder and Basic User Interface

Contents Circuits... 1

DT3162. Ideal Applications Machine Vision Medical Imaging/Diagnostics Scientific Imaging

Counter dan Register

TAXI -compatible HOTLink Transceiver

Model 5240 Digital to Analog Key Converter Data Pack

ECE 263 Digital Systems, Fall 2015

Model 7500 HD Video Processing Frame Synchronizer Data Pack

LAX_x Logic Analyzer

TAXI -compatible HOTLink Transceiver

CprE 281: Digital Logic

Low-speed serial buses are used in wide variety of electronics products. Various low-speed buses exist in different

ADV7177/ADV7178. Integrated Digital CCIR-601 to PAL/NTSC Video Encoder

Design and Implementation of Timer, GPIO, and 7-segment Peripherals

SMPTE-259M/DVB-ASI Scrambler/Controller

DEDICATED TO EMBEDDED SOLUTIONS

HIGH PERFORMANCE MEMORY DESIGN TECHNIQUE FOR THE MC68000

SEQUENTIAL LOGIC. Satish Chandra Assistant Professor Department of Physics P P N College, Kanpur

Logic Design II (17.342) Spring Lecture Outline

Rec. ITU-R BT RECOMMENDATION ITU-R BT * WIDE-SCREEN SIGNALLING FOR BROADCASTING

Block Diagram. deint_mode. line_width. log2_line_width. field_polarity. mem_start_addr0. mem_start_addr1. mem_burst_size.

problem maximum score 1 28pts 2 10pts 3 10pts 4 15pts 5 14pts 6 12pts 7 11pts total 100pts

A Guide to Standard and High-Definition Digital Video Measurements

CS8803: Advanced Digital Design for Embedded Hardware

RESEARCH AND DEVELOPMENT LOW-COST BOARD FOR EXPERIMENTAL VERIFICATION OF VIDEO PROCESSING ALGORITHMS USING FPGA IMPLEMENTATION

New GRABLINK Frame Grabbers

ADC Peripheral in Microcontrollers. Petr Cesak, Jan Fischer, Jaroslav Roztocil

ILI9322. a-si TFT LCD Single Chip Driver 320RGBx240 Resolution and 16.7M color. Datasheet Preliminary

CprE 281: Digital Logic

HOLITA HDLC Core: Datasheet

PRELIMINARY DATA SHEET. VPX 3220 A, VPX 3216 B, VPX 3214 C Video Pixel Decoders MICRONAS INTERMETALL MICRONAS. Edition July 1, PD

EBU INTERFACES FOR 625 LINE DIGITAL VIDEO SIGNALS AT THE 4:2:2 LEVEL OF CCIR RECOMMENDATION 601 CONTENTS

Synchronization Issues During Encoder / Decoder Tests

Design and analysis of microcontroller system using AMBA- Lite bus

ECE 372 Microcontroller Design

EECS150 - Digital Design Lecture 3 Synchronous Digital Systems Review. Announcements

Model BE-64. talon 150 E. Arrow Highway, San Dimas, CA TECHNICAL DESCRIPTION. Bus Emulator/Word Generator

Counter/timer 2 of the 83C552 microcontroller

GNS600 SCTE104 VANC inserter, Ethernet data-bridge for 3G, HD and SD SDI Inputs and X31 Cue encoder/decoder

FPGA Laboratory Assignment 4. Due Date: 06/11/2012

Lattice Embedded Vision Development Kit User Guide

Hello and welcome to this presentation of the STM32L4 Analog-to-Digital Converter block. It will cover the main features of this block, which is used

HDMI-UVC/HDMI-Parallel converter [SVO-03 U&P]

LogiCORE IP AXI Video Direct Memory Access v5.01.a

ADV7513 Low-Power HDMI 1.4A Compatible Transmitter

Name Of The Experiment: Sequential circuit design Latch, Flip-flop and Registers

Section 4. Display Connector

Transcription:

The World Leader in High Performance Signal Processing Solutions Parallel Peripheral Interface (PPI) Support Email: china.dsp@analog.com

ADSP-BF533 Block Diagram Core Timer 64 L1 Instruction Memory Performance Monitor JTAG/ Debug Core Processor LD 32 LD1 32 L1 Data Memory SD32 DMA Mastered 32 bus Core D bus 32 Core DA bus 32 32 Core D1 bus 32 Core DA1 bus 64 Core I bus System Bus Interface Unit Core Clock (CCLK) Domain System Clock (SCLK) Domain Watchdog And Timers Real Time Clock Event Controller Power Management 16 DMA Core Bus (DCB) DMA Controller 16 DMA Ext Bus EBIU 16 External Port Bus Data Address Control 16 16 16 (DEB) (EPB) Peripheral Access Bus (PAB) 2 Programmable flags UART IRDA DMA Access Bus (DAB) SPORTs SPI PPI 1KB internal Boot ROM External Access Bus (EAB)

PPI - What is it? 3 Parallel Peripheral Interface Programmable bus width (from 8 16 bits in 1-bit steps) Bidirectional (half-duplex) parallel interface Synchronous Interface Interface is driven by an external clock ( PPI_CLK ) Up to 66MHz rate (SCLK/2) Asynchronous to SCLK Includes three frame syncs to control the interface timing Applications High speed data converters Video CODECs Used in conjunction with a DMA channel Can setup 2D DMA (e.g., for video) Can pack 8-bit bytes into 16-bit words for efficient I/O

PPI in general purpose mode (For video and other high speed devices) Mixed Signal Front End PAB DAB 4 FS3/FIELD/PF3 FS2/VSYNC/TIMER2 FS1/HSYNC/TIMER1 PPI3- PPI4-7/PF15-PF12 PPI8-15/PF11-PF4 PPI CLK AD9975 TX_EN RX_EN DATAx RX/TX CLK ADV7183 HREF VREF FIELD P[15:] LLC2 NTSC/PAL Standard Video Decoder

General Purpose Input/Output Modes Single Sync (FS1 only) Useful for Data Converter applications Infinite Capture input sub-mode requires either initial H/W sync to be sent, or Self Trigger through S/W write (no need for H/W FS) 3 Syncs (FS1, FS2, FS3) useful for video I/O with H/W signaling Frame Capture mode outputs syncs from processor while data is input into processor 2 Syncs can be used by ignoring 3rd sync where appropriate (pull FS3 to ground) Modes are set in PPI_CONTROL register 5

PPI General Purpose Input Mode PPI_CONTROL PPI_CLK PAB PPI_COUNT PPI_STATUS 1 8 1 8.EF 38 EE Data Bus DMA Controller DAB DMA Request PPI_DELAY PPI_FRAME 16-bit wide FIFO PACK GATE SYNC FS1 FS2 FS3 16 deep - PACK: 8->16-Bit Packing Unit - GATE: Data Control Unit - SYNC: Data Sync Unit 6

Single Sync Input Mode PPI_CLK PPI_FS1 PPI_DATA 1 2 3 N-1 N PPI_DELAY PPI_COUNT 7 PPI_CLK, PPI_FS1, PPI_DATA are inputs Programmable delay register (PPI_DELAY) inserts a time delay (in units of PPI_CLK cycles) to start transfer after FS1 has been asserted Count register (PPI_COUNT) holds the number of samples the PPI will receive PPI_COUNT ignored during Infinite Capture

Three Sync Input Mode PPI_CLK PPI_FS1 PPI_FS2 PPI_FS3 PPI_DATA 1 2 3 N-1 N PPI_DELAY PPI_COUNT PPI_CLK, PPI_FS1/2/3, PPI_DATA are inputs Coincident assertion of FS1 and FS2 with FS3 low indicates the start of a frame FS3 used to indicate odd/even fields. In a 2-FSx configuration, this line is pulled low. PPI_FRAME register is set to the number of lines per frame (lines are delineated by FS1 assertions) 8

PPI General Purpose Input Mode Frame Capture PPI_CONTROL PPI_CLK PAB DMA Controller DAB DMA Halt PPI_COUNT PPI_STATUS PPI_DELAY PPI_FRAME 16-bit wide FIFO 16 deep UPACK GATE PPI_CLK Data Bus 37 ED 38 EF 8 1 C7 FF FS1 FS2 9 - UPACK: 16->8-Bit Unpacking Unit - GATE: Data Control Unit - TIMER1/2: Make use of Timers TIMER1 TIMER2

Frame Capture Input Mode PPI_CLK PPI_FS1 PPI_FS2 PPI_DATA 1 2 3 N-1 N PPI_DELAY PPI_COUNT PPI_CLK, PPI_DATA are inputs PPI_FS1, PPI_FS2 are outputs TIMER1_WIDTH/TIMER1_PERIOD used to set up PPI_FS1 timing TIMER 2 set up to generate PPI_FS2 timing PPI_FRAME register is set to the number of lines per frame (lines are delineated by FS1 assertions) 1

PPI General Purpose Output Mode PPI_CONTROL PPI_CLK PAB DMA Controller DAB DMA Halt PPI_COUNT PPI_STATUS PPI_DELAY PPI_FRAME 16-bit wide FIFO 16 deep UPACK GATE PPI_CLK Data Bus 37 ED 38 EF 8 1 C7 FF FS1 FS2 FS3/PF3 11 - UPACK: 16->8-Bit Unpacking Unit - GATE: Data Control Unit - TIMER1/2: Make use of Timers TIMER1 TIMER2

Single Sync Output Mode PPI_CLK PPI_FS1 PPI_DATA 1 2 3 N-1 N PPI_DELAY PPI_COUNT PPI_CLK is input PPI_FS1 and PPI_DATA are outputs Timer 1 used to set up timing for FS1 There is a 1-cycle delay between FS1 assertion and start of PPI_DELAY Count register (PPI_COUNT) holds the number of samples the PPI will output, less one (i.e., set for N-1) 12

Three Sync Output Mode PPI_CLK PPI_FS1 PPI_FS2 PPI_FS3 PPI_DATA 1 2 3 N-1 N PPI_DELAY PPI_COUNT PPI_CLK is input PPI_FS1, PPI_FS2, PPI_FS3 and PPI_DATA are outputs Timer 1 used to set up timing for FS1 Timer 2 used to set up timing for FS2 FS3 toggles coincident with an FS1 assertion, after an FS2 assertion 13

ITU-61 ITU-61 - specifies methods for digitally coding signals Video coding RGB is an intuitive format, but channels are highly correlated YCrCb (a scaled and offset version of YUV color space) is highly uncorrelated Provides better compression characteristics 8-bit or 1-bit quantization NTSC and PAL each have 72 pixels per line NTSC (3 frames/sec) has 525 lines (including blanking) PAL (25 frames/sec) has 625 lines (including blanking) PPI supports ITU-61 through use of 3-frame-sync modes 14

ITU-656 ITU-656 Defines the physical interfaces and data stream Bit-parallel and bit-serial modes Only bit-parallel supported with PPI 27 MHz nominal clock + 8-1 data lines (for bit-parallel mode) Embedded hardware signaling (H, V, F) no extra hardware lines required Supports interlaced and progressive formats Some OEMs support pseudo ITU-656 15

PPI ITU-656 Modes ITU-656 Input (3 Modes) Entire Field (H and V Blanking, Active Video and control codes) Vertical Blanking Interval only (with associated H blanking and control codes) Active video only. Can drop blanking for bandwidth savings ITU-656 Output User sets up blanking and encoding info in memory 16

ITU-656 Mode Preamble 8-bit DATA 1-bit DATA 8bit Data Bus F F EAV/SAV X Y Statu s Word D9 1 D8 F D7 V D6 H D5 P3 D4 P2 D3 P1 D2 P D1 D The preamble (XY) holds the sync indicators VSYNC, HSYNC, Field. It also includes protection bits P-P3. In output mode the user must construct all preamble control codes In general, the 8-bit bus is for consumer markets while 1-bit bus is for professional markets. 17

PPI ITU-656 Input Mode PAB DMA Controller PPI_CONTROL PPI_COUNT PPI_STATUS PPI_DELAY PPI_FRAME PCHK PPI_CLK Data Bus FF C7 1 8 EF 38 EE DAB DMA Request 16-bit wide FIFO 16 deep PACK GATE - PCHK: Preamble Check Unit - PACK: 8->16-Bit Packing Unit - GATE: Data Control Unit 8bit Data Bus F F Blanking Active Video EAV SAV EAV X Y 8 1 8 1 8 1 4 268 4 144 F F X Y C B Y C R Y C B Y C B Y F F 18

PPI ITU-656 Output Mode PPI_CONTROL PPI_CLK PAB DMA Controller PPI_COUNT PPI_STATUS PPI_DELAY PPI_FRAME Data Bus 37 ED 38 EF 8 1 C7 FF DAB DMA Halt 16-bit wide FIFO UPACK GATE 16 deep - UPACK: 16->8-Bit Unpacking Unit - GATE: Data Control Unit 19

PPI Control Register (PPI_Control) FLD_SEL (Active Field Select) In ITU-656 input mode: = Field 1 1 = Fields 1 and 2 In GP input mode: = External frame sync trigger 1 = PPI self-trigger SKIP_EN (Skip Enable) = Disable 1 = Enable PACK_EN (Packing Mode) = Disable 1 = Enable Reserved PORT_CFG[1:] (Port Config.) In input mode: = 1 frame sync input 1 = frame capture, FS1, FS2 output 1 = 3 frame syncs 11 = infinite mode, 1 frame sync not repeated In output mode: = 1 sync 1 = 3 syncs PORT_EN (Enable) = PPI disable 1 = PPI enable Addr: XFFC 1 POL[1:] (Polarity) = Nothing inverted 1 = PPI_CLK inv., PPI_FS1 and PPI_FS2 not inv. 1 = PPI_FS1 and PPI_FS2 inv., PPI_CLK not inverted 11 = PPI_FS1, PPI_FS2, and PPI_CLK inv. 2 15 14 13 12 11 1 9 8 7 6 5 4 3 2 1 SKIP_EO (Skip Even Odd) = Skip odd number of elem. 1 = Skip even number of elem. DLEN[2:] (Data Length) = 8-bit 1 = 1-bit.. 11 = 15-bit 111 = 16-bit PORT_DIR (Direction) = PPI receive mode 1 = PPI transmit mode XFR_TYPE[1:] (Transfer Type) In input mode: = Active field only 1 = Entire field 1 = Vertical Blanking only 11 = GP Input mode In output mode:, 1, 1 = ITU-656 Output Mode 11 = GP Output Mode

Transfer Count Register (PPI_COUNT) Addr: XFFC 18 15 14 13 12 11 1 9 8 7 6 5 4 3 2 1 PPI_COUNT[15:] In GP input mode: One less than the number of samples to read in to the PPI per line In GP output mode: One less than the number of samples to write out through the PPI per line Delay Count Register (PPI_DELAY) Addr: XFFC 1C 15 14 13 12 11 1 9 8 7 6 5 4 3 2 1 PPI_DELAY[15:] Number of PPI clock cycles to delay after assertation of PPI_FS1 before latching in data 21

PPI Status Register (PPI_STATUS) ERR_NCOR (Error not corrected) ITU-656 Mode: = Preamble error detected and corrected 1 = Preamble error detected but not corrected Read to clear OVR (PPI FIFO Overflow) = No interrupt 1 = FIFO Overflow Error interrupt occurred FT_ERR (Frame Track Error) = No interrupt 1 = Frame Track error interrupt occurred Reserved Addr: XFFC 14 15 14 13 12 11 1 9 8 7 6 5 4 3 2 1 ERR_DET (Error Detected) ITU-656 Mode: = No preamble error detected 1 = Preamble error detected FLD (Field Indicator) = Field 1 1 = Field 2 UNDR (PPI FIFO Underrun) = No interrupt 1 = FIFO Underrun error interrupt occurred 22

Lines Per Frame Register (PPI_FRAME) 15 14 13 12 11 1 9 8 7 6 5 4 3 2 1 Addr: XFFC 1 PPI_FRAME[15:] Holds the number of lines expected per frame of data 23

Hands-on 9_1ADSP-BF533 PPI Video input 9_2ADSP-BF561 Video talkthrough 24

25 Q&A