Аппаратная  реализация

Riistvaraline realisatsioon

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

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

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

НЕ нашли? Не то? Что вы ищете?

       В последнее время наблюдается тенденция использования стандартного технического оборудования (hardware), которое настраивается на решение конкретных задач управления программными средствами (software). Это оборудование может быть универсальным (ЭВМ, микроЭВМ, персональные компьютеры PC) или специализированным (микроконтроллеры — МК). Если процессы управления не очень сложны и не требуют большого объема памяти, высокой скорости вы­числений и разветвленной периферии, то большинство разработчиков отдают предпочтение программно-управляемым микроконтроллерам. Как и большинство современных микросистем, МК строятся по магистрально-модульному принципу, когда все модули

микроконтроллера подключаются к единой внутрисистемной магистрали (рис. 1.1). Микроконтроллер включает в себя центральный процессор (ЦП), постоянное и оперативное запоминающие устройства (ПЗУ, ОЗУ), цифровое и аналоговое устройства ввода-вывода (ЦВВ, ABB), таймер (Т) и устройство прерываний (УПР).

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

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

       Аналоговые устройства ввода-вывода служат для контроля состояния аналоговых блоков объекта управления (напряжение, ток, температура, давление, перемещение и др.) и выработки сигналов управления непрерывными процессами (скорость вращения двигателя, мощность калорифера, перемещение механической заслонки и др.). Таймер используется для организации управления в реальном масштабе времени. Он фиксирует время возникновения отдельных событий, формирует временные интервалы между событиями, осуществляет счет событий. Таймер является, по существу, внутренними часами микроконтроллера.

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

  Программимруемая логимческая интеграмльная схемма (ПЛИС, англ. programmable logic device, PLD) — электронный компонент, используемый для создания цифровых интегральных схем. В отличие от обычных цифровых микросхем, логика работы ПЛИС не определяется при изготовлении, а задаётся посредством программирования. Для программирования используются языки Verilog, VHDL.Некоторые производители ПЛИС предлагают процессоры для своих ПЛИС, которые могут быть модифицированы под конкретную задачу, и затем встроены в ПЛИС, тем самым уменьшить место на печатной плате и упростив разработку для самой ПЛИС. Широко используется для построения различных по сложности и возможностям цифровых устройств. Это приложения, где необходимо большое количество портов ввода-вывода (бывают ПЛИС с более чем 1000 пинов), ЦОС, цифровая видео-аудио аппаратура, высокоскоростная передача данных, криптография, разработка ASIC, в качестве мостов между системами с различной логикой и напряжением питания.

    CPLD (англ. complex programmable logic device — сложные программируемые логические устройства) содержат относительно крупные программируемые логические блоки — макроячейки (англ. macrocells), соединённые с внешними выводами и внутренними шинами. Функциональность CPLD кодируется в энергонезависимой памяти, поэтому нет необходимости их перепрограммировать при включении. FPGA (англ. field-programmable gate array) содержат логические элементы и блоки коммутации. FPGA обычно имеют больше логических элементов и более гибкую архитектуру, чем CPLD. Программа для FPGA хранится в распределённой оперативной памяти микросхемы, поэтому требуется начальный загрузчик.
Программируемые массивы

