10/10/2008EECS150 Lab Lecture #71 The Project & Digital Video EECS150 Fall2008 - Lab Lecture #7 Arjun Singh Adopted from slides designed by Greg Gibeling.

Slides:



Advertisements
Similar presentations
INPUT-OUTPUT ORGANIZATION
Advertisements

EECS150 Lab Lecture #61 AC97 PCM Audio EECS150 Fall 2007– Lab Lecture #6 Udam Saini 10/05/2007.
The 8085 Microprocessor Architecture
Fundamental concepts in video
EECS 150 Spring 2007 Checkpoint 0 - SDRAM 2/23/2007 Jeff Kalvass (Adapted From Greg Gibeling )
Video enhances, dramatizes, and gives impact to your multimedia application. Your audience will better understand the message of your application.
3/3/2006EECS150 Lab Lecture #71 Digital Video EECS150 Spring 2006 – Lab Lecture #7 Brian Gawalt Greg Gibeling.
2/24/2006EECS150 Lab Lecture #61 N64 Controller (Project Checkpoint#1) EECS150 Spring2006 – Lab Lecture #6 Philip Godoy Guang Yang Greg Gibeling.
3/24/2006EECS150 Lab Lecture #101 Game Engine EECS150 Spring2006 Lab Lecture #10 Guang Yang.
Chapter 3 Continued Logic Gates Logic Chips Combinational Logic Sequential Logic Flip Flops Registers Memory Timing State Machines.
CS150 Project Checkpoint 1. Controller Interface Dreamkatz Controller Interface 1. The N64 Controller 2. Physical interface 3. Communication protocol.
CS150 Project Checkpoint 2 CheckPt2 is easy!!! BUT………………. This lab can be very tricky. BUT……………… Mark is here to help! You get to listen to cool.
2/16/2007EECS150 Lab Lecture #51 Logic Analyzers EECS150 Spring 2007 – Lab Lecture #5 Shah Bawany.
University College Cork IRELAND Hardware Concepts An understanding of computer hardware is a vital prerequisite for the study of operating systems.
2/17/2006EECS150 Lab Lecture #51 Logic Analyzers EECS150 Spring 2006 – Lab Lecture #5 David Lin Greg Gibeling.
2/9/2007EECS150 Lab Lecture #41 Debugging EECS150 Spring2007 – Lab Lecture #4 Laura Pelton Greg Gibeling.
Lecture 121 Lecture 12: VGA Video ECE 412: Microcomputer Laboratory.
Light to Electricity: lines begin and end in black (low signal level) called Blanking between blanking is the active video scanning is precisely controlled.
02/10/06EECS150 Lab Lecture #41 Debugging EECS150 Spring 2006 – Lab Lecture #4 Philip Godoy Greg Gibeling.
INPUT-OUTPUT ORGANIZATION
10/31/2008EECS150 Lab Lecture #10 The Waveform Generator EECS150 Fall Lab Lecture #10 Chris Fletcher Adopted from slides designed by Chris Fletcher.
CS-334: Computer Architecture
Video Monitor Uses raster scanning to display images
NTSC to VGA Converter Marco Moreno Adrian De La Rosa
Video Media Department of Computer Education KMUTNB.
Lecture 111 Lecture 11: Lab 3 Overview, the ADV7183B Video Decoder and the I 2 C Bus ECE 412: Microcomputer Laboratory.
ECE-L304 Lecture 6 Review of Step 5 Introduction to Step 6 and 7 Final Lecture Quiz Next Week.
Microcomputer Systems Project By Shriram Kunchanapalli.
10/12/2007EECS150 Lab Lecture #71 Digital Video and User Interface EECS150 Fall 2007 – Lab Lecture #7 Allen Lee Greg Gibeling.
Lecture 20: Communications Lecturers: Professor John Devlin Mr Robert Ross.
Introduction to Experiment 5 VGA Signal Generator ECE 448 Spring 2009.
Video Video.
Top Level View of Computer Function and Interconnection.
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK
EECS Components and Design Techniques for Digital Systems Lec 13 – Project Overview David Culler Electrical Engineering and Computer Sciences University.
Concepts of Multimedia Processing and Transmission IT 481, Lecture 3 Dennis McCaughey, Ph.D. 5 February, 2007.
COMP541 Video Monitors Montek Singh Oct 2, 2015.
SEQUENTIAL CIRCUITS Component Design and Use. Register with Parallel Load  Register: Group of Flip-Flops  Ex: D Flip-Flops  Holds a Word of Data 
8279 KEYBOARD AND DISPLAY INTERFACING
EEE440 Computer Architecture
Ch5: TELEVISION.
Digital Video Digital video is basically a sequence of digital images  Processing of digital video has much in common with digital image processing First.
8279 KEYBOARD AND DISPLAY INTERFACING
NTSC SYSTEM. INTRODUCTION It’s the national television system committee. Analog television – used in parts of North and South America,Myanmar,S.Korea,parts.
Introduction to Microprocessors - chapter3 1 Chapter 3 The 8085 Microprocessor Architecture.
Digital Logic Design Lecture # 15 University of Tehran.
SC200x Video Subsystem Tony Sloan DTV Source Applications Broadband Entertainment Division July 2001.
Chapter 3 System Buses.  Hardwired systems are inflexible  General purpose hardware can do different tasks, given correct control signals  Instead.
PlayStation 2 DualShock 2 Controller Ryan O’Keefe, Kabir Singh and Adrian Padin 1.
1 COMP541 Video Monitors Montek Singh Mar 11, 2016.
— Analog Devices Confidential Information — Applications Issues 1.
COMP541 Video Monitors Montek Singh Oct 7, 2016.
COMP541 Video Monitors Montek Singh Sep 15, 2017.
Chapter 6 Input/Output Organization
Understanding Analogue and Digital Video Lesson 1
The 8085 Microprocessor Architecture
SDRAM Arbiter EECS150 Fall Lab Lecture #9 Chen Sun
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Local Video System: Overview
Digital Video - Introduction
Logic Analyzers EECS150 Fall Lab Lecture #5 Arjun Singh
The 8085 Microprocessor Architecture
COMP541 Video Monitors Montek Singh Feb 6, 2019.
Debugging EECS150 Fall Lab Lecture #4 Sarah Swisher
Debugging EECS150 Fall Lab Lecture #4 Sarah Swisher
Good Design & Network Audio
Local Video System: Overview
The SDRAM Controller EECS150 Fall Lab Lecture #8 Chen Sun
Logic Analyzers EECS150 Fall Lab Lecture #5 Arjun Singh
Digital Video - Introduction
Presentation transcript:

