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

 
 
5 страниц V  < 1 2 3 4 5 >  
Reply to this topicStart new topic
> Принять LVDS от HMCAD1511
ViKo
сообщение Aug 3 2016, 12:59
Сообщение #31


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(bogaev_roman @ Aug 3 2016, 15:37) *
Значит, скорее всего используется как обычный регистр. А Так проще всего было залезть в chipplaner, найти пин и от него линию до реального регистра со всеми внутренностями.

Там в той ячейке много чего напихано. Добрался до IR_FIFO_USERDES. В нем все волшебство и происходит.

Цитата(bogaev_roman @ Aug 3 2016, 15:37) *
А вообще SERDES на самом быстром циклон5 гарантированно работает на скорости 875 (j=8), что ниже заявленной Вами.

Видел. Но пока эту ( ) затею не оставил. Поскольку серии Cyclone V, Arria V, Stratix V выпускаются по одному 28 нм техпроцессу. Можно надеяться...
И вариант - использовать J = 2, DDR, записывать биты, как удастся в память, а при чтении сортировать, как надо. Мне главное - захватить. 500 МГц по Циклону с градацией 7 могут бегать.
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 3 2016, 13:09
Сообщение #32


Профессионал
*****

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Цитата(ViKo @ Aug 3 2016, 15:59) *
Видел. Но пока эту ( ) затею не оставил.

Вообще на стратикс4 я подымал serdes (много линий было) на ddr до 1200 (при заявленных 1240 вроде) и работало все как часы без единой ошибки месяцами (и условия были не лучшими, в смысле температуры). Так что хоть и попахивает шаманством, но при определенных условиях может и заработать.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Aug 3 2016, 13:19
Сообщение #33


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Сдвинул на 180° фазу FCLK, байт захватывается правильно. Осталось только биты реверсировать.
Go to the top of the page
 
+Quote Post
Алга
сообщение Aug 3 2016, 13:36
Сообщение #34


Частый гость
**

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



На одной, двух, трех FPGA все будет работать на "ура". Получаешь другую партию FPGA- пошли сбои.
Вам это надо?

Сообщение отредактировал Алга - Aug 3 2016, 14:01
Go to the top of the page
 
+Quote Post
ViKo
сообщение Aug 3 2016, 14:03
Сообщение #35


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Алга @ Aug 3 2016, 16:36) *
На одной, двух, трех FPGA все будет работать на "ура". Получаешь другую партию FPGA- пошли сбои.
Вам это надо?

rolleyes.gif
Вот как биты реверсирую в ModelSim.
Код
    logic    [63 : 0]    DRev;
    initial begin
        forever @(posedge Clk) begin
            DRev <= { << bit {D}};
        end
    end

Есть ли способ проще?
Go to the top of the page
 
+Quote Post
ViKo
сообщение Aug 3 2016, 15:05
Сообщение #36


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Про bitslip прочитал, но не понял.
Use 'rx_channel_data_align' input port
Turn on this option to control bit insertion on a channel-by-channel basis to align the word boundaries of the incoming data. The data slips one bit for every pulse on the
rx_channel_data_align port. This option is available only if you use a dedicated SERDES block.
You can use control characters in the data stream so your logic can have a known pattern to search for. You can compare the data received for each channel, compare to the control
character you are looking for, then pulse the rx_channel_data_align port as required until you successfully receive the control character.
To use this port, you must meet the following requirements:
• The minimum pulse width is one period of the parallel clock
in the logic array ( rx_outclock ).
• The minimum low time between pulses is one period of the
parallel clock.
• There is no maximum high or low time.
• Valid data is available on the third parallel clock cycle after
the rising edge of the rx_channel_data_align signal.

Посылая импульс(ы) на rx_channel_data_align[7:0], что я получу на выходе? На данные подавать нули, а на эти биты выравнивания единицы, и смотреть, когда они на выходе вылезут? Так?
Go to the top of the page
 
+Quote Post
ViKo
сообщение Aug 4 2016, 11:18
Сообщение #37


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Можно было проверить в симуляторе вышесказанное, но не хочу. Там точно не так, как написал.
Не смог запустить временнУю симуляцию в Quartus 13.1, только функциональная работает. Похоже, надо установить новейший Quartus, чтобы Cyclone V использовать.
Go to the top of the page
 
+Quote Post
Алга
сообщение Aug 4 2016, 12:05
Сообщение #38


Частый гость
**

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



У Xilinx в общем виде этот процесс следующий.
Если через SERDES также, как и 8бит данных, принять FCLK, то на выходе будет код "11110000" или "00001111". FCLK как 9 линия данных.
Те в режиме этой калибровки (битслип) должны принять такие данные на этом SERDESe. Если они не совпадают то выполняется сдвиг на 1 бит SERDESом принятых данных (подается сигнал на SERDES означающий сдвиг) . И опять производится сравнение с требуемым кодом. И так повторяются действия пока не совпали. Фактически скользишь по битовому потоку пока не встретил требуемый код байта. Так выравниваются границы принимаемых битовых данных по FCLK, те определяются байты данных.
У вас какое количество этих АЦП в системе?
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Aug 4 2016, 12:17
Сообщение #39


