PC-01 Lviv
http://pc01.lviv.ua/forum/

ПК-01 "Львов" на u8_Reverse
http://pc01.lviv.ua/forum/viewtopic.php?f=12&t=252
Page 1 of 1

Author:  Ewgeny7 [ 24 Oct 2013, 20:28 ]
Post subject:  ПК-01 "Львов" на u8_Reverse

Здравствуйте, старые и новые знакомые!
У меня есть такая просьба.
Я начал проект создания конфигурации ПК-01 Львов для платы u8_Reverse,
и катастрофически не хватает информации о его железе, маппинг памяти, структура видеопамяти, порты и т.д.
Каюсь, я пока не особо и искал, но, возможно, проще спросить осведомленных форумчан, чем искать самому по закоулкам :)
Заранее спасибо!

Author:  b2m [ 25 Oct 2013, 09:20 ]
Post subject:  Re: ПК-01 "Львов" на Altera DE1

Здравствуй, старый знакомый :)

Есть руководство программиста на emuverse.ru, описано практически всё.

Есть мелкие неточности, например, если посмотреть схему, порты дешифруются только битами A4,A3. Таким образом, системный ВВ55 и клавиатура отжирают кучу адресов. Оставшиеся CS2,CS3 выведены на внешний разъём, но это только половина адресного пространства портов.

Author:  Zelya [ 25 Oct 2013, 11:24 ]
Post subject:  Re: ПК-01 "Львов" на Altera DE1

Ewgeny7
Приветствую на форуме!
Я могу объяснить только на пальцах, со своей нафталиново-програмистской стороны. Для первичного ознакомления могу порекомендовать руководство:
http://lvovpc.ho.ua/files/program.html
Могу расписать, куда какой битик нужно отправить, чтобы память стала выглядить нужным мне образом. Но только вот, если вопросы будут в духе "схемка ВМххх", то тут я пас, это для меня сильное колдунство.

Author:  b2m [ 25 Oct 2013, 11:58 ]
Post subject:  Re: ПК-01 "Львов" на Altera DE1

Да, эта ссылка получше будет, emuverse.ru немного тормозной.

Author:  Ewgeny7 [ 25 Oct 2013, 17:30 ]
Post subject:  Re: ПК-01 "Львов" на Altera DE1

Народ, спасибо большое!!!
Я уже перекинул проект с DE1 на Reverse, но не вникая абсолютно... А это не интересно.
Хочу сделать Львов с нуля, так попутно и архитектура неизвестная прекрасно изучается :)

Author:  Zelya [ 25 Oct 2013, 18:12 ]
Post subject:  Re: ПК-01 "Львов" на Altera DE1

Ewgeny7, ну тогда вот Вам "веселые картинки" в придачу к статье:

Image
Это память "Львова". Она бывает в двух режимах. Цитата из "руководства"
Quote:
с помощью бита 1 порта C2H ( 194 ) ( 0 - Open Video RAM, 1 - Close Video RAM )
Стало быть, Close Video RAM - это нижние 48К - ОЗУ, а Open Video RAM - 32-48 так и остается, 16-32 - видео, 0-16 недоступно (да-да, такая какашка).

Image
А это набор палитр (128-255 дублируют его же). Вот тут пытаемся высянить логику этого набора, но мне проще по-старинке, глянуть на картинку, и выбрать цвета :).

Author:  liberation [ 27 Oct 2013, 07:54 ]
Post subject:  Re: ПК-01 "Львов" на Altera DE1

Quote:
Здравствуйте, старые и новые знакомые!
У меня есть такая просьба.
Я начал проект создания конфигурации ПК-01 Львов для платы u8_Reverse,
и катастрофически не хватает информации о его железе, маппинг памяти, структура видеопамяти, порты и т.д.
Каюсь, я пока не особо и искал, но, возможно, проще спросить осведомленных форумчан, чем искать самому по закоулкам :)
Заранее спасибо!
Категорически приветствую!
К сожалению, всеобъемлющего описания аппаратных особенностей ПК-01 "Львов" у нас до сих пор нет. Хотя интересные вопросы уже поднимались. Навскидку могу назвать темы "Торможение при обращении к ОЗУ", "Тайминги ПК-01 и растактовка команд КР580ВМ80А.", "Целых 2 внешних порта. Назначение", "Недостатки и недоработки ПК-01 "Львов"". Там маловато конкретики, но кое-что любопытное присутствует.

