Changeset 207 for FPGA/FTU


Ignore:
Timestamp:
May 17, 2010, 8:32:09 AM (10 years ago)
Author:
qweitzel
Message:
updated FTU_top entity
Location:
FPGA/FTU
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • FPGA/FTU/FTU_top.vhd

    r157 r207  
    2929
    3030
    31 
    3231entity FTU_top is
    3332  port(
    3433    -- global control
    3534    ext_clk   : IN  STD_LOGIC;                      -- external clock from FTU board
    36     reset     : in  STD_LOGIC;                      -- reset
    37     brd_add   : IN  STD_LOGIC_VECTOR(7 downto 0);   -- global board address
     35    brd_add   : IN  STD_LOGIC_VECTOR(5 downto 0);   -- global board address
    3836
    3937    -- rate counters LVDS inputs
     
    5149   
    5250    -- DAC interface
    53     -- miso          : IN  STD_LOGIC;                  -- master-in-slave-out
    5451    sck           : OUT STD_LOGIC;                  -- serial clock to DAC
    5552    mosi          : OUT STD_LOGIC;                  -- serial data to DAC, master-out-slave-in
     
    7067
    7168    -- testpoints
    72     TP_A       : out STD_LOGIC_VECTOR(7 downto 0)   -- testpoints   
     69    TP_A        : out STD_LOGIC_VECTOR(11 downto 0)   -- testpoints   
    7370  );
    7471end FTU_top;
     
    9996  end component;
    10097
    101   signal clk_sig   : STD_LOGIC;
    102   signal reset_sig : STD_LOGIC;
    103   signal miso_sig  : STD_LOGIC;
    104   signal clr_sig   : STD_LOGIC;
    105   signal mosi_sig  : STD_LOGIC;
    106   signal sck_sig   : STD_LOGIC;
    107   signal cs_ld_sig : STD_LOGIC;   
     98  signal reset_sig : STD_LOGIC := '0';  -- initialize reset to 0 at power up
     99  signal clk_5M_sig : STD_LOGIC;
    108100
    109   signal clk_5M_sig : STD_LOGIC;
     101  type FTU_top_StateType is (Init, Running, Reset);
     102  signal FTU_top_State, FTU_top_NextState: FTU_top_StateType;
    110103 
    111104begin
    112105
    113   clk_sig   <= ext_clk;
    114   reset_sig <= '0';--where to get this from?
    115   -- miso_sig  <= miso;
    116 
    117   clr   <= clr_sig;
    118   mosi  <= mosi_sig;
    119   sck   <= sck_sig;
    120   cs_ld <= cs_ld_sig;
    121 
    122106  Inst_FTU_dac_dcm : FTU_dac_dcm
    123107    port map(
    124       CLKIN_IN => clk_sig,
     108      CLKIN_IN => ext_clk,
    125109      RST_IN => reset_sig,
    126110      CLKFX_OUT => clk_5M_sig,
     
    133117      clk   => clk_5M_sig,
    134118      reset => reset_sig,
    135       miso  => miso_sig,
    136       clr   => clr_sig,
    137       mosi  => mosi_sig,
    138       sck   => sck_sig,
    139       cs_ld => cs_ld_sig     
     119      miso  => '0',
     120      clr   => clr,
     121      mosi  => mosi,
     122      sck   => sck,
     123      cs_ld => cs_ld     
    140124    );
    141125
     126  --FTU main state machine (two-process implementation)
     127
     128  FTU_top_Registers: process (ext_clk)
     129  begin
     130    if Rising_edge(ext_clk) then
     131      FTU_top_State <= FTU_top_NextState;
     132    end if;
     133  end process FTU_top_Registers;
     134
     135  FTU_top_C_logic: process (FTU_top_State)
     136  begin
     137    FTU_top_NextState <= FTU_top_State;
     138    case FTU_top_State is
     139      when Init =>
     140        reset_sig <= '0';
     141        FTU_top_NextState <= Running;
     142      when Running =>
     143      when Reset =>
     144        reset_sig <= '1';
     145        FTU_top_NextState <= Init;
     146    end case;
     147  end process FTU_top_C_logic;
     148 
    142149end Behavioral;
    143150
  • FPGA/FTU/FTU_top_tb.vhd

    r158 r207  
    4242      -- global control
    4343      ext_clk   : IN  STD_LOGIC;                      -- external clock from FTU board
    44       reset     : in  STD_LOGIC;                      -- reset
    45       brd_add   : IN  STD_LOGIC_VECTOR(7 downto 0);   -- global board address
     44      brd_add   : IN  STD_LOGIC_VECTOR(5 downto 0);   -- global board address
    4645
    4746      -- rate counters LVDS inputs
     
    5958
    6059      -- DAC interface
    61       -- miso          : IN  STD_LOGIC;                  -- master-in-slave-out
    6260      sck           : OUT STD_LOGIC;                  -- serial clock to DAC
    6361      mosi          : OUT STD_LOGIC;                  -- serial data to DAC, master-out-slave-in
     
    7876
    7977      -- testpoints
    80       TP_A       : out STD_LOGIC_VECTOR(7 downto 0)   -- testpoints
     78      TP_A       : out STD_LOGIC_VECTOR(11 downto 0)   -- testpoints
    8179    );
    8280  end component;
     
    8482  --Inputs
    8583  signal ext_clk     : STD_LOGIC := '0';
    86   signal reset       : STD_LOGIC := '0';
    87   signal brd_add     : STD_LOGIC_VECTOR(7 downto 0) := (others => '0');
     84  signal brd_add     : STD_LOGIC_VECTOR(5 downto 0) := (others => '0');
    8885  signal patch_A_p   : STD_LOGIC := '0';
    8986  signal patch_A_n   : STD_LOGIC := '0';
     
    9693  signal trig_prim_p : STD_LOGIC := '0';
    9794  signal trig_prim_n : STD_LOGIC := '0';
    98   -- signal miso        : STD_LOGIC := '0';
    9995  signal rx          : STD_LOGIC := '0';
    10096
     
    111107  signal rx_en     : STD_LOGIC;
    112108  signal tx_en     : STD_LOGIC;
    113   signal TP_A      : STD_LOGIC_VECTOR(7 downto 0);
     109  signal TP_A      : STD_LOGIC_VECTOR(11 downto 0);
    114110 
    115111  -- Clock period definitions
     
    122118    port map(
    123119      ext_clk     => ext_clk,
    124       reset       => reset,
    125120      brd_add     => brd_add,
    126121      patch_A_p   => patch_A_p,
     
    134129      trig_prim_p => trig_prim_p,
    135130      trig_prim_n => trig_prim_n,
    136       -- miso        => miso,
    137131      rx          => rx,
    138132      rx_en       => rx_en,
Note: See TracChangeset for help on using the changeset viewer.