реклама на сайте
подробности

 
 
> непонятки с симплифай и, FIFO16 на v4
des00
сообщение Sep 7 2005, 05:26
Сообщение #1


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Добрый день господа!

есть двухклоковый дизайн 1 частота ~30MHz, другая 100/200MHz.
развязанный между собой 2 ФИФО. Сигналы чтения, записи по клок доменам разнесены правильно (проверил раз на 10, да и в железе работатет).
Констрейны сиплифаю прописаны тоже, вроде бы, в соответсвии с требованиями документации.

Проблема в том, что симплифай находит дополнительную частоту (system), по сигалам записи, чтения со стороны более высокой частоты.
Причем на RTL ее нет, латчей на этим сигналам (записи, чтения) тоже нет.

В чем может быть проблема ?


--------------------
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Postoroniy_V
сообщение Sep 7 2005, 09:10
Сообщение #2


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(des00 @ Sep 7 2005, 08:26)
Добрый день господа!

есть двухклоковый дизайн 1 частота ~30MHz, другая 100/200MHz.
развязанный между собой 2 ФИФО. Сигналы чтения, записи по клок доменам разнесены правильно (проверил раз на 10, да и в железе работатет).
Констрейны сиплифаю прописаны тоже, вроде бы, в соответсвии с требованиями документации.

Проблема в том, что симплифай находит дополнительную частоту (system), по сигалам записи, чтения со стороны более высокой частоты.
Причем на RTL ее нет, латчей на этим сигналам (записи, чтения) тоже нет.

В чем может быть проблема ?
*

Дык эта...читаем документ - Synplify Pro Reference Manual и видим в главе Timing report следующее

Performance Summary
The Performance Summary section of the timing report reports estimated and
requested frequencies for the clocks, with the clocks sorted by negative slack.
The timing report has a different section for detailed clock information (see
Detailed Clock Report, on page 7-59). The Performance Summary lists the
following information for each clock in the design:
Performance Summary Description
Starting Clock The name of the clock. If the clock name is
system, the clock is a collection of clocks with
an undefined clock event. Rising and falling
edge clocks are reported as one clock domain.
Requested Frequency Target frequency.
Estimated Frequency Estimated frequency after synthesis.
Requested Period Target clock period.
Estimated Period Estimated period after synthesis.
Slack Difference between Requested Period and
Estimated Period.
The none category is a collection of clocks with
an undefined clock event. This can include
clocks that use the global frequency. Slack for
a starting clock listed as none is the worst slack
for all paths in the none category.
Clock Type The type of clock: inferred, declared, derived or
system. The system clock is the delay for the
combinatorial path.
Performance Summary Description

Тоесть - The system clock is the delay for the
combinatorial path.


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
des00
сообщение Sep 7 2005, 10:09
Сообщение #3


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Postoroniy_V @ Sep 7 2005, 04:10)
Тоесть -  The system clock is the delay for the
combinatorial path.


Спасибо за ответ, но вот что странно :
Цитата
If the clock name is
system, the clock is a collection of clocks with
an undefined clock event. Rising and falling
edge clocks are reported as one clock domain.

Если я правильно перевел "Если имя клока - систем (system), то клок это набор клоков с неопределнным событием(event). Возрастающие и спадающие фронты, в отчете идут в одном клокдомене."
с другой стороны
Цитата
The system clock is the delay for the
combinatorial path.

"Систем клок это задержка комбинаторного пути".

Но это в принципе относиться к любому определению клока, как комб задержка между тригерами.

У меня же обработки событий WREN, RDEN (по которыйм он находит клок) нет.
Весь дизайн, в каждом из двух клокдоменов, синхронный


--------------------
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Sep 7 2005, 10:40
Сообщение #4


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(des00 @ Sep 7 2005, 13:09)
Цитата(Postoroniy_V @ Sep 7 2005, 04:10)
Тоесть -  The system clock is the delay for the
combinatorial path.


Спасибо за ответ, но вот что странно :
Цитата
If the clock name is
system, the clock is a collection of clocks with
an undefined clock event. Rising and falling
edge clocks are reported as one clock domain.

Если я правильно перевел "Если имя клока - систем (system), то клок это набор клоков с неопределнным событием(event). Возрастающие и спадающие фронты, в отчете идут в одном клокдомене."
с другой стороны
Цитата
The system clock is the delay for the
combinatorial path.

"Систем клок это задержка комбинаторного пути".

