{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

Compiler assembler linker locator another alternative

Info iconThis preview shows pages 49–55. Sign up to view the full content.

View Full Document Right Arrow Icon
Compiler Assembler Linker Locator Another alternative is to add a real-time operating system or embedded operating system, which may have DSP capabilities like DSPnano RTOS.
Background image of page 49

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
SUSHMA RAWAL 50 The Tools: Embedded System Specifics Cross Compiler A compiler that generates machine language for a different type of computer than the one the compiler is running in. Cross-compiling doesn’t guarantee correct target code due to (e.g., differences in word sizes, instruction sizes, variable declarations, library functions) Cross Assembler An assembler that generates machine language for a different type of computer than the one the assembler is running in. It is used to develop programs for computers on a chip or microprocessors used in specialized applications that are either too small or are otherwise incapable of handling the development software.
Background image of page 50
SUSHMA RAWAL 51 Moving the program onto the embedded system Remember, the program is written (and possibly run in an emulator) on a host computer, but it still needs to get onto the embedded system. Methods: – Build/burn the program into the hardware (firmware or other flash memory) Bootloader: a bootloader resides on the embedded system and facilitates loading programs onto the system. Debug Monitor: The debug monitor is a more robust program on an embedded system that helps with debugging, and can include a bootloader as well.
Background image of page 51

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
SUSHMA RAWAL 52 Debugging Debugging embedded systems can be facilitated with a Debug Monitor, or through a remote debugger on the host computer. A serial link is normally set up. Emulators can be used to test the system without utilizing the actual hardware A complete emulator provides a simulation of all aspects of the hardware, allowing all of it to be controlled and modified, and allowing debugging on a normal PC.
Background image of page 52
SUSHMA RAWAL 53 Debugging An in-circuit debugger (ICD), a hardware device that connects to the microprocessor via a JTAG or Nexus interface. This allows the operation of the microprocessor to be controlled externally, but is typically restricted to specific debugging capabilities in the processor An in-circuit emulator (ICE) is a hardware device used to debug the software of an embedded system. An in-circuit emulator replaces the microprocessor with a simulated equivalent, providing full control over all aspects of the microprocessor. In-circuit emulation can also refer to the use of hardware emulation, when the emulator is plugged into a system (not always embedded) in place of a yet-to-be-built chip (not always a processor). These in-circuit emulators provide a way to run the system with "live" data while still allowing relatively good debugging capabilities.
Background image of page 53

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
SUSHMA RAWAL 54 Debugging Software Simulators allow the programmer to debug completely on the host system, which can be quicker .
Background image of page 54
Image of page 55
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}