Правильная ссылка на эту страницу
http://az-design.ru/Support/HardWare/Intel/D19841119Elc038.shtml

Повышение надежности ЭВМ благодаря хранению средств программного обеспечения в ПЗУ

УДК 681.3-192

Томас М. Диль (Thomas M. Dille)
Фирма Intel Corp. (Санта-Клара, шт.Калфорния)

Джон Катоуски (John Katausky)
Фирма Intel Corp. (Санта-Клара, шт.Калфорния)

Кэтрин С. Норрис (Kathryn S. Norris)
Фирма Intel Corp. (Санта-Клара, шт.Калфорния)

Курт Робинсон (Kurt Robinson)
Фирма Intel Corp. (Санта-Клара, шт.Калфорния)

Thomas M. Dille, John Katausky, Kathryn S. Norris, Kurt Robinson. ROM software improves system reliability, No.31, pp.61—66.

Хранение средств программного обеспечения в постоянной памяти позволяет добиться более эффективного взаимодействия программ и аппаратуры ЭВМ.

Пользователям вычислительных машин требуются все более надежные системы со все более широкими функциональными возможностями — и, учитывая это, разработчики машин идут сейчас по пути интеграции сложных пакетов программных средств, хранящихся в постоянных запоминающих устройствах (ПЗУ), и микропроцессоров. В машинах с наиболее высокой степенью комплексирования аппаратуры и программ разработчики начинают применять так называемые кремниевые программные средства — законченные пакеты программ, размещаемые в постоянной памяти, что позволяет достичь показателей надежности, характерных в обычных случаях только для аппаратных схем, и в то же время сохранить гибкость, присущую традиционным системным программам. Чтобы добиться подобного сочетания преимуществ, разработчикам систем приходится тщательно выбирать специальные методы проектирования программ и комбинировать их с апробированными аппаратными схемами.

Последние достижения технологии изготовления центральных процессоров и устройств памяти предоставляют инженерам широкие возможности выбора средств для построения сложных машин при относительно небольших затратах. Например, разработчики систем могут применить однокристальный микропроцессор и насыщенные полупроводниковые микросхемы памяти в сочетании с дисковыми накопителями большой емкости и благодаря этому создавать настольные машины, которые по своей производительности не уступают мини-компьютерам, а па уровню цен соответствуют персональным ЭВМ. В машинах подобного типа дисковые накопители становятся центральной памятью для хранения системных и прикладных программ, а также данных пользователя.

С другой стороны, довольно часто дисковые накопители являются не самым подходящим видом памяти; в некоторых случаях например в компьютерах, которые работают в тяжелых окружающих условиях, или в переносных компьютерах малых габаритов, их вообще нельзя применять. Во многих системах встроенный микропроцессор является лишь небольшой составной частью общего изделия — например, автомобиля для бытовой электромашины, — причем дисковая память не входит в состав ресурсов такого микропроцессора. В результате разработчики (либо потому что они не могут использовать дисковую память, либо потому что просто предпочитают не делать этого) начинают ориентироваться на кремниевые программные средства, т.е. записывать системные программы в постоянную память, с тем чтобы центральный процессор мог эффективно взаимодействовать с ними.

Кремниевые программные средства

Разработчики могут применять самые различные виды кремниевых программных средств, от простых микросхем постоянной памяти, пассивно хранящих программы, до сложных СБИС процессоров, содержащих большую память на кристалле и активно взаимодействующих с программными процессами (см. таблицу). Кроме того, между этими крайними вариантами находится целый ряд микросистем, в которых размещаемые на кристалле программные средства сочетаются с некоторыми ограниченными специализированными аппаратными средствами для реализации конкретных прикладных функций.

Виды кремниевых программных средств

Вид

Описание

ППЗУ

ЦП загружает системную память из ППЗУ (твердотельного диска)

ППЗУ

ЦП выполняет непосредственно программу, хранящуюся в ППЗУ

