aboutsummaryrefslogtreecommitdiffstats
path: root/questions/2-a.txt
diff options
context:
space:
mode:
authorjustanothercatgirl <sotov@twistea.su>2025-05-14 19:16:38 +0300
committerjustanothercatgirl <sotov@twistea.su>2025-05-14 20:24:21 +0300
commit11508800cfaefc1c25a793760bf10d3fd997af80 (patch)
tree8ed58e143243415830f97ea74b9ba4613df23e85 /questions/2-a.txt
Initial and probably final commitHEADmaster
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.