## lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / gna / issue301 / packages / pkg_param.vhd @ 2051e520

History | View | Annotate | Download (2.03 KB)

1 |
--! |
---|---|

2 |
--! Copyright (C) 2011 - 2014 Creonic GmbH |

3 |
--! |

4 |
--! This file is part of the Creonic Viterbi Decoder, which is distributed |

5 |
--! under the terms of the GNU General Public License version 2. |

6 |
--! |

7 |
--! @file |

8 |
--! @brief Parameters |

9 |
--! @author Markus Fehrenz |

10 |
--! @date 2011/07/01 |

11 |
--! |

12 |
--! @details This is the configuration file of the Viterbi decoder. |

13 |
--! Any changes for parameters should be done here. |

14 |
--! Changing parameters somewhere else may result in a malicious |

15 |
--! behavior. |

16 |
--! |

17 | |

18 |
library ieee; |

19 |
use ieee.std_logic_1164.all; |

20 |
use ieee.numeric_std.all; |

21 | |

22 | |

23 |
package pkg_param is |

24 |
----------------------------------- |

25 |
-- Convolutional Code Parameters -- |

26 |
----------------------------------- |

27 | |

28 | |

29 |
-- |

30 |
-- Set the number of parity values |

31 |
-- This has to correspond to PARITY_POLYNOMIALS |

32 |
-- |

33 |
constant NUMBER_PARITY_BITS : natural := 2; |

34 |
type t_parity is array (NUMBER_PARITY_BITS - 1 downto 0) of natural; |

35 | |

36 |
-- |

37 |
-- Set parity polynoms in decimal notation |

38 |
-- NUMBER_PARITY_BITS has to correspond to the number of elements |

39 |
-- Examples: WiFi : [121,91] or [121,91,101] |

40 |
-- CDMA : [491,369] or [367,435,369] or [501,441,331,315] |

41 |
-- GSM : [27,19] or [27,21,31] |

42 |
-- DAB : [91,121,101,91] |

43 |
-- WiMAX: [91,121,117] |

44 |
-- |

45 |
constant PARITY_POLYNOMIALS : t_parity := (121,91); |

46 | |

47 | |

48 |
-- |

49 |
-- Set a recursive polynomial |

50 |
-- Set to 0 if no recursion is used |

51 |
-- Setting this arbitrary may result in a worse error correction ability |

52 |
-- |

53 |
constant FEEDBACK_POLYNOMIAL : natural := 0; |

54 | |

55 | |

56 |
----------------------------- |

57 |
-- Architecture Parameters -- |

58 |
----------------------------- |

59 | |

60 |
-- |

61 |
-- Set bit width of LLR input |

62 |
-- Recommended values: 3 or 4 |

63 |
-- |

64 |
constant BW_LLR_INPUT : natural := 4; |

65 | |

66 |
-- |

67 |
-- Set the maximum window length which shall be allowed at runtime. |

68 |
-- Recommended: at least 6 * constraint length |

69 |
-- |

70 |
constant MAX_WINDOW_LENGTH : natural := 96; |

71 | |

72 |
-- |

73 |
-- Set to 'true' if distributed RAM shall be used |

74 |
-- Set to 'false' if block RAM shall be used |

75 |
-- |

76 |
constant DISTRIBUTED_RAM : boolean := true; |

77 | |

78 |
end package pkg_param; |