CS2260 Media Device Architectures Overview and Objectives - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

CS2260 Media Device Architectures Overview and Objectives

Description:

Available as a free book downloadable from the course page ... Human experience (e.g. games, web) Software architectures and algorithms ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 15
Provided by: michael1692
Category:

less

Transcript and Presenter's Notes

Title: CS2260 Media Device Architectures Overview and Objectives


1
CS2260 Media Device ArchitecturesOverview and
Objectives
2
Instructors and TAs
  • Michael Mateas
  • My research AI-based art and entertainment,
    including game AI
  • Contact
  • michaelm_at_cc.gatech.edu
  • AIM MichaelMateas
  • Office TSRB 246 (?)
  • Office hours TBA
  • TAs - TBA

3
Objectives
  • Demystify computers
  • Prior to this class many of you will have been
    working exclusively in high-level languages that
    are many layers above the machine
  • In this class we want to get down to the silicon
    bits, bytes, hardware registers, assembly
    language, C
  • Replaces 2110 (Computer Organization and
    Programming) and 2200 (Computer Systems and
    Networks) while specializing the material to
    people interested in computational media
  • Well learn this stuff by programming the Gameboy
    Advance
  • Warning The whole class wont be devoted to GBA
    programming were using the GBA as our
    architecture for low-level coding

4
Textbooks and Software
  • Reading
  • Programming the Nintendo Gameboy Advance The
    Unofficial Guide - Jonathan Harbour
  • Available as a free book downloadable from the
    course page
  • The 2200 text Introduction to Systems and
    Networking
  • Available as free book downloadable from 2200
    page
  • Miscellaneous web resources (e.g. Wikipedia,
    etc.) that will be linked from course page
  • Development environment
  • Visual HAM 2.4.2 a GBA dev environment that
    comes with compiler, emulator, library and
    various graphics and sound tools
  • Runs on Windows machines (I believe linux as
    well)
  • Downloadable from course page will be installed
    in the STATES lab

5
Webworks
  • Well be using Webworks for turning in
    assignments
  • More info soon!

6
Evaluation
  • Tests
  • Homeworks
  • Projects
  • Final

30 20 20 30
  • Two midterms during lecture
  • One will happen before the drop date

7
Homework
  • Homework assignments will be giving roughly once
    per week
  • Types of assignments
  • C programming
  • Assembly and machine language programming
  • Paper and pencil assignments
  • There will be three or four larger programming
    projects
  • Collaboration is allowed on assignments and
    projects, though students must turn in individual
    assignments

8
Clarifying collaboration
  • Collaboration doesn't mean copying
  • Collaboration is working together so that
    everyone learns the material
  • You do not have to collaborate if you dont want
    to (though social learning can be fun!)
  • Even though it looks like the homework doesn't
    count for many points you need to do it to do
    well in this course
  • You cant do well on tests if you do not have a
    deep understanding of how the homework works and
    is coded
  • Questions will be taken directly from things
    covered in homework

9
Online resources
  • Need to decide what Im doing about class
    announcements (newsgroup vs. class list), class
    web page (need CoC space) and Webworks

10
Abstraction layers
  • Human experience (e.g. games, web)
  • Software architectures and algorithms
  • Programming languages and OS
  • Hardware architecture (assembly and machine)
  • Microarchitecture
  • Circuits
  • Devices (semiconductor physics)

11
Approach
  • Start with small C programs that doing something
    on the GBA
  • Dive down into lower abstraction layers,
    motivated by desire to fully understand the small
    C programs
  • Move back up to more complicated C programs that
    use more features of the GBA
  • Repeat

12
Layers for this class
  • GBA games/demos
  • Main loop, graphics, input handling
  • C (there is no OS in the GBA)
  • Machine architecture (ARM7, assembly)
  • Microarchitecture (a little bit about gates)
  • Circuits
  • Devices

13
Demonstrate HAM
14
Things to do
  • Download and install the HAM environment
  • Read chapters 2 and 3 of Programming the Gameboy
  • Chapter 2 provides a high-level introduction to
    the Gameboy
  • Chapter 3 introduces the HAM environmen
  • Instead of building the ShowPicture program
    described in chapter 3, build and run the
    DrawPixel program
  • Get a CoC account
Write a Comment
User Comments (0)
About PowerShow.com