ECE 353 Lab B (part 1 – Overview)

Slides:



Advertisements
Similar presentations
INPUT-OUTPUT ORGANIZATION
Advertisements

EXTERNAL COMMUNICATIONS DESIGNING AN EXTERNAL 3 BYTE INTERFACE Mark Neil - Microprocessor Course 1 External Memory & I/O.
Programmable Interval Timer
Electrical and Computer Engineering MIDI Note Number Display UGA Presentation and Demo ECE 353 Lab B.
LOGSYS Development Environment of Embedded Systems Tamás Raikovich Béla Fehér Péter Laczkó Budapest University of Technology and Economics Department of.
PH4705 ET4305 Interface Standards A number of standard digital data interfaces are used in measurement systems to connect instruments and computers for.
MIDI. Musical Instrument Digital Interface Specification for physically connecting different devices, and for communicating between them. Designed for.
EE 316 Computer Engineering Junior Lab Word Mastermind.
EE 316 Computer Engineering Junior Lab PS/2 Keyboard.
NACK Digital Equalizer Nguyen Craig Petersen Andrew Nguyen Kevin Wong Group 7 CPSC © 2000 Midterm Proposal.
Spring EE 316 Computer Engineering Junior Lab Serial Ports.
CS150 Project Checkpoint 1. Controller Interface Dreamkatz Controller Interface 1. The N64 Controller 2. Physical interface 3. Communication protocol.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
7-1 Digital Serial Input/Output Two basic approaches  Synchronous shared common clock signal all devices synchronised with the shared clock signal data.
ECE Lecture 1 1 ECE 3561 Advanced Digital Design Department of Electrical and Computer Engineering The Ohio State University.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
Configuration. Mirjana Stojanovic Process of loading bitstream of a design into the configuration memory. Bitstream is the transmission.
EE 316 Computer Engineering Junior Lab Digital Hangman.
Input/Output and Communication
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE Senior Design I Lecture 10 - Data Communications.
Building a Typical Electronic Project in Senior Design Peter Wihl (former Guest Lecturer)
ASPPRATECH.
Prof Sandip Kundu ECE 353 Lab B (Part B – Verilog Design Approach)
Detailed Design Review Project P13363 Members: Justine Converse (IE) James Cover (CE) Alexander Eschbach (EE) Jason Hang (ME) Ashley Trode (EE) Guide:
PS2 Keyboard Interface Using Spartan-3 Starter Kit Board
INPUT-OUTPUT ORGANIZATION
Embedded Systems Design
2 Lines Electronics I 2 C Analyzer Ching-Yen Beh Robert S. Stookey Advisor: Dr. J. W. Bruce.
COMPONENTS OF THE SYSTEM UNIT
 Purpose of our project  Get real world experience in ASIC digital design  Use same tools as industry engineers  Get practical experience in microprocessor.
