Hallo, mein "großes" Ziel ist es einen digitalen Lock-In zu "basteln". Hierfür habe ich ein DE2-115 und eine HSMC AD (65MSPS)/DA (125MSPS) Karte. Das Prinzip ist im angehängten Bild zu sehen. Ich möchte also einfach einen Sinus ausgeben, durch das DUT schicken und mit dem ADC wieder aufnehmen. Hierbei kann man schön alle Funktionen einzeln schreiben und auch testen. Ich bin noch am herumprobieren, bemerke aber jetzt schon dass es langsam unübersichtlich wird die ganzen VHDL files per "Component" einzuschließen. In vielen Tutorials wird bei Quartus ein "Block Symbol File" pro VHDL Datei erstellt und dann einfach in einem Diagramm zusammengefügt. Ist das bloß eine Spielerei oder macht es Sinn dieses Feature zu benutzen? Ich komme da nämlich ziemlich schnell durcheinander, da ich vorher die ganzen Pins im PIN-Planner eingegeben habe. Diese tauchen in diesem Blockfile aber nicht auf, und so bin ich schon in die ersten Fehler gerannt, da ich die PINs doppelt vergeben habe. Oder baut man zum Beispiel immer nur eine Komponente in die vorherige ein und zieht das dann durch? Also am Beispiel erstelle ich zunächst ein VHDL File für den Tiefpassfilter. Danach erstelle ich einen Multiplizierer in dem ich den Tiefpassfilter als Component einschließe. Davor dann der ADC bei dem Der Multilplizierer eingeschlossen wird usw... Auch nett finde ich das kleine Programm von ALTERA, bei dem man sagen kann welche Komponenten man am Board nutzt, und es wird dann eine Liste angelegt mit den entsprechenden PINs und Namen. Leider habe ich keine Ahnung wie ich diese benutzen soll. Kann mir da vielleicht jemand helfen? Mir kommt es ein wenig so vor als ob es 1000 Möglichkeiten gibt, z.B. Pins irgendwo anzuschließen. Leider sind die ganzen Beispielprogramme die mitgeliefert wurden in Verilog geschrieben, denn normal lerne ich am besten aus Beispielen. Hat jemand ein Beispiel, welches umfangreicher ist? Irgendwie findet man immer nur diese popeligen Beispiele wo es eine Entity, eine Architecture und dann noch eventuell ein Process vorkommen. Große Beispiele, damit man sieht wie es ein Profi macht, finde ich nicht :(
> Oder baut man zum Beispiel immer nur eine Komponente in die vorherige > ein und zieht das dann durch? Nein. Stellt dier eine Komponente wie ein IC vor: Dieses IC wird auf eine Basis-Leiterplatte gelötet und mit anderen ICs verbunden. Und diese Leiterplatte hat Anschlüsse nach aussen. Die Leiterplatte ist die Top-Level Entity, die ICs sind Components, die Anschlüsse nach aussen sind die Ports. Deine Vorgehensweise wird auch teilweise verwendet, wenn z.B. eine andere Leiterkarte mit einem Stecksockel auf die Basisleiterkarte gesteckt wird, oder wenn ein Hybrid-IC auf diese Basis-Leiterkarte aufgelötet wird. Solche Komponenten bestehen ihrerseits wieder aus Komponenten, die auf ihrer eigenen "Basisplatine" verdrahtet sind. In deinem Fall nimmst du einen Top-Level, bindest dort als Komponente einen Tiefpass, einen Multiplizierer und den Taktgenerator ein, instatiierst dann den Tiefpass 4 mal und den Multiplizierer 2 mal (wobei man den auch einfach mit dem * Operator realisieren könnte) und dann verdrahtest du in diesem Top-Level alles und fertig. So ähnlich mache ich das mit einer PWM-Einheit und einem Sinus-Generator dort: http://www.lothar-miller.de/s9y/archives/57-Sinusausgabe-mit-PWM.html
OK, danke dir. Also alles ganz normal einbinden. Deine Beispiele haben mir auch immer geholfen. Wie weist du die Pins zu?
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.