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

User Tag List

Страница 1 из 6 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 51

Тема: z80mini - Z80 и CPLD

  1. #1
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию z80mini - Z80 и CPLD

    Решил я, пока еще корона не доконала, осуществить свою мечту - сделать платку мини компа на Z80 и EPM7128 - очередной велосипед, короче. На плате расположены: CPU, ROM, RAM, CPLD, UART. Предполагается возможность дальнейшего расширения методом бутерброда через системный разъем. Часть выводов CPLD остались свободными, поэтому МГТФ в ограниченном объеме тоже допускается. Основные желания, томившие мой мозг - помучить EPM7128, спроектировать и заказать 4-х слойную плату, поупражняться в написании чего-то на ассемблере Z80.

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

Название:	board.jpg 
Просмотров:	891 
Размер:	54.4 Кб 
ID:	75292 Нажмите на изображение для увеличения. 

Название:	IMG_20210825_214201.jpg 
Просмотров:	531 
Размер:	57.6 Кб 
ID:	76017

    Прошу высказывать критические замечания, предложения, советы. На данный момент прототипы уже у меня в шаловливых руках. Если есть единомышленники, готовые помочь в написании и отладке кода, вышлю таковым экземпляр платы, при условии оплаты пересылки.

    z80mini.zip

    Добавил в архив проект для Quartus II 13.0sp1

    Обновил проект. Для совместимости с Аюшей изменил порты: управление памятью (38h, бит 0, 0-ПЗУ, 1-ОЗУ), консоль (08h, 09h). Конфигурация памяти пока такая: нижняя страница памяти 32к переключается ПЗУ/ОЗУ. При сбросе выбирается ПЗУ.

    Для реализации прерываний от последовательного порта нужно поставить перемычку между выводом 14 U4 (RXRDY) и выводом 54 U3 - назовем эту цепь IRQ - запрос прерывания при приеме очередного символа последовательным портом.

    Пожалуй, необходимости во втором кварце на 7.3728 МГц нет. Все нужные частоты вполне может выдавать ПЛИС делением 20 МГц. Возможно, имеет смысл попробовать поставить кварц на 32768 Гц?

    Ошибки на плате:

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

    1 - вывод 25 U1 Z80 /BUSRQ висит в воздухе, для корректной работы процессора надо подтянуть его к питанию через резистор 10к.
    2 - конденсатор C5 ошибочно подключен к земле, должен быть подключен к + питания. Можно повесить его с обратной стороны платы между 2 и 16 выводами U2. Такой же конденсатор желательно подключить между 15 и 16 выводами U2.
    3 - "лишний" сигнал A18 на системном разъеме.
    4 - второй кварц на 7.3728 МГц оказался ненужным, можно его вообще не устанавливать или использовать какой-то другой, например 32768 Гц.
    [свернуть]


    UPD. Обновил прошивку CPLD. Адаптировал и проверил работу монитора Freddy. Для его запуска достаточно только изменить значения CONSD на 08h, CONSC на 09h, BANK на 38h.
    asm8080.rar - ассемблер.

    Вышла вторая версия платы - Z80mini V2.0

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

Название:	IMG_20220122_163643.jpg 
Просмотров:	202 
Размер:	54.6 Кб 
ID:	76883Нажмите на изображение для увеличения. 

