PC на Z80!

Микропроцессоры и микроконтроллеры от фирмы Zilog, а также компьютеры на них построенные

Moderator: Shaos

Shadovv13
Novelist
Posts: 40
Joined: 06 Jul 2011 11:19
Location: 95.135.142.82

Post by Shadovv13 »

Да! Вот тут и поползли в голову мысли: "а что ещё такое придумать???"
Shadovv13
Novelist
Posts: 40
Joined: 06 Jul 2011 11:19
Location: 95.135.142.82

Post by Shadovv13 »

Ладно, с одним как бы разобрался! жаль нету спека рабочего, проверить не док. команды. Буду использовать LD r8,r8.ЖАЛЬ :cry:

Далее, так как у меня статик ОЗУ, сигнал RFSH мне ненужен. НО отключить регенерацию, не зя. Значит надо использовать как то в пользу дела!?
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Shadovv13 wrote:Далее, так как у меня статик ОЗУ, сигнал RFSH мне ненужен. НО отключить регенерацию, не зя. Значит надо использовать как то в пользу дела!?
Использовать один бит регистра R можно. Если на выходе сделать запись в защелку по RFSH, то в ней всегда будет состояние регистра R. Младшие 7 бит будут крутиться, а старшим можно будет управлять. Вот например. Если использовать бит D7 как синхру, то можно использорвать RFSH и R как порт. Тогда ставим латч, выделяющий значение регистра R, ставим схемку-детектор изменения бита D7 и регистр хранения D0-D6. И тогда, делая установку регистра R с изменением бита D7 можно задавать 7 младших бит. Например, у регистра R D7=0, тогда если его оставить - младшие будут крутиться. А потом заносим 86h - бит сменился и 06h перенеслось в регистр. Затем надо записать число со сброшенным битом D7, например 3Ah и в регистр попадет 3Ah. Ну или привязать схему на запоминание именно по определенному перепаду D7: 0=>1 или 1=>0. Не думаю, что сложно, а управление в программе простое получится.
Shadovv13
Novelist
Posts: 40
Joined: 06 Jul 2011 11:19
Location: 95.135.142.82

Post by Shadovv13 »

Так тому и быть!!!! Будет дополнительный сигнал управления! :kruto:
Shadovv13
Novelist
Posts: 40
Joined: 06 Jul 2011 11:19
Location: 95.135.142.82

Post by Shadovv13 »

Добрался я до прерываний!:rotate:
Решил присобачить 8259, но раньше дела с ним не имел. В даташит сказано что он работает в двух режимах.

1. помещает код команды CALL и адрес.
2. просто помещает сначала младший байт потом старший байт.

Так я не понял, он с Z80 несовместим???? Или я с аЦглийским не очень.

Может кто знает где описание на русском взять, или на пальцах объяснит!
Буду при много благодарен. :oops:
User avatar
Lavr
Supreme God
Posts: 16703
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Shadovv13 wrote:Добрался я до прерываний!:rotate:
Решил присобачить 8259, но раньше дела с ним не имел. В даташит сказано что он работает в двух режимах.

1. помещает код команды CALL и адрес.
2. просто помещает сначала младший байт потом старший байт.

Так я не понял, он с Z80 несовместим???? Или я с аЦглийским не очень.

Может кто знает где описание на русском взять, или на пальцах объяснит!
Буду при много благодарен. :oops:
А зачем тебе i8259 к Z80? У последнего и свой механизм прерываний неплохой...
Ты уж определись - тебе ехать или "шашечки порисуем"? :wink:
Если последнее, то можно и про i8259 "порисовать"...
Shadovv13
Novelist
Posts: 40
Joined: 06 Jul 2011 11:19
Location: 95.135.142.82

Post by Shadovv13 »

Я с вами согласен на 99%, IM2 отлично подходит!
Но в будут слоты расширения(видео, винт, итд.), вот и отних и будут приходить прерывания! Их как то надо разделить!
У 8259 есть возможность запрещения, установки в очередь и приоритеты!

Если есть другой вариант, я с большим удовольствием выслушаю вас!
:idea:
User avatar
Lavr
Supreme God
Posts: 16703
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Shadovv13 wrote:Но в будут слоты расширения(видео, винт, итд.), вот и отних и будут приходить прерывания! Их как то надо разделить!
У 8259 есть возможность запрещения, установки в очередь и приоритеты!
Если есть другой вариант, я с большим удовольствием выслушаю вас!
:idea:
А я с большим удовольствием скажу Вам следующее: может быть Вы изложите хотя бы общую концепцию Вашего проекта?
А то, я подозреваю, что и i8237 неплохая микросхемка, а там и, глядишь, i8253 нарисуется... Комплект МП БИС он, знаете ли, большой. :wink:
Должна, вероятно, быть некоторая определённость? Прежде всего интересно, под какую ОС Вы всё это планируете?
От этого и станцуем, возможно... :-?

