ОРТ2/К1 2018 — разлика између измена
(Додато решење) |
(Zamena slike dijagrama toka popravljenom svg verzijom) |
||
(Није приказано 5 међуизмена 2 корисника) | |||
Ред 1: | Ред 1: | ||
{{tocright}} | {{tocright}} | ||
== Поставка == | == Поставка == | ||
Реализовати уређај P за спрегу између уређаја UA и UB који извршава следећу операцију. Уређај P треба од уређаја UA да паралелно прими неозначену реч N, која представља дужину низа A, а затим и чланове низа A (a[i]). Сматрати да је N паран број и да не може бити једнак нули. Чланови низа A су означене шеснаестобитне бинарне речи дате у другом комплементу. Након завршеног читања низа A, уређај P треба да пошаље уређају UB низ B који има дупло мање чланова него низ A. Чланови низа B (b[i]) су четрнаестобитне означене речи у другом комплементу где је: <math>b[i] = \frac{a[i] + a[(N - 1) - i]}{4}, i = 0..(\frac{N}{2} - 1)</math>. Описана операција треба да се понавља циклично. Уређаји UA, P и UB треба да раде синхроно на исти сигнал такта. | Реализовати уређај P за спрегу између уређаја UA и UB који извршава следећу операцију. Уређај P треба од уређаја UA да паралелно прими неозначену реч N, која представља дужину низа A, а затим и чланове низа A (a[i]). Сматрати да је N паран број и да не може бити једнак нули. Чланови низа A су означене шеснаестобитне бинарне речи дате у другом комплементу. Након завршеног читања низа A, уређај P треба да пошаље уређају UB низ B који има дупло мање чланова него низ A. Чланови низа B (b[i]) су четрнаестобитне означене речи у другом комплементу где је: <math>b[i] = \frac{a[i] + a[(N - 1) - i]}{4}, i = 0..\left( \frac{N}{2} - 1\right) </math>. Описана операција треба да се понавља циклично. Уређаји UA, P и UB треба да раде синхроно на исти сигнал такта. | ||
Уређај UA шаље уређају P шеснаестобитне бинарне речи по линијама података DAP<sub>15..0</sub>, при чему је бит 15 најстарији а бит 0 најмлађи бит. За синхронизацију између уређаја UA и P користе се статусни сигнал SPA и управљачки сигнал CAP. Вредностима 0 и 1 сигнала SPA уређај P шаље уређају UA индикацију када не може и када може да прими шеснаестобитну бинарну реч, респективно. Вредношћу 1 сигнала CAP, трајања једне периоде сигнала такта, уређај UA шаље уређају P команду да треба да прими шеснаестобитну бинарну реч, при чему уређај UA то чини кад утврди да уређај P на статусној линији SPA држи вредност 1. | Уређај UA шаље уређају P шеснаестобитне бинарне речи по линијама података DAP<sub>15..0</sub>, при чему је бит 15 најстарији а бит 0 најмлађи бит. За синхронизацију између уређаја UA и P користе се статусни сигнал SPA и управљачки сигнал CAP. Вредностима 0 и 1 сигнала SPA уређај P шаље уређају UA индикацију када не може и када може да прими шеснаестобитну бинарну реч, респективно. Вредношћу 1 сигнала CAP, трајања једне периоде сигнала такта, уређај UA шаље уређају P команду да треба да прими шеснаестобитну бинарну реч, при чему уређај UA то чини кад утврди да уређај P на статусној линији SPA држи вредност 1. | ||
Ред 22: | Ред 20: | ||
== Решење == | == Решење == | ||
Објашњење: С обзиром да се сабирају парови бројева, могуће је користити дупло мању меморију од величине прослеђеног низа. Пошто бројач креће од 0, због тога у А учитавамо N/2 - 1. Првих N/2 итерација само учитавамо елементе. Затим, у следећих N/2, паралелно учитавамо и користимо могућност да нам меморија на излазу има оно што је тренутно на адреси и да то у истом такту и прегазимо. Тако овде прочитамо податак на адреси, саберемо га са тренутним чланом који нам долази од уређаја А и онда то упишемо на исту ту адресу. Дељење са 4 је еквивалентно као да два пута шифтујемо удесно, зато се при слању података уређају B, шаљу само битови од 15 до 2. | '''''Објашњење:''''' С обзиром на то да се сабирају парови бројева, могуће је користити дупло мању меморију од величине прослеђеног низа. Пошто бројач креће од 0, због тога у А учитавамо N/2 - 1. Првих N/2 итерација само учитавамо елементе. Затим, у следећих N/2, паралелно учитавамо и користимо могућност да нам меморија на излазу има оно што је тренутно на адреси и да то у истом такту и прегазимо. Тако овде прочитамо податак на адреси, саберемо га са тренутним чланом који нам долази од уређаја А и онда то упишемо на исту ту адресу. Дељење са 4 је еквивалентно као да два пута шифтујемо удесно, зато се при слању података уређају B, шаљу само битови од 15 до 2. | ||
[[Датотека:ORT2 | [[Датотека:ORT2 K1 2018 Operaciona jedinica.png|thumb|1200px|center|Шема уређаја P]] | ||
[[Датотека:ORT2 | [[Датотека:ORT2 K1 2018 Dijagram operaciona.svg|1200px|оквир|центар|Дијаграм тока сигнала операционе јединице]] | ||
Тренутна верзија на датум 6. новембар 2022. у 13:25
Поставка
Реализовати уређај P за спрегу између уређаја UA и UB који извршава следећу операцију. Уређај P треба од уређаја UA да паралелно прими неозначену реч N, која представља дужину низа A, а затим и чланове низа A (a[i]). Сматрати да је N паран број и да не може бити једнак нули. Чланови низа A су означене шеснаестобитне бинарне речи дате у другом комплементу. Након завршеног читања низа A, уређај P треба да пошаље уређају UB низ B који има дупло мање чланова него низ A. Чланови низа B (b[i]) су четрнаестобитне означене речи у другом комплементу где је: . Описана операција треба да се понавља циклично. Уређаји UA, P и UB треба да раде синхроно на исти сигнал такта.
Уређај UA шаље уређају P шеснаестобитне бинарне речи по линијама података DAP15..0, при чему је бит 15 најстарији а бит 0 најмлађи бит. За синхронизацију између уређаја UA и P користе се статусни сигнал SPA и управљачки сигнал CAP. Вредностима 0 и 1 сигнала SPA уређај P шаље уређају UA индикацију када не може и када може да прими шеснаестобитну бинарну реч, респективно. Вредношћу 1 сигнала CAP, трајања једне периоде сигнала такта, уређај UA шаље уређају P команду да треба да прими шеснаестобитну бинарну реч, при чему уређај UA то чини кад утврди да уређај P на статусној линији SPA држи вредност 1.
Уређај P шаље паралелно уређају UB четрнаестобитну бинарну реч по линијама података DPB13..0, при чему је бит 13 најстарији а бит 0 најмлађи бит. За синхронизацију између уређаја P и UB користе се статусни сигнал SBP и управљачки сигнал CPB. Вредностима 0 и 1 сигнала SBP уређај UB шаље уређају P индикацију када не може и када може да прими четрнаестобитну бинарну реч, респективно. Вредношћу 1 сигнала CPB, трајања једне периоде сигнала такта, уређај P шаље уређају UB команду да треба да прими четрнаестобитну бинарну реч, при чему уређај P то чини кад утврди да уређај UB на статусној линији SBP држи вредност 1.
У случају коришћења меморијског модула потребно је обратити пажњу на капацитет модула тако да се не користи сувишан простор. Сматрати да су на располагању меморијски модули који имају стандардне улазе и излазе (, , , ).
Претпоставити да се на почетку на статусним линијама SPA и SBP налазе вредности 0.
- Нацртати структурну шему операционе јединице уређаја P.
- Нацртати дијаграме тока управљачких сигнала операционе јединице и управљачке јединице уређаја P.
- Нацртати структурну шему управљачке јединице уређаја P реализоване помоћу бројача корака и декодера и дати изразе за генерисање управљачких сигнала операционе и управљачке јединице уређаја P.
Решење
Објашњење: С обзиром на то да се сабирају парови бројева, могуће је користити дупло мању меморију од величине прослеђеног низа. Пошто бројач креће од 0, због тога у А учитавамо N/2 - 1. Првих N/2 итерација само учитавамо елементе. Затим, у следећих N/2, паралелно учитавамо и користимо могућност да нам меморија на излазу има оно што је тренутно на адреси и да то у истом такту и прегазимо. Тако овде прочитамо податак на адреси, саберемо га са тренутним чланом који нам долази од уређаја А и онда то упишемо на исту ту адресу. Дељење са 4 је еквивалентно као да два пута шифтујемо удесно, зато се при слању података уређају B, шаљу само битови од 15 до 2.
Напомене:
Асистент је на консултацијама дао идејно решење које је аутор детаљније разрадио на сликама изнад. Најоптималније решење користи N/2 меморије. Решење доступно на РТИ Mega стога није најоптималније. Ова врста неоптималности носила је -2 до -3 поена.