[an error occurred while processing this directive]
|
т.е. ни как не надо их определять в самом Таске, э.... вообшем если сравнивать с С++, то с этими переменными надо работать как с глобальными. Т.е. не надо Cs и Wr передовать в таск
Сделай вот так.
reg [2:0] Addr;
reg [2:0] MPDIO;
reg CS,Wr;
...
task WrDIO;
input [2:0] AddrIn;
input [7:0] DIn;
output [2:0] AddrOut;
output [7:0] DOut;
begin
CS = 1'b1;
DOut[7:0] = DIn[7:0];
AddrOut[2:0] = AddrIn[2:0];
#30 Wr = 1'b1;
#100 Wr = 1'b0;
#30 CS = 1'b0;
DOut[7:0] = 8'bz;
end
endtask
ну и вызов соответсвенно:
WrDIO(3'h1,8'h95,Addr[2:0],MPDIO[7:0]);
WrDIO(3'h2,8'h23,Addr[2:0],MPDIO[7:0]);
E-mail: info@telesys.ru