nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 12 Dec 2017 06:19



Reply to topic  [ 10 posts ] 
Порты для 0-3 логических сегментов Z80 
Author Message
Doomed
User avatar

Joined: 11 Dec 2003 17:34
Posts: 420
Reply with quote
Привет!

Прошу помощи у всезнающего ALL-а!
Все адресное пространство Z80 (64 кило) делится на 4 сегмента (0-3) по 16 кило каждый. Каким образом (схемно) делаются порты каждый на свой 16kB сегмент ?. Т.е. каждый из 4-х портов включает указанную
(любую из 0-255, при 4 метрах ОЗУ) страницу только в свой сегмент.
Чо то не могу докумекать как это делается.

_________________
Vasil Ivanov
vasil-i@yandex.ru


31 Jul 2010 13:33
Profile
Admin
User avatar

Joined: 09 Jan 2003 02:22
Posts: 15908
Location: Colorado
Reply with quote
Vasil Ivanov wrote:
Привет!

Прошу помощи у всезнающего ALL-а!
Все адресное пространство Z80 (64 кило) делится на 4 сегмента (0-3) по 16 кило каждый. Каким образом (схемно) делаются порты каждый на свой 16kB сегмент ?. Т.е. каждый из 4-х портов включает указанную
(любую из 0-255, при 4 метрах ОЗУ) страницу только в свой сегмент.
Чо то не могу докумекать как это делается.


Тебе надо четыре регистра 8-разрядных поставить с Z состоянием - чтобы проц мог туда писать (как минимум), выходы с них соединяешь вместе и ведёшь на A14-A21 твоей памяти. От проца A14 и A15 ведёшь к демультиплексору 2:4, выходы которого цепляешь к OE каждого из регистров. Адреса A0-A13, шину данных, RD и WR от проца ведёшь прямиком на память. Всё :)

P.S. Во - нашёл свою зарисовку 4-летней давности! Тут к вышеописанному добавился ещё демультиплексор на порты доступа к регистрам и логика записи в них по WR - это можно по всякому делать:

Image

_________________
:eugeek: https://twitter.com/Shaos1973


31 Jul 2010 22:34
Profile WWW
Doomed
User avatar

Joined: 11 Dec 2003 17:34
Posts: 420
Reply with quote
Shaos wrote:
Vasil Ivanov wrote:
Привет!

Прошу помощи у всезнающего ALL-а!
Все адресное пространство Z80 (64 кило) делится на 4 сегмента (0-3) по 16 кило каждый. Каким образом (схемно) делаются порты каждый на свой 16kB сегмент ?. Т.е. каждый из 4-х портов включает указанную
(любую из 0-255, при 4 метрах ОЗУ) страницу только в свой сегмент.
Чо то не могу докумекать как это делается.


Тебе надо четыре регистра 8-разрядных поставить с Z состоянием - чтобы проц мог туда писать (как минимум), выходы с них соединяешь вместе и ведёшь на A14-A21 твоей памяти. От проца A14 и A15 ведёшь к демультиплексору 2:4, выходы которого цепляешь к OE каждого из регистров. Адреса A0-A13, шину данных, RD и WR от проца ведёшь прямиком на память. Всё :)

P.S. Во - нашёл свою зарисовку 4-летней давности! Тут к вышеописанному добавился ещё демультиплексор на порты доступа к регистрам и логика записи в них по WR - это можно по всякому делать:

Image


Спасибо за хелп!. Буду схемно проверять (в протеусе) твою зарисовку.

_________________
Vasil Ivanov
vasil-i@yandex.ru


01 Aug 2010 02:36
Profile
Doomed

Joined: 26 May 2003 09:57
Posts: 599
Reply with quote
Post 
А не проще поставить пару ИР26 (74HC670)?

_________________
Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/


01 Aug 2010 05:54
Profile WWW
Admin
User avatar

Joined: 09 Jan 2003 02:22
Posts: 15908
Location: Colorado
Reply with quote
Post 
b2m wrote:
А не проще поставить пару ИР26 (74HC670)?


Может и проще - но они труднодоставаемые, а значит - дорогие. В данный момент доступны только в соиках (HC и HCT) по цене за полтора доллара штучка (хорошо, что я раньше прикупил себе 4 штучки 74LS670 в DIP-корпусе для экспериментов).

_________________
:eugeek: https://twitter.com/Shaos1973


01 Aug 2010 12:12
Profile WWW
Banned
User avatar

