• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pomoc przy VHDL - Multiplekser z przełącznikiem i dodatkowym wyjsciem

Object Storage Arubacloud
0 głosów
125 wizyt
pytanie zadane 14 czerwca 2020 w Inne języki przez MlodyJavaS Użytkownik (500 p.)
edycja 14 czerwca 2020 przez MlodyJavaS

Witam

Mam problem z poniższym kodem. Mam do zbudowania multiplekser 8 bitowy, który ma dodatkowe wejście (dla 0 włącza multiplekser, dla 1 wyłącza) oraz dodatkowe wyjście (które jest negacją standardowego)

Nie wiem jak mogę to okodować, aby kod się kompilował, chce go skompilować a następnie zrobić symulacje. (Uzywam ISE WEBPACK).

Problemy z którymi nie mogę sobie poradzić:

* Jak przypisywać do wyjścia (not W) i Y wartość aktualnie wskazanej (przez SEL) zmiennej (D0-D7). Czy da się to wykonać w jednej linii? Lub jakkolwiek inaczej.

*Line 93. parse error, unexpected PROCESS, expecting IF

PS. Jeśli mój koncept bądź składnia są niepoprawne bardzo proszę o informacje.

schemat: https://eduinf.waw.pl/inf/prg/010_uc/74151.php

Na tą chwilę stworzyłem coś takiego:

Pozdrawiam.

	
----------------------------------------------------------------------------------
-- Company: 
-- Engineer: 
-- 
-- Create Date:    21:37:43 06/14/2020 
-- Design Name: 
-- Module Name:    Mux74151 - Behavioral 
-- Project Name: 
-- Target Devices: 
-- Tool versions: 
-- Description: 
--
-- Dependencies: 
--
-- Revision: 
-- Revision 0.01 - File Created
-- Additional Comments: 
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;

-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--use IEEE.NUMERIC_STD.ALL;

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

entity Mux74151 is
    Port ( 
			D0: in STD_LOGIC;
			D1: in STD_LOGIC;
			D2: in STD_LOGIC;
			D3: in STD_LOGIC;
			D4: in STD_LOGIC;
			D5: in STD_LOGIC;
			D6: in STD_LOGIC;
			D7: in STD_LOGIC;
			
			G:  in STD_LOGIC;
						
			SEL: in STD_LOGIC_VECTOR(2 downto 0);
			
			W: out STD_LOGIC;
			Y: out STD_LOGIC);
end Mux74151;

architecture Behavioral of Mux74151 is

begin
process (D0,D1,D2,D3,D4,D5,D6,D7,G,SEL) is
 begin
	if(G ='0' and SEL = "000") then
		  Y <= D0; -- i chce tu jednoczenie do W<= not Y
		else if (G ='0' and SEL="001") then
			Y <= D1 ; -- i chce tu jednoczenie do W<= not Y
		else if (G ='0' and SEL="010") then		
			Y <= D2 ; -- i chce tu jednoczenie do W<= not Y
		else if (G ='0' and SEL="011") then	
			Y <= D3 ; -- i chce tu jednoczenie do W<= not Y
		else if (G ='0' and SEL="100") then
			Y <= D4 ; -- ...
		else if (G ='0' and SEL="101") then	
			Y <= D5 ;
		else if (G ='0' and SEL="110") then
			Y <= D6; 
		else 	
		Y <= D7 ;
	end if;
		
		
	if(G ='1' and SEL = "000") then
		  W <= D0; -- i chce tu jednoczenie do Y<= not W
		else if (G ='1' and SEL="001") then
			W <= D1 ;  -- i chce tu jednoczenie do Y<= not W
		else if (G ='1' and SEL="010") then	
			W <= D2; -- i chce tu jednoczenie do Y<= not W
		else if (G ='1' and SEL="011") then		
			W <= D3;-- ...
		else if (G ='1' and SEL="100") then	
			W <= D4;
		else if (G ='1' and SEL="101") then	
			W <= D5;	
		else if (G ='1' and SEL="110") then	
			W <= D6;
		else 	
		W <= D7;
	end if;

end process;

end Behavioral;

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 245 wizyt
pytanie zadane 27 maja 2020 w Inne języki przez Wiciorny Ekspert (270,910 p.)
0 głosów
1 odpowiedź 631 wizyt
pytanie zadane 20 czerwca 2019 w Inne języki przez Michal5552 Początkujący (400 p.)
0 głosów
0 odpowiedzi 2,152 wizyt

92,632 zapytań

141,500 odpowiedzi

319,879 komentarzy

62,012 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...