ПРОЕКТ Узел индикации на ПЛИС фирмы ALTERA Автор: Кузьменко Александр Сергеевич -----------------------------Научный руководитель: Власов Андрей Игоревич к.т.н., доцент каф. «ИУ4» МГТУ им. Н.Э. Баумана Цель работы: Разработка универсального узла отображения информации для измерительных устройств с применением интегральных схем программируемой логики (ПЛИС) Решаемые задачи: Анализ средств и методов отображения информации в измерительных устройствах Выбор элементной базы узла индикации Разработка схемотехнической и конструктивной реализации узла индикации Программирование ПЛИС Возможности применения реализованного узла индикации Анализ средств и методов отображения информации в измерительных устройствах Одной из важных функций любого измерительного прибора является визуализация результатов измерений. Получаемые результаты измерений могут выводиться в графическом или цифровом виде. Для отображения процессов, например, изменяющихся во времени, чаще всего используют графические средства отображения. В аналоговых приборах это электронно-лучевые трубки (ЭЛТ), а в цифровых жидкокристаллические (ЖК), светодиодные или плазменные индикаторные панели высокого разрешения. Для отображения цифровой информации в аналоговых измерительных устройствах, обычно, применяются стрелочные приборы, а в цифровых светодиодные и жидкокристаллические матрицы. Примеры применения различных средств отображения информации АНАЛОГОВЫЕ СРЕДСТВА: ОСЦИЛЛОГРАФ С ЭЛТ СТРЕЛОЧНЫЙ АМПЕРМЕТР ЦИФРОВЫЕ СРЕДСТВА: СВЕТОДИОДНАЯ И ЖИДКОКРИСТАЛЛИЧЕСКАЯ МАТРИЦЫ ГРАФИЧЕСКАЯ СВЕТОДИОДНАЯ ПАНЕЛЬ Структура узла индикации Узел индикации предназначен для отображения на 2-х строчном, 7-ми позиционном, светодиодном параллельной адрес/данные. 7-ми сегментном индикаторе, данных, которые поступают по восьмиразрядной микропроцессорной шине - +5V Микропроцессорная система 8 вход Входное устройство 8 8 8 8 8 8 JTAG0 Дешифратор кода 1 Адрес/данные Data/ Address BUS 8 JTAG1 Дешифратор кода 2 8 8 8 8 8 8 8 LCD +5V Логические функции узла индикации Информация поступающая по 8-ми разрядной шине адрес/данные в двоичном коде должна быть преобразована в двоичный код 7-ми сегментного индикатора, в соответствии с таблицей Binary_code[] => Seven_segment[]; B"0000"=>B"1000000"; B"0010"=> B"0100100"; B"0011”=>B"0110000"; B"0100"=> B"0011001"; B"0101"=>B"0010010"; B"0110"=> B"0000010"; B"0111"=>B"1111000"; B"1000"=> B"0000000"; B"1001"=>B"0010000"; B"1010"=>B"1111111";--Гашение B"1011"=>B"1111111"; B"1100"=> B"1111111"; B"1101"=>B"1111111"; B"1110"=> B"1111111"; B"1111"=>B"0111111";--Переполнение Схемотехническое проектирование (выбор элементной базы) Дешифраторы двоичного кода в двоичный семисегментный код, можно реализовать на элементах жесткой логики. Для сокращения числа компонентов и удобства монтажа узла, схема построена на основе микросхем программируемой логики (ПЛИС) EPM7128SQI100-10 фирмы Altera. В качестве устройства отображения информации выбраны светодиодные индикаторы с большим размером символов для удобства восприятия информации оператором. Источник питания выбран стандартный напряжением 5 В и с максимальным током нагрузки 1 А. Схемотехническое проектирование (схема электрическая принципиальная) X1 TCK 3 TDO 2 GND 10 GND 4 +5V D1:2 PLM DO1 DO2 R1 R3 R5 1k TMS 1 1k 5 EPM7128SQI100-10 1k TDI 1k 9 R7 DO3 DO4 DO5 IDC10MS DO6 D1:1 +5V 6 DO8 DO9 93 TCK 75 DO7 41 TMS 64 X3 +5V VCCINT PLM TDI 17 DO10 TDO DO11 VCCIO D0 1 D1 2 D2 3 D3 4 D4 5 D5 6 D6 7 D7 8 9 WR 10 RD 11 ALE 12 RST 13 +5V 14 GND 1 WR DIN7 GNDINT DIN8 11 RD 40 DIN10 12 DO18 8 C9 2 4 6 7 8 3 C2...C9 5 0.1 8 DO19 DO20 DO21 88 DIN11 14 DO17 84 DIN6 9 DO16 68 DIN5 8 DO15 53 DIN4 7 10 DO14 36 DIN3 4 DO13 20 DIN2 3 DO12 5 DIN1 2 DO22 DIN12 91 DO23 GNDIO GCLRn DO24 13 100 +5V 28 89 К53-1А-16В-33МКФ C1 DO25 DO27 61 OE1 92 DO26 45 GCLK1 90 DO28 76 OE2 DO29 97 DO30 DO31 EPM7128S_1 DO32 60 47 49 57 58 59 48 50 46 35 38 42 43 44 37 39 29 31 26 24 23 30 27 25 34 62 55 52 33 32 56 54 EPM7128S_1 X2 D2:1 9 TDI 5 TMS 17 1 TCK 64 +5V VCCINT PLM TDI 41 TMS 93 TCK 75 TDO VCCIO R2 R4 R6 1 R8 20 DIN2 3 36 DIN3 4 53 DIN4 7 +5V 5 DIN1 2 IDC10MS 68 DIN5 8 84 DIN6 9 DIN7 10 GNDINT DIN8 11 40 DIN10 12 14 8 C C117 0 2 4 6 31 C10...C17 5 0.1 8 88 DIN11 DIN12 91 GNDIO GCLRn 13 1 CLK 87 28 89 90 61 OE1 92 D1:3 45 GCLK1 OE2 PLM DO1 76 DO2 97 DO3 DO4 DO5 EPM7128S_2 DO6 DO7 DO8 X4 DO9 +5V DO10 1 DO11 3 2 2 3 4 22k +5V 1k GND 1k GND 4 1k TDO 2 10 1k 3 6 DO12 DO13 R10 DO14 5 1 DO15 6 DO16 7 DO17 8 DO18 9 DO19 10 DO20 11 DO21 12 CS1 DO22 13 CS2 DO23 14 DO24 15 DO25 16 D/ I 17 EN 18 19 DO26 DO27 R9 3.9k DO28 DO29 +5V 20 DO30 DO31 DO32 EPM7128S_1 70 71 66 65 51 69 67 63 72 77 79 81 74 73 78 80 82 94 96 99 87 83 95 98 85 86 19 15 16 18 21 22 1 CLK +5V R11 150 R12 150 R13 150 R14 150 R15 150 R16 150 R17 150 R18 150 R19 150 R20 150 R21 150 R22 150 R23 150 R24 150 R25 150 R26 150 R27 150 R28 150 R29 150 R30 150 R31 150 R32 150 R33 150 R34 150 R35 150 R36 150 R37 150 R38 150 R39 150 R40 150 R41 150 R42 150 R43 150 R44 150 R45 150 R46 150 R47 150 R48 150 R49 150 R50 150 R51 150 R52 150 R53 150 R54 150 R55 150 R56 150 R57 150 R58 150 R59 150 R60 150 R61 150 R62 150 R63 150 R64 150 R65 150 R66 150 H1 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN EPM7128SQI100-10 6 D2:2 14 PLM SA_SC10_11 DO1 DO2 +5V DO3 DO4 DO5 H2 1 13 10 8 7 2 11 9 3 DO6 DPY LED A B DO7 DO8 C D DO9 DO10 E DO11 F DO12 G DO13 DP DO14 AN DO15 DO16 6 DO17 14 DO18 DO19 SA_SC10_11 +5V DO20 H3 1 13 10 8 7 2 11 9 3 DO21 DPY LED A B DO22 DO23 C D DO24 E DO26 F DO27 DO25 G DO28 DP DO29 AN DO30 DO31 6 DO32 57 63 60 58 55 56 62 59 27 15 22 24 25 26 21 23 100 94 96 18 19 99 95 98 82 74 32 37 16 85 30 34 14 EPM7128S_2 SA_SC10_11 H4 +5V 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 +5V H5 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN D2:3 6 PLM 14 DO1 DO2 DO3 SA_SC10_11 H6 +5V 1 13 10 8 7 2 11 9 3 DO4 DO5 DO6 DPY LED A B DO7 DO8 C D DO9 DO10 E F DO11 G DO12 DO13 DP DO14 AN DO15 6 DO16 14 DO17 DO18 SA_SC10_11 DO19 +5V DO20 DO21 H7 1 13 10 8 7 2 11 9 3 DO22 DPY LED A B DO23 DO24 C D DO25 DO26 E DO27 F DO28 G DO29 DP DO30 AN DO31 DO32 6 EPM7128S_2 14 SA_SC10_11 +5V 78 77 86 33 35 80 83 29 79 38 42 44 31 81 39 43 46 49 52 54 48 47 50 51 65 66 67 69 70 71 72 73 R67 150 R68 150 R69 150 R70 150 R71 150 R72 150 R73 150 R74 150 R75 150 R76 150 R77 150 R78 150 R79 150 R80 150 R81 150 R82 150 R83 150 R84 150 R85 150 R86 150 R87 150 R88 150 R89 150 R90 150 R91 150 R92 150 R93 150 R94 150 R95 150 R96 150 R97 150 R98 150 R99 150 R100 150 R101 150 R102 150 R103 150 R104 150 R105 150 R106 150 R107 150 R108 150 R109 150 R110 150 R111 150 R112 150 R113 150 R114 150 R115 150 R116 150 R117 150 R118 150 R119 150 R120 150 R121 150 R122 150 H8 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 +5V H9 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 +5V H10 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 H11 +5V 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 +5V H12 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 H13 +5V 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 +5V H14 1 13 10 8 7 2 11 9 3 DPY LED A B C D E F G DP AN 6 14 SA_SC10_11 +5V Схемотехническое проектирование (внутренняя структура ПЛИС ALTERA) Конструкторско-технологическое проектирование (разработка печатной платы и сборка) Рисунок печатной платы со стороны установки элементов Печатная плата в сборе Рисунок печатной платы с тыльной стороны 2-х строчный, 7-ми разрядный, 7ми сегментный индикатор Конструкторско-технологическое проектирование (устройство в сборе) Программирование ПЛИС В схеме узла используются 2 микросхемы ПЛИС, выполняющие все требуемые функции с идентичными прошивками, отличающимися только номером адресной линии выборки (А5 или А6 в проекте PAM_PSS_WORK2) и назначением внешних выводов. Файлы программирования ПЛИС созданы с помощью ПО «Quartus II 7.1». Для программирования используется специальный кабель ByteBlasterMV, подключаемый к LPT-порту любого компьютера. ByteBlasterMV Электрическая схема ByteBlasterMV Программирование ПЛИС Входные сигналы D0…D7 параллельная 8-битная совмещенная шина адрес/данные. RST начальная инициализация индикатора – отображение «0» во всех позициях. ALE стробирующий импульс записи адреса. WR стробирующий импульс записи данных. Выходные сигналы POS0_Indicator[6..0]… POS6_Indicator [6..0] сигналы управления цифровыми сегментами индикатора. POS0_DT… POS6_DT сигналы управления децимальными точками индикатора. Программирование ПЛИС Запись данных в ПЛИС производится следующим образом. На линиях D0…D7 внешнее устройство выставляет сигналы, транслируемые на ЖКИ (d0,d1,d2,d4) и сигнал выборки ПЛИС ( логическая «1» на d5 или d6). На вход ALE подается стробирующий импульс, фиксирующий их в адресном регистре. Далее на эти же линии выставляются сигналы: Разряды 0…4 – двоичный код отображаемого символа; Разряды 5…7 – двоичный код позиции индикатора, в которую данный символ должен быть выведен. Программирование ПЛИС При помощи декодера старших разрядов формируется сигнал разрешения записи в регистры данных (сигналы col[6..0]). При подаче стробирующего импульса на вход WR по его спадающему фронту данные защелкиваются в регистре данных. Логические элементы AND3 в конкретный момент времени разрешают запись только выбранного сигналом col(x) регистра при условии неактивности сигнала ALE. Для преобразования двоичного кода в код 7сегментного индикатора использованы декодеры описанные выше. Для вывода на индикатор десятичной точки используется разряд 4 шины данных. Для полного заполнения индикатора данной ПЛИС требуется 7 циклов записи. Возможности применения узла индикации Узел может применяться в измерительных приборах: частотомерах, измерителях импульсов, температуры, давления и т.д., в технологических системах для отладки микропроцессорных устройств, контроля шин адресов и/или данных, а так же в устройствах в качестве индикатора данных. В данном случае узел был применён в системе пересчёта импульсов, поступающих от датчика ионизирующего гамма-излучения. Оценка эффективности и затрат разработанного устройства Не высокая стоимость комплектующих, в частности ПЛИС EPM7128SQI100-10 фирмы ALTERA, а так же применение высокотехнологичных методов проектирования с помощью САПР даёт привлекательное соотношение цена/качество. Универсальный узел индикации даёт возможность без затрат на дополнительную разработку применять его в различных микропроцессорных и микроконтроллерных устройствах. Не большое количество электронных компонентов в узле индикации и выполнение на высоком технологическом уровне, даёт основание полагать о достаточно высокой надёжности устройства. Заключение В результате выполненной работы, создан универсальный узел, отображение цифровой информации с применением интегральных схем программируемой логики фирмы ALTERA, который возможно использовать в широком спектре электрорадиозмерительных приборов. В процессе выполнения работы был освоен программный продукт Quartus II, v. 7.1, проведены испытания узла индикации от различных источников данных