Altera_Forum
Honored Contributor
17 years agoCreating a clock pulse
I am trying to create 7 different clock pulses that will go from high to low at a certain time. Can anyone help me?
This is what I have so far: library IEEE; use IEEE.std_logic_1164.all; entity OpenValve is port( A,B,C,D,E,F,G: in bit; H,I,J,K,L,M,N: out bit; clockOut_1: out std_logic; clockOut_2: out std_logic; clockOut_3: out std_logic; clockOut_4: out std_logic; clockOut_5: out std_logic; clockOut_6: out std_logic; clockOut_7: out std_logic ); end OpenValve; architecture OPEN_VALVE_1 of OpenValve is signal O: std_logic:='1'; signal P: std_logic:='1'; signal Q: std_logic:='1'; signal R: std_logic:='1'; signal S: std_logic:='1'; signal T: std_logic:='1'; signal U: std_logic:='1'; begin H <= '1' when A='1' else '0'; I <= '1' when B='1' else '0'; J <= '1' when C='1' else '0'; K <= '1' when D='1' else '0'; L <= '1' when E='1' else '0'; M <= '1' when F='1' else '0'; N <= '1' when G='1' else '0'; process (O) is begin if(O='0') then O<='1' after 5ns; end if; end process; process (P) is begin if(P='0') then P<='1' after 5ns; end if; end process; process (Q) is begin if(Q='0') then Q<='1' after 5ns; end if; end process; process (R) is begin if(R='0') then R<='1' after 5ns; end if; end process; process (S) is begin if(S='0') then S<='1' after 5ns; end if; end process; process (T) is begin if(T='0') then T<='1' after 5ns; end if; end process; process (U) is begin if(U='0') then U<='1' after 5ns; end if; end process; clockOut_1<=O; clockOut_2<=P; clockOut_3<=Q; clockOut_4<=R; clockOut_5<=S; clockOut_6<=T; clockOut_7<=U; END OPEN_VALVE_1;