Download 6 0 - dshinin.ru

Transcript
typically through a target system serial
port. This can be a problem if all serial
ports are being used by the application.
RTECSs with critical timing
requirements and interrupts may not
operate properly with simple monitors.
This results from the processor cycles
used by the monitor when invoked and
violation of design assumptions when
the program is not running at normal
speed. For example, suppose a
breakpoint is placed in a reentrant
interrupt service routine. The interrupt occurs every 10 ms and the
service routine takes 100 us to execute. Under normal execution, there
is no problem. If a breakpoint is placed
in the service routine, the routine will
not be completed by the time the next
interrupt occurs. Repeated interrupts
will eventually cause a stack overflow-or worse.
One solution to the interrupt
problem is to run the monitor as a
separate, low-priority task. Programmer activity does not delay the service
of time-critical interrupts. This
requires the presence of a debugged
task manager on the target system and
its associated memory and time
overhead. The approach is not appropriate for every situation, particularly
if the task manager is part of the
software under development.
BACKGROUND DEBUG MONITOR
A background debug monitor,
borrows features from both the incircuit emulator and the monitor. It
acts like a very simple monitor except
that it is integrated into the processor
and requires no memory or system I/O
when operating. Communication with
the user is done through dedicated pins
on the processor chip. Breakpoint
addresses may be held on-chip in
breakpoint registers or require minimal external hardware. Tracing is not
supported. Thus the BDM is temporally intrusive because it and the
application program cannot be executing simultaneously.
The BDM in the Motorola CPU32
core processor for the 683xx family, is
implemented in microcode and uses
five pins on the chip for user interaction. By being available on every chip,
it easily supports field debugging.
Real- Time
Multitasking
with DOS
.I,, :
.
.*a.
i
,
for Microsoft
C, Borland C,_1 Borland/Turbo
Pascal
., / ., ,a. ,‘, II* *_,. I a a_. * s , 5 , . ,:.,
:
Develop Real-Time Multitasking Applications under MS-DOS with FiTKernel!
RTKernel is a professional, high-performance real-time multitasking kernel. It runs under MS-DOS or in ROM
and supports Microsoft C, Borland Ctt, BorlandRurbo Pascal, and Stony Brook Pascal+. RTKernel is a
library you can link to your application. It lets you run several C functions or Pascal procedures as parallel
tasks. FtTKernel offers the following advanced features:
preemptive, eventiinterrupt-driven scheduling
interrupt handlers for keyboard, COM ports, and
l
number of tasks only limlted by available RAM
task-switch time of approx. 6 p sets (33.MHz 486)
l performance
IS independent of the number of tasks
l use up to 64 priorities to control your tasks
9 priorities changeable at run-time
l time-slicing can be activated
l programmable
timer interrupt rate (0.1 to 55 ms)
l high-resolution timer for time measurement (1 p set)
l activate or suspend tasks out of interrupt handlers
l programmable
interrupt priorities
l supports math coprocessor and emulator
9 semaphores, mailboxes, and message-passing
l keyboard, hard disk, and floppy disk idle times
usable by other tasks
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
network interrupts included with source code
supports up to 36 COM ports (DiglBoard, Hostess boards)
full SUDDO~~ of NS16550 UART chio
fast, iiier-networkcommunicatlon’using Novell’s IPX
runs under MS-DOS 3.0 to 6.0, DR-DOS,
LANs, or without operating system
DOS calls from several tasks without re-entrance problems
supports resident multi-taskmg applications (TSRs)
runs Windows or DOS Extenders as a task
supports CodeView and Turbo Debugger
ROMable
full source code available
m
no run-time royalties
free technical support by phone or fax
RTKernel-C (MSC 6.0/7.0&O, BCtt 1.0/2.0/3.x)
RTKerneCPascal (TP/BP 5.x/6.0/7.0, SBP 6.x)
$495 (Source Code: add $445)
F?
$445 (Source Code: add $375)
For international orders, add $30 for shipping and handling Mastercard, Wsa. check, bank transfer, or COD accepted.
Fourteen simple commands permit the
reading and writing of memory and
registers, program execution, and I/O
reinitialization. These commands can
be used by debug software on a host
development workstation to support
full-featured HLL debugging while
only requiring four bytes of the system
memory. The monitor can be viewed
as an extension to the processor
instruction set, except that the
instructions are fetched from an
external source rather than memory.
IN CONCLUSION
We’ve described six tools for
RTECS software/hardware debugging.
An ideal tool would support debugging
from the application abstraction all the
way down to the physical signal
voltages. In practice, as summarized in
Figure 4, this is not the case.
Secondly, an ideal tool does not
intrude upon the system being observed. Real tools do impact system
behavior electrically, temporally, and
spatially. There are also great differences in the costs of the tools.
Finally, a tool is only as good as
the hand that wields it. The user must
select the right tool for the job and use
it properly. Tool selection depends on
the perceived problems to be solved,
the exact features of tools available for
the system software and hardware, the
money available, the time available,
and the background of the personj s)
doing the debugging. May your
integration efforts be worthy of Norm
and not Homer. j$
Noel Anderson is an assistant professor in the Electrical Engineering
Department at North Dakota State
University and a computer engineer
with Concord Inc., both in Fargo,
N.Dak. He may be reached at
[email protected].
Dean Hoyt is a computer engineer
with 3M in St. Paul, Minn.
Ron Shaw is a computer engineer
with E.F. [ohnson in Waseca, Minn.
Professional Programming Tools
In North America,
please
contact:
Outside North America, please contact:
LEL Computer Systems
20 Canterbury Court
Setauket, NY 11733 . USA
Phone (516)473-8119. Fax (516)331-0706
20
Issue #44 March 1994
On Time Marketing
Karolinenstrasse 32 - 20357 Hamburg
*
GERMANY
Phone+49-40-437472 *Fax+49-40-4351 96
CompuServe 100140.633
The Computer Applications Journal
401 Very Useful
402 Moderately Useful
403 Not Useful