
| preface acknowledgements 1. introduction to embedded systems 1.1 an embedded system 3 1.2 processor in the system 7 1.3 other hardware units 15 !.4 software embedded into a system 28 1.5 exemplary embedded systems 37 1.6 embedded system-on-chip (soc) and in vlsi circuit 39 summary 43 list of keywords and their definitions 44 review questions 47 practice exercises 48 2. processor and memory organisation 2.1 structural units in a processor 51 2.2 processor selection for an embedded system 61 2.3 memory devices 65 2.4 memory selection for an embedded system 68 2.5 allocation of memory to program segments and blocks and memory map of a system 72 .2.6 direct memory access 88 2.7 interfacing processor, memories and i/o devices 89 summary 91 list of keywords and their definitions 92 review questions 94 practice exercises 95 3. devices and buses for device networks 3.1 i/o devices 98 3.2 timer and counting devices 109 3.3 serial communication using the 'i2c', 'can' and advanced i/o buses between the networked multiple devices 114 3.4 host system or computer parallel communication between the networked i/o multiple devices using the isa, pci, pci-x and advanced buses 118 summary 121 list of keywords and their definitions 122 review questions 125 practice exercises 126 4. device drivers and interrupts servicing mechanism 4.1 device drivers 130 4.2 parallel port device dri,~ers in a system 139 4.3 serial port device drivers in a system 146 4.4 device drivers for internal programmable timing devices 149 4.5 interrupt servicing (handling) mechanism 1.50 4.6 context and the periods for context-switching, deadline and interrupt latency 156 summary 163 list of keywords and their definitions 164 review questions 166 practice exercises 166 5. programming concepts and embedded programming in c and c++ 5.1 software programming in assembly language (alp) and in high level language 'c' 168 5.2 'c' program elements: header and source files and preprocessor directives 170 5.3 program elements: macros and functions 172 5.4 program elements: data types, data structures, modifiers, statements, loops and pointers 174 5.5 queues 185 5.6 stacks 196 5.7 lists and ordered lists 198 5.8 embedded programming in c++ 209 5.9 embedded programming in java 211 5.10 'c' program compiler and cross-compiler 214 5.11 source code engineering tools for embedded c/c++ 215 5.12 optimisation of memory needs 215 summary 217 list of keywords and their definitions 219 review questions 221 practice exercises 221 6. program modeling concepts in single and multiprocessor systems software-development process 6.1 modeling processes for software analysis before software implementation 223 6.2 programming models for event controlled or response time constrained real time programs 22 7 6.3 modeling of multiprocessor systems 238 summary 254 list of keywords and their definitions 255 review questions 256 practice exercises 257 7. software engineering practices in the embedded software development process 7.1 software algorithm complexity 260 7.2 software development process life cycle and its models 261 7.3 software analysis 265 7.4 software design 267 7.5 software implementation 270 7.6 software testing, validating and debugging 270 7.7 real time programming issues during the software development process 277 7.8 software project management 278 7.9 software maintenance 282 7.10 unified modeling language (uml) 284 summary 290 list of keywords and their definitions 292 review questions 294 practice exercises 295 8. inter-process communication and synchronisation of processes, tasks and threads 8.1 multiple processes in an application 298 8.2 problem of sharing data by multiple tasks and routines 303 8.3 inter process communication 314 summary 323 list of keywords and their definitions 324 review questions 326 practice exercises 326 9. real time operating systems 9.1 operating system services 329 9.2 i/o subsystems 338 9.3 network operating systems 339 9.4 real-time and embedded system operating systems 340 9.5 interrupt routines in rtos environment: handling of interrupt source call by the rtoss 347 9.6 rtos task scheduling models, interrupt latency and response times of the tasks as performance metrics 349 9.7 performance metric in scheduling models for periodic, sporadic and aperiodic tasks 360 9.8 ieee standard posix 1003.1b functions for standardisation of rtos and inter task __ communication functions 361 9.9 list of basic actions in a preemptive scheduler and expected times taken at a processor 363 9.10 fifteen-point strategy for synchronisation between the processes, isrs, os functions and tasks and for resource management 364 9.11 embedded linux internals: linux kernel for the device drivers and embedded system 366 9.12 os security issues 368 9.13 mobileos 370 summav 3 70 list of keywords and their definitions 3 71 review questions 372 practice exercises 3 73 10. real time operating system programming tools: micro c/os-ii and vxworks 10.1 need of a well tested and debugged real-time operating system (rtos) 375 10.2 use of uac/os-ii 376 10.3 use of vxworks 424 summav 446 11.2 case study of coding for sending application layer byte streams on a tcp/ip network using rtos vxworks 466 11.3 case study of an embedded system for an adaptive cruise control system in a car 488 11.4 case study of an embedded system for a smart card 502 summary 514 list of keywords and their definitions 515 review questions 517 practice exercises 517 12. hardware-software co-design in an embedded system 12.1 embedded system project management 521 12.2 embedded system design and co-design issues in system development process 522 12.3 design cycle in the development phase for an embedded system 527 12.4 uses of target system or its emulator and in-circuit emulator (ice) 528 12.5 use of software tools for development of an embedded system 532 12.6 use of scopes and logic analysers for system hardware tests 540 12.7 issues in embedded system design 542 summary 548 list of keywords and their definitions 550 review questions 552 practice exercises 553 appendix a. cisc and risc processor architectures and an exemplary instruction set a.1 instructions and their processing in cisc and risc processors 555 a.2 an exemplary instruction set--arm7 560 a.3 exemplary assembly language progam for arm processors 562 list of keywords and their definitions 562 appendix b. embedded system high-performance processors b.1 exemplary arm processors 564 b.2 exemplary high performance processors 567 b.3 accelerators 567 list of keywords and their definitions 568 appendix c. embedded system 8/16/32 bit microcontrollers and an overview of their architecture c.1 overview of the architecture of exemplary intel, motorola and pic family cisc based microcontrollers 569 c.2 exemplary motorola family cisc and risc based new generation microcontrollers 572 list of keywords and their definitions 5 73 appendix d. embedded digital signal processors d.1 architecture of digital signal processors 575 d.2 dsp processor versus conventional processors 578 d.3 fixed point arithmetic versus floating point arithmetic 578 d.4 dsp for embedded systems 579 list of keywords and their definitions 585 appendix e. new innovative processors for embedded systems e.1 media processors for embedded systems 587 list of keywords and their definitions 590 appendix f. serial and parallel buses f.1 emerging serial bus standards (usb 2.0, ieee1394) 592 f.2 emerging parallel bus standards (compact pci, pci-x) 593 list of keywords and their definitions 593 appendix g. devices in embedded systems g.1 various forms of rom devices 594 g.2 rom device programmer 595 g.3 ram devices 600 g.4 parallel ports in microcontrollers 602 g.5 serial communication devices 602 g.6 timers in microcontrollers 605 g.7 interrupt sources and their control in various families of processors 607 g.8 interrupts in the 80x86 processors 608 g.9 interrupts in 68hc11 609 list of keywords and their definitions 610 appendix h. important topics in embedded systems architecture, programming and design h.1 suggested syllabus units 611 h.2 list of topics that covers the cdac embedded system course syllabus 613 references index |
商品评论(0条)