авторефераты диссертаций БЕСПЛАТНАЯ БИБЛИОТЕКА РОССИИ

КОНФЕРЕНЦИИ, КНИГИ, ПОСОБИЯ, НАУЧНЫЕ ИЗДАНИЯ

<< ГЛАВНАЯ
АГРОИНЖЕНЕРИЯ
АСТРОНОМИЯ
БЕЗОПАСНОСТЬ
БИОЛОГИЯ
ЗЕМЛЯ
ИНФОРМАТИКА
ИСКУССТВОВЕДЕНИЕ
ИСТОРИЯ
КУЛЬТУРОЛОГИЯ
МАШИНОСТРОЕНИЕ
МЕДИЦИНА
МЕТАЛЛУРГИЯ
МЕХАНИКА
ПЕДАГОГИКА
ПОЛИТИКА
ПРИБОРОСТРОЕНИЕ
ПРОДОВОЛЬСТВИЕ
ПСИХОЛОГИЯ
РАДИОТЕХНИКА
СЕЛЬСКОЕ ХОЗЯЙСТВО
СОЦИОЛОГИЯ
СТРОИТЕЛЬСТВО
ТЕХНИЧЕСКИЕ НАУКИ
ТРАНСПОРТ
ФАРМАЦЕВТИКА
ФИЗИКА
ФИЗИОЛОГИЯ
ФИЛОЛОГИЯ
ФИЛОСОФИЯ
ХИМИЯ
ЭКОНОМИКА
ЭЛЕКТРОТЕХНИКА
ЭНЕРГЕТИКА
ЮРИСПРУДЕНЦИЯ
ЯЗЫКОЗНАНИЕ
РАЗНОЕ
КОНТАКТЫ


Pages:     | 1 |   ...   | 4 | 5 || 7 |

«МИНИСТЕРСТВО ОБОРОНЫ РОССИЙСКОЙ ФЕДЕРАЦИИ ВОЕННЫЙ ИНСТИТУТ РАДИОЭЛЕКТРОНИКИ Г.Л. КЛОЧКОВ ЦИФРОВЫЕ УСТРОЙСТВА И МИКРОПРОЦЕССОРЫ ...»

-- [ Страница 6 ] --

В зависимости от сигнала R W, линии ЛЗС подключаются либо к выход ной шине данных (через ключ на транзистореVT4 при R/W = 1), либо к ли нии входных данных (через ключи на транзисторах VT3и VT3' при R/W =0).

Рис.7. Для операции регенерации, целиком проходящей внутри ОЗУ, связь с внешними выводами не требуется, так как она не сопровождается выдачей данных на выходные буферы. Поэтому для нее достаточно подачи только сигнала RAS (совместно с адресами регенерируемых строк) и выработки тактирующих сигналов Ф1 и Ф2.

Рис. 7.28.

Если длительность цикла чтения tcy, а число строк матрицы ОЗУ равно Nстр, то на регенерацию данных потребуется время tрег= tcy Nстр.

Относительные потери времени на регенерацию составят рег t рег / T рег, где Трег – период повторения операции регенерации.

Расчеты показывают, что относительные потери времени на регене рацию для современных динамических ОЗУ составляют единицы процен тов.

7.5.5. Модули памяти ОЗУ большой информационной емкости Требования к информационной емкости ОЗУ, как правило значительно превосходят возможности одной ИМС памяти как в отношении разрядности слов, так и их числа. Поэтому при построении ЗУ ИМС объединяют в модули, которые вместе с регистрами, дешифраторами и устройствами управления образуют функционально-законченный блок ( модуль) ОЗУ.

Для наращивания разрядности слов в ИМС памяти объединяют одноименные адресные и управляющие входы (рис.6.29,а ). Образованную таким соединением часть модуля ЗУ называют субмодулем.(СМ).

Записывают слова в субмодуль по входам DI n-1-DI 0, считывают с выходов DO n-1 –DO 0 всеми разрядами одновременно, при условии, что на входе CS присутствует сигнал логического нуля. В том случае, если на входе CS сигнал логической единицы СМ находится в режиме хранения и не реагирует на адресные и управляющие сигналы.

Для наращивания числа хранимых слов СМ объединяют в модуль путем соединения одноименных выводов СМ, за исключением выводов CS, которые подключают к выходам дешифратора кода адреса.На входы дешифратора подают дополнительные (старшие) разряды кода адреса.

а) б) Рис. 7. На рис.7.29,б приведен пример объединения в модуль четырех субмодулей, что обеспечивает в четыре раза большую информационную емкость по сравнению с информационной емкостью СМ.

Для этого модуля код адреса имеет m+1 разрядов. Два старших разряда m+1 и m определяют тот субмодуль, к которому происходит обращение при записи информации или ее считывания. Так при Аm+1Аm= дешифратор формирует сигнал 0 на нулевом выходе. При этом открывается доступ к субмодулю СМ0. При Аm+1Аm=01 открывается доступ к СМ1 и т.д. ОЗУ с такой адресацией называют ОЗУ "страничного" типа.

6.5.6 Динамические ОЗУ повышенного быстродействия По мере возрастания тактовой частоты процессоров и увеличения пропускной способности процессорной шины возникает и потребность в использовании более скоростных типов памяти, имеющих большую про пускную способность. Модули динамической памяти можно разделить на асинхронные и синхронные. К первым типам модулей быстродействую щей асинхронной памяти относятся FPM, EDO или BEDO. Затем были разработаны модули синхронной памяти типов SDRAM РС100 и РС133, которые сменили более скоростные типы памяти DDR200, DDR266, DDR333 и DDR400. В перспективе — модули памяти DDR533. Широкое применение находят также модули быстродействующей памяти Rambus DRDRAM PC800 и РС1066.

В середине 90-х годов была разработана асинхронная динамиче ской памяти FPM DRAM (Fast Page Mode — динамическая память с бы стрым страничным доступом).

Смысл страничного доступа заключается в том, что после выбора одной строки матрицы памяти допускается многократная установка адреса столбца, стробируемого сигналом CAS. Страницей в данном случае назы вается сама строка матрицы. Такой подход позволяет выбирать последова тельные данные в пределах одной строки без изменения ее адреса, то есть с одним и тем же сигналом RAS. Это позволяет ускорить блочные пере дачи, но только в том случае, когда весь блок данных или его часть нахо дятся внутри одной строки матрицы. Процессы в FPM-памяти и последо вательность сигналов во времени представлены на рис. 7.30,а. На рисунке Row – код адреса строки, а Col 1, Col 2 и т.д. – коды адресов столбцов этой строки. Доступ к каждому следующему столбцу происходит только после считывания данных предыдущего.

Вторым типом асинхронной динамической памяти является EDO DRAM (Extended Data Out), которая представляет собой улучшенный ва риант FPM. В этой памяти также реализована страничная схема доступа, но на выходе микросхемы памяти устанавливаются регистры - защелки данных. При страничном режиме доступа содержимое выбранной ячейки удерживается в выходных регистрах - защелках, в то время как на входы матрицы уже подается адрес следующей выбираемой ячейки (рис.7.30, б).

Таким образом удается совместить по времени несколько операций, что приводит к увеличению скорости считывания данных в пределах одной страницы. При случайной адресации такая память ничем не отличается от FPM.

Рис.7. На смену двум первым типам памяти пришла память BEDO (Burst EDO), которая являлась логическим продолжением памяти EDO. Это ва риант все той же EDO - памяти, но с реализацией пакетного режима дос тупа. Обращение к BEDO на чтение имеет два отличия от доступа к EDO.

Первое — это то, что на выходе устанавливаются триггерные регистры хранения, которые по положительному фронту первого импульса CAS записывают данные в регистр, а по положительному фронту второго им пульса CAS — записанные данные поступают из регистра на выход (рис.7.30, в).

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

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

С системной шины они считываются контроллером, который уже синхронизирован с тактовой частотой. Следовательно, если данные появ ляются в момент, следующий за фронтом тактового импульса, то они бу дут считаны только с началом следующего тактового импульса. Поэтому при использовании асинхронной памяти часто возникает задержка с обра боткой данных, что, в свою очередь, приводит к жестким ограничениям на частоту системной шины. Так, память страничного доступа FPM DRAM обеспечивала работу при тактовой частоте не более 40 МГц. Вследствие улучшения организации доступа к памяти (EDO и BEDO) удалось повы сить тактовую частоту до 66 МГц. Но 66 МГц — это предельное значение частоты для асинхронной памяти. При более высоких частотах систем ной шины потребовалось найти способ преодоления существенных задер жек. Поэтому на смену асинхронной памяти пришла синхронная динами ческая память SDRAM (Synchronous DRAM).

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

