Микропрограммный процессор

 

)))691111

Союз Соеетекнх

Соцналнстнческнх

Ресяубпнк пUe:aM е

ИЗОБРЕТЕН ИЯ

К ПАТЕНТУ (61) Дополнительный к патенту (22) Заявлено 13 12 73 (21) 1979797/18-24 (23) Приоритет — (32) 14.12 72 (51) М. Кл.

G 06 F 9/)6

G 06 F 13/06 а И С )7/00

Гювударстввииий квмвтвт ссср

IIo двяам извбрвтвиая и вткрмткя (31) 315155 (33) США

Опубликовано 05.10.79. Втоллетень фв 37 (53) УДК 681327.28 (088,8) Иата опубликования описания 05.10.79 (72} Авторы изобретения .

Иностр анцы

Джеймс Вудворс Копли и Ричард Кент Девис (США) Иностранная фирма

"Дженерал Электрик Компани" (GHA) (71) Заявитель (54) МИКРОПРОГРАММНЫЙ ПРОЦЕССОР

Изобретение относится к области вычислительной техники и предназначено для управления работой различных устройств обработки данных, в том числе для управления памятью вычислительньтх машин (ВМ) .

Известны микропрограммные процессоры, содержащие блок постоянной памяти для хранения необходимых микропрограмм, блок обработки данных и мультиплексоры (1) и (2).

Процессор (1) содержит последовательно расположенную микропрограмму, в результате чего ее можно вьпвлнить только через множество подпрограмм, а это требует либо большой ем.: кости блока постоянной памяти, либо введения 15 нескольких дополнительных блоков памяти для храненяя управляющих слов..

Процессор (2) содержит дополнительный логический блок с памятью, что позволяет нескольЯО ко уменьшить емкость. блока постоянной памяти, каждая подпрограмма которого может частично регулировать вьпюлнение нескольких команд, имеющих общие характеристики выполнения. 0g како наступает момент, когда новые команды уже не имеют общих характеристик, т.е. вьпюлняют различные функции в обработке данньп, что требует введения дополнительных логйческих блоков.

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

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

Целью изобретения является повышение надежности микропрограммного процессора.

691111

Поставленная цель достигается тем, что в прецложенный микропрограммный процессор введены блок переключения, счетчик и блок контроля, Выход счетчика соединен со входом второго блока постоянной памяти, а вход— с выходом блока переключения, первый вход которого соединен с выходом первого блока, постоянной памяти и с первым входом блока контроля, второй вход которого соединен с вы- 10 .ходом второго блока постоянной памяти и со вторым входом блока переключения. . На фиг. 1 приведена общая структурная схема микропрограммного процессора; на фиг.

2 — его развернутая структурная схема; на фиг.

3 — 5 — варианты распределения управляющей информации в различных блоках микропрограммного процессора.

Микропрограммный процессор содержит блок обработки данных 1, включающий блок оперативной памяти 2, первый блок постоянной памяти 3, мультиплексор 4, второй блок постоянной памяти 5, блок контроля б, блок переключения

7 и счетчик 8 (на чертежах информационные шины показаны сплошными линиями, а шины управления — пунктирными) .

Блок обработки данных 1 может представлять собой законченную ВМ, но может состоять и иэ регистра адреса, регистра-счетчика, арифметичес1сого регистра, блока вычислений и блока сйнхронизации. В этом случае регистр адреса принимает адрес команды иэ блока вычислений или из блока синхронизации и управляет блоком памяти 2. Регистр-счетчик считает количество сдвигов, выполняемых блоком 1, и может бьггь загружен либо из блока памяти 2, либо из блока синхронизации. Блок вычислений выполняет арифметические ойераций и передачи от регистра к регистру, а арифметический регистр перемещает ряд битов во время выполнения команд сдвига и временно хранит информацию блока памяти 2.

Формат командного слова в блоке памяти 2 показан на фиг, 3. Биты от А до Е являются входными для первого блока памяти 3, когда команда извлекается блоком 1. Биты от С до F определяют команду (сложение, вычитание и т.д.), Бит В используется для обозначения того, что область адреса команды (биты от 0 до 9) будет индексирована, а бит А — для обозначения того, что область адреса команды является индексом.

Адресование и индексирование области адреса команды может быль установлено одновременно битами А и В.

Командная информация (бнты от А до F) удерживаютСя в регистре 9 внутри блока памяти

3 для адресации к требуемым ячейкам памяти накопителя 10, 4

При адресации первого блока постоянной памяти 3 вырабатываются индексы и сигналы к блоку памяти 5 и мультиплексору 4, который вырабатывает информационные и управляющие сигналы для блока 1. Каждая ячейка памяти блока памяти 5 содержит определенное микро-. программное управляющее слово, которые в совокупности составляют микропрограмму, которая должна быль выполнена всем процессором путем регулярного генерирования выходных сигналов из мультиплексора 4 на вход блока 1

Микропрограммные управляющие слова блока памяти 5, .могут быть трех типов: разветвляющиеся (фиг. 4а), операционное (фиг. 4б) и ввода-вывода (фиг, 4в).

