Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Журавлев, Ю. П. Системное проектирование управляющих ЦВМ

.pdf
Скачиваний:
15
Добавлен:
22.10.2023
Размер:
12.85 Mб
Скачать

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

В этом отношении интересно семейство цифровых вычислительных машин IBM/360 (США). Все вычис­ лительные машины этого семейства имеют единую си­ стему команд, позволяющую вести обмен программной и числовой информацией между ЦВМ системы с наи­ меньшими затратами времени на перекодировку. Коман­ ды ЦВМ семейства IBM/360 характеризуются перемен­ ной длиной и имеют разрядности RK1, Rk2, Я к з , равные, соответственно, шестнадцати, тридцати двум и сорока восьми двоичным разрядам. Цифровые машины этого семейства задуманы фирмой IBM/360 для широкой ком­ мерческой продажи с целью выполнения научно-техни­ ческих и инженерных расчетов, для решения задач пла­ нирования производства и бухгалтерских расчетов, а так­ же для управления объектами стационарных АСУ. Правда, несколько позднее эти же идеи были использо­ ваны фирмой для создания и бортовых ЦВМ этого се­ мейства.

Анализ большого числа различных классов задач, проведенный сотрудниками фирмы IBM, позволил по­ следним сделать вывод о том, что необходимая точность решения задачи различных классов может быть обеспе­ чена, если операнды (с учетом масштабирования) имеют разрядности Ri, Rz, Rз, Ri, равные соответственно 16, 32, 48 и 64. Кроме того, специалисты фирмы IBM учли, что в подавляющем своем большинстве потребители будут

пользоваться

информацией,

каждый

элемент

которой

 

 

 

 

 

 

Т а б л и ц а

8.1

Условное

Як.

ЯК2

Якз

Ял

Я г

Я г

Я 3

я 4

обозначение

 

 

 

 

 

 

 

 

Разрядность

16

32

48

8

16

32

48

64

310

представляет собой восьмиразрядный двоичный код ма­ тематического, логического или алфавитного символа,

записанного в

терминах

американского стандартного

кода ASCII-8.

Каждый логический символ этого кода

занимает Rn= 8 разрядов.

 

Разрядности

всех операндов, предназначенных для

представления

в ЦВМ

семейства IBM/360, сведены

в табл. 8.1.

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

б а й т а .

Конструктивно она состоит из девяти разрядов,

восемь

из которых — информационные, а один — кон­

трольный. Он предназначен для осуществления контроля информационных разрядов на четность (т. е. по моду­ лю 2). Каждый байт адресуем, то-есть имеет свой впол­ не определенный адрес. Емкость главной (оперативной) памяти ЦВМ семейства IBM/360 такова, что для указа­ ния адреса любого байта требуется 24 двоичных раз­ ряда.

В настоящее время появилась более мощная по срав­ нению с IBM/360 система IBM/370, также имеющая бай­ товую структуру памяти. Выбор байтовой организации памяти в последних образцах цифровых машин США объясняется в первую очередь стремлением повысить коэффициент использования информационной емкости памяти за счет выбора такой разрядности ячеек опера­ тивной памяти, чтобы при размещении в них элементов логической, алфавитной, цифровой и командной инфор­ мации соответствующие коэффициенты у** использова­ ния информационной емкости ячеек (групп ячеек) памя­ ти принимали бы значения, равные единице. Другие исследования, проведенные специалистами фирмы IBM, показали, что использование унифицированной ячейки оперативной памяти с разрядностью, меньшей семи — восьми разрядов, нерационально из-за значительного возрастания разрядности адресов ячеек.

Рассмотрим одну из возможных методик оптимиза­ ции величин Г* за счет выбора оптимальной разрядно­ сти Rx ячеек оперативной памяти.

311

Задача формулируется следующим образом. ПусТЬ известно: Ri, Ni для всех типов операндов, кроме команд. При решении этой задачи предполагается, что

1)

