Побудова ОВС для вирішення формули

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Зміст

1. Вибір варіанту

1.1 Обчислення числа К

1.2 Вибір параметрів варіанту

2. Структура обчислювального процесу алгоритми обчислень

2.1 Структура обчислювального процесу

2.2 Послідовність обробки операндів

2.2.1 Обробка числа А

2.2.2 Обробка числа В

2.2.3 Обробка числа С

3. Схеми ОВС

3.1 Позначення на схемах

3.1 Схема ділянки ОВС для обчислення числа А

3.2 Схема ділянки ОВС для обчислення числа В

3.3 Схема ділянки ОВС для обчислення числа С

4. Тимчасові діаграми

4. Тимчасові діаграми

4.1 Таблиці тимчасових діаграм

5. Програмування ОВС

5.1 Коди команд ОЕ

5.2 Схема ланцюгів програмування

Висновок

1. Вибір варіанту

1.1 Обчислення числа К

Для попередження повторів, визначення варіанту проводиться за формулою, яка враховує кількість груп на потоці і кількість осіб в групі. Формула виглядає таким чином:

К = (n -1) 30 + m (1.1.1)

де n - номер групи студента, а m - номер студента в групі.

К = (2-1)  30 +12 = 30 +12 = 42.

1.2 Вибір параметрів варіанту

Для вирішення завдання необхідні початкові умови, а саме:

формула обчислення С;

системи числення для операндів А і В;

код, у якому відбуваються обчислення;

напрямки входу і виходу чисел;

максимальна кількість тактів програмування.

Формула обчислення визначається параметром X. Параметр Х дорівнює залишку від ділення числа К на 11, тобто

Х = К mod 11 (1.2.1)

Для К = 42, Х = 9. Так як Х = 9, то згідно табл.1 число С обчислюється за формулою C = 7 | A - B | / 4.

Y = K mod 3 (1.2.2) Z = K mod 7 (1.2.3)

Системи числення для операндів А і В залежать від параметрів Y і Z, які обчислюють за формулами (1.2.2) і (1.2.3) відповідно. Отже, за таблицями 2 і 3 можна визначити Y і Z. Для вище згаданого варіанту Y = 0 і Z = 0, тобто операнд А надходить на вхід пристрою кодування в двійково-п'ятиричної системі числення, а операнд В - у двійково-девятірічной.

Таблиця 1. Таблиця 2. Таблиця 3.


Х

Формула обчислення З


Y

Система числення


Z

Система числення

0

3 | A/2-B/4 |


0

2-5


0

2-9

1

| 3A/4-B |


1

2-6


1

2-10

2

| A-5B / 4 |


2

2-7


2

2-11

3

| 3A-B | / 4





3

2-12

4

| 3A-4B |





4

2-13

5

| 5A-3B | / 2





5

2-14

6

5 | A-2B | / 4





6

2-15

7

| 5A/2-2B |







8

| 7A/4-2B |







9

7 | AB | / 4







10

| 6A-5B |







У зв'язку з тим, що у формулі використовується віднімання необхідно проводити обчислення в зворотному або в додатковій кодах. Так як К - парне число, віднімання проводиться в додатково коді [1].

За допомогою параметра V, визначаються напрямки входів операндів і виходу результату.

Для цього використовується формула (1.2.4), причому число V представляється в двійковому коді.

V = K mod 64 (1.2.4)

Для сорок другого варіанту V = 42 = 1010102, причому слід врахувати, що напрями руху чисел читаються з право наліво, тобто V = 10 10102, і 00-це південь, 01-захід, 10-північ, 11-схід . З В А

Пристрій повинен виконати обчислення за мінімальний час, тобто за мінімальну кількість тактів. Частково цього можна досягти, скоротивши час програмування ОЕ.

Т (X + Y + Z +6) 16 (1.2.5)

При К = 42, накладається таке обмеження тактів програмування:

T (9 +0 +0 +6) 16 = 15 16 = 240.