10/10/2008EECS150 Lab Lecture #71 The Project & Digital Video EECS150 Fall Lab Lecture #7 Arjun Singh Adopted from slides designed by Greg Gibeling and Chris Fletcher

10/10/2008EECS150 Lab Lecture #72 Today Project Introduction Good Design (Part 2) Interfaces and Handshaking Video Encoder Digital Video ITU-R BT.601/ITU-R BT.656 Video Encoder I 2 C Bus More Information

10/10/2008EECS150 Lab Lecture #73 The Project (1) Digital Storage Oscilloscope Display audio as waveforms Stream audio from network audio or from a microphone Store audio stream Playback audio stream Trigger and freeze under different conditions Extra Credit A major part of this project Will augment checkpoints 3, 4 and 5

10/8/2004EECS150 Lab Lecture #64 The Project (2) Checkpoints Require more design work than labs We’re not telling you exactly what to do Part of your project Design them well Test them thoroughly! Don’t lose your code Require more time

10/10/2008EECS150 Lab Lecture #75 The Project (3) Checkpoint Roadmap Video Encoder SDRAM in Simulation SDRAM in Hardware + SDRAM Arbiter Waveform Generator + OScope features AC97 Audio Extra Credit Check calendar page and project spec for dates

10/10/2008EECS150 Lab Lecture #76 Interfaces & Handshaking (1) Connect two modules with just wires No combinational logic Unidirectional Data-flow Source  Sink