ППЗУ с дополнительными аппаратными средствами на кристалле

ЦП выполняет непосредственно код, хранящийся в ППЗУ, и использует аппаратные средства его кристалла, реализующие дополнительные функции

СБИС-процессор (с памятью на кристалле)

Аппаратные средства реализуют программные алгоритмы

Хотя четких границ между различными категориями зачастую провести нельзя, как правило, кремниевые программные средства — это микросхемы с большими ПЗУ на кристалле, содержащими набор программно реализованных четко определенных процедур. В настоящее время выпускаются такие кремниевые программные средства, как микросхемы с полным Бейсик-интерпретатором, универсальной операционной системой (СР/М-86) или даже ядром операционной системы реального времени (RMX-86).

Такие кремниевые программные средства, как микросхема 80150 CP/M-86 и 80130 RMX фирмы Intel в дополнение к собственно программам, хранящимся в постоянной памяти на кристалле, содержат специализированные аппаратные средства, способствующие повышению эффективности работы программ при выполнении конкретных функций (рис.1). Например, таймеры, входящие в состав приборов 80130 и 80150, заменяют программные счетчики, которые обычно применяются в системных программах для выполнения различных операций реального времени.

В кремниевых программных компонентах системные программы хранятся в постоянной памяти большой емкости. Микросхемы 80150 и 80130 содержат таймеры, инте
Рис.1. В кремниевых программных компонентах системные программы хранятся в постоянной памяти большой емкости. Микросхемы 80150 и 80130 содержат таймеры, интерфейсы шины и контроллер прерываний, что позволяет им эффективно выполнять требования хранящихся в них программ — операционных систем CP/M-86 и RMX-86.

И все же кремниевые программные средства независимо от их физических характеристик зачастую более целесообразно оценивать с точки зрения тех преимуществ и ограничений, которые дает системе их применение. Одним из главных преимуществ кремниевых программных средств является то, что они обеспечивают более высокую надежность системы, поскольку центральному процессору не приходится «полагаться» исключительно на энергозависимую системную память или на дисковые накопители, где хранятся программы. В результате, если даже система остановится во время работы программ из-за отказа по питанию, центральный процессор после перезапуска сможет всегда обратиться к копии системных программ, надежно хранящихся в постоянной памяти.

Кремниевые программные средства обеспечивают не только повышение надежности систем в целом, но и могут содержать набор готовых апробированных процедур и служебных программ для различных приложений. Благодаря этому разработчики систем могут сосредоточивать усилия на создании новых прикладных модулей, а не тратить время на повторное проектирование базового набора утилит, необходимых для построения прикладной системы. Далее, кремниевые программные средства выполняют функцию стабильного интерфейса между прикладной системой и меняющимися аппаратными средствами и тем самым помогают разработчикам быстро переносить прикладные программы на микропроцессоры новых поколений. Например, прикладные программы реального времени, окружающие ядро операционной системы реального времени RMX (реализованные в микросхеме 80130 RMX), можно легко переносить на различные микропроцессоры фирмы Intel, такие как 8086/8088 или 80186/80188.

Эта функция интерфейса, которую несут кремниевые программные средства, играет особенно важную роль при создании специализированных систем с встроенными микрокомпьютерами, где зачастую одна микросхема работает с минимальным набором связанных с ней аппаратных средств. Инженеры-разработчики получают готовый интерфейс пользователя в кремниевых программных средствах, благодаря чему им не приходится думать о целом наборе микросхем и они имеют возможность гораздо быстрее приступить к реализации целевой системы. Так, поскольку микроконтроллер 8052AH-Basic построен на базе языка Бейсик, языка интерпретатор-ного типа, для инженеров-разработчиков он представляет собой законченную подсистему проектирования и выполнения программ.

