ZXNet эхоконференция «hardware.zx»


тема: Z80 - чтение из памяти



от: Andreas Kaiser
кому: All
дата: 27 Feb 2006
Hello, All

Вот смотрю я на времянку чтения памяти и тупею. Я правильно понимаю, что
действительные данные на шине можно поднимать по спаду третьего периода? А
можно юзать фронт /MREQ + /RD для этого? Маловато времени, в Z180 и то больше.

от: Andreas Kaiser
кому: All
дата: 27 Feb 2006
Hello, jdigreze

jdi> Судя по всему, понимаешь правильно. А по фронту /MREQ и /RD делать
jdi> этого не стоит, так как рискуешь подхватить "нечто" при переходном
jdi> процессе шины данных...

Мда... В который раз убеждаюсь, что японцы пошли на пользу Z80. Спасибо.
Кстати, я так понимаю, что все имеющиеся клоны да и вообще системы на Z80
"реагируют" именно на спад Т3?

jdi> Интересно что чтение команды идет по переднему фронту 3-го такта, а
jdi> чтение данных по заднему...

А как же ещё? При М1 грубо говоря по фронту третьего периода начинается по идее
рефреш. Т.е. к этом моменту шина данных должна быть в Z. Другой вопрос что
мешало им сделать задержку данных на шине на момент с фронта и по спад Т3?

от: Игорь Афонькин
кому: All
дата: 27 Feb 2006
Hello, icebear

Судя по всему, понимаешь правильно. А по фронту /MREQ и /RD делать этого не
стоит, так как рискуешь подхватить "нечто" при переходном процессе шины
данных... Интересно что чтение команды идет по переднему фронту 3-го такта, а
чтение данных по заднему...

от: Andreas Kaiser
кому: All
дата: 01 Mar 2006
Hello, icebear

Hе буду новую тему открывать, вопрос касается чтения, как памяти так и портов
в/в. Итак, согласно DS при считывание из порта в/в вводится автоматом один цикл
ожидания и действительные данные снимаются с шины в промежутке между спадом и
фронтом третьего периода (третьего не по счёту, а потому что счёт идёт Т1, Т2,
Tw и Т3). При чтении из памяти такая же ситуация (за исключением 3-х тактов
вместо 4-х, но один фиг, перепады на последнем периоде играют роль). Я так
думаю, страшно не будет , если данные появятся скажем по спаду Т1 на шине, а
исчезнут по спаду Т3 в обоих случаях (что бы не запутаться с номерами периодов,
посмотрите диаграммы)? Hе охота подгонят именно под рисунок из DS. Ведь при
записи данные долго на шине должны висеть.

от: Andreas Kaiser
кому: All
дата: 02 Mar 2006
Hello, Ronin

Ron> ты скажи на кой тебе это надо ?
Ron>
Ron> в смысле тебе надо проц симитировать ? или девайс правильно
Ron> прикрутить ?

Hу почему сразу спрашивают "зачем это надо"? В своё время всё узнаешь :) Тайны
никакой нет, просто ещё рано.

Ron> если девайс - просят у тебя по rd,mreq данные - так и выдавай хоть
Ron> сразу после rd,mreq но держи до Т3. проц схватит по срезу Т3 - можешь
Ron> снимать.
Ron> в даташите показано когда проц читает, а не когда устройства выдают.
Ron> в промежутках процу вобще плевать что там на ШД твориться - а там
Ron> могут твориться и реальные данные.

Вот, я так и думал. Т.е. я ещё не совсем тупой буратино и тайминги можно
разгрузить. Ура и спасибо.

от: Victor Ronin
кому: All
дата: 02 Mar 2006
Hello, icebear

ты скажи на кой тебе это надо ?

в смысле тебе надо проц симитировать ? или девайс правильно прикрутить ?

если девайс - просят у тебя по rd,mreq данные - так и выдавай хоть сразу после
rd,mreq но держи до Т3. проц схватит по срезу Т3 - можешь снимать.
в даташите показано когда проц читает, а не когда устройства выдают. в
промежутках процу вобще плевать что там на ШД твориться - а там могут твориться
и реальные данные.

от: Дмитрий Демьяненко
кому: All
дата: 03 Mar 2006
Hello, icebear

В КАY данные из памяти защелкиваются каждый положительный перепад сигнала с
частотой 3.5МГц а выставляются на шину данных по MREQ=0 RD=0

от: Дмитрий Демьяненко
кому: All
дата: 03 Mar 2006
Hello, icebear

В КАY данные из памяти защелкиваются каждый положительный перепад сигнала с
частотой 3.5МГц а выставляются на шину данных по MREQ=0 RD=0 и сигнал CLC
процессора находиться в высоком логическом уровне

