Z80 это 4-битный процессор?...

4-битные микроконтроллеры и микропроцессоры (прошлое, настоящее, будущее)

Moderator: Lavr

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

Post by Lavr »

HardWareMan wrote:
Lavr wrote:А ещё странно - работать с нибблами - минимум мультиплексоры нужны. Сделать операцию сразу с байтом логически представляется быстрее... Правда Шима упоминает, что ввёл конвееризацию (pipeline).
Зато оправдывается (и автоматически получается) флаг полупереноса HC.
Приведи в пример хоть одну живую схему или блок-схему как это делают?

У 8080 тоже есть флаг осевого переноса, но никто не говорит, что это
явный признак наличия 4-битного АЛУ.

А Шима мог и навести тень на плетень спустя время... если уж по факту
они бухали 2 дня, успешно "родив" свой супер-пупер-процессор... :roll:
(Сами пишут - я их за язык не тянул...) :lol:
http://archive.computerhistory.org/reso ... .05.01.pdf
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Факт, что у Z80 4-битное АЛУ, всё-таки известный...
http://www.motherboardpoint.com/re-pipe ... 49836.html
(the original Z80 had a 4 bit ALU so had to push things through, "twice")
но не широко.

В подавляющем болшинстве случаев этот факт замалчивается.
Да и принцип работы с 8-битными данными пока для меня аппаратно не прозрачен.
Понятно, что "twice", но дьявол кроется в деталях. Вылезает больше вопросов,
нежели ответов... :-?

Особенно неприятны вопросы, связанные с флагом переноса и его учётом для
ниббла и для обрабатываемого байта.
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Вот блок-схема из книжки F. Anceau. The Architecture of Microprocessors. Workingham, England: Addison-Wesley, 1986.:

Image
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Shaos wrote:Вот блок-схема из книжки F. Anceau. The Architecture of Microprocessors. Workingham, England: Addison-Wesley, 1986.:
http://nedopc.org/nedopc/upload/4bit-z80.jpg
Познавательно, но как осуществляется работа АЛУ с нибблами - непонятно...
Там текста нет об этом? Искал источник, чтобы скачать - пока безуспешно. :-?
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

по тексту ничего внятного, а по диаграмме - видно что алу оперирует не с аккумулятором а с некими 4-битными регистрами T и AC, которые могут быть загружены половинками регистров
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Диаграмма только добавляет туману. Если "молоток" со стрелкой - мультиплексор
или сдвигатель на 4, и после него шина - 4-битна, странно, что выход 4-битного
АЛУ
подключается прямо к 8-битной двунаправленной магистрали, идущей от А.
Жульничество все эти блок-схемы! На весь "изнюханный" вдоль и поперек i8080, я
каких только блок схем не встречал... :-?
pfgx
Senior
Posts: 137
Joined: 20 Mar 2013 03:36
Location: Ростов-на-Дону

Post by pfgx »

Про жульничество с блок-схемами полностью согласен.
За прошедшее время 4-битность АЛУ Z80 так и не получила подтверждения? Что-то я в этом сомневаюсь, да и на фотографиях кристалла больше похоже на 8 бит.
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