Профессионал
*****

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Цитата(Алга @ Aug 4 2016, 15:05) *
У Xilinx в общем виде этот процесс следующий.

У альтеры подход тот же.
to ViKo
На стр 15,16 с времянками все приведено в упамянутом уже несколько раз доке https://www.altera.com/content/dam/altera-w...re/an/an236.pdf
Кстати, про моделирование на вентильном уровне - пытался смоделировать GX в 11 квартусе для stratixiv - альтера подсовывала вместо реального передатчика на определенном уровне детализации функциональную модель, никакие времянки с внутренностями посмотреть не получилось.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Aug 4 2016, 12:37
Сообщение #40


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Алга @ Aug 4 2016, 15:05) *
У Xilinx в общем виде этот процесс следующий.
Если через SERDES также, как и 8бит данных, принять FCLK, то на выходе будет код "11110000" или "00001111". FCLK как 9 линия данных.
Те в режиме этой калибровки (битслип) должны принять такие данные на этом SERDESe. Если они не совпадают то выполняется сдвиг на 1 бит SERDESом принятых данных (подается сигнал на SERDES означающий сдвиг) . И опять производится сравнение с требуемым кодом. И так повторяются действия пока не совпали. Фактически скользишь по битовому потоку пока не встретил требуемый код байта. Так выравниваются границы принимаемых битовых данных по FCLK, те определяются байты данных.
У вас какое количество этих АЦП в системе?

Похоже, у Altera так же работает. Проверю позже. Только я не нахожу, каким образом задать FCLK вместо данных. Не снаружи же переключать?
АЦП у меня один был бы. В нем и так 4 входа.
Сейчас рассматриваю альтернативные решения. Шариковых корпусов боюсь.

Цитата(bogaev_roman @ Aug 4 2016, 15:17) *
На стр 15,16 с времянками все приведено в упомянутом уже несколько раз доке.

Спасибо. Я уже все, что можно, скачал. Теперь скачу по документам, как лось по кукурузе.
Ага, шаблон-то сам АЦП выдаст, когда запрограммирую. Тот, который умеет. Этот умеет.
Go to the top of the page
 
+Quote Post
Алга
сообщение Aug 4 2016, 12:44
Сообщение #41


Частый гость
**

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



Ничего переключать не надо. Этот АЦП следующие выходы: 8 линий данных, FCLK (frame clk), LCLK. (все дифф. сигналы).
Трудно в ФПГА сделать 9 SERDESов?
Go to the top of the page
 
+Quote Post
ViKo
сообщение Aug 4 2016, 12:47
Сообщение #42


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Алга @ Aug 4 2016, 15:44) *
Ничего переключать не надо. Этот АЦП следующие выходы: 8 линий данных, FCLK (frame clk), LCLK. (все дифф. сигналы).
Трудно в ФПГА сделать 9 SERDESов?

Ага, сообразил. 8 входов я в одной мегафункции сделал. Они же потом в виде 64-битовой шины в память пойдут. А биты от 9-го канала в память записывать не надо, а выдавать для проверки сдвига.
Да и зачем, если АЦП может выдать шаблон?
А еще боюсь не найти генератор на 1 GHz.
Go to the top of the page
 
+Quote Post
Алга
сообщение Aug 4 2016, 12:59
Сообщение #43


Частый гость
**

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



есть и такой, допустим фирмы Abracon. С digikey.com или посредники, кто с ними работает, у вас присутствуют.

Как у Алтеры производится установка битклока в центр данных?

Эта подстройка (калиброрвка)?
Go to the top of the page
 
+Quote Post
ViKo
сообщение Aug 4 2016, 13:14
Сообщение #44


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Алга @ Aug 4 2016, 15:59) *
Как у Алтеры производится установка битклока в центр данных?
Эта подстройка (калиброрвка)?

ФАПЧ используется, в ней и создаются такты на бит и на все слово. А фазу можно выбрать из 8 вариантов (в документации видел 16, наверное, для другого семейства). Так что на любой бит сдвинуться можно. Ну а попасть в нужное место одного бита - похоже, никак. Задержками входных сигналов можно, наверное, подстроиться.
В Arria есть DPA - подстройка фазы.
Go to the top of the page
 
+Quote Post
Алга
сообщение Aug 4 2016, 13:21
Сообщение #45


Частый гость
**

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



Кто эту подстройку выполняет?
Встроенный в SERDES автомат или пользователь сам должен организовать этот процесс подстройки
посредством внешнего автомата?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 04:43
Рейтинг@Mail.ru


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