Весь массив памяти SDRAM - модуля разделен на два независимых банка. Такое решение позволяет совмещать выборку данных из одного банка с установкой адреса в другом банке, то есть иметь одновременно две открытые страницы. Доступ к этим страницам чередуется (bank inter leaving), и соответственно устраняются задержки, что обеспечивает созда ние непрерывного потока данных.

В SDRAM - памяти, как и в BEDO – пaмяти, организована пакетная обработка данных, что позволяет производить обращение по новому адре су столбца ячейки памяти на каждом тактовом цикле. В микросхеме SDRAM имеется счетчик для наращивания адресов столбцов ячеек памяти с целью обеспечения быстрого доступа к ним.

Наиболее распространенными типами SDRAM-памяти являлись до недавнего времени РС100 и РС133. Цифры 100 и 133 определяют частоту системной шины в мегагерцах (МГц), которую поддерживает эта память.

По внутренней архитектуре, способам управления и внешнему дизайну модули памяти РС100 и РС133-полностью идентичны.

Одним из важнейших параметров модулей памяти является пропу скная способность, определяющая максимальное количество байт, переда ваемых по шине данных за одну секунду. Для того чтобы определить про пускную способность памяти, нужно частоту системной шины умножить на количество байт, передаваемых за один такт. Память SDRAM имеет 64 битную (8-байтную) шину данных, поэтому пропускная способность SDRAM-памяти определяется по формуле:

Wпс(Мбайт/с) = Fсш (МГц) * 8 байт, где Fсш – частота системной шины.

Для памяти РС100 пропускная способность составит 100 МГц * байт = 800 Мбайт/с, а для памяти РС133 — 1064 Мбайт/с или 1,06 Гбайт/с.

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

Поэтому другими важными характеристиками модулей памяти являются RAS to CAS Delay, CAS Latency и RAS Precharge.

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

CAS Latency определяет задержку по времени в тактах, которая происходит с момента подачи сигнала CAS до выдачи первого элемента данных на шину. Каждый последующий элемент данных появляется на шине данных в очередном такте. Для SDRAM-памяти эта задержка может составлять два или три такта.

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

Длительности RAS to CAS Delay (Trcd), CAS Latency (Tcl) и RAS Precharge (Trp) определяют так называемый тайминг памяти, записы ваемый в виде последовательности Tcl—Trcd— Trp.

На рис.6.31 приведены временные диаграммы работы SDRAM памяти при Tcl = 2Т и ЗТ и Trcd = 2Т.

Для SDRAM-памяти тайминг может быть 2-2-2 или 3-3-3. Память с таймингом 2-2-2 более скоростная, чем память с таймингом 3-3-3. Срав неним памятьPC 100 с таймингом 2-2-2 и память РС133 с таймингом 3-3-3. Казалось бы, что при тайминге 2-2-2 память должна быть более скоростной, но для памяти РС100 время одного такта больше, чем для па мяти РС133.

Рис.6. При частоте системной шины 133 МГц длительность одного такта составляет 7,5 нс, а при частоте 100 МГц — 10 нс. Рассчитаем время, не обходимое для считывания первых четырех элементов данных в обоих случаях (пакетный режим). Для памяти PC 133 (3-3-3) время, необходи мое для считывания первого элемента данных, составляет семь тактов.

Действительно, через шесть тактов (Tсl + Trcd = 6Т) данные появляются на шине данных, но могут быть считаны только по положительному фронту следующего синхроимпульса, то есть еще через один такт.

Учитывая, что после считывания первого элемента данных после дующие элементы данных считываются с каждым тактом, время считы вания первых четырех элементов составит десять тактов, или 75 нс. Для памяти PC 100 (2-2-2) время, необходимое для считывания первого эле мента данных, составляет пять тактов (Tel + Trcd + 1Т = 5Т). Время счи тывания первых четырех элементов составит уже восемь тактов, или нс. Поэтому при организации пакетного доступа налицо преимущество памяти РС133 (3-3-3), несмотря на то что ее тайминг хуже. Выигрыш па мяти РС100 (2-2-2) возможен только в том случае, если длина пакета рав на единице, то есть когда отсутствует пакетный режим передачи. В этом случае для памяти РС133 (3-3-3) количество тактов для считывания одно го элемента равно семи, а время считывания — 52,5 не. Для памяти РС (2-2-2) количество тактов для считывания одного элемента данных равно пяти, а время считывания — 50 нс.

Несмотря на широкое распространение памяти SDRAM PC133, все больше ощущается недостаточность ее быстродействия и пропускной спо собности, особенно для новых процессоров типа Intel Pentium 4, Поэтому на смену SDRAM пришла память DDR SDRAM, которая также является динамической синхронной памятью, но обеспечивает в два раза большую пропускную способность.

Аббревиатура DDR (Double Data Rate) в назва нии памяти означает удвоенную скорость передачи данных. По аналогии память SDRAM РС100 и РС133 называют SDR (Single Data Rate). Основ ные принципы функционирования DDR-памяти остались такими же, как и в SDRAM, с одним исключением: если в SDRAM-памяти синхронизация осуществлялась по положительному фронту тактирующего импульса, то в DDR-памяти используется положительный фронт двух тактирующих сиг налов — прямого и инверсного. Для простоты можно рассматривать один тактирующий сигнал с синхронизацией как по положительному, так и по отрицательному фронту.

Использование двух тактирующих сигналов (или одного сигнала с использованием обоих фронтов) позволяет передавать данные два раза за один такт, то есть вдвое увеличить пропускную способность. Все осталь ные принципиальные моменты не изменились: структура нескольких неза висимых банков позволяет совмещать выборку данных из одного банка с установкой адреса в другом банке, то есть можно одновременно иметь две открытые страницы. Доступ к этим страницам чередуется (bank interleav ing), что приводит к устранению задержек и обеспечивает создание непре рывного потока данных.

DDR-память настраивается в процессе работы путем установки со ответствующих регистров, как и SDRAM-память. Кроме того, DDR память, как и SDRAM, предназначена для работы с системными частотами 100, 133, 166 и 200 МГц. DDR-память, работающую на частоте 100 МГц, иногда обозначают как DDR200, подразумевая при этом, что «эффектив ная» частота памяти составляет 200 МГц (данные передаются два раза за такт). Аналогично, при работе памяти на частоте 133 МГц используют обозначение DDR266, при частоте 166 МГц — DDR333, а при частоте МГц — DDR400. Нетрудно рассчитать и пропускную способность DDR памяти. Учитывая, что ширина шины данных составляет 8 байт, для памя ти DDR200 получим 200 МГц х 8 байт =1,6 Гбайт/с;

для памяти DDR —. 266МГц х 8 байт =2,6 Гбайт/с, а для памяти DDR400 —400 МГц х байт = 3,2 Гбайт/с.

Хотя обозначение типа DDR200, DDR266, DDR333 и DDR400 кажет ся вполне логичным и понятным, официально принято другое обозначение этой памяти. В названии используется не «эффективная» частота, а пиковая пропускная способность, то есть память DDR200 обозначается как DDR PC1600, DDR266 — как DDR PC2100, DDR333 - как РС2700, a DDR400 – как РС3200. Кроме частоты, память, характеризуется схемой тайминга (Tcl—Trcd—Trp). Для памяти DDR200 тайминг всегда 2-2-2, а вот для оста льных типов памяти тайминг может ть различным. Так, для памяти DDR встречаются тайминги 3-3-3, 2,5-3-3, 2-3-3 и 2,5-2-2. Естественно, что моду ли DDR266 с таймингом 2,5-2-2 являются наиболее быстродействующими и, следовательно, дорогими. При таком тайминге латентность CAS равна 2, такта, а общая латентность памяти, которая определяется суммой задержки сигнала CAS относительно сигнала RAS (время Trcd) и задержкой появления данных на шине относительно сигнала CAS (Tcl), составлят 4,5 такта. Соот ветственно для памяти с таймингом 2,5-3-3 латентность составляет 5,5 такта, а для памяти с таймингом 3-3-3 она равна шести тактам.

Временные диаграммы работы DDR SDRAM-памяти при Tcl =2T,2,5T и CL=3T и Trcd = 2Т приведены на рис.6.32.

Рис.7.32.