З попередніх обчислень випливає, що С обчислюється за формулою З = 7 | A - B | / 4, число А двійково-п'ятиричної і надходить з півночі, В - двійково-девятірічное і так само надходить з півночі, віднімання проводиться в додатковому коді, результат видається на північ і кількість тактів програмування не перевищує двохсот сорока.

2. Структура обчислювального процесу алгоритми обчислень

2.1 Структура обчислювального процесу

В ОВС обчислення можуть вироблятися ОЕ як послідовно, так і паралельно. Надалі будуть використовуватися обидва способи. Тому для наочності процесів, що відбуваються нижче на рис.1 наведена структура обчислювального процесу.

Рис.1.

2.2 Послідовність обробки операндів

2.2.1 Обробка числа А

Обробка числа полягає в тому, що потрібна та кількість перевести з двійково-кодованого виду в двійковий, а так само перетворити його в додатковий код, У такому вигляді воно придатне для подальшого використання.

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

Таким чином, обробка числа А полягає у виділенні старшої тетради, виділення молодшої тетради, множенні H на п'ять і складання з L. Докладно ці дії представляє алгоритм на рис.2.

Число А2-5 надходить з півночі. Виділення старшої тетради проводиться шляхом логічного множення А 2-5 на константу виду 111100002 або F 016. Це наочно ілюструє приклад:

Рис.2

Молодша тетрада виділяється аналогічним способом:


Двійкове число знаходиться за формулою (2.2.1 1)

A 2 = Hn S + L (2.2.1 1)

де S-система числення двійково-кодованого числа, L-його молодша тетрада, а Hn-нормалізована старша тетрада двійково-кодованого числа:

А8 А7 а6 а5 0 0 0 0 = H

0 0 0 0 А8 А7 а6 а5 = Hn

Для сорок другого варіанту формула (2.2.1 1) виглядає наступним чином: А2 = 5 Hn + L

Процедура множення старшої тетради на п'ять може бути представленою у вигляді: 5 Hn = Hn +4 Hn

2.2.2 Обробка числа В

Операнд У обробляється аналогічно операнду А, за винятком деяких особливостей.

Рис.3

Число У надходить кодований у двійково-девятірічной системі числення, тому старша тетрада множиться на дев'ять, причому, що надходить число В негативно і його прямий код не збігається з додатковим. Отже, операнд В необхідно перевести в додатковий код. Це здійснюється шляхом віднімання одиниці з подальшим інвертуванням. Відняти одиницю можна шляхом складання числа з константою виду 1 1 1 1 1 1 1 12 [1].

Все вище перераховане показано на рис.3.

2.2.3 Обробка числа С

Для отримання числа С необхідно модуль різниці чисел А2 і В2 помножити на сім і розділити на чотири. Сума чисел АДП і ВДП дасть результат так само в додатковому коді. Отримати прямий код результату, який буде дорівнює різниці чисел А2 і В2, можна за допомогою арифметичного додавання СДП з його ж знаковими розрядами:

Обчислення прямого коду із зворотного проводиться шляхом додавання за модулем два числа Соб так само з його знаковими розрядами:

                                    

Множення на сім здійснюється наступним способом: 7 C = 4 C +2 C + C. А поділ на чотири шляхом логічного множення на константу 1 1 1 1 1 1 0 02 і затримкою на два такти.

Малюнок 4 представляє схему алгоритму обчислення числа С.

Схема алгоритму обчислення числа С

Рис.4.

3. Схеми ОВС

3.1 Позначення на схемах

Для зручності застосування та простоти сприйняття, операції умовно позначаються значками:

&-Логічне множення;

& Ø-логічне множення з інверсією;

½-логічне додавання;

Å-сума за модулем два;

+-Арифметичне складання;

T-умовне запам'ятовування;

GC-генерація константи;

DD-затримка на дев'ять тактів.

Крім цього, пунктирною лінією показані транзити, стрілками-напрямку руху чисел. Так само вказуються такти затримки і такти виходів перших біт чисел.

Номери ОЕ складаються з двох цифр: перша-номер мікросхеми, друга-номер ОЕ в мікросхемі.

