Altera - MAX7000 - wie funktioniert ISP?

T

Thomas Matern

Guest
Hi

Ich moechte mal (hobbymaessig) mit CPLDs herumspielen - der
VHDL-Simulator ist ja ganz toll, aber eine blinkende LED ist irgendwie
schoener :)
Daher suchte ich einen Hersteller, der:
- die Entwicklungstools kostenlos (zeitlich unbeschraenkt) zur
Verfuegung stellt
- der einem keine teuren Programmiergeraete aufzwingt (moeglichst
Selbstbau)
- dessen CPLDs man auch in Einzelstuecken kaufen kann (Preis relativ
egal, da nur 1 Stueck).

Daher viel meine Wahl auf die MAX7000er Reihe von Altera (konkret habe
ich mir einen EPM7128STC100-15 gekauft - aber noch nicht verloetet.

Mein (bisher) einziges Problem ist das JTAG-Interface: die 4 Pins
liegen auf ganz normalen I/O-Pins. Ich habe alle verfuegbaren
Dokumentationen ueberflogen, aber kein Informationen darueber
gefunden, wie der Programmierungsmodus eingeleitet wird. Wenn ich
die JTAG-Pins im normalen Betrieb als Ausgang konfiguriere, dann
"kaempft" doch der PLD gegen den Programmer sobald er angeschlossen
wird.

Muss vielleicht erst der Programmer und dann die Versorgungsspannung
angeschlossen werden?
Oder gibt es eine spezielle Kombination von GCLK1, OE1... ?
Oder muss nur die Clock deaktiviert werden?
Oder kann man diese Pins einfach nicht als Output benutzen? Dann
muesste doch aber die restliche Schaltung waehrend des Programmierens
auch abgeschaltet werden...

Falls mein Problem noch nicht ganz klar ist, mal ein Beispiel: bei
den Atmel-AVRs wird der Programmiermodus durch den Reset-Eingang
gesteuert - alle I/Os bleiben hochohmig, sodass der Programmer
einfach loslegen kann.

Danke schonmal...

Bye
Thomas
 
Thomas Matern schrieb:
Hi

Ich moechte mal (hobbymaessig) mit CPLDs herumspielen - der
VHDL-Simulator ist ja ganz toll, aber eine blinkende LED ist irgendwie
schoener :)
Daher suchte ich einen Hersteller, der:
- die Entwicklungstools kostenlos (zeitlich unbeschraenkt) zur
Verfuegung stellt
- der einem keine teuren Programmiergeraete aufzwingt (moeglichst
Selbstbau)
- dessen CPLDs man auch in Einzelstuecken kaufen kann (Preis relativ
egal, da nur 1 Stueck).

