Карманные ПК: введение в тему
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: реферат на тему функции, понятие культуры
| Добавил(а) на сайт: Патрушев.
Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата
ARM: генезис
В 1985 г. английская компания Acorn Computer Group приступила к созданию RISC-процессора. Эта фирма занималась разработкой персональных компьютеров, которые пользовались популярностью в Англии. Машины были весьма интересные: уже тогда они имели графический интерфейс, многозадачный режим работы, весьма стройную архитектуру. Необходимость в собственном ЦП была связана с требованиями роста и развития, компании было необходимо конкурировать как с многочисленными ПК других изготовителей, так и с IBM PC (в Англии его победа была не столь быстрой и триумфальной, как в США).
До этого момента Acorn разрабатывала и делала все самостоятельно, от процессоров и системных плат до ОС и прикладного ПО. Но тут руководство приняло решение отойти от привычной практики, и Acorn направила в Intel запрос на лицензирование ядра ЦП i80286 — по тем временам новинки. Однако Intel не согласилась:
«Мы продаем процессоры, а не ядра». Acorn была вынуждена искать другие решения. В то время выбор огранивался кристаллами National 16032 и Motorola 68000, причем оба ЦП разработчики забраковали. Они плохо вписывались в архитектуру, были сложны, обеспечивали плохое время реакции на прерывания и т. п. Последнее стало основной причиной отказа от них, поскольку для Acorn скорость обработки прерываний была одним из критичных параметров, определявших «отзывчивость» системы. В итоге принимается решение самостоятельно разрабатывать новый ЦП.
Ресурсы скромной фирмы были несравнимы с возможностями лидеров полупроводниковой индустрии. И решение о реализации системы на базе архитектуры RISC, в то время набиравшей популярность, но еще относительно новой, в значительной степени было обусловлено именно недостатком ресурсов. RISC-процессор был технологически проще, позволял добиться значительной вычислительной мощности, хорошего времени реакции на прерывания, а значит, и времени отклика системы и т. д. Началась разработка (хотя даже сами разработчики считали свое занятие сумасшествием), в октябре 1983 г. был готов первый прототип и ряд микросхем сопровождения (видеоконтроллер, контроллер ввода-вывода, память и пр.). ЦП получил название ARM (от Acorn RISC Machine), имел тактовую частоту 8 МГц и более высокое быстродействие, чем тогдашний 80286. Правда, начальная версия в производство не пошла, в реальных системах использовался ARM 2.
В течение нескольких лет дела Acorn и ARM шли довольно вяло, под натиском х86 легендарные компьютеры «восьмибитной» эры один за другим сдавали позиции. Acorn держался долго, но... После продолжительного периода неудач и финансовых неурядиц Acorn RISC Machine была реорганизована в ARM Limited, которая оказалась более успешной, чем ее прародитель. ARM начала лицензировать технологические решения, в том числе ядро ЦП. И именно эта стратегия принесла ей успех. Сегодня ARM Ltd. — один из крупнейших «бесфабричных» разработчиков микропроцессорных архитектур. Лицензии на ядро ARM сейчас имеет практически любая более или менее крупная компания и даже некоторые конкуренты ARM (в том числе и Intel).
ARM: эволюция
В 1991 г. был создан ARM6 (вариантов ARM4 и ARM5 не было по маркетинговым соображениям). ARM 610 стал основой знаменитого Apple Newton MessagePad (до того Apple подумывала также о ЦП AT&T Hobbit). Этот ЦП обеспечивал достаточное быстродействие и был немного сложнее предшественников (35 тыс. транзисторов против 30 тыс. в ARM3), что позволяло удешевить производство на полупроводниковых заводах того времени.
В то же время появилась принятая и сегодня схема обозначений: ARM6 — собственно ядро, ARM60 — целостный ЦП, ARM610 — более развитые модификации ЦП с кэш-памятью, остальные цифры в номере означают наличие той или иной периферии, буквы — те или иные расширения системы команд.
Сегодня ARM предлагает широкую номенклатуру микропроцессорных ядер, архитектурных расширений, инструментальных средств и т. п. Если подходить к вопросу строго, то нужно заметить, что «процессора ARM» как такового не существует. ARM — это название архитектуры. Компания-разработчик продает ядро ЦП, оформленное либо в виде программы на языке Verilog (синтезируемые ядра), либо принципиальной схемы, либо в виде топологической макроячейки. Кроме ЦП предлагается целый ряд других решений, в частности библиотека макроячеек, реализующих стандартную периферию (PowerCell), а также разнообразные дополнительные технологии.
Модельный ряд ядер ARM развивался весьма интенсивно. В номенклатуре ядер ARM место младшего занимает семейство ARM7 Thumb, оно обеспечивает производительность около 130 MIPS, очень компактно (при проектных нормах 180 нм модификация ARM7TDMI занимает всего 0,59 мм2), удельное энергопотребление 0,25 мВт/МГц. Существуют также синтезируемые ядра ARM7TDMI-S и ARM7EJ-S, отличающиеся наличием в системе команд DSP-инструкций и средств акселерации работы виртуальной машины Java (Jazelle). ARM720T оснащается полнофункциональным модулем управления памятью (MMU, размер страницы 4-64 Кбайт), а ARM740T — упрощенным (MPU, без режима трансляции адресов). Оба ЦП имеют кэш-память (8 Кбайт).
В феврале 1996 г. DEC в сотрудничестве с ARM разработала первый ЦП серии StrongARM (SA-110) с пятиступенчатым конвейером, пятипортовым файлом регистров, блоком умножения и т. д., его энергопотребление примерно 1 Вт при тактовой частоте до 233 МГц.
ARM8 — в известной мере переходная модель, разработанная «по следам» совместного с DEC проекта StrongARM, довольно быстро сменившаяся ARM9 (с гарвардской шиной, буфером записи, гибкой схемой защиты памяти). Серия ARM9 Thumb создавалась для портативных устройств со значительными требованиями к быстродействию, производительность ядра достигает 220 MIPS, удельное потребление 0,3 мВт/МГц. В серии имеется несколько модификаций (в том числе ARM920T, ARM922T и ARM940T) с раздельными кэшами команд и данных (16/16, 8/8 и 4/4 Кбайт соответственно). Модификации ARM920T и ARM922T оснащаются MMU. В этой же серии существует семейство ядер ARM9E-S Thumb с DSP-расширениями системы команд и дополнительными средствами, повышающими быстродействие при обработке медиа-кода (в частности, умножитель-накопитель, в ЦП может быть предусмотрен математический сопроцессор VFP9-S, обеспечивающий выполнение операции с плавающей точкой над данными двойной точности). Емкость кэша от 1 Мбайт в ARM946E-S до 4-128 Кбайт в ARM926EJ-S.
Серия ARM10 Thumb ориентирована на 110-нм технологический процесс. Быстродействие ЦП этой серии достигает 700 MIPS при сохранении удельного потребления ARM9. В ядре используются 64-разрядные шины адреса и данных, имеются модули управления памятью команд и данных, в ядро может быть включен математический сопроцессор и т. д.
ARM 11 привнес рост производительности (до 1200 Dhrystone MIPS), еще более мощные средства кодирования и декодирования с акцентом на операции, свойственные MPEG-4, возможность роста тактовых частот за пределы 1 ГГц, улучшенные возможности организации многоядерных конфигураций и т. д.
Кроме процессорных ядер, существует несколько версий самой архитектуры ARM. Об этом следует помнить, поскольку нумерация ядер и архитектур не совпадает (например, в наиболее мощном на сегодня ядре ARM11 реализована система команд ARMv6).
Самая старая из существующих сейчас архитектур — ARMv4, она используется, например, в популярных ЦП StrongARM. ARNv1 предполагает работу с 32-разрядными операндами в 32-разрядном адресном пространстве. ARMv4T — то же, но с добавлением набора инструкций Thumb (команды Thumb транслируются в их 32-разрядные аналоги). ARMv5 реализована в процессорах Intel XScale. Версия ARMv5TE стала первой, где реализованы DSP-расширения ARM, ARMv5TEJ — то же, но с добавлением команд акселерации Java (Jazelle). ARMv6 была серьезно доработана: появились средства работы с потоковыми данными (SIMD), Thumb-2 TrustZone. Архитектура ARMv7 ввела понятие «процессорных профилей»: «профиль А» определял требования к ЦП для полномасштабных ОС со сложной логикой работы с виртуальной памятью и прикладным ПО, «R» — для систем реального времени, «М» — для микроконтроллеров.
ARM inside
ARM — 32-разрядная, классическая load/store (в качестве операндов могут использоваться только загруженные в регистры процессора значения) RISC-архитектура. Она исключительно эффективна, обеспечивает высокое быстродействие и минимальные требования к питанию и при этом проста с точки зрения технологического процесса изготовления СБИС. В ранних моделях использовалась классическая архитектура фон Неймана (с общей памятью для данных и машинного кода), в современных моделях используется гарвардская архитектура (с раздельной памятью для кода и данных, как минимум на уровне кэша).
ЦП совместимы сверху-вниз, система команд довольно оригинальна, в частности все команды имеют одинаковую длину, выровнены по границе 32-разрядного слова, выполняются за один такт (за некоторыми исключениями). В классических ARM конвейер был короткий, всего три ступени, в современных вариантах доходит до восьми, а также реализуются средства суперконвейерной обработки. Кроме того, все команды условные для минимизации потерь при ветвлении (нередко для фрагментов кода выгоднее пропустить несколько команд, чем заниматься предсказанием ветвлений). Впрочем, в ряде модифицированных архитектур используются и блоки предсказания ветвлений (прежде всего это, конечно, Intel XScale). Имеются команды групповой пересылки, организации взаимодействия с сопроцессором и т. д. Менеджер памяти (MMU) в классической реализации также выполнен в виде отдельного модуля.
В ядре ARM имеется 16 видимых в пользовательском режиме 32-разрядных регистров (R0...R15, всего 31 регистр), счетчик команд (R15), регистр «связи» (R14), указатель стека программ (R13). Процессор может находиться в пяти режимах: привилегированном, пользовательском, прерывания, быстрого прерывания и исключения. При вызове обработчика быстрого прерывания стандартные регистры R8-R14 переименовываются (затеняются), при переходе из нользовательско-го режима в любой из системных переименовываются регистры R13 и R14. Предусматриваются механизмы быстрой обработки прерываний с оригинальной схемой «затенения» регистров (благодаря этому удается избежать такой «тяжелой» операции, как сохранение их содержимого в обработчике прерывания).
В процессорах ARM имеется ряд расширений системы команд, они присутствуют в соответствующим образом помеченных ядрах. Отметим, в частности, наличие специального 16-разрядного подмножества команд Thumb. Оно было разработано в связи с необходимостью повышения компактности кода. Как известно, программный код RISC-ЦП в среднем значительно объемнее, чем для CISC. Хотя ARM и здесь смотрится весьма достойно, тем не менее оставалась возможность оптимизировать этот параметр. Для этого было выбрано некое подмножество команд ЦП, которые были приведены к 16-разрядному виду путем удаления «избыточных» полей в операндах, адресации меньшего количества регистров и т. д. При таком подходе код становится компактнее на 25-35% (в зависимости от особенностей конкретного алгоритма), что важно при организации хранения программных модулей в условиях дефицита памяти. Процессор способен исполнять его с небольшими потерями в скорости, на лету транслируя команды в их 32-разрядные аналоги. Также имеются специальные средства для ускорения работы виртуальной машины Java (Jazelle), безопасности (Trust-Zone), SIMD.
Впрочем, обсуждение архитектуры ARM — это отдельная, весьма интересная тема, за более подробной информацией стоит обратиться к документации на ЦП (в частности, на Web-узле разработчика, www.arm.com).
На сегодня ARM стал стандартом де-факто в мире процессоров для сверхкомпактных устройств. Все три популярные сегодня платформы для КПК, смартфонов и коммуникаторов — Intel PCA (XScale), TI ОМАР/ 0МАР2 и Samsung S3C — основаны именно на ней. Рассмотрим их подробнее.
Intel PCA
По меткому выражению одного из корифеев компьютерной индустрии, «архитектура х86 есть торжество маркетинга над здравым смыслом». Эти ЦП тянут на себе ужасающий груз совместимости, а в жизни инженеров Intel (правда, в основном у технологов) в буквальном смысле есть место подвигу, когда приходится выпускать новые ЦП, сохраняя совместимость с разработками, созданными более двух десятилетий назад. Но в сегменте настольных и мобильных ПК, реализованных на традиционных технологиях, выхода нет — требования совместимости для ноутбуков звучат столь же значимо, как и для настольных ПК. Тем не менее в сегменте карманных компьютеров ситуация несколько иная.
Компания Intel — один из главных участников рынка в секторе ЦП для карманных ПК. Но именно «один из», здесь у нее есть сильные соперники, с которыми приходится бороться не только маркетинговыми, но и технологическими приемами.
В данный момент у Intel имеется три серии микросхем для карманных ПК (одна — для мобильных телефонов) и ряд дополнительных системных решений. История мобильных разработок Intel XScale, в общем, началась с покупки процессорного бизнеса компании Digital Equipment, создавшей микропроцессор StrongARM. Он несколько отличался от существовавших тогда реализаций. Главная задача, которую ставили перед собой разработчики этого ЦП, — создание быстродействующего ЦП с минимальными требованиями к питанию. Позднее, после покупки Intel микропроцессорного подразделения DEC, этот процессор выпускала компания Intel. Она довольно долго не обращала внимания на эту процессорную серию (во многом покупка была обусловлена возможностью разрешить ряд патентных коллизий, а вовсе не интересом к наработкам соперника; тем более что Intel на тот момент акцентировала внимание на RISC-ЦП других серий, таких, как i860 и i960).
Тем не менее Intel наладила производство StrongARM SA-1110 и разработала несколько его модификаций. ЦП (строго говоря, это была высокоинтегрирован-ная СБИС) StrongARM был основан на архитектуре ARMv4, имел трехступенчатый конвейер, 32-разрядную адресацию, аппаратную поддержку виртуальной памяти (двухуровневая таблица страниц), 32-Кбайт кэши команд и данных, 32-Кбайт буфер и был несовместим с режимом Thumb. StrongARM мог функционировать при частота^ 133, а позднее 206 МГц (до того нормой считалось 33—66 МГц).
Рекомендуем скачать другие рефераты по теме: реферат данные, сочинения по литературе.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата