diff options
author | justanothercatgirl <sotov@twistea.su> | 2025-05-14 19:16:38 +0300 |
---|---|---|
committer | justanothercatgirl <sotov@twistea.su> | 2025-05-14 20:24:21 +0300 |
commit | 11508800cfaefc1c25a793760bf10d3fd997af80 (patch) | |
tree | 8ed58e143243415830f97ea74b9ba4613df23e85 /questions/1-c.txt |
Diffstat (limited to 'questions/1-c.txt')
-rw-r--r-- | questions/1-c.txt | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/questions/1-c.txt b/questions/1-c.txt new file mode 100644 index 0000000..048ca03 --- /dev/null +++ b/questions/1-c.txt @@ -0,0 +1,34 @@ +Арифметическое устройство + +Требуется при помощи языка Verilog спроектировать параметрическое +арифметическое устройство для выполнения операций сложения и умножения чисел с +фиксированной запятой. + +Имя модуля должно быть au. + +Параметры модуля: + + * WIDTH_1 - размер целой части числа (по умолчанию, 4 бита). + * WIDTH_2 - размер дробной части числа (по умолчанию, 4 бита). + +Входы модуля: + + * x_int, y_int - шины проводов размера WIDTH_1, которые задают целые части + входных аргументов x и y. + * x_frac, y_frac - шины проводов размера WIDTH_2, которые задают дробные + части входных аргументов x и y. + * operation - провод, задающий тип операции (0 - сложение, 1 - умножение). + +Выходы модуля: + + * zero - провод, который сигнализирует о том, что результат является 0. + * overflow - провод, который сигнализирует о том, что произошло переполнение. + * result_int - шина проводов размера WIDTH_1, которая выдает целую часть + результата операции. + * result_frac - шина проводов размера WIDTH_2, которая задает дробную часть + результата. + +Примечание: при выходе результирующего значения за пределы ширины целой части +происходит переполнение. + + |