Важная информация

User Tag List

Страница 5 из 21 ПерваяПервая 123456789 ... ПоследняяПоследняя
Показано с 41 по 50 из 202

Тема: SQRUM 1M

  1. #41
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от EvgenRU Посмотреть сообщение
    не впечатлила разница в количестве ячеек...
    Если схема одинакова, почему она должна занимать разное количество ячеек?
    Так как схема всё равно оторвана от глобального клока, то можете сэкономить 1 регистр, заменив тип reg BLANCN на wire и вынеся его присвоение из always.

    И кстати, за сегодняшний вечер вечер вы её нарисовали уже дважды. И, кстати 2, разницы между case и if/else по занимаемому месту быть не должно.
    /INT наверное лучше вставить сюда же.

    А теперь параметризуйте её и вот Вам для этого примерчик.
    Вложения Вложения

  2. #42
    Veteran Аватар для zebest
    Регистрация
    11.01.2008
    Адрес
    Ладошкино
    Сообщений
    1,668
    Записей в дневнике
    4
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    221
    Поблагодарили
    174 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от EvgenRU Посмотреть сообщение
    Переписал счетчики на Verilog, что-то не впечатлила разница в количестве ячеек...
    Цитата Сообщение от omercury Посмотреть сообщение
    Если схема одинакова, почему она должна занимать разное количество ячеек?
    А елси нет разниЙЦЦы, то зачем платить больше (с)
    Вот может мне кто подскажет по бооолее глобальномуу вопросу. Хочу переписать кусок схемы с SystemVerilog на ПростоVerilog. Как бы понимаю, что SV покруче и погибчее, но в конце то концов RTL то теоретически должна быть одинакова, только строк кода будет по разномуу??
    Как заменить конструкции .SV на аналогичные в .V ?
    Например такую:
    PHP код:
    reg [7:0auto[41] = '{ 255, 0,0,0,0,...бла-бла-бла}; 
    Что в данной конструкции означает апостроф и вообще нафига он? Ну не сишник я, и да жи не С++ (
    Profi v3.2 -=- Speccy2010,r2

  3. #43
    Master
    Регистрация
    20.01.2016
    Адрес
    п. Власиха, Московская обл.
    Сообщений
    593
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    19 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Переделал счетчик, сделал с параметрами, поправил, почитал про видеосигнал, гашение включает в себя и синхру, т.е. синхра должна быть в интервале гашения...
    Еще мне всё же не нравится, что такая реализация счетчика съела лишних 6 макроячеек на EPM7128
    Всё же буду делать счетчик на схемном вводе, т.к. 6 ячеек еще пригодятся AY-шку запихнуть с PWM

    Цитата Сообщение от zebest Посмотреть сообщение
    Как заменить конструкции .SV на аналогичные в .V ?
    Например такую:
    PHP код:
    reg [7:0auto[41] = '{ 255, 0,0,0,0,...бла-бла-бла}; 
    Что в данной конструкции означает апостроф и вообще нафига он? Ну не сишник я, и да жи не С++ (
    На си это не похоже, но гугление говорит, что этот апостроф отвечает за приведение типов.
    Ну а так это массив регистров, которым обычно описывается память, что-то типа ПЗУ на 41 байт.
    Как-то так, но не знаю, может в Verilog тоже есть массивы...
    PHP код:
    reg [7:0auto0 <= 255;
    reg [7:0auto1 <= 0;
    reg [7:0auto2 <= 0;
    ..... 
    Вложения Вложения
    Последний раз редактировалось EvgenRU; 17.03.2017 в 22:41.

  4. #44
    Master Аватар для s_kosorev
    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
    genvar i;
    generate 
       for (i=0; i<41; i=i+1)
          auto[i] <=0;
    endgenerate
    как то так
    Последний раз редактировалось s_kosorev; 17.03.2017 в 17:14.

  5. #45
    Master
    Регистрация
    20.01.2016
    Адрес
    п. Власиха, Московская обл.
    Сообщений
    593
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    19 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zebest Посмотреть сообщение
    но 41 строка, Карл!(с) хотя это меньшее зло)
    Следующий массив уже поболе будет
    Код:
    reg  [7:0] gchar[64]  = '{
    									8'b00000000, 8'b00001111, 8'b00001000, 8'b00000000,
    А елси 255 элементов (
    Так же как всегда делали, (батничек/PERL/своя программка) которая сгенерит этот текст

    UPD2: насчет апострофов, есть же они в Verilog 2'h02 вот же он!


    UPD:
    По счетчику осталось еще 2 вопроса
    1. Сколько все-таки строк делать 320 или 312? Что является более корректным и совместимым?
    2. INT насколько я понимаю нужно генерировать по спаду синхры? Какой это будет шаг в строках? 192+16? 208 строка получается? Еще пишут, что неплохо бы /IORQ и /M1 учитывать, но тогда перестает работать то что синхронизируется по HALT, как его учесть или лучше генерировать INT по счетчику? Сколько тогда строк он должен длиться? 28*2 или 24*2?
    Кое что нашел тут http://zx-pk.ru/threads/16935-tajmingi-leningrad-1.html Тут говорится, что INT начинается сразу на бордере... кому верить?
    Последний раз редактировалось EvgenRU; 17.03.2017 в 21:40.

  6. #46
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zebest Посмотреть сообщение
    Ну не сишник я, и да жи не С++ (
    А кто же?

    Если для нормального железячника это область ПЗУ, то для Вас - массив данных.
    Вы ещё сюда структуры и наследование типов приплетите, а потом говорите: - "не сишник я!"


    Цитата Сообщение от zebest Посмотреть сообщение
    Например такую:
    Для неопределённого снова отошлю к своему 178-канальному ШИМ, строка сразу после
    Цитата Сообщение от omercury Посмотреть сообщение
    // Дешифратор адреса CCP
    Для определённого... создайте блок ОЗУ/ПЗУ и инициализируйте его файлом .mif/.hex

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


    Цитата Сообщение от EvgenRU Посмотреть сообщение
    1. Сколько все-таки строк делать 320 или 312? Что является более корректным и совместимым?
    Для классики одно, а для Пентагона другое. Вам который?

    Цитата Сообщение от EvgenRU Посмотреть сообщение
    2. INT насколько я понимаю нужно генерировать по спаду синхры? Какой это будет шаг в строках? 192+16? 208 строка получается? Еще пишут, что неплохо бы /IORQ и /M1 учитывать, но тогда перестает работать то что синхронизируется по HALT, как его учесть или лучше генерировать INT по счетчику? Сколько тогда строк он должен длиться? 28*2 или 24*2?
    Насколько помню в строке, следующей за последней строкой кадра, в туториале от Евгения где-то есть. Длительность ЕМНИП 32 такта.

    Кстати, Верилог с удовольствием кушает дефайны и поддерживает условную компиляцию. Можно определить режим через параметры либо организовать виртуальную шину и менять видеорежим на ходу, логики в Максе правда не хватит, но есть Циклон.
    Последний раз редактировалось omercury; 17.03.2017 в 22:09.

  7. #46
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #47
    Master Аватар для s_kosorev
    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zebest Посмотреть сообщение
    как то не так. Так массив одними нулями заполниЦЦа, а он в systemverilog-e все же такой:
    ну так если есть логика, в заполнении, то if/case
    ну либо генерить файл

  9. #48
    Master
    Регистрация
    20.01.2016
    Адрес
    п. Власиха, Московская обл.
    Сообщений
    593
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    19 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Посмотрел несколько схем, в большинстве /INT идет по кадровому синхроимпульсу, а не по началу бордюра, в пентагоне вообще в схеме он начинается по сигналу гашения, хотя это одно и тоже получается. В скорпионе 1024 и кворуме он тоже начинается по КС, но в скорпионе он сбрасывается по /H6 (в моем случае /H3), т.е. через 32 такта, в других гасится конденсатором, т.е. выходит почти во всех клонах инт некорректно формируется должен по вертикальному бордеру, а не по синхре?

    PS: раз везде по синхре инт идет, то и я тогда так же сделаю + 32 такта (64 пикселя)
    PS3: еще /M1 /IORQ добавил, чтобы работало в турборежиме, а то длинный /INT будет

    PS2: ну и тогда уже финальную версию счетчика выложу, времянки такие

    Вложения Вложения
    Последний раз редактировалось EvgenRU; 19.03.2017 в 18:44.

  10. #49
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zebest Посмотреть сообщение
    когда нет панелек
    ...но есть панельки...

    Скрытый текст

    Нажмите на изображение для увеличения. 

Название:	DSC_0192.jpg 
Просмотров:	193 
Размер:	54.2 Кб 
ID:	60184
    [свернуть]



    Цитата Сообщение от zebest Посмотреть сообщение
    Сделал три массива, причем один на 64 элемента, чисто assign-ами, ниче так, работает. РазниЦЦа в объеме кода конечно поболе, чем на systemverilog
    Привыкли на своих плюсАх.
    В регистры загнали. Расточительно(8*64*3=1536), но когда надо быстро - годится.

    Цитата Сообщение от zebest Посмотреть сообщение
    но так нада!
    Спартан?
    В них, кстати, довольно много распределённой памяти, должен быть какой-то макрос, но какой не знаю - с ксаями дела не имел.

  11. #50
    Activist Аватар для omercury
    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от EvgenRU Посмотреть сообщение
    Всё же буду делать счетчик на схемном вводе, т.к. 6 ячеек еще пригодятся AY-шку запихнуть с PWM
    А Вы уверены, что это проблемы языка, а не программиста?

    output reg HSYN = 0,
    output reg VSYN = 0,
    ......
    reg HBL = 0, VBL = 0;
    reg HBR = 0, VBR = 0;
    Вот Ваши 6 макроячеек.
    В схематике эти сигналы формировались исключительно комбинационной логикой, в тексте же добавлены регистры.

Страница 5 из 21 ПерваяПервая 123456789 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •