Что устанавливает ограничение на ОЗУ, к которому может получить доступ процессор?

Согласно этой лекции профессора IIT, 8-битный процессор 8085 будет иметь 8-битные регистры, которые могут быть соединены для доступа к 16-битному адресу. Он обеспечивает тот факт, что он может получить доступ к 16-битному адресу, сообщая нам, что регистры счетчика программ и указателя стека являются 16-битными. Позже он также сообщает нам, что шина данных 8-битная, а шина адреса 16-битная.

Как следствие, не будет ли это означать, что 32-битный процессор сможет получить доступ к 64-битному адресу? Но я знаю, что максимальный адрес 32-битного процессора составляет около 4 ГБ. Что устанавливает этот предел?

Обновление: Как уже отмечали некоторые из вас, с помощью PAE этот адрес можно расширить, но без PAE что устанавливает этот предел? Другими словами, почему на 32-битном процессоре Pentium без PAE установлено ограничение в 4 ГБ?


person developer747    schedule 25.02.2013    source источник
comment
@ paulsm4 10b составляет всего 1 КБ, IIRC 8085 действительно использовал адреса 16 байт, что составляет 64 КБ.   -  person Petr Abdulin    schedule 25.02.2013


Ответы (3)


Нет. 8085 имеет 8-битные регистры и 16-битное адресное пространство, но это не означает, что 64-битный компьютер должен иметь доступ к 128 битам. Каждая архитектура — это отдельная архитектура.

Ответ заключается в том, что единственный способ узнать адресное пространство машины — сообщить вам об этом производитель. Каждое адресное пространство выбирается по своим причинам. 8086 имел 16-битные регистры и 20-битное адресное пространство. ARM2 имел 32-битные регистры и 26-битное адресное пространство. 80286 имел 16-битные регистры и 24-битное адресное пространство. amd64 имеет 64-битные регистры и существуют 40-битные и 48-битные реализации физического адресного пространства. Адреса также могут быть отправлены контроллеру памяти за несколько тактов. Переключение банков может быть использовано для предоставления адресных пространств произвольного размера.

Каково адресное пространство процессора Pentium?

Каждому байту назначается уникальный адрес, называемый физическим адресом, который находится в диапазоне от нуля до максимума 2 ^ 32–1 (4 гигабайта) -- Руководство разработчика семейства процессоров Pentium, том 3: Руководство по архитектуре и программированию

http://www.intel.com/design/pentium/MANUALS/24143004.pdf

Какое адресное пространство у современного процессора Intel 64?

Архитектура Intel 64 увеличивает линейное адресное пространство для программного обеспечения до 64 бит и поддерживает физическое адресное пространство до 40 бит. -- Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32, том 1: Базовая архитектура

http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-vol-1-manual.pdf

Каково адресное пространство современного процессора Intel в 32-битном режиме?

Адресное пространство — любая задача или программа, работающая на процессоре IA-32, может адресовать линейное адресное пространство до 4 ГБ (2^32 байта) и физическое адресное пространство до 64 ГБ (2^36 байт) — Intel Руководство разработчика программного обеспечения для архитектур 64 и IA-32, том 1: Базовая архитектура

И так далее.

person hdante    schedule 25.02.2013

Есть несколько лимитов:

  1. Размер адресных регистров и логика вычисления адреса.

  2. Количество линий физического адреса, выходящих из процессора.

При использовании PAE адресный путь 32-разрядного процессора превышает 32 разряда.

person stark    schedule 25.02.2013

Это неверно, что 32-разрядный процессор может адресовать только 4 ГБ оперативной памяти, например, с помощью PAE. может адресовать до 36-битного адресного пространства.

В основном общее правило такое же, оно в основном зависит от логики системной платы и поддержки процессором максимального размера адреса (размера адресного регистра).

person Petr Abdulin    schedule 25.02.2013