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

LVDS на плис XILINX

В проекте есть необходимость использовать LVDS, в документации на Xilinx 7ой серии UG953 нашел OBUFDS с примером использования, и попробовал подключить только его для проверки работоспособности, получился следующий код:

module LVDS(
    input logic reset,
    input logic clk,
    output logic diff_p,
    output logic diff_n,
    output logic Inp
    );
    
    logic Inp_inv;
    logic [7:0] data=8'b11010101;
    logic [3:0] i;
    logic [5:0] div;
    
    OBUFDS #(
         .IOSTANDARD("DEFAULT"),
        .SLEW("SLOW")
         ) 
         OBUFDS_inst (
         .O(diff_p),
         .OB(diff_n),
         .I(Inp)
         );
    
    always_ff @(posedge clk or posedge reset)begin
        if(reset)begin
            Inp <= '0;
            Inp_inv <= '1;
            i <= '0;
            div <= '0;
        end
        else begin
            Inp <= data;
            Inp_inv <= !data;
            if(div==9)begin 
                if(i<7) i <= i+1;
                else i<=0;
                div <= 0;
            end
            else div <= div+1;
        end
    end

В симуляциях все работает:

image.thumb.png.f20adff49721286e4e0c35f50375c2b2.png

Но когда загрузил на плату, то никаких сигналов с выхода не увидел. 

Плату использую Basys 3 от digilent, по схеме нашел куда подключаются диф. пары (использовать решил выводы микросхемы J3 и K3 они соответсвуют цепям XADC1_P и XADC1_N). Скрин со схематика:

image.thumb.png.a0a55ea5ba55749bd039c367cef14193.png

Возможно что-то не так подключил или есть какие-то еще нюансы, может сможет кто помочь. Заранее спасибо

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


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

10 минут назад, MegaVolt сказал:

Сигналы на пины назначены?

CLK откуда берётся?

Да назначены, CLK с W5. Вот скрин пинов:

 image.thumb.png.fe974636ec13124d813e6994004b5b85.png

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


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

Сама плис стартует? Другие сигналы живые?
Какая нибудь моргалка светодиодом работает?

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


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

В 14.07.2023 в 17:59, MegaVolt сказал:

Сама плис стартует? Другие сигналы живые?
Какая нибудь моргалка светодиодом работает?

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

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

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


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

В варнингах есть упоминание этих сигналов и выводов?

В карте пинов после разводки эти пины остались и имеют те же параметры?

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


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

я конечно слепой... однако сиё описание собирается в "константу"

data  ни отчего не зависит и inp соответственно неизменно. а кромя ресета

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


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

22 часа назад, MegaVolt сказал:

В варнингах есть упоминание этих сигналов и выводов?

В карте пинов после разводки эти пины остались и имеют те же параметры?

Да! Было упоминание, я не заметил, что это связано с пинами. Сообщение было следующие "[Vivado 12-1411] Cannot set LOC property of ports, the negative port (N-side) 'diff_n' of a differential pair cannot be placed on a positive package pin 'J3' (IOBM). ["D:/Work/SpaceWire/SpW_most_castom/RTL/exper_for_ISERDESE2/exper_for_ISERDESE2.srcs/constrs_2/new/LVDS_xds.xdc":7]", по всей видимости положительный сигнал зацепился на отрицательный и наоборот. Это странно потому что я делал с помощью средств vivado, а он мне получается создал неправильные констреины:

set_property PACKAGE_PIN J3 [get_ports diff_n]
set_property PACKAGE_PIN K3 [get_ports diff_p]
set_property IOSTANDARD LVDS_25 [get_ports diff_n]
set_property IOSTANDARD LVDS_25 [get_ports diff_p]

было так, хотя J3 это положительный. Исправил:

set_property PACKAGE_PIN J3 [get_ports diff_p]
set_property PACKAGE_PIN K3 [get_ports diff_n]
set_property IOSTANDARD LVDS_25 [get_ports diff_n]
set_property IOSTANDARD LVDS_25 [get_ports diff_p]

Все заработало, большое спасибо за помощь, в следующий раз буду внимательнее к варнингам 🙂

21 час назад, Alex77 сказал:

я конечно слепой... однако сиё описание собирается в "константу"

data  ни отчего не зависит и inp соответственно неизменно. а кромя ресета

Нет вы, наверное, что-то проглядели, все синтезируется в нормальную схему)

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

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


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

Тупо взял "исходник из первого сообщения"+ добавил endmodule получил:

schematic.pdf

 

в таком случае "исходник" не полноценный.

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

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


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

посмотри  Figure 3-1: The functional block diagram of the FPGA AD Testing

я б делал по блок схеме

 

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


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

ммм... темой не ошиблись ?

может это сюда ?

 

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


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

4 часа назад, Koctix сказал:

Все заработало, большое спасибо за помощь, в следующий раз буду внимательнее к варнингам 🙂

:)) Да варнинги нужно читать хотя бы 1 раз :))) Потом можно игнорить.

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


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

18 hours ago, Koctix said:

Cannot set LOC property of ports, the negative port (N-side) 'diff_n' of a differential pair cannot be placed on a positive package pin 'J3' (IOBM).

Обычно, у меня такие ошибки с LOC вылезают через пару часов на стадии write bitstream и приходится заново. Теперь я тоже буду смотреть варнинги. Интересно, что оно не выдало именно ошибку

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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