Sei sulla pagina 1di 11

DISEO DIGITAL VHDL

MULTIPLEXOR

Los multiplexores son circuitos combinacionales con varias entradas y una nica salida de datos, estn dotados de entradas de control capaces de seleccionar una, y slo una, de las entradas de datos para permitir su transmisin desde la entrada seleccionada hacia dicha salida. En el campo de la electrnica el multiplexor se utiliza como dispositivo que puede recibir varias entradas y transmitirlas por un medio de transmisin compartido. Para ello lo que hace es dividir el medio de transmisin en mltiples canales, para que varios nodos puedan comunicarse al mismo tiempo. Una seal que est multiplexada debe demultiplexarse en el otro extremo. Segn la forma en que se realice esta divisin del medio de transmisin, existen varias clases de multiplexacin.

Estos circuitos combinacionales poseen lneas de entrada de datos, una lnea de salida y n entradas de seleccin. Las entradas de seleccin indican cul de estas lneas de entrada de datos es la que proporciona el valor a la lnea de salida. Tambin se pueden construir multiplexores con mayor nmero de entradas utilizando multiplexores de menos entradas, utilizando la composicin de multiplexores. En electrnica digital, es usado para el control de un flujo de informacin que equivale a un conmutador. En su forma ms bsica se compone de dos entradas de datos ( A y B), una salida de datos y una entrada de control. Cuando la entrada de control se pone a 0 lgico, la seal de datos A es conectada a la salida; cuando la entrada de control se pone a 1 lgico, la seal de datos B es la que se conecta a la salida. El multiplexor es una aplicacin particular de los decodificadores, tal que existe una entrada de habilitacin (EN) por cada puerta ANDy al final se hace un OR entre todas las salidas de las puertas AND. La funcin de un multiplexor da lugar a diversas aplicaciones: 1. Selector de entradas. 2. Serializador: Convierte datos desde el formato paralelo al formato serie. 3. Transmisin multiplexada: Utilizando las mismas lneas de conexin, se transmiten diferentes datos de distinta procedencia. 4. Realizacin de funciones lgicas: Utilizando inversores y conectando a 0 o 1 las entradas segn interese, se consigue disear funciones complejas, de un modo ms compacto que con las tradicionales puertas lgicas.

DISEO DIGITAL VHDL

RTL SCHEMATIC MUX

DISEO DIGITAL VHDL

Mux2to

-- Module Name:
-- Project Name:

Mux2to1 - Behavioral

library IEEE; use IEEE.STD_LOGIC_1164.ALL; --Libreria estndar IEEE 1164 define una unidad de diseo del paquete que contiene declaraciones que apoyan una representacin uniforme de un valor lgico en una descripcin de hardware VHDL. Fue patrocinado por el Comit de Normas de automatizacin de diseo del Instituto de Ingenieros Elctricos y Electrnicos (IEEE). entity Mux2to1 is --Declaracin de los Puertos de entradas y salidas.

Port ( I0 : in STD_LOGIC_VECTOR (3 downto 0);--Puerto de entrada de tipo vector de 4 bit. I1 : in STD_LOGIC_VECTOR (3 downto 0); --Puerto de entrada de tipo vector de 4 bit. S : in STD_LOGIC; --Puerto de entrada de tipo logico de 1 bit. Y : out STD_LOGIC_VECTOR (3 downto 0));--Puerto de salida de tipo vector de 4 bit. end Mux2to1; architecture comportamiento of Mux2to1 is
interna del mdulo o de su comportamiento.

--Fin de la declaracin de puertos.


--descripcin detallada de la estructura

begin process (I0, I1, S) begin if S= '0' then Y <= I0; else Y<= I1; end if; end process; end comportamiento;

--Comienzo del process --mandamos a traer los puertos declarados --Comienzo de la condicin.

DISEO DIGITAL VHDL

REG 4

RTL SCHEMATIC REG 4

DISEO DIGITAL VHDL

REG 4

-- Company: -- Engineer: -- Design Name: -- Module Name: -- Project Name:

REG4 - Behavioral

