Сообщение Re[11]: Свой процессор на ПЛИС от 26.02.2016 9:40
Изменено 26.02.2016 10:36 koandrew
Здравствуйте, 0x7be, Вы писали:
0>Возможность развивать дизайн эволюционно — это функция мягкости материала. Раньше и программы начинали делать со структурной схемы, потому что рефакторить было слишком накладно. Как появились адекватные инструменты, эволюционный дизайн вошёл в моду. С появлением ПЛИСов в железе тоже стала появляться такая возможность.
Ну хозяин-барин как говорится
Видимо тут сказывается разный бэкграунд — мне проще думать о железке в "железных" терминах. Плюс когда "схема" перед глазами, проще разобраться с таймингами.
0>А там тоже есть "порожки" до/после сигнала синхронизации, когда отрисовка не происходит?
Да. Вот даташит панели, которую я планирую использовать — там в разделе таймингов есть их описание (blanking). Я же говорю — железячники повёрнуты на обратной совместимости
0>Я думаю на codeplex проектик завести и поместить туда всё, что есть.
Да всё равно куда — лишь бы доступно было. Что именно непонятно-то?
0>Авалоновский — это который в системе NIOS идёт?
Смотри тут Он через qsys настраивается (по крайней мере в Quartus Prime 15.1, которую я юзаю). В их University Program вообще много какие полезные IP имеются — правда они все заточены под периферию, которая есть на девайсах этой программы (девайсы серии DEх от Terasic тоже к ней относятся), но для тебя это не должно быть проблемой, ибо как я понял ты не собираешься делать свои кастомные платы.
0>Я нашёл простейший контроллер в интернетах. Он тупой и неэффективный, зато я понимаю, как он работает
Главное понимать, как работать с ним. Как он сам работает, знать не обязательно. В этом смысл IP-блоков. Хотя и интересно иногда
Пользоваться им очень просто — проверяешь готовность, если готов, то выдаёшь адрес на шину, на следующем тике забираешь данные. В обратную сторону аналогично. Посмотри видео короче. Там кстати ещё обсуждается вопрос перехода между временнЫми доменами, демонстрируется суть проблемы, и пути решения.
0>Я взял пока sprache. Простой монадический парсер, который позволяет правила грамматические прямо в коде писать. Вчерась я добил ассемблер до функциональности, идентичной прототипу на VBA, но внутри пока ужас-ужас

