Anzeigefehler in ISE 10.1 oder habe ich etwas übersehen?

Gast #1196929
Lesenswert?

Hallo,

ich bin gerade dabei eine kleine Schaltung mit hilfe eines CPLD noch 
weiter zu verkleinern. Im Prinzip funktioniert inzwischen alles wie 
gewünscht.
Was mich jedoch noch beunruhigt, ist die Tatsache, dass mir ISE 10.1 
einen Eingang zum Multiplexer scheinbar nicht "verdrahtet".
Im normalfall würde ich davon ausgehen, dass ich Mist gebaut habe, aber 
ich habe mir den Code inzwischen zig mal angesehen und nichts 
verdächtiges gefunden.
Das Problem ist im RTL Schematic sichtbar während im technology 
schematic alles zu stimmen scheint.
Die Synthese verläuft Fehler- und Warning- frei.
Die Simulation im ModelSim XE III 6.3c verläuft ebenfalls OK.

Ich habe den Multiplexer aus dem Projekr herausgelöst. Er sieht so aus:
1
entity CK_MUX is
2
  port(
3
    CK_SEL : in bit_vector (1 downto 0);
4
    CK_IN  : in bit_vector (3 downto 0);
5
    CK_OUT : out bit
6
  );
7
end entity CK_MUX;
8

9
architecture MUX of CK_MUX is
10
begin
11
  CMUX: process (CK_SEL, CK_IN)
12
  begin
13
    case CK_SEL is
14
      when "00"   => CK_OUT <= CK_IN(0);
15
      when "01"   => CK_OUT <= CK_IN(1);
16
      when "10"   => CK_OUT <= CK_IN(2);
17
      when others => CK_OUT <= CK_IN(3);
18
    end case;
19
  end process CMUX;
20
end architecture MUX;
Da ich nicht sicher bin, ob meine Beschreibung verständlich war, hänge 
ich hier noch ein PNG-Screenshot des Fehlers an.

In meinem VHDL Beispiel verwende ich die typen bit und bit_vector. Mit 
std_logic und std_logic_vector bekomme ich exakt das gleiche Ergebnis.
Auch wenn ich das ganze statt im process als nebenläufige Anweisung 
(select) definiere, bekomme ich auch dieses Ergebnis.

Hat jemand eine Idee woran das liegt?

lg. JK
Angehängte Dateien:
Gast #1197011
Lesenswert?

Hier ist mal mein Toplevel-Design mit deiner Komponente. Ich habe damit 
keinerlei Darstellungsprobleme auf unterschiedlichen Zoomstufen:
1
library IEEE;
2
use IEEE.STD_LOGIC_1164.ALL;
3
use IEEE.STD_LOGIC_ARITH.ALL;
4
use IEEE.STD_LOGIC_UNSIGNED.ALL;
5

6
---- Uncomment the following library declaration if instantiating
7
---- any Xilinx primitives in this code.
8
--library UNISIM;
9
--use UNISIM.VComponents.all;
10

11
entity TLD is
12
port(
13
  CK_SEL : in bit_vector(1 downto 0);
14
  CK_IN : in bit_vector(3 downto 0);
15
  CK_OUT : out bit
16
);
17
end TLD;
18

19
architecture Behavioral of TLD is
20
component CK_MUX is
21
  port(
22
    CK_SEL : in bit_vector (1 downto 0);
23
    CK_IN  : in bit_vector (3 downto 0);
24
    CK_OUT : out bit
25
  );
26
end component;
27

28
begin
29
  UUT: CK_MUX
30
  port map(
31
    CK_SEL => CK_SEL,
32
    CK_IN => CK_IN,
33
    CK_OUT => CK_OUT
34
  );
35

36
  
37
end Behavioral;
Gast #1198351
Lesenswert?

Ich habe jetzt den SP3 für v10.1 installiert. An der Darstellung hat das 
nichts geändert. Vielleicht werde ich noch ein Downgrade auf v9.x 
versuchen, wenn ich mehr Zeit habe.
Lassen sich mehrere ISE WebPack Versionen ohne Probleme parallel 
betreiben?

lg. JK
#1198546
Lesenswert?

Ich fahre auch ISE Webpack 10.1 SP3 und erhalte ebenfalls des öfteren 
derartige fehlerhafte Schematics. Ich halte das insbesondere deshalb für 
"ekelhaft", weil ich das Schaltbild zur Kontrolle meines Codes benutze: 
Ein- und dieselbe Sache in unterschiedlichen Darstellungsformen (VHDL 
und Schaltbild oder auch C-Code und generierter Assembler-Code) hilft 
mir sehr beim Schreibtischtest.

Bernhard
#1198559
Lesenswert?

JK wrote:

> Lassen sich mehrere ISE WebPack Versionen ohne Probleme parallel
> betreiben?

Prinzipiell ja, aber du musst die PATH Umgebungsvariable anpassen, also 
geht immer nur eine Version gleichzeitig. Wenn du die jeweils andere 
nehmen willst, musst du die Variable wieder ändern. Aber das lässt sich 
ja z.B. mit einer Batchdatei machen.
Gast #1198580
Lesenswert?

Hallo Christian,
es gibt das alternative SET -> XSET, damit kannst Du dir für die 
aktuelle Instanz ( Textprompt ) die Systemvariable PATH und XILINX und 
ggfls. XILINX_EDK setzen.

Du kannst dann die ISE allerdings nur aus dieser Textkonsole starten.

Gruss

Andreas Bergmann

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren