nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 06:11



Reply to topic  [ 38 posts ]  Go to page Previous  1, 2, 3
i8224 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Полистал я на днях так между делом одну книжечку... или даже брошюрку... :wink:
Attachment:
image8080.jpg
image8080.jpg [ 2.62 KiB | Viewed 8421 times ]

И был очень приятно удивлён, что всё, что мы тут дедуктивно-исследовательским методом накопали,
в этой книжечке прямым текстом английским по белому и написано! :roll:
Иногда, оказывается, надо припадать к мудрости первоисточника... :-?
Не то, чтобы я не люблю эту книжку читать (как меня тут упрекали некоторые странноватые люди),
просто её читать в .PDF неудобно: у Intel нумерация страниц по главам, а в .PDF - сплошная,
возникает неприятная путаница в поиске нужного материала по оглавлению...

Intel_8080_Microcomputer_Systems_Users_Manual wrote:
Once the processor has sent an address to memory, there is an opportunity for the memory to request a WAIT. This it does by pulling the processor's READY line low, prior to the "Ready set-up" interval (tRS) which occurs during the Ф2 pulse within state T2 or Tw. As long as the READY line remains low, the processor will idle, giving the memory time to respond to the addressed data request. Refer to Figure 2-5.
The processor responds to a wait request by entering an alternative state (Tw) at the end of T2, rather than proceeding directly to the T3 state. Entry into the Tw state is indicated by a WAIT signal from the processor, acknowledging the memory's request. A low-to-high transition on the WAIT line is triggered by the rising edge of the Ф1 clock and occurs within a brief delay (tDC) of the actual entry into the Tw state.
A wait period may be of indefinite duration. The processor remains in the waiting condition until its READY line again goes high. A READY indication must precede the falling edge of the Ф2 clock by a specified interval (tRS), in order to guarantee an exit from the Tw state. The cycle may then proceed, beginning with the rising edge of the next Ф1 clock. A WAIT interval will therefore consist of an integral number of Tw states and will always be a multiple of the clock period.

ImageFigure 2-5.
Russian translation wrote:
Как только процессор выставил адрес памяти, у неё есть возможность запросить цикл ожидания WAIT. Это делается путем опускания линии READY (ГОТОВ) процессора в низкий логический уровень, до начала интервал «Установка готовности» ("Ready set-up" — tRS), которое происходит в течение импульса Ф2 в пределах состояния Т2 или Tw. Пока линия READY процессора остается в состоянии низкого логического уровня, процессор простаивает, выполняя такты ожидания и давая микросхеме памяти время, чтобы отреагировать на запрос данных по выставленному адресный. См. Рисунок 2-5.
Процессор реагирует на запрос ожидания, вводя дополнительный такт (Tw) в конце T2, вместо того, чтобы перейти непосредственно к такту T3. Вход в Состояние Ожидания индицируется сигналом WAIT процессора, подтверждающим запрос этого состояния памятью. Переход линии WAIT из низкого уровня в высокий происходит по переднему фронту тактового импульса Ф1 в пределах небольшой задержки (tDC) фактического вхождения в такт Tw.
Длительность Состояния Ожидания может быть неопределенно долгой. Процессор остается в состоянии ожидания до тех пор, пока на его вход READY снова не будет подан высокой логический уровень. Признак Готовности должен предшествовать заднему фронту тактового сигнала Ф2 в соответствии с заданным интервалом (tRS), с тем чтобы гарантировать выход из состояния Tw. Цикл ожидания может быть продлен, начиная с переднего фронтом следующего тактового импульса Ф1. Поэтому интервал WAIT будет состоять из целого числа тактов ожидания Tw и всегда будет кратен периоду тактового сигнала.


