-
Thread
Post-Map simulation mit ModelSim
Argh. std_logic_arith ist buggy, und falls ein coregen-Core noch sowas verwendet: einen weiten Bogen drum machen. Gibt einige Szenarien mit signed/unsigned und sign-extension, die bei std_logic_arith broken by
IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; --use IEEE.STD_LOGIC_UNSIGNED.ALL; use ieee.std_logic_signed.ALL; --USE ieee.math_real.all; --use IEEE.numeric_std.all; <--- rausnehmen [/vhdl]
-
Thread
Retriggerbares Treppenlicht - VHDL
nicht benötigt. - Sonst macht der Code noch nichts von dem was in der Aufgabe gefordert wird. - ieee.std_logic_arith.all und use ieee.std_logic_unsigned.all sind obsolet. Verwende die ieee.numeric_std.all . - Du kannst dir einige Klammern sparen. - Verwende einen ordentlichen Editor der dir auch die
nicht benötigt. - Sonst macht der Code noch nichts von dem was in der Aufgabe gefordert wird. - ieee.std_logic_arith.all und use ieee.std_logic_unsigned.all sind obsolet. Verwende die ieee.numeric_std.all . - Du kannst dir einige Klammern sparen. - Verwende einen ordentlichen Editor der dir auch die
-
Thread
Active-HDL: wie bekomme ich die Waveform angezeigt
[vhdl] use ieee.std_logic_unsigned.all; use ieee.numeric_std.all; [/vhdl] Never ever both together! Denn wenn du der std_logic_unsigned über die std_logic_arith ihre Arthmetikfunktionen mitgibst, dann bekommst du eigenartige
to type "UNSIGNED". # Error: COMP96_0064: toplevel.vhd : (10, 15): Unknown type. Vergiss die obsolete std_logic_math. Die numeric_std hat alles, was du brauchst: http://www.lothar-miller.de/s9y/categories/16-Numeric_Std Wenn du für interne Zähler integer mit passendem Range verwendest, wird das
-
Thread
Ausgangssignal eines FPGA basierten Tiefpasses
Alex K. schrieb im Beitrag #5944562: > use IEEE.STD_LOGIC_ARITH.ALL; > use IEEE.STD_LOGIC_UNSIGNED.ALL; https://www.mikrocontroller.net/topic/161722
Hans schrieb im Beitrag #5945036: > Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" Ja, und dort steht konkret: ... schrieb im Beitrag #4451663: > LIBRARY IEEE; > use IEEE.std_logic_1164.all; > --use IEEE.std_logic_unsigned.all; > --use IEEE.std_logic_arith.all
-
Thread
VHDL: Dezimale Konstante auf unsigned zuweisen
Jonas P. schrieb im Beitrag #5655509: > USE ieee.std_logic_arith.all; > USE ieee.numeric_std.all; Nimm nur eine der Mathebibliotheken. Niemals beide! Auf keinen Fall! Lass die alte obsolete std_logic_arith weg, die numeric_std hat alles, was du brauchst
> Lass die alte obsolete std_logic_arith weg, die numeric_std hat alles, > was du brauchst. Danke!
-
Thread
VHDL Grundlagen : Rechnen
will ich eine 24Bit Zahl mit einer 8 Bit Zahl multiplizieren. [vhdl] signal sineWaveSignal : std_logic_vector(15 downto 0); signal mixerSum : std_logic_vector(23 downto 0) ; signal amplitude : std_logic_vector(7 downto 0) ; ... mixerSum <= std_logic_vector(to_signed( to_integer(signed(sineWaveSignal
[code] entity simple is Port ( data : inout STD_LOGIC; o : out STD_LOGIC; clk : in STD_LOGIC ); end simple; architecture Behavioral of simple is begin process (clk) variable x: std_logic; begin if(rising_edge(clk)) then
-
Thread
Generischer Multiplexer in VIVADO als VHDL läuft nicht
In der Kürze der Zeit fällt mir schon mal das auf: se IEEE.std_logic_arith.all; use IEEE.std_logic_unsigned.all; ... use IEEE.NUMERIC_STD.ALL; Als ganz wichtiger Tipp: niemals die alte obsolete std_logic_arith zusammen mit der numeric_std verwenden. Nie!
mal etwa so anfangen und schauen, ob der Synthesizer das frisst: [vhdl] library IEEE; use IEEE.std_logic_1164.all; use IEEE.NUMERIC_STD.ALL; entity MUX_TEST is port( signal input : IN STD_LOGIC_VECTOR; signal sel : IN STD_LOGIC_VECTOR; signal outp : OUT STD_LOGIC_VECTOR
-
Thread
iCEcube2 / @N:Can't find top module!
= 10; signal lss : std_logic := '1'; -- aktive Low Slave Select signal hss : std_logic := '0'; -- aktive Hgh Slave Select signal res : std_logic := '1'; -- RESet of main shift reg signal sck : std_logic := '0'; --
>> use IEEE.std_logic_unsigned.all; >> use IEEE.NUMERIC_STD.ALL; > beep *beep* beep > > Bitte nur die ieee.numeric_std verwenden. > Begründung siehe hier: Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" Also ohne
-
Thread
freehdl, components, ambiguousness
Md M. schrieb im Beitrag #4496320: > use ieee.numeric_std.all; > use ieee.std_logic_arith.all; > use ieee.std_logic_unsigned.all; Schreibe 100 mal: Ich soll nicht std_logic_arith und std_logic_unsigned verwenden und erst recht nicht zusammen mit numeric_std
lightshow found! [/code] Lothar M. schrieb im Beitrag #4496409: > BTW: nimm zum Rechnen die numeric_std. Und NUR die. > http://www.lothar-miller.de/s9y/categories/16-Numeric_Std > Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" Alles klar. Eine großartige website hast du da.
-
Thread
VHDL Entprellung-Fehler
std_logic ); end Debounce; architecture Verhalten of Debounce is signal key_old : std_logic; signal key_now : std_logic; signal result : std_logic; signal counter
integer umwandeln" erklärt. > Siehe dazu auch den Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" Danke für den Tipp - habe das auch schon in meinen Files angeglichen! Ändert leider nichts daran dass mein vhdl Code noch nicht will.
-
Thread
Projektdokumentation DE0_Nano ADXL345 per I2C auslesen
Ausblick erwähnt. - Dafür hättest Du bei mir massiven Punktabzug bekommen: [vhdl] 4 USE ieee.std_logic_1164.all; 5 USE ieee.std_logic_arith.all; 6 USE ieee.std_logic_unsigned.all; [/vhdl] Hier kannst Du die Begründung nachlesen: http://www.mikrocontroller.net/topic/161722 Schade das es Profs
etwas ist Nahrung für die Zukunft und bringt uns weiter. --------------------------- Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" --------------------------- Was da drin steht darfst du nicht ernst nehmen und ist für deine Arbeit irrelevant. Der Duke Scarring hat nicht begriffen, das deine Arbeit anderen
-
Thread
Einfacher VHDL Zähler
Bibliotheken/Packages ansehen. Dort steht das drin: http://www.csee.umbc.edu/portal/help/VHDL/numeric_std.vhdl http://www.csee.umbc.edu/portal/help/VHDL/std_logic_arith.vhdl http://www.csee.umbc.edu/portal/help/VHDL/std_logic_unsigned.vhdl http://www.csee.umbc.edu/portal/help/VHDL/std_logic_signed.vhdl
nachvollziehen, wie man counter in VHDL > formuliert. Zu den dort verwendeten Bibliotheken ieee.std_logic_unsigned.all und ieee.std_logic_arith.all empfehle ich den https://www.mikrocontroller.net/topic/161722 und die Suche http://www.mikrocontroller.net/search?query=std_logic_arith+obsolete Und
-
Thread
Error (10327): VHDL error can't determine definition of operator ""+""
tmn schrieb im Beitrag #3728810: > library ieee; > use ieee.std_logic_1164.all; > use ieee.numeric_std.all; Dann verwendet man die Typen unsigned und signed zum Rechnen: [vhdl] library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; ...
IEEE.STD_LOGIC_ARITH.ALL kann sowas, gilt aber als obsolete. Folgende RefCard listet schön alle Funktionen der gängigen VHDL-Bibliotheken auf: http://www.gstitt.ece.ufl.edu/courses/eel4712/labs/1164pkg.pdf
-
Thread
VHDL Synthese und Simulation
weiterhin falsch ist? vielen dank! lg martin quellcode: [vhdl] LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.NUMERIC_STD.ALL; ENTITY ampelkreuzung IS PORT (sen1, sen2: IN STD_LOGIC; --EINGANGSSIGNAL
Kaffeetasse schrieb im Beitrag #3548674: > LIBRARY IEEE ; > USE IEEE.STD_LOGIC_1164.ALL; > USE IEEE.STD_LOGIC_ARITH.ALL; > USE IEEE.STD_LOGIC_UNSIGNED.ALL; > USE IEEE.NUMERIC_STD.ALL; Hach.... Viel hilft viel. Such mal hier im Forum nach "STD_LOGIC_ARITH obsolete"..
-
Thread
maximale Xilinx CPLD clock Frequenz
> use IEEE.std_logic_arith.all; -- import add/sub of std_logic_vector Oh, das fängt schon gut an... Such hier im Forum mal nach "std_logic_arith obsolete". Fazit: man rechnet nicht mit uneingeschränkten Vektoren
Hallo Lothar, habe nach "std_logic_arith obsolete" geschaut und muss zugeben, dass ich mit den libraries noc nicht durchblicke. Ich denke das werde ich lernen müssen. Mein Zähler heißt t_cnt. Zum Zeitpunkt des Schnappschusses
-
Thread
Variable Wert aus Array zuweisen
proviere ich , wenn ich das andere zum laufen bekommen haben [vhdl] library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; use ieee.numeric_std.all; entity Steuer is Port ( Takt : in STD_LOGIC; ZEILE : out STD_LOGIC_VECTOR
Das spart natürlich die Abfrage ob das Ende erreicht ist . [VHDL] library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; use ieee.numeric_std.all; entity Steuer is Port ( TAKT : in STD_LOGIC; ZEILE : out STD_LOGIC_VECTOR
-
Thread
von langsamer in schnellere taktdomain
Lothar Miller schrieb im Beitrag #3430893: > Oh nein, nicht schon wieder... > Siehe den Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" Du wirst aber auch nicht müde...;-) Ich muss ja gestehen, dass obwohl ich den Beitrag kenne, ich das Teil seit Jahren weiter verwende. Probleme sind mir daraus noch nie
std_logic_vector(G_NUM_SIG-1 downto 0) ); end entity EDGE_DETECT; architecture rtl of EDGE_DETECT is signal S_CHECK_D0 : std_logic_vector(G_NUM_SIG-1 downto 0); signal S_CHECK_D1 : std_logic_vector
-
Thread
LED Dimmer Projekt
ist dein geringstes Problem... Was mir so beim drueberfliegen aufgefallen ist: [vhdl] USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.NUMERIC_STD.ALL; [/vhdl] Wer bringt euch so einen SCHEISS bei? Such' mal nach sowas wie 'std_logic_arith
als Signale zu deklarieren. Und zwar nicht als 'integer' (sind nicht per se schlecht), sondern als std_logic(_vector) und unsigned. Dann kriegst du auch eher ein Gefuehl, was du da wirklich baust. Und einen Simulator hat dein Design noch nie gesehen, stimmts? Weil ohne Initialisierung schmeisst der
-
Thread
8bit-Computing mit FPGA
p1ouk, p1oux, p1ouy, p1ouz, p1oua, p1sn2, p2sn2, p3sn2, p1sn1, p1sn0, phsn0 : std_logic; signal wpp, epsum, wrr, wqq, we1, we3, wopa, wfa, wha, wvv, evvw, evvzo, evvcy, evvcn, wka, ekaa, ekac, ekad, ekasu, ekant, ekaxr, ekaw, wkb,
q1opa, q1sef, q2sef, q3sef, q1opz, q1sn2, q1sn1, q1sn0 : std_logic; [/vhdl] Und keiner der über 400 Signalnamen ist länger als sechs Zeichen, damit man nicht soviel tippen muß...
-
Thread
FIR Filter aus CoreGen einbinden
versucht einzubinden. Mein Quellcode sieht derzeit wie folgt aus: [vhdl] library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity FilterTM is -- Hier werden die Ausgangsports definiert. port ( clk : in std_logic; -- Clock
Micha schrieb im Beitrag #2695384: > use IEEE.STD_LOGIC_ARITH.ALL; > use IEEE.STD_LOGIC_UNSIGNED.ALL; Die Bibliotheken brauchst Du hier gar nicht. Außerdem siehe: http://www.mikrocontroller.net/topic/161722 Duke P.S.: Die Warnungen würde
-
Thread
Zuweisung klappt nicht innerhalb case construct
kontruiere, Xilinx will nicht. Normalerweise verwende ich z.B. sowas: [vhdl] constant XYZ : std_logic_vector (10 downto 0) := STD_LOGIC_VECTOR(to_unsigned( 456,11)); [/vhdl] Das hat aber hier im case nicht geklappt. Hilfsweise benutze ich oft auch sowas: [vhdl] value_sx <= STD_LOGIC_VECTOR
gibt der VHDL-Compiler aus? Wahrscheinlich ist das Problem die zweite Bibliothek. use ieee.std_logic_unsigned.all; Diese wird in Verbindung mit der Bibliothek "std_logic_arith" benutzt, welche als obsolete gehandelt wird. Siehe auch http://www.mikrocontroller.net/topic/161722. Werden diese
-
Thread
Rotary Button
da sieht ISE keine Ausgänge und optimiert es einfach weg. >entity top_level is >port(CLK50 : in std_logic; > ROT_A, ROT_B : in std_logic > ); >end top_level;
>library IEEE; >use IEEE.STD_LOGIC_1164.ALL; >use IEEE.STD_LOGIC_ARITH.ALL; >use IEEE.STD_LOGIC_UNSIGNED.ALL; >use IEEE.NUMERIC_STD.ALL; Aaahhh.... Siehe (u.a.): "IEEE.STD_LOGIC_ARITH.ALL obsolete" http://www.mikrocontroller.net
-
Thread
Berechnungen in VHDL (signed/unsigned/integer)
negativ ist. Mein (recht kläglicher) Versuch war folgender: entity test is port( clk : in std_logic; rst_n : in std_logic; -- ... X1 : in std_logic_vector(31 downto 0); X2 : in std_logic_vector(31 downto 0); X3 : in std_logic_vector(31 downto 0); X4 : in std_logic_vector
Verwende ersteinmal die richtigen Bibliotheken: Siehe Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" http://www.mikrocontroller.net/topic/161722 Duke
-
Thread
Custom IP-Core für Mittelwert/Standardabweichung
Nicht, dass ich eine Ahnung vom Microblaze hätte... Trotzdem: [vhdl] library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; use ieee.numeric_std.all; [/vhdl] Böse Sache... Wurde dieser Header tatsächlich automatisch erzeugt? lenny schrieb
Lothar Miller) Siehe den Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete" Und einige mehr... http://www.mikrocontroller.net/topic/161722#new
-
Thread
Feedback für Drehgeber Design
für mich gleich viel verständlicher aus. Lothar Miller schrieb im Beitrag #2193689: >> use IEEE.STD_LOGIC_1164.ALL; >> use IEEE.STD_LOGIC_UNSIGNED.ALL; >> use ieee.numeric_std.ALL; > Ach nein, nicht schon wieder. In welchem Buch steht das so? > Siehe den Beitrag "IEEE.STD_LOGIC_ARITH.ALL obsolete
für einen 4-Bit Zähler steht: > use IEEE.STD_LOGIC_1164.ALL; > use IEEE.STD_LOGIC_UNSIGNED.ALL; Da fehlt aber explizit die NUMRIC_STD, und darum gings mir. Entweder die alten Synopsys-Libs > use IEEE.STD_LOGIC_1164.ALL; > use IEEE.STD_LOGIC_UNSIGNED.ALL
-
Thread
umwandlung BCD in Bin
Tipps zu geben. hier ist das Programm , die umwandlung bin in BCD : library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity BinzuBCD is Port ( Clk : in STD_LOGIC; Init : in STD_LOGIC; Rst: in STD_LOGIC
bcd_vect(11 downto 8))*100; h := h + to_integer(unsigned(bcd_vect(15 downto 12))*1000; result <= std_logic_vector(to_unsigned(h,16)); end process; [/vhdl] > use IEEE.STD_LOGIC_ARITH.ALL; > use IEEE.STD_LOGIC_UNSIGNED.ALL; Vergiss die alten obsoleten Synopsys-Libs am besten schnell wieder,
-
Thread
Multisim Fehler
>Die gerne noch verwendeten Quasi-Industrie-Standards der Synopsis-Lib >sind schon geraume Zeit obsolete. >library IEEE; >use IEEE.STD_LOGIC_1164.ALL; >use IEEE.STD_LOGIC_ARITH.ALL; >use IEEE.STD_LOGIC_UNSIGNED.ALL; >Statt dessen sollte die Numeric_Std Library verwendet werden. Diese ist >herstellerunabhängig
/tb_sinc3_filter/inst_0 Ich helfe mir so: [pre] # simulation start script do wave.do set StdArithNoWarnings 1 set NumericStdNoWarnings 1 run 0 ps set StdArithNoWarnings 0 set NumericStdNoWarnings 0 run -all [/pre] @bko: Auch ieee.numeric_std spuckt solche Warnungen aus... Duke
-
Thread
Einfacher Zähler in VHDL mit Spartan 3 Starter Board
werden. Alle Zähler brauchen einen Takt und Speicherelemente. Entweder die hier: > use IEEE.std_logic_1164.all; > use ieee.std_logic_arith.all; Oder besser die: > use IEEE.NUMERIC_STD.ALL; Aber niemals beide zusammen! Zu den Gründen such mal hier im Forum nach "std_logic_arith obsolete": http://www.mikrocontroller.net/search?query=std_logic_arith+obsolete > variable dz_buff: STD_LOGIC_VECTOR(7 downto 0); > dz_buff:=dz_buff+1; Mit Vektoren rechnet man nicht. Dafür gibt es die Datentypen signed/unsigned und integer. Zur
-
Thread
IRMP - Infrared Multi Protocol Decoder
*) [/code] und das ergibt ein make [code]avr-gcc -g -Os -mmcu=atmega168 -DF_CPU=20000000UL -std=gnu99 -fshort-enums -MD -MP -MF .dep/main.o.d -Wall -W -Wchar-subscripts -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wstrict-prototypes -Wshadow -Wbad-function-cast -Winline -Wpointer-arith
-adhlns=main.lst -DDEBUG -c -o main.o main.c avr-gcc -g -Os -mmcu=atmega168 -DF_CPU=20000000UL -std=gnu99 -fshort-enums -MD -MP -MF .dep/irmp.o.d -Wall -W -Wchar-subscripts -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wstrict-prototypes -Wshadow -Wbad-function-cast -Winline -Wpointer-arith
-
Thread
IEEE.STD_LOGIC_ARITH.ALL obsolete
> ... das IEEE.STD_LOGIC_ARITH.ALL obsolet ist. > (Zitat Lothar Miller :D ) Ein schönes Zitat.... Sagen wir mal so: für mich ist sie obsolote, weil herstellerabhängig und doppeldeutig. Mein Anhaltspunkt ist der, dass
Von mir aus: [VHDL] LIBRARY IEEE; use IEEE.std_logic_1164.all; --use IEEE.std_logic_unsigned.all; --use IEEE.std_logic_arith.all; use IEEE.NUMERIC_STD.ALL; [/VHDL]
-
Thread
Tips für Einstieg CPLD
Untermodulen hinbekommen in Instanzen: [vhdl] -- CPLD_IO (Top-Module) library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -------------------------------------------------------------------------------- -- Main-Module ----------------
Val1(15); LED(7) <= Val1(16); end Behavioral; [/vhdl] [vhdl] library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -------------------------------------------------------------------------------- -- programmierbare Time-Base --