Название:	IMG_20220122_163858.jpg 
Просмотров:	123 
Размер:	58.0 Кб 
ID:	76884

    Основные отличия:
    - плата двухслойная
    - COM порт заменен на microUSB (мост TTL-USB CH340G)
    - питание платы так же полностью от USB
    - изменен системный разъем - перенесен на край платы и переработан - теперь будет возможность без резки дорожек делить память на сегменты по 16к и совмещать их в произвольном порядке.
    - кварц заменен на генератор - можно использовать до 50МГц (больше не пробовал).

    Все имеющиеся CMOS версии Z80 уверенно запустились на этой плате на 20МГц. Все имеющиеся КР580ВВ51А стабильно заработали на 115200. Импортные 82C51 можно гнать и быстрее.

    Ошибки на плате V2.0: перепутаны сигналы RX TX и RTS CTS между ВВ51 и CH340G, неправильно разведена кнопка сброса.
    z80mini_2.rar
    Схема без ошибок.


    Норая версия платы- v2.2 Исправлены ошибки, внесены небольшие изменения.



    Макетная плата для проекта. Предусмотрена установка буферных элементов либо регистров, кварцевого генератора, светодиодов.



    Архив проекта Quartus 13.0sp1 и готовая прошивка ПЛИС z80mini_2.rar
    Генератор 50МГц, процессор 20МГц и UART 57600. Порты: управление памятью (38h, бит 0, 0-ПЗУ, 1-ОЗУ), консоль (08h, 09h).
    Гербер последней версии платы - Gerber_PCB_z80mini2_4.zip

    Прошивки от камрада dmtr: поддержка CF, поддержка встроенных GPIO, конфигурируемый GPIO и SPI.

    Купить плату можно здесь.
    Последний раз редактировалось Xrust; 17.03.2023 в 21:36.

  2. Эти 2 пользователя(ей) поблагодарили Xrust за это полезное сообщение:

    ALS (25.04.2021), rw6hrm (10.05.2021)

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

  4. #2
    Master Аватар для valerium
    Регистрация
    03.05.2020
    Адрес
    г. Челябинск
    Сообщений
    760
    Записей в дневнике
    2
    Спасибо Благодарностей отдано 
    225
    Спасибо Благодарностей получено 
    257
    Поблагодарили
    136 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Это, видимо, будет не спек, а что-то совершенно альтернативное ?
    Как у него планируется организовать память и на что будет похож видеоконтроллер ?
    Задумка интересная, но оперативная память включена всеми 16-ю нижними адресными линиями к процессору, на страницы меньше 64к ее не поделить, причем ПЗУ в том же окне 64к. Программно непросто будет задействовать ее всю, лучше б сделать странички поменьше. Или так задумано ?

  5. #3
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от valerium Посмотреть сообщение
    Это, видимо, будет не спек, а что-то совершенно альтернативное ?
    Да, спеков уже достаточно и так.
    Цитата Сообщение от valerium Посмотреть сообщение
    Как у него планируется организовать память и на что будет похож видеоконтроллер ?
    Это предстоит решить по ходу проектирования. CPLD предполагает гибкость



    Насчет видеоконтроллера. Он будет располагаться на отдельной плате с отдельным видео ОЗУ. Пока проект в "терминальной" стадии.
    но оперативная память включена всеми 16-ю нижними адресными линиями к процессору, на страницы меньше 64к ее не поделить, причем ПЗУ в том же окне 64к.
    ПЗУ и ОЗУ выбираются /RAMCS и /ROMCS, которые формирует ПЛИС. С организацией страниц тоже достаточно просто. Дорожки A14 и A15 заведены в ПЛИС и их легко можно перерезать в нужном месте при необходимости. Но у меня были некоторые другие мысли на этот счет - хотел попробовать сделать что-то вроде ПДП. Плата в первую очередь предназначена для проверки всяких безумных идей.

  6. #4
    Activist Аватар для ALS
    Регистрация
    14.09.2012
    Адрес
    г.Севастополь
    Сообщений
    427
    Спасибо Благодарностей отдано 
    234
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    47 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    По поводу "совершенно альтернативного"...
    В середине 90-х именно на подобной платке (помните, были АОНы на Z80 ?) я собрал прототип кодграббера.
    Какого-то применения он не нашел, но знатно потешил мое ЧСВ )))

  7. #5
    Master
    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    778
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    62
    Поблагодарили
    48 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Xrust Посмотреть сообщение
    Прошу высказывать критические замечания, предложения, советы.
    1. Цанговые панельки - рулез. Лепестковые панельки для DIP - зло. Вот такие и такие не пробовал, но, ИМХО, удобно для часто передергиваемой ПЗУ.
    2. Зачем на системном разъеме JTAG?
    3. На системном разъеме задублирован A18, и какая-то беда с RESETом...
    4. Полагаю, у тебя задуман маппер до 1 метра (A0-A19). Слушай valerium, он прав.
    5. На срамине какая-то беда с A17 и A18...
    6. Почему такой древний UART выбрал?... Почему не выбрал что-нибудь типа 16C550?
    7. По ПДП - для этого данная ПЛИСина явно слабовата...
    8. RES (или /RES ?) у ПЛИСины в воздухе висит...
    Последний раз редактировалось LeoN65816; 25.04.2021 в 11:46.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  8. Этот пользователь поблагодарил LeoN65816 за это полезное сообщение:

    Xrust (25.04.2021)

  9. #6
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    LeoN65816,
    1. Это уже частности. У меня, например, с цанговыми не сложилось, попадались ужасного качества
    2. На второй этаж, там тоже ПЛИСина планируется.
    3. Просто ошибка. Чикнем скальпелем тот, что снизу и заведем туда что-нибудь полезное. RES - вход, сигнал от кнопки, который можно обработать в ПЛИС. RESET и /RESET, соответственно, выходы, прямой и инверсный сигналы сброса, кому какой нужен.
    4. Возможно. Скальпель и МГТФ держу наготове.
    5. Это не беда, это для возможности установки 628512.
    6. Потому, что простой как валенок и их есть у меня.
    7. ПДП - это сильно сказано, конечно. Определюсь в процессе. Есть несколько старых идей, которые хотелось бы проверить на практике.

  10. #7
    Master Аватар для valerium
    Регистрация
    03.05.2020
    Адрес
    г. Челябинск
    Сообщений
    760
    Записей в дневнике
    2
    Спасибо Благодарностей отдано 
    225
    Спасибо Благодарностей получено 
    257
    Поблагодарили
    136 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Xrust Посмотреть сообщение
    6. Потому, что простой как валенок и их есть у меня.
    Кстати, а какой там UART ? У меня просто какого-то шрифта нету и вместо его маркировки в схеме отображаются зюки, а по прочим признакам не узнал...

  11. #8
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    valerium, КР580ВВ51

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

    Вот такую схему залил в ПЛИС.

    https://photos.app.goo.gl/MTaFRN3yFbq3E4v77

    Воткнул в панельки ПЗУ, ОЗУ. Конфликтов вроде нет, процессор что-то там пытается выполнить, читая мусор из ОЗУ. Теперь надо попробовать что-то залить в ПЗУ и подергать порт.

  12. #9
    Master Аватар для valerium
    Регистрация
    03.05.2020
    Адрес
    г. Челябинск
    Сообщений
    760
    Записей в дневнике
    2
    Спасибо Благодарностей отдано 
    225
    Спасибо Благодарностей получено 
    257
    Поблагодарили
    136 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ясненько, на данный момент это по сути девборда с некоторыми ограничениями, которые легко решаются мгтф-ом. Просто все были немного обескуражены тем, что можно новую четырехслойку резать скальпелем )
    Первое и главное, чего тут не хватает - это требований к результату и ТЗ. Иначе это будет очень долгая резня скальпелем )
    И 128 макроячеек в cpld - это так уж много, может легко оказаться, что после постановки задачи что-то не войдет.

    Ну я к чему подвожу - надо задачу поставить.

  13. Этот пользователь поблагодарил valerium за это полезное сообщение:

    Sergey (24.05.2021)

  14. #10
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    valerium, Все верно понимаете! Для меня главная задача - обучение. Текущая промежуточная задача - запустить терминал. Пока удалось запустить порт и подергать ножками.

    После запуска порта можно будет закидывать тестовые программы непосредственно в ОЗУ, не дергая лишний раз ПЗУ. Собственно концепция такая: в ПЗУ только начальный загрузчик, который перебрасывает нужный код в ОЗУ и передает ему управление. Как будет организован диспетчер памяти - во многом как раз и будет определятся ограничениями ПЛИС. Страницы по 16к точно получатся, что-то посложнее - будем посмотреть. Вся периферия как то видеоадаптер, клавиатура, мышь и т.д будет проектироваться на втором этаже.

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

    valerium, если хотите тоже скальпелем - легко организуем
    Последний раз редактировалось Xrust; 07.05.2021 в 22:50.

Страница 1 из 6 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Специалист МХ2: реализация в CPLD
    от fifan в разделе Специалист
    Ответов: 241
    Последнее: 15.07.2022, 04:32
  2. CPLD замены оригинальных ULA
    от Anubis_OD в разделе Зарубежные модели
    Ответов: 16
    Последнее: 21.03.2017, 19:25
  3. Как прошить CPLD ALTERA???
    от ILoveSpeccy в разделе Несортированное железо
    Ответов: 3
    Последнее: 25.05.2007, 10:48

Ваши права

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