Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / cnes_guidelines / rule / data / STD_00700_good.vhd @ 2051e520

History | View | Annotate | Download (2.97 KB)

1
-------------------------------------------------------------------------------------------------
2
-- Company   : CNES
3
-- Author    : Mickael Carl (CNES)
4
-- Copyright : Copyright (c) CNES.
5
-- Licensing : GNU GPLv3
6
-------------------------------------------------------------------------------------------------
7
-- Version         : V1
8
-- Version history :
9
--    V1 : 2015-04-01 : Mickael Carl (CNES): Creation
10
-------------------------------------------------------------------------------------------------
11
-- File name          : STD_00700_good.vhd
12
-- File Creation date : 2015-04-01
13
-- Project name       : VHDL Handbook CNES Edition
14
-------------------------------------------------------------------------------------------------
15
-- Softwares             :  Microsoft Windows (Windows 7) - Editor (Eclipse + VEditor)
16
-------------------------------------------------------------------------------------------------
17
-- Description : Handbook example: Preservation of signal name: good example
18
--
19
-- Limitations : This file is an example of the VHDL handbook made by CNES. It is a stub aimed at
20
--               demonstrating good practices in VHDL and as such, its design is minimalistic.
21
--               It is provided as is, without any warranty.
22
--
23
-------------------------------------------------------------------------------------------------
24
-- Naming conventions:
25
--
26
-- i_Port: Input entity port
27
-- o_Port: Output entity port
28
-- b_Port: Bidirectional entity port
29
-- g_My_Generic: Generic entity port
30
--
31
-- c_My_Constant: Constant definition
32
-- t_My_Type: Custom type definition
33
--
34
-- My_Signal_n: Active low signal
35
-- v_My_Variable: Variable
36
-- sm_My_Signal: FSM signal
37
-- pkg_Param: Element Param coming from a package
38
--
39
-- My_Signal_re: Rising edge detection of My_Signal
40
-- My_Signal_fe: Falling edge detection of My_Signal
41
-- My_Signal_rX: X times registered My_Signal signal
42
--
43
-- P_Process_Name: Process
44
--
45
-------------------------------------------------------------------------------------------------
46

    
47
library IEEE;
48
use IEEE.std_logic_1164.all;
49
use IEEE.numeric_std.all;
50

    
51
library work;
52
use work.pkg_HBK.all;
53

    
54
entity STD_00700_good is
55
   port (
56
      i_Clock   : in  std_logic;        -- Clock signal
57
      i_Reset_n : in  std_logic;        -- Reset signal
58
      i_D       : in  std_logic;        -- D Flip-Flop input signal
59
      o_Q       : out std_logic         -- D Flip-Flop output signal
60
      );
61
end STD_00700_good;
62

    
63
--CODE
64
architecture Behavioral of STD_00700_good is
65
   signal D : std_logic;                -- First Flip-Flop output
66
   signal Q : std_logic;                -- Block output
67
begin
68
   DFlipFlop1 : DFlipFlop
69
      port map (
70
         i_Clock   => i_Clock,
71
         i_Reset_n => i_Reset_n,
72
         i_D       => i_D,
73
         o_Q       => D,
74
         o_Q_n     => open
75
         );
76

    
77
   P_FlipFlop : process(i_Reset_n, i_Clock)
78
   begin
79
      if (i_Reset_n = '0') then
80
         Q <= '0';
81
      elsif (rising_edge(i_Clock)) then
82
            Q <= D;
83
      end if;
84
   end process;
85
end Behavioral;
86
--CODE