А ncvlog составить ошибку?

E

elone

Guest
Это verilog SRC:
`celldefine
Модуль add1d1 (A, B, CI, SM, CO);
ввод А, B, CI;
вывода С.М., CO;

проволока int_res_0, int_res_1, int_res_2;

/////////////////////////////////////
/ / ФУНКЦИОНАЛЬНОСТЬ / /
/////////////////////////////////////

XOR (SM, A, B, CI);
и (int_res_0, A, B);
и (int_res_1, A, CI);
и (int_res_2, B, CI);
или (CO, int_res_0, int_res_1, int_res_2);

/////////////////////////////////////
/ / ИНТЕРВАЛ / /
/////////////////////////////////////

уточнить
specparam tpd_CI_SM_posedge = (0, 0, 0, 0, 0, 0);
specparam tpd_A_SM_posedge = (0, 0, 0, 0, 0, 0);
specparam tpd_B_SM_posedge = (0, 0, 0, 0, 0, 0);
specparam tpd_CI_SM_negedge = (0, 0, 0, 0, 0, 0);
specparam tpd_A_SM_negedge = (0, 0, 0, 0, 0, 0);
specparam tpd_B_SM_negedge = (0, 0, 0, 0, 0, 0);
specparam tpd_CI_CO = (0, 0, 0, 0, 0, 0);
specparam tpd_A_CO = (0, 0, 0, 0, 0, 0);
specparam tpd_B_CO = (0, 0, 0, 0, 0, 0);

(posedge CI => (С. М.: А)) = tpd_CI_SM_posedge;
(posedge A => (С. М.: B)) = tpd_A_SM_posedge;
(posedge B => (С. М.: А)) = tpd_B_SM_posedge;
(negedge CI => (С. М.: А)) = tpd_CI_SM_negedge;
(negedge A => (С. М.: B)) = tpd_A_SM_negedge;
(negedge B => (С. М.: А)) = tpd_B_SM_negedge;
(CI => CO) = tpd_CI_CO;
(A => CO) = tpd_A_CO;
(B => CO) = tpd_B_CO;
endspecify
endmodule
`endcelldefine

Это ошибка:
ncvlog: 05.00-P001: (C) Copyright 1995-2003 Каденция Дизайн Systems,
Incspecparam tpd_CI_SM_posedge = (0, 0, 0, 0, 0, 0);
|
ncvlog: * E, NOPPLS (C: / verilog/cl41.v, 32 | 34): незаконные синтаксиса за исключением случаев, когда определяющим PATHPULSE $ specparam [13.7 (IEEE)].

 
Параметр число может быть ошибка.
Формат является (0:0:0, ..., ...)?

 
Когда я использую modelsim составить его, все в порядке?

 
Я попытался собрать модуль над различными Verilog тренажеров.
- 1) Verilog-XL:
> Verilog add1d1.v
It's OK

- 2) NC-Verilog:
> Ncxlmode add1d1.v
Сообщение об ошибке!

- 3) VCS
> VCS-C add1d1.v
Сообщение об ошибке!
-------------------------------------------------- -------------------------------
Но, если изменить сроки триплетным в add1d1.v к 0.0:0.0:0.0,
Затем все три simulaors может составить ей успешно.
-------------------------------------------------- -------------------------------

Я думаю, может быть, это происходит из определения о том, как
определить сроки триплетным имеет некоторую двусмысленность

<img src="http://www.edaboard.com/images/smiles/icon_confused.gif" alt="Confused" border="0" />-------------------------------------------------- -------------------------------

PS:
Я видел еще один инструмент, который не поддерживает формат триплетным
в оригинальном add1d1 модуля до ....

 
Это T $ MC stdlib файл!Как это произошло?

 

Welcome to EDABoard.com

Sponsor

Back
Top