Научная статья на тему 'Статистический подход к выбору шагов преобразования в преобразователях кодов по методу накопления эквивалентов'

Статистический подход к выбору шагов преобразования в преобразователях кодов по методу накопления эквивалентов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
98
16
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Вареца Виталий Викторович, Лопухин Юрий Владимирович, Какурин Николай Яковлевич, Кобылин Олег Анатольевич, Макаренко Анна Николаевна

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Вареца Виталий Викторович, Лопухин Юрий Владимирович, Какурин Николай Яковлевич, Кобылин Олег Анатольевич, Макаренко Анна Николаевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The statistical approach of a selection of a transformation steps in code converters by the method of accumulation of equivalent

The purpose and possibilities of the software for the analizing of the statistical characteristics of a parallel type code converters by the method of accumulation of an equivalents are considered. The comparing of a statistical characteristics of a parallel strategy of using a conversion steps of a number transformation for some base radix and digits are performed.

Текст научной работы на тему «Статистический подход к выбору шагов преобразования в преобразователях кодов по методу накопления эквивалентов»

УДК 681.325.53:004.5

В.В. ВАРЕЦА, Ю.В. ЛОПУХИН, Н.Я.КАКУРИН, О.А.КОБЫЛИН, А.Н. МАКАРЕНКО

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

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

1. Постановка задачи

Преимуществами преобразователей кодов по методу накопления эквивалентов {ПК НКЭ} являются умеренные аппаратурные затраты и возможность изменения в широких пределах соотношения между числом тактов преобразования (быстродействием) и аппаратурными затратами путем выбора числа шагов преобразования, оптимальных значений шагов, числа блоков разбиения многоразрядного ПК НКЭ и стратегии использования шагов преобразования (последовательной или параллельной).

Стратегия применения шагов преобразования может быть последовательной или параллельной [1,2].

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

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

1< a< b; a < b < c; b < c, K-1 , (1)

где К - основание системы счисления на входе; a, b, c - соответственно второй, третий и четвертый шаги преобразования (первый шаг преобразования всегда равен 1).

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

Применение параллельной стратегии преобразования чисел в ПК НКЭ приводит к уменьшению числа тактов преобразования (увеличению быстродействия) из-за того, что в различных преобразуемых разрядах разрешается одновременное вычитание различных шагов [3].

Параллельная стратегии применима только в ПК НКЭ с числом шагов преобразования равным двум и более. Для нахождения основных статистических характеристик параллельной стратегии (математического ожидания и дисперсии) и сравнения этих характеристик для последовательной и параллельной стратегий разработано программное средство "TRANSFORMATION" [4].

Целью настоящей работы является:

- рассмотрение назначения и возможностей разработанного программного средства;

- анализ функционирования программного средства в режиме "СТАТИСТИКА";

- разработка алгоритма выбора основных характеристик (наборов шагов преобразования) преобразователей кодов с параллельной стратегией преобразования чисел на основе статистических свойств параллельной стратегии.

2.Структура и функционирование ПК параллельного типа

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

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

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

КГ(К) = [(х, - (а - 1)-]х1/а[),(а -1)], х1 = (К - 1),а, (2)

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

Анализ формулы (2) показывает, что для К = 12 в двухшаговом ПК с параллельным использованием шагов преобразования минимальное значение числа тактов преобразования равно пяти для наборов (1, 3); (1, 4);(1, 5). Подобный анализ, проведенный для наборов 1,6 - 1,11, дает рост числа тактов преобразования до шести - десяти.

Повышение быстродействия двухшаговых ПК с параллельным использованием шагов преобразования достигается ценой некоторого усложнения ФЭ и ЛЭ для управления вычитанием шагов а и 1 из содержимого разрядных счетчиков.

Этот принцип управления реализуется в двухшаговом ПК параллельного типа путем замены ( п-1 ) входного элемента ИЛИ-НЕ блоком инверторов (инверторы 17!, 172). Вход каждого из них связан с единичным выходом соответствующего триггера старшего регистра состояний РГ4, а выход соответствующего инвертора соединяется с управляющими входами схем И 81, И 82, на информационные входы которых поступают сигналы с единичных выходов триггеров этого разряда младшего регистра состояний РГ3 (рис. 1).

Закон функционирования ФЭ для двухшагового ПК параллельного типа для набора шагов 1,2 и К=12 приведен в табл. 1.

Таблица 1

Номер набора Состояние триггеров Общий вид эквивалента Десятичный код эквивалента Двоичный код эквивалента

Второй группы Первой группы

21 Д3Д2Д1 С3С 2 С1 Б Б10 У12У11У10У9 У8У7У6У5 У4У3У2У1

0 00 00 Х0 Х0 Трансляция младшей тетрады

1 00 01 К1 10 0000 0000 1010

2 00 10 К2 10 0000 0110 0100

3 00 11 К2 + К1 110 0000 0110 1110

4 01 01 аК 40 0000 0010 1000

5 01 11 К2 + аК 140 0000 1000 1100

6 10 10 аК2 400 0001 1001 0000

7 10 11 аК2 + К 410 0001 1001 1010