Микроконтроллер 8052АН не просто содержит на кристалле обычный Бейсик-интерпретатор; дополнительным преимуществом этого микроконтроллера с точки зрения применения в системах является то, что в нем предусмотрено сочетание специализированных аппаратных средств и программных команд языка Бейсик, обеспечивающее эффективное выполнение операций в реальном времени. Одним из самых критических ресурсов в системе реального времени является время — и микроконтроллер 8052АН позволяет эффективно использовать этот ресурс благодаря размещенным на кристалле часам реального времени и набору команд языка Бейсик.

Программисты могут запускать или останавливать часы реального времени при помощи пары программных операторов языка Бейсик — CLOCK1 и CLOCK0 соответственно. Когда часы работают, для них можно также установить новое значение времени — например, x — при помощи стандартного оператора присвоения языка Бейсик типа TIME-x или можно вывести значение при помощи других операторов, например оператора печати PRINT TIME.

Даже наличие подобных дополнительных возможностей для работы в реальном времени не дало бы больших выгод, если бы в микроконтроллере не было предусмотрено режимов работы с асинхронными и случайными по природе событиями. Для прикладного оборудования обслуживание может требоваться каждую секунду, хотя встроенная машина, предназначенная для управления этим прикладным оборудованием, должна одновременно выполнять и некоторые другие задачи. В этом случае программист может воспользоваться другой специальной инструкцией микроконтроллера 8052АН — оператором ONTIME. Например, через 1 с после выполнения оператора ONTIME TIME+1.0, 1000 микроконтроллер 8052АН вызовет подпрограмму с начальным адресом 1000 независимо от своего текущего режима. Программист может обеспечить выполнение микроконтроллером 8052АН обслуживающей подпрограммы каждую секунду, если включит тот же самый оператор ONTIME в конце этой подпрограммы.

Асинхронная обработка

Подобный вид асинхронной обработки внешных событий, или обработка прерываний, наряду с контролем времени является одной из самых важных возможностей для систем реального времени. Специализированные средства программного обеспечения, например операционная система RMX, предусматривают ряд операторов для обработки прерываний — и в микросхеме 80130 имеются соответствующие утилиты для этой цели. С другой стороны, микроконтроллер 8052AH-Basic в дополнение к набору команд,, существующих в обычном варианте языка Бейсик, предусматривает оператор, который позволяет данному микроконтроллеру реагировать на внешние события. Этот оператор ONEX1 действует приблизительно так же, как оператор ONTIME; например, оператор ONEX1 2000 вызывает переход микроконтроллера 8052AH на выполнение подпрограммы с начальным адресом 2000, когда от внешнего устройства на входной контакт INT1 микроконтроллера 8052AH поступает сигнал низкого уровня.

Все компоненты, содержащие кремниевые программные средства — даже микроконтроллер, на кристалле которого размещаются программные средства и аппаратные средства для контроля времени и обработки прерываний, — должны работать в рамках более крупного комплекса. Например, для встроенных машин, выполненных на базе набора стандартных микросхем кремниевого программного обеспечения, требуются некоторые внешние программируемые пользователем постоянные запоминающие устройства, где хранились бы прикладные программы, взаимодействующие с утилитами кремниевого программного обеспечения, а также некоторые внешние оперативные запоминающие устройства, реализующие функции рабочей памяти. Благодаря расширениям языка Бейсик, предусмотренным в микроконтроллере 8052AH, инженеры могут успешно координировать взаимодействие между подобной внешней памятью и самим микроконтроллером (рис.2).

Вместе с внешним оперативным запоминающим устройством и электрически стираемым программируемым постоянным запоминающим устройством микроконтроллер 805
Рис.2. Вместе с внешним оперативным запоминающим устройством и электрически стираемым программируемым постоянным запоминающим устройством микроконтроллер 8052AH-Basic представляет функционально законченную микросистему. По пультовым командам осуществляется» выбор ОЗУ или ПЗУ и пересылка программ в ОЗУ или запись их в ЭППЗУ.

