Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Green Arrays

39 views
Skip to first unread message

Rafael Deliano

unread,
Feb 18, 2012, 11:49:33 AM2/18/12
to
Wer hat hierzulande eigentlich noch das
Evaluation Board
http://www.forth-ev.de/article.php/20120212002228937
bzw. Chips ?
Werkle gerade an Artikel fᅵr die VD. Da
aber die Dokumentation ohnehin lᅵckenhaft
ist, wᅵre jemand der das Korrekturlesen
kann hilfreich.

MfG JRD


David Kuehling

unread,
Feb 18, 2012, 5:02:45 PM2/18/12
to
>>>>> "Rafael" == Rafael Deliano <Rafael_...@arcor.de> writes:

> Wer hat hierzulande eigentlich noch das Evaluation Board
> http://www.forth-ev.de/article.php/20120212002228937 bzw. Chips ?
> Werkle gerade an Artikel für die VD. Da aber die Dokumentation ohnehin
> lückenhaft ist, wäre jemand der das Korrekturlesen kann hilfreich.

Also auf comp.lang.forth gibt's ein paar Posts von Albert van der Horst,
der sich wohl mit dem GA144 und colorForth beschäftigt hat [1]. Der
kann wohl auch deutsch, könntet Ihr ja mal fragen, ob er Lust hat das zu
lesen. Emailaddresse findet man per Google auf seiner Homepage [2].

Beschäftige mich selbst gerad auch anfänglich mit colorForth, z.Z. les
(und decompilier) ich gerad verfügbare Quellen um zu sehen, ob das auch
unter der Gforth-VM zum laufen zu bekommen ist. Zum oberflächlichen
Korrekturlesen qualifiziert mich das womöglich?

Falls es hilft, hier ist ein bischen Gforth Code, der den colorForth
token-code in Farbe auf 'nem ANSI-Terminal darstellt:

http://mosquito.dyndns.tv/opentrac/free/browser/trunk/forth/colorgforth.fs

Mit ein paar kleinen Änderungen, kann das sicher auch ein .tex file
ausgeben (kann euch bei Bedarf auch sowas basteln).

Grüße,

David

[1] http://groups.google.com/group/comp.lang.forth/browse_thread/thread/c671db1c5a48c970/da85f5fa55221b19?lnk=gst&q=parallel+prime+counting#da85f5fa55221b19
[2] http://home.hccnet.nl/a.w.m.van.der.horst/
--
GnuPG public key: http://dvdkhlng.users.sourceforge.net/dk.gpg
Fingerprint: B17A DC95 D293 657B 4205 D016 7DEF 5323 C174 7D40

Rafael Deliano

unread,
Feb 19, 2012, 6:04:25 AM2/19/12
to
Eigentlich hätte ich jemand gesucht der das Board schon eine Weile
in Benutzung hat. Ich bin erst gestern dazu gekommen das eForth kurz
mal einzuschalten. Was relativ problemlos ging.

> Beschäftige mich selbst gerad auch anfänglich mit colorForth

Überschneidet sich leider noch nicht, da ich von der HW-Seite komme:
http://www.embeddedforth.de/temp/emb.jpg
Ist noch unvollständig bezüglich F18A, Com-Ports. Analog-IO usw.

Die VD würde sicherlich einen zweiten Artikel über ColorForth
akzeptieren, soweit den jemand schreiben will.

MfG JRD

Rafael Deliano

unread,
Feb 19, 2012, 6:18:44 AM2/19/12
to
Link war vermurks:

http://www.embeddedforth.de/temp/emb.pdf

MfG JRD

David Kuehling

unread,
Feb 19, 2012, 6:09:40 PM2/19/12
to
>>>>> "Rafael" == Rafael Deliano <Rafael_...@arcor.de> writes:

> Eigentlich hätte ich jemand gesucht der das Board schon eine Weile in
> Benutzung hat. Ich bin erst gestern dazu gekommen das eForth kurz mal
> einzuschalten. Was relativ problemlos ging.

>> Beschäftige mich selbst gerad auch anfänglich mit colorForth

> Überschneidet sich leider noch nicht, da ich von der HW-Seite komme:
> http://www.embeddedforth.de/temp/emb.jpg Ist noch unvollständig
> bezüglich F18A, Com-Ports. Analog-IO usw.

Dachte ohne colorForth kriegt man da gar nichts für kompiliert, aber
sehe, darum geht es in dem Artikel gar nicht.