library IEEE; use IEEE.STD_LOGIC_1164.ALL;--Libreria estndar IEEE 1164 define una unidad de diseo del paquete que contiene declaraciones que apoyan una representacin uniforme de un valor lgico en una descripcin de hardware VHDL. Fue patrocinado por el Comit de Normas de automatizacin de diseo del Instituto de Ingenieros Elctricos y Electrnicos (IEEE). entity REG4 is --Inicio de la entidad REG 4 generic(n: integer :=4);--GENERIC define y declara propiedades o constantes del mdulo. Las constantes declaradas en esta seccin son como los parmetros en las funciones de cualquier otro lenguaje de programacin, por lo que es posible introducir valores, en caso contrario tomar los valores por defecto. Port ( enable : in STD_LOGIC;--Declaracion de puerto de entrada llamado enable de tipo logico de 1 bit clk : in STD_LOGIC;--Declaracion de puerto de entrada llamado clk de tipo logico de 1 bit E : in STD_LOGIC_VECTOR (3 downto 0):="0000";--Declaracion de puerto de entrada llamado E de tipo vector de 4 bit S : out STD_LOGIC_VECTOR (3 downto 0));--Declaracion de puerto de entrada llamado S de tipo vector de 4 bit end REG4; architecture estructural of REG4 is--descripcin detallada de la estructura interna del mdulo o de su comportamiento. component flipfloptipoD is --Se manda a traer flip flop. port (enable,clk: in std_logic;--Declaracion de puertos enable y clk,logicos de entrada de 1 bit D:in std_logic:='0';--Declaracion de puerto D de tipo logico de entrada de 1 bit con valor de 0. Q: out std_logic);--Declaracion de puerto Q de tipo logico de salida de 1 bit. end component; begin --Comienzo del generate generate_Reg4 : for i in 0 to n-1 generate --Parametrizacion de REG 4. El generate normalmente utiliza para crear una instancia de "conjuntos" de los componentes. El parmetro generate puede ser utilizado para seales de tipo array de ndice asociados con los puertos de componentes U: flipfloptipoD port map (D=>E(i),Q=>S(i),clk=>CLK,enable=>enable); -- instanciacion de asignar las seales de entradas y salidas mediante la palabra PORT MAP de D en E, Q en S, clk en CLK, enable en enable, hacia U. end generate; end estructural;

DISEO DIGITAL VHDL

ROM
La memoria de solo lectura, conocida tambin como ROM (acrnimo en ingls de read-only memory), es un medio de almacenamiento utilizado en ordenadores y dispositivos electrnicos, que permite slo la lectura de la informacin y no su escritura, independientemente de la presencia o no de una fuente de energa. Los datos almacenados en la ROM no se pueden modificar, o al menos no de manera rpida o fcil. Se utiliza principalmente en su sentido ms estricto, se refiere slo a mscara ROM -en ingls, MROM- (el ms antiguo tipo de estado slido ROM), que se fabrica con los datos almacenados de forma permanente y, por lo tanto, su contenido no puede ser modificado de ninguna forma. Sin embargo, las ROM ms modernas, como EPROM y Flash EEPROM, efectivamente se pueden borrar y volver a programar varias veces, aun siendo descritos como "memoria de slo lectura" (ROM).

Como la ROM no puede ser modificada (al menos en la antigua versin de mscara), solo resulta apropiada para almacenar datos que no necesiten ser modificados durante la vida de este dispositivo. Con este fin, la ROM se ha utilizado en muchos ordenadores para guardar tablas de consulta, utilizadas para la evaluacin de funciones matemticas y lgicas. Esto era especialmente eficiente cuando la unidad central de procesamiento era lenta y la ROM era barata en comparacin con la RAM. De hecho, una razn de que todava se utilice la memoria ROM para almacenar datos es la velocidad, ya que los discos siguen siendo ms lentos. Y lo que es an ms importante, no se puede leer un programa que es necesario para ejecutar un disco desde el propio disco. Por lo tanto, la BIOS, o el sistema de arranque oportuno del PC normalmente se encuentran en una memoria ROM. No obstante, el uso de la ROM para almacenar grandes cantidades de datos ha ido desapareciendo casi completamente en los ordenadores de propsito general, mientras que la memoria Flash ha ido ocupando este puesto.

DISEO DIGITAL VHDL

RTL SCHEMATIC ROM

DISEO DIGITAL VHDL

ROM
-- Design Name: -- Module Name: -- Project Name: ROM16to4 - Behavioral

library IEEE; use IEEE.STD_LOGIC_1164.ALL;--Libreria estndar IEEE 1164 define una unidad de diseo del paquete que contiene declaraciones que apoyan una representacin uniforme de un valor lgico en una descripcin de hardware VHDL. Fue patrocinado por el Comit de Normas de automatizacin de diseo del Instituto de Ingenieros Elctricos y Electrnicos (IEEE). entity ROM16to4 is--Inicio de la entidad ROM Port ( dir : in STD_LOGIC_VECTOR (3 downto 0);--Declaracion de puerto de entrada llamado dir de tipo vector de 4 bit. data : out STD_LOGIC_VECTOR (3 downto 0));--Declaracion de puerto de salida llamado data de tipo vector de 4 bit. end ROM16to4; architecture comportamiento of ROM16to4 is--descripcin detallada de la arquitectura interna del mdulo o de su comportamiento. begin--Comienzo del process. process (dir) begin --Comienzo del case case dir is when "0000" => data <= "0001";--instanciaciones de valores binarios en data dependiendo los valores de entrada. when "0001" => data <= "0010"; when "0010" => data <= "0100"; when "0011" => data <= "0101"; when "0100" => data <= "1101"; when "0101" => data <= "0100"; when "0110" => data <= "0111"; when "0111" => data <= "1110"; when "1000" => data <= "0011"; when "1001" => data <= "1111"; when "1010" => data <= "0110"; when "1011" => data <= "1000"; when "1100" => data <= "0001"; when "1101" => data <= "0101"; when "1110" => data <= "0100"; when "1111" => data <= "0110"; -- se cambio por 0011 when others => data <= "0001"; end case; end process; end comportamiento;

DISEO DIGITAL VHDL

UNIDAD DE MEMORIA
-- Company: -- Engineer: -- Design Name: -- Module Name: -- Project Name:

U_Mem - Behavioral

library IEEE; use IEEE.STD_LOGIC_1164.ALL;--Libreria estndar IEEE 1164 define una unidad de diseo del paquete que contiene declaraciones que apoyan una representacin uniforme de un valor lgico en una descripcin de hardware VHDL. Fue patrocinado por el Comit de Normas de automatizacin de diseo del Instituto de Ingenieros Elctricos y Electrnicos (IEEE). entity U_Mem is--Inicio de la entidad de U_MEM Port ( clk : in STD_LOGIC;--declaracion de puerto de entrada llamado clk de tipo logico de 1 bit. en1 : in STD_LOGIC;--declaracion de puerto de entrada llamado en1 de tipo logico de 1 bit. en2 : in STD_LOGIC;--declaracion de puerto de entrada llamado en2 de tipo logico de 1 bit. out_mem : inout STD_LOGIC_VECTOR (3 downto 0);--Este modo se utiliza para seales bidireccionales. Se emplea en salida con tres estados. Se puede asignar como sustituto de los tres modos anteriores, pero no se aconseja pues dificulta la comprensin del programa. clk_pc: in std_logic;--declaracion de puerto de entrada llamado clk_pc de tipo logico de 1 bit. selec : in STD_LOGIC);--declaracion de puerto de entrada llamado select de tipo logico de 1 bit end U_Mem; architecture estructural of U_Mem is--descripcin detallada de la estructura interna del mdulo o de su comportamiento. component ROM16to4 is--declaracion de componentes. Port ( dir : in STD_LOGIC_VECTOR (3 downto 0);--declaracion de puerto de entrada llamado dir de tipo vector de 4 bit. data : out STD_LOGIC_VECTOR (3 downto 0));--declaracion de puerto de salida llamado data de tipo vector de 4 bit. end component; component Mux2to1 is--declaracion de componentes. Port ( I0 : in STD_LOGIC_VECTOR (3 downto 0);--declaracion de puerto de entrada llamado I0 de tipo vector de 4 bit. I1 : in STD_LOGIC_VECTOR (3 downto 0);--declaracion de puerto de entrada llamado I1 de tipo vector de 4 bit. S : in STD_LOGIC;--declaracion de puerto de entrada llamado S de tipo logico de 1 bit. Y : out STD_LOGIC_VECTOR (3 downto 0));--declaracion de puerto de salida llamado Y de tipo vector de 4 bit.

DISEO DIGITAL VHDL end component; component REG4 is ----declaracion de componentes. MBR Port ( enable : in STD_LOGIC;--declaracion de puerto de entrada llamado enable de tipo logico de 1 bit. clk : in STD_LOGIC;--declaracion de puerto de entrada llamado clk de tipo logico de 1 bit. E : in STD_LOGIC_VECTOR (3 downto 0);--declaracion de puerto de entrada llamado E de tipo vector de 4 bit. S : inout STD_LOGIC_VECTOR (3 downto 0));--declaracion de puerto de entrada llamado S de tipo vector de 4 bit. end component; component contadorB16 is--declaracion de componentes. Port ( clk : in STD_LOGIC;--declaracion de puerto de entrada llamado clk de tipo logico de 1 bit. S : out STD_LOGIC_VECTOR (3 downto 0));--declaracion de puerto de entrada llamado S de tipo vector de 4 bit. end component; signal aux1,aux2,aux3,aux4,aux5: std_logic_vector(3 downto 0);-- seales auxiliares de tipo vector de 4 bit.////Las seales se declaran con la palabra reservada SIGNAL,pueden ser de varios tipos: normal, register o bus. Es posible asignarles un valor inicial. begin--begin de la instanciacion de elementos y asu vez mandando a traer los dispositivos que integraran nuestra memoria. PC:contadorB16 port map(clk_pc,aux1); U1:Mux2to1 port map (aux1,aux5,selec,aux2); MAR:REG4 port map (en1,clk,aux2,aux3);--aux3 es dir ROM:ROM16to4 port map (aux3,aux4); MBR:REG4 port map (en2,clk,aux4,aux5); out_mem<=aux5; end estructural;

DISEO DIGITAL VHDL

UNIDAD DE MEMORIA COMPLETA Y TERMINADA

PARTE DE LA INFORMACION ESCRITA EN LOS COMENTARIOS SE TOMO DE ESTA DIRECCION DE WIKIPEDIA http://es.wikipedia.org/wiki/VHDL

Potrebbero piacerti anche