Joined: 20 Mar 2005 16:41
Posts: 2152
Location: От туда
Reply with quote
Post 
Если будешь пихать схему в CPLD, то забудь о Z, и сделай переключение на мультиплексоре. Остальное все так. Ну я про основную идею. От себя добавлю, что сбрасываемый регистр (особенно в 0 странице) желателен, чтобы по сбросу был всегда установлен рабочий код (если 4МБ адресное пространство у тебя общее для RAM и ROM.


01 Aug 2010 14:06
Profile
Admin
User avatar

Joined: 09 Jan 2003 02:22
Posts: 15908
Location: Colorado
Reply with quote
Post 
HardWareMan wrote:
Если будешь пихать схему в CPLD, то забудь о Z, и сделай переключение на мультиплексоре. Остальное все так. Ну я про основную идею. От себя добавлю, что сбрасываемый регистр (особенно в 0 странице) желателен, чтобы по сбросу был всегда установлен рабочий код (если 4МБ адресное пространство у тебя общее для RAM и ROM.


Да - согласен - регистры надо инициировать, например при включении чтобы управление передавалось в ROM, который по умолчанию втыкается в нулевую страницу, а тот уже инитит регистры соответствующим образом.

_________________
:eugeek: https://twitter.com/Shaos1973


01 Aug 2010 15:52
Profile WWW
Doomed
User avatar

Joined: 11 Dec 2003 17:34
Posts: 420
Reply with quote
Post 
Shaos wrote:
HardWareMan wrote:
Если будешь пихать схему в CPLD, то забудь о Z, и сделай переключение на мультиплексоре. Остальное все так. Ну я про основную идею. От себя добавлю, что сбрасываемый регистр (особенно в 0 странице) желателен, чтобы по сбросу был всегда установлен рабочий код (если 4МБ адресное пространство у тебя общее для RAM и ROM.


Да - согласен - регистры надо инициировать, например при включении чтобы управление передавалось в ROM, который по умолчанию втыкается в нулевую страницу, а тот уже инитит регистры соответствующим образом.


Пока остановился на таком варианте.

Code:
   +---+----+----+
---|D0 |    |  Q0|---
---|D1 |    |  Q1|---
---|D2 |    |  Q2|---
---|D3 |    |  Q3|---
---|D4 |    |  Q4|---
---|D5 |    |  Q5|---
---|D6 |    |  Q6|---
---|D7 |    |  Q7|---
   +---|    |    |
---|WRA|    |    |
---|WRB|    |    |
--o|WR |    |    |
   +---|    |    |
---|RDA|    |    |
---|RDB|    |    |
--o|RD |    |    |
   +---|    |    |
--o|RES|    |    |
   +---+----+----+


Это 8-ми разрядный аналог (по принципу работы) 74170.
В четыре 8-ми разрядных регистра можно раздельно записывать/читать любую информацию.

D0..D7 - входы
Q0..Q7 - выходы

При WR 1->0 происходит защелкивание данных со входов D0..D7.
WRA-WRB - выбор регистров для записи.


При RD=1 на всех выходах Q уст."0".
При RD=0 происходит выдача информации на выходы Q, согласно адресу на RDA-RDB.
RDA-RDB - выбор регистров для чтения.

RES - сброс записанных данных м/с в ноль.

Шурик схему брошу тебе на мыло (shaos@mail.ru), вставь ее (или сцилку) в эту мессагу. Там дешифратор 74139my отличается
от стандартного 74139 только тем, что у моего варианта выходы не инверсные. Все равно эта схема для
плисины, так что лучше перерисовать дешифратор 2:4, чем добавлять лишние инверторы.

_________________
Vasil Ivanov
vasil-i@yandex.ru


04 Aug 2010 02:50
Profile
Doomed
User avatar

Joined: 11 Dec 2003 17:34
Posts: 420
Reply with quote
Post 
HardWareMan wrote:
Если будешь пихать схему в CPLD, то забудь о Z, и сделай переключение на мультиплексоре.


Спасибо, учту. Что касается схемной реализации, то имеется матрица на D-триггерах, 4 колонки на 8 строк. 74139 выбирает колонки, 74153 выбирают строки.

Quote:
От себя добавлю, что сбрасываемый регистр (особенно в 0 странице) желателен, чтобы по сбросу был всегда установлен рабочий код (если 4МБ адресное пространство у тебя общее для RAM и ROM.


Ты прав. Я такую фитчу встречал еще у Орион-128, когда читал описание работы его схемы. Как раз для этого у меня есть пин RES,
сбрасывающий все записанные данные.

_________________
Vasil Ivanov
vasil-i@yandex.ru


04 Aug 2010 03:15
Profile
Admin
User avatar

Joined: 09 Jan 2003 02:22
Posts: 15908
Location: Colorado
Reply with quote
Post 
Vasil Ivanov wrote:
Шурик схему брошу тебе на мыло (shaos@mail.ru), вставь ее (или сцилку) в эту мессагу. Там дешифратор 74139my отличается
от стандартного 74139 только тем, что у моего варианта выходы не инверсные. Все равно эта схема для
плисины, так что лучше перерисовать дешифратор 2:4, чем добавлять лишние инверторы.


Вставляю (кликнув на картинку можно стянуть PDF размером 171K):

Image

А вот сцылка на зазипованный PDF:

http://nedopc.org/nedopc/upload/4x8.zip (27K)

_________________
:eugeek: https://twitter.com/Shaos1973


04 Aug 2010 07:44
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 10 posts ] 

Who is online

Users browsing this forum: Bing [Bot] and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.