1. Encode binary value using PCM

Slides:



Advertisements
Similar presentations
Mehdi Naghavi Spring 1386 Operating Systems Mehdi Naghavi Spring 1386.
Advertisements

Advanced Manufacturing Laboratory Department of Industrial Engineering Sharif University of Technology Session # 6.
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Computer Graphics Visible Surface Determination. Goal of Visible Surface Determination To draw only the surfaces (triangles) that are visible, given a.
Mosaics con’t CSE 455, Winter 2010 February 10, 2010.
Display Technology  Images stolen from various locations on the web...
1 Physical Layer: Data Encoding & Transmission. 2 Network Interface Card (NIC) LL in part, PL in total are implemented in NIC –Ethernet card, card,
1 COMP541 VGA Character Terminal Montek Singh Mar 1, 2007.
Introduction to OpenGL. What is OpenGL OpenGL is a low-level software interface to graphics hardware No commands for performing windowing tasks or obtaining.
Ch 1 Intro to Graphics page 1CS 367 First Day Agenda Best course you have ever had (survey) Info Cards Name, , Nickname C / C++ experience, EOS experience.
Perspective, Scene Design, and Basic Animation
Introduction to VGA Wei Miao Yuxuan Zhou 1. 2 VGA VGA = Video Graphics Array Introduced by IBM in 1987, still using today All points addressable Transmitting.
VGA Interface1 CRT Display Technology zCathode Ray Tube yElectron gun fires electrons at the screen yElectric field steers the electron (X field and Y.
Video Monitor Uses raster scanning to display images
Representing Information Digitally. Digitization Initially transforming data for computer use Assigning people social security numbers The creation of.
Display adapters Introduction Display adapter is a circuit board. This is used to convert the raw data to image data (video signal) that.
BY Kamran Yousaf Computer Graphics & Animation. BY Kamran Yousaf Contents Introduction Usage, Application & Advantages Video Display Devices Output Devices.
Video Monitor Uses raster scanning to display images –Beam of electrons illuminates phosphorus dots on the screen called pixels. Starting at the top of.
EE4OI4 Engineering Design UP1core Library Functions.
CSE 477Design Problems1 1. Encode binary value using PCM zBinary # --> zHow accurate can you get? (+/- 1 usec?)
Introduction to VGA 數位電路實驗 TA: 吳柏辰 Author: Trumen.
Video Monitor CRT: Cathode Ray Tube
User Interface Programming in C#: Direct Manipulation Chris North CS 3724: HCI.
Java Direct Manipulation Chris North cs3724: HCI.
Why program retro machines? Aren't they obsolete? Why not do something more constructive?
Program 2 due 02/01  Be sure to document your program  program level doc  your name  what the program does  each function  describe the arguments.
CSE 681 Introduction to 3D Graphics. CSE 681 Computer graphics is “the creation and manipulation of graphics images by means of computer.” (Marc Berger,
1 Graphics CSCI 343, Fall 2015 Lecture 6 Viewing, Animation, User Interface.
Figure 10.1 Color CRT and Phosphor Dots on Face of Display.
Computer Graphics & Multimedia
CRT Display Technology
1 Perception and VR MONT 104S, Fall 2008 Lecture 20 Computer Graphics and VR.
CS-321 Dr. Mark L. Hornick 1 Graphics Displays Video graphics adapter Monitor.
Lecture 13: Raster Graphics and Scan Conversion
Advanced Java Screen Update Techniques SD’98 - Session 4406 Ted Faison Faison Computing Inc.
1 COMP541 Video Monitors Montek Singh Mar 11, 2016.
Computer Graphics Lecture 03 Graphics Systems Cont… Taqdees A. Siddiqi
Problems in IO CS 1550 Recitation December 2 nd /4 th, 2002 The questions in this slide are from Andrew S. Tanenbaum's textbook page 376, 377.
Reference: What is it? A multimedia python library – Window Management – Graphics geometric shapes bitmaps (sprites) – Input Mouse Keyboard.
1© 2009 Autodesk Hardware Shade – Presenting Your Designs Hardware and Software Shading HW Shade Workflow Tessellation Quality Settings Lighting Settings.
COMP541 Video Monitors Montek Singh Oct 7, 2016.
Computer Graphics Lecture 4 Computer Graphics Hardware
Computer Science.
Computer Graphics: An Introduction
COMP541 Video Monitors Montek Singh Sep 15, 2017.
Everything is a number Everything in a computer memory and on storages is a number. Number  Number Characters  Number by ASCII code Sounds  Number.
- Introduction - Graphics Pipeline
Computer Graphics Lecture 3 Computer Graphics Hardware
Textures, Sprites, and Fonts
Lecture 9 Line Drawing Algorithms (Bresenham’s Line Algorithm)
Week 2 - Friday CS361.
2D GPU Platform with Hardware-Accelerated Features
Flash Interface, Commands and Functions
COMP541 Video Monitors Montek Singh Feb 20, 2015.
Microprocessor and Assembly Language
Figure 9.1 Color CRT and Phosphor Dots on Face of Display.
Computer Architecture
Introduction to Microprocessors and Microcontrollers
LCLS Event System - Software
Introduction to Computer Graphics
Graphics Hardware: Specialty Memories, Simple Framebuffers
Introduction to VGA Digital Circuit Lab TA: Po-Chen Wu.
Lecture 13 Clipping & Scan Conversion
Graphics Systems SUBJECT: COMPUTER GRAPHICS LECTURE NO: 02 BATCH: 16BS(INFORMATION TECHNOLOGY) 1/4/
COMP541 Video Monitors Montek Singh Feb 6, 2019.
Otasuke GP-EX! Chapter 2 Run State Screen.
Chapter 8 I/O.
ECE 448: Spring 2019 Lab 5 Julia Set Fractal.
VGA Port CSE 678.
Game Programming Algorithms and Techniques
Presentation transcript:

1. Encode binary value using PCM How accurate can you get? (+/- 1 usec?) CSE 477 Design Problems

2. Timer/Interrupt Examples: Timestamp Input Events Keep a queue of input events Each event is a timestamp CSE 477 Design Problems

3. Stepper Motor Control Simple idea (Timing of signals is important: Acceleration/Deceleration) CSE 477 Design Problems

4. Serial Communications Sample the data bits at the right time Can you adapt to the current data rate? CSE 477 Design Problems

Graphics Intro/Overview Each location in memory corresponds to one pixel on the display A process reads the memory and sends the value to the memory at the right time The memory is called a “frame buffer” CSE 477 Design Problems

Frame Buffer To display something, just write values into the frame buffer The display happens automatically The frame buffer memory is “dual-ported” i.e. shared between two independent processes Hardware assist for drawing objects reduces bandwidth and computation e.g. lines, rectangles, characters, triangles, ... CSE 477 Design Problems

Double-Buffering What if the image changes from one frame to the next? Use two frame buffers: change one while the other displays then switch CSE 477 Design Problems

Double-Buffering Redraw everything on the screen, every frame Lots of computation CSE 477 Design Problems

Double-Buffering Changing the display 1. Erase and redraw every frame 2. Erase what changes and redraw Overlap? CSE 477 Design Problems

Drawing Objects e.g. Lines Bresenham’s algorithm Forward differencing Fast: add/subtract pixel/clock No accumulated error CSE 477 Design Problems

Windowing Display only a part of the frame buffer e.g. fast panning, scrolling CSE 477 Design Problems

Zoom/Shrink e.g. Zoom by 2x Cheap/fast hack extend to 1.25x? extend to .75x? Cheap/fast hack Works OK for some applications not images CSE 477 Design Problems

Rotations Very similar to line drawing Fast, cheap transformation CSE 477 Design Problems

Color Map Maps each value in memory to a value for the display e.g. color transformation (3,3,2) -> (2,2,2) e.g. binary image planes Use each bit to represent one color Overlapping colors defined by color map Mask a plane (color) by changing the color map e.g. 4 bit image planes Two images - switch between them by changing the color map CSE 477 Design Problems

Sprites Objects display over the background check origin values to decide what to display transparency? CSE 477 Design Problems

VGA Timing CSE 477 Design Problems

One Frame Vertical Synch tells the monitor when to go back to the top The Blanking Interval turns off the video at the top and bottom of the screen CSE 477 Design Problems

One Line Each frame is divided into many lines Horizontal synch tells the monitor to go back to the start of the next line Each line is divided into pixels No timing signal: just change the value from one pixel to the next CSE 477 Design Problems

Using a 24 MHz clock Line: 31.77 usec x 24 MHz = 762 clocks/line Frame: 16.784 msec x 24 MHz = 402,816 clocks/frame (!) 402,816 / 762 clocks/line = 528 lines But: we display 512 pixels/line 480 lines/frame The rest of the time? Blanking Syncs CSE 477 Design Problems

VGA Interface Simple counting will work! VGA interface supplies X, Y User supplies pixel value one/clock CSE 477 Design Problems

Design Problem: Complete the VGA interface design Sketch design for frame buffer memory VGA supplies address Reads one port of memory There should be another port for writing (and reading) Design the dual-ported memory CSE 477 Design Problems