Daher viel meine Wahl auf die MAX7000er Reihe von Altera (konkret habe
ich mir einen EPM7128STC100-15 gekauft - aber noch nicht verloetet.

Hol dir mal die Datenblätter auf www.altera.com und auch die Pin-Liste
(auf meiner CD ist die nicht drauf und das Projekt mit dem EPM7128 ist
schon zu lange her, ausserdem hat es ein Kollege gemacht).

In der Pin Liste sind immer die Besonderheiten der einzelnen Pins (auch
JTAG) verzeichnet. Ich denke aber, daß mindestens das TMS (Test Mode
select) kein ganz normaler user IO ist.

Martin
 
Hi

Hol dir mal die Datenblätter auf www.altera.com und auch die Pin-Liste
Hab ich schon.

In der Pin Liste sind immer die Besonderheiten der einzelnen Pins (auch
JTAG) verzeichnet. Ich denke aber, daß mindestens das TMS (Test Mode
select) kein ganz normaler user IO ist.
Tja, leider doch:

TDI = Lab B:MC32
TMS = Lab C:MC48
TCK = Lab F:MC96
TDO = Lab G:MC112

Die einzigen Nicht-I/O-Pins (ausser VCC+GND) sind:
- GCLK1
- GCLRn
- OE1
- OE2/GCLK2

Any Ideas?

Bye
Thomas
 
Thomas Matern wrote:
Hi

Hol dir mal die Datenblätter auf www.altera.com und auch die Pin-Liste


Hab ich schon.

In der Pin Liste sind immer die Besonderheiten der einzelnen Pins (auch
JTAG) verzeichnet. Ich denke aber, daß mindestens das TMS (Test Mode
select) kein ganz normaler user IO ist.


Tja, leider doch:

TDI = Lab B:MC32
TMS = Lab C:MC48
TCK = Lab F:MC96
TDO = Lab G:MC112

Die einzigen Nicht-I/O-Pins (ausser VCC+GND) sind:
- GCLK1
- GCLRn
- OE1
- OE2/GCLK2

Any Ideas?

Bye
Thomas

Hi,

http://www.altera.com/literature/ds/dsbytemv.pdf
http://www.altera.com/literature/an/an095.pdf
zu finden auf
http://www.altera.com/literature/lit-m7k.html

Bei der Software: JTAG Support einschalten
(MAXPLUSII:Assign->Global_Project_Device_Options->Enable_JTAG_Support)
,damit das richtige File erzeugt wird und die Pins reserviert werden.

Karl
 
Hi

http://www.altera.com/literature/ds/dsbytemv.pdf
http://www.altera.com/literature/an/an095.pdf
zu finden auf
http://www.altera.com/literature/lit-m7k.html

Bei der Software: JTAG Support einschalten
(MAXPLUSII:Assign->Global_Project_Device_Options->Enable_JTAG_Support)
,damit das richtige File erzeugt wird und die Pins reserviert werden.
Ok, soweit war mir das klar - wenn ich die Pins nicht als I/O benutze,
geht alles klar. Aber wenn ich sie je als Ausgang programmiere
(was ja moeglich ist), kann ich nie mehr umprogrammieren.
Stimmt das?
Oder ist das nur ein Missverstaendnis aus der Dokumentation und die
JTAG-Ports sind garkeine I/Os?

Naja, egal - dann muss ich eben mit 80 I/O auskommen :)

Bye
Thomas
 
Yo,

Thomas Matern wrote:
Daher viel meine Wahl auf die MAX7000er Reihe von Altera (konkret habe
ich mir einen EPM7128STC100-15 gekauft - aber noch nicht verloetet.
Erm. Dumme Frage vermutlich, aber wo kriegt man sowas einzeln?

MfG,
Maik
 
Hi

: Naja, egal - dann muss ich eben mit 80 I/O auskommen :)

Den EPM7256B gibts doch auch im TQFP 144 mit mehr Pins.
Wie bereits geschrieben: ich habe den EPM7128S bereits vor mir liegen
(im TQFP-100 Gehaeuse).

Zieh in Deine Ueberlegungen auch die Xilinx XC95XL Bausteine ein. Das eine
Makrozelle doch 56 Eingaenge hat, lernt man bald zu schaetzen (und wuenscht
noch mehr Eingaenge). Die JTAG Pins beim XC95XL sind "dedicated", man kann
sich also nicht den Weg verbauen.

Leider koennen die nur 3.3V am Ausgang erzeugen und in einer reinen
TTL-Umgebung ist das etwas knapp. Ich wollte zuerst die Xilinx XC95*
(ohne XL) nehmen, aber ich habe kein Programmiergeraet zum nachbauen
gefunden. Und einfach das von Altera nachzubauen, war mir dann doch zu
unsicher...

Bye
Thomas
 
Thomas Matern <my-spamcatcher@gmx.de> wrote:
: Hi

:> http://www.altera.com/literature/ds/dsbytemv.pdf
:> http://www.altera.com/literature/an/an095.pdf
:> zu finden auf
:> http://www.altera.com/literature/lit-m7k.html
:>
:> Bei der Software: JTAG Support einschalten
:> (MAXPLUSII:Assign->Global_Project_Device_Options->Enable_JTAG_Support)
:> ,damit das richtige File erzeugt wird und die Pins reserviert werden.