разрядность RK команд всех форматов одинакова;

2)

Rk= Ri* А~А • Ra,

команд, Ra— разрядность

адре­

 

где Л — адресность

са, RK* — разрядность

всех остальных элементов

про­

граммной информации, содержащихся в коде команды. Требуется найти разрядность Ra~^8 ячеек оператив­ ной памяти, минимизирующую значение коэффициента

использования информационной емкости

оперативной

памяти.

RK команд

неизвестна,

поскольку

Разрядность

емкость памяти не определена.

Очевидно, что

 

где &(X) — целая

часть от X,

 

(8Л)

округленного

в большую

сторону.

 

 

 

Поскольку

 

 

 

 

Qo — £ Niai

Nкак,

 

 

 

 

где NK— количество команд, ак-— количество ячеек, не­ обходимое для хранения одной команды, то

 

Е log, /"^ Д^гаг--|-NKaK\ -(- 1,

(8-2)

и из выражений (8.1), (8.2) вытекает:

 

/> « + А Е 1о£г ( £

Nta t + Nxax\ + 1

 

uKа - Q)8 1\

\<0

/

(8.3)

R.

 

 

Функция ак задана выражением (8.3) в неявном ви­ де. Следовательно, величину ак нужно искать методом последовательных приближений. Процесс сходится быст­ ро, поскольку величина ак в правой части стоит под знаком логарифма.

Пример. Пусть известно:

Ян* = 10,

Ай= 1000,

а{= 2,

А

= 2,

N2=1000,

02= 3,

Ян

= 10,

дг3=юоо,

Оз= 2,

 

 

Ай,= 2000,

Ок = ?

3 1 2

В качестве нулевого приближения выберем величину ак, равную, например, 100 (чего заведомо не может быть при указанных значе­

ниях величин N i, А и Rя).

Подставляя конкретные значения всех указанных величин в вы­

ражение

(8.3),

получаем:

 

 

 

 

 

«к = <?

/10 +

2 log2 (2СС0 +

ЗСС0 +

2С 00+

ЮГГСО) +

1] \

г

--------—---------------- Гб

 

 

г

5-

Вновь подставляя в правую часть выражения (8.3) вместо ак

найденное значение, получаем:

 

 

 

 

 

ак = <?

10 + 2 log2 (2000 +

3000 +

2000 +

5000) +

1J

 

 

10

 

 

=

4.

 

 

 

 

 

 

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

10 + 2 (5 log2 (20СО + 3000 + 20СО + 10Г0) + 1]

10

Быстрая сходимость процесса поиска величины ак по­ зволяет воспользоваться следующей процедурой выбора разрядности Rn ячейки ОЗУ, оптимизирующей значение коэффициента Г* использования информационной емко­ сти ОЗУ при ограничении:

 

B ^ \R h^ C ‘,

(7 -т-8); С’^^гшах-

 

 

1.

Составляется таблица

значений величин

<+,-

(/ =

= 1, 2, . . / = £

, £ + 1 ,

...,

С)

для

всех

типов

операн­

дов, кроме команд (см. табл. 8.2).

 

рассчитанных

2.

Таблица

8.2 дополняется

строкой

в соответствии

с формулой

(8.3) значений

aKj для

каж­

дого конкретного значения RHj.

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а

8.2

 

1

 

 

Ra

 

 

 

 

 

в

5 + 1

. .

/

 

С

 

 

 

 

 

 

1

а \в

й 1(В+1)

 

 

 

 

а \с

 

 

2

а2В

Я2(В+ 1) . . .

а Ъ1

 

а2С

 

 

. . .

■ . .

 

 

 

 

 

 

 

 

 

a iB

й1(В+1)

 

 

a i}

. .

агс

 

 

. . .

j . . .

 

 

 

 

 

 

 

 

