EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Power PC and EPICS
From: [email protected] (William Lupton)
To: [email protected], [email protected]
Cc: [email protected], [email protected], [email protected]
Date: Tue, 28 Jul 1998 08:44:51 -1000
Dear all,

Here are a few comments following on from Noboru's.

William

------------------------------------------------------------------------

>We uses Force PowerCore 603 for development of KEKB control system.
>In a few weeks, we will get Force PowerCore6750, which uses  PPC-750
>as a CPU. EPICS R3.13beta11 runs on PCore603. 

Note that Beta12 has built-in support for PPC, including CONFIG files
for the Motorola MVME-1604. This certainly builds EPICS OK for that
board but has not been tested extensively with hardware (in fact it's
been tested hardly at all with hardware).

Beta12 addresses some but not all of the problems listed by Noboru. I'll
try to indicate which ones below.

>1) Compiler differences.
> 1-1) signed or unsigned integral variables.
> According to our study, the compiler for MC68K and the compiler for PPC
>in VxWorks have different default types for integral variables.
>
>               char     |      short    |      int      |      long
>68k    |       signed   |      signed   |      unsigned |      unsigned
>PPC    |       unsigned |      unsigned |      signed   |      signed
>
>In some cases, this difference causes different behaviour between
>two platforms. You must use "signed" or "unsigned"  keywords explicitly.

I would have hoped that it was only char that might be signed or
unsigned and that all the others should be signed unless explicitly
unsigned.

K&RII (p211) says "the signed specifier is useful for forcing char
objects to carry a sign; it is permissible but redundant with other
integral types".

>For "char" type, compiler option "-fsigned-char" can be used.

That's a good idea. Perhaps it should be specified for _all_ boards?
Currenly in the standard release it seems to be specified only for
the Heurikon Baja board.

>  1-2) "_" in the global name.
> EPICS uses global symbol table(i.e. it uses symFindByName() function)
> to find device/record support routines.
>68K compiler adds "_" in a front of the global symbol name, however,
>PPC compiler DOES NOT.

This has been addressed in Beta12 by replacing all calls to symFindByName()
and its friends with symFindByNameEPICS(), which, if a lookup for a symbol
that starts with an underscore fails, tries ignoring the underscore.

> 1-3) -mnobitfield option
> A compiler option "-mnobitfield" does not exists for PPC compiler.

> 1-4) va_list in errPrintfVX.c.

This has been, by chance, addressed in Beta12 because errPrintf() has
been completely re-written by Marty.

> 2-1) vxMemProbe() does not work on Force PPC board.

> 2-2) slave A24 access to a main memory.

> 2-3) Word bundary.

Navigate by Date:
Prev: Re: Power PC and EPICS Noboru Yamamoto
Next: Histogram Record support Mark J. Ryan
Index: 1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Power PC and EPICS Noboru Yamamoto
Next: XVME 566 driver problem Miroslaw Dach
Index: 1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·