0>К тому же я хочу сделать ассемблер, который можно легко перенастроить на сборку другого ассемблера, т.к. мне следующим шагом надо будет новый микрокод реализовывать.
А зачем? Если поменяются коды команд, то тебе нужно будет адаптировать только кодогенератор. Парсер останется тем же. Или ты сам язык хочешь поменять?
0>Ну, если не браться за всю библиотеку разом, а писать функции по необходимости, то не так страшно будет, я думаю
0>Слона надо есть по частям
Ну ты посмотри на неё — там все функции завязаны друг на друга. Кстати я бы посоветовал тебе взять исходники crt от какого-нить промышленного МК (тот же AVR, или 8-битный PIC), ибо они создавались под те же условия, в которых придётся работать тебе (медленный чип, мало памяти). Кстати какая тактовая частота у твоего проца?
0>Дык, прогресса почти что и нет пока
Времени мало, к тому же я сейчас не делаю новые вещи, а довожу до ума уже сделанные. Я же до сих пор по сути прототипировал.
0>Я вот щас сделаю новую микроархитектуру, которая позволит эволюционировать процессор дальше, и займусь новыми вещами: байтовую адресацию прикручу, прерывания, более рациональную систему и формат команд, монитор напишу.
0>Вот после этого можно новую публикацию делать.
"Жду" (С) "Иван Васильевич меняет профессию"
0>Возможность развивать дизайн эволюционно — это функция мягкости материала. Раньше и программы начинали делать со структурной схемы, потому что рефакторить было слишком накладно. Как появились адекватные инструменты, эволюционный дизайн вошёл в моду. С появлением ПЛИСов в железе тоже стала появляться такая возможность.
Ну хозяин-барин как говорится
0>А там тоже есть "порожки" до/после сигнала синхронизации, когда отрисовка не происходит?
Да. Вот даташит панели, которую я планирую использовать — там в разделе таймингов есть их описание (blanking). Я же говорю — железячники повёрнуты на обратной совместимости
0>Я думаю на codeplex проектик завести и поместить туда всё, что есть.
Да всё равно куда — лишь бы доступно было. Что именно непонятно-то?
0>Авалоновский — это который в системе NIOS идёт?
Смотри тут Он через qsys настраивается (по крайней мере в Quartus Prime 15.1, которую я юзаю). В их University Program вообще много какие полезные IP имеются — правда они все заточены под периферию, которая есть на девайсах этой программы (девайсы серии DEх от Terasic тоже к ней относятся), но для тебя это не должно быть проблемой, ибо как я понял ты не собираешься делать свои кастомные платы.
0>Я нашёл простейший контроллер в интернетах. Он тупой и неэффективный, зато я понимаю, как он работает
Главное понимать, как работать с ним. Как он сам работает, знать не обязательно. В этом смысл IP-блоков. Хотя и интересно иногда
0>Я взял пока sprache. Простой монадический парсер, который позволяет правила грамматические прямо в коде писать. Вчерась я добил ассемблер до функциональности, идентичной прототипу на VBA, но внутри пока ужас-ужас
0>К тому же я хочу сделать ассемблер, который можно легко перенастроить на сборку другого ассемблера, т.к. мне следующим шагом надо будет новый микрокод реализовывать.
А зачем? Если поменяются коды команд, то тебе нужно будет адаптировать только кодогенератор. Парсер останется тем же. Или ты сам язык хочешь поменять?
0>Ну, если не браться за всю библиотеку разом, а писать функции по необходимости, то не так страшно будет, я думаю
0>Слона надо есть по частям
Ну ты посмотри на неё — там все функции завязаны друг на друга. Кстати я бы посоветовал тебе взять исходники crt от какого-нить промышленного МК (тот же AVR, или 8-битный PIC), ибо они создавались под те же условия, в которых придётся работать тебе (медленный чип, мало памяти). Кстати какая тактовая частота у твоего проца?
0>Дык, прогресса почти что и нет пока
0>Я вот щас сделаю новую микроархитектуру, которая позволит эволюционировать процессор дальше, и займусь новыми вещами: байтовую адресацию прикручу, прерывания, более рациональную систему и формат команд, монитор напишу.
0>Вот после этого можно новую публикацию делать.
"Жду" (С) "Иван Васильевич меняет профессию"
Re[11]: Свой процессор на ПЛИС
Здравствуйте, 0x7be, Вы писали:
0>Возможность развивать дизайн эволюционно — это функция мягкости материала. Раньше и программы начинали делать со структурной схемы, потому что рефакторить было слишком накладно. Как появились адекватные инструменты, эволюционный дизайн вошёл в моду. С появлением ПЛИСов в железе тоже стала появляться такая возможность.
Ну хозяин-барин как говорится
Видимо тут сказывается разный бэкграунд — мне проще думать о железке в "железных" терминах. Плюс когда "схема" перед глазами, проще разобраться с таймингами.
0>А там тоже есть "порожки" до/после сигнала синхронизации, когда отрисовка не происходит?
Да. Вот даташит панели, которую я планирую использовать — там в разделе таймингов есть их описание (blanking). Только в цифровом интерфейсе нет DAC само собой. Я же говорю — железячники повёрнуты на обратной совместимости
0>Я думаю на codeplex проектик завести и поместить туда всё, что есть.
Да всё равно куда — лишь бы доступно было. Что именно непонятно-то?
0>Авалоновский — это который в системе NIOS идёт?
Смотри тут Он через qsys настраивается (по крайней мере в Quartus Prime 15.1, которую я юзаю). В их University Program вообще много какие полезные IP имеются — правда они все заточены под периферию, которая есть на девайсах этой программы (девайсы серии DEх от Terasic тоже к ней относятся), но для тебя это не должно быть проблемой, ибо как я понял ты не собираешься делать свои кастомные платы.
0>Я нашёл простейший контроллер в интернетах. Он тупой и неэффективный, зато я понимаю, как он работает
Главное понимать, как работать с ним. Как он сам работает, знать не обязательно. В этом смысл IP-блоков. Хотя и интересно иногда
Пользоваться им очень просто — проверяешь готовность, если готов, то выдаёшь адрес на шину, на следующем тике забираешь данные. В обратную сторону аналогично. Посмотри видео короче. Там кстати ещё обсуждается вопрос перехода между временнЫми доменами, демонстрируется суть проблемы, и пути решения.
0>Я взял пока sprache. Простой монадический парсер, который позволяет правила грамматические прямо в коде писать. Вчерась я добил ассемблер до функциональности, идентичной прототипу на VBA, но внутри пока ужас-ужас