Разветвляющееся управляющее слово используется во время выполнения микропрограмм, чтобы вызвать селективное адресование блока памяти 5, основанное на обработке различных управляющих сигналов (условий состояния) в блоке 1 и в блоке переключения 7. Биты "14" и "15" этого слова представляют собой операционный код и передаются в виде управляющих сигналов с выхода блока памяти 5 к блоку переключения 7, который декодирует этот код.

Биты от "8" до "11" образуют область проверки, которая также формирует управляющие контрольные сигналы к блоку переключения 7. Эти сигналы сравниваются с сигналами состояния из блока 1, чтобы вызвать генерирование либо разветвляющегося, либо последовательного адреса к блоку памяти 5.

Разветвляющийся адрес к собственной области разветвляющегося управляющего слова содержит биты от "0" до "5". Эти биты передаются на второй вход блока переключения 7 в виде сигналов адреса. Бит ™6" регулирует селективное адресование и создает замедление сигналов адреса к блоку перключения 7 для определения того, должны быль использованы биты от "0 до "5" или сигналы с первого входа блока переключения 7, поступившие с выхода блока памяти 3 (биты от "18" до "23" фиг. 5) . Биты

"7", *12" и "13" разветвляющегося управляющего слова в данном устройстве не используются

Операционное управляющее слово используется для генерирования выходных сигналов мультиплексора 4 для управления обработкой данных внутри блока 1; Биты "14" и "15" этого слова (фиг. 46) аналогичны битам "14" и "15" разветвляющегося управляющего слова. Кроме того, они управляют мультиплексором 4 для многократной передачи сигналов к блоку 1. Биты "8", "9" и

"10 образуют код операции, выполняемой в блоке 1 блоком вычислений 7. Биты "2" и "3" управляют работой арифметического регистра, биты "4" и "5" — работой регистра-счетчика, а биты Р6" и "7" — работой регистра адреса.

691111

Бит "11" обозначает гашение счетчика 8 и используется блоком переключения 7 дпя восста-т новления адреса блока памяти 5.

Биты "0", "1", "12" и "13" операционного управляющего слова не используются.

Управляющее слово ввода-вывода исполь-. зуется для управления выполнением микропрограммы обращения блока 1 к блоку памяти 2.

Биты "14" и "15" этого слова (фиг.4в) анало- ..гйчны битам "14 и "15" разветвляющегося и операционного управляющих слов. Биты от "0 до "5" определяют источник адреса блока памяти 2, причем биты от "0 до "2" являются битами непосредственной адресации от мультиплексора 4 для индексирования или модификации в регистре-счетчике блок 1,а биты от "3" до "5 выбирают в качестве источника адреса или регистр адреса, или другой блок после обработки сигналов с выхода блока намяти 3 (биты от "10" до "15" фиг. 5). Бит "13" управляет загрузкой регистра-счетчика через мультиплексор 4 от ячейки памяти, непосредственно адресуемой битами oz "0" до "2". Биты "9" и "10" определяют операцию записи или считывания при обращении к блоку памяти 2. Биты

"6" и "7" декодируются .мультиплексором 4 и переводят блоки, взаимодействующие с блоком

1, в режим приема или выдачи информации, Бит "8" создает замедление передачи сигналов в мультиплексоре 4 от битов "6" и "7" к биту зо

"17" (фиг. 5) командного управляющего слова блока памяти 3. Бит "11" служит для гашения счетчика 8 аналогично биту "11" операционного управляющего слова.

Формат командного управляющего слова, ко35 торое содержится в блоке памяти 3, показан на фиг. 5. Эти слова имеют содержание, присущее команде, выполняемой всем микропрограммным процессором, и дополняют микропрограммы, находящиеся в блоке памяти 5, Биты от "18" до "23" этого слова содержат разветвляющийся адрес, который вызывает выполнение подпрограммы микропрограммы для управления выполнением конкретной команды процессора в соот45 ветствии с кодом адреса блока памяти 3. Бит

"17" используется для управления передачей информации между блоком памяти 2 и либо арифметическим регистром, либо регистром-счет пасом в блоке 1. Биты от "10" до "15" исполь50 зуются мультиплексором 4 для непосредственной адресации указанной ячейки индекса в блоке памяти 2 через блок 1. Бит "7" используется блоком переключения 7 для управления адресацией блока памяти 5 к требуемой ячейке непосредственно от йюка памяти 2. Биты от 0

55 до "5" образуют код операции, выполняемой в блоке 1 блоком вычислений, аналогично ранее описанному в операционном. управляющем слове. Код операции используется мультиплексором 4 для многократного повторения команды в блоке 1. Однако, кроме ранее описанных операций, он позволяет ввести дополнительные операции командного управляющего слова в блоке памяти 3.

Необходимо отметить, что регистр 9 в блоке памяти 3, получив командную информацию от блока памяти 2, передает далее эту информацию в накопитель 10, где она дешифрируется и выбирает требуемую ячейку памяти, и в блок! контроля 6. Последний после соответствующей обработки этих сигналов н сигналов от блока