Но это в принципе относиться к любому определению клока, как комб задержка между тригерами.

У меня же обработки событий WREN, RDEN (по которыйм он находит клок) нет.
Весь дизайн, в каждом из двух клокдоменов, синхронный
*


system, the clock is a collection of clocks with
an undefined clock event.
это я бы так перевёл - "system clock это набор тактовых частот с неопределеными событиями по активным фронтам. "
что думаю у вас и есть, тоесть думаю что у вас не задан FALSE PATH
может в этом дело?
да и потот дался вам этот system clock? где пробелма то? rolleyes.gif


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
des00
сообщение Sep 7 2005, 10:56
Сообщение #5


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Postoroniy_V @ Sep 7 2005, 05:40)
что думаю у вас и есть, тоесть думаю что у вас не задан FALSE PATH
может в этом дело?
да и потот дался вам этот system clock? где пробелма то?  rolleyes.gif
*

фалш путь это немного из другой оперы smile.gif
зачем надо, глаза мозолит smile.gif и интересно где там есть третий клок
вот код того модуля
Цитата
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_unsigned.all;
use IEEE.std_logic_arith.all;

library unisim;

library synplify;
use synplify.attributes.all;

entity usb_ctrl_dev is
generic (WIDTH : integer := 16; EPOUT : string := "EP2"; EPIN : string := "EP6");
port
(
in_reset_b : in std_logic;
--- usb interface 
USB_IFCLK : in std_logic;
USB_RST_N : out std_logic;
USB_FD  : inout std_logic_vector(WIDTH-1 downto 0);

USB_SLRD : out std_logic;
USB_SLWR : out std_logic;
USB_SLOE : out std_logic;
USB_FA0  : out std_logic;
USB_FA1  : out std_logic;
USB_PEND : out std_logic; 
USB_SLCS_N : out std_logic;
           
USB_FLAGA : in std_logic;
USB_FLAGB : in std_logic;
USB_FLAGC : in std_logic;
--- ind interface 
LED  : out std_logic;
-- system interface --------------------------------
in_fifo_clock  : in std_logic;

in_fifo_pend  : in std_logic; -- äîëæåí ïîäàâàòüñÿ îäíîâðåìåííî ñ ñèãíàëîì in_fifo_wr_req
in_fifo_wr_req  : in std_logic;
in_fifo_wr_data : in std_logic_vector(WIDTH-1 downto 0);
out_fifo_wr_full : out std_logic;
out_fifo_wr_empty : out std_logic;

in_fifo_rd_req  : in std_logic;
out_fifo_rd_data : out std_logic_vector(WIDTH-1 downto 0);
out_fifo_rd_empty : out std_logic
);
end entity usb_ctrl_dev;

architecture usb_ctrl_dev of usb_ctrl_dev is
component fifo16
generic(
  ALMOST_FULL_OFFSET : BIT_VECTOR := X"080";
  ALMOST_EMPTY_OFFSET : BIT_VECTOR := X"080";
  DATA_WIDTH : INTEGER := 36;
  FIRST_WORD_FALL_THROUGH : BOOLEAN := false);
port(
  ALMOSTEMPTY : out std_ulogic;
  ALMOSTFULL : out std_ulogic;
  DO : out std_logic_vector(31 downto 0);
  DOP : out std_logic_vector(3 downto 0);
  EMPTY : out std_ulogic;
  FULL : out std_ulogic;
  RDCOUNT : out std_logic_vector(11 downto 0);
  RDERR : out std_ulogic;
  WRCOUNT : out std_logic_vector(11 downto 0);
  WRERR : out std_ulogic;
  DI : in std_logic_vector(31 downto 0);
  DIP : in std_logic_vector(3 downto 0);
  RDCLK : in std_ulogic;
  RDEN : in std_ulogic;
  RST : in std_ulogic;
  WRCLK : in std_ulogic;
  WREN : in std_ulogic);
end component;
-- synthesis translate_off
for all: fifo16 use entity unisim.fifo16(fifo16_v);
-- synthesis translate_on
-------------------------------------------------------------------------------------------------------------------------------------
signal fifo_reset : std_logic;

signal wr_fifo_wr_clk  : std_logic;
signal wr_fifo_wr_req  : std_logic;
signal wr_fifo_wr_data    : std_logic_vector(31 downto 0);
signal wr_fifo_wr_almos_full  : std_logic;
signal wr_fifo_wr_pend_data  : std_logic_vector(3 downto 0);

