Artikel-ID: 000080821 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 21.12.2016

(vcom-1133) Typ: Missmatch auf Port gefunden

Umgebung

    Intel® Quartus® Prime Pro Edition
    Fließkommafunktionen Intel® FPGA IP

All

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Wenn Sie aufgrund eines Problems in der Intel® Quartus® Prime Pro Edition Software eine IP-Megacore mit ausgewählter VHDL generieren, können beim Kompilieren für simulation folgende Fehler auftreten:

Anzahl ** Fehler: ..vhd: (vcom-1133) Geben Sie "Missmatch" auf Port " ein.
# In der Komponente "" ist der Port-Typ "ieee.std_logic_1164.STD_LOGIC".
Anzahl in der Entität "" ist der Porttyp "ieee.std_logic_1164.STD_LOGIC_VECTOR"

 

 

Lösung

Um dieses Problem zu umgehen, müssen Sie das generierte RTL bearbeiten und die Datentypen sowohl in der Top-Instanz als auch im Testbench abgleichen.

 

Beispiel: Für ein Modul mit dem Namen "FP_TEST" würden Sie Folgendes tun:

Machen Sie die folgenden Änderungen in _tb.vhd

Von:

Architecture RTL von FP_TEST_tb ist
komponenten-FP_TEST ist
Port (
a: in std_logic_vector (63 auf 0) := (andere => "X"); --Eine
areset: in std_logic := "X";             --Zurücksetzen
b: in std_logic_vector (63 auf 0) := (andere => "X"); --B
clk: in std_logic := "X";             --Clk
                                                opSel: in std_logic := "X";            -- opSel
f: out std_logic_vector(63 downto 0) -- q
);
FP_TEST der Endkomponente;
...

fp_test_inst: Komponenten-FP_TEST
Port-Karte (
a => fp_test_inst_a_bfm_conduit_a, -- a.a
areset => fp_test_inst_areset_bfm_reset_reset, -- areset.reset
b => fp_test_inst_b_bfm_conduit_b, -- b.b
clk => fp_test_inst_clk_bfm_clk_clk, -- clk.clk
opSel => fp_test_inst_opsel_bfm_conduit_opsel(0), -- opSel.opSel
q => fp_test_inst_q_q -- q.q
);

An:

Architecture RTL von FP_TEST_tb ist
komponenten-FP_TEST ist
Port (
a: in std_logic_vector (63 auf 0) := (andere => "X"); --Eine
areset: in std_logic := "X";             --Zurücksetzen
b: in std_logic_vector (63 auf 0) := (andere => "X"); --B
clk: in std_logic := "X";             --Clk
                                                opSel: in std_logic_vector(0 auf 0) := (andere => "X"); -- opSel
f: out std_logic_vector(63 downto 0) -- q
);
FP_TEST der Endkomponente;

fp_test_inst: Komponenten-FP_TEST
Port-Karte (
a => fp_test_inst_a_bfm_conduit_a, -- a.a
areset => fp_test_inst_areset_bfm_reset_reset, -- areset.reset
b => fp_test_inst_b_bfm_conduit_b, -- b.b
clk => fp_test_inst_clk_bfm_clk_clk, -- clk.clk
                                             opSel => fp_test_inst_opsel_bfm_conduit_opsel, -- opSel.opSel
q => fp_test_inst_q_q -- q.q
);

 

Und die folgenden Änderungen an .vhd vornehmen


Von:

Entität FP_TEST ist
Port (
a: in std_logic_vector(63 auf 0 heruntergestuft) := (andere => "0"); -- a.a
areset: in std_logic := '0';             -- areset.reset
b: in std_logic_vector(63 downto 0) := (andere => '0'); --Bb
clk: in std_logic := "0";             -- clk.clk
                                opSel: in std_logic := "0";             -- opSel.opSel
f: out std_logic_vector(63 downto 0) -- q.q
);
FP_TEST der Endeinheit;

Architecture RTL von FP_TEST ist
FP_TEST_altera_fp_functions_160_xhvb5va der Komponente ist
Port (
clk: in std_logic := "X";             --Clk
areset: in std_logic := "X";             --Zurücksetzen
a: in std_logic_vector (63 auf 0) := (andere => "X"); --Eine
b: in std_logic_vector (63 auf 0) := (andere => "X"); --B
f: out std_logic_vector(63 downto 0);                    --Q
                                                opSel: in std_logic := "X" -- opSel
);
FP_TEST_altera_fp_functions_160_xhvb5va der Endkomponente;


An:

Entität FP_TEST ist
Port (
a: in std_logic_vector(63 auf 0 heruntergestuft) := (andere => "0"); -- a.a
areset: in std_logic := '0';             -- areset.reset
b: in std_logic_vector(63 downto 0) := (andere => '0'); --Bb
clk: in std_logic := "0";             -- clk.clk
                          opSel: in std_logic_vector(0 auf 0) := (andere => '0'); -- opSel.opSel
f: out std_logic_vector(63 downto 0) -- q.q
);
FP_TEST der Endeinheit;

Architecture RTL von FP_TEST ist
FP_TEST_altera_fp_functions_160_xhvb5va der Komponente ist
Port (
clk: in std_logic := "X";             --Clk
areset: in std_logic := "X";             --Zurücksetzen
a: in std_logic_vector (63 auf 0) := (andere => "X"); --Eine
b: in std_logic_vector (63 auf 0) := (andere => "X"); --B
f: out std_logic_vector(63 downto 0);                    --Q
                                                opSel: in std_logic_vector(0 auf 0) := (andere => 'X') -- opSel
);
FP_TEST_altera_fp_functions_160_xhvb5va der Endkomponente;

 

Dies soll in einer zukünftigen Version der Intel® Quartus® Prime Software behoben werden.

Zugehörige Produkte

Dieser Artikel bezieht sich auf 1 Produkte

Intel® Arria® 10 FPGAs und SoC FPGAs

1

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.