3.2 Схема ділянки ОВС для обчислення числа А

На схемі ОВС безпосередньо вказується, як будуть працювати ОЕ.

На рис.5 представлена ​​схема ОВС для обчислення двійкового числа А.

Число А2-5 надходить на дванадцятий елемент, він виконує операцію логічного множення константи F 016 і А2-5, а так само транзит числа на захід із затримкою на дві такту.

Тринадцятий елемент складає число саме з собою і затримує його на два такти, таким способом досягається затримка числа на три такти.

Рис.5

Елементи чотирнадцять і п'ятнадцять дозволяють помножити старшу тетраду на п'ять, при цьому використовується властивість двійкових чисел при множенні на константу виду 2:

Взявши число на два такти раніше, виходить число помножене на чотири. Аналогічно відбувається множення на два, вісім, шістнадцять і т.д. .

На шістнадцятому елементі відбувається виділення молодшої тетради. Дев'ятнадцятий ОЕ виробляє складання старшої та молодшої тетрад і видає двійковий результат на захід. Одинадцятий і тридцять четвертий ОЕ генерують константи.

3.3 Схема ділянки ОВС для обчислення числа В

Ділянка ОВС для обробки числа У працює аналогічно ділянці, обробляє число А, за винятком трьох ОЕ, що дозволяють переводити двійкове число в додатковий код.


Рис.6.

На Рис.6 переклад числа в додатковий код здійснюється на трьох ОЕ. Тридцять перший ОЕ генерує константу FF 16, а тридцять другому складає її з двійковим чсіслом. Тридцять п'ятий ОЕ виконує операцію логічного множення, причому, число множиться саме на себе, чим досягається збереження його початкового значення, потім інвертує його. Таким чином здійснюється переказ числа в додатковий код в ОВС.

3.4 Схема ділянки ОВС для обчислення числа С


Рис.7

Тридцять восьмий ОЕ складає надходять числа А і В. Тридцять дев'ятий ОЕ виробляє затримку числа на дев'ять тактів і подає на південь тридцять шостого ОЕ. У той такт, коли на тридцять шостий ОЕ надходить число СДП з півдня, із заходу з'являються знакові розряди числа СДП. Таким чином виконується арифметичне додавання числа з його знаковими розрядами. Така операція може бути здійснена завдяки властивості ОВС що, після чіса (після сьомого біта) йдуть знакові розряди цього числа, тобто восьмий, дев'ятий, десятий і т.д. біти знакові розряди.

Аналогічним способом відбувається додавання по модулю два числа Соб з його знаковими розрядами на сорок четвертому і сорок сьомому ОЕ. На сорок першому, сорок другому, сорок п'ята і сорок восьмому ОЕ виконується множення числа Спр на сім. А сорок шостий і сорок дев'ятому дозволяють ділити число на чотири.

Рис.8

4. Тимчасові діаграми

4.1 Таблиці тимчасових діаграм

Тимчасові діаграми наводяться для входів ОВС та для всіх використовуються виходів ОЕ. У стовпцях вказуються такти, в рядках-номери ОЕ і імена виходів ОЕ, а так само код напрямку виходу.

ОЕ починають обробляти числа лише з десятого такту. Це обумовлено тим, що для нормальної роботи ОЕ необхідно обнулити всі тригери. Це також дозволить стабілізувати роботу генераторів константи.

Таблиця 4.

Тимчасова діаграма для ділянки ОВС обробного число А

Номер ОЕ

Напрямок

Номер вих (вх)

Такти




1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

11

11

1

1

1 0

0

0

0

1

1

1

1

1 0

0

0

0

1

1

1

1










12

(10)

(2)









а1

а2

а3

а4

а5

а6

А7

А8











12

00

3











0

0

0

0

а5

а6

А7

А8

0

0

0

0






12

11

8












а1

а2

а3

а4

а5

а6

А7

А8









13

00

9















а1

а2

а3

а4

а5

а6

А7

А8






34

01