Для примера рассмотрим быстродействие памяти DDR266 с различ ными таймингами. При работе в пакетном режиме с длиной пакета, равной BL (Burst Length), время доступа к первому элементу пакета определяется параметрами CAS-to RAS Delay и CAS Latency, то есть по истечении вре мени Trcd+Tcl первый элемент данных появляется на шине. Учитывая, что считывание данных синхронизировано с положительным фронтом такти рующего импульса, для получения времени доступа необходимо добавить время до появления ближайшего положительного фронта тактирующего импульса. Если CAS Latency (CL) равно двум или трем тактам (целое чис ло), то время до появления ближайшего положительного фронта такти рующего импульса составляет один такт, если же CL равно 2,5, то этот промежуток времени составляет половину такта (рис. 7.32).

Считывание всех остальных элементов данных будет происходить каждые полтакта. Поэтому время доступа к пакету длиной BL при CL= или CL=3 определяется по формуле:

t = Trcd + Tel + 1Т + (BL-1)*T/2;

при BL1.

Для CL=2,5 аналогичное время составит:

t = Trcd + Tel + О, 5Т + (BL-1)*T/2;

при BL1.

Рис.7. На основании этих формул нетрудно сравнить быстродействие па мяти DDR266 (2,5-2-2) и DDR333 (3-3-3). Из рис. 7.33 следует, что пре имущество памяти DDR333 (3-3-3) проявляется только в режиме пакет ного доступа с длиной пакета более семи. Если же используется выбо рочное чтение данных из памяти, когда различные элементы принадле жат разным строкам, то память DDR266 (2,5-2-2) окажется более быстро действующей.

|В настоящее время модули памяти DDR266 и DDR333 являются наиболее распространенными. Начинает внедряться стандарт памяти DDR400.

Компания Intel возлагает большие надежды на новый перспектив ный стандарт синхронной памяти DDRII.

Рис.7.34.

Если следовать терминологии SDR (Single Data Rate) и DDR (Dou ble Data Rate), то память DDRII было бы логично назвать QDR (Quadra Data Rate), так как этот стандарт подразумевает в четыре раза большую скорость передачи. То есть в стандарте DDR II при пакетном режиме дос тупа данные передаются четыре раза за один такт. Напомним, что для по лучения удвоенной скорости передачи в памяти DDR к синхронизирую щему сигналу добавлялся инверсный, что позволяло считывать данные как по положительному, так и по отрицательному фронту тактирующего им пульса. Для получения учетверенной скорости добавляются еще два сиг нала (прямой и инверсный), но сдвинутые на полтакта, относительно пер вого синхронизирующего сигнала (рис. 7.34).

Стандартом будут предусмотрены следующие типы памяти DDRII:

DDR400, DDR533 и DDR667. Если же исходить из стандарта DDRII, то памяти DDR400 будет соответствовать частота FSB 100 МГц, памяти DDR533 — частота 133 МГц и памяти DDR667 — частота 166МГц.

В новых модулях памяти DDRII будет использоваться пониженное напряжение (1,8 В вместо 2,5 В в модулях DDR).

Говоря о современных и перспективных модулях памяти, нетрудно заметить одну особенность — основное отличие новых типов памяти за ключается в их большей пропускной способности. Действительно, пропу скная способность памяти возрастает экспоненциально (рис. 6.35). Объяс нить такую закономерность довольно просто. Для того чтобы реализовать возможности современных процессоров, требуется использование высоко скоростных типов памяти с высокой пропускной способностью. Если же пропускная способность канала памяти будет существенно ниже пропуск ной способности процессорной шины, то процессор будет большую часть времени будет простаивать, дожидаясь нужных данных из памяти. В со временном процессоре Intel Pentium 4 частота процессорной шины равна 400, 533 или 800МГц и при ширине шины данных 8 байт пропускная спо собность процессорной шины составляет, соответственно, 3,2, 4,2 или 6,4Гбайт/с. Поэтому для построения хорошо сбалансированных систем уже сейчас назрела потребность в использовании более скоростных типов памяти.

Рис.6. Память Direct Rambus DRAM, или DRDRAM занимает особое по ложение среди всех распространенных типов синхронной динамической памяти. Внастоящее время эта высокопроизводительная память применя ется в наиболее быстродействующих ПК на базе процессора Intel Pentium (чипсеты i865, i875). Остановимся лишь на ключевых моментах техноло гии DRDRAM.

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

В данный момент тактовая частота работы памяти в стандарте Di rect Rambus DRAM составляет 400 и 533 МГц, причем обращение к памяти происходит по положительному и отрицательному фронту тактовых им пульсов (как и в DDR-памяти), поэтому эффективная частота составляет 800 и 1066 МГц соответственно. Эффективная частота работы памяти фи гурирует в ее названии аналогично тому, как это принято в SDR SDRAM памяти, и если частота составляет 400 МГц, то память обозначается как DRDRAM РС800, а для памяти с частотой 533 МГц используется название РС1066.

Столь высокая частота достигается за счет уменьшения разрядно сти шины данных. Дело в том, что с увеличением разрядности шины воз никает проблема подавления помех синхронизации. Чем больше ширина шины, а следовательно, и количество проводников, тем большее число сигналов будет переключаться одновременно, а значит, будет генериро ваться больше высокочастотных шумов, так что их общий уровень может стать абсолютно неприемлемым. Поэтому в стандарте Direct Rambus DRAM ширина шины данных составляет всего 16 бит, или 2 байт.

Пропускная способность DRDRAM-памяти составляет 1,6 Гбайт/с для памяти РС800 и 2,1 Гбайт/с для памяти РС1066 при одном канале пе редачи, а таких каналов может быть несколько. Другой характерной осо бенностью DRDRAM - памяти является многобанковая архитектура с че редованием. При описании SDRAM - памяти говорилось, что весь модуль памяти разделен на два независимых банка, вследствие чего можно иметь одновременно две открытые страницы. Доступ к этим страницам череду ется (bank interleaving), и соответственно устраняются задержки, что обес печивает создание непрерывного потока данных. В DRDRAM - памяти ка ждая микросхема разделена на 16 независимых банков (или даже на 32 — в реализации компании NEC), причем операции со строками могут прово диться для четырех банков одновременно. Кроме того каждая новая мик росхема памяти DRDRAM добавляет дополнительные банки к каналу па мяти. Многобанковая архитектура позволяет проводить операции чтения и записи практически непрерывно, так как они выполняются с разными бан ками памяти.

Контроллер DRDRAM-памяти теоретически способен поддержи вать до четырех каналов памяти. В настоящее время для рабочих станций реализуются двухканальные схемы памяти, что увеличивает общую про пускную споcобность до 3,2 Гбайт/с для памяти РС800 и до 4,2 Гбайт/с для памяти РС1066.

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

Как уже отмечалось, в настоящее время наиболее распространены модули памяти РС800 и РС1066. Новые типы памяти РС3200 и РС значительно отличаются от предыдущих. Главное различив заключается в использовании 32-битной ширины шины данных, которая в два раза боль ше, чем в памяти РС800/РС1066. Для памяти РС3200 тактовая частота со ставляет 400 МГц, а для памяти РС4200 — уже 533 МГц.

У новых типов памяти РС3200 и РС4200 цифры обозначают макси мальную пропускную способность. То есть у памяти РС3200 она составля ет 3200 Мбайт/с (400 МГц * 2 * 4 байт), а у памяти РС4200 — Мбайт/с (533 МГц * 2 * 4 байт). При этом речь идет о пропускной способ ности в расчете на один канал.

ГЛАВА 8. ПРОГРАММИРУЕМЫЕ ЛОГИЧЕСКИЕ ИНТЕГРАЛЬНЫЕ СХЕМЫ 8.1. Основные сведения, классификация и области применения программируемых логических ИС Еще недавно в распоряжении разработчика цифровых электронных устройств имелась лишь "жесткая" логика. Искусство проектирования заключалось в достижении поставленной цели с помощью минимального числа микросхем, способных выполнять лишь строго определенные функции. Построение ЦУ на специализированных больших и сверхбольших ИС (БИС и СБИС) позволяет не только улучшить технические характеристики устройств, но и расширить их функциональные возможности. Однако это экономически целесообразно лишь при больших объемах выпускаемых устройств, поскольку разработка и изготовление заказных специализированных БИС и СБИС – это длительный и дорогостоящий процесс.

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

Такие устройства получили название программируемых логических ИС (ПЛИС), программируя ПЛИС, получают требуемое изменение структуры, что и обеспечивает реализация необходимых функций.

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

Однако преимущества ПЛИС и прежде всего их многофункциональность способствуют их широкому применению.

В настоящее время производится ПЛИС с эквивалентной емкостью более 1млн. логических вентилей (двухвходовые ИЛИ-НЕ или И-НЕ).

Для понимания принципа, положенного в основу ПМК, рассмотрим структуру, в которой можно реализовать систему логических уравнений, заданных в СДНФ, и характерных для преобразователя кода Y0 X m1 X m2 X 1 X0 X m1 X m2 X 1 X0 X m1 X m2 X 1 X Yn1 X m1 X m2 X1 X0 X m1 X m2 X 1 X0 X m1 X m2 X 1 X Число конъюнкций в каждой функции не превышает 2m, где m – число аргументов (входов) функции. Число выходов равно числу функций (n) системы.

Очевидно, чтобы реализовать такую систему ЛФ необходимо иметь два блока, в одном из которых осуществляется формирование конъюнкций выходных переменных, а в другом – их дизъюнкция.

Поэтому структура ПЛИС выглядит следующим образом Рис.8.1.

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

Входные переменные (прямые и инверсные) подаются на матрицу "И" и на ее выходах формируются произведения этих переменых (тер мы),которые затем складываются в матрицы ИЛИ, обеспечивая реализа цию требуемых АФ У0,….Уn-1.

По структуре ПЛИС подразделяется на следующие классы:

1.Программируемые логические матрицы(ПЛМ или PLA Programmable Logik Array)-ПЛИС, имеющие программируемые матрицы И и ИЛИ.

2. Программируемае матричная логика (ПМЛ или PAL-Programmable Array Logik)-ПЛИС, имеющие программируемую матрицу И и фиксиро ванную матрицу ИЛИ. В зарубежной литературе ПЛИС этих двух классов объединяют аббревиатурой PLD(Programmable Logik Devices).

3.Базовые матричные кристаллы(БМК),которые также называют вентильными матрицами(ВМ или GA-Gate Array).Они представляют собой набор несоединенных между собой логических элементов.

4.Программируемые вентильные матрицы (ПВМ или FPGA-Field Programmable Gate Array).ПВМ - это ПЛИС, состоящая из логических бло ков, содержащих логические элементы и программируемых матриц соеди нений.

5. Программируемые коммутируемые матричные блоки(ПКМБ или CPLD-Complex Programmable Logic Devices).ПКМБ - это ПЛИС, содержа щие несколько матричных логических блоков, каждый из которых имеет структуру ПМЛ, объединенных комму щей матрицей.

6. ПЛИС комбинируемой архитектуры и типа "система на кристал ле".

8.2. Программируемые логические матрицы ПЛМ(PLA) появились в середине 70-х годов и являются наиболее тради ционным типом ПЛИС, обеспечивающих возможность программируемых матриц И и ИЛИ.

Рассмотрим фрагмент принципиальной схемы ПЛМ(рис.3а),на кото рой точками условно (для упрощения рисунка) показаны соединения со ответствующих строк и столбцов в матрицах И и ИЛИ.На рис.2б показано реальное соединение строк и столбцов матрицы И с помощью диодов, а на рис. 2 в – соединение в матрице ИЛИ с помощью биполярных транзисто ров. Такое соединение использовано в отечественной ПЛМ К556РТ1.

Рис.8.2.

Определим с учетом рис.8.2, какие ЛФ У0 и У1 будут реализованы на ПЛМ, имеющей показанные на рисунке соединения. Так термы Р 0 х1 х 0, Р1 х 2 х1 х 0, Р2 х2 х0, Р 3 х 2 х1. Тогда У 0 t 2 t 3 х 2 х 0 х 2 х 1, а У 1 Р 0 Р1 х 1 х 0 х 2 х 1 х Таким образом, осуществляя программирование ПЛМ, т.е. оставляя лишь необходимые элементы связи шин и столбцов и устраняя ненужные пере жиганием перемычек, можно реализовать большое число ЛФ, определяе мое, количеством входов и выходов ПЛМ.

Основными параметрами ПЛМ являются число входов (m),число вы ходов(n) и число термов(e). Число термов определяет максимальное число конъюнкций в выражении для ЛФ.

УГО микросхем ПЛМ К556РТ1 и К556РТ2 приведены, соответст венно, на рис.8.3,а и 8.3,б.

ПЛМ выполнены по ТТЛШ - технологии.

Их размерность: m= n=8 Р= Длительность цик ла чтения 50-70 нС.

ИМС РТ1 имеет выхо ды с открытым коллек тором, а РТ2- выходы с тремя состояниями.

Рис.8.3.

Возможны следующие режимы работы ПЛМ: считывания;

про граммирования и контроля матриц И, ИЛИ;

программирования и контроля активного уровня выходов (прямой или инверсный);

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

Так режим считывания обеспечивается при UИ.П.=5в и напряжении логического нуля на входе CS.

При программировании ПЛМ импульс программирующего тока, достаточного для пережигания перемычки формируется при подаче на программирующий вход Е напряжение не менее 17В. За каждый цикл про граммирования пережигается только одна перемычка. Для выбора требуе мой перемычки в схему ПЛМ введен дополнительный дешифратор.

8.3.Программируемая матричная логика Большинство современных ПЛИС небольшой степени интеграции относятся к классу ПЛМ (PAL), т.е. имеют программируемую матрицы И и фиксированную матрицу ИЛИ.

Фрагмент схемы ПЛМ приведен на рис.8.4. На рисунке многовходо вые элементы И, упрощенно показаны как одновходовые. Реальное же число входов равно числу обозначенных точкой пересечений линий входа элемента с линиями входных переменных.

Поскольку в ПМЛ матрица ИЛИ фиксирована, то максимальное чис ло конъюнкций в ЛФ ограничено, что приводит к необходимости миними зации ЛФ при ее реализации с помощью ПМЛ.

Рис.8.4.

На схеме рис.8.4 показано упрощенное изображение многовходовых элементов И, в котором элементы И упрощенно показаны одновходовыми.

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

Поскольку в ПМЛ матрица ИЛИ фиксирована, то максимальное чис ло конъюнкций в ЛФ ограничено, что приводит к необходимости миними зации ЛФ при ее реализации с помощью ПМЛ.

К отечественным ПМЛ относятся ИМС КР1556ХЛ8, КР1556ХП4, (ХП6, ХП8), выполненные по ТТЛШ технологии.

Микросхема КР1556ХЛ8имеет двунаправленные выводы, благодаря чему число входов может изменяться от 10 до 18, а число выходов – от до 8.

Микросхемы КР1556ХП4(ХП6, ХП8) имеют в структуре D-триггеры (соответственно4, 6 или 8).

8.4.Базовые матричные кристаллы.

Базовые матричные кристаллы (БМК) или вентильная матрица (ВМ или GA-Gate Array) появились в 1975году, как альтернатива полностью заказным БИС и СБИС. Их стали называть полу заказными БИС и СБИС.

БМК- это полупроводниковая пластина с определенным набором сформированных базовых ячеек (БЯ), соединенных И(ИЛИ) несоединен ных между собой, используемая для создания ИМС путем изготовления межэлементных соединений. Таким образом, БМК является полуфабрика том, на основе которого можно реализовать различные электронные уст ройства, задавая тот или иной вариант соединений.

В первых БМК между БЯ были оставлены свободные зоны для соз дания соединений. Такие БМК назывались канальными (рис. 8.5, а). Кана лы могли быть вертикальные и горизонтальные, либо только вертикальные, как показано на рисунке.

Основой БМК является кристалл полупроводника, в се редине которого расположена матрица данных ячеек, а по его краям – периферийные ячейки, содержащие элементы для ввода и вывода сигналов, выходные усилители, контактные площадки и т.п.

Повышение степени инте грации БМК обуславливает уве личение площади, отводимой под меж соединения, до 60…65% всей площади кристалла.Поиск путей повышения плотности упа ковки привел к созданию беска нальной архитектуры БМК.

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

Рис.8..

Достоинством бесканальной архитектуры является сокращение дли ны и, соответственно, емкости межсоединений, что приводит к уменьше нию задержки передачи сигналов. Бесканальные БМК характерные для КМОП – схемотехники могут работать с тактовыми частотами до 100МГц.

Получила широкое распространение конструкция БК(рис. 5,б), при которой кристалл содержит матрицу некоммутированных БЯ и функцио нально законченные узлы типа регистров, ПЗУ, ОЗУ, создание схем с ог раниченным кругом решаемых задач.

Существует две разновидности организации БЯ: 1. БЯ является функционально законченным узлом, выполняющим элементарную ЛФ ти па И-НЕ, ИЛИ-НЕ и др.;

2. БЯ состоит из набора транзисторов и резисто ров, на основе которых формируются необходимые ЛЭ и другие схемы.

БМК выполняются по ЭЛС-, ТТЛШ-, КМОП- технологиям. В по следнее время появились сверхбыстродействующие БК на основе арсенида галлия и совмещенной БИКМОП- технологии, сочетающей достоинства биполярных и КМОП-структур. Так ИМС К6501ХМ1 выполнена на основе арсенид-галлиевых транзисторов с затвором Шотки. На кристалле содер жится 300 эквивалентных ЛЭ, работающих при максимальной тактовой частоте1ГГц.

Основные параметры некоторых отечественных БМК приведены в таблице 8.1.

Таблица 8. Задержка Мощность Число Число эк вентиля контакт вивалент- вентиля (нС) или MВт/вентиль ных пло ных венти Тип БМК Тип ИМС щадок лей, тактовая шт.

тыс.шт. часто та(МГц) К1520ХМ6 Канальный 10 208 0,35нС ЭСЛ ТРАП-50 Канальный 50 256 2,5нС 0, ТТЛШ 10- Титул-30 КМОП 30 202 2,0нС (статика) В настоящее время зарубежными фирмами изготовляются БМК с миллионами эквивалентных вентилей, обладающих задержками 0.1 ….0, нС.

8.5. Программируемые вентильные матрицы Программируемые вентильные матрицы(ПВМ или FPGA) являются развитием БМК. В них реализованы ЛЭ, триггеры и межсоединения, кото рые могут программироваться пользователем.

Архитектура ПВМ возникает из архитектуры БМК, если БЯ заменить на конфигурируемые логические блоки(КБЛ), а периферийные ячейки ввода-вывода- на блоки ввода вывода(БВВ). Структура кристалла ИМС FPGA приведена на рис. Его центральная часть занимает матрица конфигурируемых логиче ских блоков (КЛБ), а по периметру находятся блоки ввода/вывода(БВВ), соединенные с контактными площадками. Представление о сложности со временных ПЛИС дает таблица 8.2, где приведены сведения о числе КЛБ и БВВ, имеющихся в FPGA серии ХС4000.

Рис.8. Таблица 8.2.

На кристалле имеются Микросхема Длина программы, бит КЛБ БВВ Вентили Триггеры ХС4005 186 112 5000 616 ХС4010 400 160 10000 1120 ХС4013 576 192 13000 1536 ХС4020 784 224 20000 2016 ХС4028 1024 256 28000 2560 ХС4036 1286 288 36000 3168 ХС4044 1600 320 44000 3840 ХС4052 1936 352 52000 4576 ХС4062 2304 384 62000 5376 ХС4085 3136 448 85000 7182 Вентили и триггеры в данном случае не самостоятельные элементы, а входят в состав указанных блоков.

Каждый из БВВ способен быть входным или выходным, а связанный с ним внешний вывод микросхемы- входом (IPAD), выходом (OPAD) или быть двунаправленным (IOPAD). По углам кристалла расположены вспо могательные блоки (ВБ).Свободную от логических элементов площадь за нимают каналы трассировки, где проложено большое число проводников, на пересечениях которых находятся программируемые ключи. Каждый ключ состоит из шести полевых транзисторов, соединенных, как показано на рис.8. Задавая открытое или закрытое состояние каждого транзистора, можно соединить КЛБ между собой и с БВВ нужным образом.

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

Схема самого простого БВВ (он применяется в микросхемах серии ХС5200) показана на рис.8. Рис.8.7.

Рис.8.8.

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

Программируемые переключатели S1,S2 обеспечивают прямую или ин версную связь БВВ с матрицей КЛБ.С помощью переключателя S3 при не обходимости инвертируют входной сигнал. Линия задержки U1 служит для выравнивания времен распространения сигналов по различным цепям ПЛИС. Буфер DD1 снабжен устройством программирования длительности фронта выходного сигнала. Пологий фронт, не снижая внутреннего быст родействия ПЛИС, избавляет от "звона" при плохом согласовании внеш ней нагрузки БВВ.

8.6.Программируемые коммутируемые блоки.Программируемые коммутируемые матричные блоки (ПМКБ или CPLP- Complex Programmable Logic Devices) явились развитием PLD и со держат объединенные коммутационной матрицей (программируемой мат рицей соединений-PIA) логические блоки (ЛБ), имеющие архитектуру ПML(PAL). Такие логические блоки содержат макроячейки, каждая из ко торых состоит из программируемой матрицы логических элементов И, фиксированной матрицы ИЛИ и других элементов. На периферии кристал ла CPLD имеются блоки ввода и вывода сигналов.

Система коммутации CPLDявляется не сегментированной, а непре рывной системой связей и обеспечивает возможность коммутации ЛБ друг с другом, подачи на требуемые входы ЛБ сигналов от различных источни ков: сигналов обратной связи, сигналов от элементов ввода и вывода и т. п.

Упрощенный фрагмент CPLDсемейства MAX 3000 фирмы Altera приведен на рис.8.9.

Рис.8.9.

Сигналы, поступающие сверху на ПМС и ЛБ – это сигналы от спе циализированных входов, которые на рис. Не показаны. К таким сигналам относятся глобальные (единые для всех блоков ПЛИС) сигналы тактиро вания и сброса, сигналы разрешения выходов.

Основу MAX3000 составляют ЛБ, которые соединяются с помощью ПМС. Каждый ЛБ непосредственно связан со своим блоком ВВ и имеет определенное число входов и сигналов обратной связи, подаваемых на ПМС. Каждый ЛБ содержит программируемую матрицу элементов И, мат рицу распределения термов, позволяющую объединять логические произ ведения по ИЛИ, и триггер.

Реализовать ЛФ с большим числом входных переменных можно, объединяя макроячейки,входящие в один ЛБ, с помощью логических рас пределителей. ЛБ позволяет реализовать схемы с элементами памяти.

8.7. ПЛИС комбинированной архитектуры и типа "система на кристалле".

Некоторые типы ПЛИС трудно отнести к структурам FPGA и CPLD, так как они имеют комбинированную структуру и сочетают достоинства структур FPGA и CPLD.

К таким ПЛИС можно отнести СБИС FLEX10K, FLEX10KA, FLEX10KE, (Flexible Logic Element Matrix), которые являются весьма рас пространенными в настоящее время. Фрагмент структуры FLEX10K при веден на рис. 8.10.

Рис.8.10.

Микросхема FLEX10K содержит логические блоки ЛБ, реконфигу рируемые блоки памяти БП (от 3 до 20), строки(1) и столбцы(2) глобаль ной программируемой матрицы соединений и элементы ввода /вывода ЭВВ, присоединенные к концам строк и столбцов. Имеются глобальные цепи управления, синхронизации и управления вводом/выводом. Блоки памяти БП представляют собой статические ОЗУ и состоят из модуля па мяти, локальной матрицы соединений, буферных регистров и программи руемых мультиплексоров. БП расположены в середине каждой строки матрицы логических блоков.

Блок памяти используется не только как блок памяти, но и позволяет реализовать различные устройства, такие как АЛУ, сумматоры, перемно жители, имеющие высокое быстродействие(тактовая частота до 100МГц).

Логический блок ЛБ содержит логическую матрицу соединений и логических элементов.

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

Табличный функциональный преобразователь реализует ЛФ с малы ми задержками. Триггер, который может функционировать как RS-, JK-, D и Т-триггер, используется как отдельный элемент, или совместно с комби национной частью логического элемента.

Схемы ускоренного переноса и каскадирования позволяют расши рить функциональные возможности ЛЭ, число которых в различных мик росхемах FLEX10K составляют от 576 до 12160.

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

Такие микросхемы стали называть "система на кристалле"(SOS- Sys tem On Chip) Особенностью таких систем является то, что они, помимо областей, в которых путем программирования можно реализовать различные функ циональные устройства, содержат специализированные области с заранее определенными функциями. В таких специализированных областях реали зованы блоки, используемые в электронных системах разного назначения, такие как ОЗУ, умножители и т.п.

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

К ПЛИС типа SOC относятся семейства APEX20K фирмы Altera, VIRTEX фирмы Xilinx, ProASIC500K фирмы Actel и др.

ПЛИС семейства APEX20K сочетает в себе достоинства FPGA и CPLD. В состав ИМС входят модули памяти и макроячейки, имеющие программируемую И и параллельный логический расширитель.

Логические элементы данного семейства похожи на ЛЭ FLEX10K. В состав ЛБ входят 10ЛЭ, а логические блоки объединяются в мегаблоки, имеющие собственные непрерывные матрицы соединений.

В различных ИМС семейства APEX20K содержится от 26 до встроенных блоков памяти, от 4160 до 42240 логических элементов, от 4224 макроячеек, от 252 до 780 выводов, а максимальное число эквива лентных вентилей достигает 2670000.