> Die VD würde sicherlich einen zweiten Artikel über ColorForth
> akzeptieren, soweit den jemand schreiben will.

ja, steht irgendwo auf meiner Todo-Liste, mal sehen, wird hoffenltich
2012 noch was.
Ein paar Fragen, die mir beim ersten Lesen kommen:

"Man kann den GA144 aber als CPU betreiben die extern [..]Speicher
hat": Das würd mich ja mal interessieren, wie diese CPU aussieht. Ist
das tatsächlich sowas wie ne CPU, oder doch bloß eher eine Forth-VM?
Und wieviele Resourcen verbraucht die? Wie lange braucht die für
: test 100000 0 DO LOOP ; ? :)

"ein zweites SPI-Flash in Form einer MMC-Speicherkarte": Kann man bei
dem ganzen SDIO Protokolloverhead MMC-Karten tatsächlich als SPI-Flash
bezeichnen? Kann der tatsächlich direkt per SDIO/MMC booten?

Beim Begriff "Host-Controller" weiß ich nicht, ob das ohne Context
gleich klar wird, was du meinst. Du meinst einfach einen zusätzlichen
Controller, der sich um all die (komplexeren) Abläufe kümmert, die man
nicht direkt in colorForth für den GA144 cross-kompilieren möchte?

Ah, im Bild 9 taucht der Begriff "Host" auf, das hilf schon mal. Aber
da da auch USB-Ports dranhängen: "Host-Controller" bei USB hat schon
eine ganz spezielle Bedeuting; die Ports "A", "B" sind aber sicher
keine USB "Host" Ports?!

Ein paar Rechtschreibfehler über die ich gestolpert bin:

Seite 3:
- da gibt's ein "daß" ohne komma davor (neuerdings ja eigentlch "dass"
aber egal)
- "ProgramCounter" -> "program(-)counter"?
- "Schnittsetellen"

Seite 4:
- "Flexibilität von Software schon lange bekannt": fehlt wohl ein "ist".?

Sehr interessanter Artikel.

Grüße,

David

Bernd Paysan

unread,
Feb 19, 2012, 7:47:27 PM2/19/12
to
David Kuehling wrote:
> Ein paar Fragen, die mir beim ersten Lesen kommen:
>
> "Man kann den GA144 aber als CPU betreiben die extern [..]Speicher
> hat": Das würd mich ja mal interessieren, wie diese CPU aussieht.
> Ist das tatsächlich sowas wie ne CPU, oder doch bloß eher eine
> Forth-VM?
> Und wieviele Resourcen verbraucht die? Wie lange braucht die für
> : test 100000 0 DO LOOP ; ? :)

Wenn ich das richtig verstanden habe, müssen drei Cores miteinander
kooperieren, um auf den externen Speicher zuzugreifen. D.h. das ist dann
eine VM, die man mittels der Cores (mehr als nur drei!) implementiert
hat.

Wie man diese VM am sinnvollsten implementiert, also dass man auch
tatsächlich Leistung aus dem GA144 herausholen kann, das scheint mir
eine nicht-triviale Aufgabe zu sein. Vielleicht durch permanentes
Rekonfigurieren, d.h. die Programme im externen Speicher konfigurieren
sich das Array, laufen ab und wenn alle fertig sind, wird die nächste
Konfiguration geholt (welche, wird von den berechneten Daten abhängen).

> "ein zweites SPI-Flash in Form einer MMC-Speicherkarte": Kann man bei
> dem ganzen SDIO Protokolloverhead MMC-Karten tatsächlich als
> SPI-Flash
> bezeichnen? Kann der tatsächlich direkt per SDIO/MMC booten?

MMC-Karten haben einen SPI-Modus, und ja, in dem kann man das dann wohl
schon als SPI-Flash bezeichnen.

--
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://bernd-paysan.de/

Rafael Deliano

unread,
Feb 20, 2012, 3:16:20 PM2/20/12
to

> Das würd mich ja mal interessieren, wie diese CPU aussieht. ...
> Und wieviele Resourcen verbraucht die?

Vgl Dokumentation von eForth:
-----------------------------
This version of eForth is 16-bit cell addressed, with a single
character occupying a 16-bit cell.

The eForth virtual machine occupies five nodes:
-- the BTC engine node, called 'bitsy', and two of its neighbor
nodes, called 'buds'.
-- the ALU interface and stack controller node, called 'stack',
and one neighbor node.

The eForth iobus currently occupies fifteen nodes to access some
of the GA144's i/o pins, including the required serial terminal
controller.

