Спасибо, завтра солью и отпишусь.
Дома в будни сижу на смарте.
Вид для печати
Спасибо, завтра солью и отпишусь.
Дома в будни сижу на смарте.
Надо смотреть даташит на конкретную ПЛИС, максимальная тактовая ограничена и сама по себе, и из-за логики между триггерами, сигнал на входе триггера появиться не успеет. У второго Циклона 400 МГц, по-моему, но 32-битный сумматор даёт задержку около 10 нс, то есть больше 100 МГц никак, а реально ещё меньше.
- - - Добавлено - - -
14 МГц * 9 = 126 МГц
126 МГц / 10 = 12.6 МГц, половина частоты 640x480x60, отклонение 0.1%
14 МГц * 10 = 140 МГц
140 МГц / 7 = 20 МГц, ровно половина частоты 800x600x60
А ещё можно сделать дробный делитель, соотношение вход-выход может быть вообще любым, только период на выходе будет немного прыгать.
Сейчас строчная = 140 000 000/12/373=31,2779 кГц, отклонение 0,09% при 746 тиках на строку (вместо 800)
При этом активная часть экрана по горизонтали разделена на 21+256+21 (бордюр/окно/бордюр)
Делал и на 28МГц VGA, но там окошко даже меньше стандартного, один сплошной бордюр.(((
И не забывай, что dosikus собирается видеобуфер в SDRAM убрать, а ещё неизвестно, с каким периодом его процессор будет в память ломиться.
Ибо в ReVerSe16 нет SRAM, только SDRAM и до 66 килобайт BRAM, часть из которых будет занята под ПЗУ, по крайней мере поначалу.
Процессор подождёт :)
14 * 9 / 10 = 12.6 МГц, по горизонтали 64+512+64, по вертикали 48+384+48, двойные точки.
13.333 МГц (вместо 14), по горизонтали 15+768+15 (двух пикселей не хватает), по вертикали 12+576+12, тройные точки.
Оба варианта по таймингам чистый VGA, без извращений.
Ну дык в спеке 3 бита по цветам и общий бит яркости.
Во втором 5+5+5 цифра условная - слово 16 бит, можно и 5+6+5 сделать. Причём тот контроллер читает и пишет потоком по 8 слов.
Ты скажи, что надо, какая организация буфера экрана планируется, какова глубина цвета видеовыхода?
Ты мне подскажи тогда как в HDMI сериализаторе переделать под 5 бит или меньше.
https://dropmefiles.com/KbUYR
Думается что и 16 битный цвет будет много, у меня всего 2 порта 8ми битных чисто на вход, 2 чисто на выход.
Если это классический i51 с 12 тактами на машцикл, то ещё куда ни шло, там латч адреса идёт на 1/6 клока ЦПУ.
Допустим dosikus запустил его на 50МГц, то к памяти он будет обращаться с частотой 8,33МГц.
SDRAM вероятнее всего потянет.
А если однотактовый?
Да на 100МГц, как (предположительно) хочет dosikus ?
Подождёт?
Тут нужен развёрнутый ответ, не сейчас.
Сейчас смотрю релиз РК86 .
Что делает сия строка? Обрезает шину до 7бит или до одного старшего?
Цитата:
.I_R ({VGA_R,7'b0000000}),
Цитата:
// HDMI
hdmi tmds(
.I_CLK (clk250mhz),
.I_CLK_PIXEL (clk50mhz),
.I_R ({VGA_R,7'b0000000}),
.I_G ({VGA_G,7'b0000000}),
.I_B ({VGA_B,7'b0000000}),
.I_HSYNC (VGA_HS),
.I_VSYNC (VGA_VS),
.I_BLANK (vga_blank),
.O_TMDS_D0 (HDMI_D0),
.O_TMDS_D1 (HDMI_D1),
.O_TMDS_D2 (HDMI_D2),
.O_TMDS_CLK (HDMI_CLK));
assign HDMI_D1N = 1'b0;