Ich möchte 2 Module,die einen gemeinsamen Bus teilen multiplexen. Die beide Module haben 2 Outputs und 1 Input gemeisam . Ansatz: FPGA Pins: F_out1,F_out2,F_in ----interne Module Modul A :pin_outA1,pin_outA2,pin_inA Modul B :pin_outB1,pin_outB2,pin_inB ---Interne Signale sel --Internes Auswahlsignal F_out1<= pin_outA1 when sel='0'else pin_outB1 ; --Modul A F_out2<= pin_outA2 when sel='0'else pin_outB2 ; --Modul B --Eingänge-- pin_inA <= F_in when sel='0' else 'Z'; --Modul A pin_inB <= F_in when sel='1' else 'Z'; --Modul B Ich hoffe ein wenig gut erklärt zu haben :) Wäre so korrekt oder habe ich da einen Denkfehler? Jamal,
Der Mux für die Ausgänge ist OK. Aber am Eingang wird das nix. Im FPGA/CPLD gibts kein 'Z', das geht nur an den Pins direkt, und da nur an INOUT oder OUT. Wenn, dann auf '0' bzw. (others => '0') bei einem Bus umschalten.
Christian R. schrieb: > Der Mux für die Ausgänge ist OK. Aber am Eingang wird das nix. Im > FPGA/CPLD gibts kein 'Z', das geht nur an den Pins direkt, und da nur an > INOUT oder OUT. Wenn, dann auf '0' bzw. (others => '0') bei einem Bus > umschalten. Danke für deine Antwort. Damit ich zwischen beide Eingänge korrekt umschalte wäre dann: --Eingänge-- pin_inA <= F_in when sel='0' else '0'; --Modul A pin_inB <= F_in when sel='1' else '0'; --Modul B ? danke
Jamal schrieb: > pin_inA <= F_in when sel='0' else '0'; --Modul A > pin_inB <= F_in when sel='1' else '0'; --Modul B oder auch pin_inA <= F_in and not sel; --Modul A pin_inB <= F_in and sel; --Modul B
Jamal schrieb: > Wäre so korrekt oder habe ich da einen Denkfehler? Ist es wirklich notwendig die Eingänge zu multiplexen? Oft ist es "unschädlich" beide Einheiten mitlaufen zu lassen. Duke
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.