10/10/2008EECS150 Lab Lecture #77 Interfaces & Handshaking (2) Handshaking Signals Valid (from Source) Ready (from Sink) Don’t rely on timing assumptions

10/10/2008EECS150 Lab Lecture #78 Interfaces & Handshaking (3) Data Transfer Synchronous When Ready and Valid are both high

Checkpoint #1: Video Encoder Video Encoder Sets up NTSC framing Blanking, SAV, EAV Request Data & Display it 10/10/2008EECS150 Lab Lecture #79

10/10/2008EECS150 Lab Lecture #710 Digital Video (1) Pixel Array A digital image is represented by a matrix of pixels which include color information. Frames Motion is created by flashing a series of still frames

10/10/2008EECS150 Lab Lecture #711 Digital Video (2) Scanning Images are generated on the screen by scanning pixel lines, left to right, top to bottom Early CRTs required time to get from the end of a line to the beginning of the next. Therefore each line of video consists of active video portion and a horizontal blanking interval To reduce flicker, each frame is divided into two fields: odd and even

10/10/2008EECS150 Lab Lecture #712 Digital Video (3) Colors Usually represented as red, green and blue In the digital domain we could transmit 8bits each for RGB. Transition from B&W Didn’t want to break old TVs Added separate color or “Chroma” signals Y: Luma (Black and White) Cr: Chroma Red (New color signal) Cb: Chroma Blue (New color signal)

10/10/2008EECS150 Lab Lecture #713 Digital Video (4) Chroma Subsampling Human eye is sensitive to Luma more than Chroma

10/10/2008EECS150 Lab Lecture #714 Administrative Info (1) Project Partners Talk to us ASAP if you don’t have one SVN Repositories Chris will give introduction next Tuesday, 3:30-5:00pm (his OH time) Introduction will be audio-cast (Audio-cast guaranteed this time)

10/10/2008EECS150 Lab Lecture #715 Administrative Info (2) Design Reviews Grading You have it or you don’t Bring diagrams Schematic “On a napkin” Bubble-and-arc Block Diagrams NO VERILOG

10/10/2008EECS150 Lab Lecture #716 NO DESIGN  NO HELP

10/10/2008EECS150 Lab Lecture #717 ITU-R BT.601 Formerly, CCIR-601. Designed for digitizing broadcast NTSC National Television System Committee Variations: 4:2:0 Chroma Subsampling PAL (European) version Component streaming: line i: C B Y C R Y C B Y C R Y line i+1: C B Y C R Y C B Y C R Y Effective Bits/Pixel: 4 components / 2 pixels = 32/2 = 16 bits/pixel Active Frame Size 720 x 507 Frame Rate29.97 /sec ScanInterlaced Chroma subsampling 4:2:2 2:1 in X only Coincedent Bits per component 8 Effective bits/pixel 16

10/10/2008EECS150 Lab Lecture #718 ITU-R BT.656 (1) Details Pixels/Line: 858 Lines/Frame:525 Frames/S: Pixels/S: 13.5M Active Pixels/Line: 720 Lines/Frame:487 Blanking SAV/EAV: 4B/4B Black filler

10/10/2008EECS150 Lab Lecture #719 ITU-R BT.656 (2) Odd Field (262 Lines) Total: 262 Lines 16 Vertical Blanking 244 Active 2 Vertical Blanking Even Field Total: 263 Lines 17 Vertical Blanking 243 Active 3 Vertical Blanking

10/10/2008EECS150 Lab Lecture #720 ITU-R BT.656 (3) F: Field Select (0: Odd, 1: Even) V: Vertical Blanking Flag H: EAV/SAV Flag (0: SAV, 1: EAV) E[3]=V^H, E[2]=F^H, E[1]=F^V, E[0]=F^V^H P9P8P7P6P5P4P3P2 1’b1 1’b0 1’b1FVHE[3]E[2]E[1]E[0]