Запись происходит CLC=1 CAS=0 MREQ=0 RD=1 при эти всех делах формируется сигнал
WE в память

от: Andreas Kaiser
кому: All
дата: 03 Mar 2006
Hello, heroy

her> В КАY данные из памяти защелкиваются каждый положительный перепад
her> сигнала с частотой 3.5МГц а выставляются на шину данных по MREQ=0
her> RD=0

Когда выставляются я уже допёр, спасибо. Мне вот было в основном непонятно,
когда они снимаются. Имеется две библии от Zilog, одна старая, другая та,
которая лежит у них сейчас и в обоих написано немного по-разному, точнее
несходятся они в диаграмме чтения памяти (в новой нарисовано, что данные
снимаются до перепада /MREQ и /RD, в старой, что как раз в момент этого
перепада). В тексте не особо внятно это описано, минской книге я доверяю
меньше, чем библии :) Отсюда собсно и возник вопрос.

от: Victor Ronin
кому: All
дата: 03 Mar 2006
Hello, icebear

ice> Hу почему сразу спрашивают "зачем это надо"? В своё время всё узнаешь
ice> Тайны никакой нет, просто ещё рано.

просто когда знаешь для чего - проще объяснять. а не от праздного любопытства
:D

от: Andreas Kaiser
кому: All
дата: 03 Mar 2006
Hello, Ronin

Ron> блин только что заметил что min time16=0ns !!! (а max ессно не
Ron> нормирован) хаха вот как.

Hу вот, как только /RD сняли - данный тю-тю. И в UM именно так и нарисовано.
Хотя для меня это не критично, до конца Т3 шину осободить успею.

от: Andreas Kaiser
кому: All
дата: 03 Mar 2006
Hello, Ronin

Ron> читай не юз/ман um0080.pdf а криво отсканеный прод/спек ps0178.pdf -
Ron> там на fig.6 pag.25 времена разрисованы.

Это была моя вторая библия

Ron> Только нафига тебе это надо не понимаю - там все также относительно
Ron> спада Т3 разрисовано.

Так да не так. Именно поэтому и возникли вопросы. В UM по спаду Т3 уже данные
ёк, а в PS данные ещё некоторое время висят после этого спада. Т.е. согласно PS
именно момент спада Т3 есть момент, когда процессор поднимает данные шины. Я
уже разобрался, спасибо. Кстати, в Z180 такая же бадяга.

от: Victor Ronin
кому: All
дата: 03 Mar 2006
Hello, icebear

ice> В тексте не особо внятно это описано, минской книге я доверяю
ice> меньше, чем библии Отсюда собсно и возник вопрос.

читай не юз/ман um0080.pdf а криво отсканеный прод/спек ps0178.pdf - там на
fig.6 pag.25 времена разрисованы. Только нафига тебе это надо не понимаю - там
все также относительно спада Т3 разрисовано.

блин только что заметил что min time16=0ns !!! (а max ессно не нормирован) хаха
вот как.

Файл: time16.gif http://zx.pk.ru/attachment.php?attachmentid=2734
Файл: fig6pag25.zip http://zx.pk.ru/attachment.php?attachmentid=2733

от: Victor Ronin
кому: All
дата: 03 Mar 2006
Hello, icebear

ice> Hу вот, как только /RD сняли - данный тю-тю. И в UM именно так и
ice> нарисовано. Хотя для меня это не критично, до конца Т3 шину осободить
ice> успею.

данные проц читает по срезу Т3, но холлд до снятия RD/ видимо нужен (так в PS
нарисовано). хотя на практике наверно необязательно.
данные проц снять с ШД не может - не он выставлял :)
убирать их можно сразу после снятия RD/, а можно и подождать покурить (точнее
это время получается в результате задержки в элементах от RD/ до Z-буфера
данных - и оно ненулевое)

от: Andreas Kaiser
кому: All
дата: 06 Mar 2006
Hello, jdigreze

jdi> Главное успеть покурить до переднего фронта следующего такта ;)
jdi> Скорее всего данные нужно "снять" когда /RD "впадет в спячку", т.е.
jdi> "1"

Именно так и сделано на данный момент.

от: Игорь Афонькин
кому: All
дата: 06 Mar 2006
Hello, Ronin

Главное успеть покурить до переднего фронта следующего такта ;)
Скорее всего данные нужно "снять" когда /RD "впадет в спячку", т.е. "1"




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Are You A Communist?
От автора - Телевидение умиляется: девочка из Владивостока рисует самодельные листовки в поддержку В.В.Путина.
Lookout
Вся жизнь игра - Последний II: злодеи близко.
IS-DOS - информация о фирме ISKRASOFT.

В этот день...   28 марта