...
Вид для печати
...
1. Подтягивающие резисторы порта С микросхемы КР580ВВ55А - это резисторная сборка НР2 слева от К555ЛА9
2. Да, сброс переключает порты КР580ВВ55А на ввод, и нули будут задаваться схемой начального пуска. Первое обращение к этой микросхеме должно задавать режим работы порта С на вывод, при этом РС0-РС7 будут установлены в ноль (по даташиту).
3. Далее?
Будет удерживаться выходами элементов D14.4 и D14.3.
А первые три бита адреса РЕ3 поступают с адресной шины: A13, A14, A15. Там будут нули. Соответственно, в диапазоне адресов 0x0000h - 1FFFh, 8 КБайт, будет выбрана нулевая ячейка 155РЕ3.
---------- Post added at 19:13 ---------- Previous post was at 19:09 ----------
*
Исправил.
70h - это значит, что на выходе /MS4 будет "0". А это сигнал выбора ПЗУ D34.
---------- Post added at 19:34 ---------- Previous post was at 19:28 ----------
Только не 07h, а 70h. :)
---------- Post added at 19:41 ---------- Previous post was at 19:34 ----------
Скажу заранее, что значения сигналов МА14, МА15, MP0, MP1 не будут иметь значения, ввиду того, что сигнал /SSSD переведёт D38 и D39 в Z-состояние.
Тут я немного слукавил. ;) Дело в том, что по некоторым описаниям программирования 155РЕ3, 556РТ4 (и т.д.) используется "инверсный" дамп, но это всё тонкости программирования ПЗУ. Нам же нужны реальные данные. :)
Ага... Представили ПЗУ в виде дешифратора, так сказать "изобразили функцию". :)
Всё правильно.
А теперь важно. ;) Ввиду того, что происходит обращение к устройствам МП находящимся на внутренней магистрали, то их и выключают.
Не совсем правильно, в Z-состояние переводятся только буферы ШД (D38, D39), так как происходит обращение к внутренним ресурсам (памяти либо УВВ) модуля. Для отключения остальных буферов (ШУ, ША) процессор должен выставить сигнал HLDA, либо программно разрешить захват шины сигналом PC4 порта С 580ВВ55.
Посмотри в эмуляторе b2m. Либо b2m прояснит, он ГУРУ в этих вопросах. :)
Так описан момент "после сброса", а до инициализации стека ещё не дошло, не говоря уже о том, что ещё и ВВ55 не проинициализирован. ;)
---------- Post added at 11:51 ---------- Previous post was at 11:20 ----------
Ещё одна тонкость, всё описанное выше верно только после того как процессор выставит "слово состояния", т.к. сигнал "IO/M", к которому привязаны D22 (РЕ3) и D23 (ИД7), формируется из него.
Качаем справочник Шахнова и смотрим стр. 59. :)
Да, регистр флагов и PC по сбросу устанавливаются в ноль (а ещё триггеры разрешения прерывания и захвата шины). Однако, не надо забывать, что когда регистр флагов выдаётся в виде байта, там есть один бит, который железно установлен в еденицу, поэтому будет число 02.
правильно.
во всех системмах где возможны аппаратные прерывания обязательно при входе в критические участки их запрещают.
какие могут быть прерывания если не настроен (их) контроллер и не определен стек.
Atari, ну как же правильно? PC = 0000 + 1 --> 0001.
да я и забыл про РС... это само сабой...
После сброса, схема начального старта принудительно включает нулевую карту памяти:
[0000h - 3FFFh] - ПЗУ,
[4000h - CFFFh] - ОЗУ,
[D000h - FFFFh] - Видео.
После инициализации ВВ55, включается та же нулевая карта.
Весь процесс, собственно, вот (под спойлером):
Скрытый текст
Код:ROM:0000 loc_0000:
ROM:0000 F3 di
ROM:0001 31 00 D0 lxi sp, 0D000h
ROM:0004 C3 47 02 jmp _Init0
ROM:008E ; ---------------------------------------------------------------------------
ROM:0091 00 00 00 40+_init_VV51: .db 0, 0, 0, 40h, 0CEh, 15h
ROM:0097 FF FF 00 FF+_toAsrar: .db 0FFh,0FFh,0,0FFh,50h,41h,0,0,0,0,50h,19h,0,0,0FFh,20h
ROM:00A7 ; ---------------------------------------------------------------------------
ROM:0247 _Init0:
ROM:0247 3E 82 mvi a, 82h
ROM:0249 D3 13 out PPA_RUS
ROM:024B 21 97 00 lxi h, _toAsrar
ROM:024E 01 10 00 lxi b, 10h
ROM:0251 11 74 FF lxi d, ASRAR
ROM:0254 CD 6F 00 call _LDIR
ROM:0257 3E 76 mvi a, 76h
ROM:0259 D3 0B out TMR_RUS
ROM:025B 3E 21 mvi a, 21h
ROM:025D D3 09 out TMR_CH1
ROM:025F 3E 1B mvi a, 1Bh
ROM:0261 D3 09 out TMR_CH1
ROM:0263 3E 36 mvi a, 36h
ROM:0265 D3 0C out PIC_0C_REQ_CMD
ROM:0267 3E 88 mvi a, 88h
ROM:0269 D3 0D out PIC_0D_MASK_CMD
ROM:026B 3E FF mvi a, 0FFh
ROM:026D D3 0D out PIC_0D_MASK_CMD
ROM:026F 3E 20 mvi a, 20h
ROM:0271 D3 0C out PIC_0C_REQ_CMD
ROM:0273 0E 06 mvi c, 6
ROM:0275 21 91 00 lxi h, _init_VV51
ROM:0278
ROM:0278 loc_0278:
ROM:0278 7E mov a, m
ROM:0279 D3 07 out VV51_StatCtrl
ROM:027B 0D dcr c
ROM:027C 23 inx h
ROM:027D C2 78 02 jnz loc_0278
ROM:0280 DB 06 in VV51_Data
ROM:0282 3E 36 mvi a, 36h
ROM:0284 D3 0B out TMR_RUS
ROM:0286 3E 0C mvi a, 0Ch
ROM:0288 D3 08 out TMR_CH0
ROM:028A 3E 00 mvi a, 0
ROM:028C D3 08 out TMR_CH0
[свернуть]
Это весь процесс инициализации МП.
---------------------------------------
* Из любезно предоставленной esl информации. :)
KokaF77, приправьте ПЛЗ комментами, а то почти минуту догонял что "???_RUS" - это регистр управляющего слова.
есть где нормальная распортовка? всмысле описание что на каких портах находится
---------- Post added at 23:05 ---------- Previous post was at 22:46 ----------
esl, в принципе стилистика нормальная, просто думаю стоит иногда объяснять что именно имеется ввиду и не плодить ненужные ребусы.
"Красная книга" :)
тут была ссылка на мою идашную базу
Бери и переименовывай как удобно ;)
Код:; enum IO_Ports
KBD_R4: equ 4
KBD_R5: equ 5
VV51_Data: equ 6
VV51_StatCtrl: equ 7
TMR_CH0: equ 8
TMR_CH1: equ 9
TMR_CH2: equ 0Ah
TMR_RUS: equ 0Bh
PIC_0C_REQ_CMD: equ 0Ch
PIC_0D_MASK_CMD: equ 0Dh
PIC_0E_REQ_CMD: equ 0Eh
PIC_0F_MASK_CMD: equ 0Fh
PPA_A: equ 10h
PPA_B: equ 11h
PPA_C: equ 12h
PPA_RUS: equ 13h
ROMDISK_PORT: equ 14h
VID_MODE: equ 0D8h
VID_COLOR: equ 0D9h
VID_PAGE: equ 0DAh
а контролеров прерываний два?
А в остальном - да.
---------- Post added at 00:27 ---------- Previous post was at 00:18 ----------
В SP заносится значение D000h - это так. И стек будет "расти" вниз начиная с этого адреса.
Viktor2312, вопрос был твой, и знак вопроса тоже.
А сообщение надо бы дочитать до конца...
P.S. В цитатах есть "стрелочка" (после имени пользователя), если нажать на неё, то увидишь сообщение, которое процитировано. ;)
Запустил модуль процессора от Виктора.
Виктору респект, всего одна ошибка.
Правда пока только работает то, что очевидно, всякие порты не проверялись еще и клава не подцеплена.
Но с контроллером дисплея общается , то есть основное работает, остальное мелочи.
Ошибка - нет соединения контакта системного разъема А8 со схемой - пропущено соединение в резисторной сборке НР6.
Еще по мелочи :
1. Желательно разъем X6 отодвинуть от сборки НД1, уж очень он близко ( и на оригинальной плате тоже )
2. Перемычка которая по питанию ВМ80 очень близко, мешает панелька.
3. Перемычки 2К/8К отодвинуть от панелек, их точить приходится.
4. R7 - маленькие отверстия
5. C1 - не показан и маленькие отверстия.
А в общем можно собирать эту плату, рекомендую тем кто купил или собирается.
Еще хотел спросить, а почему Вы убрали старые добрые советские танталовые кондеры по питанию и решили обычные радиальные поставить ?
Неужели уже их не купить ?
Они всяко красивей смотрятся на фоне 580 комплекта.
У меня пока еще не все детали впаяны, поэтому может не стоит в первый пост, сами смотрите.
Хотел побыстрее запустить и то что к периферии относится не впаял пока. Там эти геморройные самопальные резисторные сборки надо городить, много времени отнимают.
Скрытый текст
Наши бывают и 4М и 7М и 8М и 9М и без М ( более громоздкие на вид ). Другое дело
что найти наши не весь ассортимент уже можно и не всех номиналов, да и импорт не все номиналы легко доступны.
Конечно самые легко доставаемые - 9М.
Но в некоторых случаях , например когда стоит КР556РТ4 ( таких много в контроллере дисплея ) нужно всего 4 резистора. И не рекомендуется тянуть слижком далеко дорожки до свободных выводов другой сборки.
Я думаю что надо придерживаться относительно легко доставаемых номиналов -
330 Ом
470 Ом
1КОм
2,2 КОм
4,7 КОм
10 КОм
---------- Post added at 15:03 ---------- Previous post was at 14:59 ----------
Подтягивать надо, у нас конструктив такой, что платы расположены могут быть на расстоянии, потому что стоят в корзине и соответственно источник и приемник сигнала удалены на несколько сантиметров или десяток сантиметров. Без резисторов помехоустойчивость будет ниже. Поэтому и резисторы такие мелкие - 1К, а на некоторых сигналах вообще 330Ом стоит. Внутри плат можно конечно и больше номиналы, они там так и стоят - 4,7КОм и 10-12КОм.
---------- Post added at 15:06 ---------- Previous post was at 15:03 ----------
Значит там все на одной плате расположено, а тут неизвестно как будут стоять платы, например в Каспии два ряда плат, между рядами сантиметров 20 проводов просто в жгуте без всяких экранов. Поэтому сделано все с запасами, и буфера стоят на большую нагрузку, и это правильно при таком конструктиве.
---------- Post added at 15:10 ---------- Previous post was at 15:06 ----------
И еще конечно такие хитрые номиналы в сборках как 1,1КОм, 750Ом надо менять, их найти практически нереально. Мне вообще непонятно с чего такой номинал на выходах РЕ3 выбран - 1,1КОм.
Обнаружил косячек в схеме модуля процессора, на который раньше похоже никто не обращал внимания.
Вход S триггера D17.1 ( по схеме из красной книги ) не подключен, что не есть хорошо.
Надо хотя бы на 5В его подключить.
На авторской плате этот косяк есть, и на плате Виктора и у меня тоже не подключен.
Виктор, рекомендую поправить у себя, нехорошо когда вход, который может влиять на работу схемы, болтается в воздухе.
Посмотрел на заводскую плату Каспия - та же история, похоже никто на это не обратил внимания с самого начала разработки и производства плат МП.
Преобразователь сделан на ICL7660
http://www.alldatasheet.com/datashee.../ICL7660A.html
Страница 3-31
MV1971, А где посмотреть ошибки на вашу плату, а то что то тихо в теме, пора хоть мне собирать начать.
Вот и я про это, заработало ли? Ваша тема про сборку модуля процессора очень понравилась, о вот темы про видео такой нет и про fdd нет
именно так но у него корпус месяц назад готов ещё не был, а проверял он в другом готовом компике, я в личке спрашивал
а вопрос по поводу начать собирать как раз он и подбросил и про отсутствие телодвижений в теме тем более со мной еще четыре человека комплект для сборки Ириши приобрели, месяц назад
а у Вас на какой стадии проект? да и вопросы есть но попозже я сейчас вторую неделю занимаюсь рк на z80
Да вроде как выводных навалом, навскидку http://www.ebay.com/itm/1-10M-1120pc...item1c29f16a51
Ссылка на фото плат с двух сторон, на каждом фото красным указано, что нужно резать, синим - что соединять.
http://yadi.sk/d/6EfZdv-M4lkng
К сожалению, ошибок много, и это только те, которые я нашел просто на чистой непаяной плате.