Ignore:
Timestamp:
02/25/11 15:56:47 (14 years ago)
Author:
neise
Message:
at least P&R runs again
Location:
firmware/FAD/FACT_FAD_20MHz_VAR_PS/FACT_FAD_lib/hdl
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • firmware/FAD/FACT_FAD_20MHz_VAR_PS/FACT_FAD_lib/hdl/data_generator.vhd

    r10176 r10180  
    4848        dac_array                               : in    dac_array_type;
    4949       
    50         mode                                    : in    std_logic := '0';                       -- 0: config mode | 1: run mode
     50        mode                                    : in    std_logic;                      -- 0: config mode | 1: run mode
    5151        idling                          : out   std_logic;
    5252       
  • firmware/FAD/FACT_FAD_20MHz_VAR_PS/FACT_FAD_lib/hdl/fad_board_struct.vhd

    r10176 r10180  
    33-- Created:
    44--          by - dneise.UNKNOWN (E5B-LABOR6)
    5 --          at - 15:55:14 24.02.2011
     5--          at - 16:24:40 25.02.2011
    66--
    77-- Generated by Mentor Graphics' HDL Designer(TM) 2009.2 (Build 10)
     
    5757      S_CLK      : OUT    std_logic;
    5858      TCS        : OUT    std_logic_vector (3 DOWNTO 0);
    59       TRG_V      : OUT    std_logic;
     59      TRG_V      : OUT    std_logic                     := '0';
    6060      W_A        : OUT    std_logic_vector (9 DOWNTO 0);
    6161      W_CS       : OUT    std_logic                     := '1';
     
    7676-- Created:
    7777--          by - dneise.UNKNOWN (E5B-LABOR6)
    78 --          at - 15:55:15 24.02.2011
     78--          at - 16:24:40 25.02.2011
    7979--
    8080-- Generated by Mentor Graphics' HDL Designer(TM) 2009.2 (Build 10)
     
    9696
    9797   -- Internal signal declarations
    98    SIGNAL CLK_25_PS             : std_logic;
    99    SIGNAL CLK_25_PS1            : std_logic;
     98   SIGNAL ADC_CLK               : std_logic;
    10099   SIGNAL CLK_50                : std_logic;
    101100   SIGNAL SRCLK                 : std_logic                     := '0';
    102    SIGNAL adc_clk_en            : std_logic                     := '0';
    103101   SIGNAL adc_data_array        : adc_data_array_type;
    104102   SIGNAL alarm_refclk_too_high : std_logic                     := '0';
     
    116114   );
    117115   PORT (
    118       CLK                    : IN     std_logic ;
    119       D_T_in                 : IN     std_logic_vector (1 DOWNTO 0);
    120       SROUT_in_0             : IN     std_logic ;
    121       SROUT_in_1             : IN     std_logic ;
    122       SROUT_in_2             : IN     std_logic ;
    123       SROUT_in_3             : IN     std_logic ;
    124       adc_data_array         : IN     adc_data_array_type ;
    125       adc_otr_array          : IN     std_logic_vector (3 DOWNTO 0);
    126       board_id               : IN     std_logic_vector (3 DOWNTO 0);
    127       crate_id               : IN     std_logic_vector (1 DOWNTO 0);
    128       drs_refclk_in          : IN     std_logic ;                                     -- used TO check if DRS REFCLK exsists, if not DENABLE inhibit
    129       plllock_in             : IN     std_logic_vector (3 DOWNTO 0);                  -- high level, if dominowave is running and DRS PLL locked
    130       trigger                : IN     std_logic ;
    131       wiz_int                : IN     std_logic ;
    132       CLK_25_PS              : OUT    std_logic ;
    133       CLK_50                 : OUT    std_logic ;
    134       RSRLOAD                : OUT    std_logic                     := '0';
    135       SRCLK                  : OUT    std_logic                     := '0';
    136       SRIN_out               : OUT    std_logic                     := '0';
    137       adc_clk_en             : OUT    std_logic                     := '0';
    138       adc_oeb                : OUT    std_logic                     := '1';
    139       additional_flasher_out : OUT    std_logic ;
    140       alarm_refclk_too_high  : OUT    std_logic ;
    141       alarm_refclk_too_low   : OUT    std_logic ;
    142       amber                  : OUT    std_logic ;
    143       counter_result         : OUT    std_logic_vector (11 DOWNTO 0);
    144       dac_cs                 : OUT    std_logic ;
    145       denable                : OUT    std_logic                     := '0';           -- default domino wave off
    146       drs_channel_id         : OUT    std_logic_vector (3 DOWNTO 0) := (others => '0');
    147       drs_dwrite             : OUT    std_logic                     := '1';
    148       green                  : OUT    std_logic ;
    149       led                    : OUT    std_logic_vector (7 DOWNTO 0) := (OTHERS => '0');
    150       mosi                   : OUT    std_logic                     := '0';
    151       red                    : OUT    std_logic ;
    152       sclk                   : OUT    std_logic ;
    153       sensor_cs              : OUT    std_logic_vector (3 DOWNTO 0);
    154       wiz_addr               : OUT    std_logic_vector (9 DOWNTO 0);
    155       wiz_cs                 : OUT    std_logic                     := '1';
    156       wiz_rd                 : OUT    std_logic                     := '1';
    157       wiz_reset              : OUT    std_logic                     := '1';
    158       wiz_wr                 : OUT    std_logic                     := '1';
    159       sio                    : INOUT  std_logic ;
    160       wiz_data               : INOUT  std_logic_vector (15 DOWNTO 0)
     116      CLK                   : IN     std_logic ;
     117      D_T_in                : IN     std_logic_vector (1 DOWNTO 0);
     118      SROUT_in_0            : IN     std_logic ;
     119      SROUT_in_1            : IN     std_logic ;
     120      SROUT_in_2            : IN     std_logic ;
     121      SROUT_in_3            : IN     std_logic ;
     122      adc_data_array        : IN     adc_data_array_type ;
     123      adc_otr_array         : IN     std_logic_vector (3 DOWNTO 0);
     124      board_id              : IN     std_logic_vector (3 DOWNTO 0);
     125      crate_id              : IN     std_logic_vector (1 DOWNTO 0);
     126      drs_refclk_in         : IN     std_logic ;                                     -- used TO check if DRS REFCLK exsists, if not DENABLE inhibit
     127      plllock_in            : IN     std_logic_vector (3 DOWNTO 0);                  -- high level, if dominowave is running and DRS PLL locked
     128      trigger               : IN     std_logic ;
     129      wiz_int               : IN     std_logic ;
     130      ADC_CLK               : OUT    std_logic ;
     131      CLK_25_PS             : OUT    std_logic ;
     132      CLK_50                : OUT    std_logic ;
     133      RSRLOAD               : OUT    std_logic                     := '0';
     134      SRCLK                 : OUT    std_logic                     := '0';
     135      SRIN_out              : OUT    std_logic                     := '0';
     136      adc_oeb               : OUT    std_logic                     := '1';
     137      alarm_refclk_too_high : OUT    std_logic ;
     138      alarm_refclk_too_low  : OUT    std_logic ;
     139      amber                 : OUT    std_logic ;
     140      counter_result        : OUT    std_logic_vector (11 DOWNTO 0);
     141      dac_cs                : OUT    std_logic ;
     142      denable               : OUT    std_logic                     := '0';           -- default domino wave off
     143      drs_channel_id        : OUT    std_logic_vector (3 DOWNTO 0) := (others => '0');
     144      drs_dwrite            : OUT    std_logic                     := '1';
     145      green                 : OUT    std_logic ;
     146      led                   : OUT    std_logic_vector (7 DOWNTO 0) := (OTHERS => '0');
     147      mosi                  : OUT    std_logic                     := '0';
     148      red                   : OUT    std_logic ;
     149      sclk                  : OUT    std_logic ;
     150      sensor_cs             : OUT    std_logic_vector (3 DOWNTO 0);
     151      wiz_addr              : OUT    std_logic_vector (9 DOWNTO 0);
     152      wiz_cs                : OUT    std_logic                     := '1';
     153      wiz_rd                : OUT    std_logic                     := '1';
     154      wiz_reset             : OUT    std_logic                     := '1';
     155      wiz_wr                : OUT    std_logic                     := '1';
     156      sio                   : INOUT  std_logic ;
     157      wiz_data              : INOUT  std_logic_vector (15 DOWNTO 0)
    161158   );
    162159   END COMPONENT;
     
    174171
    175172   -- HDL Embedded Text Block 2 ADC_CLK
    176    A_CLK <= (CLK_25_PS, CLK_25_PS, CLK_25_PS, CLK_25_PS);
     173   A_CLK <= (
     174   ADC_CLK,
     175   ADC_CLK,
     176   ADC_CLK,
     177   ADC_CLK
     178   );
    177179
    178180   -- HDL Embedded Text Block 3 ADC_DATA
     
    222224
    223225
    224    -- ModuleWare code(v1.9) for instance 'I0' of 'and'
    225    CLK_25_PS <= adc_clk_en AND CLK_25_PS1;
     226   -- ModuleWare code(v1.9) for instance 'I0' of 'gnd'
     227   TRG_V <= '0';
    226228
    227229   -- Instance port mappings.
     
    231233      )
    232234      PORT MAP (
    233          CLK                    => X_50M,
    234          D_T_in                 => D_T_in,
    235          SROUT_in_0             => D0_SROUT,
    236          SROUT_in_1             => D1_SROUT,
    237          SROUT_in_2             => D2_SROUT,
    238          SROUT_in_3             => D3_SROUT,
    239          adc_data_array         => adc_data_array,
    240          adc_otr_array          => A_OTR,
    241          board_id               => board_id,
    242          crate_id               => crate_id,
    243          drs_refclk_in          => REFCLK,
    244          plllock_in             => D_PLLLCK,
    245          trigger                => TRG,
    246          wiz_int                => W_INT,
    247          CLK_25_PS              => CLK_25_PS1,
    248          CLK_50                 => CLK_50,
    249          RSRLOAD                => RSRLOAD,
    250          SRCLK                  => SRCLK,
    251          SRIN_out               => SRIN,
    252          adc_clk_en             => adc_clk_en,
    253          adc_oeb                => OE_ADC,
    254          additional_flasher_out => TRG_V,
    255          alarm_refclk_too_high  => alarm_refclk_too_high,
    256          alarm_refclk_too_low   => alarm_refclk_too_low,
    257          amber                  => AMBER_LED,
    258          counter_result         => counter_result,
    259          dac_cs                 => DAC_CS,
    260          denable                => DENABLE,
    261          drs_channel_id         => D_A,
    262          drs_dwrite             => DWRITE,
    263          green                  => RED_LED,
    264          led                    => led,
    265          mosi                   => MOSI,
    266          red                    => GREEN_LED,
    267          sclk                   => S_CLK,
    268          sensor_cs              => TCS,
    269          wiz_addr               => W_A,
    270          wiz_cs                 => W_CS,
    271          wiz_rd                 => W_RD,
    272          wiz_reset              => W_RES,
    273          wiz_wr                 => W_WR,
    274          sio                    => MISO,
    275          wiz_data               => W_D
     235         CLK                   => X_50M,
     236         D_T_in                => D_T_in,
     237         SROUT_in_0            => D0_SROUT,
     238         SROUT_in_1            => D1_SROUT,
     239         SROUT_in_2            => D2_SROUT,
     240         SROUT_in_3            => D3_SROUT,
     241         adc_data_array        => adc_data_array,
     242         adc_otr_array         => A_OTR,
     243         board_id              => board_id,
     244         crate_id              => crate_id,
     245         drs_refclk_in         => REFCLK,
     246         plllock_in            => D_PLLLCK,
     247         trigger               => TRG,
     248         wiz_int               => W_INT,
     249         ADC_CLK               => ADC_CLK,
     250         CLK_25_PS             => OPEN,
     251         CLK_50                => CLK_50,
     252         RSRLOAD               => RSRLOAD,
     253         SRCLK                 => SRCLK,
     254         SRIN_out              => SRIN,
     255         adc_oeb               => OE_ADC,
     256         alarm_refclk_too_high => alarm_refclk_too_high,
     257         alarm_refclk_too_low  => alarm_refclk_too_low,
     258         amber                 => AMBER_LED,
     259         counter_result        => counter_result,
     260         dac_cs                => DAC_CS,
     261         denable               => DENABLE,
     262         drs_channel_id        => D_A,
     263         drs_dwrite            => DWRITE,
     264         green                 => RED_LED,
     265         led                   => led,
     266         mosi                  => MOSI,
     267         red                   => GREEN_LED,
     268         sclk                  => S_CLK,
     269         sensor_cs             => TCS,
     270         wiz_addr              => W_A,
     271         wiz_cs                => W_CS,
     272         wiz_rd                => W_RD,
     273         wiz_reset             => W_RES,
     274         wiz_wr                => W_WR,
     275         sio                   => MISO,
     276         wiz_data              => W_D
    276277      );
    277278
  • firmware/FAD/FACT_FAD_20MHz_VAR_PS/FACT_FAD_lib/hdl/fad_main_struct.vhd

    r10176 r10180  
    33-- Created:
    44--          by - dneise.UNKNOWN (E5B-LABOR6)
    5 --          at - 15:55:13 24.02.2011
     5--          at - 16:10:13 25.02.2011
    66--
    77-- Generated by Mentor Graphics' HDL Designer(TM) 2009.2 (Build 10)
     
    1818   );
    1919   PORT(
    20       CLK                    : IN     std_logic;
    21       D_T_in                 : IN     std_logic_vector (1 DOWNTO 0);
    22       SROUT_in_0             : IN     std_logic;
    23       SROUT_in_1             : IN     std_logic;
    24       SROUT_in_2             : IN     std_logic;
    25       SROUT_in_3             : IN     std_logic;
    26       adc_data_array         : IN     adc_data_array_type;
    27       adc_otr_array          : IN     std_logic_vector (3 DOWNTO 0);
    28       board_id               : IN     std_logic_vector (3 DOWNTO 0);
    29       crate_id               : IN     std_logic_vector (1 DOWNTO 0);
    30       drs_refclk_in          : IN     std_logic;                                         -- used to check if DRS REFCLK exsists, if not DENABLE inhibit
    31       plllock_in             : IN     std_logic_vector (3 DOWNTO 0);                     -- high level, if dominowave is running and DRS PLL locked
    32       trigger                : IN     std_logic;
    33       wiz_int                : IN     std_logic;
    34       CLK_25_PS              : OUT    std_logic;
    35       CLK_50                 : OUT    std_logic;
    36       RSRLOAD                : OUT    std_logic                     := '0';
    37       SRCLK                  : OUT    std_logic                     := '0';
    38       SRIN_out               : OUT    std_logic                     := '0';
    39       adc_clk_en             : OUT    std_logic                     := '0';
    40       adc_oeb                : OUT    std_logic                     := '1';
    41       additional_flasher_out : OUT    std_logic;
    42       alarm_refclk_too_high  : OUT    std_logic;
    43       alarm_refclk_too_low   : OUT    std_logic;
    44       amber                  : OUT    std_logic;
    45       counter_result         : OUT    std_logic_vector (11 DOWNTO 0);
    46       dac_cs                 : OUT    std_logic;
    47       denable                : OUT    std_logic                     := '0';              -- default domino wave off
    48       drs_channel_id         : OUT    std_logic_vector (3 DOWNTO 0) := (others => '0');
    49       drs_dwrite             : OUT    std_logic                     := '1';
    50       green                  : OUT    std_logic;
    51       led                    : OUT    std_logic_vector (7 DOWNTO 0) := (OTHERS => '0');
    52       mosi                   : OUT    std_logic                     := '0';
    53       red                    : OUT    std_logic;
    54       sclk                   : OUT    std_logic;
    55       sensor_cs              : OUT    std_logic_vector (3 DOWNTO 0);
    56       wiz_addr               : OUT    std_logic_vector (9 DOWNTO 0);
    57       wiz_cs                 : OUT    std_logic                     := '1';
    58       wiz_rd                 : OUT    std_logic                     := '1';
    59       wiz_reset              : OUT    std_logic                     := '1';
    60       wiz_wr                 : OUT    std_logic                     := '1';
    61       sio                    : INOUT  std_logic;
    62       wiz_data               : INOUT  std_logic_vector (15 DOWNTO 0)
     20      CLK                   : IN     std_logic;
     21      D_T_in                : IN     std_logic_vector (1 DOWNTO 0);
     22      SROUT_in_0            : IN     std_logic;
     23      SROUT_in_1            : IN     std_logic;
     24      SROUT_in_2            : IN     std_logic;
     25      SROUT_in_3            : IN     std_logic;
     26      adc_data_array        : IN     adc_data_array_type;
     27      adc_otr_array         : IN     std_logic_vector (3 DOWNTO 0);
     28      board_id              : IN     std_logic_vector (3 DOWNTO 0);
     29      crate_id              : IN     std_logic_vector (1 DOWNTO 0);
     30      drs_refclk_in         : IN     std_logic;                                         -- used to check if DRS REFCLK exsists, if not DENABLE inhibit
     31      plllock_in            : IN     std_logic_vector (3 DOWNTO 0);                     -- high level, if dominowave is running and DRS PLL locked
     32      trigger               : IN     std_logic;
     33      wiz_int               : IN     std_logic;
     34      ADC_CLK               : OUT    std_logic;
     35      CLK_25_PS             : OUT    std_logic;
     36      CLK_50                : OUT    std_logic;
     37      RSRLOAD               : OUT    std_logic                     := '0';
     38      SRCLK                 : OUT    std_logic                     := '0';
     39      SRIN_out              : OUT    std_logic                     := '0';
     40      adc_oeb               : OUT    std_logic                     := '1';
     41      alarm_refclk_too_high : OUT    std_logic;
     42      alarm_refclk_too_low  : OUT    std_logic;
     43      amber                 : OUT    std_logic;
     44      counter_result        : OUT    std_logic_vector (11 DOWNTO 0);
     45      dac_cs                : OUT    std_logic;
     46      denable               : OUT    std_logic                     := '0';              -- default domino wave off
     47      drs_channel_id        : OUT    std_logic_vector (3 DOWNTO 0) := (others => '0');
     48      drs_dwrite            : OUT    std_logic                     := '1';
     49      green                 : OUT    std_logic;
     50      led                   : OUT    std_logic_vector (7 DOWNTO 0) := (OTHERS => '0');
     51      mosi                  : OUT    std_logic                     := '0';
     52      red                   : OUT    std_logic;
     53      sclk                  : OUT    std_logic;
     54      sensor_cs             : OUT    std_logic_vector (3 DOWNTO 0);
     55      wiz_addr              : OUT    std_logic_vector (9 DOWNTO 0);
     56      wiz_cs                : OUT    std_logic                     := '1';
     57      wiz_rd                : OUT    std_logic                     := '1';
     58      wiz_reset             : OUT    std_logic                     := '1';
     59      wiz_wr                : OUT    std_logic                     := '1';
     60      sio                   : INOUT  std_logic;
     61      wiz_data              : INOUT  std_logic_vector (15 DOWNTO 0)
    6362   );
    6463
     
    7271-- Created:
    7372--          by - dneise.UNKNOWN (E5B-LABOR6)
    74 --          at - 15:55:14 24.02.2011
     73--          at - 16:10:14 25.02.2011
    7574--
    7675-- Generated by Mentor Graphics' HDL Designer(TM) 2009.2 (Build 10)
     
    106105   SIGNAL FTM_RS485_ready         : std_logic;
    107106   SIGNAL SRCLK1                  : std_logic                                    := '0';
     107   SIGNAL adc_clk_en              : std_logic;
    108108   SIGNAL adc_data_array_int      : adc_data_array_type;
    109109   SIGNAL adc_otr                 : std_logic_vector(3 DOWNTO 0);
     
    135135   SIGNAL data_generator_run_mode : std_logic                                    := '0';                -- default triggers are NOT accepted
    136136   SIGNAL data_out                : std_logic_vector(63 DOWNTO 0);
     137   SIGNAL data_ram_empty          : std_logic;
    137138   SIGNAL denable_inhibit         : std_logic                                    := '0';                -- default domino wave off
    138139   SIGNAL denable_prim            : std_logic                                    := '0';                -- default domino wave off
     
    319320      sensor_ready               : IN     std_logic ;
    320321      dac_array                  : IN     dac_array_type ;
    321       mode                       : IN     std_logic                     := '0';           -- 0: config mode | 1: run mode
     322      mode                       : IN     std_logic ;                                     -- 0: config mode | 1: run mode
    322323      idling                     : OUT    std_logic ;
    323324      -- EVT HEADER - part 1
     
    435436      wiz_busy               : IN     std_logic ;
    436437      wiz_ack                : IN     std_logic ;
    437       buffer_ram_empty       : OUT    std_logic ;
    438       ram_start_addr         : OUT    std_logic_vector (RAM_ADDR_WIDTH_64B-1 DOWNTO 0) := (others => '0')
     438      ram_start_addr         : OUT    std_logic_vector (RAM_ADDR_WIDTH_64B-1 DOWNTO 0) := (others => '0');
     439      data_ram_empty         : OUT    std_logic
    439440   );
    440441   END COMPONENT;
     
    513514      s_trigger               : OUT    std_logic                      := '0';
    514515      c_trigger_enable        : OUT    std_logic                      := '0';
    515       c_trigger_mult          : OUT    std_logic_vector (15 DOWNTO 0) := conv_std_logic_vector(100 ,16); --subject TO changes
     516      c_trigger_mult          : OUT    std_logic_vector (15 DOWNTO 0) := conv_std_logic_vector(0 ,16); --subject TO changes
    516517      -- FAD configuration signals:
    517518      ------------------------------------------------------------------------------
     
    519520      new_config              : OUT    std_logic                      := '0';
    520521      config_chain_done       : IN     std_logic ;
     522      data_generator_run_mode : OUT    std_logic ;                                                     -- default triggers will be accepted
     523      data_ram_empty          : IN     std_logic ;
    521524      -- read/write configRAM
    522525      config_addr             : OUT    std_logic_vector (7 DOWNTO 0);
     
    538541      -- user controllable enable signals
    539542      ------------------------------------------------------------------------------
    540       trigger_enable          : OUT    std_logic                      := '0';                            -- default triggers are NOT accepted
    541       data_generator_run_mode : OUT    std_logic                      := '0';                            -- default triggers are NOT accepted
    542       denable                 : OUT    std_logic                      := '0';                            -- default domino wave off
    543       dwrite_enable           : OUT    std_logic                      := '0';                            -- default DWRITE low.
    544       sclk_enable             : OUT    std_logic                      := '1';                            -- default DWRITE HIGH.
    545       srclk_enable            : OUT    std_logic                      := '1';                            -- default SRCLK on.
     543      trigger_enable          : OUT    std_logic                      := '0';                          -- default triggers are NOT accepted
     544      denable                 : OUT    std_logic                      := '0';                          -- default domino wave off
     545      dwrite_enable           : OUT    std_logic                      := '0';                          -- default DWRITE low.
     546      sclk_enable             : OUT    std_logic                      := '1';                          -- default DWRITE HIGH.
     547      srclk_enable            : OUT    std_logic                      := '1';                          -- default SRCLK on.
    546548      ------------------------------------------------------------------------------
    547549     
     
    549551      -- these signals control the behavior of the digital clock manager (DCM)
    550552      ------------------------------------------------------------------------------
    551       ps_direction            : OUT    std_logic                      := '1';                            -- default phase shift upwards
    552       ps_do_phase_shift       : OUT    std_logic                      := '0';                            --pulse this TO phase shift once
    553       ps_reset                : OUT    std_logic                      := '0';                            -- pulse this TO reset the variable phase shift
     553      ps_direction            : OUT    std_logic                      := '1';                          -- default phase shift upwards
     554      ps_do_phase_shift       : OUT    std_logic                      := '0';                          --pulse this TO phase shift once
     555      ps_reset                : OUT    std_logic                      := '0';                          -- pulse this TO reset the variable phase shift
    554556      ------------------------------------------------------------------------------
    555557     
     
    593595
    594596
    595    -- ModuleWare code(v1.9) for instance 'I5' of 'and'
    596    drs_dwrite <= dwrite AND dwrite_enable;
    597 
    598597   -- ModuleWare code(v1.9) for instance 'I6' of 'and'
    599598   SRCLK <= SRCLK1 AND srclk_enable;
    600599
    601    -- ModuleWare code(v1.9) for instance 'U_1' of 'and'
     600   -- ModuleWare code(v1.9) for instance 'and_1' of 'and'
     601   ADC_CLK <= adc_clk_en AND CLK_25_PS_internal;
     602
     603   -- ModuleWare code(v1.9) for instance 'and_2' of 'and'
     604   denable <= denable_prim AND din1;
     605
     606   -- ModuleWare code(v1.9) for instance 'and_3' of 'and'
    602607   sclk <= sclk_enable AND sclk1;
    603608
    604    -- ModuleWare code(v1.9) for instance 'U_5' of 'and'
    605    denable <= denable_prim AND din1;
    606 
    607    -- ModuleWare code(v1.9) for instance 'U_11' of 'and'
     609   -- ModuleWare code(v1.9) for instance 'and_4' of 'and'
    608610   dout1 <= dout AND trigger_enable;
     611
     612   -- ModuleWare code(v1.9) for instance 'and_5' of 'and'
     613   drs_dwrite <= dwrite AND dwrite_enable;
    609614
    610615   -- ModuleWare code(v1.9) for instance 'U_15' of 'gnd'
    611616   reset_synch_i <= '0';
    612617
    613    -- ModuleWare code(v1.9) for instance 'U_7' of 'inv'
     618   -- ModuleWare code(v1.9) for instance 'inverter_1' of 'inv'
    614619   din1 <= NOT(denable_inhibit);
    615620
    616    -- ModuleWare code(v1.9) for instance 'U_6' of 'or'
     621   -- ModuleWare code(v1.9) for instance 'or_1' of 'or'
     622   s_trigger <= s_trigger_0 OR trigger1;
     623
     624   -- ModuleWare code(v1.9) for instance 'or_2' of 'or'
    617625   denable_inhibit <= alarm_refclk_too_low_internal
    618626                      OR alarm_refclk_too_high_internal;
    619627
    620    -- ModuleWare code(v1.9) for instance 'U_9' of 'or'
     628   -- ModuleWare code(v1.9) for instance 'or_5' of 'or'
    621629   dout <= s_trigger OR trigger;
    622 
    623    -- ModuleWare code(v1.9) for instance 'U_13' of 'or'
    624    s_trigger <= s_trigger_0 OR trigger1;
    625630
    626631   -- ModuleWare code(v1.9) for instance 'U_14' of 'vdd'
     
    636641         alarm_refclk_too_low  => alarm_refclk_too_low_internal
    637642      );
    638    U_16 : RS485_receiver_fake
     643   RS485_receiver_fake_instance : RS485_receiver_fake
    639644      PORT MAP (
    640645         trigger_no    => trigger_id,
     
    653658         adc_otr            => adc_otr
    654659      );
    655    U_2 : clock_generator_var_ps
     660   clock_generator_instance : clock_generator_var_ps
    656661      PORT MAP (
    657662         CLK       => CLK,
     
    664669         offset    => DCM_PS_status
    665670      );
    666    U_3 : continous_pulser
     671   continous_pulser_instance : continous_pulser
    667672      GENERIC MAP (
    668673         MINIMAL_TRIGGER_WAIT_TIME => 250000,
     
    692697         config_data       => config_data
    693698      );
    694    U_4 : dataRAM_64b_16b_width14_5
     699   dataRAM_instance : dataRAM_64b_16b_width14_5
    695700      PORT MAP (
    696701         clka  => CLK_25,
     
    729734         sensor_ready               => sensor_ready,
    730735         dac_array                  => dac_array,
    731          mode                       => OPEN,
     736         mode                       => data_generator_run_mode,
    732737         idling                     => OPEN,
    733738         package_length             => package_length,
     
    765770         drs_readout_started        => drs_readout_started
    766771      );
    767    U_0 : dna_gen
     772   dna_gen_instance : dna_gen
    768773      PORT MAP (
    769774         clk   => CLK_25,
     
    790795         SRCLK                    => SRCLK1
    791796      );
    792    U_10 : led_controller
     797   led_controller_instance : led_controller
    793798      GENERIC MAP (
    794799         HEARTBEAT_PWM_DIVIDER => 50000,           -- 10kHz @ 50 MHz
     
    801806         amber                  => amber,
    802807         red                    => red,
    803          additional_flasher_out => additional_flasher_out,
     808         additional_flasher_out => OPEN,
    804809         trigger                => drs_readout_started,
    805810         socks_waiting          => socks_waiting,
     
    830835         wiz_busy               => wiz_busy,
    831836         wiz_ack                => wiz_ack,
    832          buffer_ram_empty       => OPEN,
    833          ram_start_addr         => ram_start_addr
     837         ram_start_addr         => ram_start_addr,
     838         data_ram_empty         => data_ram_empty
    834839      );
    835840   I_main_SPI_interface : spi_interface
     
    848853         miso           => sio
    849854      );
    850    U_8 : timer
     855   timer_instance : timer
    851856      GENERIC MAP (
    852857         TIMER_WIDTH => 32,
     
    861866         enable_i      => enable_i
    862867      );
    863    I_main_ext_trigger : trigger_counter
     868   trigger_counter_instance : trigger_counter
    864869      PORT MAP (
    865870         trigger_id => trigger_id,
     
    867872         clk        => CLK_25_PS_internal
    868873      );
    869    U_12 : trigger_manager
     874   trigger_manager_instance : trigger_manager
    870875      PORT MAP (
    871876         clk                   => CLK_25,
     
    905910         new_config              => new_config,
    906911         config_chain_done       => config_started,
     912         data_generator_run_mode => data_generator_run_mode,
     913         data_ram_empty          => data_ram_empty,
    907914         config_addr             => config_addr,
    908915         config_data             => config_data,
     
    916923         CrateID                 => crate_id,
    917924         trigger_enable          => trigger_enable,
    918          data_generator_run_mode => data_generator_run_mode,
    919925         denable                 => denable_prim,
    920926         dwrite_enable           => dwrite_enable,
  • firmware/FAD/FACT_FAD_20MHz_VAR_PS/FACT_FAD_lib/hdl/memory_manager_beha.vhd

    r10176 r10180  
    5353        wiz_ack : IN std_logic;
    5454        ram_start_addr : OUT std_logic_vector (RAM_ADDR_WIDTH_64B-1 DOWNTO 0) := (others => '0');
    55         buffer_ram_empty : out std_logic
     55        data_ram_empty : out std_logic
    5656);
    5757
     
    105105
    106106--  led <= conv_std_logic_vector (events_in_ram, 4) & "00" & wiz_ack & wiz_busy;
    107   buffer_ram_empty <= '1' when events_in_ram = 0 else '0';
     107  data_ram_empty <= '1' when events_in_ram = 0 else '0';
    108108 
    109109  mm : process (clk)
  • firmware/FAD/FACT_FAD_20MHz_VAR_PS/FACT_FAD_lib/hdl/w5300_modul.vhd

    r10176 r10180  
    3333      s_trigger : OUT std_logic := '0';
    3434      c_trigger_enable: out std_logic := '0';
    35       c_trigger_mult: out std_logic_vector (15 DOWNTO 0) := conv_std_logic_vector(100 ,16); --subject to changes
     35      c_trigger_mult: out std_logic_vector (15 DOWNTO 0) := conv_std_logic_vector(0 ,16); --subject to changes
    3636
    3737          -- FAD configuration signals:
     
    4040      new_config : OUT std_logic := '0';
    4141          config_chain_done : IN std_logic;
    42          
     42          data_generator_run_mode : out std_logic; -- default triggers will be accepted
     43          data_ram_empty : IN std_logic;
    4344                -- read/write configRAM
    4445      config_addr : out std_logic_vector (7 downto 0);
     
    6061          ------------------------------------------------------------------------------
    6162          trigger_enable : out std_logic := '0'; -- default triggers are NOT accepted
    62           data_generator_run_mode : out std_logic := '0'; -- default triggers are NOT accepted
     63         
    6364      denable : out std_logic := '0'; -- default domino wave off
    6465      dwrite_enable : out std_logic := '0'; -- default DWRITE low.
     
    9293        INIT, LOCATE, IM, MT, STX, STX1, STX2, STX3, SRX, SRX1, SRX2, SRX3, MAC, MAC1, MAC2, GW, GW1, SNM, SNM1, IP, IP1, TIMEOUT, RETRY,
    9394        SI, SI1, SI2, SI3, SI4, SI5, SI6,       ESTABLISH, EST1,
    94         CONFIG, WAIT_FOR_CONFIG_DONE,
     95        CONFIG, WAIT_FOR_DATA_RAM_EMPTY, WAIT_FOR_CONFIG_DONE,
    9596        MAIN, MAIN1, MAIN2, MAIN3, CHK_RECEIVED, READ_DATA
    9697);
     
    198199--signal error_cnt : std_logic_vector (7 downto 0) := (others => '0');
    199200--signal last_trigger_id : std_logic_vector (15 downto 0) := (others => '0');
    200 
    201 
     201signal DG_run_mode_temp_storage_signal : std_logic;
     202signal data_generator_run_mode_signal : std_logic := '1'; -- default triggers will be accepted
    202203-- signals for different socket modes: DN 04.01.11
    203204signal socket_nr_counter : integer range 1 to 7 :=1; --used to determine which socket is used for data sending
     
    240241  RST_TIME <= X"00120";
    241242  --synthesis translate_on
    242 
     243 
     244  -- concurrent statemnets
     245data_generator_run_mode <= data_generator_run_mode_signal;
    243246
    244247        w5300_proc : process (clk)
     
    613616                                       
    614617                                        when CONFIG =>
    615                                                 new_config <= '1';
    616                                                 state_init <= WAIT_FOR_CONFIG_DONE;
     618                                                DG_run_mode_temp_storage_signal <= data_generator_run_mode_signal; --save current value of DG run mode signal.
     619                                                data_generator_run_mode_signal <= '0'; --switch DG to config-mode --> no triggers are accepted
     620                                                state_init <= WAIT_FOR_DATA_RAM_EMPTY;
     621                                        when WAIT_FOR_DATA_RAM_EMPTY =>
     622                                                if (data_ram_empty = '1') then
     623                                                        new_config <= '1';
     624                                                        state_init <= WAIT_FOR_CONFIG_DONE;
     625                                                end if;
    617626                                        when WAIT_FOR_CONFIG_DONE =>
    618627                                                new_config <= '0';
    619628                                                if (config_chain_done ='1') then
    620629                                                        state_init <= MAIN;
     630                                                        data_generator_run_mode_signal <= DG_run_mode_temp_storage_signal; -- restore former value of DG run mode signal
    621631                                                end if;
    622632                                               
     
    717727                                                        case data_read (15 downto 8) is
    718728                                                        when CMD_START =>
    719                                                                 data_generator_run_mode <= '1';
     729                                                                data_generator_run_mode_signal <= '1';
    720730                                                                state_read_data <= RD_5;
    721731                                                        when CMD_STOP =>
    722                                                                 data_generator_run_mode <= '0';
     732                                                                data_generator_run_mode_signal <= '0';
    723733                                                                state_read_data <= RD_5;
    724734                                                        when CMD_MODE_ALL_SOCKETS =>  -- all data will be send via socket 1..7
Note: See TracChangeset for help on using the changeset viewer.