Но не это главное - до этого мы и сами докопались!...
А вот что меня реально удивило, это ответ на мой собственный давний вопрос - почему RESET и READY
стробируются в задающем генераторе, а не в самом микропроцессоре.
Intel_8080_Microcomputer_Systems_Users_Manual wrote:
The READY input to the 8080A CPU has certain timing specifications such as "set-up and hold" thus, an external synchronizing flip-flop is required. The 8224 has this feature built-in. The RDYIN input presents the asynchronous "wait request" to the "D" type flip-flop. By clocking the flip-flop with Ф2D, a synchronized READY signal at the correct input level can be connected directly to the 8080A.
The reason for requiring an external flip-flop to synchronize the "wait request" rather than internally in the 8080 CPU is that due to the relatively long delays of MOS logic such an implementation would "rob" the designer of about 200ns during the time his logic is determining if a "wait" is necessary. An external bipolar circuit built into the clock generator eliminates most of this delay and has no effect on component count.

Russian translation wrote:
Сигнал READY для процессора 8080A должен имеет определенные временные характеристики, такие как «установка и удержание», поэтому необходим внешний синхронизирующий триггер для их соблюдения. Задающий генератор 8224 имеет такую встроенную функцию. Вход RDYIN подает внешний асинхронный сигнал «запроса ожидания» на триггер типа «D». Сигнал READY, синхронизированный в D-триггере фронтом Ф2D может быть подключен непосредственно к микропроцессору 8080A.
Причина использовать для синхронизации «запроса ожидания» не внутренний триггер в микропроцессоре 8080, а внешний – объясняется тем, что из-за относительно длительных задержек MOS–логики такая реализация «лишила» бы разработчика порядка 200 нс времени пока его логика определяла бы, требуется ли «ожидание». Внешняя биполярная схема, встроенная в генератор тактовых импульсов, устраняет большую часть этой задержки и не влияет на количество компонентов.



P.S. Shaos, посмотри фразу, выделенную цветом, что-то меня её перевод зело смущал, хотя смысл вроде прозрачен...

_________________
iLavr


27 Jun 2017 04:35
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Intel, кстати, приводит в своем руководстве и схему аналога 8224 на рассыпухе:
Attachment:
Analog8224.gif
Analog8224.gif [ 7.88 KiB | Viewed 8420 times ]

А размах Ф1 и Ф2 в +12В советует делать на драйвере, как это делал fifan:
Attachment:
Driver8224.gif
Driver8224.gif [ 4.1 KiB | Viewed 8420 times ]

Драйвер такого типа, как пишет Intel, обеспечивает длительность фронта и спада сигналов
Ф1 и Ф2 порядка 10 nS, тогда как для процесора приемлемо до 50 nS.

_________________
iLavr


27 Jun 2017 05:40
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Я тут решил почитать схемотехнику Altair 8800...
http://www.classiccmp.org/dunfield/altair/altair6.htm
http://altairclone.com/altair_manuals.htm
http://www.altair32.com/Altair32links.htm
http://www.altairkit.com/manuals.html

Раньше я никогда им не интересовался, поскольку считал, раз он один из первых, то всё в нем
сделано по мануалам Intel, поскольку ничего другого на тот момент по схемотехнике компьютеров
на i8080A никто вроде как знать и не должен...
Но оказалось не так. Конструкторы Altair 8800 подошли к делу творчески и с выдумкой!
Ну и самое первое - i8224 они в схему ставить не стали, а вот что они сделали, меня даже
зело подудивило! :o

Ну, задающий генератор и формирование Ф1 и Ф2 нам частично показал rw6hrm:
Attachment:
G0001.gif
G0001.gif [ 17.47 KiB | Viewed 8405 times ]

Честно говоря, мне схемотехника на одновибраторах, тем более в задающем генераторе - не по душе.. :-?
А вот дальше они закрутили ну оооочень интересно! :esurprised:
Attachment:
G0006CPU.gif
G0006CPU.gif [ 76.55 KiB | Viewed 8405 times ]

Тактовые импульсы Ф1 и Ф2 до амплитуды +12В они раскачивают ТРЕМЯ! вентилями
на каждый и на нагрузке фактически в 235 Ом!

