відповідає 011100 2=28, а значенням 001010 2=10 - 001110 2=14 в таблиці LUT2. При додаванні 28 і 14 по модулю 30 отримуємо результат 12. Даному числу в таблиці LUT4 відповідає значення 001000 2=8.
Перевірка:
(С * D) mod 31=(7 * 10) mod 31=8.
На рис. 5.1 (а) представлена ??тимчасова діаграма рішення даного прикладу в QUARTUS II.
Малюнок 5.1 (а) - Рішення Прімера 1 в QUARTUS II
Приклад 2.
Дано: С=28=011 100 2, D=15=001 111 2.
Значенню 011100 2=28 в таблиці LUT1 відповідає 010000 2=16, а значенням 001111 2=15 - 010101 2=21 в таблиці LUT2. При додаванні 16 і 21 по модулю 30 отримуємо результат 7. Даному числу в таблиці LUT4 відповідає значення 010001 2=17.
Перевірка:
(С * D) mod 31=(28 * 15) mod 31=17.
На рис. 5.1 (б) представлена ??тимчасова діаграма рішення даного прикладу в QUARTUS II.
Малюнок 5.1 (б) - Рішення Прімера 2 в QUARTUS II
5.2 Приклад керуючого пристрою помножувачем по модулю m
Приклад керуючого пристрою помножувачем наведено на риСунки 5.2. На входи надходять осведомітельних сигнали p [12 .. 0], а на виході з'являються відповідні керуючі сигнали S [5 .. 0]. Сигнал Z - позначає закінчення операції.
Малюнок 5.2 - Управляє пристрій сумматором
Приклад мікропрограми:
module UA
(
/ / {{ALTERA_ARGS_BEGIN}} DO NOT REMOVE THIS LINE!, p, Z, S
/ / {{ALTERA_ARGS_END}} DO NOT REMOVE THIS LINE!
);
/ / Port Declaration
/ / {{ALTERA_IO_BEGIN}} DO NOT REMOVE THIS LINE! clk; [12:0] p; Z; [5:0] S;
/ / {{ALTERA_IO_END}} DO NOT REMOVE THIS LINE!
integer pc=1;// Оголошення лічильника тактів, змінна типу integer
reg [5:0] S;// Оголошення регістра для зберігання масиву керуючих сигналів
reg Z=0;// Оголошення регістра для зберігання ознаки закінчення операції
always @ (posedge clk) / / Ця функція спрацьовує при позитивному (pos) перепаді (edge) сигналу clk (по фронту)
begin (pc)
: begin=6'b000110;// S1, s2=pc +1;
: begin (p [0] == 1) and (p [1] == 1) and ... (p [13] == 1) begin=6'b011000;// S3, s4=pc +1;
: begin=6 «b000000;=1; S=6» b000000;
end
endmodule
6. Тестування суматора і помножувача
Тестування суматора і помножувача полягає в перевірки працездатності окремих елементів, що входять до їх складу - регістри і суматори.
Регістри.
Всі нулі (всі одиниці) . Проводиться запис нулів (одиниць), після чого проводиться послідовне зчитування і перевірка цієї інформації. Перевіряється правильність зберігання нульовий (одиничної) інформації, перевірка тракту зв'язку.
Запис і запис / зчитуванн...