eForth requires a serial terminal; its asynchronous serial
interface controller occupies two nodes.

eForth requires external memory; four nodes are used to access
external sram:
-- user interface node
-- data read/write node
-- control node
-- address node
-----------------------------
Wobei "bitsy" und "stack" zwei spezielle Nodes unten innen nahe dem
SRAM-Interface sind mit Support für eFORTH im ROM.
Da die UART aber oben ist benötigt man eben viele Nodes die
die Verbindung zu ihr machen.

> Wie lange braucht die für : test 100000 0 DO LOOP ; ? :)

Tja : TEST 65535 0 DO LOOP ;
macht bei DO Fehlermeldung weil man dieses advanced feature
in eForth erst aus Library nachimplementieren muß. Was sich erstmal
als schwierig erwies.

MfG JRD

David Kuehling

unread,
Feb 20, 2012, 5:36:05 PM2/20/12
to
>>>>> "Rafael" == Rafael Deliano <Rafael_...@arcor.de> writes:

>> Das würd mich ja mal interessieren, wie diese CPU aussieht. ... Und
>> wieviele Resourcen verbraucht die?

[..]

>> Wie lange braucht die für : test 100000 0 DO LOOP ; ? :)

> Tja : TEST 65535 0 DO LOOP ; macht bei DO Fehlermeldung weil man
> dieses advanced feature in eForth erst aus Library nachimplementieren
> muß. Was sich erstmal als schwierig erwies.

Vielleicht gibt's ja das äquivalente colorForth/machineForth konstrukt:

: test 65535 for next ;

(?)

Danke für die Infos. Ist schon ein merkwürdiges Stück Hardware.

David Kuehling

unread,
Feb 20, 2012, 5:49:35 PM2/20/12
to
>>>>> "Bernd" == Bernd Paysan <bernd....@gmx.de> writes:

> David Kuehling wrote:
>> Ein paar Fragen, die mir beim ersten Lesen kommen:
>>
>> "Man kann den GA144 aber als CPU betreiben die extern [..]Speicher
>> hat": Das würd mich ja mal interessieren, wie diese CPU aussieht.
>> Ist das tatsächlich sowas wie ne CPU, oder doch bloß eher eine
>> Forth-VM? Und wieviele Resourcen verbraucht die? Wie lange braucht
>> die für : test 100000 0 DO LOOP ; ? :)

> Wenn ich das richtig verstanden habe, müssen drei Cores miteinander
> kooperieren, um auf den externen Speicher zuzugreifen. D.h. das ist
> dann eine VM, die man mittels der Cores (mehr als nur drei!)
> implementiert hat.

> Wie man diese VM am sinnvollsten implementiert, also dass man auch
> tatsächlich Leistung aus dem GA144 herausholen kann, das scheint mir
> eine nicht-triviale Aufgabe zu sein. Vielleicht durch permanentes
> Rekonfigurieren, d.h. die Programme im externen Speicher konfigurieren
> sich das Array, laufen ab und wenn alle fertig sind, wird die nächste
> Konfiguration geholt (welche, wird von den berechneten Daten
> abhängen).

Den Kompiler, der ein Programm so auseinandernimmt, möcht ich sehen :)
In JIT-Manier zur Laufzeit kriegen sie das wohl performanzmäßig eher
nicht hin.

Was die vielleicht gemacht haben, weil's einfach ist, ist, dass Sie den
S-RAM ab dem Forth-IP einfach seriell in nem langen burst auslesen und
in einer Node gequeued vorhalten. Dann leiden Sie nicht unter der
Speicher-Latenz, solange niemand springt, oder auf Speicher zugreifen
will, also nur lokal auf dem Interpreter-Node implementierte Primitiven
ausgeführt werden (mindestens Daten-Stack müsste dann auch on-chip in
einem Node liegen).

In dem Fall wär der DO LOOP Benchmark natürlich nicht aussagekräftig.

Carsten Strotmann (Usenet)

unread,
Mar 3, 2012, 4:15:51 AM3/3/12
to
Hallo Radael,

ich habe hier 2 Green Arrays Eval Boards. Eines ist im Mikrokontroller
Verleih der Forth Gesellschaft, und ein anderes ist meines. Beide werde
ich zur Tagubg mitbringen, nach der Tagung kann das eine Board von
Mitgliedern ausgeliehen werden.

Ich habe auch noch 6 GA144 Chips hier, wenn jemand noch ersatz
benoetigt.

Beste Gruesse

Carsten Strotmann
0 new messages