Рис. 1.2.6.10. Алгоритм теста «Попарная запись-считывание с полным перебором».
Рис. 1.2.6.11. Тест «Бегущий столбец».
Рис. 1.2.6.12. Алгоритм теста «Марш – шахматная доска».
Рис. 1.2.6.13. Алгоритм теста «Марширующая строка».
<60>
1.2.7. Организация многоблочной оперативной памяти.
Такая организация, как и иерархия памяти, позволяет повысить быстродействие.
ОЗУ большой емкости обычно выполняют в виде отдельных блоков (модулей) емкостью ЗУ до 64 Мбит, в которые входят РгА и РгС (числа). Если в ЗУ 2m блоков, в каждом из которых 2к слов, то суммарная емкость:
2к+m слов.
Код адреса имеет следующую структуру:
Рис. 1.2.7.1
Структура управления таким ЗУ имеет вид:
Рис. 1.2.7.2
В функциональном отношении такие ЗУ можно рассматривать как одно с быстродействием одного блока.
Совмещение работы во времени разных блоков ЗУ возможно при условии, что каждое последующее обращение происходит к другому (следующему!) по номеру блоку ЗУ. Можно ожидать, что при выполнении некоторой программы адреса команд и операндов возрастает на единицу. В связи с этим, нумерация ячеек в секционированной памяти осуществляется в соответствии с правилом – обращение к одной секции (блоку) производится через 2m –1 обращений к ЗУ. Такая организация именуется расслоением памяти.
Максимальное число одновременно выполняемых к памяти обращений называется коэффициентом расслоения. Все это возможно при условии, что, непосредственно после формирования и передачи адреса в блок, допустимо до появления сигнала z (окончание цикла обращения), а переходить к исполнению следующих запросов.
Основные проблемы: организация условных и безусловных переходов и размещение информации в памяти для получения наибольшего эффекта.
<61>
Итак, как организовать обращение в многоблочной ОП?
Такая организация теоретически способна в l раз при наличии l блоков увеличить производительность памяти.
Есть несколько способов организации:
1 способ: Программную информацию – в один блок (№ 0), данные – в другие (№№ 1, 2, 3, ¼), причем сделать так, чтобы разные каналы ввода/вывода обращались к разным блокам. Но это усложняет систему распределения памяти, поэтому такой способ – только в специализированных ЭВМ, с четко установленным списком алгоритмов.
2 способ. Расслоение памяти за счет расслоения адресов. В самом деле, обычно при чтении и записи обращаются к командам в последовательные ячейки ОП: ,+1, … и , , … То же и для каналов ввода/вывода: данные в ,+1, ¼ Но тогда стоит слова с адресами обращений ,+1, +2, ¼ размещать соответственно в блоках 0, 1, 2, ¼ Это будет возможно при использовании адресов вида:
Рис. 1.2.7.3
где В – m-разрядный адрес блока;
А – k-разрядный адрес ячейки в блоке.
Для 4-х блочной ОП в нулевом блоке содержатся ячейки с адресами 0, 4, 8, ¼; в первом – 1, 5, 9, 13 и т.д.
Интересно посмотреть, каковы реальные значения коэффициентов расслоения. В зависимости от классов решаемых задач
для 2- блочной ОП – коэффициент – |
1,2 – 1,3 |
4 - |
1,7 – 2,2 |
8 - |
3,4 – 4,2 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.