Структура ЦСП TMS320C6x
Функциональная схема ЦСП TMS320C6x приведена на рис. 54, где цветом выделено ядро ЦСП – центральное процессорное устройство (ЦПУ).
Контроллер прямого доступа в память (ПДП) занимается передачей данных между областями памяти без участия ЦПУ. Кроме того, он используется для начальной загрузки программы в память процессора.
Интерфейс внешней памяти (ИВП) предназначен для обмена данными с внешней памятью и быстродействующими внешними устройствами.
Два 32-разрядных таймера используются для задания временных событий, реализации счетчиков, генерации импульсов, прерывания процессора. Процесс прерывания заключается в прерывании выполнения текущей программы и переходе к выполнению некоторой другой программы. По завершении выполнения этой другой программы процессор возвращается к прерванной программе и продолжает ее выполнение.
Логика снижения энергопотребления (ЛСЭ) включает один из трех возможных «спящих» режимов процессора. В первом режиме тактовые импульсы снимаются только с ядра процессора, во втором – и с периферии, размещенной на кристалле, а в третьем режиме тактовая частота снимается практически со всего кристалла.
ЦПУ включает в себя 8 независимых функциональных устройств (модулей) – два умножителя (устройства .М) и 6 арифметико-логических устройств (устройства .L, .S и .D). Арифметико-логическое устройство (АЛУ) – это КЦУ, реализующее арифметические (кроме умножения и деления) и логические операции.
Каждая четверка модулей связана с набором регистров общего назначения (РОН), создавая тем самым разделение ядра на сторону А и сторону В. РОН программно доступны, т. е. с помощью соответствующих команд программист может управлять их содержимым. Следовательно, они могут быть использованы для самых различных целей – поддержки различных типов адресации памяти данных, хранения промежуточных результатов вычислений и в качестве источников операндов. РОН каждой стороны представляет собой 16 32-разрядных регистров, связанных с памятью данных двумя шинами – шиной загружаемых из внутренней памяти данных и шиной загружаемых в эту память данных.
Два АЛУ – .D1 и .D2, используются только для формирования исполнительного адреса ячейки памяти данных. При этом шины адреса, управляемые D-устройствами, позволяют использовать адрес, сформированный в РОН одной стороны, для операций с данными в РОН другой стороны. Данные из функциональных устройств сначала помещаются в РОН, а затем по адресам, формируемым D-устройствами, идет обмен с памятью данных. При этом возможна одновременная выборка из памяти данных до 64 разрядов по двум подаваемым адресам.
Один из модулей .L, .S или .M каждой стороны через соответствующую перекрестную шину (2х или 1х) имеет доступ к РОН противоположной стороны, причем только как к источникам операнда.
В одном и том же такте к РОН своей стороны возможен доступ всех модулей этой стороны одновременно. Однако к РОН противоположной стороны может иметь только один модуль данной стороны.
Поскольку модули независимы, в каждом такте процессор может выдавать им до восьми 32-разрядных команд, которые могут выполняться параллельно (одновременно), последовательно или параллельно-последовательно. Блок команд, которые выполняются параллельно (в одном такте), называется выполняемым пакетом. Блок команд, содержащий до 8 выполняемых пакетов, называется пакетом выборки. Таким образом, пакет выборки состоит из восьми выполняемых пакетов, если 8 команд выполняются последовательно, из одного выполняемого пакета, если 8 команд выполняются параллельно, и из двух – семи выполняемых пакетов, если 8 команд выполняются параллельно-последовательно.
Процесс обработки команд в ядре начинается загрузкой из программной памяти пакета выборки. Диспетчер команд распределяет каждую из 32-разрядных команд пакета на свой модуль для исполнения. Очередной выполняемый пакет размещается для исполнения в функциональных устройствах в каждом такте. Пакет же выборки из программной памяти не загружается до окончания выполнения текущего пакета выборки.
Дата добавления: 2020-10-25; просмотров: 382;