10/10/2008EECS150 Lab Lecture #721 Video Encoder (1) Analog Devices ADV7194 Supports ITU-R BT.601/656 S-Video and Composite Outputs I 2 C Control (We will give this to you)

10/10/2008EECS150 Lab Lecture #722 Video Encoder (2) SignalWidthDirDescription VE_P10OOutoing NTSC Video (Use {Data, 2’b00}) VE_SCLK1OI 2 C Clock (For Initialization) VE_SDA1OI 2 C Data (For Initialization) VE_PAL_NTSC1OPAL/NTSC Mode Select (Always 1’b0) VE_RESET_B_1OActive low reset (~Reset) VE_HSYNC_B_1OManual Control (Always 1’b1) VE_VSYNC_B_1OManual Control (Always 1’b1) VE_BLANK_B_1OManual Control (Always 1’b1) VE_SCRESET1OManual Control (Always 1’b0) VE_CLKIN1OClock (27MHz, Just send Clock)

10/10/2008EECS150 Lab Lecture #723 Video Encoder (3) SignalWidthDirDescription Clock1IClock input (27MHz) Reset1IReset input Data32IRequested Data from ROM DataValid1IData is valid this cycle DataReady1OThe Video Encoder is ready to receive more data. If DataReady and DataValid are both high, the VideoEncoder should latch in Data on the next rising edge. AddressLine9OLine of Video ({Line[7:0], Field}) The ROM will return a pixel pair from this line. AddressPair9OPair of Pixels. The line will return data for this pixel pair. AddressValid1OAddressLine and AddressPair are valid this cycle. AddressReady1IThe sink connected to AddressLine/AddressPair is ready to receive those signals.

10/10/2008EECS150 Lab Lecture #724 Video Encoder (4)

10/10/2008EECS150 Lab Lecture #725 Video Encoder (5) Basic Design Stream EAV, Blank, SAV, Active Lines Generate EAV/SAV/Blank using a mux Register output data (Timing reasons) Request Incoming Data Request it the cycle before you need it Must be clipped Minimum data is 0x10 Maximum data is 0xF0 Otherwise it will appear to be blanking signals

10/10/2008EECS150 Lab Lecture #726 Video Encoder (6) Testing Test thoroughly Simulation is difficult with test ROM Try using values which count, so you can see it Design your testbench early Perhaps one partner should design the module, one should design the testbench Ensure that you test corner cases First and last lines Off-by-one errors in counters

10/10/2008EECS150 Lab Lecture #727 I2CI2C ADV7194 Initialization using I 2 C Requires only 2 wires Serial Data (Bidirectional) Clock (Driven by master) Runs at up to 400kHz Bidirectional Communication Given to you Complicated to get right Hard to debug

10/10/2008EECS150 Lab Lecture #728 I 2 C (2) Physical Protocol Data Open collector bidirectional bus Driven by sender Clock Open collector unidirectional bus Driven by master May be pulled low to stall transmission

10/10/2008EECS150 Lab Lecture #729 I 2 C (3) Protocol Start Condition Address Address Acknowledge Data Transfer Data Acknowledge Stop Condition

10/10/2008EECS150 Lab Lecture #730 I 2 C (4) Arbitration Anyone can drive bus at any time No central arbiter No short circuits (Impossible in open collector) Decentralized Arbitration Check data bus against value you’re sending Mismatch means someone else is transmitting So let them finish, and then try again Inherently gives preferences to accesses with more 1’b1s in them

10/10/2008EECS150 Lab Lecture #731 More Information Checkpoint Writeup Documents Page of the Website Video in a Nutshell ADV7194 Datasheet Complete ADV7194 reference ITU-R BT.656 & ITU-R BT.601 Standards Complete video standards I 2 C Bus Specification READ THE DATASHEETS!