hardcopy debug 2-4-13

Upload: danny-oneill

Post on 03-Jun-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 HardCopy Debug 2-4-13

    1/60

    Applications Note

    1020 pin SoC Step-By-Step Test

    Development and Debug

  • 8/12/2019 HardCopy Debug 2-4-13

    2/60

  • 8/12/2019 HardCopy Debug 2-4-13

    3/60

  • 8/12/2019 HardCopy Debug 2-4-13

    4/60

  • 8/12/2019 HardCopy Debug 2-4-13

    5/60

  • 8/12/2019 HardCopy Debug 2-4-13

    6/60

  • 8/12/2019 HardCopy Debug 2-4-13

    7/60

  • 8/12/2019 HardCopy Debug 2-4-13

    8/60

    Observations

    n the white experimental:

    1. Jeff's generates fat STROBEIO (ASTROBE-DTRSOBE-ASTROBE) Beginning of his State 5 till the end of State 7

    2. HC's REPLYIO gets fat in the middle of Jeff's State D six XB clocks after fat STROBEIO

    3. RDCON* fires Lo in State A and D

    4. REPYIO gets fat on 1st rising edge of RDCON* after RDCON* fires LO the first time

    n the Reference:

    1. REPYIO also gets fat on 1st rising edge of RDCON* after RDCON* fires LO the first time

    2. Fat STROBEIO applied for 3 clocks at proper Address 9FFFCF3 and HC responds with REPLYIO fat (DSENs-READY-DSENs-READY...) six-sevenclocks after Fat STROBEIO

    White is experimental, black is reference.

  • 8/12/2019 HardCopy Debug 2-4-13

    9/60

  • 8/12/2019 HardCopy Debug 2-4-13

    10/60

  • 8/12/2019 HardCopy Debug 2-4-13

    11/60

    ect is the individual TLAs for CF3 and CFB and a composite drawing with those plus the reference lined up. The reads are working correctly!

  • 8/12/2019 HardCopy Debug 2-4-13

    12/60

  • 8/12/2019 HardCopy Debug 2-4-13

    13/60

  • 8/12/2019 HardCopy Debug 2-4-13

    14/60

  • 8/12/2019 HardCopy Debug 2-4-13

    15/60

  • 8/12/2019 HardCopy Debug 2-4-13

    16/60

  • 8/12/2019 HardCopy Debug 2-4-13

    17/60

  • 8/12/2019 HardCopy Debug 2-4-13

    18/60

    IDEN

  • 8/12/2019 HardCopy Debug 2-4-13

    19/60

    Raceway Hardcopy

  • 8/12/2019 HardCopy Debug 2-4-13

    20/60

  • 8/12/2019 HardCopy Debug 2-4-13

    21/60

  • 8/12/2019 HardCopy Debug 2-4-13

    22/60

    1. Hardcopy Raceway Top

  • 8/12/2019 HardCopy Debug 2-4-13

    23/60

  • 8/12/2019 HardCopy Debug 2-4-13

    24/60

  • 8/12/2019 HardCopy Debug 2-4-13

    25/60

  • 8/12/2019 HardCopy Debug 2-4-13

    26/60

  • 8/12/2019 HardCopy Debug 2-4-13

    27/60

    2. raceway_top_tb.vhd

  • 8/12/2019 HardCopy Debug 2-4-13

    28/60

  • 8/12/2019 HardCopy Debug 2-4-13

    29/60

  • 8/12/2019 HardCopy Debug 2-4-13

    30/60

  • 8/12/2019 HardCopy Debug 2-4-13

    31/60

  • 8/12/2019 HardCopy Debug 2-4-13

    32/60

  • 8/12/2019 HardCopy Debug 2-4-13

    33/60

  • 8/12/2019 HardCopy Debug 2-4-13

    34/60

  • 8/12/2019 HardCopy Debug 2-4-13

    35/60

  • 8/12/2019 HardCopy Debug 2-4-13

    36/60

    3. Hardcopy Compare

  • 8/12/2019 HardCopy Debug 2-4-13

    37/60

  • 8/12/2019 HardCopy Debug 2-4-13

    38/60

  • 8/12/2019 HardCopy Debug 2-4-13

    39/60

    4.LED Driver

  • 8/12/2019 HardCopy Debug 2-4-13

    40/60

  • 8/12/2019 HardCopy Debug 2-4-13

    41/60

  • 8/12/2019 HardCopy Debug 2-4-13

    42/60

    5. Hardcopy Ident Read

  • 8/12/2019 HardCopy Debug 2-4-13

    43/60

  • 8/12/2019 HardCopy Debug 2-4-13

    44/60

  • 8/12/2019 HardCopy Debug 2-4-13

    45/60

  • 8/12/2019 HardCopy Debug 2-4-13

    46/60

  • 8/12/2019 HardCopy Debug 2-4-13

    47/60

  • 8/12/2019 HardCopy Debug 2-4-13

    48/60

  • 8/12/2019 HardCopy Debug 2-4-13

    49/60

    6. Clock Module

  • 8/12/2019 HardCopy Debug 2-4-13

    50/60

    16.6 33.3 49.9 66.6 83.2 99.9

    66 MHz

    20 MHz

    33 MHz 0 1 0 1

    75% Duty Cycle

    --------------------------------------------------------------------------------

    -- Copyright 2011

    -- At-Spex

    -- All Rights Reserved

    --

    -- Project : MERCURY_COMPUTER_STRATIX

    -- Filename : clocks.vhd

    -- Title : Clock Generator Module

    --

    --------------------------------------------------------------------------------

    -- Functional Description:

    -- This module synchronizes RESET_OUT_N to XCLKI. It also generates XSYNCI_N

    -- for the Board on the falling edge of XCLKI when the control phase is low for

    -- the Interlink. The Board will use this to generate its own control phase that

    -- is 180 degrees out of phase with the Interlink (master).

  • 8/12/2019 HardCopy Debug 2-4-13

    51/60

    --

    -- To do:

    -- None

    --

    -- Tool issues and dependencies:

    -- None

    --

    -- Technology issues and dependencies:

    -- None - Technology Independent

    --

    -- Design issues and limitations:

    -- None

    --

    -- Baseline or reference:

    -- None

    --

    --------------------------------------------------------------------------------

    -- Date: 2011-11-09

    -- Revision: 1.0

    -- Authors: JPP/DMO

    --------------------------------------------------------------------------------

    --

    -- Entity: clocks

    -----------------------------------------------------------------------------

    library ieee;

    use ieee.std_logic_1164.all;

    use ieee.std_logic_unsigned.all;

    use ieee.numeric_std.all;

    -- synopsys translate_off

    use ieee.VITAL_Timing.all;

    library proasic3;

    use proasic3.all;

    -- synopsys translate_on

  • 8/12/2019 HardCopy Debug 2-4-13

    52/60

    entity clocks is

    port (

    --LMO500 outputs:

    XCLKI : in std_logic; -- 66 MHz clock to tester FPGA and DUT

    RESET_IN_N : in std_logic; -- Synchronous Reset from tester

    --RACEway interface:

    RESET_OUT_N : out std_logic; -- Synchronized reset

    PHASE : out std_logic; -- Control Phase, divde by 2 of XCLKI

    XSYNCI_N : out std_logic -- synchronization output for Board

    );

    end entity clocks;

    ---------------------------------------------------------------------------

    --

    -- Entity: ident_read

    -- Architecture: rtl

    --

    ---------------------------------------------------------------------------

    architecture rtl of clocks is

    ------------------------------------------------

    signal ctl_phase : std_logic; -- phase at master

    signal clk_count : std_logic_vector(1 downto 0); -- clock count to generate sync pulse for slave

    signal reset_q : std_logic; -- for reset synchronizer

    signal reset_n : std_logic;

    ---------------------------------------------------------------------------

    -- Begin

    ---------------------------------------------------------------------------

    begin

  • 8/12/2019 HardCopy Debug 2-4-13

    53/60

    p_synchronizer:

    process (RESET_IN_N, XCLKI)

    begin

    if RESET_IN_N = '0' then

    reset_q

  • 8/12/2019 HardCopy Debug 2-4-13

    54/60

  • 8/12/2019 HardCopy Debug 2-4-13

    55/60

  • 8/12/2019 HardCopy Debug 2-4-13

    56/60

  • 8/12/2019 HardCopy Debug 2-4-13

    57/60

    Test bench state machine.

    isio-slave_state_machine.pdf

  • 8/12/2019 HardCopy Debug 2-4-13

    58/60

  • 8/12/2019 HardCopy Debug 2-4-13

    59/60

    Ident State Machine. All state transitions on XCLKI

    WAIT_FOR_GOROUTE_1

    ROUTE=DATA

    REQO=1

    GO=0 OR REQI=1 OR 0

    ROUTE_2

    ROUTE=DATA

    REQO=1astrobe=1

    SH_ROUTE

    SHIFTED_ROUTE=DATA

    REQO=1

    astrobe=1

    ADDR_1

    DATA=ADDRESS

    REQO=1astrobe= 1

    ADDR_2

    DATA=ADDRESSREQO=1

    dstrobe=1

    REPLYIO=0

    FINAL_ASTROBE

    REQO=1

    astrobe=1

    WAIT4RDY_1

    REQO=1

    WAIT4RDY_2

    REQO=1

    WAIT4RDY_3

    REQO=1

    0 & REPLYIO=1

    WAIT4READ

    REQO=1

    READ_WD1

    REQO=1

    RESULTS(63 downto 32)

    = DATA

    READ_WD2

    REQO=1

    RESULTS (31 downto 0) = DATA

    DATA_RDY=1

    error_asserted=RDCONIO

    GO=1 & REQI=0 & 1

    0 & REPLYIO=11 & REPLYIO=1

    Power on

    1OR REPLYIO=0

  • 8/12/2019 HardCopy Debug 2-4-13

    60/60