Xilinx AXI Custom IP Core

Gast #3747986
Lesenswert?
• ▲
▼
Hallo,

ich habe mal ein paar grundsätzliche Fragen zum AXI IP-Core von Xilinx.
Ich besitze seit einigen Wochen ein Zybo Board und wollte mir jetzt mal 
einen einfachen IP-Core bauen, welcher ein paar Werte bekommt, die Bits 
ein bisschen verändert und das Ergebnis dann auf den LEDs ausgibt.
Ich habe jetzt in meinem AXI Interface folgenden Custom Code eingefügt:
1
process( S_AXI_ACLK ) is
2
begin
3
    if (rising_edge (S_AXI_ACLK)) then
4
        if((slv_reg_wren = '1') and (axi_awaddr = "0000")) then
5
             Signal_Out <= S_AXI_WDATA(3 downto 0);
6
        elsif((slv_reg_wren = '1') and (axi_awaddr = "0001")) then
7
             Signal_Out <= "0101";
8
        end if;
9
    end if;
10
end process;

Die erste If-Abfrage funktioniert auch wunderbar...die zweite nicht. 
Jetzt verstehe ich noch nicht so ganz warum...
Ich habe ja einen AXI-Lite Core mit 4 Registern und einer Adressweite 
von C10000 - C1FFFF.
Wieso klappt es jetzt nicht wenn ich sage, dass die Adresse eins höher 
sein soll?
Ich greife über die normale Write-Funktion der Headerdatei vom SDK aus 
auf den Core zu:

LED_mWrite(Adresse, 0, 1)

Die erste Zahl ist die Adresse des Cores, die zweite der Adressoffset 
und die dritte die Daten.
Wenn ich den Adressoffset jetzt auf 1 setze sollte doch die Bedingung 
der zweiten If-Abfrage erfüllt sein oder sehe ich das falsch?

Und wofür sind dann die 4 Register in dem Core und wie kann ich die 
ansprechen? Oder werden die nur als "Zwischenspeicher" verwendet bis das 
Writesignal vom System kommt und die Logik die Daten ins Datenregister 
schreibt?
Hoffe hier kann mir einer bei den Fragen helfen :)
Arbeite leider noch nicht so lange mit FPGAs und habe dem entsprechend 
wenig / keine Erfahrung dazu.

Gruß
Daniel

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.