3 (3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а

8 . 3

 

 

 

8

9

10

11

12

13

14

15

16

17

 

18

19

20

21

22

23

24

25

 

 

 

3

3

2

2

2

2

2

2

2

2

 

2

2

1

l

l

1

l

1

 

&2j

 

4

3

3

3

3

2

2

2

2

2

 

2

2

2

2

2

2

2

1

 

a3j

 

3

2

2

2

2

2

2

2

2

1

 

i

1

1

1

1 • 1

1

1

 

 

 

5

5

4

4

4

4

3

3

3

3

 

3

2

2

2

2

2

2

2

 

К

 

15

15

14

14

14

14

14

14

14

14.

;

14

14

13

13

13

13

13

13

 

 

40

40

38

38

38

38

38

38

38

38 .■ 38

38

36

36

36

36

36

36

NKRK lO

бит

8

8

7,6

7,6

7,6

7,6

7,6

7,6

7,6

7,6

 

7,6

7,6

7,2

7,2

7,2

7,2

7,2

7,2

У

lO4 бит

14,2

14,2

13,8

13,8

13,8

13,8

13,8

13,8

13,8

13,8

 

13,8

13,8

13,4

13,4

13,4

13,4

13,4

13,4

Q0

103 ячеек

20

18

15

15

15

14

12

12

12

11

^

11

9

8

8

8

8

8

7

Q0RK 10“

бит

1G

16,2

15

16,5

18

18,2

16,8

18

19,2

18,7

 

19,8

17,1

16

16,8

17,6

18,4

19,2

17,5

 

 

 

0,89

0,87

0,92

0,83

0,77

0,76

0,82

0,77

0,71

0,73

 

0,69

0,81

0,84

0,79

0,75

0,73

0,69

0,75

3.Для каждого столбца вновь образованной табли­ цы рассчитывается значение ГД коэффициента исполь­ зования информационной емкости памяти.

4.Выбирается значение RH, при котором ГД = тах.

Пример. Пусть задано:

 

Rk* = Ю;

Ай= 1000,

= 20,

А = 2;

jV2 = 1000,

R2= 25,

 

У3=1000,

Rз=17,

 

У„ = 2000,

RnS? 8.

Требуется выбрать разрядность Rn ячейки памяти так, чтобы коэффициент Г* использования информационной памяти принял наи­ большее значение.

Решение этой задачи сведено в табл. 8.3.

В трех верхних строках записаны значения коэффи­ циентов ац для числовой информации в зависимости от текущего значения Rn. В следующей строке найдены зна­ чения коэффициентов акj для команд. В самой нижней строке приведены значения искомого коэффициента ГД. Поскольку значение коэффициента использования информационной емкости памяти рассчитывались с по­ мощью выражения

то в таблице 8.3 приведены и некоторые промежуточные результаты. Так, например, числитель этого выражения обозначен в таблице символом У. Так как разрядность команд оказалась наибольшей среди разрядностей всех типов операндов, то количество столбцов табл. 8.3 сле­ довало бы увеличить, однако расчеты показывают, что при А?я>25 значение коэффициента ГД существенно меньше имеющихся в таблице.

§ 8.3. УТОЧНЕНИЕ ЕМКОСТИ И АРХИТЕКТУРЫ О ЗУ

Емкость Qo, быстродействие 1/то и разрядность RH ячеек оперативной памяти являются важными, но не единственными ее характеристиками. Оперативная па­ мять может быть моноблочной или многоблочной, одно­ канальной или многоканальной. При одинаковой емко­ сти (по числу ячеек) и времени обращения к одной ячей­ ке она может иметь несколько различных вариантов построения, существенно влияющих на производитель­

ность ЦВМ и коэффициент исйоЛЬЗойанйя ёе информа­

ционной емкости.

представляет собой

устройство,

Моноблочное ОЗУ

в котором все ячейки

имеют одинаковую

разрядность

и объединены общими адресной и числовой магистра­ лями. Такие ОЗУ обладают относительно небольшой емкостью, определяемой прежде всего возможностями технологии производства и методами борьбы с помеха­ ми в обмотках считывания. Моноблочные ОЗУ являют­ ся одноканальными, поскольку обращение в любой про­ извольный момент времени может осуществляться толь­ ко к одной ячейке.

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

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

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

3 1 6

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

в операционном

устройстве

одновременно

извлекать из

памяти два операнда (по 2

каналам), необходимые для

выполнения t'+ l

команды,

модификатор

(по 1 каналу)

г+ 2 команды и код г + 3 команды (по 1 каналу). Отсю­ да, кстати, следует, что все команды должны распола­ гаться в одном канале ОЗУ, модификаторы — в другом, операнды, извлекаемые по первому адресу кода коман­ ды ,— в третьем, а по второму адресу — в четвертом. В данном случае единая система адресов такого ОЗУ должна предусматривать последовательную нумерацию ячеек первого и второго каналов и смежную нумерацию ячеек третьего и четвертого каналов. Адреса ячеек третьего и четвертого каналов чередуются таким обра­ зом, что в третьем канале они четные, а в четвертом — нечетные.

Количество k каналов многопроцессорных ЦВМ, т. е. многомашинных вычислительных комплексов с общей па­ мятью, обеспечивающее работу в режиме полного совме­

щения тактов, определяется

в соответствии с выраже­

нием:

 

 

 

 

6 - 1 ( 4

+ 1),

 

 

1 = 1

 

“Л

где т — количество

процессоров,

Л,-— фактическая

адресность команды, управляющей работой i-го процес­ сора.

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

3 1 7

Таким образом, общее количество К каналов ОЗУ определяется следующим образом:

К = k-\- k0.

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

сообразно каналы ОЗУ

большой

емкости

строить по

блочному принципу. Тогда адрес

любой

ячейки такого

и з у

состоит из

трех адресов — номера

канала, номера

блока

в канале

и номера

ячейки

в блоке

которые де­

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

и ячеек внутри каждого блока было кратным целочис­ ленным степеням двойки.

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

каждая из которых способна

размещать Ni операндов

с разрядностью, не большей

Тогда

Q o<Y1NiRi, i =

1, 2

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

Ьсли окажется, что количество Q0i ячеек г-й секции превышает допустимую по условиям технологии изго­ товления или по каким-либо другим соображениям ем­

кость Ног типового блока,

предназначенного для

разме­

щения операндов г-го типа, то в состав г-й

секции

R I / 7TT/-MI о l/'X 'n

 

^

Шг =

<$JQ(ii!QToi

 

типовых блоков.

 

 

318

Общее количество М блоков такого ОЗУ определяет­ ся в соответствии с выражением:

П

M = Y i тг-

»=1

Если Rn<.Rimax, то рассчитанное в соответствии с ре­ комендациями, изложенными в пятой главе, значение Qo должно быть уточнено в соответствии с выражением:

П

Qo У'Щ/ —[— Пj- i=l

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

§ 8.4. УЧЕТ ПАРАМЕТРИЧЕСКОЙ ИЗБЫТОЧНОСТИ ПРИ РАСЧЕТЕ ПОКАЗАТЕЛЕЙ НАДЕЖНОСТИ ОПЕРАЦИОННЫХ УСТРОЙСТВ

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

Сбои приводят к искажению числовой и программной информации. Особенно опасны возникающие в резуль­ тате сбоев искажения кодов команд, которые, как прави­ ло, равносильны срыву функционирования управляющей ЦВМ. Влияние сбоев числовой информации на функцио­ нирование ЦВМ можно оценить величиной результирую­ щей ошибки на выходе машины. Влияние же сбоев про­ граммной информации целесообразно оценивать вероят­ ностью появления хотя бы одного такого сбоя в процессе реализации алгоритмов управления. В работе [25] при­ ведены расчетные формулы для определения вероятности возникновения хотя бы одного сбоя команды в зависи­ мости от количества и разрядности регистров устройства

3 1 9

Соседние файлы в папке книги из ГПНТБ