460 likes | 570 Views
AJ Hartnett. David Eslinger. ECE 477 Design Review Team 6 Spring 2009. Ken Pesyna. Curt Schieler. Outline. Project overview Project-specific success criteria Block diagram Component selection rationale Packaging design Schematic and theory of operation PCB layout
E N D
AJ Hartnett David Eslinger ECE 477 Design Review Team 6 Spring 2009 Ken Pesyna Curt Schieler
Outline • Project overview • Project-specific success criteria • Block diagram • Component selection rationale • Packaging design • Schematic and theory of operation • PCB layout • Software design/development status • Project completion timeline • Questions / discussion
Project Overview • GOAL: Measure performance of a lossless compression algorithm in an FPGA • Rice Coding is algorithm of interest, generally used in FLAC • Project will be a small device that • Compresses and stores audio input • Measures latency of compression and decompression
Project-Specific Success Criteria • An ability to encode streaming audio into a FLAC format using the Rice compression algorithm • An ability to decode FLAC for playback • An ability to store data in external memory • An ability to compute latency between input audio and playback • An ability to display relevant information on an LCD
Component Selection Rationale • FPGA design constraints • Enough logical elements for computational requirements • PLLs – 1 for SDRAM, 1 for internal clock • Enough IO pins for peripherals and debugging
Component Selection Rationale • FPGA: Cyclone III • 40,000 logical elements • 4 PLLs • 80 IO pins • Dev. board available for Cyclone II • Tools available (Quartus II) • Less expensive than Cyclone II
Component Selection Rationale • Microcontroller design constraints • SPI module (x2) • UART module (x2) • No need for a large amount of memory
Component Selection Rationale • Microcontroller: PIC24F • 2 SPI/UART modules • 16kB memory • Familiarity
Component Selection Rationale • ADC and DAC design constraints • Sampling rate of 44 kHz • 16 bits per sample • Number of pins (SPI vs. parallel)
Component Selection Rationale • Audio CODEC • Programmable sampling rate (8 kHz to 96 kHz) • Programmable bits per sample (16/20/24/32) • Internal A/D and D/A • Microphone input and line level output • Used on Cyclone II dev. board
Component Selection Rationale • Memory design constraints • Enough for 30 seconds of audio • Rewriteable
Component Selection Rationale • Memory: SDRAM from ISSI • 8 MB • FLASH too slow • Not meant for constant rewrites • SRAM doesn’t meet size requirement
Packaging Design • 1/8” plastic enclosure to provide insulation and protection for our components • 9V DC wall wart & power in port • LCD, pushbuttons, mic-in and line-out jacks • PCB: 5.2” x 4.7” Packaging: 7” x 5” x 2”
Schematic/Theory of OperationAudio Input and Output Audio CODEC Mic IN Line OUT
Schematic/Theory of OperationMemory FPGA SDRAM
Schematic/Theory of OperationConfiguration/Reset - FPGA FPGA EEPROM Reset USB Blaster
Schematic/Theory of OperationConfiguration/Reset - uC Microcontroller PIC24 nMCLR JTAG
Schematic/Theory of Operation FPGA Debug FPGA RS-232 Driver Level Translator DB9
Schematic/Theory of OperationUser Interface LCD Pushbuttons
Schematic/Theory of Operation Power Supply and Voltage Regulation 2.5V 3.3V 5V 9V DC IN 1.2V
PCB Layout Considerations • Peripherals (Line-out, mic-in, power jack) • Near the edge of board • SDRAM near FPGA (short traces) • 4 layer board – high density around FPGA • Must be under 30 in2
PCB Layout PWR JTAG LCD pushbuttons 5V 1.2V DB-9 RS-232 uC 3.3V 2.5V Level shifter FPGA SDRAM VCO Debug Header CODEC Mic EEPROM USB Blaster Line out
References Wolfson Audio CODEC Block Diagram