pfgx wrote:За прошедшее время 4-битность АЛУ Z80 так и не получила подтверждения?
Что-то я в этом сомневаюсь, да и на фотографиях кристалла больше похоже на 8 бит.
Альтернативных дополнительных источников не попадалось пока... :(

Единственное, что косвенно может подтверждать 4-битность АЛУ Z80 - это его отличия
в работе с флагом AC.

Если АЛУ 4-битное, то флаг AC - это фактически С при работе с младшим нибблом.
Его сразу сохраняем как AC в регистр флагов, и значение используем, как Cin при
работе со старшим нибблом, в его случае С - записываем в реальный регистр флагов...

Также мои прикидки 4-битного процессора позволяют предположить, что 4-битное АЛУ упрощает
схемотехнику, но никак на быстродействии не скажется, да и выделение флага AC - упрощается.

Так что - хотелось бы поверить, если бы нашелся хотя бы ещё один подтверждающий источник.

Впрочем, есть один радикальный способ убедиться...

Шаос может написать подходящее письмо прямо в Zilog - мне недавно попадался материал в сети,
там один джентльмен запросил у Zilog документацию на какие-то старые процессоры, и был
так удивлён, что ему ответили с приложением документации, что поделился этим в сети.

Естественно, что письмо надо составить умно, а не так, чтоб:"А правда, что у Z80 4-битное АЛУ ?" :lol:

Есть шанс, что жителю США они ответят по факту, тем более Шаос участник тамошних
электронный сейшнов, даже спонсором был, и электронный бизнес пытается двинуть...
Со всеми этими регалиями, возможно, и есть шанс получить информацию от Zilog, тем более,
Шаос и победителем чего-то был, так что может и по СМИ быть известен...

Но это чисто моё предположение, основанное на реальном факте...
В конце-концов, за спрос ведь денег не берут? :wink:
iLavr
vinxru
Retired
Posts: 587
Joined: 27 Mar 2013 04:55
Location: 62.192.229.16

Post by vinxru »

ИМХО 8080 уже даже не 8 битный процессор, а почти 16 битный.

А делать очень широкое АЛУ не имеет смысла, сигнал по нему будет распространяться очень долго (перенос при сложении, вычитании). Пройдет не один такт процессора, пока АЛУ досчитает до конца.

Поэтому использовать более короткое АЛУ, это хорошее решение. Мы ничуточки не теряем в производительности. Короткое АЛУ будет считать быстрее в раза раза, но за два прохода.
vinxru
Retired
Posts: 587
Joined: 27 Mar 2013 04:55
Location: 62.192.229.16

Post by vinxru »

Я где то читал, что у современных 64-х битных процессоров используется 16-битный сумматор.
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

vinxru wrote: А делать очень широкое АЛУ не имеет смысла, сигнал по нему будет распространяться очень долго (перенос при сложении, вычитании). Пройдет не один такт процессора, пока АЛУ досчитает до конца.
А про схему быстрого переноса ты никогда не слышал? ;)
Я тут за главного - если что шлите мыло на me собака shaos точка net
vinxru
Retired
Posts: 587
Joined: 27 Mar 2013 04:55
Location: 62.192.229.16

Post by vinxru »

Все равно медленно.
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

A надо периодически возвращаться к интересным вопросам! :o Спасибо pfgx!

Z80 действительно имеет 4-битное АЛУ! И источник информации надёжнейший! :wink:
Сам Masatoshi Shima:

Image


Так что - вопрос можем считать достоверно закрытым!!!




PS. На мой взгляд, 4-битность АЛУ у z80 - это никому также не мешает, как и наличие
конвеера у 8086.
По всем операциям z80 ведет себя как 8-битный, как и то, что 8086 ведет предвыборку
в конвеер в его программной модели никакого значительного отражения не имеет...
Так что - поверим Шиме, как автору, и просто зафиксируем этот факт, тем более, что мы и
раньше Шиму читали...
iLavr
sheff440
Junior
Posts: 1
Joined: 13 Jun 2013 15:54
Location: 95.153.170.191

Post by sheff440 »

Оно то конечно, сомнений в 4-битности АЛУ у Z80 не осталось, но разве всем сразу перестало быть интересно, как это реализовано? Мне по какой-то причине остается интересным.
Здесь я нашел упоминание о кажется (интуитивно) похожей технике, примененной в ядре Intel Willamette:
E.g. Intel Willamette's integer ALUs operated on 32 bit integers - but 16 bits at a time.
А здесь:
http://electronics.stackexchange.com/qu ... for-n-bits
товарищ рассказывает юному падавану о преимуществах такого вот уменьшения битности слогаемых и уширения шины данных. Надеюсь кто нибудь из вышеприведнной информации что-либо поймет :rotate: и найдет полезное для себя
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

sheff440 wrote:Оно то конечно, сомнений в 4-битности АЛУ у Z80 не осталось, но разве всем сразу перестало быть интересно, как это реализовано?
Ну это неправда - просто из 4-битного форума материал вынесли в более подходящий
по тематике ZILOG: Z80 Finite State Machine.

Там коллега pfgx предпринимает усилия разобраться с Z80 более, чем просто подробно! :o
Так что интерес совершенно не пропал! :wink:
iLavr