Устройство для формирования адреса замещаемого блока памяти

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и предназначено для определения блока, подлежащего замещению из группы блоков в колонке буферной памяти, организованной по частично-ассоциативчому принципу. Число элементов в колонке буферной памяти является переменным. При изменении числа элементов в колонке сохраняется точный алгоритм LRU, Изобретение может быть использовано в ЭВМ и вычислительных системах, вычислительных устройствах и приборах цифровой автоматики . Целью изобретения является повышение производительности устройства за счет исключения дополнительных обращений к отключенным блокам памяти, Для этого в устройство введен блок выбора адреса замещения , который позволяет определять адрес наиболее давно используемого блока буферной памяти, подлежащего замещению с учетом отключенных блоков буферной памяти. 1 з.п. ф-лы, 5 ил. 10 с

СОЮЗ СОВ TCVOX

СОЦИнЛИСТИЧЕСКИХ

РЕСПУБЛИК (я)з G 06 F 12/08

ГОСУДАРСТВЕННЫЙ КОМИТЕТ

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР! ." с: д, ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4862573/24 (22) 29.08;90 (46) 23.11.92. Бюл. М 43 (71) Научно-исследовательский институт электронных вычислительных машин (72) С.С, Кисель, И.M. Комлик, В.E. Неселовский и С.В. Фирсов (56) Процессор центральный ЕС 2436: Техническое описание. Часть 4: Организация памяти.

Авторское свидетельство СССР

N.. 1283852, кл. 6 11 С 7/00, 1986. (54) УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯ

АДРЕСА. ЗАМЕЩАЕМОГО БЛОКА ПАМЯТИ (57) Изобретение относится к вычислительной технике и предназначено для определения блока, подлежащего замещению из группы блоков в колонке буферной памяти, Изобретение относится к вычислительной технике и предназначено для определения адреса блока, подлежащего замещению из группы блоков в колонке буферной памяти, организованной по частично-ассоциативному принципу, Число элементов а колонке буферной памяти является переменным. При изменении числа элементов а колонке сохраняется точный алгоритм LRU.

Изобретение может быть использовано в

ЭВМ и вычислительных системах, вычислительных устройствах и приборах цифровой автоматики.

При реализации в ЭВМ общего назначения буферной памяти наиболее часто используется частично-ассоциативный принцип. организации, заключающийся в,; Ж,, 1777142 А1 организованной по частично-ассоциативному принципу. Число элементов в колонке буферной памяти является переменным.

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

Алгоритмы, выполняющие функцию выбора претендента на замещение а колонке буферной памяти, получили название "алгоритмы замещения".

1777142

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

При этом, в соответствии с алгоритмом замещения LRU, возможны ситуации, когда выбранный блок для замещения отключен.

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

Известно устройство, использующее алгоритм замещения LRU и при записи реализующее алгоритм обратной перезаписи с флажками. Особенностью данного устройства являетсл реализация записи в память.

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

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

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

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

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

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

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

Целью изобретения является повышение производительности устройства за счет

1777142

10

25

35

45

55 исключения дополнительных обращений к отключенным блокам памяти.

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

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

Емкость памяти предлагаемого устройства IlO=NxL, где N — число колонок буфер- . ной памяти; L — разрядность слова памяти хронологии в битах. Разрядность слова определяется и ри решении неравенства 2 >=M, где М вЂ” число строк Оуферной памяти.

Для известных устройств емкость памяти П1 йхМх(М-1)/2. Для М=4, N=64 в предлагаемом устройстве ПО=320 бита, а в аналоге П1=384 бита. При увеличении числа строк выигрыш в оборудовании значительно выше.

В устройстве предусмотрена воэможность отключения блоков при возникнове нии машинных ошибок в буферной памяти.

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

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

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

Формирование адреса замещаемого блока памяти иллюстрируется на примере устройства, у которого число строк состав- ляет 4, а число колонок равно 64.

На фиг, 1 представлена структурная схема устройства для формирования адреса замещаемого блока памяти; на фиг. 2— таблица истинности преобразователя кода; на фиг. 3 — функциональная схема блока выбора адреса замещения; на фиг. 4, 5— таблицы истинности ППЗУ, на которых реалиэован блок выбора адреса замещения.

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