PS. Если эти БИС Вам по-прежнему интересны, они хорошо описаны вот здесь:
Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справочник. Том 1.
http://knigi.tr200.ru/f.php?f=%F1%EF%F0 ... %EE%E2&p=0
По этой же ссылке лежит хорошая книга:
Микропроцессоры Л.Н.Преснухин, а может и что другое подберёте...
Shadovv13
Novelist
Posts: 40
Joined: 06 Jul 2011 11:19
Location: 95.135.142.82

Post by Shadovv13 »

Концепция такова.
Архитектура должна бить "прозрачная" и максимально производительна,
легко расширяемая. Не так ка спектрум подобным.

На счет ОС. Я очень люблю писать проги под железо, так что ОС напишу сам.

Суть в том, чтобы процессор не отвлекался лишний раз, по мелочам, ну и устройства не ждали до посинения запроса с процессора.


Более внятно идею изложу попозже, после исчерпания всех вопросов. :-?
User avatar
Lavr
Supreme God
Posts: 16703
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Shadovv13 wrote:Более внятно идею изложу попозже, после исчерпания всех вопросов. :-?
Это вполне логично и в духе нашего форума. Если почитать, у нас тут много проектов, все вопросы по которым мы исчерпали, но проекты эти так и не воплотились в железо... :wink:
Да вот хотя-бы мои любимые 4-бит. :lol:
aav8
Maniac
Posts: 287
Joined: 05 Nov 2008 19:47
Location: 81.28.208.238

Post by aav8 »

Вот=вот-вот про систему прерываний Z80 - так я и не решил свою задумку (см. тему "маленький компьютер" года 2 назад...) не могу решить как сделать котроллер прерываний - уже смотрел в сторону 589ИК14 - в принципе довольно неплохайя микруха, и немного ног... -
1819ВН?? страшно универсальная, но в принципе - то-же самое, что и 580ВН59. Но сильно многоногая.
User avatar
Lavr
Supreme God
Posts: 16703
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

aav8 wrote:Вот=вот-вот про систему прерываний Z80 - так я и не решил свою задумку (см. тему "маленький компьютер" года 2 назад...) не могу решить как сделать котроллер прерываний - уже смотрел в сторону 589ИК14 - в принципе довольно неплохайя микруха, и немного ног... -
1819ВН?? страшно универсальная, но в принципе - то-же самое, что и 580ВН59. Но сильно многоногая.
Смотрел я тему "маленький компьютер"... А в чем проблема конкретно?
Если прерываний не более 2-3-х можно сделать аппаратно без контроллера
прерываний. Но по сути - это будет тот-же упрощенный контроллер прерываний из мелкой логики.
Не спасёт "маленький компьютер" такой вариант?

PS. Чтобы не быть голословным, схема есть вот в этой книжке, но её придётся доработать,
поставив регистры на запись или подходящую МС памяти.


В.И.Васильев Электронные промышленные устройства


http://book.tr200.net/v.php?id=430884

PPS. Стр.224, рис.4.37 если по ссылке. Скачал себе тоже, бумажный оригинал желтеет от времени. :wink:
Last edited by Lavr on 06 Apr 2012 10:54, edited 1 time in total.
aav8
Maniac
Posts: 287
Joined: 05 Nov 2008 19:47
Location: 81.28.208.238

Post by aav8 »

Lavr wrote: Смотрел я тему "маленький компьютер"... А в чем проблема конкретно?
Если прерываний не более 2-3-х можно сделать аппаратно без контроллера
прерываний. Но по сути - это будет тот-же упрощенный контроллер прерываний из мелкой логики.
Не спасёт "маленький компьютер" такой вариант?

PS. Чтобы не быть голословным, схема есть вот в этой книжке, но её придётся доработать,
поставив регистры на запись или подходящую МС памяти.


В.И.Васильев Электронные промышленные устройства


http://book.tr200.net/v.php?id=430884

PPS. Стр.224, рис.4.37 если по ссылке. Скачал себе тоже, бумажный оригинал желтеет от времени. :wink:
К сожалению скачать книгу не получилось. Попробую позже.
Прерываний планируется 8 с разными приоритетами.
Все больше склоняюсь к использованию 589ИК14 - содержит практически все что мне надо с минимумом обвязки, но что-то она сильно много потребляет по современным меркам. Подумывал аналогичное запихать в ПЛМ, но наверное не влезет.
На рассыпухе не уместится в конструктив...
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Я думаю, что запихать в небольшое CPLD контроллер прерываний, заточенный под режим IM 2 процессора Z80 задача таки как раз реальная. ;)
aav8
Maniac
Posts: 287
Joined: 05 Nov 2008 19:47
Location: 81.28.208.238

Post by aav8 »

HardWareMan wrote:Я думаю, что запихать в небольшое CPLD контроллер прерываний, заточенный под режим IM 2 процессора Z80 задача таки как раз реальная. ;)
Это надо смотреть ATF16-20-22 от Atmel? или что-то аналогичное (подскажите)
Хочется не более 20-24 pin в DIP-корпусе.
А для программирования нужен какой-то хитрый программатор?
Попробую запихать функционал 589ИК14 в чт-то более современное...