Forum: FPGA, VHDL & Co. Signale nicht synthisieren lassen


von Andi Z. (duderino65)


Lesenswert?

hallo,

ich probiere gerade ein wenig mit diesem code rum:
1
architecture pllrtl of pll is
2
  
3
  signal D, Dd, Da, Q, Foo : std_logic;
4
  signal cnt : integer range 0 to 66000000 := 0;
5
6
begin
7
8
  Dd <= not(Q);
9
  Da <= not(Dd);
10
  D <= not(Da);
11
  Foo <= D xnor clk;
12
  
13
  process (Foo)
14
  begin
15
    if rising_edge(Foo) then
16
      Q <= D;
17
    end if;
18
  end process;
19
20
.......
21
22
end pllrtl;

habe mal einen "frequenzverdoppeler" gebaut. funktioniert auch alles 
wunderbar.  wie ihr seht hab ich oben ein paar inverter eingebaut die ja 
vom synthesetool wegoptimiert werden. wie kann ich dem synthesetool 
sagen das der die signale lassen soll?
leider find ich grad keine passenden attributes dafür.

verwende lattice ispLever7.2  Synplify  MachXO 256

mfg

Andi

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Ich kann dir nur mit Xilinx weiterhelfen, da heißt das Attribut KEEP.
Evtl. gibts da bei Lattice was ähnliches.

U.u. Mußt du noch an der Toolchain herumbiegen:
http://www.lothar-miller.de/s9y/categories/29-Ringoszillator
http://www.lothar-miller.de/s9y/archives/62-Testaufbau-Metastabilitaet.html

von Andi Z. (duderino65)


Lesenswert?

dankeschön!

ich habs nun gefunden. allerdings nicht in den datenblättern.

im verzeichnis C:\ispTOOLS7_2_STRT\synpbase\lib\vhd
des ispLever gibts die datei synattr.vhd

da stehen dann alle attribute drin sowie eine kleine erklärung.
1
        attribute syn_keep : boolean;
2
  attribute syn_keep of Da : signal is true;
3
  attribute syn_keep of Dd : signal is true;
so gehts nun :-D

mfg

Andi

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
Noch kein Account? Hier anmelden.