ГЛАВА 9. МИКРОПРОЦЕССОРЫ 9.1. Понятие о программном управлении преобразованием информации Элементную базу цифровых устройств (ЦУ) составляют интеграль ные схемы (ИС). По уровню интеграции ИС делятся на несколько катего рий: МИС, СИС, БИС, СБИС (соответственно малые, средние, большие и сверхбольшие ИС). Практическое использование находят все категории ИС.

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

С появлением БИС и СБИС схемы с тысячами и даже миллионами логических элементов стали размешаться на одном кристалле. При этом возникла проблема снижения универсальности ИС и, соответственно, уве личение себестоимости, так как высокие затраты на проектирование БИС/СБИС относились бы к небольшому объему их выпуска.

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

Это обеспечивает микропроцессорам массовое производство с соответст вующим снижением стоимости.

В виде БИС/СБИС с программируемой структурой потребителю предлагается кристалл, содержащий множество логических блоков, соеди нения между которыми осуществляет пользователь. Промышленность по лучает возможность производить кристаллы массовым тиражом, не адре суясь к отдельным потребителям. Потребитель сам программирует струк туру ИС соответственно разрабатываемому ЦУ Два указанных метода имеют большие различия. Микропроцессоры, как правило, реализуют последовательную обработку информации, выпол няя большое число отдельных действий, соответствующих командам, что может не обеспечить требуемого быстродействия. В БИС/СБИС с про граммируемой структурой обработка информации происходит без разбие ния этого процесса на последовательно выполняемые элементарные дейст вия. Задача решается "целиком", ее характер определяет структуру устрой ства. Преобразование данных происходит одновременно во многих частях устройства. Сложность устройства зависит от сложности решаемой задачи, чего нет в микропроцессорных системах, где сложность задачи влияет лишь на программу, а не на аппаратные средства ее выполнения.

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

С ростом уровня интеграции ИС (в настоящее время один кристалл может содержать более 40 миллионов транзисторов, например МП Pentium 4) в проектировании на их основе все больше усиливается аспект, который можно назвать интерфейсным проектированием. Задачей разработки ста новится составление блоков из субблоков стандартного вида путем пра вильного их соединения. Успешное проектирование требует хорошего знания номенклатуры и параметров элементов, узлов и устройств цифро вой аппаратуры и привлечения систем автоматизированного проектирова ния (САПР) для создания сложных систем.

ИС широкого применения изготовляются по технологиям КМОП, ТТЛШ и др. Элементы КМОП обладают рядом уникальных параметров (малая потребляемая мощность при невысоких частотах переключения, высокая помехоустойчивость, широкие допуски на величину питающих напряжений, высокое быстродействие при небольших емкостных нагруз ках). Эти элементы доминируют в схемах внутренних областей БИС/СБИС. За ТТЛШ осталась в основном область периферийных схем, где требуется передача сигналов по внешним цепям, испытывающим зна чительную емкостную нагрузку. Элементы ЭСЛ (эмиттерно-связанная ло гика) обеспечивают максимальное быстродействие, но ценой повышения потребляемой мощности, что снижает достижимый уровень интеграции.

9.2. Общие сведения о микропроцессорах и микропроцессорных системах Микропроцессором (МП) называют построенное на одной или не скольких БИС/CБИС программно-управляемое устройство, осуществляю щее процесс обработки информации и управления им.

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

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

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

Совокупность БИС/СБИС, пригодных для совместного применения в составе микроЭВМ, называют микропроцессорным комплектом (МПК).

Понятие МПК задает номенклатуру микросхем с точки зрения возможно стей их совместного применения (совместимость по архитектуре, электри ческим параметрам, конструктивным признакам и др.). В состав МПК мо гут входить микросхемы различных серий и технологических типов при условии их совместимости.


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

Типична трехшинная структура МПС с шинами адресов ША (англий ское название АВ - Аdress Виs), данных ШД (английское название DВ Data Вus) и управления ШУ (английское название СВ - Сопtrol Вus).

На рис. 9.1 приведена типовая структура микропроцессора. Основу МП составляет арифметико-логическое устройство (АЛУ), выполняющее арифметические, логические операции и операции сдвига над данными, представленными в двоичном коде. В АЛУ имеется два входа для операн дов и один выход для результата.

Типичный набор операций, реализуемых в АЛУ, включает в себя следующие:

а) сложение двух операндов;

б) вычитание двух операндов;

в) десятичная коррекция результата арифметической операции;

г) инкремент (увеличение на единицу) одного операнда;

д) декремент (уменьшение на единицу) одного операнда;

е) логическая функция И двух операндов;

ж) логическая функция ИЛИ двух операндов;

з) логическая функция ИСКЛЮЧАЮЩЕЕ ИЛИ двух операндов;

и) логическая функция НЕ одного операнда;

к) сдвиг вправо на один разряд одного операнда;

л) сдвиг влево на один разряд одного операнда;

м) сдвиг по циклу вправо на один разряд одного операнда;

н) сдвиг по циклу влево на один разряд одного операнда;

Более сложные операции (умножение, деление и др.) выполняются по подпрограммам.

Рис.9. При работе с операндами в АЛУ возникают различные состояния, связанные, например, с нулевым и отрицательным результатами, с пере полнением разрядной сетки и т. п.. Чтобы фиксировать эти события и опе ративно влиять на ход обработки данных, в структуре МП используется специальный регистр, в котором значения отдельных бит соответствуют различным событиям: состояние переноса/заема, значение знака, нулевой результат и др.. Такой регистр получил название регистра слова состоя ния процессора (ССП). Биты событий называют флажками(флагами), а ре гистр иногда называют регистром флагов.

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

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

Остальные рабочие регистры используются в операциях по усмот рению программиста и называются регистрами общего назначения (РОН).

Один из операндов часто хранится в одном из РОН, другой же – в аккуму ляторе.

Для указания МП необходимых действий при выполнении про граммы используются команды, поступающие из внешней памяти по шине данных. Для приема и хранения текущей команды используется регистр команд (РК). Для идентификации команды используется дешифратор ко манд (ДК), в функции которого входит определение типа текущей коман ды и запуск такой последовательности действий МП, которая ее выполнит.

Процесс управления всеми элементами МП выполняет устройство управления (УУ), которое принимает внешние сигналы и формирует необ ходимые ответные, управляющие и синхронизирующие сигналы, необхо димые для работы внешних устройств. Для формирования синхронизи рующих сигналов в МП имеется генератор тактовых импульсов (ГТИ).

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

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

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

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

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

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

По однонаправленной адресной шине МП посылает адреса, опреде ляя объект, с которым будет производиться обмен, по шине данных (дву направленной) обменивается данными с модулями (блоками) системы, по шине управления идет обмен управляющей информацией.

Рис. 9.2. Структура микропроцессорной системы Любая МПС (рис.9.2) содержит МП, память и интерфейс вво да/вывода. Память МПС включает постоянное (ПЗУ) и оперативное (ОЗУ) запоминающие устройства.

ПЗУ хранит основную программу, подпрограммы, фиксированные данные (константы). Оно энергонезависимо и не теряет информацию при выключении питания.

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

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

Для подключения ВУ необходимо привести их сигналы, форматы слов, скорость передачи и т.п. к стандартному виду, воспринимаемому данным МП. Эта операция выполняется специальными блоками, называе мыми адаптерами (интерфейсными блоками ввода-вывода).

Кроме указанных блоков, в состав МПС входят обычно и более сложные, чем адаптеры, блоки управления внешними устройствами — контроллеры. К их числу относятся, прежде всего, контроллеры прерыва ний и прямого доступа к памяти. Имеются также контроллеры клавиату ры, дисплея, дисковой памяти и т. д.

Контроллеры прерываний обеспечивают обмен с внешними устрой ствами в режиме прерывания (временной остановки) выполняемой про граммы для обслуживания запроса от внешнего устройства.

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

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

9.3. Структура микропроцессора К1821ВМ85А При изучении МП будем ориентироваться на конкретный микро процессор К1821ВМ85А — аналог МП Intel 8085A. Это простой для изу чения МП, на котором легко проследить основные принципы работы. Та кие МП используются в системах управления различной аппаратурой и в настоящее время.

Однокристальный МП К1821ВМ85А (ВМ85А) является усовершен ствованным 8-разрядным МП, имеющим полную архитектурную совмес тимость со своим предшественником КР580ВМ80. Разработка этого МП была направлена на повышение производительности, скоростных характе ристик и уменьшение числа БИС, необходимых для построения МПС. В результате удалось на одном кристалле кремния разместить устройство, функционально эквивалентное трем БИС: микропроцессору КР580ВМ80, генератору тактовых импульсов КР580ГФ24 и системному контроллеру КР580ВК28/ВК38.