8 11 11 аК2 + аК 440 0001 1011 1000

18o

—1> + 1

V

j- CT

г

г1> I

22 j

1 CD

1

V H.

П2

"®Q 13 I

■1

V

CT

h

Ц2, р

D

i

+ 1 ■I V CT

ч

с i-

Пуск Останов -

D С I 3]

D С T 32

17!

1/2,

с

J

П31

- д.

г.

НСЫ 7

б!

"6

3 jfti-2

ГШ

I

J

Рис. 1. Двухшаговый ПК с параллельным использованием шагов

3. Назначение и возможности программного средства " TRANSFORMATION"

Программное средство "ТЯА^РОКМАТЮК'имеет следующие возможности :

- имитация работы ПК НКЭ с числом шагов преобразования в наборе от 1 до 4 с основанием системы счисления на входе от 3 до 15 и разрядностью n преобразуемых цифр от 2 до 12;

- реализация двух режимов работы: режима преобразования заданного числа (или числа, сформированного генератором случайных чисел) и режима " СТАТИСТИКА"для нахождения математического ожидания числа тактов преобразования и дисперсии.

Математическое ожидание и дисперсия определяются для всего множества преобразуемых чисел. Для разработки данного программного продукта была выбрана наиболее оптимальная по скорости проектирования и эффективности визуальная среда программирования QT для Windows XP/7, программа реализована на языке С++.

Для функционирования программы в составе компьютера необходимо иметь процессор с быстродействием не менее 1ГГц, 512 Мб ОЗУ, 50 Мб дискового пространства, Windows XP/Vista/7. Разработанное программное обеспечение сформировано как независимый модуль и для своего функционирования не требует дополнительного программного обеспечения. После запуска программного средства следует активизировать режим " СТАТИСТИКА". Код функции, реализующнй режим статистики, приведен ниже:

do

{

int digit = 0;

for (int i = 0; i < amount_of_digits; ++i)

if (value[i] > digit)

digit = value[i];

int amountOfCycles = 0;

do

{

int equivalent = 0;

for (int j = 0; j < stepsCount; ++j) {

quint8 step = stepsSizes.at(j).toInt(); if (step <= digit && step > equivalent)

equivalent = step; }

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

digit -= equivalent; if (equivalent == 0) continue;

amountOfCycles++;

totalAmountOfCycles++; }

while (digit > 0);

convertedValues[amountOfCycles]++; amountOfCyclesPerConversation.append(amountOfCycles); if (amountOfCycles > maxAmountOfCycles) maxAmountOfCycles = amountOfCycles;

totalAmountOfValues++; }

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

Когда все значения введены, следует нажать поле "Собрать данные". Программа после вычисления отобразит значения математического ожидания, дисперсии, количества всех проанализированных чисел и распределение количеств чисел по числу тактов преобразования, на основании которого можно построить гистограмму распределения .

Результат работы программного средства в режиме " СТАТИСТИКА " для K=10 и n=6 приведен на рис. 2 .

I Преобразователь кодов И | |

Рис. 2. Результаты статистических рассчетов для K= 10 и n =6

Математическое ожидание М рассчитывается по формуле

М=( 21 • ^)/2п, (3)

1=0

где М - математическое ожидание числа тактов преобразования /; ^ - количество чисел, преобразуемых за i тактов; Ктах — максимальное значение числа тактов преобразования (зависит от основания системы счисления К и значений шагов преобразования а, Ь, с); п — число входных преобразуемых разрядов.

Затем рассчитывается дисперсия преобразования Б по формуле

D=

Z (M-Nj)2

^ У

/ 2n(2n-1)

(4)

здесь NJ — количество тактов, за которое преобразуется число Аа^

Анализ табл.2 показывает, что параллельная стратегия использования шагов для К=10, п = 2-8 и набора шагов 1 и 4 дает существенный среднестатистический выигрыш по быстродействию порядка 30%.

Таблица 2

Ti Разрядность n

2 3 4 5 6 7 8

0 1 1 1 1 1 1 1

1 12 18 384 2122 11592 61868 325344

2 33 327 3201 31143 300993 2889687 27564801

3 39 435 4719 50763 542919 5774836 61097439

4 15 169 1695 15967 144495 1273609 11012405

Т 1 ср 2,55 2,7 2,77 2,81 2,82 2,827 2,83

М 0,85 0,69 0,59 0,52 0,46 0,41 0,37

4. Алгоритм выбора основных параметров и системных характеристик ПК

НКЭ параллельного типа с помощью программного средства "TRANSFORMATION"

Алгоритм состоит из следующих шагов:

1.По заданному основанию системы счисления на входе определяем возможные наборы шагов.

2. Активизируем режим " СТАТИСТИКА".

3. Задаем исходные параметры режима " СТАТИСТИКА": основание системы счисления, количество шагов преобразования, размер шагов, разрядность преобразуемых чисел, устанавливая при первом шаге минимальное значение разрядности.

4.Инициируем активность кнопки " СОБРАТЬ ДАННЫЕ " и получаем значения Тср и M.

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