11

1

1

1 0

0

0

0

1

1

1

1

1 0

0

0

0

1

1

1

1

1 0

0

0

0






15

01

4















0

а5

а6

А7

А8

0

0

0






14

11

5















0

0

а5

а6

А7

А8

0

0






15

00

6
















а5

а6

Х

Х

Х

Х

Х

Х





18

01

7

















а5

а6

Х

Х

Х

Х

Х

Х




16

00

10

















а1

а2

а3

а4

1 0

0

0

0




19

01

12


















А1

А2

А3

А4

А5

А6

А7

А8



37

01

13



















А1

А2

А3

А4

А5

А6

А7

А8


Таблиця 5.

Тимчасова діаграма для ділянки ОВС обробного число В

Номер ОЕ

Напрямок

Номер вих (вх)

Такти




1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

21

11

15

1

1 0

0

0

0

1

1

1

1

1 0

0

0

0

1

1

1

1










22

(10)

(14)









в1

в2

в3

В4

В5

В6

в7

В8











22

00

16











0

0

0

0

В5

В6

в7

В8

0

0

0

0






22

11

17












в1

в2

в3

В4

В5

В6

в7

В8









25

01

19















0

0

В5

В6

в7

В8

0

0






24

11

20















0

0

0

В5

В6

в7

В8

0






25

00

21
















В5

В6

в7

Х

Х

Х

Х

Х





27

11

22

0 0

1

1

1

1

1 0

0

0

0

1

1

1

1

1 0

0

0

0











28

11

23











1

1

1

1

1 0

0

0

0










29

10

24














1

1

1

1

1 0

0

0

0







23

00

18














в1

в2

в3

В4

В5

В6

в7

В8







26

00

25















в1

в2

в3

В4

1 0

0

0

0






29

01

26
















в1

в2

в3

В4

1 0

0

0

0





28

00

27

















В1

В2

В3

В4

В5

В6

В7

В8




31

01

28

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1




32

00

29


















в1

в2

в3

В4

В5

В6

в7

В8



35

00

30



















в1

в2

в3

В4

В5

В6

в7

В8


Тимчасові діаграми дозволяють зручно приводити константу до першого такту, а так само ефективно контролювати роботу всієї ОВС та кожного ОЕ окремо.

У табл.4. звичайним шрифтом вказані розряди двоічнокодірованного числа. Прописні букви символізують готовий двійковий результат.

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

Таблиця 6.

Тимчасова діаграма для ділянки ОВС обробного число С

Номер ОЕ

Напрямок

Номер вих (вх)

Такти




20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

38

10

31

с1

с2

с3

с4

С5

С6

с7

Зн



















35

11

32

с1

с2

с3

с4

С5

С6

с7

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

36

00

33



с1

с2

с3

с4

С5

С6

с7

Зн


















39

10

34












с1

с2

с3

с4

С5

С6

с7

Зн









36

11

35













с1

с2

с3

с4

С5

С6

с7

Зн

Зн

Зн

Зн

Зн

Зн

Зн

Зн

44

00

36













с1

с2

с3

с4

С5

С6

с7

Зн







47

10

37























с1

с2

с3

с4

С5

Номер ОЕ

Напрямок

Номер вих (вх)

Такти




42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

47

10

37

с1

с2

с3

с4

С5

С6

с7

Зн









44

11

38


с1

с2

с3

с4

С5

С6

с7

Зн








45

00

39




с1

с2

с3

с4

С5

С6

с7

Зн






48

10

40




0

с1

с2

с3

с4

С5

С6

с7






42

10

43



0

с1

с2

с3

с4

С5

С6

с7







41

11

44



0

0

с1

с2

с3

с4

С5

С6







42

00

42




с1

с2

Х

Х

Х

Х

Х

Х






45

11

45





с1

Х

Х

Х

Х

Х

Х

Х





49

10

46

1

1

0

0

1

1

1

1

1

1

0

0





46

10

47








с1

с2

с3

с4

С5

С6

с7

c8


43

10

48









с1