Making a MIDI Keyboard Bob Wayne Bell, Jr. Nov. 15, 2002 EE281.
USB host for web camera connection
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
Oppenheimer Technologies Rick King Jonathan Creekmore.
Lecture 111 Lecture 11: Lab 3 Overview, the ADV7183B Video Decoder and the I 2 C Bus ECE 412: Microcomputer Laboratory.
LSU 10/22/2004Serial I/O1 Programming Unit, Lecture 5.
Serial Port I/O Serial port sends and receives data one bit at a time. Serial communication devices are divided into: Data Communications Equipment (DCE),
INTRODUCTION TO COMPUTING
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
Lecture Set 9 MCS-51 Serial Port.
Firmware based Array Sorter and Matlab testing suite Final Presentation August 2011 Elad Barzilay & Uri Natanzon Supervisor: Moshe Porian.
Universal Asynchronous Receiver/Transmitter (UART)
Chapter 8 Serial and Parallel Port Interfacing Valvano’s Intro. To Embedded Systems.
Embedded System Design Laboratory October 4, 2002Stanford University - EE281 Lecture #3#1 Lecture #3 Outline Announcements AVR Processor Resources –UART.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
Prof Csaba Andras Moritz
E&CE % Final 30% Laboratory 20% Midterm ON LINE Course Notes! Lab Manual LabTechs/TAs Assignments extra probs/solns.
Advanced Microprocessor1 I/O Interface Programmable Interval Timer: 8254 Three independent 16-bit programmable counters (timers). Each capable in counting.
MIDI Musical Instrument Digital Interface. MIDI A data communications protocol that describes a means for music systems and related equipment to exchange.
Universal Asynchronous Receiver/Transmitter (UART)
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS Boundary Scan.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
Kazi ECE 6811 ECE 681 VLSI Design Automation Khurram Kazi Thanks to Automation press THE button outcomes the Chip !!! Reality or Myth.
Unit 1 Lecture 4.
Teaching Digital Logic courses with Altera Technology
Chapter Microcontroller
Final Year Project Eoin Culhane. MIDI Guitar Guitar with 6 outputs 1 output for each string Each individual string output will be converted to MIDI.
Jeremy Sandoval University of Washington May 14, 2013
Serial Communications
Chapter 6 Input/Output Organization
Lab 1: Using NIOS II processor for code execution on FPGA
Input/Output and Communication
1 Input-Output Organization Computer Organization Computer Architectures Lab Peripheral Devices Input-Output Interface Asynchronous Data Transfer Modes.
Atmega32 Serial Programming Basics
CPE/EE 428/528 VLSI Design II – Intro to Testing (Part 2)
CPE/EE 428/528 VLSI Design II – Intro to Testing (Part 3)
Computer Organization and Design
CHAPTER SERIAL PORT PROGRAMMING. Basics of Serial Communication Computers transfer data in two ways: ◦ Parallel  Often 8 or more lines (wire.
Serial Communications
Presentation transcript:

ECE 353 Lab B (part 1 – Overview) Prof. Sandip Kundu

Brief Intro of Instructor @UMass for 9 years Previously Principal Engineer @ Intel 1997-2005 Member of Research Staff at IBM Research 1988-1997 Research Interests Processor Design: 242 VLSI Circuit Design: 558. 559 VLSI Testing: 654 Design for Manufacturability: 697 Authored multiple books and research papers

Class Information http://ece353.ecs.umass.edu Labs B and D Office hours during Lab B and D Tu 10AM-11AM Or send email for appointment Grading Lab B and Lab D equal weight (each 50% of 35% of final grade) Will grade demo and code/report Final exam (30% of grade) – 50% of questions from Lab B/D

Outline Lab B Overview Hands-on Lab B Demo by UGAs Next Lecture Review of Design with Verilog for Lab B Hands-on Lab B We will provide information about common issues to watch out for Demo by UGAs We will go through a functional system so that you can see the end result in class

In this lab, you will… Design and implement a serial MIDI receiver Essentially a serial port for the MIDI device that will read a MIDI signal Interpret its content Display the note number in binary on seven LEDs. MIDI signal from PC (soundcard) Musical notes played using PC keyboard & MIDI OX (“the world's greatest all-purpose MIDI Utility” is free at www.midiox.com). The notes played on the computer’s keyboard will cause MIDI serial data to be sent serially out the MIDI OUT connector.

In this lab, you will… (contd.) be Coding in Verilog Hardware in an Altera Complex Programmable Logic Device (CPLD) MAX 7000S (part number EPM7064SLC44-10) Using ALTERA Quartus II software tools for synthesis Wire up and program on board Debug - functional simulation (wave forms) Debug of board - logic analyzer

Review MIDI Musical Instrument Digital Interface Developed in 1980s Common hardware interface and protocol Allows electronic musical devices to communicate with each other MIDI messages are transmitted asynchronously Like UART – Universal Asynchronous Receiver Transmitter UART is more flexible with many more parameters time bit 0 bit 1 bit n-1 no char start stop ...

MIDI Specification Groups of bytes, typically three Each byte with START and STOP bit Status byte – code for Note On, Off, other ctrl, ChID – MSB bit is on (1) Data bytes – MSB bit is off (0) 2nd B: Note On or Off message with note number 128 different notes, 10 octaves 3rd B: Note On or Off with velocity (how hard is instr. pressed) STOP bit Idle MSB LSB START 1 2 3 4 5 6 7 Data word

Decoding of a MIDI Message In your work you will be decoding MIDI 31,250 bits/s fixed baud rate, bit time (BT) 32us With START & STOP a MIDI msg is 10BT, 320us You see this with wave form Consecutive frames separated by undefined time idle @1.5 BT @8.5 BT stop start start 8 bits stop @2.5 BT frame 3 frame 2 frame 1

Decoding of MIDI (contd.) Board has a 4MHz clock that you need to divide (or count) Before a frame, signal line is high The receive must wait for 0 and detect neg edge Now start sampling 8 bits (payload) in the middle See below at 1.5BT, …8.5BT Stop at 9.5 BT, that is the STOP bit Repeat for each byte idle @1.5 BT @8.5 BT stop start start 8 bits stop @2.5 BT frame 3 frame 2 frame 1

Decoding of MIDI (contd.) Sampled value at 9.5BT is not logic 1? A MIDI receiver sets a flag “Framing Error” You can implement if you want (not required) Sampling at least once per bit but commonly more times and vote A voter has a number of inputs and generates an output based on e.g., majority or plurality of inputs TMR (Triple Modulo Redundancy) voter would vote 1 if 2 out of 3 inputs are 1 A 5 input majority voter would need 3 out 5 A plurality voter needs a plurality (not majority)

How it Works, Circuit Schematic The MIDI OX sw transforms keyboard into an electronic music keyboard. MIDI signal is generated by the PC. MIDI OX will send a MIDI Note On message Cable terminated with an opto-isolator. The CPLD will be clocked by a 4MHz crystal oscillator, from which you may have to derive local clock for sampling. Output of CPLD drives 7 LEDs to display the note number.

Programming through JTAG JTAG - Joint Test Action Group: IEEE 1149.1 standard entitled: Standard Test Access Port and Boundary-Scan Architecture test access ports used for testing printed circuit boards (and chips) using boundary scan. Used also for programming embedded devices. Most FPGAs, PLDs are programmed via a JTAG port. JTAG ports commonly available in ICs Boundary scan, scan chains, mbist, logic bist connected Chips chained together with Jtag signals and connected to main JTAG interface on PCB

Design in Verilog A quick overview provided next Lecture Focus is on methodology for proper design and coding

More Details Please consult course website Also check deliverables for the Lab in the Lab review document Next Practical advise and demo video by the UGAs