Язык, подобный Бейсику, является, по-видимому, наиболее подходящим для реализации в кремнии, поскольку это популярный интерпретатор, который требует относительно небольшой емкости памяти. Действительно, поскольку и на этапе проектирования, и в готовой производственной системе применяются одни и те же утилиты, их реализация в кремнии может оказаться удобной и выгодной как разработчикам, так и пользователям. Язык неинтерпретаторного типа, например Фортран, по-видимому, менее целесообразно реализовывать в кремнии, поскольку полный Фортран-компилятор — это большая системная программа, которую будут использовать преимущественно на этапе проектирования Фортран-программ, а не на этапе их выполнения. Поскольку пользователи будут гораздо чаще выполнять Фортран-программы, чем компилировать их, кремниевый компилятор не должен дать особых выгод.

Что же касается операционных систем, то они представляют собой программные средства, часто требующиеся как пользователям, так и их прикладным программам. В то же время к кремниевым программным компонентам операционных систем — либо частей операционных систем — предъявляются совершенно другие требования, нежели к кремниевому программному обеспечению встроенной машины. Например, в отличие от специализированной системы кремниевый вариант универсального пакета программ должен предусматривать возможность работы в самых различных аппаратных конфигурациях, которые инженеры могут строить на базе кремниевых компонентов, а также взаимодействие со специализированными пакетами программ, которые разработчики могут использовать вместо стандартных программ, реализованных в кремнии.

Гибкие кремниевые программные средства

В принципе присущая кремниевым программным средствам стабильность обеспечивает высокую надежность и неизменный интерфейс при работе с программами прикладных систем. В то же время данным компонентам свойственна гибкость, необходимая для эффективного взаимодействия с другими компонентами системы. Например, одни и те же кремниевые программные компоненты, такие как 80130 и 80150, инженеры могут с успехом использовать в различном аппаратном оборудовании независимо от размера памяти или типов устройств ввода-вывода целевой системы. Аналогично эти микросхемы дают разработчикам возможность в дополнение к их набору утилит вводить свои собственные специализированные программы.

В большинстве кремниевых программных средств, включая микросхемы 80130 и 80150, подобная гибкость обеспечивается благодаря таб- лицам параметров, хранящимся в самой микросхеме и в системном ОЗУ (рис.3). На этапе инициализации системные программы на кристалле формируют таблицу-конфигуратор в ОЗУ, где хранятся переменные, связанные с конфигурацией системы; здесь указывается, скажем, емкость имеющейся памяти или типы устройств ввода-вывода. В связи с этим вместо использования параметра, постоянно хранящегося в ПЗУ в качестве, например, размера входного буфера, подпрограммы кремниевого программного обеспечения используют некоторое стандартное значение, загружаемое в таблицу-конфигуратор в процессе инициализации. В результате программисты получают возможность изменять это значение при помощи собственных программ, если решат, что для системы нужны другие размеры буфера.

Прикладные программы содержат ссылки на указатели, которые хранятся в оперативной памяти, и в свою очередь адресуют к указателям кремниевых программны
Рис.3. Прикладные программы содержат ссылки на указатели, которые хранятся в оперативной памяти, и в свою очередь адресуют к указателям кремниевых программных средств. Благодаря этому пользователи могут заменять кремниевые подпрограммы собственными программными кодами и быть уверенными в том, что их прикладные системы сохранят совместимость с новыми вариантами кремниевых программных средств.

Подобно тому как таблица-конфигуратор позволяет инженерам адаптировать кремниевые программные средства для работы с различным аппаратным оборудованием, табличный метод дает им возможность расширять или изменять набор стандартных программных услуг. Во время инциализации системы кремниевые подпрограммы обеспечивают не только установку системных параметров в ОЗУ, но и формирование таблицы ссылок для программы ПЗУ в системном ОЗУ. Благодаря этому прикладные программы будут обращаться к подпрограммам, хранящимся в ПЗУ, не по абсолютным адресам, а путем выдачи запросов на обслуживание через упомянутую таблицу, т.е. косвенно. Таким образом разработчики системы получают возможность замены программ, хранящихся в ПЗУ, собственными специализированными программами, помещая, например, адрес собственной программы в соответствующую ячейку таблицы адресов, находящейся в системном ОЗУ.