: Ok, soweit war mir das klar - wenn ich die Pins nicht als I/O benutze,
: geht alles klar. Aber wenn ich sie je als Ausgang programmiere
: (was ja moeglich ist), kann ich nie mehr umprogrammieren.
: Stimmt das?

Ich vermute mal, dass sich mit einem Hardware Programmer "Programming with
external Hardware" die JTag Pins wieder freikaempfen lassen

: Oder ist das nur ein Missverstaendnis aus der Dokumentation und die
: JTAG-Ports sind garkeine I/Os?

: Naja, egal - dann muss ich eben mit 80 I/O auskommen :)

Den EPM7256B gibts doch auch im TQFP 144 mit mehr Pins.

Zieh in Deine Ueberlegungen auch die Xilinx XC95XL Bausteine ein. Das eine
Makrozelle doch 56 Eingaenge hat, lernt man bald zu schaetzen (und wuenscht
noch mehr). Die JTAG Pins beim XC95XL sind dedicated, man kann sich also
nicht den Weg verbauen.

Bye
--
Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
 
Hi

Daher viel meine Wahl auf die MAX7000er Reihe von Altera (konkret habe
ich mir einen EPM7128STC100-15 gekauft - aber noch nicht verloetet.

Erm. Dumme Frage vermutlich, aber wo kriegt man sowas einzeln?
Max7000 --> Farnell
Xilinx XC95(XL) --> Reichelt.

Bye
Thomas
 
Hi

Die Frage habe ich mir auch oft gestellt.
Gerade habe ich die Antwort gefunden.

http://www.altera.com/support/kdb/rd08051998_330.html
Super. Danke.

Bye
Thomas
 
Thomas Matern schrieb:
Hi

: Naja, egal - dann muss ich eben mit 80 I/O auskommen :)

Den EPM7256B gibts doch auch im TQFP 144 mit mehr Pins.

Wie bereits geschrieben: ich habe den EPM7128S bereits vor mir liegen
(im TQFP-100 Gehaeuse).

Zieh in Deine Ueberlegungen auch die Xilinx XC95XL Bausteine ein. Das eine
Makrozelle doch 56 Eingaenge hat, lernt man bald zu schaetzen (und wuenscht
noch mehr Eingaenge). Die JTAG Pins beim XC95XL sind "dedicated", man kann
sich also nicht den Weg verbauen.

Leider koennen die nur 3.3V am Ausgang erzeugen und in einer reinen
TTL-Umgebung ist das etwas knapp. Ich wollte zuerst die Xilinx XC95*
(ohne XL) nehmen, aber ich habe kein Programmiergeraet zum nachbauen
gefunden. Und einfach das von Altera nachzubauen, war mir dann doch zu
unsicher...

Irrtum: In einer reinen TTL Umgebung sind 3V3 perfekt (>2,0V) in einer
5V CMOS Umgebung ist es (fast) zuwenig -> HCT verwenden.

Martin
 
Jetz mal davon abgesehen: ich würde Dir emfehlen was besseres zu
nehmen. Warum nicht gleich ein kleines FPGA von Xilinx (so um die
20-30 EUR)? Die Software gibt's dafür auch kostenlos. Mit einem FPGA
wirst du wesentlich mehr freude haben, weil er viel größer und
umfangreicher ist. Ich habe es erst mit mehreren Klimmzügen geschafft
einen 32-bit Zähler in meinem MAX7064 zu Implementieren um die 40MHz
bis auf eine mit dem Auge sichtbare Blinkfrequenz zu teilen.
Hast du vielleicht mal einen Link oder einen Tip? (ich suche noch
Entwicklungsoftware und ein Programmierinterface)
Software wenn möglich nicht mit Zeitbeschränkung.

Grüsse

Michael
 
Thomas Matern schrieb:
Hi

: Naja, egal - dann muss ich eben mit 80 I/O auskommen :)

