diff options
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, которая задает дробную часть + результата. + +Примечание: при выходе результирующего значения за пределы ширины целой части +происходит переполнение. + + |