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?
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.
> 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.
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.
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.
Was ist das für ein RAM-Controller, welches RAM, Technologie, Busbreiten, Anbindung? Ich nehme an MCB (da S6) und ein DDRx?
> 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.
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.
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?
Ist denn Chipscope überhaupt geeignet. Ist die Frequenz des MIG nicht viel zu schnell um damit Fehler zu finden?
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
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)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.