HP Сатурн


Семейство 4 -разрядных ( datapath ) микропроцессоров Saturn было разработано компанией Hewlett-Packard в 1980-х годах сначала для карманного компьютера HP-71B , а затем для различных калькуляторов HP (начиная с HP-18C ). Он пришел на смену семейству процессоров Nut , использовавшихся в более ранних калькуляторах. Оригинальный чип Saturn был впервые использован в портативном программируемом компьютере HP-71B на BASIC , представленном в 1984 году. Более поздние модели семейства использовались в популярной серии HP 48 .калькуляторов. HP48SX и HP48S были последними моделями, в которых использовались оригинальные процессоры Saturn производства HP. В более поздних моделях калькуляторов использовались процессоры Saturn производства NEC. В серии HP 49 изначально также использовался ЦП Saturn, пока фабрика NEC [nb 1] не смогла больше производить процессор по техническим причинам в 2003 г. Поэтому, начиная с модели HP 49g+ в 2003 г., калькуляторы перешли на Samsung S3C2410. процессор с ядром ARM920T (часть архитектуры ARMv4T), который запускал эмулятор аппаратного обеспечения Saturn в программном обеспечении. В 2000 году HP 39G и HP 40Gбыли последними калькуляторами, представленными на основе фактического оборудования Saturn, изготовленного NEC. Последними калькуляторами на базе эмулятора Saturn были HP 39gs , HP 40gs и HP 50g 2006 года, а также ревизия hp 48gII 2007 года . HP 50g, последний калькулятор, использующий этот эмулятор, был снят с производства в 2015 году, когда Samsung прекратила производство процессора ARM, на котором он был основан. [1] [2] [3]

Аппаратное обеспечение Saturn представляет собой последовательный дизайн с полубайтами [4] , в отличие от его предшественника Nut , который был бит-последовательным . [5] Внутри ЦП Saturn имеет четыре 4-битные шины данных, которые обеспечивают почти 1 такт на производительность полубайта, при этом одна или две шины действуют как источник, а одна или две — как адресаты. [4] Наименьшее адресуемое слово — это 4-битный полубайт , который может содержать один двоично-кодированный десятичный разряд.(BCD) цифра. Любая единица данных в регистрах больше полубайта, в которой конец упомянутой единицы данных приходится на границу полубайта, а начало упомянутой единицы данных начинается с нулевой полубайта (а также в некоторых случаях, когда начальная позиция упомянутой единицы данных приходится на граница полубайта с определенными полями регистра, например, «M» или «X»), которая может быть до 64 бит, может работать как единое целое, но ЦП Saturn выполняет операцию последовательно внутренне над полубайтом. -кусковая основа. [4]

Архитектура Saturn имеет 64-битную ширину слова данных и 20-битную ширину адреса, при этом адресация памяти осуществляется с 4-битной ( полубайтной ) степенью детализации. Инструкции Saturn ALU поддерживают переменную ширину данных, оперируя от одного до 16 полубайтов слова. Основные регистры ( GPR ) вместе с временными регистрами имеют ширину 64 бита, а регистры адреса имеют ширину всего 20 бит. Первоначальные микросхемы ЦП Saturn обеспечивали четырехбитную внешнюю шину данных, но более поздние SoC на базе Saturn включали преобразование шины микросхемы в 8-битную внешнюю шину данных и 19-битную внешнюю адресную шину.