Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #41991

Re: GA144 use cases

From rickman <gnuarm@gmail.com>
Newsgroups comp.lang.forth
Subject Re: GA144 use cases
Date 2015-09-13 22:47 -0400
Organization A noiseless patient Spider
Message-ID <mt5cd9$7lp$1@dont-email.me> (permalink)
References (15 earlier) <81a8b5fc-d075-4005-af8d-ba8e46ff998a@googlegroups.com> <mt1cn5$pg$1@dont-email.me> <102f7769-e18e-4548-99be-757e617792de@googlegroups.com> <mt4v11$ahu$1@dont-email.me> <95a2750e-3971-4b72-9410-a61ba6ebabcd@googlegroups.com>

Show all headers | View raw


On 9/13/2015 9:42 PM, Greg wrote:
> I have found the videos clear and well done. They must have put quite
> some effort into them. Thing is though that I can't see myself
> programming much at that level.

Not sure what you mean by "that level"?  Is this just the assembly level 
for the F18A?  Personally I don't find it that hard, but that is my 
thing.  I've built microprogrammed machines and programmed them.


> So what you have next is Coloforth
> and more recently PolyForth and Eforth. Any of these options involves
> knowing Forth which is what I am trying to do in my little spare time
> now.

Whether to use Forth or F18A assembly depends on what you are doing.  My 
understanding is that Polyforth runs in an interpreted mode using 
multiple F18A nodes.  That's great for high level application code.  I 
expect most of the processors will be doing specific tasks, especially 
in support of I/O.  That will likely need to be programmed in F18A 
assembly.


> Compared to x86/x64, F18 is extremely simple, once over the
> initial shock of being so different, there isn't that much to it,
> actually.

That depends on how you look at it.  There is a lot of detail that is 
hard to pull out of the docs I found.  But if you read between the lines 
there is a lot there.


> The arrayforth classes are structered so that after you are
> finished, you have a pretty solid understanding of the processor
> instruction set and their timing. But I do not recall any timing
> information being given in relation to I/O. Everytime I
> called/emailed Green arrays I have found very receptive ears, even
> though I haven't bouhgt anything from them yet.

I was initially an eager and willing potential customer.  But I guess 
they didn't think I was working in a way that was compatible with their 
methods.  I was told that rather than worry about designing to timing 
data, just try it and see if it would work.  :)  Even if it worked on 
their eval board, timing has to work over PVT (process, voltage and 
temperature).  The one variable that can't be tested is "process".  In 
every device I've ever designed timing was analyzed by.... analysis from 
data sheet timing or timing tools with that information built in.


> Problem though is
> that I am a software developer with very limited understanding of the
> actual hardware pieces that go into the makings of a computer, so I
> would need to couple with somebody who has that knowledge to get
> something going. I will search the forum about those postings I was
> talking about, it seems like what Stefan has going is something big,
> according to those. There was something about getting the crystal to
> oscillate on a single pin, or something like that, whatever that
> means :)

Normally a crystal is used in a circuit with an amplifier.  There are 
two pins on the amplifier, input and output.  Some passives need to be 
added to set the circuit to the right conditions to oscillate at the 
correct frequency.  The amplifier is so simple that it is nearly 
universally included in all MCU devices as well as other chips.  The 
GA144 doesn't do that.

In a GA144 the idea is that you can connect a crystal between an I/O pin 
and ground.  The I/O pin can be driven high for a short time, then put 
into input mode.  If the crystal is ringing at high enough amplitude, 
the input can detect when the voltage rises above the 0/1 threshold and 
wake up the processor.  The software then drives the pin to a high for a 
short time, sets the I/O to input mode again and sleeps waiting for the 
next threshold crossing.

This is all good, but it requires starting with a series of pulses which 
will put enough energy into the crystal so it will ring with an 
amplitude high enough to cross the input threshold.  That's the hard 
part.  My recollection is a bit fuzzy, but I think both Chuck and 
someone at GA tried this and could not get it to work for the general 
case of an arbitrary crystal frequency.  They used a simple timing loop 
which has a limited resolution of one instruction.  I say limited 
because crystals have a very high Q which means they will only resonate 
at a frequency very close to the intended frequency.  So if you try to 
start it at a frequency outside of this range, the energy won't build up 
in the crystal and it won't start ringing.  Think of this as pushing a 
swing, same exact problem.  If you feel the right time to give them a 
push, they swing more and more each time.  If you blindly push them 
without syncing to the right frequency some of the time you are slowing 
them down rather than helping.

Stefan realized he could use a dithering technique to drive the crystal 
at a closer average frequency even if each pulse isn't exactly on the 
timing mark.  This "average" frequency is the important part.  So he has 
gotten more crystals to work even if it isn't perfect.  The hard part 
will be characterizing this and assuring it will work over PVT.

There are also factors to consider regarding the stability of this 
oscillator.  Driving the crystal with a 1 or 2 ns wide pulse generates a 
wide array of frequencies.  I have no idea what this will do to the 
oscillations.  Many applications are not at all critical in this regard. 
  They just need to be within 1% of a target frequency.  Others are 
*very* sensitive to frequency and phase noise.

But as I said before, this crystal oscillator is not *the* factor 
keeping people from using the GA144.  It is one of many shortcomings 
that make this an unprofitable device to use in the vast majority of 
applications.  In fact, I expect it is way down on the list of important 
features in an MCU.

I hope this post wasn't too long.

-- 

Rick

Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

GA144 use cases dunno <dunno@dunno.dunno> - 2015-08-31 07:20 +0000
  Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-08-31 09:55 -0400
  Re: GA144 use cases Syd Rumpo <usenet@nononono.co.uk> - 2015-08-31 16:49 +0100
    Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-08-31 18:35 -0400
  Re: GA144 use cases Dennis Ruffer <daruffer@gmail.com> - 2015-08-31 19:08 -0700
    Re: GA144 use cases Mux <Yvo.Zoer@gmail.com> - 2015-09-02 10:57 -0700
      Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-02 14:17 -0400
        Re: GA144 use cases Mux <Yvo.Zoer@gmail.com> - 2015-09-02 11:28 -0700
          Re: GA144 use cases hughaguilar96@gmail.com - 2015-09-02 13:41 -0700
          Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-02 16:50 -0400
            Re: GA144 use cases Mux <Yvo.Zoer@gmail.com> - 2015-09-02 15:03 -0700
              Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-02 18:18 -0400
                Re: GA144 use cases Mux <Yvo.Zoer@gmail.com> - 2015-09-02 16:14 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-02 20:40 -0400
                Re: GA144 use cases Greg <borota@gmail.com> - 2015-09-02 17:53 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-02 21:25 -0400
                Re: GA144 use cases Mux <Yvo.Zoer@gmail.com> - 2015-09-02 22:28 -0700
                Re: GA144 use cases Paul Rubin <no.email@nospam.invalid> - 2015-09-02 22:53 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-03 11:32 -0400
                Re: GA144 use cases Paul Rubin <no.email@nospam.invalid> - 2015-09-03 11:57 -0700
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-03 10:35 +0000
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-03 15:54 +0200
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-03 16:11 +0000
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-03 13:06 -0400
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-04 08:07 +0000
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-04 11:49 -0400
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-05 11:06 +0000
                Re: GA144 use cases Paul Rubin <no.email@nospam.invalid> - 2015-09-05 09:05 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-05 12:59 -0400
                Re: GA144 use cases mhx@iae.nl - 2015-09-05 10:56 -0700
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-06 14:29 +0000
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-03 22:08 +0200
                Re: GA144 use cases Paul Rubin <no.email@nospam.invalid> - 2015-09-03 14:00 -0700
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-04 01:28 +0200
                Re: GA144 use cases franck.bensusan@gmail.com - 2015-09-03 23:04 -0700
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-04 08:24 +0000
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-04 15:09 +0200
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-05 15:10 +0000
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-05 22:04 +0200
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-06 14:51 +0000
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-06 22:51 +0200
                Re: GA144 use cases Greg <borota@gmail.com> - 2015-09-06 17:30 -0700
                Re: GA144 use cases Paul Rubin <no.email@nospam.invalid> - 2015-09-04 22:27 -0700
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-05 13:07 +0200
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-05 11:22 +0000
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-04 08:14 +0000
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-04 15:13 +0200
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-05 16:06 +0000
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-05 21:05 +0200
                Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-06 14:37 +0000
                Re: GA144 use cases Andrew Haley <andrew29@littlepinkcloud.invalid> - 2015-11-30 04:17 -0600
                Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-12-01 23:06 +0100
                Re: GA144 use cases Mark Wills <markwills1970@gmail.com> - 2015-09-03 00:05 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-03 13:08 -0400
              Re: GA144 use cases forther <forther@gmail.com> - 2015-09-07 11:26 -0700
      Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-02 15:15 -0400
    Re: GA144 use cases forther <forther@gmail.com> - 2015-09-07 11:21 -0700
      Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-11-30 16:33 -0500
        Re: GA144 use cases forther <forther@gmail.com> - 2015-12-03 12:12 -0800
          Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-12-03 16:10 -0500
  Re: GA144 use cases Jason Damisch <jasondamisch@yahoo.com> - 2015-09-02 12:10 -0700
  Re: GA144 use cases Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-09-03 01:27 -0700
    Re: GA144 use cases Syd Rumpo <usenet@nononono.co.uk> - 2015-09-03 13:32 +0100
      Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-03 11:32 -0400
  Re: GA144 use cases mhx@iae.nl (Marcel Hendrix) - 2015-09-03 18:57 +0200
    Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-03 23:58 +0200
    Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-04 07:52 +0000
    Re: GA144 use cases Waldek Hebisch <hebisch@antispam.uni.wroc.pl> - 2015-09-05 16:32 +0000
      Re: GA144 use cases mhx@iae.nl - 2015-09-05 10:52 -0700
        Re: GA144 use cases Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-05 22:11 +0200
          Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-06 14:18 +0000
            Re: GA144 use cases anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-07 07:49 +0000
        Re: GA144 use cases Waldek Hebisch <hebisch@math.uni.wroc.pl> - 2015-09-05 23:42 +0000
          Re: GA144 use cases Paul Rubin <no.email@nospam.invalid> - 2015-09-05 17:25 -0700
  Re: GA144 use cases Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-09-07 03:18 -0700
    Re: GA144 use cases Raimond Dragomir <raimond.dragomir@gmail.com> - 2015-09-07 03:31 -0700
      Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-07 15:06 -0400
        Re: GA144 use cases Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-09-08 21:41 -0700
          Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-09 02:54 -0400
            Re: GA144 use cases Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-09-09 03:02 -0700
              Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-09 16:55 -0400
                Re: GA144 use cases Paul Rubin <no.email@nospam.invalid> - 2015-09-09 20:12 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-09 23:40 -0400
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-09 23:43 -0400
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-10 00:07 -0400
                Re: GA144 use cases Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-09-09 21:55 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-10 01:43 -0400
                Re: GA144 use cases Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-09-09 23:49 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-10 14:43 -0400
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-10 16:10 -0400
                Re: GA144 use cases Stefan Mauerhofer <smauerhofer@androsoft.ch> - 2015-09-12 03:15 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-12 10:28 -0400
                Re: GA144 use cases Greg <abiforth@gmail.com> - 2015-09-13 13:05 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-13 18:59 -0400
                Re: GA144 use cases Greg <abiforth@gmail.com> - 2015-09-13 18:42 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-13 22:47 -0400
                Re: GA144 use cases Greg <abiforth@gmail.com> - 2015-09-13 21:24 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-14 02:00 -0400
                Re: GA144 use cases borota@gmail.com - 2015-09-14 08:35 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-14 12:06 -0400
                Re: GA144 use cases borota@gmail.com - 2015-09-14 09:33 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-14 13:25 -0400
                Re: GA144 use cases Greg <borota@gmail.com> - 2015-09-14 14:17 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-14 18:12 -0400
                Re: GA144 use cases Greg <schmegner@gmail.com> - 2015-09-14 18:15 -0700
                Re: GA144 use cases rickman <gnuarm@gmail.com> - 2015-09-14 22:16 -0400
                Re: GA144 use cases Greg <borota@gmail.com> - 2015-09-18 14:50 -0700
                Re: GA144 use cases Jason Damisch <jasondamisch@yahoo.com> - 2015-09-18 15:11 -0700
                Re: GA144 use cases Greg <borota@gmail.com> - 2015-09-19 05:32 -0700
                Re: GA144 use cases Dennis Ruffer <daruffer@gmail.com> - 2015-09-19 08:39 -0700
                Re: GA144 use cases Greg <borota@gmail.com> - 2015-09-20 19:03 -0700
                Re: GA144 use cases Dennis Ruffer <daruffer@gmail.com> - 2015-09-21 06:44 -0700
                Re: GA144 use cases Dennis Ruffer <daruffer@gmail.com> - 2015-09-22 13:10 -0700
                Re: GA144 use cases Mark Wills <markwills1970@gmail.com> - 2015-09-18 16:18 -0700
                Re: GA144 use cases schmegner@gmail.com - 2015-09-14 18:21 -0700

csiph-web