Структурная схема микропроцессора К1821ВМ85А приведена на рис. 9.3.

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

- АЛУ— арифметико-логическое устройство, выполняющее действия над двумя словами-операндами, подаваемыми на его входы.

В АЛУ имеется также бок десятичной коррекции (ДК), предназна ченный для перевода двоичных чисел в двоично-десятичные;

- A — регистр-аккумулятор, выполненный на двухступенчатых триг герах и способный хранить одновременно два слова (один из операндов и результат операции). Аккумулятор служит источником и приемником дан ных;

- РВХ — регистр временного хранения (на время выполнения опера ции) одного из операндов (слова данных);

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

Формат регистра флажков представляется в виде:

D7 D6 D5 D4 D3 D2 D1 D S Z 0 АС 0 Р 1 С Назначение битов регистра флажков приведено в таблице 9.1.

Разряды D5, D3,D1 содержат константы и для признаков не используются.

Таблица 9. Имя Название Назначение флага признака Z=1 при нулевом результате в АЛУ;

Z Нуль (Zero) Z=0 при ненулевом результате операции C=1 при возникновении переноса или за Перенос С ема в старшем бите результата операции;

(Carry) С=0 при отсутствии переноса или заема S=1 при отрицательном результате опера ции;

S Знак (Sign) S=0 при положительном результате опера ции P=1 при четном числе единиц в байте ре зультата;

P Четность (Parity) P=0 при нечетном числе единиц в байте ре зультата Дополнительный AC=1 при возникновении переноса или за AC перенос (Auxil- ема между тетрадами результата операции;

iary Carry) AC=0 при отсутствии переноса или заема - Блок регистров. Два регистра, а именно, регистр аккумулятора и регистр временного хранения операнда рассмотрены выше.

С внутренней шиной данных через мультиплексор связан блок реги стров, часть регистров которого специализирована, а другая - регистры общего назначения, - РОН) программно доступна. Регистры W и Z пред назначены только для временного хранения данных при выборке команды из памяти и недоступны для программиста. Регистры В, С, D, Е, Н, L от носятся к регистрам общего назначения и могут быть использованы по ус мотрению программиста. Эти восьмиразрядные регистры могут приме няться либо по отдельности, либо в виде пар В-С, D-E, H-L, представляю щих собой 16-разрядные регистры. Пары регистров именуются по обозна чению первых регистров пары, т.е. В, D, Н. Пара H-L, как правило, ис пользуется для размещения в ней адресов при косвенной регистровой ад ресации.

- Указатель стека — 16-разрядный регистр. Стек (магазинная па мять) удобен для запоминания массива слов, т. к. при этом не требуется адресовать каждое слово отдельно. Стек применяется при запоминании со стояний регистров в момент прерывания программы. Порядок ввода слов в стек и их считывания предопределены его устройством. При организации типа LIFO (Last In — First Out) последнее записанное в стек слово при счи тывании появляется первым. Стек LIFO по порядку записи-считывания подобен стопке тарелок — для использования снимается верхняя, т. е. по следняя положенная, затем вторая и т. д. Интересно, отметить, что сам термин "стек" произошел именно от обозначения такой стопки.

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

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

Основное назначение стека — обслуживание прерываний програм мы и выполнение подпрограмм.

- Счетчик команд предназначен для формирования адреса коман ды, и может обращаться в любую из 64К ячеек адресного пространства (АП). При сбросе МП программный счетчик принимает нулевое состоя ние, которое является адресом первой исполняемой команды, иначе гово ря, выполнение программы начинается с нулевой ячейки. Длина команды составляет 1...3 байта. Содержимое программного счетчика после выборки очередного байта из памяти автоматически инкрементируется, так что в PC появляется адрес следующей команды, если текущая команда была од нобайтовой, или следующего байта текущей команды в противном случае.

Второй и третий байты команды поступают в регистры W и Z, которые не адресуются программой и используются только блоком внутреннего управления. Схема INC/DEC (Increment/Decrement) изменяет передавае мые через нее слова на +1 или -1.

- РК — регистр команд. Принимает из памяти первый байт коман ды, который поступает на дешифратор команд и формирователь машин ных циклов. Этот блок генерирует сигналы, необходимые для реализации машинных циклов, предписанных кодом операции.

- Устройство синхронизации и управления использует выход дешифратора команд для синхронизации циклов, генерации сигналов состояния и управления шиной (внешними устройствами микропроцес сорной системы).

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

- БА — буфер адреса с тремя состояниями выхода. БА выдает сигна лы старших разрядов адреса на линии адресной шины ШA15-8;

- БА/Д — буфер шины адресов/данных с тремя состояниями выхода.

БA/Д передает на шину ША/Д с разделением во времени младший байт адреса A7-0 или байт данных;

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

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

- Блок управления последовательным вводом – выводом пред ставляет простой последовательный интерфейс, осуществляющий обмен данными. Выход SOD (Serial Output Data) предназначен для вывода после довательных данных, а вход SID (Serial Intput Data) – для ввода последова тельных данных.

Функции выводов и сигналов:

- ША15-8 — выходные линии с тремя состояниями для выдачи стар шего байта адреса памяти или полного адреса ВУ. Переходят в третье со стояние (ТС) при подаче сигналов HOLD, RESET и в машинном цикле ос танов (HALT);

- ШA/Д7-0 — двунаправленные мультиплексированные линии с тре мя состояниями для выдачи младшего байта адреса памяти или полного адреса ВУ в первом такте машинного цикла, после чего используются как шина данных. При адресации ВУ адресная информация обеих полушин (ША15-8 и ШA7-0/Д) дублируется;

- ALE — строб разрешения загрузки младшего байта адреса памяти во внешний регистр для его хранения в течение машинно го цикла. Сиг нал ALE представляет собой один импульс Ф1, выделяемый в первом такте Т1 каждого машинного цикла. Он является синхросигналом начала ма шинного цикла. Регистр загружается задним фронтом сигнала ALE;

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

Выводы переходят в третье состояние в режимах HOLD, HALT и RESET;

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

- S1, S0 — сигналы состояния МП, сообщаемые внешней среде. Фор мируются в начале и сохраняются во время всего машинного цикла;

- IO / M — сигнал выбора памяти или внешнего устройства. При высоком уровне происходит обращение к ВУ, при низком — к памяти.

- X1, Х2 — эти выводы присоединяются к кварцевому резонатору или другим частотно-задающим цепям для обеспечения работы внутреннего генератора синхроимпульсов МП.

- RESIN ( RESET IN ) — вход сигнала сброса МП в начальное состоя ние. Сигнал может поступить в любое время по команде оператора. Автома тически формируется при включении питания. Под его воздействием сбра сываются счетчик команд и РК, триггеры разрешения прерывания, подтвер ждения захвата и др.;

-.CLK — выход синхроимпульсов для микропроцессорной системы.

- RESET — выходной сигнал сброса для внешних модулей системы, привязанный к тактовым импульсам CLK, т. е. отличающийся от сигнала RESIN по фазе;

- INTR (Interrupt Request) — вход запроса векторного прерывания, вызывающий генерацию строба INTA, если прерывание разрешено про граммой. Адрес подпрограммы, вызываемой этим входом, выдается внеш ним устройством. При сбросе прием сигнала запрещается (прерывания за прещены);

- INTA (Interrupt Acknowledge) — выход строба подтверждения век торного прерывания после завершения текущего командного цикла. Ис пользуется для чтения вектора прерывания;

- RST 5,5;

RST 6,5;

RST 7,5 — входы запросов радиального прерыва ния. Приоритеты фиксированы, высший приоритет у входа RST 7,5. При оритеты всей группы запросов выше приоритета запроса INTR. Запросы маскируемые, причем независимо друг от друга;

- TRAP — вход запроса немаскируемого прерывания, имеющий мак симальный приоритет;

- SID, SOD (Serial Input Data, Serial Output Data) — вход и выход по следовательной передачи данных. По команде RIM (reset interrup mask – сброс маски прерывания) входной бит загружается в старший разряд акку мулятора, по команде SIM (set interrup mask – установка маски прерыва ния) выводится из этого разряда;

- HOLD — сигнал запроса захвата шин. Формируется внешним уст ройством;

- HLDA — сигнал подтверждения захвата (Hold Acknowledge) шин.

Является ответом на сигнал HOLD, формируемым в конце текущего ма шинного цикла. Свидетельствует об отключении МП от системных шин.