Еще могу порекомендовать обзоры vinxru о ПК-01 - "[Коллекция] Львов ПК-01" и "Ремонт компьютера Львов ПК-01". Даже риску рекомендовать обращаться напрямую к vinxru по аппаратным вопросам о ПК-01. Все-таки у него в умелых руках рабочий экземпляр, да и всякими напряжёметрами он вооружен будь здоров!

Теперь у меня вопрос об u8_Reverse. А что это за проект такой? Я пытался читать тему на zx.pk.ru, но это слишком много букв для меня. Возможно ли получить краткий, но содержательный обзор проекта (как грицца, откуда берем железо, на чем кодим, кто виноват и что делать)?

Author:  Ewgeny7 [ 26 Jan 2014, 11:03 ]
Post subject:  Re: ПК-01 "Львов" на u8_Reverse

Доброго времени суток!
Да, пропал я с форума, поскольку переключился на другие проекты по долгу работы.
Но "ПК-01 Львов" в минимальной конфигурации я перенес на плату u8_Reverse от Владислава Матлаша с Украины.
Собственно, автором конфигурации (прошивки для ПЛИС) является ILoveSpeccy, но он писал ее для буржуйской демоплаты AlteraDE1, которая стОит достаточно дорого...
Платы u8_Reverse более демократичны в цене, к тому же для нее написано уже целая куча конфигураций. Имея такую платку, можно ощутить себя обладателем и ZX-Spectrum, и Орион-128, Радио-86РК, Башкирия-2М, Специалист, Вектор, MSX, NES... Почитать ТТХ платки можно здесь - http://zx.pk.ru/showthread.php?t=8993
Я же перенес проект ПК-01 Львов с Altera-DE1 на эту платку. Автор был не против, отдав проект "на свободное растерзание". Сейчас Львов вполне себе успешно работает, поддержана палитра, можно поиграться в Бейсике.
Привинтить магнитофонные входы/выходы несложно, хоть это пока и не сделано.
Сделать полноценную работу с SD-картой для загрузки файлов - сложнее, хоть и реально. Но для этого нужно желание, которого на сегодня у меня нету.
Что касается этого проекта "в целом" - он уже работает, но я не могу ручаться, что там всё работает именно так, как это было на реальных компьютерах. Ведь информация, которая имеется у нас, не самая полная...

Attachments:
IMAG0029.jpg
IMAG0029.jpg [ 65.47 KiB | Viewed 12159 times ]

Author:  Ewgeny7 [ 26 Jan 2014, 11:26 ]
Post subject:  Re: ПК-01 "Львов" на u8_Reverse

Теперь более детально об этой платке.
Владислав открыл тему по продаже плат на Спектрум-барахолке - http://zx-pk.ru/market/viewtopic.php?f=4&t=128
Там указана цена, способы отправки по Украине и России.
Для полноценного пользования будет необходим программатор. С его помощью на плату "заливаются" различные конфигурации разных симулируемых компьютеров, обновления в их реализации.
Самый простой программатор собирается "на коленке" за полчаса, и требует лишь микросхемы 1533АП5, десятка резисторов и наличия LPT-порта на компьютере. Называется он ByteBlasterMV. Найти схему в интернетах не составляет никакого труда, их там навалом.
Есть программаторы и для USB-интерфейса, но они сложнее в изготовлении. Называются они USB-Blaster.
Самый простой состоит также из всего одной микросхемы, но она - микроконтроллер PIC 18F2550.
В любом случае, их можно купить где-нибудь. Если есть желание - найдется и способ его решения. Например, на той же Спектрум-барахолке можно поискать.
Для работы программатора потребуется программа-прошиватор, Quartus Programmer. Она бесплатна и в свободном доступе.
Ну и самое главное... Эта плата - не только игрушка для симуляции различных компьютерных платформ. Главное ее предназначение - творчество... Никто не мешает вам самостоятельно начать творить своё, а не пользоваться уже готовыми решениями. Конечно, знания в цифровой схемотехнике необходимы. А научиться применять эти знания конкретно в области применения ПЛИС - это уже не так сложно.

