DOC PREVIEW
Berkeley COMPSCI 150 - Checkpoint 2 Video Encoder and Basic User Interface

This preview shows page 1-2-3-4-5 out of 14 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

EECS150 Fall 2007 Checkpoint 2 UCB 1 2007 UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Checkpoint 2 Video Encoder and Basic User Interface 1.0 Motivation The goal of this semester’s project is to build an interactive audio conferencing system. In order to do that, you will need to develop modules that allow us to not only see, but also interact with the conferencing system beyond the LEDs and buttons available on the FPGA. In this checkpoint, you will build the modules that determine the “look and feel” of the project. It is divided into three milestones: 1. A video encoder module that uses the NTSC (TV) standard to communicate with the LCD monitors hooked up to each station. 2. A video display module that determines the video data to be read by the video encoder, with the ability to display ASCII text. 3. A user interface module that uses button presses from a Nintendo 64 game controller to interact with the video display module. Keep in mind that you will be using these modules in future checkpoints, so be sure to design your Verilog ahead of time, comment you code and test everything thoroughly. Because you will be keeping and relying on this code for months, it will actually save you many stressful hours to ensure it works well now, rather than when you are about to finish the project. Many of you will be at least reasonably familiar with video as it is used on computer systems, with standard VGA or DVI interfaces, complicated video cards and high-resolution data grade CRT or LCD monitors. In this checkpoint you will be introduced to the far older and more universal world of broadcast video. You will be working with NTSC standard video, as used in the U.S. broadcast TV industry, and in fact on your TV at home. NTSC is a reasonably simple standard, which is widely used and readily available. But one of the primary reasons to use it is that despite advances such as DVI and HDTV, the video standards we will be using (which have survived from the invention of black-and-white television) will continue to affect video for a long time to come. “BECAUSE YOU WILL BE KEEPING AND RELYING ON THIS CODE FOR MONTHS, IT WILL ACTUALLY SAVE YOU MANY STRESSFUL HOURS TO ENSURE IT WORKS WELL NOW, RATHER THAN WHEN YOU ARE ABOUT TO FINISH THE PROJECT” 2.0 Introduction The video encoder module you will building for this checkpoint is a simple protocol bridge, connecting a memory structure, in this case a simple ROM-like module,EECS150 Fall 2007 Checkpoint 2 UCB 2 2007 to a byte wide video data stream. In the second phase of the phase of the project, you will replace the given ROM-like module with a module of your own that displays video data that you define. The primary responsibilities of the video encoder are: 1. Request the video data to be transmitted a. Must track which line and pixel is being sent when 2. Generate video framing signals a. Start-of-active-video and end-of-active-video (SAV and EAV) signals to delineate row boundaries b. Blanking and field control to indicate what type of data will be sent c. Black data to fill blanking periods 3. Clip the video data to the allowable value range a. Data values less than 0x10 or more than 0xF0 must be clipped 4. Initialize and control the Analog Devices ADV7194 hardware a. The ADV7194 is a digital-to-analog converter which generates analog video signals b. Use I2C to initialize the ADV7194 to the proper mode The video encoder will be responsible for abstracting away all the complexities of dealing with the ADV7194 and properly framing the data, leaving only the task of supplying valid video data, which for the first phase will be provided by a simple ROM-like module to generate a test pattern of solid color bars. 2.1 ITU-R BT.601 Video When television broadcasts were slated to move from black-and-white to color, there was a significant concern over the existing investments in black-and-white sets. Not only were engineers concerned that old TV sets would be unable to receive newer signals, making old equipment useless, but they were worried that signals from older stations would not be received by the new color sets, preventing the adoption and sales of color TVs. As such a compromise was made resulting in the color scheme outlined below. 2.1.1 RGB Coloring & Human Perception The standard color scheme used when dealing with light, as we are in video applications, is based on the three primary colors: Red, Green and Blue. Human eyes have two sets of photoreceptors which detect incoming light: • Rods cannot detect color, but they are very sensitive to brightness • Cones can detect color, but they are significantly less sensitive The primary colors Red, Green and Blue derive from the fact that cones come in three colors: Red, Green and Blue. This means that rather than generating any possible color, it is enough to be able to mix varying proportions of Red, Green and Blue, as our eyes perceive every other color in terms of the RGB proportions in them. Just as important is the relative sensitivity of the rods and cones in our eyes, for example, because cones are not particularly sensitive, it is more than sufficient to store 8bits of intensity for each color in RGB, leading to the widespread use of 24bit color.EECS150 Fall 2007 Checkpoint 2 UCB 3 2007 Less known but even more important is the fact that the rods in our eyes, which are sensitive only to brightness, are much more sensitive. This means that while we can easily perceive slight differences in brightness using our cones, it is more difficult to perceive subtle shades of color. 2.1.2 YUV Coloring As a result of the economic pressures to maintain compatibility between older black and white TVs and the newer color models, as well as the way in which humans perceive light, engineers designed a video format which would transmit intensity, or luminance, and color, or chrominance, separately. This means that instead of storing the Red, Green and Blue content of a pixel in our video, we will store its luminance (Y) or brightness and its red (CR/V) and blue (CB/U) chrominance, or color. R0R2R1R3G0G2G1G3B0B2B1B3Y0Y2Y1Y3CB 0-1CB 2-3CR 0-1CR 2-3RGB


View Full Document

Berkeley COMPSCI 150 - Checkpoint 2 Video Encoder and Basic User Interface

Documents in this Course
Lab 2

Lab 2

9 pages

Debugging

Debugging

28 pages

Lab 1

Lab 1

15 pages

Memory

Memory

13 pages

Lecture 7

Lecture 7

11 pages

SPDIF

SPDIF

18 pages

Memory

Memory

27 pages

Exam III

Exam III

15 pages

Quiz

Quiz

6 pages

Problem

Problem

3 pages

Memory

Memory

26 pages

Lab 1

Lab 1

9 pages

Memory

Memory

5 pages

Load more
Download Checkpoint 2 Video Encoder and Basic User Interface
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Checkpoint 2 Video Encoder and Basic User Interface and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Checkpoint 2 Video Encoder and Basic User Interface 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?