Хотя описанный подход вводит дополнительный уровень косвенной адресации при вызовах служебных подпрограмм, он лишь в минимальной степени снижает общую производительность системы. Для большинства систем время, затрачиваемое на фактический вызов служебных подпрограмм, пренебрежимо мало по сравнению с временем, обычно требуемым для выполнения вычислительных алгоритмов прикладного характера.

Подобный способ косвенной адресации не только гарантирует, что кремниевые программные средства будут оставаться независимыми от конкретной аппаратной конфигурации или специального программного кода, но и дает фирме — изготовителю кремниевых программных компонентов возможность гарантировать, что прикладные программы будут сохранять совместимость с новыми версиями программного обеспечения в кремнии. Прикладные программы обращаются к таблице-конфигуратору, хранящейся в ОЗУ и в свою очередь содержащей ссылки на таблицу, хранящуюся на кристалле, а не на конкретные адреса ПЗУ.

Если даже в новом варианте кремниевого программного компонента изменится конкретный начальный адрес некоторой подпрограммы ПЗУ, указатель этой подпрограммы (представленный как смещение в таблице ПЗУ) остается на постоянном месте в таблице указателей ПЗУ. Следовательно, прикладные программы могут обращаться к кремниевой подпрограмме косвенным образом при помощи этого указателя, который будет оставаться на постоянном месте в таблице независимо от того, изменится адрес соответствующей подпрограммы ПЗУ в новом варианте кремниевого программного компонента или нет.

Модули и карты памяти

Изготовители кремниевых программных компонентов применяют таблицы косвенных ссылок для того, чтобы обеспечить работоспособность программ, хранящихся в ПЗУ, несмотря на обновление и изменения версий. Кроме того, чтобы создать набор программных компонентов, который мог бы удовлетворять требованиям самых разнообразных систем, изготовители должны обеспечить работоспособность своих программных кодов при размещении в любом месте адресного пространства системы. Однако для достижения подобной позиционной независимости,, как правило, используются стандартные инструменты системы проектирования программ, в том числе ассемблеры, компиляторы и редакторы связей, которые позволяют получать перемещаемые коды.

Разработчики должны не только обеспечивать возможность размещения программного кода в любом месте карты памяти системы, но и создавать модули кремниевых программных средств таким образом, чтобы их можно было выполнять при хранении программного кода в ПЗУ. Говоря более конкретно, данные и коды программных модулей должны явно разделяться, а это иногда требует реорганизации существующих пакетов программ.

Стандартная дисковая операционная система CP/M-86 предусматривает объединение инициализируемых и неинициализируемых переменных, в одной длинной структуре, которая содержит все модули данных и кода (рис.4,а). Процессор пультовых команд (ППК) системы производит обработку командных строк и выполняет собственные встроенные утилиты, в то время как базовая дисковая операционная система (БДОС) управляет доступом к дисковой памяти по логическим адресам, а базовая система ввода-вывода (БСВВ) предоставляет информацию, связанную с конфигурацией, а также выполняет низкоуровневые функции ввода-вывода. Чтобы реализовать данную систему в кремнии, разработчики микросхемы 80150 выделили программные коды и, константы для этих трех частей операционной системы CP/M-86 и собрали их в единую структуру, для размещения которой оказалось достаточно приблизительно 16-кбайт постоянной памяти (рис.4,б). При начальном вводе системы подпрограмма инициализации,, входящая в состав программных средств микросхемы 80150, формирует свои таблицы конфигурации и адресов и помещает переменные операционной системы CP/M-86 в системное ОЗУ.