Author:  liberation [ 26 Jan 2014, 22:56 ]
Post subject:  Re: ПК-01 "Львов" на u8_Reverse

Quote:
Ну и самое главное... Эта плата - не только игрушка для симуляции различных компьютерных платформ. Главное ее предназначение - творчество...
Евгений, большое спасибо за содержательный ответ! Ситуация постепенно проясняется. Однако у меня еще несколько встречных вопросов:
1) Каково отличие между u8, u9 и u16 (u10 уже сошла со сцены, как я понял), насколько наработки по ним совместимы между собой?
2) Что с выводом на монитор? Только VGA?
3) На чем кодить под это дело? Verilog или VHDL?
4) Где можно взять готовую конфигурацию для ПК-01?

И напоследок скопирую описание девайса непосредственно от Владислава:
Quote:
На данный момент плата позволяет воссоздать такие ретро-компьютеры как ZX-Spectrum, MSX2, Вектор-06Ц. Отлично подходит для обучения работы с ПЛИС. Схема реализуемого устройства задается прошивкой, записываемой в статическую память микросхемы ПЛИС. Микросхема ПЛИС представляет собой массив логических элементов, таким образом, существует возможность исправления ошибок схемы, а также добавления новых устройств, с помощью перепрошивки ПЛИС (выполняемой средствами самого устройства, либо через USB-кабель). В конфигурации ПЛИС реализуются почти все компоненты компьютера. Вне ПЛИС находятся только оперативная память, аппаратные интерфейсы для подключения PS/2 клавиатуры, мыши, монитора, и других устройств.

ПЛИС Altera Cyclone III EP3C10
Память SDRAM 32MB x 8 бит
Память SRAM 512КB х 8 бит
Конфигурационная FLASH 512KB
Ogg Vorbis/MP3/AAC/WMA/FLAC/MIDI аудио кодек VS1053b
Системные часы PCF8583 + батарейка CR2032
VGA 15-pin RGB(3:3:3) 512 цветов
Слот для SD карты
Разъём 20-pin - GPIO 14 линий совмещены с VGA для подключения адаптера LCD матрицы или Composit; RX и CBUS3..0 от FT232R; +5V и GND
Разъём 26-pin - GPIO 20 линий совмещены с SRAM A19..0; SDA, SCL и INT# от PCF8583; +5V и GND
Разъём 8-pin - GPIO 6 линий совмещены с SD; +3.3V и GND
Разъем 3.5 mm выхода стереозвука
Разъем 3.5 mm входа стереозвука
Разъем miniUSB для подключения к ПК (интерфейс USB-UART / CBUS-JTAG)
Разъем JTAG (для внешнего конфигурирования ПЛИС или через мост CBUS-JTAG)
Разъём PS/2 для подключения клавиатуры/мыши
Разъём PS/2 для подключения мыши/клавиатуры
Разъем питания +5В 500mA
Размер платы 75 х 75 мм
Image

Цена вполне демократическая - что-то около 80 у.е., и это радует, учитывая отсутствие иных серьезных предложений.

p.s.
Как сообщают наши источники, уважаемый ivagor заинтересовался работой ПК-01 под u8. Это обнадеживает. :)

Author:  liberation [ 27 Jan 2014, 06:57 ]
Post subject:  Re: ПК-01 "Львов" на u8_Reverse

