Semplice ALU con SN74LS382 sintetizzata su Cyclone II

Sezione dedicata ai Microcontrollori e ai Sistemi Embedded

Semplice ALU con SN74LS382 sintetizzata su Cyclone II

Postby deluca » 03 Jan 2013, 21:16

@Salve,
Con riferimento al topic di EXECUTE riguardo la realizzazione o sintesi di una ALU in TTL tecnology,
vi mostro un semplice esempio schematico che ho realizzato con Quartus-II che mostra come è possibile creare ad hoc una semplice ALU 8bit che esegue alcune funzioni artimetiche in modo molto veloce.
L'impostazione dei segnali "S" così come configurati permette alla nostra ALU di effettuare la somma di "A" e "B", il risultato binario viene convertito in BCD usando il listato VHDL allegato ed infine dei semplici convertitori BCD to 7-Seg pilotano dei display (sulla DE-1 Terasic) che ne mostrano il risultato. Come si può l'ingresso "B" è settato a 15 dec, così il valore risultante di partenza con "A"=0 è pari a 15.

Lo schema è molto semplice, chi vuole può provare ad implementarlo anche su una semplice PLD.
Code: Select all
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_unsigned.all;
 
entity binbcd is
    port (
        B: in STD_LOGIC_VECTOR (7 downto 0);
        P: out STD_LOGIC_VECTOR (9 downto 0)
    );
end binbcd;

architecture binbcd_arch of binbcd is
begin
  bcd1: process(B)

  variable z: STD_LOGIC_VECTOR (17 downto 0);

  begin
       for i in 0 to 17 loop
      z(i) := '0';
       end loop;
       z(10 downto 3) := B;
 
       for i in 0 to 4 loop
      if z(11 downto 8) > 4 then   
            z(11 downto 8) := z(11 downto 8) + 3;
      end if;
      if z(15 downto 12) > 4 then   
            z(15 downto 12) := z(15 downto 12) + 3;
      end if;
      z(17 downto 1) := z(16 downto 0);
       end loop;
   P <= z(17 downto 8);   
  end process bcd1;           
end binbcd_arch;

Block1.jpg
Block1.jpg (155.63 KiB) Viewed 2886 times
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Return to Microcontrollori e microprocessori

Who is online

Users browsing this forum: No registered users and 7 guests

cron