4. Введены следующие обозначения: адресный вход 5, синхровход 6, вход кода сравнения 7, вход битов отключения 8, выход 9, информационная связь 10, Блок памяти 1 хранит коды хронологии, отражающие точную очередность обращений к блокам буферной памяти для всех кОлОНОк.

Блок памяти может быть реализован на

5 элементах памяти с организацией 64х1 бит.

Регистр 2 хранит код хронологии из адресуемой колонки буферной памяти, считанной из блока памяти 1.

Преобразователь кода (фиг. 1) формирует новый код хронологии по значению старого кода с выходов регистра 2 и коду сравнении с входа 7. Преобразователь кода

1777142

3 может быть реализован на ППЗУ с организацией 128х5. Таблица истинности преобразователя кода показана на фиг. 2, где разряды входа 1 преобразователя кода обозначены АО, А1, А2, АЗ, А4, а входа 2—

А5, Аб. Выходы преобразователя кода обозначены Оо, 01, Оъ 0з, СЙ.

По входу синхронизации 6 поступают два синхросигнала: СИ1 на первый вход регистра 1 и СИ2 на первый вход блока памяти, Блок выбора адреса замещения, представляющий собой постоянную память (фиг.

3), предназначен для определения наиболее давно используемого блока (ныход устройства 9) из множества неотключанных блоков адресуемой колонки буферной памяти по считанному коду хронологии (выход 1 регистра) и битам отключения блоков (вход устройства 8). Блок выбора адреса содержит

ППЗУ 12, ППЗУ 13, элемент И вЂ” НЕ 14, присоединен с адресными входами АО, А1, А2, АЗ, А4 ППЗУ 12 и 13, вход 8 устройства, обозначенный ВО, В1, В2, соединен с адресными входами А5, А6, А7 ППЗУ 12 и 13, а вход8устройства, обозначенный ВЗ, соединен с входом разрешения считывания RD

ППЗУ 12 и с входом элемента И-НЕ 14, выход которого соединен с входом разрешения считывания RD ППЗУ 13, выходы которого соединены в монтажное И с выходами ППЗУ 12 и являются выходом 9 устройства, Таблицы истинности ППЗУ 12 и

13 приведены на фиг. 4, 5, Устройство для формирования адреса замещаемого блока памяти может быть подключено к процессору ЭВМ, в состав которого входит буферная память, построенная по частично-ассоциативному принципу v» работающая по алгоритму сквозной записи или по алгоритму обратной перезаписи с флажками. Все внешние сигналы: адрес блока памяти 5, сигналы синхронизации 6, код сравнения 7 и биты отключения 0, поступают от процессора. Выход устройства 9 подается в процессор.

Устройство работает следуюшим образом. Выбор замещаемого блока н адресуемой колонке определяется по принципу

"наиболее давно используемого", в соответствии с которым претендентом на замещение является блок, к которому наиболее давно не было обращений. Такое отслеживание очередности обращений ведется для каждой колонки БП. Так как буферная память представляет собой 4-ассоциативную память, то необходимо хранить 24 комбинации кодов, которые полностью отслеживают очередность обращений к блокам (строкам)

БП. Очередность обращений можно задать в виде десятичной комбинации, представляющей собой возможные перестановки из элементов (строк) О, 1, 2, 3. Так, например, комбинации 0132 означает, что очередность обращений к строкам БП была следующей: самое раннее обращение к О-й строке, потом к 1-й, 3-й и последнее обращение к 2-й строке. Для кодировки 24 таких комбинаций необходимо 5 битов. Кодировка десятичных комбинаций в двоичном виде представлена а табл, 1.

Двоичное значение комбинации закодиро10 вано таким образом, что старшие два бита представляют собой строку БП, которая наиболее давно использовалась.

Адрес колонки буферной памяти поступает на адресный вход блока памяти 1, из которой считывается старая комбинация хронологии и по СИ1 принимается в регистр на первый вход преобразователя кода, на второй вход которого подается код сравнения с нхода 7 устройства. В соответствии с таблицей истинности, представле lHoA на фиг, 3, на выходе преобразователя кодов формируется новое состояние хронологии, которое по импульсу СИ2 записывается в блок памяти 1. После приема старого состояния хронологии в регистр 2 двоичная ком30