signal wr_fifo_rd_clk  : std_logic;
signal wr_fifo_rd_req  : std_logic;
signal wr_fifo_rd_data  : std_logic_vector(31 downto 0);
signal wr_fifo_rd_err  : std_logic;
signal wr_fifo_rd_empty : std_logic;
signal wr_fifo_rd_almos_empty  : std_logic;
signal wr_fifo_rd_pend_data  : std_logic_vector(3 downto 0);
-------------------------------------------------------------------------------------------------------------------------------------
signal rd_fifo_wr_clk : std_logic;
signal rd_fifo_wr_req : std_logic;
signal rd_fifo_wr_data    : std_logic_vector(31 downto 0);
signal rd_fifo_wr_almos_full  : std_logic;

signal rd_fifo_rd_clk  : std_logic;
signal rd_fifo_rd_req  : std_logic;
signal rd_fifo_rd_data  : std_logic_vector(31 downto 0);
signal rd_fifo_rd_err  : std_logic;
signal rd_fifo_rd_empty : std_logic;
signal rd_fifo_rd_almos_empty  : std_logic;
--- usb signal ------------------------------------------------------------------------------------------------------------------
signal usb_clk : std_logic;
signal usb_sloe_int : std_logic;
signal usb_slcs_int : std_logic;
signal usb_pend_int : std_logic;     
signal usb_slrd_int : std_logic;
signal usb_slwr_int : std_logic;

signal usb_rd_data : std_logic_vector(WIDTH-1 downto 0);
signal usb_wr_data : std_logic_vector(WIDTH-1 downto 0);

signal usb_rd_fifo_empty  : std_logic;
signal usb_wr_fifo_full  : std_logic;

signal usb_pend_need : std_logic;
-- FSM ---------------------------------------------------------
type t_state is (idle, set_rd_addr, set_rd_ctrl_signal, select_rd_ctrl, set_wr_addr, set_wr_ctrl_signal, select_wr_ctrl, set_pend_ctrl_signal);
signal state : t_state;
attribute SYN_ENCODING of state : signal is "onehot";

signal wr_ena : std_logic;
signal rd_ena : std_logic;

signal blinc : std_logic;
signal blinc_counter : std_logic_vector(20 downto 0);
begin 

USB_RST_N <= '1';

USB_FD <= usb_wr_data when (usb_sloe_int = '0') else (others => 'Z');
usb_rd_data <= USB_FD;

USB_SLOE <= not usb_sloe_int;
USB_SLCS_N  <= not usb_slcs_int;
USB_PEND <= not usb_pend_int;

USB_SLRD <= not usb_slrd_int;
USB_SLWR <= not usb_slwr_int;

usb_rd_fifo_empty <= not USB_FLAGA;
usb_wr_fifo_full <= not USB_FLAGC;
usb_clk <= USB_IFCLK;

fifo_reset <= not in_reset_b;

