OpenCores
URL https://opencores.org/ocsvn/async_sdm_noc/async_sdm_noc/trunk

Subversion Repositories async_sdm_noc

[/] [async_sdm_noc/] [trunk/] [sdm/] [src/] [subc_ctl.v] - Diff between revs 22 and 28

Show entire file | Details | Blame | View Log

Rev 22 Rev 28
Line 50... Line 50...
   wire   acko;                 // the ack signal after the C2N gate
   wire   acko;                 // the ack signal after the C2N gate
   wire   fend;                 // the end of frame indicator
   wire   fend;                 // the end of frame indicator
   wire   acken;                // active low ack enable
   wire   acken;                // active low ack enable
 
 
`ifdef ENABLE_LOOKAHEAD
`ifdef ENABLE_LOOKAHEAD
   c2n CD (.q(acko), .a0(ai2cb), .a1(ack)); // the C2N gate to avoid early withdrawal
   c2n CD (.q(acko), .a(ai2cb), .b(ack)); // the C2N gate to avoid early withdrawal
`else
`else
   assign acko = ai2cb;
   assign acko = ai2cb;
`endif
`endif
 
 
   c2p  CEN  (.a1(eof), .a0(acko), .q(fend));
   c2p  CEN  (.b(eof), .a(acko), .q(fend));
   c2   C    (.a0(rt_ra), .a1(fend), .q(csc));
   c2   C    (.a0(rt_ra), .a1(fend), .q(csc));
   nand U1   ( acken, rt_ra, ~csc);
   nand U1   ( acken, rt_ra, ~csc);
   nor  U2   ( rt_rst, fend, ~csc);
   nor  U2   ( rt_rst, fend, ~csc);
   nor  AG   ( nack, acko&(~eof), acken|(rt_err&ack), ~rst_n);
   nor  AG   ( nack, acko&(~eof), acken|(rt_err&ack), ~rst_n);
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.