35 бинация хронологии поступает на первый вход блока выходного кодопреобразователя, на второй вход которого подаются биты отключения блоков для адресуемой колонки буферной памяти. Единичное состояние сигнала на линиях ВО, В1, В2, ВЗ означает, что соответствующий блок буферной памяти работоспособен, т.е. не отключен. Нулевое состояние сигнала на линиях ВО, Â1, В2, ВЗ означает, что соответствующий блок отключен. Блок выбора адреса замещения формирует адрес (код) наиболее давно используемого блока из множества неотключенных блоков. Функциональная схема блока выбора адреса замещения (фиг. 3) ре45 ализована на двух ППЗУ, обьединенных по выходу н монтажное И. ППЗУ 12 формирует адрес наиболее давно используемого блока, если сигнал В3 равен "1", т.е, третий блок не отключен, а ППЗУ 13 формирует адрес наиболее давно используемого блока, если сигнал ВЗ равен "О", т.е, третий блок отключен.

Таблицы истинности ППЗУ 12 и 13 приведены соответственно на фиг, 4, 5.

Работа устройства для формирования адреса замещаемого блока памяти может быть рассмотрена на следующем примере.

Пусть на адресный вход 5 поступает адрес нулевой колонки буферной памяти, а очередность обращений к блокам буферной памяти 1320, т.е. последнее обращение было к

20 2. Информация с выхода регистра поступает

1777142

10

30

40

55 блоку в строке О, а наиболее давно используемый блок находится в строке 1 и этот же блок отключен, Этому состоянию соответствует двоичная комбинация 01101, которая считывается из памяти 1 и по СИ1 принимается в регистр 2. С выхода регистра информация поступает на первый вход блока выбора адреса замещения. На второй вход блока выбора адреса замещения поступают биты отключения блоков: B0=1, В1=0, В2=1, В3-1. Так как блок в строке 1 отключен, наиболее давно используемым иэ блоков в строке 1 отключен, наиболее давно используемым из блоков в строках О, 2, 3 является блок в строке 3. В соответствии с таблицей истинности для ППЗУ 12, на адресный вход которого поступает значение 01101101, на выходе блока выбора адреса замещения вырабатываются сигналы K0=1 и К1=1, что соответствует блоку в строке 3. Если иьформация отсутствует в буферной памяти, то блок в строке 3 замещается блоком из оперативной памяти. Соответственно информация после обмена с оперативной памятью находится в буферной памяти, что приводит к выработке кода сравнения на входе 7, равного "11", который поступает на второй вход преобразователя кода, на первый и второй вход которого поступает комбинация 91101. В соответствии с таблицей истинности вырабатывается новое значение хронологии 01010, которое записывается в память 1.

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

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

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

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

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

2. Устройство по п.1, о т л и ч а ю щ е ес я тем, что блок выбора адреса замещения содержит постоянную память, первая группа разрядов адресного входа которой является первым входом блока выбора адреса замещения, вторая группа разрядов адресного входа объединена с управляющим входом постоянной памяти и является вторым входом блока выбора адреса замещения, вход постоянной памяти является выходом блока выбора адреса замещения.

1777142 f777142

УСТРОйСТОО ЦЛРС 1Л НО1 Зак аСи ГНИЕМ