с2

с3

с4

С5

С6

с7

c8

В табл.6. звичайний шрифт позначає число в додатковому коді. Знаки Зн позначають знакові розряди числа С у додатковому коді. Аналогічно для курсиву, який символізує зворотний код. Жирний шрифт визначає число в прямому коді. Підкреслений шрифт представляє кінцевий результат роботи ОВС.

Таблиця 7.

Приведення константи FC 16

Номер ОЕ

Напрямок

Такти



1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

49

10

1

1

1

0

0

1

1

1

1

1

1

0

0

1

1

1

1

1

1

0

0

1

1

1

1

1

1

0

0

1

49

10

1

1

1

1

1

0

0

1

1

1

1

1

1

0

0

1

1

1

1

1

1

0

0








5. Програмування ОВС

5.1 Коди команд ОЕ

Для того, щоб ОЕ могли виконувати потрібні операції, необхідно їх запрограмувати. У коди команд ОЕ включаються: код операції, виробленої ОЕ, код затримки видачі результату, три коди напрямків входів операндів і три коди виходів ОЕ.

Код операції-трьох розрядне двійкове число, яке визначається наступними операціями:

0002-логічне множення;

0012-логічне множення з інверсією;

0102-логічне додавання;

0112-сума за модулем два;

1002-арифметичне складання;

1012-умовне запам'ятовування;

1102-генерація константи або затримка на дев'ять тактів.

Код затримки обчислюється так:

Якщо ОЕ після операції затримує число на один такт, то Y = 0. Якщо на два. Те Y = 1. Крім цього Y впливає і на операцію. Якщо Y = 0, то операція 1102 виконує генерацію константи, а якщо Y = 1, то виконується операція затримки на дев'ять тактів.

Коди входів А1 і А2 керують напрямком входів операндів:

002-південь;

012-захід;

102-північ;

112-схід.

Код А3 управляє напрямом входу транзиту.

Код А4 управляє напрямом виходу результату, а А5 і А6 виходами транзитів із затримкою в два і один такт відповідно.

Таблиця 8.

Номер ОЕ

16-чний

код

До

Про

П

Y

А

1

А

2

А

3

А

4

А

5

А

6

11

С3С3

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

12

098 D

0

0

0

0

1

0

0

1

1

0

0

0

1

1

0

1

13

958F

1

0

0

1

0

1

0

1

1

0

0

0

1

1

1

1

14

E5EB

1

1

1

0

0

1

0

1

1

1

1

0

1

0

1

1

15

8989

1

0

0

0

1

0

0

1

1

0

0

0

1

0

0

1

16

1BCF

0

0

0

1

1

0

1

1

1

1

0

0

1

1

1

1

17

E000

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

18

E083

1

1

1

0

0

0

0

0

1

0

0

0

0

0

1

1

19

8930

1

0

0

0

1

0

0

1

0

0

1

1

0

0

0

0

21

C3C3

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

22

098D

0

0

0

0

1

0

0

1

1

0

0

0

1

1

0

1

23

EA63

1

1

1

0

1

0

1

0

0

1

1

0

0

0

1

1

24

E5EF

1

1

1

0

0

1

0

1

1

1

1

0

1

0

1

1

25

8986

1

0

0

0

1

0

0

1

1

0

0

0

0

1

1

0

26

08CF

0

0

0

0

1

0

0

0

1

1

0

0

1

1

1

1

27

C03F

1

1

0

0

0

0

0

0

0

0

1

1

1

1

1

1

28

8B47

1

0

0

0

1

0

1

1

0

1

0

0

0

1

1

1

29

95AD

1

0

0

1

0

1

0

1

1

0

1

0

1

1

0

1

31

C3FF

1

1

0

0

0

0

1

1

1

1

1

1

1

1

1

1

32

894F

1

0

0

0

1

0

0

1

0

1

0

0

1

1

1

1

33

FFFF

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

34

61E1

1

1

0

0

0

0

1

1

1

1

0

0

0

0

0

1

35

2907

0

0

1

