DocumentCode :
558959
Title :
Device register classes for embedded systems
Author :
Engdahl, Jonathan R. ; Chung, Dukki
Author_Institution :
Adv. Technol., Rockwell Autom., Mayfield Heights, OH, USA
fYear :
2011
fDate :
26-29 Oct. 2011
Firstpage :
773
Lastpage :
778
Abstract :
A device register is the view any peripheral device presents to the software world. Low-level routines in typical embedded systems, e.g., device drivers, communicate with devices by reading and writing device registers. Many processors use memory-mapped I/O, which assigns device registers to fixed addresses in conventional memory. To high level languages like C or C++, memory mapped devices behave like ordinary data objects to some extent. Programs use assignment operators to read values from or write values to memory mapped device registers. Unfortunately, traditional approaches for organizing and accessing memory-mapped devices are inconvenient and error prone. In this paper, a new way of writing and using C++ classes which encapsulate memory mapped device registers is described. The principle is extended to handle I/O mapped device registers for coprocessors. A Device Register Class description language is also described.
Keywords :
computer peripheral equipment; coprocessors; device drivers; embedded systems; coprocessor; description language; device driver; device register; embedded system; high level language; low-level routines; memory mapped device; memory-mapped I/O; peripheral device; software world; Buffer storage; Registers; device register; device register class description language; embedded systems;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Control, Automation and Systems (ICCAS), 2011 11th International Conference on
Conference_Location :
Gyeonggi-do
ISSN :
2093-7121
Print_ISBN :
978-1-4577-0835-0
Type :
conf
Filename :
6106297
Link To Document :
بازگشت