PDA

Просмотр полной версии : Адаптация конфигураций с Terasic DE1 на DE2



vazman
23.01.2016, 17:41
Приехала дев-борда. Пытаюсь конвертировать под нее проекты с de1. Например, Радио86рк. Переделал все пины под DE2. Скомпилил, залил. Нет изображения. По ощущениям работает(клавиши щёлкают). На de2 vga для каждого цвета имеет 10 пинов, на de1 только 4. Можно вкратце, что это за пины? Что сделать на de2 с незадействованными ?

ivagor
23.01.2016, 18:02
RGB [3:0] de1 нужно подать на [9:6] de2. Можно еще и на [5:2] (типа округление). А можно просто обнулить [5:0]. Т.к. на de2 "настоящий" видеоЦАП, в отличие от de1, то для его нормальной работы нужно задать еще 3 сигнала - клок, синхру и бланк. Для примера можно посмотреть мультиверсию вектора.

vazman
23.01.2016, 20:14
А можно assigment`ы сразу приделать от свой борды?? Должно быть как то возможно...

А то я правил вручную...


Разбираюсь с мульверсией вектора..
VGA_BLANC=1 VGA_SYNC=0.. биты [5:0] R,G,B =0 это понятно
VGA_CLK=clkVGA.. который, в свою очередь, равен clk96=clkdiv[1]
А где и как берётся clkdiv я пока найти не могу...

reg [3:0] clkdiv;
always @(posedge clk384) begin
pal_phase <= pal_phase_next;
clkdiv<=clkdiv+1;
end
То есть, получается, VGA_CLK, в два раза реже clk384?? по логике и названиям - в четыре должно быть.. Что я не понимаю..
Ладно. Я пытаюсь понять - что это за сигнал и как аналогичный сигнал формировать для других проектов.. Этот сигнал всегда должен быть определённой частоты для ВГА?? или будет разным для разных компов?

ivagor
23.01.2016, 21:04
По хорошему на видеоЦАП надо подавать пикселклок. Или в кратное число раз большую частоту (т.е. в векторе можно подать и clk96), хотя лучше все же именно пикселклок. На de2-115 версия цапа с максимальной частотой 140 МГц (но можно очень сильно "оверклокнуть"), скорее всего на de2 тоже.

ivagor
24.01.2016, 11:22
То есть, получается, VGA_CLK, в два раза реже clk384?? по логике и названиям - в четыре должно быть..
Да, в 4. Хотя в данном случае достаточно было бы и 24 МГц. Больше чем 24 нужно было для ТВ, но в этой мультиверсии, насколько помню, нормального ТВ для 115 и soc нет. Потом я сделал версию для 115 с нормальным ТВ-out, там вга клок 144 МГц.


Этот сигнал всегда должен быть определённой частоты для ВГА?? или будет разным для разных компов?
Зависит от пикселклока конкретного компа.

- - - Добавлено - - -


Больше чем 24 нужно было для ТВ
Уточню - нужно было для цветного ТВ (композита и S-Video с пал-кодера), а для ч/б и 12 МГц бы хватило

vazman
25.01.2016, 18:28
Как всё-таки вычислить пиксельклок?? Напрмер, Радио86РК. Как я понял - весь тактируется от clk50mhz
Добавил
assign VGA_BLANC = 1'b1;
assign VGA_SYNC = 1'b0;
assign VGA_CLK = clk50mhz;
assign VGA_R[9:6] = VGA_R[3:0];
assign VGA_G[9:6] = VGA_G[3:0];
assign VGA_B[9:6] = VGA_B[3:0];
и поменял вызов

rk_video vid(.clk50mhz(clk50mhz), .hr(VGA_HS), .vr(VGA_VS), .cce(vid_cce),
.r(VGA_R[3:0]), .g(VGA_G[3:0]), .b(VGA_B[3:0]), .line(vid_line), .ichar(vid_char),
.vsp(vid_vsp), .lten(vid_lten), .rvv(vid_rvv) );

Видео всё равно не работает.

ivagor
25.01.2016, 19:03
assign VGA_R[9:6] = VGA_R[3:0];
assign VGA_G[9:6] = VGA_G[3:0];
assign VGA_B[9:6] = VGA_B[3:0];это не надо, можно так:
.r(VGA_R[9:6]), .g(VGA_G[9:6]), .b(VGA_B[9:6])

vazman
27.01.2016, 17:55
Получилось запустить РК86 на de2. Спасибо за помощь. Плохо быть дураком.. Долго не мог догадаться, что новые сигналы, которых нет на de1(VGA_BLANС VGA_SYNC VGA_CLK), надо описать как выходы в главном модуле.. А ещё потом некоторое время не допетривал, что VGA_BLANС на самом деле VGA_BLANK
Понемножку теперь постигаю verilog..

ivagor
27.01.2016, 19:15
vazman, поздравляю! Кроме de1 еще хорошие источники для адаптаций reverse u8/9/10 (16 посложнее). Из того, что есть на "старых" reverse и нет на de1: орион и специалист mx. На 115 они адаптировались легко, орион и на de2 встанет без проблем, со специалистом mx наверно придется немного подумать.