Если в исходной дисковой операционной системе CP/M-86 коды программ и данные могут чередоваться (а), то в кремниевой реализации этой системы, микросхе
Рис.4. Если в исходной дисковой операционной системе CP/M-86 коды программ и данные могут чередоваться (а), то в кремниевой реализации этой системы, микросхеме 80150, коды от данных отделены (б). Программные коды хранятся в 16-кбайт ПЗУ микросхемы 80150, а системные переменные записываются в зарезервированную область системного ОЗУ.

По-видимому, самое главное, что необходимо для успешного создания набора кремниевых программных компонентов, — это определить, какие именно программы реализовать в кремнии. Если речь идет о компонентах, в которых должны воплотиться существующие программные средства, скажем интерпретатор языка Бейсик или операционная система CP/M-86, то здесь у разработчика уже есть ясная цель. Однако в случае систем других типов, например операционной системы реального времени, требуется более тщательная оценка того, где применение кремниевых компонентов даст оптимальные результаты.

Так, в случае операционной системы реального времени RMX фирмы Intel инженеры могут использовать широкий диапазон возможностей, от управления файлами до поддержки мультипроцессорного режима, — возможностей, которые не для каждой конкретной системы реального времени обязательны. В связи с этим кремниевый программный компонент 80130 содержит только базовые служебные средства (ядро операционной системы), необходимые для каждого приложения реального времени. В результате встроенная машина, выполненная на базе RMX, может использовать предусмотренные в микросхеме 80130 вспомогательные средства организации многозадачного режима, взаимодействия между задачами, обработки прерываний и исключительных ситуаций.

Микросхема 80130 в сочетании с микропроцессором 8086/8088 или 80186/80188 образует процессор операционной системы (рис.5), который предусматривает эффективное использование более широких возможностей операционной системы RMX-86. И действительно, поскольку микросхема 80130 (а также 80150) может контролировать линию системного синхросигнала и три линии состояния, идущие от микропроцессора, она может сама декодировать состояние процессора и автоматически реагировать на соответствующие операции шины. Благодаря этому и микропроцессор, и микросхема могут работать с высокой частотой (8 МГц) без периодов ожидания, что имеет явное преимущество по сравнению с менее быстродействующими кремниевыми программными средствами, реализуемыми в стираемых программируемых ПЗУ.

Микросхема 80130, ядро операционной системы реального времени RMX, может взаимодействовать с такими микропроцессорами, как 8086/8088, а также 80186/80
Рис.5. Микросхема 80130, ядро операционной системы реального времени RMX, может взаимодействовать с такими микропроцессорами, как 8086/8088, а также 80186/80188. Таким образом строится интегральный процессор операционной системы, который может выполнять программы, хранящиеся в памяти 80130, с частотой 8 МГц, причем без периодов ожидания.

Дополнительное ОЗУ

Микросхема 80130, как и 80150, требует наличия внекристального ОЗУ для использования в качестве собственной рабочей памяти. Этому процессору операционной системы для работы необходимо ОЗУ емкостью минимум 1 кбайт, где хранятся векторы прерывания, приблизительно 1,5 кбайт для размещения стека и различных переменных и данных системы, а также около 300 байт для стека каждой прикладной задачи. Если не считать этой требуемой оперативной памяти (и еще приблизительно 1,5 кбайт информации для инициализации), программы процессора 80130 могут размещаться на любой 16-байт границе адресного пространства микропроцессоров (кроме самой верхней или самой нижней границы). Код инициализации служит для формирования таблиц конфигурации и указателей в процессе подготовки системы к работе. Хотя во многих типах систем с кремниевыми программными средствами этап инициализации, на котором формируются важные таблицы системных параметров и ссылочных адресов, необходим, в некоторых менее сложных случаях применения программного обеспечения в кремнии специальный этап инициализации необязателен. В оборудовании с минимальными требованиями к емкости памяти оптимальным может оказаться применение ЭППЗУ с высокой плотностью упаковки. Например, система может содержать такие микросхемы ЭППЗУ для хранения конкретных прикладных программ, например программ обработки многопозиционных оперативных таблиц. Когда пользователю нужно будет выполнить эту прикладную программу, центральный процессор сможет загрузить ее в свою системную память из ЭППЗУ точно так же, как он загрузил бы ее из дисковой памяти в более крупной машине.

