The World Leader in High Performance Signal Processing Solutions Personal Digital Notepad October 24,2007 Project Guides Group Members Dr.(Mrs.) P.P.Warnekar Mr. Sandip Kothari, Analog Devices Inc. Mr. Akshay Mishra, Tata Teleservices 2 Srinath Iyer (34) Harsh Parekh (52) Siddhartha Gupta (29) Pratik Maheshwari (41) Aim of the project To design a handheld device having a touch screen interface to be used for scribbling notes 3 Agenda A. Introduction • 5 Processor P’s • uClinux Benefits B. Steps Involved C. Hardware and Software Requirements D. Detailed Process E. Application Example and Uses F. References 4 5 Processor P’s uClinux 2.6.12 kernel Open Source Development Tools (gcc, gdb, kgdb, oprofile) Thousands of Open Source Applications 10/100 Enet MAC UART High Speed Serial Ports Drivers for External: Various Codecs ADC, DAC (SPI) Compact Flash (IDE, 802.11b) IDE (Hard Drive, CDROM, DVD) NOR, NAND Flash (YAFFS, JFFS2) Target, Toolchain, and kernel Performance 5 $4.95 @ 10k units for BF531 $200 for complete Open Source Development Suite Up to 600MHz: 992.87 BogoMIPS @ 500MHz 265mW Core, 600 MHz @ 1.2V uClinux Power Management Drivers, for Dynamic voltage/clock control What’s so special about uClinux? 6 Source code freely available No runtime licenses Robust and reliable Modular, configurable, scalable Superb support for networking and Internet Supports a large number of devices, file systems, and networking protocols Large pool of skilled developers and documentation Upgrades and new features are constantly being added, tested and refined by a large community of programmers and users Large number of applications and tools exist which require little to no porting effort Portable Embedded Linux Porting the Linux kernel to run on a particular CPU and board which to be used in an embedded device (cell phones, PDAs, other consumer electronics) uClinux One type of Embedded Linux, “Microcontroller Linux” Derivative of the Linux kernel for processors without an MMU uClinux kernel tree maintained at: www.uclinux.org Blackfin port maintained at: http://www.blackfin.uclinux.org Considerations 7 / Trade-offs: The Blackfin Processor does not have a full-fledged MMU. (Virtual Memory Management) Normally Unix uses the MMU to allocate different physical memory areas to identical virtual memory addresses. uClinux removes the MMU requirement by implementing a flat memory model (a 1-to-1 virtual-to-physical mapping) The key feature of uClinux is the ability to look and feel almost like a MMU-based system. Components of an Open Source System uClinux Kernel Release 2.6.12 gcc release 3.4.4 Binutils release 2.15 Serial or Ethernet Source Code uClinux Kernel Standard Apps Code Generation Tool Compiler (gcc) Assembler (gas) Binutils Custom Apps 8 Linker (ld) Apps debugger (gdb) JTAG kernel debugger (gdb) Hardware and Software Requirement • Hardware The BF-561 EZ-Evaluation kit ADI-HPPCI-ICE (JTAG Emulator) 6” Touchscreen 6” Television set • Software Unix based Operating System (Fedora Core) Qtopia Core Version 4.3.2 VisualDSP++5.0 (IDE) 9 The BF-561 Evaluation Kit 10 Why BF531? Application deals with complex image processing of high resolution. Hence, need for a DSP Processor Arm 9 and Freescale i.MX1 series is not appropriate BF531 is the cheapest low end DSP Processor from Analog Devices Support 11 from Analog Devices Inc Steps Involved Develop a basic paint application using Qtopia Core V- 4.3.2 (a popular open source platform for application development on handheld devices) Testing the application with a uCLinux kernel on the BF-561 EZ Evaluation Kit Design 12 a hardware schematic for the handheld device Detailed Process STEP 1 -> APPLICATION DEVELOPMENT Use Qtopia Core 4.3.2, a Linux based application development software to develop a minimalistic scribble application Three options:- File, Options, Help Image is to be saved with *. png or *.jpeg extension No 13 Handwriting Recognition used! SCRIBBLE APPLICATION SCREENSHOT 14 Detailed Process Step Set 2 -> Testing the application on evaluation board up development host with Linux (Fedora Core 5) Install ADI-PCI JTAG Emulator and load VDSP++ Connect the EZ-LITE board to the emulator using JTAG Cable Test the EZ-LITE board using VDSP++ Install GNU Linux Toolchain for Blackfin on development host Compile Das U-Boot (Bootloader) using GNU Toolchain Port U-Boot onto the target board using VDSP++ and JTAG Setup a TFTP server for Serial Port communication with the target Load and Configure the uCLinux Kernel on the host Port the kernel to the target using U-Boot through the TFTP Server 15 Detailed Process Step 2 -> Testing the application on evaluation board Configure the kernel for the BF561 EZ-LITE board Cross-compile the application using GNU Toolchain Use the TFTP server to port the application to the target Reset the board and run the application. Connect a 6” BW Television to the VIDEO OUT of the board Place a touchscreen on the Television and connect it to the USB port of the board Test the application using the touchscreen 16 Detailed Process Step 3 -> Optimizing the application Step 4 -> Designing the product’s hardware schematic involving 17 1. Flash Memory 2. LCD & Touchscreen Controller 3. USB OTG 4. Power Management Unit Applications of Notepad Can be used for note taking in classrooms Eliminates the need for notebooks for students and teachers Perfect solution for press reporters and journalists Facility to “read-back” your notes Facility to transfer notes to your computer back home Digital Laboratory Log book Technologies 18 like Bluetooth, Wi-Fi can be incorporated at a later stage REFERENCES http://www.analog.com http://www.blackfin.uclinux.org http://doc.trolltech.com/ http://docs.blackfin.uclinux.org http://www.freertos.org http://www.qtforum.org http://www.maxim-ic.com/appnotes.cfm/appnote_number/1822 http://www.freeelectron.com Embedded BF561 Linux, Dr. Chris Hollabaugh EZ-KIT Evaluation Manual Rev 3.0 HPPCI Emulators Users Guide VDSP++ Loader Manual 19 Thank You 20