При этом шины и линии управляющих сигналов RD, WR, IO/M и ALE пе реводятся в третье состояние. Это необходимо для осуществления режима прямого доступа к памяти, при котором контроллер прямого доступа к па мяти (DMA – controller) осуществляет обмен данными с ЗУ без участия МП.

Условное графическое обозначение МП К1821ВМ85А, на котором показаны рассмотренные выше выводы, приведено на рис.9.4.

Рис. 9. 9.4. Синхронизация и циклы работы МП Частотно-задающие элементы, подключаемые к выводам X1 и Х2, совместно с внутренними элементами МП образуют схему генератора так товых импульсов. Возможны несколько вариантов частотно-задающих элементов (рис.9.5). Кварц может быть подключен непосредственно к. вы водам X1 и Х2. Конденсаторы емкостью 20 пФ предназначены для надеж ного запуска генератора.

Рис.9. Параллельный LC-контур также может быть подключен непосред ственно к выводам Х1 и X2. При невысоких требованиях к стабильности частоты можно использовать частотно-задающую RC-цепочку.

Для образования сигналов синхронизации CLK импульсы с выхода генератора подаются на вход счетного триггера (рис.10.6). Триггер форми рует две последовательности противофазных импульсов Ф1 и Ф2 для так тирования внутренних схем МП. Сигнал синхронизации системы CLK синфазен импульсам Ф2. Основная тактовая частота сигнала CLK микро процессоров ВМ85А равна 3 МГц. Существуют также БИС, рассчитанные на работу с частотой 5 МГц, например 8085А-2, что дополнительно повы шает производительность МП данного типа.

Сигнал ALE формируется как один импульс последовательности Ф1, выделяемый из нее в первом такте (Т1) каждого машинного цикла. Буфер выдачи сигнала ALE во внешние цепи имеет вход разрешения EN. Часто та синхросигналов МП в два раза ниже частоты генератора.

Рис. 9. При естественном следовании команд МП, начав работу, выбирает из памяти и выполняет одну команду за другой, пока не дойдет до коман ды "Останов" (HАLT). Выборка и выполнение одной команды образуют командный цикл (КЦ). Командный цикл состоит из одного или нескольких машинных циклов (МЦ). Каждое обращение к памяти или ВУ требует ма шинного цикла, который связан с передачей байта в МП или из него.

Микропроцессор К 1821 имеет следующие типы машинных циклов:

1. Выборки команды (OF, Opcode Fetch).

2. Чтения из памяти (MR, Memory Read).

3. Записи в память (MW, Memory Write).

4. Чтения из ВУ (IOR, Input-Output Read).

5. Записи в ВУ (IOW, Input-Output Write).

6. Подтверждения прерывания (INA, Interrupt Acknowledge).

7. Освобождения шин (BI, Bus Idle).

8. Останов (HALT).

В начале каждого машинного цикла генерируются сигналы состояния S1S0, которые совместно с сигналом IO/M идентифицируют тип машинного цикла.

Сигналы состояния и управляющие сигналы RD, WR и INTA для раз личных машинных циклов приведены в таблице 9.2.

Таблица 9. Сигналы состояния Сигналы управления Тип МЦ IO/M S1 So RD INTA WR OF 0 1 1 0 1 MR 0 1 0 0 1 MW 0 0 1 1 0 IOR 1 1 0 0 1 IOW 1 0 1 1 0 INA 1 1 1 1 1 BI TC X X 1 1 HALT ТС 0 0 TC TC В приведенной таблице через TC обозначено третье состояние.

Командный цикл (КЦ) начинается с выборки команды OF. Первый машинный цикл всегда OF, в нем МП получает первый байт команды. По сле этого могут быть еще один или два машинных цикла типа MR, по скольку команда может быть однобайтной, двухбайтной или трехбайтной.

После выборки и декодирования команды могут понадобиться до полни-тельные машинные циклы для ее выполнения. Всего в командном цикле может быть от одного до пяти машинных циклов.

Машинный цикл (МЦ) состоит из тактов — интервалов между одно именными фронтами тактовых импульсов, в которых выполняются типо вые действия, рассмотренные ниже. Число тактов в различных машинных циклах — 3...6. Большинство машинных циклов содержат три такта.

9.5. Процессы при выполнении команд Рассмотрим порядок выполнения ассемблерной команды СТА ОF12Н. Она служит для запоминания содержания аккумулятора в ячейке ЗУ с адресом OF12Н. Компилирующая ассемблерная программа переводит эту команду на машинный язык, т.е. в двоичное представление, которое может быть интерпретировано процессором. В машинном языке младшие и старшие байты адреса заменены друг на друга.

Различные способы записи команды STA OF12Н приведены в табли це 9.3. Как следует из таблицы рассматриваемая команда состоит из трех байтов.При выполнении команды содержание счетчика команд по адрес ной шине подается на адресные входы ЗУ и выбранный код команды за гружается в регистр команд и декодируется в декоре команд.

Этот машинный цикл называется "выборка операционного кода ко манды" (OF-operation code fetch). В этом цикле процессор определяет ко личество байтов и машинных циклов, необходимых для выполнения ко манды.

Таблица 9. Ассемблерный способ записи STA OF12Н Шестнадцатеричный способ записи 32 OF Двоичный способ записи 00110010 0001 0010 В нашем примере это два байта, задающих адрес ячейки ЗУ, в которую должно быть перезаписано содержание аккумулятора. В конце цикла OF счетчик команд инкрементируется, т.е. увеличивает свое значение на еди ницу, и его значение указывает на номер ячейки ЗУ, в который записан младший байт адреса команды (12Н).

В следующем цикле, называемом "чтение из памяти" (MR- read) из ЗУ считывают младший байт адреса. При этом сначала счетчик команд выдает код адреса младшего байта на адресную шину, а затем увеличивает свое значение на 1.

Следующий цикл, также является MR-циклом. В нем считывается старший байт команды.

В последнем цикле, называемом "запись в память" (MW- memory write), содержание аккумулятора записывается в ячейку ЗУ.

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

Такт 1.

В начале цикла ОF посылаются управляющие сигналы IO./M=0, S1=1,S0=0 и сигнал приоритета INTA=0. Содержание счетчика команд РС выдается на адресную шину, причем старшая часть адреса РСн через буфер А15-А8, а младшая часть РС2 через буфер АD7-AD0 и внешний регистр хра нения по сигналу ALE=1.

Такт 2.

В начале второго такта устанавливается сигнал считывания RD=0.

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

Рис.9. Такт 3.

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

протекает OF-цикл. Значение счетчика команд инкрементируется, т.е. воз растает на 1.

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

Цикл считывания из памяти (MR) Цикл считывания памяти представлен на рис. 9.8. в виде протекаю щих друг за другом циклов MR1 и MR2, причем цикл MR2 содержит со стояние ожидания (wait state) Tw. Такт Tw имеет место тогда, когда на вхо де READY сигнал READY=0. Этот сигнал показывает, что ЗУ с более вы соким временем обращения (доступа) еще выдает данные на ШD.В том случае,когда время доступа мало и ЗУ могут выдать данные из ячейки на ШD в течении одного такта, сигнал READY=1.

Рассмотрим временную диаграмму этого цикла(рис. 9.8.) Рис.9. Такт1.

В начале цикла посылаются управляющие сигналы и сигнал приори тета. Процессор выдают байт старших адресов на АШ, а сигнал ALE=1 вы зывает загрузку байта младших адресов во внешний регистр. Программ ный счетчик после этого инкрементируется.

Такт2.

К началу второго такта сигнал считывания RD =0 при этом ЗУ выда ет на ШD байт данных ячейки памяти, адрес которой задан в первом такте.

После интервала, соответствующего времени обращения, на ШD появля ются данные, записанные в ячейке памяти.

Такт3.

В этом такте данные выводятся на ШD и сигнал считывания вновь управляется на уровне RD = 1.

Во втором из показанных циклов (МР2) сигнал READY в такте Т равен логическому нулю, и процессор обеспечивает такт ожидания Тw.

Только после того, как сигнал READY в момент прихода тактового им пульса CLK становится равным 1, данные выводятся на шину данных.

Цикл записи в память (MW) Циклы записи в память MW1 и MW2, не содержащие и содержащие интервал ожидания соответственно, приведены на рис. 7.9.

Такт 1.

В начале цикла посылаются управляющие сигналы IO / M 0, SO=0, SO=1, что соответствует циклу записи в память.При READY=1 и WR процессор выдает на адресную шину адрес ячейки ЗУ, в которую должна произойти запись байта данных.



Pages:     | 1 |   ...   | 4 | 5 || 7 |
 





 
© 2013 www.libed.ru - «Бесплатная библиотека научно-практических конференций»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.