aboutsummaryrefslogtreecommitdiffstats
path: root/questions/2-a.txt
diff options
context:
space:
mode:
Diffstat (limited to 'questions/2-a.txt')
-rw-r--r--questions/2-a.txt24
1 files changed, 24 insertions, 0 deletions
diff --git a/questions/2-a.txt b/questions/2-a.txt
new file mode 100644
index 0000000..e272b43
--- /dev/null
+++ b/questions/2-a.txt
@@ -0,0 +1,24 @@
+Дерево сумматоров
+
+Требуется при помощи языка Verilog спроектировать параметрический блок сложения
+нескольких чисел. Схема сложения выполнена в виде дерева, когда нечетные по
+номеру числа складываются с четными и к результирующим числам применяется такая
+же схема, пока не получиться одно число.
+
+Имя модуля должно быть tree_adder.
+
+Парметры модуля:
+
+ * WIDTH - размер числа (по умолчанию, 8 бит).
+ * SIZE - количество складываемых чисел (по умолчанию, 4). Для простоты
+ реализации, считается, что количество чисел является степенью двойки
+ (другими словами, дерево сложения является полным двоичным деревом).
+
+Вход модуля: data_in - шина проводов размера SIZE * WIDTH, представляющая собой
+последовательную конкатенацию всех входных чисел.
+
+Выход модуля: data_out - шина проводов размера WIDTH, представляющая собой
+результат сложения.
+
+При проектировании модуля игнорируется возможное переполнение. Считается, что
+все промеужеточные числа и финальное число имеет размер WIDTH.