Кроме того, для машин, в которых ЭППЗУ выполняет функцию твердотельного дискового накопителя, инженеры-программисты могут создавать собственные кремниевые программные средства, причем центральный процессор будет непосредственно выполнять программу, хранящуюся в электрически программируемых ПЗУ большой емкости. Возможность непосредственного выполнения программы из ЭППЗУ существенно упрощает интерфейс пользователя, поскольку программы выполняются быстро и бесшумно при нажатии соответствующей функциональной клавиши. Использование ЭППЗУ в качестве программной памяти является стандартным для таких ответственных прикладных систем, как индивидуальные прикроватные мониторы или центральные пульты управления в больницах, где требуется немедленное выполнение прикладных программ, без предварительного ввода и загрузки из дисковой памяти.

Системы, построенные на базе ЭППЗУ, характеризуются не только повышенной надежностью, но и в определенной мере обеспечивают защиту программ фирмы-поставщика. Для программ, хранящихся в ЭППЗУ, существует в принципе меньшая опасность несанкционированного доступа со стороны случайного злоумышленника, который хотел бы скопировать программу, но зачастую не имеет оборудования, необходимого для чтения программ в подобном варианте. Кроме того, поставщики могут предусмотреть и некоторые меры активной защиты против несанкционированного доступа. Например, простая схема управления может определять тип операции обращения к памяти, задаваемый микропроцессором при помощи своих линий состояния, и разрешать работу микросхемы только в случае, если процессор находится в режиме выполнения инструкций, а не в режиме чтения данных. Тем самым предотвращается копирование кода прикладной программы путем считывания из системы так, как если бы это были обычные данные ОЗУ.

Главное требование, которое необходимо выдержать для использования стандартных ЭППЗУ в качестве стандартных кремниевых компонентов, предусматривает, что код остается позиционно-независимым (перемещаемым), независимым от конфигурации и допускающим обновления, подобно тому как это сделано при разработке микросхем 8052AH-Basic, 80150 или 80130. Инженеры-программисты, разрабатывающие свои собственные программы, специфичные для конкретного приложения и предназначенные для записи в ЭППЗУ, легко могут удовлетворить это требование, используя описанные выше таблицы конфигурации и косвенных ссылок.

Кроме того, подобные механизмы дают им возможность производить исправление обнаруженных ошибок, не меняя содержания всего ППЗУ. Так, если в какой-либо из существующих подпрограмм ЭППЗУ обнаружена ошибка, они могут просто поместить исправленную версию этой подпрограммы в ОЗУ и обновить таблицу косвенных ссылок, с тем чтобы обращение производилось к правильной версии подпрограммы ОЗУ, а не к ошибочной версии, хранящейся в ЭППЗУ. Впоследствии, когда программисты сочтут, что им удалось выявить все ошибки, они могут перепрограммировать ЭППЗУ, включив в него последние версии программ, и изменить таблицу-конфигуратор, чтобы отразить это обновление.

Выходные данные:

Журнал "Электроника" том 57, No.23 (704), 1984г - пер. с англ. М.: Мир, 1984, стр.46

ElectronicsWeek Vol.57 No.31 November 12, 1984 A McGraw-Hill Publication

ElectronicsWeek Vol.57 No.32 November 19, 1984 A McGraw-Hill Publication

Thomas M. Dille, John Katausky, Kathryn S. Norris, Kurt Robinson. ROM software improves system reliability, No.31, pp.61—66.

Раздел: МЕТОДЫ, СХЕМЫ, АППАРАТУРА

Тема:     Программное обеспечение





Дата последнего изменения:
Thursday, 21-Aug-2014 09:10:44 MSK


Постоянный адрес статьи:
http://az-design.ru/Support/HardWare/Intel/D19841119Elc038.shtml