ЬЛакоЬ ЬЧР рной nungrnu вы одывкодьа и 3 R(7 я!

g 10 Il

0 о

1 о и о

0

0 о и о

7

О

О т

0 о о

1

1 о

1 а

1

0 о

1

О

1

0 о

ff

1 о

О о о

f

1 о о о о

1

1 о о

0 о о

0 о

0 о

0 о о

f

1 о

1

f о о

D о

t

1

1

О

О о

О

0 а о о а

О о

О

О

0 о

1

1

f о о о о

1

1 о

3 о

1 у

0

0 о

t

1 о

1 о о .о

1 о о о

0 о о

О о о о

О о

0 о о

О у

1

0 о

0 о

f о

t

1.

t I

1

1

1 у

1 о о о о о о о о

1

1 I

t

1 о а о о

1 у 1 о о о о

0 о

0 о о о о о о о о

О

0 о о о

0 о а

0 о

0

0 о о

0 а о а

0 о

0 а

0 о

0 а о

0 о о о о

О

3 о а

0 а а о

0 о о о о о о

0 д о о о о о

0 а о а

О о

О о о

0

О

0 о о о

7 1

1

t у

1

1 а

0 о о о о о

1

1

1 т т

1 а о о

0 о о о о

r

1

1

1 о

0 о о о о

О о о о

1.

1 а

О

1 о

О, о о

1 о о

t о о

1

0 о

1 т

О и (1 о о

f о

Р

1 о

0 т

1 о о

1

1

0

1

1 о о у

Р о

0

О

1 о

1 о о

0

1 о

1 о

1 о

1 о

0

1 о

r о

1 о

0

0

0

1. о

:f о

0

0 о

f д

0

0

1

1 а

1 о о

0 о

0 о о

1 о а о

0

0 о

t а

0 о о

0 о

1 ( (1

1

t

0

0 о о

О а о о

il о

О ( о о

О

1 а

f

0 (1 у

1

1 о о о о

f о а а

0 о о

f о

1 о о

1 о

1 т о

1

1

1

1 о о а

О

0 а о

О

1

0 о

1 у

0 о

0

0

0 о

0

0 а

0 (f а о

О о

0

il о о

t о

1 о

0 а

Р а о

1 о о

0 о

0

0 о

1771142

fQ

1777142 устРои i" тИо цлра8иениэ защищен

Б Î<ÎÅ БУфГруГОй /7аМУЛ б дрооЬл к В 2 (0

0 о о

О о о о о о

0 о о

0 о о

1

f о

0 о о

1

t

1 !

t f

1 о

0 а о

0 о о о о

0 о о о . о о. о о

О о о

0 о о

1

1

1

О о о t

0

О о

Р

0 б

0 о

0 о

0 и

d о

O о о о о о

0 о о

0 о о о

1

1 !

1 .(t

1 !

t

1

I а о о б о

0

0 о о о

0 о о о о

1 о

t

0 о

f ! о

f

1 о о 1

1 ,б о !

t д

f о о

Г о

1 о

0

1 о

1 о

0

t о. д

f о

f о

f о

t д

1 о

0

0

0

f о о

1 о

1

I о о

f о

0 о о о

0 о.

О

3 о о о о

0 о о

1777142 с/л

68 ои око

ЛУ И/Ю

ЫОФ4С

Юлей

Oui мУ,Уо пи (171ОО

8o yng, Ф Р

У Р

6л еьъ

6 7 Ь

t0 о о о о о о о

О о

О о о о о

1

0 о ю

1 !

1

0 о

0 (t

1 о

6 о о о

О о о о

f !

I о о о о о о

0

f о о о

1

0 о о

О а

1 ( о и

6 о о о ь

0 о о о о

t

1 (1

0 о о о

1

1 о

0 о

1

1

1

1

C (1

f

f

1

t ф0/

Т

С.Ки орге

Соста ех витель ред М.М

Редактор Г,Бельская

Коррв(!тор С.Пекарь

Заказ 4123 Тираж Под(1ис нов

ВНИИПИ Государственного комитета fto изобретениям и открь(тиям при ГКНТ СССР

113035. Москва, Ж-35, Раувская наб., 4/8

Производственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина, 101. 0 о о о о

0. о о о о

0 о о . о о о о о .0

0 о

0 о .о

ip о

0 а

0

0

0 0 о

О о

0 о о о

0 ь .о о .0 о

0 о

О: о о о

О о

0 о о

0 о о

0 о

0 .о

0 о о .о о о о о о о о о

0 о о о о д о

0 о

f !

1

1 о

0 о

0 о в

1

f

t ( о о

Р о

О

0

f

f ()

1 ,( 1

1 о о

1 !

0 о

1 о ю

l

0

I оо (I

0

f ! о о

1

6 о

1 о о

1 !

0 о

1 ( о о

t.

О а

1 о о

t о о

I о о (1

0: о. (t

f

1 ! о

t о

1 о

0 !

0 !

I о (0 ! о

t о !

О ! о

t о ! о (0

t о

1 о !

0 ( о ( и

1.

t о

1 о

0 ! о

0

t о

1! о

0 !

t

0 !

1

0

0 ,!

0 ! о

0

I

1. о

t о

of

0 о о о о о о о

D о

D о р.

f о о о

0 о о ю

0 о о о t о о о

f о

o о ,f

"0 а о

1 о .о О, 1 о

0. о о о о

1 0 о д !. о. о о о

0 о о о

:о 0 о: ,о 0

О о