0

1

0

0

1

0

0

0

0

0

1

1

1

36

8478

1

0

0

0

0

1

0

0

0

1

1

1

1

0

0

0

37

E043

1

1

1

0

0

0

0

0

0

1

0

0

0

0

1

1

38

8920

1

0

0

0

1

0

0

1

0

0

1

0

0

0

0

0

39

D802

1

1

0

1

1

0

0

0

0

0

0

0

0

0

1

0

41

EAEB

1

1

1

0

1

0

1

0

1

1

1

0

1

0

1

1

42

8409

1

0

0

0

0

1

0

0

0

0

0

0

1

0

0

1

43

EF3E

1

1

1

0

1

1

1

1

0

0

1

1

1

1

1

0

44

6478

0

1

1

0

0

1

0

0

0

1

1

1

1

0

0

0

45

8872

1

0

0

0

1

0

0

0

0

1

1

1

0

0

1

0

46

04EF

0

0

0

0

0

1

0

0

1

1

1

0

1

1

1

1

47

D802

1

1

0

1

1

0

0

0

0

0

0

0

0

0

1

0

48

E082

1

1

1

0

0

0

0

0

1

0

0

0

0

0

1

0

49

C3CE

1

1

0

0

0

0

1

1

1

1

0

0

1

1

1

0

5.2 Схема ланцюгів програмування

Програма ОВС

На час програмування накладено обмеження в двісті сорок тактів. Код програми одного ОЕ займає шістнадцять тактів, тобто один ланцюг програмування може програмувати 240/16 = 15 ОЕ. Для того, щоб дотримати цю умову необхідно розбити ОВС на кілька ланцюгів програмування. Розподіл ланцюгів програмування по ОВС показано на рис.9.

Перша ланцюг програмує ОЕ другий мікросхеми в такій послідовності: 21-22-23-24-25-26-27-28-29.

Друга програмує частини першої, третьої та четвертої мікросхем: 11-12-13-31-32-33-41-42-43-14-15-16-34-35-36.

Третя залишилися ОЕ: 17-18-19-37-38-39-47-48-49-44-45-46.

Програму ОВС представляють таблиці 9-11.

Рис.9

Таблиця 9. Таблиця 10. Таблиця 11.

Номер ОЕ

Код команди


Номер ОЕ

Код команди


Номер ОЕ

Код команди

21

C3C3


11

С3С3


17

E000

22

098D


12

098 D


18

E083

23

EA63


13

958F


19

8930

24

E5EF


31

C3FF


37

E043

25

8986


32

894F


38

8920

26

08CF


33

FFFF


39

D802

27

C03F


41

EAEB


47

D802

28

8B47


42

8409


48

E082

29

95AD


43

EF3E


49

C3CE



14

E5EB


44

6478



15

8989


45

8872



16

1BCF


46

04EF



34

61E1





35

2907





36

8478



Висновок

Побудована ОВС для вирішення формули З = 7 | A - B | / 4 на чотирьох мікросхемах. Поставлена ​​задача виконується за двісті дев'яносто сім тактів, з яких двісті сорок тактів програмування. Наведено схеми ланцюгів програмування і коди команд для практичного використання. Також представлені тимчасові діаграми для контролю ОЕ.

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Курсова
342.9кб. | скачати


Схожі роботи:
Побудова аналогової ЕОМ для вирішення диференціального рівняння шостого порядку
Формули Рiвносильнiсть формул Тотожно iстиннi формули
Формули можливо невідомі для рішень рівняння Піфагора
Побудова ЛОМ для ВАТ Центральний Телеграф
Побудова геодезичної основи для виробництва крупномасштобной топографічної зйомки
Автоматичне розпаралелювання програм для розподілених систем Статичний побудова розширеного
Побудова арифметико-логічного пристрою для виконання операції множення цілих чисел
Побудова розпізнавача для заданої граматики і реалізація його у вигляді програми яка перевіряє
Чисельні методи для вирішення нелінійних рівнянь
© Усі права захищені
написати до нас