Den EPM7256B gibts doch auch im TQFP 144 mit mehr Pins.

Wie bereits geschrieben: ich habe den EPM7128S bereits vor mir liegen
(im TQFP-100 Gehaeuse).

Zieh in Deine Ueberlegungen auch die Xilinx XC95XL Bausteine ein. Das eine
Makrozelle doch 56 Eingaenge hat, lernt man bald zu schaetzen (und wuenscht
noch mehr Eingaenge). Die JTAG Pins beim XC95XL sind "dedicated", man kann
sich also nicht den Weg verbauen.


Leider koennen die nur 3.3V am Ausgang erzeugen und in einer reinen
TTL-Umgebung ist das etwas knapp. Ich wollte zuerst die Xilinx XC95*
(ohne XL) nehmen, aber ich habe kein Programmiergeraet zum nachbauen
gefunden.
findest du auf der Xilinx HP, simpler Puffer am Par.Port, kein Problem !
Webpack ist frei, kann VHDL, VERILOG und ABEL (klein aber fein)
falls du zu XC95xx und ABEL fragen hast, bitte ..

Bertram




--
Bertram Geiger <bgeiger@aon.at>
HTL-Bulme Graz, Austria
 
Hi

(ohne XL) nehmen, aber ich habe kein Programmiergeraet zum nachbauen
gefunden.


findest du auf der Xilinx HP, simpler Puffer am Par.Port, kein Problem !
Hast du dazu mal einen Link? Ich finde einfach nichts.
Das es so einfach gehen muss, was mir klar - aber die
genaue Pinbelegung waere schon schoen :) Ich koennte dann
ja einen umschaltbaren Altera<-->Xilinx Programmer basteln.

Webpack ist frei, kann VHDL, VERILOG und ABEL (klein aber fein)
Habe ich mir schon heruntergeladen und angesehen. Sieht wirklich
gut aus, aber ich finde einfach keinen Programmer... bitte, bitte.

Bye
Thomas
 
"Michael Petry" <micpetry@web.de> schrieb im Newsbeitrag
news:eek:prsu61krmsntlns@news.dlan.cinetic.de...
Jetz mal davon abgesehen: ich würde Dir emfehlen was besseres zu
nehmen. Warum nicht gleich ein kleines FPGA von Xilinx (so um die
20-30 EUR)? Die Software gibt's dafür auch kostenlos. Mit einem
FPGA
wirst du wesentlich mehr freude haben, weil er viel größer und
umfangreicher ist. Ich habe es erst mit mehreren Klimmzügen
geschafft
einen 32-bit Zähler in meinem MAX7064 zu Implementieren um die
40MHz
bis auf eine mit dem Auge sichtbare Blinkfrequenz zu teilen.

Hast du vielleicht mal einen Link oder einen Tip? (ich suche noch
Entwicklungsoftware und ein Programmierinterface)
Software wenn möglich nicht mit Zeitbeschränkung.
Ich bin kein FPGA experte, aber ich kann dir alles was ich weiss
sagen. Als software nimmt man den Xilinx Web-Pack. Der ist für CPLDs
und kleinere FPGAs uneingeschränkt benutzbar. Du musst nur einen
Lizenz-File bei Xilinx beantragen, und da tun sich die Herrschaften
schwieriger (in unserem Fall wenigstens) aber irgendwann bekommt man
es. Du musst dann schauen welche FPGAs es unterstützt und wie teuer
diese sind. FPGAs findest du bei www.avnet.com
 
Thomas Matern wrote:
Erm. Dumme Frage vermutlich, aber wo kriegt man sowas einzeln?

Max7000 --> Farnell
*gugg*

Xilinx XC95(XL) --> Reichelt.
Igit. Ne danke. Kollege hat mir die Xilinx-Software gezeigt, wenn ich
die mit 'ner aktuellen Quartusversion vergleiche... muß nich sein ^^;

MfG,
Maik
 

Welcome to EDABoard.com

Sponsor

Back
Top