Download A Bare Machine Sensor Application for an ARM Processor
Transcript
REFERENCES [1] Eclipse IDE [2] Terminal Telnet Console [3] RS232/UART Cable [4] [5] Samsung OK6410 - ADB (No OS) bareperihperals.bin Memory ARM CPU start.s main, gpio, display, graphics, touch, led, sensor device [6] 0xc0008000 [7] [8] 0xc5000000 [9] images GPIO Power Switch Reset [10] [11] Sensor Device [12] Fig. 9. Bare ARM application development environment [13] VI. CONCLUSION [14] A novel bare machine temperature sensor application was described in this paper. The application, which does not use any OS, kernel, or embedded system, has a direct API to communicate with and control the hardware. A methodology to develop the sensor application for an ARM processor was also given. In particular, the bare machine interfaces to build sensor applications on ARM were identified, and internal design/implementation details of the relevant hardware API were presented. Functional operation and the bare machine aspects of ARM were discussed. The development methodology can be adapted to build other bare sensor ARM applications, and bare applications that are portable across a variety of mobile and pervasive devices with ARM processors. ACKNOWLEDGMENT We sincerely thank NSF and in particular the late Dr. Frank Anger, who initially supported this work by funding through SGER grant CCR-0120155. Without his encouragement, bare machine computing concept and explorations could not have been possible. [15] [16] [17] [18] [19] [20] [21] L. Edwards. “Embedded System Design on a Shoestring,” Boston: Newnes, 2003. L. He, R. K. Karne, and A. L. Wijesinha, “Design and Performance of a Bare PC Web Server,” International Journal of Computer and Applications, vol. 15, pp. 100-112, June 2008. P. Appiah-Kubi, A. L. Wijesinha, and R. K. Karne. “The Design and Performance of a Bare PC Webmail Server,” 12thIEEE International Conference on High Performance Computing and Communications (AHPCN), pp. 521-526, 2010. A. Alexander, A. L. Wijesinha, and R. Karne, “A Study of Bare PC SIP Server Performance,” 5th International Conference on Systems and Networks Communications (ICSNC), pp. 392 – 397, 2010. G. Ford, R. Karne, A. L. Wijesinha, and P. Appiah-Kubi, “The Performance of a Bare Machine Email Server,” 21stInternational Symposium on Computer Architecture and High Performance Computing (SBAC-PAD), 2009. B. Rawal, R. Karne, and A. L. Wijesinha. “Mini Web Server Clusters for HTTP Request Splitting,” 13thInternational Confrence on High Performance Computing and Comunication (HPCC), 2011. R. K. Karne, K.V. Jaganathan, T. Ahmed, and N. Rosa, “DOSC: Dispersed Operating System Computing,” 20thAnnual ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Onward Track, pp. 55-61, 2005. S3C6410X/OK6410 RISC Microprocessor Rev 1.20 User's Manual. Samsung Electronics Inc., 2009. R. K. Karne, K. Venkatasamy and T. Ahmed, “How to run C++ applications on a bare PC,” 6thACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel / Distributed Computing (SNPD), pp. 50 – 55, 2005. A. Peter, R. K. Karne, A. L. Wijesinha and P. Appiah-Kubi, “The Design and Implementation of Bare PC Graphics,”7thInternational Multi-Conference on Computing in the Global Information Technology (ICCGI) pp.315-320, 2012. R. Engler and M.F. Kaashoek, “Exterminate all Operating System Abstractions,” 5thWorkshop on Hot Topics in Operating Systems, p. 78, 1995. The OS Kit Project, School of Computing, University of Utah, http://www.cs.utah.edu/flux/oskit. Last Accessed Aug. 2012. Tiny OS, Tiny OS Open Technology Alliance, University of California, Berkeley, CA, 2004, http://www.tinyos.net/. Last Accessed Aug. 2012. J. Lange et al., “Palacios and Kitten: New High Performance Operating Systems for Scalable Virtualized and Native Supercomputing,” 24thIEEE International Parallel and Distributed Processing Symposium (IPDPS), 2010. Y-S Hwang, T-Y Lin, and R-G Chang, “DisIRer: Converting a Retargetable Compiler into a Multiplatform Binary Translator,” ACM Transactions on Architecture and Code Optimization (TACO), Volume 7, Issue 4, p18-1:18-33, 2010. M. Schoeberl, S. Korsholm, T. Kalibera, and A.P. Ravn, “A Hardware Abstraction Layer in Java,” ACM Transactions on Embedded Computing Systems (TECS), v.10 n.4, pp.1-40, 2011. D. Simon , C. Cifuentes , D. Cleal , J. Daniels , D. White, "Java on the Bare Metal of Wireless Sensor Devices: The Squawk Java Virtual Machine," Proceedings of the 2nd International Conference on Virtual execution environments, pp. 78-88, 2006. W. Ahn, S. Qi, M. Nicolaides and J. Torrellas, “BulkCompiler: HighPerformance Sequential Consistency through Cooperative Compiler and Hardware Support,” MICRO’09, pp. 133-144, 2009. DS18B20 1-Wire Digital Thermometer with Programmable Resolution Datasheet. Dallas Semiconductor Corporation, 2005. WXCAT43-TG3 4.3’’ TFT-LCD with Touch Panel Module Product Specification Document. WANXIN IMAGE Inc., 2008 W. Hohl. “ARM Assembly Language. Fundamentals and Techniques,” Florida: CRC Press, 2009.