ECE 477 Digital Systems Senior Design Project Spring 2009 Homework 3: Design Constraint Analysis and Component Selection Rationale Due: Friday, February 6, at NOON Team Code Name: Jukebox Heroes Group No. 1 Team Member Completing This Homework: Jason Eaton E-mail Address of Team Member: jdeaton @ purdue.edu NOTE: This is the first in a series of four “professional component” homework assignments, each of which is to be completed by one team member. The body of the report should be 3-5 pages, not including this cover page, references, attachments or appendices. Evaluation: SCORE 10 9 8 7 6 * DESCRIPTION Excellent – among the best papers submitted for this assignment. Very few corrections needed for version submitted in Final Report. Very good – all requirements aptly met. Minor additions/corrections needed for version submitted in Final Report. Good – all requirements considered and addressed. Several noteworthy additions/corrections needed for version submitted in Final Report. Average – all requirements basically met, but some revisions in content should be made for the version submitted in the Final Report. Marginal – all requirements met at a nominal level. Significant revisions in content should be made for the version submitted in the Final Report. Below the passing threshold – major revisions required to meet report requirements at a nominal level. Revise and resubmit. * Resubmissions are due within one week of the date of return, and will be awarded a score of “6” provided all report requirements have been met at a nominal level. Comments: Comments from the grader will be inserted here. ECE 477 Digital Systems Senior Design Project Spring 2009 1.0 Introduction Our project is a web enabled digital jukebox. It plays mp3 files from a usb flash drive and provides line level audio. Users can select songs through a touchscreen or by accessing the website from their laptops. Our product must be able to communicate with the internet over ethernet, access files stored on a usb flash drive, decode mp3 data and convert to an audio signal, and display information on an lcd screen. 2.0 Design Constraint Analysis The major design constraints that I will be considering in this report are computational requirements and interfacing with the various off-chip peripherals our design requires. Some smaller issues briefly mentioned include power, packaging, and cost. The rationale for the selection of our microcontroller and the various off-chip peripherals will follow the discussion of these constraints. 2.1 Computation Requirements Our device must perform four different computational tasks. It must service requests from the website. It must maintain a responsive GUI. It must be able to read files from a flash drive, and finally it must decode the mp3 data. It may have to respond to multiple web requests simultaneously, but since it will only be accessed by the people in the shop there will never be an enourmous volume of requests. The GUI will be fairly simple and only needs to maintain a modest 15 frames per second. Data needs to be read from the flash drive and decoded quickly enough to maintain a steady stream of music. In order to reasonably handle these requirements a number of off-chip peripherals dedicated to these tasks will be utilized. 2.2 Interface Requirements Nineteen GPIOs will be used to interface the microcontroller with the ethernet controller. The chosen ethernet controller and microcontroller both operate at 3.3 V, and the DCNM -2- ECE 477 Digital Systems Senior Design Project Spring 2009 between the two devices is 0.4V. Current is not an issue as only single CMOS pins are connected between these devices. 2.3 On-Chip Peripheral Requirements Our microcontroller will need to have two channels of 10 bit ATD for reading the touchscreen data, one I2C interface to communicate with the mp3 decoder, and one to three SPI interfaces to communicate with the mp3 decoder, usb controller, and lcd screen. Three SPI would allow communication with the devices to occur in parallel, but one can supply data to all three devices if chip select GPIOs are used. 2.4 Off-Chip Peripheral Requirements Our device will be using a number of off-chip peripherals. These include an ethernet controller, a usb host controller, an mp3 decoder, an audo DAC, an lcd screen, and a touchscreen overlay. Ethernet and usb are both off-chip due to the unavailablity of nonpreliminary devices that meet our requirements. 2.5 Power Constraints Our device will be run off of A.C. power from a wall socket, will not contain any large loads, and will have a fairly large package. All of these factors mean that power constraints for our design are minimal. 2.6 Packaging Constraints -3- ECE 477 Digital Systems Senior Design Project Spring 2009 Our device will sit against a wall, and so can have a large package size. It should be able to withstand potential abuse from costumers and also drink spills. The touchscreen should be easily accessable to the users. 2.7 Cost Constraints Digital jukeboxes typically range in process from a couple hundred dollars to a few thousand. The most expensive part of our system will be the touchscreen. We aim to make the device as cheap as possible, but we don't really have to worry about exceeding competitive prices. 3.0 Component Selection Rationale Because of the extensive amount of computing that needs to be done for this project, namely implementing a TCP/IP stack and FAT32, extensive documentation and free software libraries are very important. For that reason we chose to go with Microchip, who have the best documentation we saw and numerous free libraries. There were no non-preliminary chips that had either ethernet or usb host capabilities, so both of those features were moved off-chip. There were also no non-preliminary devices that contained three independent SPI modules. We two families which contained as many of the peripherals as we could get were the PIC24FJ family and the dsPIC33FJ. The dsPIC33FJ line is geared towards motor control, which isn't relevant to our project. We chose the PIC24FJ256GP206, which contains two SPI, two I2C, 18 channels of 12 bit A/D, a total of 53 IO pins, 64 KB of flash, and 16 KB SRAM. For our mp3 decoder we looked at the STA013 and the VS1001. The VS1001 contains a built-in DAC, but is about $10 more expensive than the STA013. Because we can get a good DAC for less than $10 we chose the STA013. -4- ECE 477 Digital Systems Senior Design Project Spring 2009 For our DAC, we looked at the PCM1773 and the WM8759GED. The PCM1773 contains a line out amplifier on each output, which the WM8759GED lacks. For this reason we chose the PCM1773. We looked at both the MAX3421E usb host controller and the Vinculum. The Vinculum is much more expensive but handles the FAT32 file system. Because Microchip has FAT32 libraries, we decided that the extra functionality of the Vinculum was not needed and went with the MAX3421E. The two ethernet controllers we looked at were the CP2200 and the RTL8019AS. The RTL8019AS has a 51 pin interface, requires an external EEPROM, and is really designed for use in a PC. The CP2200 has a much simpler 19 pin interface and is designed for embedded applications. The CP2200 was our choice for ethernet controller. When picking out an lcd screen we looked at the EADOGM128 and the EA EDIP240B7LW. The EADOGM128 is a 128x64 pixel, 55x46 mm display while the EA EDIP240B is a 240x128 pixel, 96x60 mm display. Unfortunately, the EA EDIP240B costs $194 where the EADOGM128 only costs $18. We decided to pick the smaller cheaper screen. The same company also produces a touchscreen overlay which fits with the screen called the EATOUCH128 which we will also use. 4.0 Summary In this report I have discussed the various design constraints of our project. There is a large amount of computation required, leading to the various off-chip peripherals included in the device. These many peripherals require a number of communicate modules to be included in our microcontroller. The off-chip devices were chosen primarily for there ease of use and low cost compared to alternatives. List of References -5- ECE 477 Digital Systems Senior Design Project Spring 2009 [1] Microchip, “PIC24HJXXXGPX06/X08/X10 Data Sheet,” 2007. [online]. Available: http://ww1.microchip.com/downloads/en/DeviceDoc/70175F.pdf. [Accessed: Feb. 6, 2009]. [2] ST, “STA013 STA013B STA013T,” Feb. 2004. [online]. Available: http://us.st.com/stonline/books/pdf/docs/6399.pdf. [Accessed: Feb. 6, 2009]. [3] Texas Instruments, “PCM1772, PCM1773,” Mar. 2007. [online]. Available: http://focus.ti.com/lit/ds/symlink/pcm1773.pdf. [Accessed: Feb. 6, 2009]. [4] Maxim, “USB Peripheral/Host Controller with SPI Interface,” Feb. 2006. [online]. Available: http://www.digchip.com/datasheets/download_datasheet.php?id=1091136&partnumber=MAX3421E. [Accessed: Feb. 6, 2009]. [5] Silicon Laboratories, “Single-Chip Ethernet Controller,” Nov. 2006. [online]. Available: https://www.silabs.com/Support%20Documents/TechnicalDocs/CP2200_short.pdf. [Accessed: Feb. 6, 2009]. [6] Electronic Assembly, “DOGM Graphic Series,” Oct. 2008. [online]. Available: http://www.lcd-module.de/eng/pdf/grafik/dogm128e.pdf. [Accessed: Feb. 6, 2009]. -6- ECE 477 Digital Systems Senior Design Project -7- Spring 2009 ECE 477 Digital Systems Senior Design Project Fall2008 Appendix A: Parts List Spreadsheet Vendor Mouser Mouser Mouser Mouser Mouser DigiKey Futurlec Manufacturer Electronic Assembly Electronic Assembly Texas Instruments Microchip Silicon Labs Maxim ST Part No. EADOGM128 EATOUCH128 PCM1773PW PIC24FJ256GP206 CP2200 MAX3421E STA013 Description 128x64 pixel lcd screen Touchscreen Overlay Audio DAC Microcontroller Ethernet Controller USB Controller MP3 Decoder Unit Cost Qty $18.00 1 $13.16 1 $2.81 1 $6.84 1 $7.72 1 $11.10 1 $6.90 1 TOTAL -8- Total Cost $18.00 $13.16 $2.81 $6.84 $7.72 $11.10 $6.90 $66.53 ECE 477 Digital Systems Senior Design Project Appendix B: Updated Block Diagram -9- Fall2008 ECE 477 Digital Systems Senior Design Project -10- Fall2008