Finally some inline documentation.
[bos2k9.git] / fhw_rs232 / rs232_globals_p.vhd
1 -----------------------------------------------------------------------
2 -- Copyright (c) 2009 Malte S. Stretz <http://msquadrat.de> 
3 --
4 -- Some helper stuff for the UART implementation.
5 -- 
6 -----------------------------------------------------------------------
7 -- This entity is part of the following library:
8 -- pragma library fhw_rs232
9 library fhw_rs232;
10
11 library ieee;
12 use ieee.std_logic_1164.all;
13 use ieee.numeric_std.all;
14
15 package rs232_globals_p is
16   
17   -- Calculate the parity for the `word`, `even` or not `even` 
18   -- (ie. odd).
19   function get_parity(
20     word : std_logic_vector;
21     even : std_logic) return std_logic;
22   
23 end rs232_globals_p;
24
25 package body rs232_globals_p is
26
27   function get_parity(
28     word : std_logic_vector;
29     even : std_logic) return std_logic is
30     variable par_v : std_logic;
31   begin
32     par_v := not even;
33     for i in word'high downto word'low loop
34       par_v := par_v xor word(i);
35     end loop;
36     return par_v;
37   end get_parity;
38   
39 end rs232_globals_p;