0>К тому же я хочу сделать ассемблер, который можно легко перенастроить на сборку другого ассемблера, т.к. мне следующим шагом надо будет новый микрокод реализовывать.
А зачем? Если поменяются коды команд, то тебе нужно будет адаптировать только кодогенератор. Парсер останется тем же. Или ты сам язык хочешь поменять?
0>Ну, если не браться за всю библиотеку разом, а писать функции по необходимости, то не так страшно будет, я думаю
0>Слона надо есть по частям
Ну ты посмотри на неё — там все функции завязаны друг на друга. Кстати я бы посоветовал тебе взять исходники crt от какого-нить промышленного МК (тот же AVR, или 8-битный PIC), ибо они создавались под те же условия, в которых придётся работать тебе (медленный чип, мало памяти). Кстати какая тактовая частота у твоего проца?
0>Дык, прогресса почти что и нет пока
Времени мало, к тому же я сейчас не делаю новые вещи, а довожу до ума уже сделанные. Я же до сих пор по сути прототипировал.
0>Я вот щас сделаю новую микроархитектуру, которая позволит эволюционировать процессор дальше, и займусь новыми вещами: байтовую адресацию прикручу, прерывания, более рациональную систему и формат команд, монитор напишу.
0>Вот после этого можно новую публикацию делать.
"Жду" (С) "Иван Васильевич меняет профессию"
0>Возможность развивать дизайн эволюционно — это функция мягкости материала. Раньше и программы начинали делать со структурной схемы, потому что рефакторить было слишком накладно. Как появились адекватные инструменты, эволюционный дизайн вошёл в моду. С появлением ПЛИСов в железе тоже стала появляться такая возможность.
Ну хозяин-барин как говорится
0>А там тоже есть "порожки" до/после сигнала синхронизации, когда отрисовка не происходит?
Да. Вот даташит панели, которую я планирую использовать — там в разделе таймингов есть их описание (blanking). Только в цифровом интерфейсе нет DAC само собой. Я же говорю — железячники повёрнуты на обратной совместимости
0>Я думаю на codeplex проектик завести и поместить туда всё, что есть.
Да всё равно куда — лишь бы доступно было. Что именно непонятно-то?
0>Авалоновский — это который в системе NIOS идёт?
Смотри тут Он через qsys настраивается (по крайней мере в Quartus Prime 15.1, которую я юзаю). В их University Program вообще много какие полезные IP имеются — правда они все заточены под периферию, которая есть на девайсах этой программы (девайсы серии DEх от Terasic тоже к ней относятся), но для тебя это не должно быть проблемой, ибо как я понял ты не собираешься делать свои кастомные платы.
0>Я нашёл простейший контроллер в интернетах. Он тупой и неэффективный, зато я понимаю, как он работает
Главное понимать, как работать с ним. Как он сам работает, знать не обязательно. В этом смысл IP-блоков. Хотя и интересно иногда
0>Я взял пока sprache. Простой монадический парсер, который позволяет правила грамматические прямо в коде писать. Вчерась я добил ассемблер до функциональности, идентичной прототипу на VBA, но внутри пока ужас-ужас
0>К тому же я хочу сделать ассемблер, который можно легко перенастроить на сборку другого ассемблера, т.к. мне следующим шагом надо будет новый микрокод реализовывать.
А зачем? Если поменяются коды команд, то тебе нужно будет адаптировать только кодогенератор. Парсер останется тем же. Или ты сам язык хочешь поменять?
0>Ну, если не браться за всю библиотеку разом, а писать функции по необходимости, то не так страшно будет, я думаю
0>Слона надо есть по частям
Ну ты посмотри на неё — там все функции завязаны друг на друга. Кстати я бы посоветовал тебе взять исходники crt от какого-нить промышленного МК (тот же AVR, или 8-битный PIC), ибо они создавались под те же условия, в которых придётся работать тебе (медленный чип, мало памяти). Кстати какая тактовая частота у твоего проца?
0>Дык, прогресса почти что и нет пока
0>Я вот щас сделаю новую микроархитектуру, которая позволит эволюционировать процессор дальше, и займусь новыми вещами: байтовую адресацию прикручу, прерывания, более рациональную систему и формат команд, монитор напишу.
0>Вот после этого можно новую публикацию делать.
"Жду" (С) "Иван Васильевич меняет профессию"