fpganedir.com'da ara

fpganedir mail

 PARITY

Proje Tanımı:

Bu projemizde parity hesaplama programı dizayn edeceğiz.

Projeye Giriş

Parity seri sinyal iletişimlerinde alınan datanın doğru gönderilip gönderilmediğini anlamak için kullanılır. İki çeşit parity vardır. ODD (tek) ve EVEN(çift).
ODD parity de gelen datanın 1 sayıları toplanır. Eğer bu toplam çift ise parity bit 1'e çekilerek, gönderilen datanın içerisindeki 1 lerin toplamı tek sayıya eşitlenir. Even parity ise bunun tam tersidir.

1

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity PARITY is
        Port (  input                 :  in  STD_LOGIC_VECTOR (7 downto 0);
                    output_even   : out  STD_LOGIC;
                    output_odd     : out STD_LOGIC);
end PARITY;

architecture Behavioral of PARITY is

    function Parity_odd(input:STD_LOGIC_VECTOR (7 downto 0)) return std_logic is
          variable temp: std_logic:='0';
    begin
          for I in 0 to 7 loop
               temp:=temp xor input(I);
         end loop;
         return (not temp);
    end Parity_odd;

    function Parity_even(input:STD_LOGIC_VECTOR (7 downto 0)) return std_logic is
          variable temp: std_logic:='0';
    begin
          for I in input'range loop
               temp:=temp xor input(I);
          end loop;
          return temp;
    end Parity_even;

begin
     output_even <=Parity_even(input);
     output_odd<=Parity_odd(input);
end Behavioral;

Programın ModelSim de simülasyonunu yaptıktan sonra aşağıdaki tabloyu elde ederiz.

1

 

Anasayfa | Fpga | VHDL | VHDL Sözlüğü | Embedded Sistem | Android | Sayısal Tasarım | Simulasyon | PCB | Örnekler | Forum | İletişim
Copyright © 2010-2013 FPGAnedir. All Rights Reserved.