i8224

8-битные микроконтроллеры и микропроцессоры от Intel и их клоны, а также компьютеры на них построенные

Moderator: Shaos

User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Re: i8224

Post by Lavr »

Полистал я на днях так между делом одну книжечку... или даже брошюрку... :wink:
image8080.jpg
И был очень приятно удивлён, что всё, что мы тут дедуктивно-исследовательским методом накопали,
в этой книжечке прямым текстом английским по белому и написано! :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.
[color=#FF0000]Russian translation[/color] 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.
[color=#FF0000]Russian translation[/color] wrote:Сигнал READY для процессора 8080A должен имеет определенные временные характеристики, такие как «установка и удержание», поэтому необходим внешний синхронизирующий триггер для их соблюдения. Задающий генератор 8224 имеет такую встроенную функцию. Вход RDYIN подает внешний асинхронный сигнал «запроса ожидания» на триггер типа «D». Сигнал READY, синхронизированный в D-триггере фронтом Ф2D может быть подключен непосредственно к микропроцессору 8080A.
Причина использовать для синхронизации «запроса ожидания» не внутренний триггер в микропроцессоре 8080, а внешний – объясняется тем, что из-за относительно длительных задержек MOS–логики такая реализация «лишила» бы разработчика порядка 200 нс времени пока его логика определяла бы, требуется ли «ожидание». Внешняя биполярная схема, встроенная в генератор тактовых импульсов, устраняет большую часть этой задержки и не влияет на количество компонентов.

P.S. Shaos, посмотри фразу, выделенную цветом, что-то меня её перевод зело смущал, хотя смысл вроде прозрачен...
You do not have the required permissions to view the files attached to this post.
iLavr
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Re: i8224

Post by Lavr »

Intel, кстати, приводит в своем руководстве и схему аналога 8224 на рассыпухе:
Analog8224.gif
А размах Ф1 и Ф2 в +12В советует делать на драйвере, как это делал fifan:
Driver8224.gif
Драйвер такого типа, как пишет Intel, обеспечивает длительность фронта и спада сигналов
Ф1 и Ф2 порядка 10 nS, тогда как для процесора приемлемо до 50 nS.
You do not have the required permissions to view the files attached to this post.
iLavr
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Re: i8224

Post by Lavr »

Я тут решил почитать схемотехнику 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:
G0001.gif
Честно говоря, мне схемотехника на одновибраторах, тем более в задающем генераторе - не по душе.. :-?
А вот дальше они закрутили ну оооочень интересно! :esurprised:
G0006CPU.gif
Тактовые импульсы Ф1 и Ф2 до амплитуды +12В они раскачивают ТРЕМЯ! вентилями
на каждый и на нагрузке фактически в 235 Ом!

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

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

Но строгость нужна для READY и HOLD их следует привязывать к фронту Ф2 обязательно.
И сразу есть ответ на вопрос:"А что будет, если так не сделать?" :lol:
G0002stb.gif
Оказывается, если какой-либо из этих сигналов изменится во время второй половины Ф2 - процессор
свалится в неопределенное состояние...
You do not have the required permissions to view the files attached to this post.
iLavr
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Re: i8224

Post by Lavr »

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
petrenko
Doomed
Posts: 598
Joined: 10 Mar 2012 16:21
Location: РФ

580гф24 aka i8224

Post by petrenko »

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

Re: 580гф24 aka i8224

Post by VGrad »

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

Re: i8224

Post by petrenko »

Ну то есть на ножку №14 , так ?
Это точно ?
Тогда благодарю.

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

Re: i8224

Post by VGrad »

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