1 и накопителя 10 и блока памяти 5 либо загружает счетчик 8 через блок переключения 7, либо дает счетчику 8 единичное приращение, осуществляя последовательную выборку ячеек памяти блока памяти 5. При этом блок контроля сравнивает биты от А до F регистра 9 (фиг. 3) и биты от "8" до "11" и "14", "15" разветвляющегося управляющего слова (фиг. 4а) блока памяти 5.

Таким образом, блок памяти 3 является дополнительным микродекодирующим блоком и содержит множество командных управляющих слов, соответствующих командам микропрограммного процессора Он может непосредственно соединяться с блоком памяти 2 или с блоком

1 для получения текущей информации, которая используется им, чтобы выборочно адресовать последнее для выполнения считывания командное управляющее слово. Во время выполнения определенных команд микропрограммным процессором блок памяти 3 при управлении блоком памяти 5 вырабатывает для него управляющую информацию, чтобы вызвать ветвление адресов к начальным ячейкам, присущим отдель. ным подпрограммам микропрограммы, выполняемой процессором.

Блок памяти 5 содержит микропрограммные управляющие слова, образующие микропрограмму. Он связан с блоком переключения 7, который обеспечивает последовательное или выборочное адресование к нему и от блока памяти 3 в ответ на управляющую информацию блока памяти 5 и на различные условия состояния и сигналы, подаваемые к блоку переключения 7.

Оба блока постоянной памяти управляют мультиплексором 4, который вырабатывает управляющие и информационные сигналы к блоку

1 в соответствии с выполняемой командой и вапсропрограммным управляющим словом.

Это позволяет значительно уменышпь количество дополнительных логических элементов и уменьшить общую емкость постоянной памяти за счет наличия в блоке памяти 5 микропрограмм, состоящих из множества подпрограмм, каждая иэ которых связана с множеством команд про1

691111

Формула изобретения

I цесе6ра. Но время выполнения отдельной подпрограммы достйгается момент в микропрог рамме; когда обычные характеристики отцель..ной выполняемой команды процессора не существуют, так как откладывается исполнение команды процессора путем приостанавливания выполнения передачи информации из блока памяти 5 в блок памяти 3 за счет подачи сигналов управления блока памяти 5 в мультиплекmp 4, В этом случае мультиплексор 4 самосто- ятельно вырабатывает специфические выходные сигналы, по которым процессор выполйяет специфические функции, являющиеся уникальными для выюлняемой индивидуальной команды процессора.

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

Микропрограммный процессор, содержащий блок обработки данных, выход которого соеди1 нен с входом первого блока постоянной памяти, выход которого соединен с первым входом мультиплексора, второй вход которого соединен с выходом . второго блока постоянной;.памя5 ти, выход мультиплексора соединен со входом блока обработки данных, о т л и ч а ю щ и йс я тем, что, с целью повышения надежности . процессора, он содержит блок переключения, счетчик и блок контроля, выход счетчика соединен со входом второго блока тюстоянной памяти, а вход — с выходом блока åðe qe первый вход которого соединен с выходом первого блока постоянной памяти и с первым входом блока контроля, второй вход которого соединен с выходом второго блока постоянной памяти и со вторым входом блока переключения.

Источники информации, принятые во внимание при экспертизе

1. Патент США N 3636522, кл. 340 — 172, опублик. 1972.

2.-Патент США Р 3707703, кл. 340-172.5, 2 опублик. 1972.

3. Патент США 11 3704448, кл. 340 — !72.5, опублик. 1972 (прототип).

691111 юхФ г

15141РУ21у/ЮУ ю 7 Ф ю 4 3 2 1 0

Составитель Ю. Ушаков

Редактор Л. Утехина Техред Л.Алферова Корректор М. Шароши — г

Заказ 5832/58 Тираж 780 Подписное

0НИИПИ Государственного комитета СССР по делам изобретений и открытий 113035, Москва, Ж-35, Раушская иаб., д. 4/5

Филиал ППП "Патент", . Ужгород, ул. Проектная, 4

Микропрограммный процессор Микропрограммный процессор Микропрограммный процессор Микропрограммный процессор Микропрограммный процессор Микропрограммный процессор 

 

Похожие патенты:

Изобретение относится к вычислительной технике и может быть использовано для вычисления логических функций в отказоустойчивых системах

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

Изобретение относится к электрически адресуемой энергонезависимой постоянной памяти

Изобретение относится к программируемому материалу памяти и к ячейке памяти, содержащей указанный материал памяти, в частности к тонкопленочной ячейке памяти

Изобретение относится к программируемым элементам памяти, к способам и устройству для их считывания, записи и программирования

Изобретение относится к электрически адресуемой энергонезависимой постоянной памяти

Изобретение относится к области вычислительной техники и автоматики и может быть использовано при записи информации в поле памяти постоянных запоминающих устройств

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

Изобретение относится к микроэлектронике, в частности к постоянным запоминающим устройствам, в накопителе которых в качестве логических ячеек используют ячейки упорядоченных поверхностных структур

Изобретение относится к вычислительной технике и может быть использовано для построения надежных цифровых усройств
Наверх