Перейти к содержанию
    

После того , как запускаю "Run".Идет бесконечное Waiting for clock.Нашел самом сообщение об ошибке в литературе: "Логический анализатор выполняет захват триггера включения или в запущенном времени и ожидает тактовый сигнал для перехода".Но толком и не понял.Дело в самом CLOCK?Или , что-то другое?На большинство форумах пишут , что виноват CLOCK , но испытав способы устранения, не пришел к успешному результату.Прошу помочь в сложившейся ситуации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проблема с сигналом тактирования для сигналтап, его нет, ищите причину.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проблема с сигналом тактирования для сигналтап, его нет, ищите причину.

Т.е. я его , как-то некорректно указал в самой программе?

 

Я использовал обыкновенный делитель.Вот отрывок.

 

always @(posedge ADC_CLK) begin   

                                               

    if (COUNT == (SYS_CLOCK_FREQ/2 - 1)) begin
        timer_2Hz <= 1'b1;                                  
        COUNT           <= '0;                                     
    end
    else begin
        COUNT           <= COUNT+1;                               
        timer_2Hz <= 1'b0;                                
    end
end

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Покажите настройки сигнслтап

 

Вот прикладываю.Я вообще не понимаю почему не видит он его.

post-95746-1498635402_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ADC_CLK вручную прописали или по нажатию кнопки выбрали, если вручную, то выбирайте из меню по нажатию кнопки.

Иначе смотрите наличие ADC_CLK.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ADC_CLK вручную прописали или по нажатию кнопки выбрали, если вручную, то выбирайте из меню по нажатию кнопки.

Иначе смотрите наличие ADC_CLK.

По нажатию.Таким образом.Он у меня прописан в теле модуля. Да и в Pin Planner.Что ещё может быть не так -то?

post-95746-1498636243_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Судя по названию линий, АЦП у вас с SPI интерфейсом, а ADC_CLK - клок для SPI со стороны FPGA , т.е. не должен быть входом и Вы должны сами его сформировать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Судя по названию линий, АЦП у вас с SPI интерфейсом, а ADC_CLK - клок для SPI со стороны FPGA , т.е. не должен быть входом и Вы должны сами его сформировать.

Я должен сам реализовать "клок"?

А таким образом реализовывать нельзя?

 

reg DATA_TEMP [96:0];                                  // Разрядность даннных АЦП

reg RDY;

reg CNV ;

reg serial_data;

reg SERIAL_BIT;

reg TEMP [96:0];

reg COUNT;


always @(posedge ADC_CLK) begin   

                                               

    if (COUNT == (SYS_CLOCK_FREQ/2 - 1)) begin
        timer_2Hz <= 1'b1;                                  
        COUNT           <= '0;                                     
    end
    else begin
        COUNT           <= COUNT+1;                               
        timer_2Hz <= 1'b0;                                
    end
end
                                                                // Утверждают сигнал CNV
always @ (negedge ADC_CLK) 
        begin
            if ((COUNT == 97) || (COUNT == 98))
                CNV = 1'b0;
            else 
                CNV = 1'b1;
                     end
                     
                                                              // Чтение последовательных данных в 97-битовый регистр. После этого преобразовать его в параллельный, если счетчик равен 97 (конец потока данных)
                     
                       always @ (negedge ADC_CLK)
         
        begin
                         DATA_TEMP[CNV]   <= (serial_data);
            if (COUNT == 97)
                TEMP <= DATA_TEMP;
                     end
always_ff @(posedge ADC_CLK) begin
    if (timer_2Hz == 1'b1) begin
        timer_1Hz <= ~timer_1Hz;
    end
end
                    
            assign ADC_CNV = CNV ;
            
             
endmodule

Изменено пользователем Ensider

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрите доку на АЦП, сигнал АЦП соответствующий Вашему ADC_CLK является его входом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрите доку на АЦП, сигнал АЦП соответствующий Вашему ADC_CLK является его входом.

Я это понял. Мне просто сказали организовать делитель с такой-то частотой.Я его организовал. Мне нужен клок , который непосредственно на FPGA идет? Что-то все перепуталось. И да если у меня его нет , как уже было сказано , его надо написать?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Делитель какой частоты? Можете взять ее с клоковой ножки FPGA, подключить PLL и затактировать свою систему клоком с PLL.

 

И да если у меня его нет , как уже было сказано , его надо написать?

Его нужно откуда-то взять, а это, как вариант, клоковая ножка FPGA, при условии что на нее подается сигнал тактирования.

 

И да, Ваш делитель - "не совсем делитель ", высокий уровень один такт ADC_CLK, все остальное время низкий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Похоже что сигналтапу не хватает клоков, чтобы заполнить весь буфер. На АЦП, видимо, у вас идет клок, разрешаемый чипселектом, а не постоянно? В таком случае сделайте еще один такой же клок, но который будет работать постоянно. Тогда сигналтап от него заработает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Делитель какой частоты? Можете взять ее с клоковой ножки FPGA, подключить PLL и затактировать свою систему клоком с PLL.

Делитель с частотой 10 МHz. Это все через ALTPLL делается?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Должен быть постоянный клок, синхронный с данными, которые хочется захватить. Идет ли он извне или генерируется внутри, мне казалось это не принципиально.

В приведенном куске кода убрана шапка модуля - зачем? Чтоб труднее было помочь?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...