Можно представить себе кристалл как массив программируемых элементов, из которого, в зависимости от потребностей, можно сделать практически все, что угодно. Гранулярность элементов может быть различной. Предельным минимумом являются отдельные вентили, из которых создаются специализированные микросхемы (Application-Specific Integrated Circuit, ASIC) или микросхемы для стандартных приложений (Application Specific Standard Product, ASSP). Как и в случае с транспьютерами, в этой области первенствовали англичане: идея ASIC была предложена компанией Ferranti в середине 80-х годов. Современная ASIC может представлять собой законченную систему на основе силикона SoC, включающую в себя 32-разрядные процессоры, память и другие компоненты. Для программирования ASIC используется один из языков программирования аппаратуры (Hardware Description Language, HDL), например Verilog или VHDL; на нем описывается функциональность ASIC. В отличие от ASIC, микросхемы ASSP поступают на рынок готовыми. Они применяются в автомобилях, коммуникационных устройствах и т. п.Массивы FPGA отличаются большей гранулярностью. Их элементом является модуль-ячейка, состоящий из двух компонентов — четырехвходовой таблицы Lookup Table (LUT) и триггера. Название таблицы часто переводят как «таблица просмотра», что, вообще-то, неверно. Скорее, его следует перевести как «шпаргалка». В таблицы такого типа заносят стандартные значения, чтобы их не вычислять. Пример — таблица тригонометрических функций. В данном случае в таблице программируется поведение ячейки. Какой-либо процедуры просмотра не предусмотрено. На основе FPGA можно собирать множество процессоров на одном кристалле. Компания Elixent поставляет разнообразные специализированные криптографические микросхемы, базирующиеся на реконфигурируемой архитектуре (Reconfigurable Algorithm Processing RAP), которая представляет собой коммутированный нужным образом массив четырехразрядных арифметико-логических устройств (ALU).Следующий шаг на пути повышения уровня грануляции сделала компания MathStar, предлагающая программируемые массивы объектов (Field Programmable Object Array, FPOA). Одно устройство типа FPOA может содержать до 400 объектов, каждый из которых является 16-разрядным ALU. Объекты связаны запатентованным межсоединением, работающим на частоте 1 ГГц. Такие устройства используются для решения задач с большим количеством сигнальной информации, например для обеспечения зрения роботов. Аналогичные устройства с несколькими сотнями 16-разрядных CPU и DSP поставляет компания picoChip. Отличительная особенность ее решения состоит в том, что, помимо программирования на VHDL, отдельные функции можно программировать на языках Си и ассемблера. Это приближает такое устройство к универсальному компьютеру. Компания Cradle Technologies предлагает грануляцию еще одним уровнем выше: в ее продуктах MDSP могут использоваться до восьми 32-разрядных ядер и 16 DSP. Микросхемы MDSP являются прямыми конкурентами процессора Cell. Field Programmable Gate Array — программируемый массив, или программируемая вентильная матрица. Она представляет собой кристалл, который может быть запрограммирован после изготовления. Идея создания FPGA принадлежит Россу Фриману, который в 1984 году вместе с Берни Вондершмиттом и Джимом Барнетом создал компанию Xilinx (читается «зилингс») — крупнейшего производителя программируемых массивов. В 2005 году объем ее продаж превысил 1,5 млрд долл. Xilinx поистине уникальна. Она представляет несомненный интерес в двух аспектах: как явление бизнеса и как социальное явление. Отцы-основатели поставили перед собой цель создать не просто процветающую высокотехнологичную компанию, но еще и место, где людям будет приятно и удобно работать, где они станут получать удовольствие от совместного труда. Несмотря на очевидный утопизм замысла, он был реализован. Философия предпринимательства, основанная на этических принципах, оказалась экономически эффективной. Создание FPGA начиналось «с чистого листа», или, как говорят американцы, с концепции, взятой со стены (off-the-wall concept). Росс Фрееман руководствовался глубоким пониманием закона Мура: удвоение числа транзисторов на кристалле с периодичностью 18–24 месяцев рано или поздно должно привести тому, что кристалл удастся сделать однородным массивом транзисторов, который в последующем можно будет программировать нужным образом. В момент создания компании (более 20 лет назад) идея разработки подобного продукта казалась не менее утопичной, чем концепция компании-коммуны, но жизнь показала правоту Фреемана. К сожалению, столь интересные замыслы были реализованы лишь после его смерти в 1989 году. Ради справедливости отметим, что у FPGA были предшественники — устройства со сложной программируемой логикой (Complex Programmable Logic Devices, CPLD). Еще раньше, в середине 70-х годов, появились программируемые логические массивы (Programmable array logic PAL). Массивы PAL содержали всего несколько десятков логических элементов, и предполагалось, что устройства должны собираться из множества таких массивов. Изобретатели PAL Джон Биркнер и Хью-Тью Чуа не «вписались» со своей идеей в развитие полупроводниковых технологий, хотя поначалу надежды были велики: их массивы были вытеснены с рынка специализированными устройствами.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14