TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy

TEAM-ADA@LISTSERV.ACM.ORG

Options: Use Forum View

Use Proportional Font
Show Text Part by Default
Condense Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Mime-Version:
1.0
Sender:
"Team Ada: Ada Advocacy Issues (83 & 95)" <[log in to unmask]>
Date:
Tue, 31 Oct 2000 06:17:42 -0700
Reply-To:
Robin Reagan <[log in to unmask]>
Subject:
From:
Robin Reagan <[log in to unmask]>
X-cc:
In-Reply-To:
<"B623ZYSFDWQ8F*/R=FBDCVD/R=A1/U=MCCABE JOHN/"@MHS>
Content-Type:
text/plain; charset="us-ascii"; format=flowed
Parts/Attachments:
text/plain (42 lines)
At 09:42 AM 10/31/00 +0000, you wrote:
> >On VxWorks PowerPC, 100 microseconds (I think).
>
>I'm not sure what exactly the figures you've quoted here are. For reference,
>using Green Hills Ada, VxWorks and PowerPC we have an Ada.Real_Time resolution
>of 16.67ms. If we link in to the sysAuxClk... we can get it to interrupt
>us ever
>millisecond. I think I tried to make it every 100us but the setup operation
>failed.
>
>John

To further the PPC reference...

We are using GreenHills AdaMULTI, VxWorks and PowerPC(603e) and have a timer
resolution of 505mics. On the PPC, the decrementor interrupts every time
it passes through 0 (more accurately, every time bit 31 transitions from
a 0 to 1). The decrementor register is decremented every 4 bus cycles.
The clock on our system is running at 33.33Mhz, so 8.335Mhz is the
theoretical maximum for interrupts. To actually get any work done we tried
100mics (10Khz) with a moderate amount of work and this seems to work fine.
Although we did not stress it to find out how much we could actually
accomplish.
For our final system we bumped up the interrupt frequency to 1980Hz.
(505mics).
Notes: We also have all the cache disabled. This is using the system
clock, as our board does not have an AuxClk. The 16.67ms (60hz) is the
standard clock period for VxWorks on PPC and can be read/set via the
sysClkRateGet()/sysClkRateSet() routines.
The reason for the odd (1980hz) interrupt frequency is that somewhere in
the vxWorks docs it said that a frequency divisible by 60 was desirable.
for what reason, I don't know.

Sorry if this was over-kill, :)


Robin P. Reagan - Software Engineer     [log in to unmask]
SEAKR Engineering, Inc.                 v-303.790.8499
12847 East Peakview Avenue              f-303.790.8720
Englewood, CO  80011
"Imagination is more important than knowledge" -Albert Einstein-

ATOM RSS1 RSS2