DOC PREVIEW
Berkeley COMPSCI 150 - Lecture 13 - Final Project Description

This preview shows page 1-2-3-26-27-28 out of 28 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 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 28 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 28 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 28 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 28 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 28 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

EECS150 - Digital Design Lecture 13 - Final Project DescriptionProjectDigital WaveformsInterfacesTheory of Sound and MusicTimbrePitchSlide 8Playing NotesPitch ShiftingSlide 11Linear InterpolationROM (EEPROM) LayoutDirectory Entry LayoutTemplate LayoutInstrument Template FilesHigh-level Block DiagramCheckpointsExtra CreditSlide 20ConnectionsSlide 22Slide 23Note OnNote offKeyboard MappingSlide 27“Running Status”Spring 2002 EECS150 - Lec13-projPage 1EECS150 - Digital DesignLecture 13 - Final Project DescriptionMarch 7, 2002John WawrzynekSpring 2002 EECS150 - Lec13-projPage 2Project•Everyone will design, debug, and demonstrate a Music Synthesizer•Operation based on principle of waveform synthesis or sampling.–Sounds from recordings of real musical instruments are stored in memory then pitch-shifted and played back in response to note commands.•1 or 2 partners/groupSpring 2002 EECS150 - Lec13-projPage 3Digital Waveforms•In digital systems waveforms are represented as a series of numbers, rather than a voltage or current, as in analog systems.–Example: sound waveform–Sound can be produced by sending series of numbers to Digital to Analog converter, then to Amplifier, then to speaker.–In principle any sound can be produced.Sampling rate: 31.25KHz16-bits per sampleSpring 2002 EECS150 - Lec13-projPage 4Interfaces•MIDI: Musical Instrument Digital Interface.–Commands are sent from a keyboard (or computer) to control the synthesizer.•Waveforms are stored in the ROM (read only memory).•Monophonic: one voice at a time.Spring 2002 EECS150 - Lec13-projPage 5Theory of Sound and Music•Air vibrating in the frequency range of 20Hz to 20KHz is perceived as sound.•The three important characteristics of perceived sound are:–loudness (relates to amplitude)–pitch (relates to frequency)–timbre (relates to shape)•Human hearing is approximately logarithmic in perceiving loudness and pitch:–we perceive the loudness as being prop to the log of the sound wave amplitudeSpring 2002 EECS150 - Lec13-projPage 6Timbre•tone quality or “color”•Different instruments have different timbres.•We perceive timbre based on how a note begins, repeats, and ends.•For many instruments a simple model can be used to represent the shape of the waveform.–Attack, sustain, release (decay)•Works best for “driven” instruments: woodwinds, brass, bowed strings. •Pluck and struck instruments don’t have the “sustain”[picture]Spring 2002 EECS150 - Lec13-projPage 7Pitch•Middle C has frequency of 261.63Hz.–MIDI encoding of “60”•High C (an octave above middle C) has frequency 523.25Hz–MIDI encoding of “72”•Other tones can be produced by multiplying and dividing the frequency by factors of 12th root of 2.•Pitch:–12 semi-tones form the chromatic scale of the western scale.–To move from one up to the next:•freqnext = freq * 12th root of 2.–After 12 such multiplications we will have doubled the freq and reached the octave.•Most people can detect pitch differences as small as a few hundreds of a semi-tone (or a few times the 1200th root of 2)!Spring 2002 EECS150 - Lec13-projPage 8Spring 2002 EECS150 - Lec13-projPage 9Playing Notes•ROM used to store notes has limited capacity.•For notes with “sustain” portion, would like to vary note durationSpring 2002 EECS150 - Lec13-projPage 10Pitch ShiftingSpring 2002 EECS150 - Lec13-projPage 11Pitch ShiftingSpring 2002 EECS150 - Lec13-projPage 12Linear InterpolationSpring 2002 EECS150 - Lec13-projPage 13ROM (EEPROM) Layout•One stored note per instrument is never enough.–Timbre varies from note to note over the range of the instrument.•ROM holds directory with one entry per MIDI note number.•Entry holds pointer to note “template” and “step size”.•Note step sizes are precomputed (synthesizer does not need to do 12th root of 2 calculation.•One instrument per ROM (might change this later).Spring 2002 EECS150 - Lec13-projPage 14Directory Entry Layout•20-bit template pointer•12 bits of “step size”Spring 2002 EECS150 - Lec13-projPage 15Template LayoutSpring 2002 EECS150 - Lec13-projPage 16Instrument Template Files•We will provide you with template files and a program for converting these to EPROM format.•We also have programs for taking instrument samples from standard file formats and converting them to our template format. You are encouraged to generate your own template files and EPROMs.•We might extend the format (and project) to allow for more than one instrument per EPROM.–Switch among the instruments either through dip switches or MIDI commands.Spring 2002 EECS150 - Lec13-projPage 17High-level Block DiagramThis is only a suggestion. Your organization is up to you.FSM and datapathfor each block.Spring 2002 EECS150 - Lec13-projPage 18Checkpoints3/11 UART Design and Test3/18 ROM Interfacing3/25 Recess4/1 MIDI Interface4/1 Audio Stage4/8 Monotone Notes4/15 Notes of Arbitrary Frequency4/22 Velocity Sensitivity4/29 Spare5/6 Final Checkoff•Your are strongly suggested to work ahead.•These are only minimum requirements.•Completion of checkpoints are part of your project grade.•Project spec document online today.•All checkpoint write-ups available in next couple days (in draft form).Spring 2002 EECS150 - Lec13-projPage 19Extra Credit•Early Final Checkoff. –1 week or more•Low CLB Count.–“low” quantified later•Interpolation–add linear interpolation for sample lookup•Polyphony.–The ability to play multiple keys at once•Velocity Sensitive Template Lookup.–Index templates not only on key number but also velocity.•Extra credit only considered for fully functional designs.•Point assignment announced later. Usually in the 15% range.Spring 2002 EECS150 - Lec13-projPage 20Spring 2002 EECS150 - Lec13-projPage 21ConnectionsSpring 2002 EECS150 - Lec13-projPage 22Spring 2002 EECS150 - Lec13-projPage 23Spring 2002 EECS150 - Lec13-projPage 24Note OnSpring 2002 EECS150 - Lec13-projPage 25Note offSpring 2002 EECS150 - Lec13-projPage 26Keyboard MappingSpring 2002 EECS150 - Lec13-projPage 27Spring 2002 EECS150 - Lec13-projPage 28“Running Status”•The MIDI standard convention allows a transmitter to compress the data stream by dropping status bytes. •A command without a status byte implicitly uses whatever status byte was most recently sent. •Therefore a keyboard can send a sequence of note-on and note-off commands


View Full Document

Berkeley COMPSCI 150 - Lecture 13 - Final Project Description

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 Lecture 13 - Final Project Description
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 Lecture 13 - Final Project Description 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 Lecture 13 - Final Project Description 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?