LED <= blinc;
--------- blinc --------------------------------------------------------------------------------------------------------------------------
process(usb_clk, in_reset_b) is
begin
  if (in_reset_b = '0') then
  blinc_counter <= (others => '0');
  blinc <= '0';
  elsif (rising_edge(usb_clk)) then
  blinc_counter <= blinc_counter + '1';
  if (blinc_counter = conv_std_logic_vector(1250000, blinc_counter'length)) then
    blinc <= not blinc;
  end if;
  end if;
end process;
---------------------------------------------------------------------------------------------------------------
-- write up level, read low level
wr_fifo : fifo16
generic map(
  ALMOST_FULL_OFFSET  => X"004", -- it's maximal
  ALMOST_EMPTY_OFFSET => X"006", -- it's minimal
  DATA_WIDTH => 18,  -- + 1 for pend signal
  FIRST_WORD_FALL_THROUGH => false)
port map(
  ALMOSTEMPTY => wr_fifo_rd_almos_empty,
  ALMOSTFULL  => wr_fifo_wr_almos_full,
  DO  => wr_fifo_rd_data,
  DOP  => wr_fifo_rd_pend_data,
  EMPTY  => wr_fifo_rd_empty,
  FULL  => open,
  RDCOUNT => open,
  RDERR  => wr_fifo_rd_err,
  WRCOUNT => open,
  WRERR  => open,
  DI  => wr_fifo_wr_data,
  DIP  => wr_fifo_wr_pend_data,
  RDCLK  => wr_fifo_rd_clk,
  RDEN  => wr_fifo_rd_req,
  RST  => fifo_reset,
  WRCLK  => wr_fifo_wr_clk,
  WREN  => wr_fifo_wr_req
);
------------------------------------------------------------------------
-- read up level, write low level
rd_fifo : fifo16
generic map(
  ALMOST_FULL_OFFSET  => X"004", -- it's maximal
  ALMOST_EMPTY_OFFSET => X"006", -- it's minimal
  DATA_WIDTH => 18,
  FIRST_WORD_FALL_THROUGH => false)
port map(
  ALMOSTEMPTY => rd_fifo_rd_almos_empty,
  ALMOSTFULL  => rd_fifo_wr_almos_full,
  DO  => rd_fifo_rd_data,
  DOP  => open,
  EMPTY  => rd_fifo_rd_empty,
  FULL  => open,
  RDCOUNT => open,
  RDERR  => rd_fifo_rd_err,
  WRCOUNT => open,
  WRERR  => open,
  DI  => rd_fifo_wr_data,
  DIP  => (others => '0'),
  RDCLK  => rd_fifo_rd_clk,
  RDEN  => rd_fifo_rd_req,
  RST  => fifo_reset,
  WRCLK  => rd_fifo_wr_clk,
  WREN  => rd_fifo_wr_req
);
----- to up fifo interface -----------------------------------------------------------------------------------------------------
wr_fifo_wr_clk  <= in_fifo_clock;
wr_fifo_wr_req  <= in_fifo_wr_req;
out_fifo_wr_full  <= wr_fifo_wr_almos_full;
out_fifo_wr_empty <= wr_fifo_rd_empty;

wr_fifo_wr_data(in_fifo_wr_data'range)    <= in_fifo_wr_data;
wr_fifo_wr_data(31 downto in_fifo_wr_data'length)  <= (others => '0');

wr_fifo_wr_pend_data(0)    <= in_fifo_pend;
wr_fifo_wr_pend_data(3 downto 1)  <= (others => '0');

rd_fifo_rd_clk  <= in_fifo_clock;
rd_fifo_rd_req  <= in_fifo_rd_req;
out_fifo_rd_data  <= rd_fifo_rd_data(out_fifo_rd_data'range);
out_fifo_rd_empty  <= rd_fifo_rd_empty;   
----- to low fifo interface -----------------------------------------------------------------------------------------------------
wr_fifo_rd_clk  <= usb_clk;
usb_pend_need <= wr_fifo_rd_pend_data(0);
rd_fifo_wr_clk <= usb_clk;
---------------------------------------------------------------------------------------------------------------------------------
wr_ena <= '1' when (wr_fifo_rd_empty /= '1')and(usb_wr_fifo_full /= '1') else '0';
rd_ena <= '1' when (usb_rd_fifo_empty /= '1')and(rd_fifo_wr_almos_full /= '1') else '0';
 
-- äâóõ òàêòíàÿ ìàøèíà ñîñòîÿíèé
fsm_jump_proc :
process (usb_clk, in_reset_b) is
begin
  if (in_reset_b = '0') then
  state <= idle;
  elsif (rising_edge(usb_clk)) then
  state <= idle;
  case (state) is
    when idle =>
    -- åñëè åñòü äàííûå íà çàïèñü è óñá ãîòîâ äàííûå ïðèíÿòü òî
    if (wr_ena = '1') then
      state <= set_wr_addr;
    -- åñëè óñá ãîòîâ îòäàòü äàííûå è áóôåð íå çàïîëíåí òî
    elsif (rd_ena = '1') then
      state <= set_rd_addr;
    end if; 
   
    when set_rd_addr  => state <= set_rd_ctrl_signal;  -- ñòàâèì àäðåññ
    when set_rd_ctrl_signal => state <= select_rd_ctrl;  -- ÷èòàåì ñ óñá
    when select_rd_ctrl =>          -- ðàçáèðàåìñÿ ÷òî ýòî áûëî, ïèøåì â ôèôî
    if (rd_ena = '1') then state <= set_rd_ctrl_signal;
    end if;
   
    when set_wr_addr  => state <= select_wr_ctrl;    -- ñòàâèì àäðåññ è ÷èòàåì ÷òî áûëî â ôèôî
    when select_wr_ctrl =>          -- ðàçáèðàåìñÿ ÷òî æå ïðî÷èòàëè èç ôèôî
    if (usb_pend_need = '1') then  state <= set_pend_ctrl_signal;
    elsif (wr_ena = '1')  then state <= set_wr_ctrl_signal;
    end if;   
   
    when set_wr_ctrl_signal  => state <= select_wr_ctrl;  -- ïèøåì â óñá äàííûå, åñëè åñòü ÷òî ÷èòàåì èç ôèôî
    when set_pend_ctrl_signal  => state <= idle;  -- ïèøåì â óñá ïåíäû
    when others => null;
  end case;     
  end if;
end process fsm_jump_proc;

--------------- usb fifo addr -------------------------------------------------------------------
fifo_addr0 :
if (EPOUT = "EP4")and(EPIN = "EP8") generate
  process (usb_clk) is
  begin
  if (rising_edge(usb_clk)) then
    if (state = set_rd_addr) then
    -- read addr EP4
    USB_FA0 <= '1';
    USB_FA1 <= '0';
    elsif (state = set_wr_addr) then
    -- write addr EP8
    USB_FA0 <= '1';
    USB_FA1 <= '1';
    end if;
  end if;
  end process;
end generate fifo_addr0;
fifo_addr1 :
if (EPOUT = "EP2")and(EPIN = "EP6") generate
  process (usb_clk) is
  begin
  if (rising_edge(usb_clk)) then
    if (state = set_rd_addr) then
    -- read addr EP2
    USB_FA0 <= '0';
    USB_FA1 <= '0';
    elsif (state = set_wr_addr) then
    -- write addr EP6
    USB_FA0 <= '0';
    USB_FA1 <= '1';
    end if;
  end if;
  end process;
end generate fifo_addr1;
------------ usb cs -----------------------------------------------------------------------------------
-- sc_cs îì ðóëÿò 3 ïðîöåññà
cs_proc :
process (usb_clk, in_reset_b) is
begin
  if (in_reset_b = '0') then
  usb_slcs_int <= '0';
  elsif (rising_edge(usb_clk)) then
  usb_slcs_int <= '0';
  if (state = set_rd_ctrl_signal)or(state = set_wr_ctrl_signal)or(state = set_pend_ctrl_signal) then
    usb_slcs_int <= '1';
  end if;
  end if;
end process cs_proc;   
---------------------- usb read process ------------------------------------------------------
---------------------- usb read ctrl ------------------------------------------------------
rd_ctrl_proc :
process (usb_clk, in_reset_b) is
begin
  if (in_reset_b = '0') then
  usb_sloe_int <= '0';
  usb_slrd_int <= '0';
  elsif (rising_edge(usb_clk)) then
  usb_sloe_int <= '0';
  usb_slrd_int <= '0';
  if (state = set_rd_ctrl_signal) then
    usb_sloe_int <= '1';
    usb_slrd_int <= '1';
  end if;
  end if;
end process rd_ctrl_proc;
---------------------- usb capture process ------------------------------------------------------ 
rd_fifo_wr_data(31 downto usb_rd_data'length)  <= (others => '0');

capture_data_proc :
process (usb_clk, in_reset_b) is
begin
  if (in_reset_b = '0') then
  rd_fifo_wr_data(usb_rd_data'range) <= (others => '0');
  rd_fifo_wr_req <= '0';
  elsif (rising_edge(usb_clk)) then
  rd_fifo_wr_req <= '0';
  if (usb_slrd_int = '1') then rd_fifo_wr_req <= '1';
  end if;
  if (usb_slrd_int = '1') then rd_fifo_wr_data(usb_rd_data'range) <= usb_rd_data;
  end if;
  end if;
end process capture_data_proc;

--------------- write process ----------------------------------------------------------------
---------- wr_fifo rd ctrl --------------------------------------------------------------------
wr_fifo_rd_req <= '1' when (state = set_wr_addr)or((state = set_wr_ctrl_signal)and(wr_ena = '1')) else '0';
---------- usb wr ctrl --------------------------------------------------------------------
wr_ctrl_proc :
process(usb_clk, in_reset_b) is
begin
  if (in_reset_b = '0') then
  usb_slwr_int <= '0';
  usb_wr_data <= (others => '0');
  elsif (rising_edge(usb_clk)) then
  if (state = set_wr_ctrl_signal) then usb_wr_data <= wr_fifo_rd_data(usb_wr_data'range);
  end if;
  usb_slwr_int <= '0';
  if (state = set_wr_ctrl_signal) then usb_slwr_int <= '1';
  end if;
  end if;
end process wr_ctrl_proc; 
--------------- pend process --------------------------------------------------------
pend_proc :
process (usb_clk, in_reset_b) is
begin
  if (in_reset_b = '0') then
  usb_pend_int <= '0';
  elsif (rising_edge(usb_clk))then
  usb_pend_int <= '0';
  if (state = set_pend_ctrl_signal) then usb_pend_int <= '1';
  end if;
  end if;
end process pend_proc;

end architecture usb_ctrl_dev;

вот файл констрейнов
Цитата
................................
define_clock            -name {p:USB_IFCLK}  -freq 50.000 -clockgroup default_clkgroup_0
define_clock            -name {p:in_fifo_clock}  -freq 200.000 -clockgroup default_clkgroup_1
................................

А вот отчет симплифая о клоках
Цитата
......................
Starting Clock    Frequency    Frequency    Period        Period        Slack      Type        Group           
----------------------------------------------------------------------------------------------------------------------
USB_IFCLK          50.0 MHz      167.9 MHz    20.000        5.956        14.044      declared    default_clkgroup_0
in_fifo_clock      200.0 MHz    NA            5.000        NA            NA          declared    default_clkgroup_1
System            1.0 MHz      265.2 MHz    1000.000      3.771        996.229    system      default_clkgroup 
================================================================================
======================================
.......................
====================================
Detailed Report for Clock: System
====================================



Starting Points with Worst Slack
********************************

            Starting                                                  Arrival         
Instance    Reference    Type      Pin      Net                    Time        Slack
            Clock                                                                       
------------------------------------------------------------------------------------------
wr_fifo      System        FIFO16    EMPTY    out_fifo_wr_empty_c    0.764      16.601
wr_fifo      System        FIFO16    EMPTY    out_fifo_wr_empty_c    0.764      16.601
================================================================================
==========


Ending Points with Worst Slack
******************************

            Starting                                                  Required           
Instance    Reference    Type      Pin      Net                      Time        Slack 
            Clock                                                                         
--------------------------------------------------------------------------------------------
state[7]    System        FDP        D        N_88_i                  19.930      16.601
state[2]    System        FDC        D        state_1_sqmuxa_2        19.930      17.494
state[3]    System        FDC        D        state_0_sqmuxa          19.930      18.321
state[6]    System        FDC        D        state_1_sqmuxa          19.930      18.321
wr_fifo      System        FIFO16    RDEN    un3_wr_fifo_rd_req_i    999.236      996.229
wr_fifo      System        FIFO16    RDEN    un3_wr_fifo_rd_req_i    999.236      996.229
================================================================================
============
......................


симплифай находит клок где то внутрях самого FIFO16, но вот где ?
я бы понял если бы он нашел перекос клоков, т.к. внутри ФИФО присходит переход их одного клок домена в другой, по симплифай твердит именно про клок
smile.gif


--------------------
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- des00   непонятки с симплифай и   Sep 7 2005, 05:26
- - 3.14   А в отчете PAR имеется этот тактовый сигнал?   Sep 7 2005, 11:03
|- - des00   Цитата(3.14 @ Sep 7 2005, 06:03)А в отчете PA...   Sep 7 2005, 11:27
- - 3.14   Значит нет и проблемы.   Sep 7 2005, 11:34
|- - des00   Цитата(3.14 @ Sep 7 2005, 06:34)Значит нет и ...   Sep 7 2005, 11:38
- - vetal   Если вы уберете галку "Use clock period for u...   Sep 7 2005, 11:45
|- - des00   Цитата(vetal @ Sep 7 2005, 06:45)Если вы убер...   Sep 7 2005, 11:52
- - vetal   Я соглашусь, что на это не стоит обращать внимание...   Sep 7 2005, 11:59
|- - des00   Цитата(vetal @ Sep 7 2005, 06:59)Я соглашусь,...   Sep 7 2005, 12:07
- - vetal   У меня на разных версиях synplify обработка ведетс...   Sep 7 2005, 15:21
|- - des00   Цитата(vetal @ Sep 7 2005, 10:21)У меня на ра...   Sep 7 2005, 15:45
- - des00   Значится так: снеси симплифай, переустановил занов...   Sep 8 2005, 04:52
- - vetal   Появление system frequency обусловлено наличием че...   Sep 9 2005, 18:17
- - des00   Цитата(vetal @ Sep 9 2005, 13:17)Появление sy...   Sep 10 2005, 06:00


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 18:15
Рейтинг@Mail.ru


Страница сгенерированна за 0.01461 секунд с 7
ELECTRONIX ©2004-2016