У меня 155ЛА18 сейчас работает на 330 Ом в нагрузке... а у них, видимо, фронты еще круче! :o

Далее, что интересно, RESET они через синхронизацию Ф2 не пропускают, и INT - тоже.
Ну что RESET можно бы не привязывать к Ф2 - я тоже задумывался, а вот INT - мне казалось
должно быть строже....

Но строгость нужна для READY и HOLD их следует привязывать к фронту Ф2 обязательно.
И сразу есть ответ на вопрос:"А что будет, если так не сделать?" :lol:
Attachment:
G0002stb.gif
G0002stb.gif [ 5.88 KiB | Viewed 8405 times ]

Оказывается, если какой-либо из этих сигналов изменится во время второй половины Ф2 - процессор
свалится в неопределенное состояние...

_________________
iLavr


27 Jun 2017 17:17
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
...строгость нужна для READY и HOLD их следует привязывать к фронту Ф2 обязательно.
И сразу есть ответ на вопрос:"А что будет, если так не сделать?" :lol:
Оказывается, если какой-либо из этих сигналов изменится во время второй половины Ф2 - процессор
свалится в неопределенное состояние...

Прямо любопытно мне стало... никогда не видел нашего старичка КР580ВМ80А в "неопределенном состоянии"!... :mrgreen:
А загнать его туда довольно просто: на вход READY подключаем резистор 1кОм с +5В, и замыкающую
кнопку - на землю...
На выход WAIT через резистор 1...2кОм вешаем современный яркий светодиод - на землю.
Включаем питание, нажимаем кнопочку... если светодиод загорелся - то READY сработал нормально,
а если процессор впал в ступор и светодиод не загорелся, то это и есть то самое "неопределенное состояние"! :lol:
Очень похоже на то, как будто проц словил код 76Н. Выводится из этого состояния по RESET.
(Может, и по INT, но я пока не приделал корректно RST7...)

Ну а если по RESET проц. не выходит из этого состояния - то есть вероятность, что вы перестарались,
и старичка КР580ВМ80А-таки грохнули... 8)

Хотя по реальным впчатлениям - он довольно крепок... терпит издевательства в стиле:"А что будет,
если Ф1-таки наложить на Ф2?"... :ebiggrin:

_________________
iLavr


29 Jun 2017 12:17
Profile
Doomed

Joined: 10 Mar 2012 16:21
Posts: 598
Location: РФ
Reply with quote
Вопрос "на засыпку" : на какой вход 580гф24 подать внешний сигнал синхронизации ? :roll:


20 Nov 2017 18:18
Profile
Maniac

Joined: 18 Nov 2013 15:15
Posts: 209
Location: все оттуда ;)
Reply with quote
petrenko wrote:
Вопрос "на засыпку" : на какой вход 580гф24 подать внешний сигнал синхронизации ? :roll:

На вход XTAL1.


21 Nov 2017 20:29
Profile
Doomed

Joined: 10 Mar 2012 16:21
Posts: 598
Location: РФ
Reply with quote
Ну то есть на ножку №14 , так ?
Это точно ?
Тогда благодарю.

Но вот ещё пара вопросов : каков диапазон допустимых амплитуд ? ( по идее, как и допустимые напряжения у других входов данной и.м.с. ) ; и что "повесить" на ножку №15(xtal2) или оставить "висящей в воздухе" ?


22 Nov 2017 06:15
Profile
Maniac

Joined: 18 Nov 2013 15:15
Posts: 209
Location: все оттуда ;)
Reply with quote
petrenko wrote:
Но вот ещё пара вопросов : каков диапазон допустимых амплитуд ? ( по идее, как и допустимые напряжения у других входов данной и.м.с. ) ; и что "повесить" на ножку №15(xtal2) или оставить "висящей в воздухе" ?

If the crystal inputs are not used X1 must be tied to VCC or GND and X2 should be left open


22 Nov 2017 09:02
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 38 posts ]  Go to page Previous  1, 2, 3

Who is online

Users browsing this forum: No registered users and 5 guests


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.