6.Проверяем значение разрядности преобразуемого числа. Если оно является максимальным, то переходим к п.3 и устанавливаем новое значение размера шагов и минимальное значение разрядности преобразуемого числа, не меняя основания системы счисления и количества шагов преобразования. Если значение разрядности преобразуемого числа не является максимальным значением разрядности, то переходим к п. 5.

7.Процесс получения статистических значений Тср и M заканчивается при достижении максимального значения разрядности анализируемого преобразования на наибольшем исследуемом наборе шагов.

В табл.3 приведены значения Тср и M для K= 10, а в табл.4 - для K=12.

Таблица 3

Значения шагов Разрядность п

2 3 4 5 6 7 8

1 и 2 Т 1 ср М 3,35 3,78 4,03 4,21 4,34 4,43 4,51

1,53 1,08 0,81 0,64 0,58 0,44 0,38

1 и 4 Т 1 ср М 2,55 2,7 2,77 2,81 2,82 2,827 2,83

0,85 0,69 0,59 0,52 0,46 0,41 0,37

1 и 8 Т ^ ср М 3,63 3,56 3,33 3,09 2,86 2,66 2,5

4,83 5,15 5,24 5,03 4,61 4,09 3,55

Таблица 4

Значения шагов Разрядность п

2 3 4 5 6 7

1 и 2 Т 1 ср М 4,014 4,52 4,83 5,03 5,18 5,297

2,14 1,49 1,11 0,86 0,697 0,581

1 и 4 Т 1 ср М 3,15 3,48 3,70 3,87 4,01 4,13

1,49 1,33 1,22 1,12 1,03 0,94

1 и 8 Т ^ ср М 3,60 3,55 3,45 3,39 3,358 3,36

3,43 3,087 2,67 2,23 1,83 1,50

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

Для систем счисления с более высокими значениями оснований набор шагов преобразования с лучшими статистическими характеристиками может быть другим. Например, для К=24 меньшее значение среднего времени преобразования соответствует набору шагов 1 и 8.

Выводы

Научная новизна выполненного исследования заключается в следующем.

1. Рассмотрена и проанализирована параллельная стратегия использования шагов преобразования в двухшаговых ПК НКЭ.

2. Получена формула для вычисления числа тактов преобразования 2-шагового ПК НКЭ параллельного типа .

3. Проанализировано назначение и возможности программного средства "ТЯАШРОКМАТЮК" в режиме "СТАТИСТИКА".

4. Проведен сравнительный анализ статистических характеристик (математического ожидания и дисперсии) в ПК НКЭ с параллельной стратегией преобразования чисел для ряда оснований систем счисления на входе и разрядностей.

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

Список литературы: 1. А.С. 1647908 5НОЗМ 7/12. Преобразователь двоично-К-ичного кода в двоичный код / Н.Я.Какурин, Ю.К. Кирьяков, А.Н. Макаренко // Открытия, изобретения. 1991. №17. С. 262-263. 2. Какурин Н.Я., Лопузин Ю В, Быкова Н Н. Программное средство для анализа преобразований чисел / /АСУ и приборы автоматики. 2007. Вып. 140. С.96-102. 3. Какурин Н.Я., ВарецаВ В., Коваленко СН. Параллельная стратегия использования шагов в двухшаговых преобразователях кодов //АСУ и приборы автоматики. 2007. Вып. 141. С.29-36. 4. Какурин Н.Я., Бочаров Е.В., Вареца В В., Полежаев К В., Замалеев Ю. С. Программное средство для анализа преобразований чисел в преобразователях кодов параллельного типа //АСУ и приборы автоматики. 2011. Вып. 154. С.83-90.

Поступила в редколлегию 22.11.2011

Вареца Виталий Викторович, аспирант кафедры АПВТ ХНУРЭ. Научные интересы: проектирование программного обеспечения, автоматизация проектирования цифровых устройств. Адрес: Украина, 61166, Харьков, пр.Ленина, 14, тел. 70-21-326.

Лопухин Юрий Владимирович, ст. преподаватель кафедры АПВТ ХНУРЭ. Научные интересы: проектирование программного обеспечения, автоматизация проектирования цифровых устройств. Адрес: Украина, 61166, Харьков, пр.Ленина, 14, тел. 70-21-326. Какурин Николай Яковлевич, канд. техн. наук, профессор кафедры АПВТ ХНУРЭ. Научные интересы: прикладная теория цифровых автоматов, автоматизация проектирования цифровых устройств. Адрес: Украина, 61166, Харьков, пр.Ленина, 14, тел. 70-21-326. Кобылин Олег Анатольевич, канд. техн. наук, доцент кафедры информатики ХНУРЭ. Научные интересы: спектральный анализ изображений, программирование. Адрес: Украина, 61166, Харьков, пр.Ленина, 14, тел. 70-21-419.

Макаренко Анна Николаевна, канд. техн. наук, доцент кафедры информационных технологий Харьковского института банковского дела. Научные интересы: информационные технологии, анализ и синтез преобразователей код-код. Адрес: Украина, 61074, Харьков, пр. Победы, 55, тел. 336-05-64.

i Надоели баннеры? Вы всегда можете отключить рекламу.