Microprocessor Based Systems
Topic: Software and Hardware Tools
Submitted by:Deepak Tathe
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.
•A cross assembler (CA) is an assembler that runs on computer A, assembling programs for computer B.• A is called the source computer and B, the target computer.• As a result, any meta assembler is also a CA.
History The early minicomputers (made in the early to mid 1960s)
were slow and had even slower I/O devices (mostly punched paper tape and teletype terminals).
It made sense to assemble a program on a mainframe, where both the editor and the CA could use fast magnetic tapes or disks, and then to transfer the object file, on paper tape, to the minicomputer for execution.
They had small memories or limited instruction sets that made it impractical to run an assembler. For such computers, a CA was a practical solution. The same reasons applied to the early microprocessors of the mid to late 1970s.
When a new computer is developed, a CA is normally used to implement the first assembler (and perhaps, other software).
The main problems in the implementation of a CA are: If the CA is to be one-pass, it cannot load the object
program directly in the memory of the target computer. It has to load it in the memory of the source computer,
resolve all forward references, and generate an absolute object file.
The object file is eventually downloaded to the target computer.
A difference in word size between the source and target computers presents a problem since the CA has to generate instructions and constants for the target computer, but it can only use facilities available on the source computer.
Problems in CA
LOGIC ANALYSERS
A logic analyzer is an electronic instrument that captures and displays multiple signals from a digital system or digital circuit
A logic analyzer may convert the captured data into timing diagrams, protocol decodes, state machine traces, assembly language, or may correlate assembly with source-level software.
Logic analyzers can uncover hardware defects that are not found in simulation
Logic Analysers
They appeared shortly after the first microprocessors were used because to fault find these circuits required the instrument to have access to a large number of lines, more than could be seen using a conventional oscilloscope.
Characteristics
Provide a time display of logic states: Logic analysers possess a horizontal time axis and a vertical axis to indicate a logic high or low states. In this way a picture of the digital lines can be easily displayed.
Multiple channels: Logic analyzers are designed to monitor a large number of digital lines. As logic analyzers are optimised for monitoring a large number of digital circuits, typically they may have anywhere between about 32 and 200+ channels they can monitor, each channel monitoring one digital line
Characteristics Displays logic states: The vertical display on the
analyser displays the logic state as a high of low state. The signals enter the various channels and are converted into a high or low state for further processing within the analyser. It provides a logic timing diagram of the various lines being monitored.
Does NOT display analogue information : These test instruments do not present any analogue information, and in this way they differ from an oscilloscope. They are purely aimed at monitoring the logic operation of the system. If any analogue information is required, then an oscilloscope must be used in addition.
Simulator
Simulation is based on the process of modeling a real phenomenon with a set of mathematical formula.
Simulation Software with real time response is often used for Industrial Applications
It is used to replicate the behaviour of an actual electronic device or circuit
Simulator for Microprocessor
Benefits of simulator
Evaluating different hardware designs without building costly physical hardware systems.
Enabling the opportunities to access non-existing computer components or systems
Obtaining detailed performance metrics: A single execution of simulators can often generate a large set of performance data.
Debugging: Debugging on real hardware typically require re-booting and re-running the code to reproduce the problems. In contrast, some simulators have a fully controlled environment and allow software developers to run code backward once an error is detected.
Emulator
An emulator is hardware or software that enables one computer system (called the host) to behave like another computer system (called the guest).
An emulator typically enables the host system to run software or use peripheral devices designed for the guest system.
Emulation refers to the ability of a computer program in an electronic device to emulate (or imitate) another program or device.
Emulator
Top Related