Quote:
1) Каково отличие между u8, u9 и u16 (u10 уже сошла со сцены, как я понял), насколько наработки по ним совместимы между собой?
2) Что с выводом на монитор? Только VGA?
3) На чем кодить под это дело? Verilog или VHDL?
4) Где можно взять готовую конфигурацию для ПК-01?
Дебютирую в жанре "сам спросил, сам ответил". Урывками еще почитал тему на zx.pk.ru, где нашел искомые ответы. Итак,
4) Исходники выложены тут (и во вложении ниже).
Quote:
Сброс компьютера - пинами RST#.
3) Пока открыт.
2) Есть переходник на HDMI.
1) Характеристики плат освещены тут.

Еще стоит отметить, что существует LAN контроллер (сетевой). Заявлено, что он умеет следующее:
Quote:
аппаратная поддержка стека протоколов TCP/IP: TCP, UDP, ICMP, IPv4, ARP, IGMP;
аппаратная реализация физического уровня сети для 10BaseT/100BaseTX Ethernet;
аппаратная поддержка протокола PPPoE (Point-to-point Protocol over Ethernet) с PAP/ CHAP протоколами аутентификации;
автоопределение режима работы (Full-duplex/ Half-duplex и 10/100 Мбит/c);
распознавание полярности подключения кабеля Auto-MDI/MDIX;
поддержка шести индикаторных светодиодов (TX, RX, Full/Half duplex, Collision, Link, Speed);
напряжение питания 3,3 В; линии ввода/вывода совместимы с сигналами 5,0 В;
Упомяну также наличие алюминиевого корпуса под девайс. Приятная мелочь.

У проекта есть сайт гугль-коде - reverse-u8 (Firmware and cores for the ReVerSE-U8 FPGA board).

Есть научно-популярное вступление о работе с ПЛИС [ПЛИС и всё, что с ними связано].

Напоследок замечу, что единственное, чего остро не хватает проекту, так это собственного сайта, где все было бы разложено по полочкам. Все-таки форум есть форум, это никак не документохранилище. И репозиторий на github было бы здорово. SVN выглядит несколько архаично. :D

Attachments:
File comment: Конфигурация ПК-01 "Львов" для ReVerSE-U8 FPGA.
u8_Lvov.rar [117.04 KiB]
Downloaded 870 times

Author:  Ewgeny7 [ 27 Jan 2014, 22:53 ]
Post subject:  Re: ПК-01 "Львов" на u8_Reverse

Уточняю - это не исходники, это готовая конфигурация (файлы для прошивки).
Исходники лежат только у меня, но проект открытый, выложу их здесь чуть попозже.
Видеовыход - да, только VGA...
Платы не имеют другого выхода. За исключением u16, но там - только HDMI.
Разница между u8, u9 и u10 есть, конечно, но для небольших ретрокомпов несущественна, проекты переносятся между ними при желании и небольших танцев с бубном.
На u10, самой старой платке, меньше всего памяти, 512кб, только статическая. Но - много выводов "общего назначения" - GPIO.
На u9 появилась динамическая память большого объема, SDRAM, 32 мегабайта. Но уже нет такого большого интерфейса с внешним миром, как на u10. Но большинству это и не надо вообще.
В u8 сделаны кой-какие переделки по сравнению с u9, но основное - другой звуковой чип, позволяющий проигрывать звуковые файлы различных форматов, в том числе и mp3.
u16 на свете пока нету, она в разработке, отличается от предыдущих плат уже 16-ти разрядной архитектурой, в отличие от предыдущих восьмибиток.
Я перетаскивал старые проекты с u10 и u9 на более современную u8, и это занимает немного времени.
Язык разработки для плат - какой больше нравится. Я предпочитаю более громоздкий VHDL, но он мне ближе по структуре, как "паскалисту". Но кое-что писалось и на Veriloge. Он больше си-образный, компактнее... Дело вкуса.
Да, сайта как такового нету. Да и некому делать...

Page 1 of 1 All times are UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/