Szukasz biblioteki VHDL definiujący (+) operatora

O

omara007

Guest
kto wie, żadnego biblioteki VHDL definiujący (+) operatora tak można dodać 2 n-bitowych std_logic_vectors dostać zarówno SUM i prowadzić po prostu reprezentowane w (n +1)-bitowy std_logic_vector?
 
lib jest [IEEE.NUMERIC_STD] Jeśli FPG znak @ dv poszukiwania pliku: numeric_unsigned.vhd The Opis funkcji: library IEEE; IEEE.STD_LOGIC_1164.all wykorzystanie; IEEE.NUMERIC_STD.all wykorzystania; pakiet NUMERIC_UNSIGNED jest funkcja "+" ( L, R: std_logic_vector) std_logic_vector return; - podtyp Wynik: std_logic_vector (MAX (L'DŁUGOŚĆ R'LENGTH) -1 downto 0). - Wynik: unsigned dodatek z dwóch std_logic_vector wektorów, które mogą być o różnych długościach. Funkcja "+" (L: Integer; R: std_logic_vector) std_logic_vector return; - podtyp Wynik: std_logic_vector (R'LENGTH-1 downto 0). - Wynik: Dodaje liczbę całkowitą, L (może być dodatni lub ujemny), do std_logic_vector - który zakłada się być bez znaku R. Funkcja "+" (L: std_logic_vector; R: integer) std_logic_vector return; - podtyp Wynik: std_logic_vector (L'DŁUGOŚĆ-1 downto 0). - Wynik: Dodaje std_logic_vector wektor zakłada niepodpisany, L, do liczby całkowitej, R.. . . . .
 
thnx wymioty .. ale co król przedłużenia robi to (rozszerzenie) wsparcie? .. a jeśli jest więcej niż realizacji tego rozszerzenia (nie może być zero lub znak rozszerzenia) .. i jak może to wpłynąć na proces dodawania być podpisane lub niepodpisane? .. Powinienem wspomnieć podpisany / unsigned słowo przed operatorem? lub zadeklarować pakiet do tego?
 
Myślę, że .. library IEEE; ieee.std_logic_1164.all wykorzystania; ieee.std_logic_arith.all wykorzystania; ieee.std_logic_unsigned.all użycie lub skorzystaj ieee.std_logic_singed.all, to zrobi to ... Jedyną rzeczą u ahve zrobić, to jeśli ur wektory są 2 bity ... następnie określić wynikowy z 3 bitów.
 
No Jey .. to nie jest prawda .. jeśli u używane podpisane lub niepodpisane pakiety, u nie będzie mógł mieć wektor 3 bitów jako wypadkowa 2 wejściowych wektorów każdy jest 2-bity .. dobrym rozwiązaniem jest jeden, który został zaproponowany niedawno .. w którym rozszerzenie wejść .. ale musimy wiedzieć, na realizację słowa ROZSZERZENIA .. to jest zerowy przedłużenie lub rozszerzenie znak .. tak czy owak możemy ręcznie rozszerzenie wejść ..
 
myślę, że shoudl pracy .... nie jestem bardzo pewny ... dont mieć żadnego wniosku obrzęd VLSI pakiet teraz ze mną ... ale to powinno działać .... pomocą, b: w std_logic_vector (1 downto 0); c: na std_logic_vector (2 downto 0): proces zmienna x: std_logic_vector (2 downto 0) rozpocząć x: = a + b, c
 
Witaj przyjaciele, tu jest jeszcze jeden sposób, aby osiągnąć cel: Dołącz ieee.std_logic_unsigned.all ========== use ieee.std_logic_unsigned.all; ========== napisać kod w następujący sposób : ========== c: = ('0 '&) + ('0' & b); ========== gdzie aib są n wektorów bitowych ic jest n +1 wektor bitowy. Pozdrawiam, Jitendra
 
[Quote = jay_ec_engg] Proces zmienna x: std_logic_vector (2 downto 0) rozpocząć x: = a + b, c
 
następnie pokaże błąd ... jej nie syntezowalnych myślę .. nie jestem pewien ... ale problemem jest działem .. ów pewien ... nie u próbowali c
 
nr .. to nie będzie działać .. becasue realizację operatora + oznacza, że ​​2 argumenty i wynik są tej samej długości wektora ..
 

Welcome to EDABoard.com

Sponsor

Back
Top