www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Mig für Spartan6


Important announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: René D. (Firma: www.dossmatik.de) (dose)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Hat jemand einen Beispielcode in VHDL wie man den Ram Controller in den 
Code einbindet?
Ich habe von XIlinx das XTP039 vollführt und leider endet die Erklärung 
in CHipscope. In dem Dokument fehlt noch die Codeeinbindung.

Ich habe einen 128bit breiten Bus erzeugt. Hätte auch andere Busbreiten 
im letzen Schritt erzeugen können.

Ich kann mir grade nicht vorstellen einen 32bit auf einen 128bit breiten 
Bus zu mappen. Wenn man es mal gesehen hat dann ist es sicher trivial. 
Oer habe ich mir die falsche Breite doch erzeugt?

Autor: hjk (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Langsam mit den jungen Pferden, was hast du gemacht und was funktioniert 
und was nicht?

So wie das klingt schaffst du es den MIG inklusive Hardware soweit in 
Betrieb zu nehmen das du mit Chipscope kucken kannst und bekommst 
sinnvolle Ergebnisse.

Falls ja, was fehlt dir noch? Damit sind doch 99% aller schwierigen 
Aufgaben geschafft.

Autor: Dose (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
> So wie das klingt schaffst du es den MIG inklusive Hardware soweit in
> Betrieb zu nehmen das du mit Chipscope kucken kannst und bekommst
> sinnvolle Ergebnisse.

Theoritsch vermutlich.

Der Haken: Ich habe kein Chipscope. Den Schritt muss ich übersprungen. 
Da das Folgende in der Erklärung fehlt, springe ich gerade ins leer.

Autor: hjk (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Das ist schade. Einen Speicher ohne Chipscope mit dem MIG in Betrieb 
nehmen halte ich für extrem schwierig. Endweder es klappt auf Anhieb 
oder du hast sehr schlechte Karten.
Außer es ist ein Evalboard, dann ist das Risiko ja lediglich da du beim 
generieren was falsch gemacht hast.

Hoffe du hast wenigstens einen Logicanalyzer und kannst ein wenig damit 
beobachten.

Nächster Schritt ohne Chipscope is mMn: falls du es nicht eh schon hast, 
bau dir einen Selbsttest und leg dir den Fehlercounter auf LEDs oder so.

Ein einfacher reicht für den Anfang, z.b. Adresse als Daten speichern, 
zurücklesen und vergleichen.

Unbedingt dabei die Errorflags beobachten. (LA oder Oszi extrem 
hilfreich)


Ohne Chipscope wirst du im Fehlerfall wohl nicht drumrumkommen dir 
selbst ein Design zu bauen das die Chipscope Bits entgegen nimmt(Input) 
als auch wieder ausgibt.

Autor: Dose (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
hjk schrieb:

> Außer es ist ein Evalboard, dann ist das Risiko ja lediglich da du beim
> generieren was falsch gemacht hast.
SP601 da sollte die Hardware schon mal lauffähig sein.

> Hoffe du hast wenigstens einen Logicanalyzer und kannst ein wenig damit
> beobachten.
Bis jetzt habe ich alles auf UART rausgeschmissen. Bin auch ohne 
Logicanalyzer auch schon in die 100Mhz gekommen. Mit simulieren kann 
schon vieles ausschließen.
Leider gibt es vom Scheicherinterface kein VHDL Model :-<


> Nächster Schritt ohne Chipscope is mMn: falls du es nicht eh schon hast,
> bau dir einen Selbsttest und leg dir den Fehlercounter auf LEDs oder so.

Genau sowas suche ich. Das wäre schonmal was.

Autor: J. S. (engineer) Benutzerseite
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Was ist das für ein RAM-Controller, welches RAM, Technologie, 
Busbreiten, Anbindung?

Ich nehme an MCB (da S6) und ein DDRx?

Autor: René D. (Firma: www.dossmatik.de) (dose)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
> Ich nehme an MCB (da S6) und ein DDRx?
Genau MCB.

Im Schaltplan steht EDE1116ACBG_8E_E Hersteller ELPIDA.
Elpida kann ich auch auf dem Gehäuse lesen.
Das ist ein 1Gbit DDR2 SDRAM   64Mx16bit.

Autor: hjk (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
ein VHDL modell brauchst du auch nicht:

- nimm das Design vom MIG inklusive Verilog Modell und simulier es mit 
ISIM
- häng deine eigene Logik davor und simulier es mit ISIM
- ersetze den MIG durch eine von dir geschriebene Entity für die 
Testbench, welche funktional das gleiche tut aber in vhdl geschrieben 
ist.
Z.b. array das nur die unteren 8bit adressen = 256 Speicherzellen 
beinhält.

Jetzt kannst du den Core nutzen und in der Simulation den mit dem 
funktionalen Modell ersetzen.

Mit Evalboard kannst du dir eh sicher sein das du nicht irgentwelche 
Boardprobleme hast, sehe da wenig Risiko.

Autor: Dose (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Werde es mal so probieren. Klingt plausibel.



Andere Frage: Chipscope wie kommt man an eine günstige Version?

So ein großes Entwicklungspaket wo es im Bündel  mit eingepackt ist, 
wollte ich mir nicht zulegen.

Gibt es das auch einzeln?

Autor: Sebastian (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Ist denn Chipscope überhaupt geeignet. Ist die Frequenz des MIG nicht 
viel zu schnell um damit Fehler zu finden?

Autor: Duke Scarring (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Sebastian schrieb:
> Ist denn Chipscope überhaupt geeignet. Ist die Frequenz des MIG nicht
> viel zu schnell um damit Fehler zu finden?
An den Signalen/Pins, die zum Chip gehen, wirst Du mit Chipscope nicht 
viel ausrichten können.
Aber der MIG bietet ja Statussignale (z.B. calib_done) an. Auch die 
Statussignale von cmd-, wr- und rd- FIFO dürften nicht ganz 
uninteressant sein.

Duke

Autor: Weltbester FPGA-Pongo (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Man könnte den Memory Core wrappen und durchemulieren. Dann weiss man 
zumindest, dass er funktionell richtig arbeitet.

Ich glaube aber eher, dass man hier die Ports vermessen muss. Dazu 
eignet sich jeder echte Logic Analyzer.

(wer benutzt schon Chip Scope)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel




Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder GIF-Format hochladen.
Siehe Bildformate
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net