The following compilation steps were taken in this example:
The prime generator was written in Verilog primes.cv .
Then it was compiled to C using VTOC to give primes.c .
It was also compiled to gates using cv2.100 to give a Verilog netlist primes.vnl .
Finally, the gate-level vnl file was compiled to C using VTOC to give another C version primesvnl.c .
These compilations can be repeated using the following makefile .
When VTOC compiled the Verilog netlist, it needed behavioural models of the gates and SRAM:
Note that VTOC was given the flag -mode1 clk both times it was used, so it is not necessary to exercise the clock net in the C version.
These following file was used to demonstrate debugging information from the C versions ttvinc.c .
The results from each run were identical, and are as expected: results .
However, the run times are vastly different. Here are the run times on an UltraSparc II at 400 MHz.
(C) 1999 TenisonTech
//
// primes.cv
//
// DJ Greaves. 1999.
// University of Cambridge.
//
module PRIMEGEN(clk, reset, out, guard, hs);
parameter topbit = 17;
input clk, reset;
output [topbit:0] out;
output guard;
input hs;
reg [7:0] mem [32767:0]; // synthesis map_to SSRAM/SSRAM32x8
reg [topbit:0] p, q;
reg [1:0] phase;
reg guard;
reg [topbit:0] out;
reg pc;
reg [7:0] hold;
always @(posedge clk) begin
if (reset) begin
pc <= 0;
phase = 0;
p = 0;
q = 0;
guard <= 0;
end
// Clear the array
else if (phase == 0) begin
mem [p[topbit:3]] <= 0;
p <= p + 8;
if (p[topbit]) begin
phase <= phase + 1;
p <= 4;
q <= 2;
end
end
// Cross out multiples
else if (phase == 1) begin
pc <= ~pc;
if (~pc) hold <= mem[p[topbit:3]];
else begin
mem[p[topbit:3]] <= hold | (1 << p[2:0]);
if (q[topbit]) begin
phase <= phase + 1;
p <= 0;
end
else if (p[topbit]) begin
q <= q + 1;
p <= 2 * (q+1);
// $display("Phase %d %d\n", phase, q);
end
else p <= p + q;
end
end
// Print out results
else if (phase == 2) begin
if (p[topbit]) begin
$display("All done at %t\n", $time);
$finish;
end
if (hs) begin
guard <= 0;
p <= p + 1;
end
else begin
if ((mem[p[topbit:3]] & (1 << p[2:0])) == 0) begin
guard <= 1;
out <= p;
end
else p <= p + 1;
end
end
end
endmodule
Note that the variables `pc' and `hold' were written into the source code to avoid the need for read-modify write cycles on the array, since these are not supported by the cv2 algorithm. If we had used cv3 as a front end then they would not be necessary since the compiler would introduce equivalent extra registers.
Here is a test wrapper which enables
simulation of the Verilog versions using a Verilog behavioural simulator.
Here is the output from VTOC when prime.cv is
compiled to C.
Here is a C version of the test wrapper.
This is needed to run the C version of the prime generator: either
at behavioural or gate level.
Here is typical debugging C code
that can be placed in the ttvinc.c file to print output. Note that
the array has different names in the primesvnl.c and primes.c
versions, so the hash define must be modified.
Here is the gate-level version of the prime
generator, compiled using a normal Verilog compiler. Note that
the array has been mapped to a synchronous SRAM instance.
Here is the C version of the gate-level
version of the prime
generator which has been compiled by VTOC from the .vnl file.
Here is the makefile used in compilation.
Here is the behavioural model of the SRAM that
is needed for the instance generated by CV2.100. This is used for the gate
level simulation and input to the second VTOC compilation.
`define TOPBIT 17
module SIMSYS();
parameter topbit = `TOPBIT;
reg clk, reset;
wire [topbit:0] out;
wire guard;
wire hs;
integer printed;
initial begin
printed = 0;
clk = 0;
reset = 1;
#1000
reset = 0;
end
always #50 clk = !clk;
always @(posedge clk) if (guard) begin
if (printed < 22) $display("Prime %d\n", out);
printed = printed + 1;
end
assign #10 hs = guard;
PRIMEGEN primegen(clk, reset, out, guard, hs);
endmodule
Prime.c
/* vtoc -mode1 clk -mlt fl_newnet_copy primes.cv -root PRIMEGEN -o primes.c */
/* User=djg */
/* Output from CBG vtoc V0.1 alpha. CBG/TT CVA EDA CORE (Core release 1.3e zent 8 July 99). */
#include stdio.h
#include "ttvtoc.h"
/* start of tt generated C code */
static int ttvtoc_ticks = 0; /*used for $time */
void ttv( unsigned int *clk, unsigned int *reset, unsigned int *out, unsigned int *guard, unsigned int *hs)
{
unsigned static int pc_t100;
unsigned static int q_t101;
unsigned static int p_t102;
unsigned static int phase_t103;
unsigned static int mem_subscript105;
unsigned static int mem_t104;
unsigned static int mem [32768];
unsigned static int ptr;
unsigned static int p;
unsigned static int q;
unsigned static int phase;
unsigned static int pc;
unsigned static int hold;
#include "ttvinc.c"
/* synch */
if (1) { *guard = 1 & (((*reset) ? 0:((phase==0 || phase==1) ? *guard:((phase==2) ? ((*hs) ? 0:(((*((32767 & p>>3) + mem) & 1<<(7 & p))==0) ? 1:*guard)):*guard))));
*out = 262143 & (((*reset || (phase==0 || phase==1)) ? *out:((phase==2) ? ((*hs) ? *out:(((*((32767 & p>>3) + mem) & 1<<(7 & p))==0) ? p:*out)):*out)));
pc_t100 = 1 & (((*reset) ? 0:((phase==0) ? pc:((phase==1) ? 1 & ~pc:pc))));
q_t101 = 262143 & (((*reset) ? q:((phase==0) ? ((1 & p>>17) ? 2:q):((phase==1) ? ((1 & ~pc || 1 & q>>17) ? q:((1 & p>>17) ? q + 1:q)):q))));
p_t102 = 262143 & (((*reset) ? p:((phase==0) ? ((1 & p>>17) ? 4:p + 8):((phase==1) ? ((1 & ~pc) ? p:((1 & q>>17) ? 0:((1 & p>>17) ? 2*(q + 1):p + q))):((phase==2) ? ((*hs) ? p + 1:(((*((32767 & p>>3) + mem) & 1<<(7 & p))==0) ? p:p + 1)):p)))));
phase_t103 = 3 & (((*reset) ? phase:((phase==0) ? ((1 & p>>17) ? phase + 1:phase):((phase==1) ? ((1 & ~pc) ? phase:((1 & q>>17) ? phase + 1:phase)):phase))));
mem_subscript105 = 32767 & p>>3;
mem_t104 = 255 & (((*reset) ? *((32767 & p>>3) + mem):((phase==0) ? 0:((phase==1) ? ((1 & ~pc) ? *((32767 & p>>3) + mem):hold | 1<<(7 & p)):*((32767 & p>>3) + mem)))));
hold = 255 & (((*reset || phase==0) ? hold:((phase==1 && 1 & ~pc) ? *((32767 & p>>3) + mem):hold)));
if ((((((1 & p>>17 && 1 & ~((*((32767 & p>>3) + mem) & 1<<(7 & p))==0)) && 1 & ~*hs) && phase==2) && 1 & ~(phase==1)) && 1 & ~(phase==0)) && 1 & ~*reset) ttvtoc_display("All done at %t\n", ttvtoc_ticks);
if ((((((1 & p>>17 && 1 & ~((*((32767 & p>>3) + mem) & 1<<(7 & p))==0)) && 1 & ~*hs) && phase==2) && 1 & ~(phase==1)) && 1 & ~(phase==0)) && 1 & ~*reset) ttvtoc_finish();
if ((((((1 & p>>17 && (*((32767 & p>>3) + mem) & 1<<(7 & p))==0) && 1 & ~*hs) && phase==2) && 1 & ~(phase==1)) && 1 & ~(phase==0)) && 1 & ~*reset) ttvtoc_display("All done at %t\n", ttvtoc_ticks);
if ((((((1 & p>>17 && (*((32767 & p>>3) + mem) & 1<<(7 & p))==0) && 1 & ~*hs) && phase==2) && 1 & ~(phase==1)) && 1 & ~(phase==0)) && 1 & ~*reset) ttvtoc_finish();
if (((((1 & p>>17 && *hs) && phase==2) && 1 & ~(phase==1)) && 1 & ~(phase==0)) && 1 & ~*reset) ttvtoc_display("All done at %t\n", ttvtoc_ticks);
if (((((1 & p>>17 && *hs) && phase==2) && 1 & ~(phase==1)) && 1 & ~(phase==0)) && 1 & ~*reset) ttvtoc_finish();
}
(ttvtoc_ticks++);
pc = pc_t100;
q = q_t101;
p = p_t102;
phase = phase_t103;
*(mem + mem_subscript105) = mem_t104;
/* post cont */
}
/* End of tt generated C routine */
Main.c
/*
* main.c for primes example
*/
#define CALL ttv( &clk, &reset, &out, &guard, &hs)
unsigned int clk;
unsigned int reset;
unsigned int out;
unsigned int guard;
unsigned int hs;
int main()
{
int count = 0;
reset = 1;
CALL;
reset = 0;
while(1)
{
CALL;
hs = guard;
if (guard && count++ < 20) printf("Prime %i\n", out);
}
return 0;
}
Ttvinc.c
{
#define xmem array_mem_mem_mem
static int oldmem0;
if (xmem[0] != oldmem0)
{
printf("Phase = %i, p=%i q=%i %x %x ticks =%i\n", phase, p, q, xmem[0], xmem[1], ttvtoc_ticks);
oldmem0 = xmem[0];
}
}
Primes.vnl
/* cv3core cv2.100 /homes/djg/codesign/examples/primes/primes.cv -root PRIMEGEN -o /homes/djg/codesign/examples/primes/primes.vnl */
/* User=/home/djg */
/* output from CBG CV2/100 */
module PRIMEGEN (clk, reset, out, guard, hs);
supply0 LGND; supply1 LVCC;
input clk;
input reset;
output [17:0] out;
output guard;
input hs;
wire /* lid */ g631;
wire /* lid */ g630;
wire /* lid */ g628;
wire /* lid */ g627;
wire /* lid */ g625;
wire /* lid */ g624;
wire /* lid */ g622;
wire /* lid */ g621;
wire /* lid */ g619;
wire /* lid */ g618;
wire /* lid */ g616;
wire /* lid */ g615;
wire /* lid */ g613;
wire /* lid */ g612;
wire /* lid */ g610;
wire /* lid */ g609;
wire /* lid */ g593;
wire /* lid */ g592;
wire /* lid */ g591;
wire /* lid */ g590;
wire /* lid */ mq589;
wire /* lid */ g588;
wire /* lid */ g587;
wire /* lid */ I586;
wire /* lid */ I585;
wire /* lid */ g584;
wire /* lid */ g583;
wire /* lid */ mq582;
wire /* lid */ mq581;
wire /* lid */ mq579;
wire /* lid */ g578;
wire /* lid */ g577;
wire /* lid */ g576;
wire /* lid */ mq574;
wire /* lid */ g573;
wire /* lid */ mq571;
wire /* lid */ g570;
wire /* lid */ mq568;
wire /* lid */ g567;
wire /* lid */ mq565;
wire /* lid */ g564;
wire /* lid */ mq562;
wire /* lid */ g561;
wire /* lid */ mq559;
wire /* lid */ g558;
wire /* lid */ mq556;
wire /* lid */ g555;
wire /* lid */ mq553;
wire /* lid */ g552;
wire /* lid */ mq550;
wire /* lid */ g549;
wire /* lid */ mq547;
wire /* lid */ g546;
wire /* lid */ mq544;
wire /* lid */ g543;
wire /* lid */ mq541;
wire /* lid */ g540;
wire /* lid */ mq538;
wire /* lid */ g537;
wire /* lid */ mq535;
wire /* lid */ g534;
wire /* lid */ mq532;
wire /* lid */ g531;
wire /* lid */ mq529;
wire /* lid */ g528;
wire /* lid */ g526;
wire /* lid */ g525;
wire /* lid */ g524;
wire /* lid */ g523;
wire /* lid */ I522;
wire /* lid */ g521;
wire /* lid */ g520;
wire /* lid */ mq519;
wire /* lid */ g518;
wire /* lid */ mq516;
wire /* lid */ g515;
wire /* lid */ g514;
wire /* lid */ g513;
wire /* lid */ mq512;
wire /* lid */ g511;
wire /* lid */ mq510;
wire /* lid */ g509;
wire /* lid */ g508;
wire /* lid */ g507;
wire /* lid */ g506;
wire /* lid */ g505;
wire /* lid */ g504;
wire /* lid */ g503;
wire /* lid */ g502;
wire /* lid */ g501;
wire /* lid */ mq499;
wire /* lid */ g498;
wire /* lid */ g497;
wire /* lid */ g496;
wire /* lid */ mq495;
wire /* lid */ g494;
wire /* lid */ mq493;
wire /* lid */ g492;
wire /* lid */ g491;
wire /* lid */ g490;
wire /* lid */ g489;
wire /* lid */ g488;
wire /* lid */ g487;
wire /* lid */ g486;
wire /* lid */ g485;
wire /* lid */ g484;
wire /* lid */ mq482;
wire /* lid */ g481;
wire /* lid */ g480;
wire /* lid */ g479;
wire /* lid */ mq478;
wire /* lid */ g477;
wire /* lid */ mq476;
wire /* lid */ g475;
wire /* lid */ g474;
wire /* lid */ g473;
wire /* lid */ g472;
wire /* lid */ g471;
wire /* lid */ g470;
wire /* lid */ g469;
wire /* lid */ g468;
wire /* lid */ g467;
wire /* lid */ mq465;
wire /* lid */ g464;
wire /* lid */ g463;
wire /* lid */ g462;
wire /* lid */ mq461;
wire /* lid */ g460;
wire /* lid */ mq459;
wire /* lid */ g458;
wire /* lid */ g457;
wire /* lid */ g456;
wire /* lid */ g455;
wire /* lid */ g454;
wire /* lid */ g453;
wire /* lid */ g452;
wire /* lid */ g451;
wire /* lid */ g450;
wire /* lid */ mq448;
wire /* lid */ g447;
wire /* lid */ g446;
wire /* lid */ g445;
wire /* lid */ mq444;
wire /* lid */ g443;
wire /* lid */ mq442;
wire /* lid */ g441;
wire /* lid */ g440;
wire /* lid */ g439;
wire /* lid */ g438;
wire /* lid */ g437;
wire /* lid */ g436;
wire /* lid */ g435;
wire /* lid */ g434;
wire /* lid */ g433;
wire /* lid */ mq431;
wire /* lid */ g430;
wire /* lid */ g429;
wire /* lid */ g428;
wire /* lid */ mq427;
wire /* lid */ g426;
wire /* lid */ mq425;
wire /* lid */ g424;
wire /* lid */ g423;
wire /* lid */ g422;
wire /* lid */ g421;
wire /* lid */ g420;
wire /* lid */ g419;
wire /* lid */ g418;
wire /* lid */ g417;
wire /* lid */ g416;
wire /* lid */ mq414;
wire /* lid */ g413;
wire /* lid */ g412;
wire /* lid */ g411;
wire /* lid */ mq410;
wire /* lid */ g409;
wire /* lid */ mq408;
wire /* lid */ g407;
wire /* lid */ g406;
wire /* lid */ g405;
wire /* lid */ g404;
wire /* lid */ g403;
wire /* lid */ g402;
wire /* lid */ g401;
wire /* lid */ g400;
wire /* lid */ g399;
wire /* lid */ mq397;
wire /* lid */ g396;
wire /* lid */ g395;
wire /* lid */ g394;
wire /* lid */ mq393;
wire /* lid */ g392;
wire /* lid */ mq391;
wire /* lid */ g390;
wire /* lid */ g389;
wire /* lid */ g388;
wire /* lid */ g387;
wire /* lid */ g386;
wire /* lid */ g385;
wire /* lid */ g384;
wire /* lid */ g383;
wire /* lid */ g382;
wire /* lid */ mq380;
wire /* lid */ g379;
wire /* lid */ g378;
wire /* lid */ g377;
wire /* lid */ mq376;
wire /* lid */ g375;
wire /* lid */ mq374;
wire /* lid */ g373;
wire /* lid */ g372;
wire /* lid */ g371;
wire /* lid */ g370;
wire /* lid */ g369;
wire /* lid */ g368;
wire /* lid */ g367;
wire /* lid */ g366;
wire /* lid */ g365;
wire /* lid */ mq363;
wire /* lid */ g362;
wire /* lid */ g361;
wire /* lid */ g360;
wire /* lid */ mq359;
wire /* lid */ g358;
wire /* lid */ mq357;
wire /* lid */ g356;
wire /* lid */ g355;
wire /* lid */ g354;
wire /* lid */ g353;
wire /* lid */ g352;
wire /* lid */ g351;
wire /* lid */ g350;
wire /* lid */ g349;
wire /* lid */ g348;
wire /* lid */ mq346;
wire /* lid */ g345;
wire /* lid */ g344;
wire /* lid */ g343;
wire /* lid */ mq342;
wire /* lid */ g341;
wire /* lid */ mq340;
wire /* lid */ g339;
wire /* lid */ g338;
wire /* lid */ g337;
wire /* lid */ g336;
wire /* lid */ g335;
wire /* lid */ g334;
wire /* lid */ g333;
wire /* lid */ g332;
wire /* lid */ g331;
wire /* lid */ mq329;
wire /* lid */ g328;
wire /* lid */ g327;
wire /* lid */ g326;
wire /* lid */ mq325;
wire /* lid */ g324;
wire /* lid */ mq323;
wire /* lid */ g322;
wire /* lid */ g321;
wire /* lid */ g320;
wire /* lid */ g319;
wire /* lid */ g318;
wire /* lid */ g317;
wire /* lid */ g316;
wire /* lid */ g315;
wire /* lid */ g314;
wire /* lid */ mq312;
wire /* lid */ g311;
wire /* lid */ g310;
wire /* lid */ g309;
wire /* lid */ mq308;
wire /* lid */ g307;
wire /* lid */ mq306;
wire /* lid */ g305;
wire /* lid */ g304;
wire /* lid */ g303;
wire /* lid */ g302;
wire /* lid */ g301;
wire /* lid */ g300;
wire /* lid */ g299;
wire /* lid */ g298;
wire /* lid */ g297;
wire /* lid */ mq295;
wire /* lid */ g294;
wire /* lid */ g293;
wire /* lid */ mq292;
wire /* lid */ g291;
wire /* lid */ mq290;
wire /* lid */ g289;
wire /* lid */ g288;
wire /* lid */ g287;
wire /* lid */ g286;
wire /* lid */ g285;
wire /* lid */ g284;
wire /* lid */ g283;
wire /* lid */ g282;
wire /* lid */ g281;
wire /* lid */ mq279;
wire /* lid */ g278;
wire /* lid */ I277;
wire /* lid */ mq276;
wire /* lid */ g275;
wire /* lid */ mq274;
wire /* lid */ g273;
wire /* lid */ g272;
wire /* lid */ g271;
wire /* lid */ g270;
wire /* lid */ g269;
wire /* lid */ g268;
wire /* lid */ g267;
wire /* lid */ g266;
wire /* lid */ g265;
wire /* lid */ mq263;
wire /* lid */ g262;
wire /* lid */ mq261;
wire /* lid */ g260;
wire /* lid */ mq259;
wire /* lid */ g258;
wire /* lid */ g257;
wire /* lid */ g256;
wire /* lid */ g255;
wire /* lid */ g254;
wire /* lid */ g253;
wire /* lid */ g252;
wire /* lid */ g251;
wire /* lid */ mq249;
wire /* lid */ g248;
wire /* lid */ mq247;
wire /* lid */ g246;
wire /* lid */ mq245;
wire /* lid */ g244;
wire /* lid */ g243;
wire /* lid */ g242;
wire /* lid */ I241;
wire /* lid */ g240;
wire /* lid */ g238;
wire /* lid */ g237;
wire /* lid */ g236;
wire /* lid */ g235;
wire /* lid */ g234;
wire /* lid */ g233;
wire /* lid */ g232;
wire /* lid */ I231;
wire /* lid */ mq230;
wire /* lid */ g229;
wire /* lid */ mq228;
wire /* lid */ g227;
wire /* lid */ g226;
wire /* lid */ g225;
wire /* lid */ I224;
wire /* lid */ I223;
wire /* lid */ g221;
wire /* lid */ g219;
wire /* lid */ g218;
wire /* lid */ g217;
wire /* lid */ g216;
wire /* lid */ g215;
wire /* lid */ g214;
wire /* lid */ I213;
wire /* lid */ g204;
wire /* lid */ g203;
wire /* lid */ I202;
wire /* lid */ I201;
wire /* lid */ g200;
wire /* lid */ I181;
wire /* lid */ g180;
wire /* lid */ g179;
wire /* lid */ g178;
wire /* lid */ g177;
wire /* lid */ g176;
wire /* lid */ g175;
wire /* lid */ g174;
wire /* lid */ g173;
wire /* lid */ g172;
wire /* lid */ g171;
wire /* lid */ g170;
wire /* lid */ I169;
wire /* lid */ g168;
wire /* lid */ g167;
wire /* lid */ I166;
wire /* lid */ g165;
wire /* lid */ g164;
wire /* lid */ g163;
wire /* lid */ I162;
wire /* lid */ g161;
wire /* lid */ g160;
wire /* lid */ g159;
wire /* lid */ g158;
wire /* lid */ I157;
wire /* lid */ g156;
wire /* lid */ g155;
wire /* lid */ g154;
wire /* lid */ g153;
wire /* lid */ g152;
wire /* lid */ I151;
wire /* lid */ g150;
wire /* lid */ g149;
wire /* lid */ g148;
wire /* lid */ g147;
wire /* lid */ g146;
wire /* lid */ g145;
wire /* lid */ I144;
wire /* lid */ g143;
wire /* lid */ g142;
wire /* lid */ g141;
wire /* lid */ g140;
wire /* lid */ g139;
wire /* lid */ g138;
wire /* lid */ g137;
wire /* lid */ I136;
wire /* lid */ g135;
wire /* lid */ g134;
wire /* lid */ g133;
wire /* lid */ g132;
wire /* lid */ g131;
wire /* lid */ g130;
wire /* lid */ g129;
wire /* lid */ g128;
wire /* lid */ I127;
wire /* lid */ g126;
wire /* lid */ g125;
wire /* lid */ g124;
wire /* lid */ g123;
wire /* lid */ I122;
wire /* lid */ g121;
wire /* lid */ g120;
wire /* lid */ g119;
wire /* lid */ g118;
wire /* lid */ I117;
wire /* lid */ g116;
wire /* lid */ g115;
wire /* lid */ I114;
wire /* lid */ g113;
wire /* lid */ g112;
wire /* lid */ g111;
wire /* lid */ I110;
wire /* lid */ g109;
wire /* lid */ g108;
wire /* lid */ I107;
wire /* lid */ g106;
wire /* lid */ I105;
wire /* lid */ I104;
wire /* lid */ g103;
wire memcen102;
wire [7:0] mem_write101;
wire [14:0] memaddr100;
wire [7:0] cv_mem_read;
reg [7:0] hold;
reg pc;
reg [1:0] phase;
reg [17:0] q;
reg [17:0] p;
SSRAM32768x8 array_mem_mem(.y(cv_mem_read), .clk(clk), .cen(memcen102), .a(memaddr100), .d(mem_write101));
BUF i7mem_write101632(mem_write101[7], g631);
AND2 g631(g631, g103, g630);
OR2 g630(g630, hold[7], g134);
BUF i6mem_write101629(mem_write101[6], g628);
AND2 g628(g628, g627, g103);
OR2 g627(g627, hold[6], g142);
BUF i5mem_write101626(mem_write101[5], g625);
AND2 g625(g625, g624, g103);
OR2 g624(g624, hold[5], g149);
BUF i4mem_write101623(mem_write101[4], g622);
AND2 g622(g622, g103, g621);
OR2 g621(g621, g155, hold[4]);
BUF i3mem_write101620(mem_write101[3], g619);
AND2 g619(g619, g618, g103);
OR2 g618(g618, hold[3], g160);
BUF i2mem_write101617(mem_write101[2], g616);
AND2 g616(g616, g615, g103);
OR2 g615(g615, hold[2], g164);
BUF i1mem_write101614(mem_write101[1], g613);
AND2 g613(g613, g103, g612);
OR2 g612(g612, hold[1], g167);
BUF i0mem_write101611(mem_write101[0], g610);
AND2 g610(g610, g609, g103);
OR2 g609(g609, hold[0], I169);
BUF i14memaddr100608(memaddr100[14], p[17]);
BUF i13memaddr100607(memaddr100[13], p[16]);
BUF i12memaddr100606(memaddr100[12], p[15]);
BUF i11memaddr100605(memaddr100[11], p[14]);
BUF i10memaddr100604(memaddr100[10], p[13]);
BUF i9memaddr100603(memaddr100[9], p[12]);
BUF i8memaddr100602(memaddr100[8], p[11]);
BUF i7memaddr100601(memaddr100[7], p[10]);
BUF i6memaddr100600(memaddr100[6], p[9]);
BUF i5memaddr100599(memaddr100[5], p[8]);
BUF i4memaddr100598(memaddr100[4], p[7]);
BUF i3memaddr100597(memaddr100[3], p[6]);
BUF i2memaddr100596(memaddr100[2], p[5]);
BUF i1memaddr100595(memaddr100[1], p[4]);
BUF i0memaddr100594(memaddr100[0], p[3]);
BUF memcen102(memcen102, g593);
AND2 g593(g593, g592, I213);
OR2 g592(g592, I104, g591);
AND2 g591(g591, g234, g103);
DFF guard(guard, g590, clk, LVCC, LGND, LGND);
AND2 g590(g590, mq589, I213);
MUX2 mq589(mq589, g584, guard, g588);
AND2 g588(g588, g587, I585);
OR2 g587(g587, guard, I586);
INV I586(I586, g177);
INV I585(I585, hs);
OR2 g584(g584, g108, g111);
DFF pc(pc, g583, clk, LVCC, LGND, LGND);
AND2 g583(g583, mq582, I213);
MUX2 mq582(mq582, g103, mq581, pc);
MUX2 mq581(mq581, g106, pc, I202);
DFF i17q580(q[17], mq579, clk, g526, LGND, LGND);
MUX2 mq579(mq579, g103, g577, g578);
AND2 g578(g578, I224, q[17]);
XOR2 g577(g577, g576, q[17]);
AND2 g576(g576, g503, q[16]);
DFF i16q575(q[16], mq574, clk, g526, LGND, LGND);
MUX2 mq574(mq574, g103, g504, g573);
AND2 g573(g573, I224, q[16]);
DFF i15q572(q[15], mq571, clk, g526, LGND, LGND);
MUX2 mq571(mq571, g103, g487, g570);
AND2 g570(g570, I224, q[15]);
DFF i14q569(q[14], mq568, clk, g526, LGND, LGND);
MUX2 mq568(mq568, g103, g470, g567);
AND2 g567(g567, I224, q[14]);
DFF i13q566(q[13], mq565, clk, g526, LGND, LGND);
MUX2 mq565(mq565, g103, g453, g564);
AND2 g564(g564, I224, q[13]);
DFF i12q563(q[12], mq562, clk, g526, LGND, LGND);
MUX2 mq562(mq562, g103, g436, g561);
AND2 g561(g561, I224, q[12]);
DFF i11q560(q[11], mq559, clk, g526, LGND, LGND);
MUX2 mq559(mq559, g103, g419, g558);
AND2 g558(g558, I224, q[11]);
DFF i10q557(q[10], mq556, clk, g526, LGND, LGND);
MUX2 mq556(mq556, g103, g402, g555);
AND2 g555(g555, I224, q[10]);
DFF i9q554(q[9], mq553, clk, g526, LGND, LGND);
MUX2 mq553(mq553, g103, g385, g552);
AND2 g552(g552, I224, q[9]);
DFF i8q551(q[8], mq550, clk, g526, LGND, LGND);
MUX2 mq550(mq550, g103, g368, g549);
AND2 g549(g549, I224, q[8]);
DFF i7q548(q[7], mq547, clk, g526, LGND, LGND);
MUX2 mq547(mq547, g103, g351, g546);
AND2 g546(g546, I224, q[7]);
DFF i6q545(q[6], mq544, clk, g526, LGND, LGND);
MUX2 mq544(mq544, g103, g334, g543);
AND2 g543(g543, I224, q[6]);
DFF i5q542(q[5], mq541, clk, g526, LGND, LGND);
MUX2 mq541(mq541, g103, g317, g540);
AND2 g540(g540, I224, q[5]);
DFF i4q539(q[4], mq538, clk, g526, LGND, LGND);
MUX2 mq538(mq538, g103, g300, g537);
AND2 g537(g537, I224, q[4]);
DFF i3q536(q[3], mq535, clk, g526, LGND, LGND);
MUX2 mq535(mq535, g103, g284, g534);
AND2 g534(g534, I224, q[3]);
DFF i2q533(q[2], mq532, clk, g526, LGND, LGND);
MUX2 mq532(mq532, g103, g268, g531);
AND2 g531(g531, I224, q[2]);
DFF i1q530(q[1], mq529, clk, g526, LGND, LGND);
MUX2 mq529(mq529, g103, g253, g528);
OR2 g528(g528, p[17], q[1]);
DFF i0q527(q[0], mq519, clk, g526, LGND, LGND);
AND2 g526(g526, g525, I213);
OR2 g525(g525, g524, I104);
AND2 g524(g524, g523, g103);
AND2 g523(g523, I522, p[17]);
INV I522(I522, g521);
OR2 g521(g521, g106, g520);
OR2 g520(g520, I202, q[17]);
MUX2 mq519(mq519, g103, I241, g518);
AND2 g518(g518, I224, q[0]);
DFF i17p517(p[17], mq516, clk, g238, LGND, LGND);
MUX2 mq516(mq516, g103, mq512, g515);
AND2 g515(g515, g514, I224);
XOR2 g514(g514, g513, p[17]);
AND2 g513(g513, g496, p[16]);
MUX2 mq512(mq512, g106, g502, g511);
AND2 g511(g511, mq510, I223);
MUX2 mq510(mq510, p[17], g504, g509);
XOR2 g509(g509, g508, g507);
XOR2 g508(g508, q[17], p[17]);
OR2 g507(g507, g506, g505);
AND2 g506(g506, g491, g490);
AND2 g505(g505, q[16], p[16]);
XOR2 g504(g504, g503, q[16]);
AND2 g503(g503, g486, q[15]);
XOR2 g502(g502, g501, p[17]);
AND2 g501(g501, g484, p[16]);
DFF i16p500(p[16], mq499, clk, g238, LGND, LGND);
MUX2 mq499(mq499, g103, mq495, g498);
AND2 g498(g498, g497, I224);
XOR2 g497(g497, g496, p[16]);
AND2 g496(g496, g479, p[15]);
MUX2 mq495(mq495, g106, g485, g494);
AND2 g494(g494, mq493, I223);
MUX2 mq493(mq493, p[17], g487, g492);
XOR2 g492(g492, g491, g490);
XOR2 g491(g491, q[16], p[16]);
OR2 g490(g490, g489, g488);
AND2 g489(g489, g474, g473);
AND2 g488(g488, q[15], p[15]);
XOR2 g487(g487, g486, q[15]);
AND2 g486(g486, g469, q[14]);
XOR2 g485(g485, g484, p[16]);
AND2 g484(g484, g467, p[15]);
DFF i15p483(p[15], mq482, clk, g238, LGND, LGND);
MUX2 mq482(mq482, g103, mq478, g481);
AND2 g481(g481, I224, g480);
XOR2 g480(g480, g479, p[15]);
AND2 g479(g479, g462, p[14]);
MUX2 mq478(mq478, g106, g468, g477);
AND2 g477(g477, mq476, I223);
MUX2 mq476(mq476, p[17], g470, g475);
XOR2 g475(g475, g474, g473);
XOR2 g474(g474, q[15], p[15]);
OR2 g473(g473, g472, g471);
AND2 g472(g472, g457, g456);
AND2 g471(g471, q[14], p[14]);
XOR2 g470(g470, g469, q[14]);
AND2 g469(g469, g452, q[13]);
XOR2 g468(g468, g467, p[15]);
AND2 g467(g467, g450, p[14]);
DFF i14p466(p[14], mq465, clk, g238, LGND, LGND);
MUX2 mq465(mq465, g103, mq461, g464);
AND2 g464(g464, I224, g463);
XOR2 g463(g463, g462, p[14]);
AND2 g462(g462, g445, p[13]);
MUX2 mq461(mq461, g106, g451, g460);
AND2 g460(g460, mq459, I223);
MUX2 mq459(mq459, p[17], g453, g458);
XOR2 g458(g458, g457, g456);
XOR2 g457(g457, q[14], p[14]);
OR2 g456(g456, g455, g454);
AND2 g455(g455, g439, g440);
AND2 g454(g454, q[13], p[13]);
XOR2 g453(g453, g452, q[13]);
AND2 g452(g452, g435, q[12]);
XOR2 g451(g451, g450, p[14]);
AND2 g450(g450, g433, p[13]);
DFF i13p449(p[13], mq448, clk, g238, LGND, LGND);
MUX2 mq448(mq448, g103, mq444, g447);
AND2 g447(g447, g446, I224);
XOR2 g446(g446, g445, p[13]);
AND2 g445(g445, g428, p[12]);
MUX2 mq444(mq444, g106, g434, g443);
AND2 g443(g443, mq442, I223);
MUX2 mq442(mq442, p[17], g436, g441);
XOR2 g441(g441, g439, g440);
XOR2 g440(g440, q[13], p[13]);
OR2 g439(g439, g438, g437);
AND2 g438(g438, g423, g422);
AND2 g437(g437, q[12], p[12]);
XOR2 g436(g436, g435, q[12]);
AND2 g435(g435, g418, q[11]);
XOR2 g434(g434, g433, p[13]);
AND2 g433(g433, g416, p[12]);
DFF i12p432(p[12], mq431, clk, g238, LGND, LGND);
MUX2 mq431(mq431, g103, mq427, g430);
AND2 g430(g430, g429, I224);
XOR2 g429(g429, g428, p[12]);
AND2 g428(g428, g411, p[11]);
MUX2 mq427(mq427, g106, g417, g426);
AND2 g426(g426, mq425, I223);
MUX2 mq425(mq425, p[17], g419, g424);
XOR2 g424(g424, g423, g422);
XOR2 g423(g423, q[12], p[12]);
OR2 g422(g422, g421, g420);
AND2 g421(g421, g406, g405);
AND2 g420(g420, q[11], p[11]);
XOR2 g419(g419, g418, q[11]);
AND2 g418(g418, g401, q[10]);
XOR2 g417(g417, g416, p[12]);
AND2 g416(g416, g399, p[11]);
DFF i11p415(p[11], mq414, clk, g238, LGND, LGND);
MUX2 mq414(mq414, g103, mq410, g413);
AND2 g413(g413, I224, g412);
XOR2 g412(g412, g411, p[11]);
AND2 g411(g411, g394, p[10]);
MUX2 mq410(mq410, g106, g400, g409);
AND2 g409(g409, mq408, I223);
MUX2 mq408(mq408, p[17], g402, g407);
XOR2 g407(g407, g406, g405);
XOR2 g406(g406, q[11], p[11]);
OR2 g405(g405, g404, g403);
AND2 g404(g404, g389, g388);
AND2 g403(g403, q[10], p[10]);
XOR2 g402(g402, g401, q[10]);
AND2 g401(g401, g384, q[9]);
XOR2 g400(g400, g399, p[11]);
AND2 g399(g399, g382, p[10]);
DFF i10p398(p[10], mq397, clk, g238, LGND, LGND);
MUX2 mq397(mq397, g103, mq393, g396);
AND2 g396(g396, g395, I224);
XOR2 g395(g395, g394, p[10]);
AND2 g394(g394, g377, p[9]);
MUX2 mq393(mq393, g106, g383, g392);
AND2 g392(g392, mq391, I223);
MUX2 mq391(mq391, p[17], g385, g390);
XOR2 g390(g390, g389, g388);
XOR2 g389(g389, q[10], p[10]);
OR2 g388(g388, g387, g386);
AND2 g387(g387, g372, g371);
AND2 g386(g386, q[9], p[9]);
XOR2 g385(g385, g384, q[9]);
AND2 g384(g384, g367, q[8]);
XOR2 g383(g383, g382, p[10]);
AND2 g382(g382, g365, p[9]);
DFF i9p381(p[9], mq380, clk, g238, LGND, LGND);
MUX2 mq380(mq380, g103, mq376, g379);
AND2 g379(g379, g378, I224);
XOR2 g378(g378, g377, p[9]);
AND2 g377(g377, g360, p[8]);
MUX2 mq376(mq376, g106, g366, g375);
AND2 g375(g375, mq374, I223);
MUX2 mq374(mq374, p[17], g368, g373);
XOR2 g373(g373, g372, g371);
XOR2 g372(g372, q[9], p[9]);
OR2 g371(g371, g369, g370);
AND2 g370(g370, g355, g354);
AND2 g369(g369, q[8], p[8]);
XOR2 g368(g368, g367, q[8]);
AND2 g367(g367, g350, q[7]);
XOR2 g366(g366, g365, p[9]);
AND2 g365(g365, g348, p[8]);
DFF i8p364(p[8], mq363, clk, g238, LGND, LGND);
MUX2 mq363(mq363, g103, mq359, g362);
AND2 g362(g362, I224, g361);
XOR2 g361(g361, g360, p[8]);
AND2 g360(g360, g343, p[7]);
MUX2 mq359(mq359, g106, g349, g358);
AND2 g358(g358, mq357, I223);
MUX2 mq357(mq357, p[17], g351, g356);
XOR2 g356(g356, g355, g354);
XOR2 g355(g355, q[8], p[8]);
OR2 g354(g354, g353, g352);
AND2 g353(g353, g338, g337);
AND2 g352(g352, q[7], p[7]);
XOR2 g351(g351, g350, q[7]);
AND2 g350(g350, g333, q[6]);
XOR2 g349(g349, g348, p[8]);
AND2 g348(g348, g331, p[7]);
DFF i7p347(p[7], mq346, clk, g238, LGND, LGND);
MUX2 mq346(mq346, g103, mq342, g345);
AND2 g345(g345, g344, I224);
XOR2 g344(g344, g343, p[7]);
AND2 g343(g343, g326, p[6]);
MUX2 mq342(mq342, g106, g332, g341);
AND2 g341(g341, mq340, I223);
MUX2 mq340(mq340, p[17], g334, g339);
XOR2 g339(g339, g338, g337);
XOR2 g338(g338, q[7], p[7]);
OR2 g337(g337, g336, g335);
AND2 g336(g336, g321, g320);
AND2 g335(g335, q[6], p[6]);
XOR2 g334(g334, g333, q[6]);
AND2 g333(g333, g316, q[5]);
XOR2 g332(g332, g331, p[7]);
AND2 g331(g331, g314, p[6]);
DFF i6p330(p[6], mq329, clk, g238, LGND, LGND);
MUX2 mq329(mq329, g103, mq325, g328);
AND2 g328(g328, g327, I224);
XOR2 g327(g327, g326, p[6]);
AND2 g326(g326, g309, p[5]);
MUX2 mq325(mq325, g106, g315, g324);
AND2 g324(g324, mq323, I223);
MUX2 mq323(mq323, p[17], g317, g322);
XOR2 g322(g322, g321, g320);
XOR2 g321(g321, q[6], p[6]);
OR2 g320(g320, g319, g318);
AND2 g319(g319, g304, g303);
AND2 g318(g318, q[5], p[5]);
XOR2 g317(g317, g316, q[5]);
AND2 g316(g316, g299, q[4]);
XOR2 g315(g315, g314, p[6]);
AND2 g314(g314, g297, p[5]);
DFF i5p313(p[5], mq312, clk, g238, LGND, LGND);
MUX2 mq312(mq312, g103, mq308, g311);
AND2 g311(g311, I224, g310);
XOR2 g310(g310, g309, p[5]);
AND2 g309(g309, p[4], p[3]);
MUX2 mq308(mq308, g106, g298, g307);
AND2 g307(g307, mq306, I223);
MUX2 mq306(mq306, p[17], g300, g305);
XOR2 g305(g305, g304, g303);
XOR2 g304(g304, q[5], p[5]);
OR2 g303(g303, g302, g301);
AND2 g302(g302, g288, g287);
AND2 g301(g301, q[4], p[4]);
XOR2 g300(g300, g299, q[4]);
AND2 g299(g299, g283, q[3]);
XOR2 g298(g298, g297, p[5]);
AND2 g297(g297, g281, p[4]);
DFF i4p296(p[4], mq295, clk, g238, LGND, LGND);
MUX2 mq295(mq295, g103, mq292, g294);
AND2 g294(g294, g293, I224);
XOR2 g293(g293, p[4], p[3]);
MUX2 mq292(mq292, g106, g282, g291);
AND2 g291(g291, mq290, I223);
MUX2 mq290(mq290, p[17], g284, g289);
XOR2 g289(g289, g288, g287);
XOR2 g288(g288, q[4], p[4]);
OR2 g287(g287, g286, g285);
AND2 g286(g286, g272, g271);
AND2 g285(g285, q[3], p[3]);
XOR2 g284(g284, g283, q[3]);
AND2 g283(g283, g267, q[2]);
XOR2 g282(g282, g281, p[4]);
AND2 g281(g281, g265, p[3]);
DFF i3p280(p[3], mq279, clk, g238, LGND, LGND);
MUX2 mq279(mq279, g103, mq276, g278);
AND2 g278(g278, I277, I224);
INV I277(I277, p[3]);
MUX2 mq276(mq276, g106, g266, g275);
AND2 g275(g275, mq274, I223);
MUX2 mq274(mq274, p[17], g268, g273);
XOR2 g273(g273, g272, g271);
XOR2 g272(g272, q[3], p[3]);
OR2 g271(g271, g269, g270);
AND2 g270(g270, g257, g256);
AND2 g269(g269, q[2], p[2]);
XOR2 g268(g268, g267, q[2]);
AND2 g267(g267, q[1], q[0]);
XOR2 g266(g266, g265, p[3]);
AND2 g265(g265, g251, p[2]);
DFF i2p264(p[2], mq263, clk, g238, LGND, LGND);
MUX2 mq263(mq263, g103, mq261, g262);
OR2 g262(g262, p[17], p[2]);
MUX2 mq261(mq261, g106, g252, g260);
AND2 g260(g260, mq259, I223);
MUX2 mq259(mq259, p[17], g253, g258);
XOR2 g258(g258, g257, g256);
XOR2 g257(g257, q[2], p[2]);
OR2 g256(g256, g255, g254);
AND2 g255(g255, g243, g242);
AND2 g254(g254, q[1], p[1]);
XOR2 g253(g253, q[1], q[0]);
XOR2 g252(g252, g251, p[2]);
AND2 g251(g251, p[1], p[0]);
DFF i1p250(p[1], mq249, clk, g238, LGND, LGND);
MUX2 mq249(mq249, g103, mq247, g248);
AND2 g248(g248, I224, p[1]);
MUX2 mq247(mq247, g106, g240, g246);
AND2 g246(g246, mq245, I223);
MUX2 mq245(mq245, p[17], I241, g244);
XOR2 g244(g244, g243, g242);
XOR2 g243(g243, q[1], p[1]);
AND2 g242(g242, q[0], p[0]);
INV I241(I241, q[0]);
XOR2 g240(g240, p[1], p[0]);
DFF i0p239(p[0], mq230, clk, g238, LGND, LGND);
AND2 g238(g238, g237, I213);
OR2 g237(g237, g236, I104);
AND2 g236(g236, g235, g103);
OR2 g235(g235, g234, g233);
AND2 g234(g234, I107, pc);
AND2 g233(g233, g106, g232);
AND2 g232(g232, g178, I231);
INV I231(I231, g111);
MUX2 mq230(mq230, g103, mq228, g229);
AND2 g229(g229, I224, p[0]);
MUX2 mq228(mq228, g106, I114, g227);
AND2 g227(g227, g226, I223);
AND2 g226(g226, g225, I224);
XOR2 g225(g225, q[0], p[0]);
INV I224(I224, p[17]);
INV I223(I223, q[17]);
DFF i1phase222(phase[1], g221, clk, g219, LGND, LGND);
XOR2 g221(g221, phase[0], phase[1]);
DFF i0phase220(phase[0], I105, clk, g219, LGND, LGND);
AND2 g219(g219, g218, I213);
OR2 g218(g218, g217, g216);
AND2 g217(g217, I104, p[17]);
AND2 g216(g216, g215, g103);
AND2 g215(g215, I107, g214);
AND2 g214(g214, q[17], pc);
INV I213(I213, reset);
DFF i7hold212(hold[7], cv_mem_read[7], clk, g204, LGND, LGND);
DFF i6hold211(hold[6], cv_mem_read[6], clk, g204, LGND, LGND);
DFF i5hold210(hold[5], cv_mem_read[5], clk, g204, LGND, LGND);
DFF i4hold209(hold[4], cv_mem_read[4], clk, g204, LGND, LGND);
DFF i3hold208(hold[3], cv_mem_read[3], clk, g204, LGND, LGND);
DFF i2hold207(hold[2], cv_mem_read[2], clk, g204, LGND, LGND);
DFF i1hold206(hold[1], cv_mem_read[1], clk, g204, LGND, LGND);
DFF i0hold205(hold[0], cv_mem_read[0], clk, g204, LGND, LGND);
AND2 g204(g204, g203, I201);
AND2 g203(g203, I107, I202);
INV I202(I202, pc);
INV I201(I201, g200);
OR2 g200(g200, reset, I104);
DFF i17out199(out[17], p[17], clk, I181, LGND, LGND);
DFF i16out198(out[16], p[16], clk, I181, LGND, LGND);
DFF i15out197(out[15], p[15], clk, I181, LGND, LGND);
DFF i14out196(out[14], p[14], clk, I181, LGND, LGND);
DFF i13out195(out[13], p[13], clk, I181, LGND, LGND);
DFF i12out194(out[12], p[12], clk, I181, LGND, LGND);
DFF i11out193(out[11], p[11], clk, I181, LGND, LGND);
DFF i10out192(out[10], p[10], clk, I181, LGND, LGND);
DFF i9out191(out[9], p[9], clk, I181, LGND, LGND);
DFF i8out190(out[8], p[8], clk, I181, LGND, LGND);
DFF i7out189(out[7], p[7], clk, I181, LGND, LGND);
DFF i6out188(out[6], p[6], clk, I181, LGND, LGND);
DFF i5out187(out[5], p[5], clk, I181, LGND, LGND);
DFF i4out186(out[4], p[4], clk, I181, LGND, LGND);
DFF i3out185(out[3], p[3], clk, I181, LGND, LGND);
DFF i2out184(out[2], p[2], clk, I181, LGND, LGND);
DFF i1out183(out[1], p[1], clk, I181, LGND, LGND);
DFF i0out182(out[0], p[0], clk, I181, LGND, LGND);
INV I181(I181, g180);
OR2 g180(g180, g179, g109);
OR2 g179(g179, g178, g111);
OR2 g178(g178, g177, hs);
OR2 g177(g177, g176, g135);
OR2 g176(g176, g175, g143);
OR2 g175(g175, g174, g150);
OR2 g174(g174, g156, g173);
OR2 g173(g173, g172, g161);
OR2 g172(g172, g165, g171);
OR2 g171(g171, g168, g170);
AND2 g170(g170, cv_mem_read[0], I169);
INV I169(I169, g113);
AND2 g168(g168, cv_mem_read[1], g167);
AND2 g167(g167, I166, g113);
INV I166(I166, g116);
AND2 g165(g165, cv_mem_read[2], g164);
AND2 g164(g164, g163, g113);
AND2 g163(g163, g116, I162);
INV I162(I162, g119);
AND2 g161(g161, cv_mem_read[3], g160);
AND2 g160(g160, g159, g113);
AND2 g159(g159, g158, g116);
AND2 g158(g158, g119, I157);
INV I157(I157, g121);
AND2 g156(g156, cv_mem_read[4], g155);
AND2 g155(g155, g154, g113);
AND2 g154(g154, g116, g153);
AND2 g153(g153, g119, g152);
AND2 g152(g152, I151, g121);
INV I151(I151, g123);
AND2 g150(g150, g149, cv_mem_read[5]);
AND2 g149(g149, g148, g113);
AND2 g148(g148, g147, g116);
AND2 g147(g147, g119, g146);
AND2 g146(g146, g145, g121);
AND2 g145(g145, I144, g123);
INV I144(I144, g124);
AND2 g143(g143, g142, cv_mem_read[6]);
AND2 g142(g142, g113, g141);
AND2 g141(g141, g116, g140);
AND2 g140(g140, g139, g119);
AND2 g139(g139, g138, g121);
AND2 g138(g138, g137, g123);
AND2 g137(g137, I136, g124);
INV I136(I136, g125);
AND2 g135(g135, cv_mem_read[7], g134);
AND2 g134(g134, g133, g113);
AND2 g133(g133, g116, g132);
AND2 g132(g132, g119, g131);
AND2 g131(g131, g121, g130);
AND2 g130(g130, g129, g123);
AND2 g129(g129, g128, g124);
AND2 g128(g128, I127, g125);
INV I127(I127, g126);
OR2 g126(g126, I122, g120);
OR2 g125(g125, g118, I122);
OR2 g124(g124, g115, I122);
OR2 g123(g123, I122, g112);
INV I122(I122, p[2]);
OR2 g121(g121, g120, p[2]);
OR2 g120(g120, I117, I114);
OR2 g119(g119, g118, p[2]);
OR2 g118(g118, I117, p[0]);
INV I117(I117, p[1]);
OR2 g116(g116, g115, p[2]);
OR2 g115(g115, I114, p[1]);
INV I114(I114, p[0]);
OR2 g113(g113, g112, p[2]);
OR2 g112(g112, p[1], p[0]);
OR2 g111(g111, phase[0], I110);
INV I110(I110, phase[1]);
OR2 g109(g109, reset, g108);
OR2 g108(g108, I107, I104);
INV I107(I107, g106);
OR2 g106(g106, phase[1], I105);
INV I105(I105, phase[0]);
INV I104(I104, g103);
OR2 g103(g103, phase[0], phase[1]);
// Next line manually reinserted since removed in compilation
always @(posedge clk) if (phase == 2 && p[17]) $finish;
endmodule
/* eof */
Primesvnl.c
/* cv3core vtoc /homes/djg/codesign/examples/primes/primes.vnl /homes/djg/codesign/examples/primes/sys.cv cv100gates.cv -root PRIMEGEN -mode1 clk -o /homes/djg/codesign/examples/primes/primesvnl.c */
/* User=/home/djg */
/* Output from CBG vtoc V0.1 alpha. CBG/TT CVA EDA CORE (Core release 1.3f zent/arports 13 July 99). */
#include stdio.h
#include "ttvtoc.h"
/* start of tt generated C code */
static int ttvtoc_ticks = 0; /*used for $time */
void ttv( unsigned int *clk, unsigned int *reset, unsigned int *out, unsigned int *guard, unsigned int *hs)
{
unsigned static int array_mem_mem_mem [32768];
unsigned static int guard_last_d;
unsigned static int guard_last_clk;
unsigned static int pc_last_d;
unsigned static int pc_last_clk;
unsigned static int i17q580_last_d;
unsigned static int i17q580_last_clk;
unsigned static int i16q575_last_d;
unsigned static int i16q575_last_clk;
unsigned static int i15q572_last_d;
unsigned static int i15q572_last_clk;
unsigned static int i14q569_last_d;
unsigned static int i14q569_last_clk;
unsigned static int i13q566_last_d;
unsigned static int i13q566_last_clk;
unsigned static int i12q563_last_d;
unsigned static int i12q563_last_clk;
unsigned static int i11q560_last_d;
unsigned static int i11q560_last_clk;
unsigned static int i10q557_last_d;
unsigned static int i10q557_last_clk;
unsigned static int i9q554_last_d;
unsigned static int i9q554_last_clk;
unsigned static int i8q551_last_d;
unsigned static int i8q551_last_clk;
unsigned static int i7q548_last_d;
unsigned static int i7q548_last_clk;
unsigned static int i6q545_last_d;
unsigned static int i6q545_last_clk;
unsigned static int i5q542_last_d;
unsigned static int i5q542_last_clk;
unsigned static int i4q539_last_d;
unsigned static int i4q539_last_clk;
unsigned static int i3q536_last_d;
unsigned static int i3q536_last_clk;
unsigned static int i2q533_last_d;
unsigned static int i2q533_last_clk;
unsigned static int i1q530_last_d;
unsigned static int i1q530_last_clk;
unsigned static int i0q527_last_d;
unsigned static int i0q527_last_clk;
unsigned static int i17p517_last_d;
unsigned static int i17p517_last_clk;
unsigned static int i16p500_last_d;
unsigned static int i16p500_last_clk;
unsigned static int i15p483_last_d;
unsigned static int i15p483_last_clk;
unsigned static int i14p466_last_d;
unsigned static int i14p466_last_clk;
unsigned static int i13p449_last_d;
unsigned static int i13p449_last_clk;
unsigned static int i12p432_last_d;
unsigned static int i12p432_last_clk;
unsigned static int i11p415_last_d;
unsigned static int i11p415_last_clk;
unsigned static int i10p398_last_d;
unsigned static int i10p398_last_clk;
unsigned static int i9p381_last_d;
unsigned static int i9p381_last_clk;
unsigned static int i8p364_last_d;
unsigned static int i8p364_last_clk;
unsigned static int i7p347_last_d;
unsigned static int i7p347_last_clk;
unsigned static int i6p330_last_d;
unsigned static int i6p330_last_clk;
unsigned static int i5p313_last_d;
unsigned static int i5p313_last_clk;
unsigned static int i4p296_last_d;
unsigned static int i4p296_last_clk;
unsigned static int i3p280_last_d;
unsigned static int i3p280_last_clk;
unsigned static int i2p264_last_d;
unsigned static int i2p264_last_clk;
unsigned static int i1p250_last_d;
unsigned static int i1p250_last_clk;
unsigned static int i0p239_last_d;
unsigned static int i0p239_last_clk;
unsigned static int i1phase222_last_d;
unsigned static int i1phase222_last_clk;
unsigned static int i0phase220_last_d;
unsigned static int i0phase220_last_clk;
unsigned static int i7hold212_last_d;
unsigned static int i7hold212_last_clk;
unsigned static int i6hold211_last_d;
unsigned static int i6hold211_last_clk;
unsigned static int i5hold210_last_d;
unsigned static int i5hold210_last_clk;
unsigned static int i4hold209_last_d;
unsigned static int i4hold209_last_clk;
unsigned static int i3hold208_last_d;
unsigned static int i3hold208_last_clk;
unsigned static int i2hold207_last_d;
unsigned static int i2hold207_last_clk;
unsigned static int i1hold206_last_d;
unsigned static int i1hold206_last_clk;
unsigned static int i0hold205_last_d;
unsigned static int i0hold205_last_clk;
unsigned static int i17out199_last_d;
unsigned static int i17out199_last_clk;
unsigned static int i16out198_last_d;
unsigned static int i16out198_last_clk;
unsigned static int i15out197_last_d;
unsigned static int i15out197_last_clk;
unsigned static int i14out196_last_d;
unsigned static int i14out196_last_clk;
unsigned static int i13out195_last_d;
unsigned static int i13out195_last_clk;
unsigned static int i12out194_last_d;
unsigned static int i12out194_last_clk;
unsigned static int i11out193_last_d;
unsigned static int i11out193_last_clk;
unsigned static int i10out192_last_d;
unsigned static int i10out192_last_clk;
unsigned static int i9out191_last_d;
unsigned static int i9out191_last_clk;
unsigned static int i8out190_last_d;
unsigned static int i8out190_last_clk;
unsigned static int i7out189_last_d;
unsigned static int i7out189_last_clk;
unsigned static int i6out188_last_d;
unsigned static int i6out188_last_clk;
unsigned static int i5out187_last_d;
unsigned static int i5out187_last_clk;
unsigned static int i4out186_last_d;
unsigned static int i4out186_last_clk;
unsigned static int i3out185_last_d;
unsigned static int i3out185_last_clk;
unsigned static int i2out184_last_d;
unsigned static int i2out184_last_clk;
unsigned static int i1out183_last_d;
unsigned static int i1out183_last_clk;
unsigned static int i0out182_last_d;
unsigned static int i0out182_last_clk;
unsigned static int g631;
unsigned static int g630;
unsigned static int g628;
unsigned static int g627;
unsigned static int g625;
unsigned static int g624;
unsigned static int g622;
unsigned static int g621;
unsigned static int g619;
unsigned static int g618;
unsigned static int g616;
unsigned static int g615;
unsigned static int g613;
unsigned static int g612;
unsigned static int g610;
unsigned static int g609;
unsigned static int g593;
unsigned static int g592;
unsigned static int g591;
unsigned static int g590;
unsigned static int mq589;
unsigned static int g588;
unsigned static int g587;
unsigned static int I586;
unsigned static int I585;
unsigned static int g584;
unsigned static int g583;
unsigned static int mq582;
unsigned static int mq581;
unsigned static int mq579;
unsigned static int g578;
unsigned static int g577;
unsigned static int g576;
unsigned static int mq574;
unsigned static int g573;
unsigned static int mq571;
unsigned static int g570;
unsigned static int mq568;
unsigned static int g567;
unsigned static int mq565;
unsigned static int g564;
unsigned static int mq562;
unsigned static int g561;
unsigned static int mq559;
unsigned static int g558;
unsigned static int mq556;
unsigned static int g555;
unsigned static int mq553;
unsigned static int g552;
unsigned static int mq550;
unsigned static int g549;
unsigned static int mq547;
unsigned static int g546;
unsigned static int mq544;
unsigned static int g543;
unsigned static int mq541;
unsigned static int g540;
unsigned static int mq538;
unsigned static int g537;
unsigned static int mq535;
unsigned static int g534;
unsigned static int mq532;
unsigned static int g531;
unsigned static int mq529;
unsigned static int g528;
unsigned static int g526;
unsigned static int g525;
unsigned static int g524;
unsigned static int g523;
unsigned static int I522;
unsigned static int g521;
unsigned static int g520;
unsigned static int mq519;
unsigned static int g518;
unsigned static int mq516;
unsigned static int g515;
unsigned static int g514;
unsigned static int g513;
unsigned static int mq512;
unsigned static int g511;
unsigned static int mq510;
unsigned static int g509;
unsigned static int g508;
unsigned static int g507;
unsigned static int g506;
unsigned static int g505;
unsigned static int g504;
unsigned static int g503;
unsigned static int g502;
unsigned static int g501;
unsigned static int mq499;
unsigned static int g498;
unsigned static int g497;
unsigned static int g496;
unsigned static int mq495;
unsigned static int g494;
unsigned static int mq493;
unsigned static int g492;
unsigned static int g491;
unsigned static int g490;
unsigned static int g489;
unsigned static int g488;
unsigned static int g487;
unsigned static int g486;
unsigned static int g485;
unsigned static int g484;
unsigned static int mq482;
unsigned static int g481;
unsigned static int g480;
unsigned static int g479;
unsigned static int mq478;
unsigned static int g477;
unsigned static int mq476;
unsigned static int g475;
unsigned static int g474;
unsigned static int g473;
unsigned static int g472;
unsigned static int g471;
unsigned static int g470;
unsigned static int g469;
unsigned static int g468;
unsigned static int g467;
unsigned static int mq465;
unsigned static int g464;
unsigned static int g463;
unsigned static int g462;
unsigned static int mq461;
unsigned static int g460;
unsigned static int mq459;
unsigned static int g458;
unsigned static int g457;
unsigned static int g456;
unsigned static int g455;
unsigned static int g454;
unsigned static int g453;
unsigned static int g452;
unsigned static int g451;
unsigned static int g450;
unsigned static int mq448;
unsigned static int g447;
unsigned static int g446;
unsigned static int g445;
unsigned static int mq444;
unsigned static int g443;
unsigned static int mq442;
unsigned static int g441;
unsigned static int g440;
unsigned static int g439;
unsigned static int g438;
unsigned static int g437;
unsigned static int g436;
unsigned static int g435;
unsigned static int g434;
unsigned static int g433;
unsigned static int mq431;
unsigned static int g430;
unsigned static int g429;
unsigned static int g428;
unsigned static int mq427;
unsigned static int g426;
unsigned static int mq425;
unsigned static int g424;
unsigned static int g423;
unsigned static int g422;
unsigned static int g421;
unsigned static int g420;
unsigned static int g419;
unsigned static int g418;
unsigned static int g417;
unsigned static int g416;
unsigned static int mq414;
unsigned static int g413;
unsigned static int g412;
unsigned static int g411;
unsigned static int mq410;
unsigned static int g409;
unsigned static int mq408;
unsigned static int g407;
unsigned static int g406;
unsigned static int g405;
unsigned static int g404;
unsigned static int g403;
unsigned static int g402;
unsigned static int g401;
unsigned static int g400;
unsigned static int g399;
unsigned static int mq397;
unsigned static int g396;
unsigned static int g395;
unsigned static int g394;
unsigned static int mq393;
unsigned static int g392;
unsigned static int mq391;
unsigned static int g390;
unsigned static int g389;
unsigned static int g388;
unsigned static int g387;
unsigned static int g386;
unsigned static int g385;
unsigned static int g384;
unsigned static int g383;
unsigned static int g382;
unsigned static int mq380;
unsigned static int g379;
unsigned static int g378;
unsigned static int g377;
unsigned static int mq376;
unsigned static int g375;
unsigned static int mq374;
unsigned static int g373;
unsigned static int g372;
unsigned static int g371;
unsigned static int g370;
unsigned static int g369;
unsigned static int g368;
unsigned static int g367;
unsigned static int g366;
unsigned static int g365;
unsigned static int mq363;
unsigned static int g362;
unsigned static int g361;
unsigned static int g360;
unsigned static int mq359;
unsigned static int g358;
unsigned static int mq357;
unsigned static int g356;
unsigned static int g355;
unsigned static int g354;
unsigned static int g353;
unsigned static int g352;
unsigned static int g351;
unsigned static int g350;
unsigned static int g349;
unsigned static int g348;
unsigned static int mq346;
unsigned static int g345;
unsigned static int g344;
unsigned static int g343;
unsigned static int mq342;
unsigned static int g341;
unsigned static int mq340;
unsigned static int g339;
unsigned static int g338;
unsigned static int g337;
unsigned static int g336;
unsigned static int g335;
unsigned static int g334;
unsigned static int g333;
unsigned static int g332;
unsigned static int g331;
unsigned static int mq329;
unsigned static int g328;
unsigned static int g327;
unsigned static int g326;
unsigned static int mq325;
unsigned static int g324;
unsigned static int mq323;
unsigned static int g322;
unsigned static int g321;
unsigned static int g320;
unsigned static int g319;
unsigned static int g318;
unsigned static int g317;
unsigned static int g316;
unsigned static int g315;
unsigned static int g314;
unsigned static int mq312;
unsigned static int g311;
unsigned static int g310;
unsigned static int g309;
unsigned static int mq308;
unsigned static int g307;
unsigned static int mq306;
unsigned static int g305;
unsigned static int g304;
unsigned static int g303;
unsigned static int g302;
unsigned static int g301;
unsigned static int g300;
unsigned static int g299;
unsigned static int g298;
unsigned static int g297;
unsigned static int mq295;
unsigned static int g294;
unsigned static int g293;
unsigned static int mq292;
unsigned static int g291;
unsigned static int mq290;
unsigned static int g289;
unsigned static int g288;
unsigned static int g287;
unsigned static int g286;
unsigned static int g285;
unsigned static int g284;
unsigned static int g283;
unsigned static int g282;
unsigned static int g281;
unsigned static int mq279;
unsigned static int g278;
unsigned static int I277;
unsigned static int mq276;
unsigned static int g275;
unsigned static int mq274;
unsigned static int g273;
unsigned static int g272;
unsigned static int g271;
unsigned static int g270;
unsigned static int g269;
unsigned static int g268;
unsigned static int g267;
unsigned static int g266;
unsigned static int g265;
unsigned static int mq263;
unsigned static int g262;
unsigned static int mq261;
unsigned static int g260;
unsigned static int mq259;
unsigned static int g258;
unsigned static int g257;
unsigned static int g256;
unsigned static int g255;
unsigned static int g254;
unsigned static int g253;
unsigned static int g252;
unsigned static int g251;
unsigned static int mq249;
unsigned static int g248;
unsigned static int mq247;
unsigned static int g246;
unsigned static int mq245;
unsigned static int g244;
unsigned static int g243;
unsigned static int g242;
unsigned static int I241;
unsigned static int g240;
unsigned static int g238;
unsigned static int g237;
unsigned static int g236;
unsigned static int g235;
unsigned static int g234;
unsigned static int g233;
unsigned static int g232;
unsigned static int I231;
unsigned static int mq230;
unsigned static int g229;
unsigned static int mq228;
unsigned static int g227;
unsigned static int g226;
unsigned static int g225;
unsigned static int I224;
unsigned static int I223;
unsigned static int g221;
unsigned static int g219;
unsigned static int g218;
unsigned static int g217;
unsigned static int g216;
unsigned static int g215;
unsigned static int g214;
unsigned static int I213;
unsigned static int g204;
unsigned static int g203;
unsigned static int I202;
unsigned static int I201;
unsigned static int g200;
unsigned static int I181;
unsigned static int g180;
unsigned static int g179;
unsigned static int g178;
unsigned static int g177;
unsigned static int g176;
unsigned static int g175;
unsigned static int g174;
unsigned static int g173;
unsigned static int g172;
unsigned static int g171;
unsigned static int g170;
unsigned static int I169;
unsigned static int g168;
unsigned static int g167;
unsigned static int I166;
unsigned static int g165;
unsigned static int g164;
unsigned static int g163;
unsigned static int I162;
unsigned static int g161;
unsigned static int g160;
unsigned static int g159;
unsigned static int g158;
unsigned static int I157;
unsigned static int g156;
unsigned static int g155;
unsigned static int g154;
unsigned static int g153;
unsigned static int g152;
unsigned static int I151;
unsigned static int g150;
unsigned static int g149;
unsigned static int g148;
unsigned static int g147;
unsigned static int g146;
unsigned static int g145;
unsigned static int I144;
unsigned static int g143;
unsigned static int g142;
unsigned static int g141;
unsigned static int g140;
unsigned static int g139;
unsigned static int g138;
unsigned static int g137;
unsigned static int I136;
unsigned static int g135;
unsigned static int g134;
unsigned static int g133;
unsigned static int g132;
unsigned static int g131;
unsigned static int g130;
unsigned static int g129;
unsigned static int g128;
unsigned static int I127;
unsigned static int g126;
unsigned static int g125;
unsigned static int g124;
unsigned static int g123;
unsigned static int I122;
unsigned static int g121;
unsigned static int g120;
unsigned static int g119;
unsigned static int g118;
unsigned static int I117;
unsigned static int g116;
unsigned static int g115;
unsigned static int I114;
unsigned static int g113;
unsigned static int g112;
unsigned static int g111;
unsigned static int I110;
unsigned static int g109;
unsigned static int g108;
unsigned static int I107;
unsigned static int g106;
unsigned static int I105;
unsigned static int I104;
unsigned static int g103;
unsigned static int memcen102;
unsigned static int mem_write101;
unsigned static int memaddr100;
unsigned static int cv_mem_read;
unsigned static int hold;
unsigned static int pc;
unsigned static int phase;
unsigned static int q;
unsigned static int p;
i0out182_last_d = 1 & ttvtoc_ticks;
i1out183_last_d = 1 & ttvtoc_ticks;
i2out184_last_d = 1 & ttvtoc_ticks;
i3out185_last_d = 1 & ttvtoc_ticks;
i4out186_last_d = 1 & ttvtoc_ticks;
i5out187_last_d = 1 & ttvtoc_ticks;
i6out188_last_d = 1 & ttvtoc_ticks;
i7out189_last_d = 1 & ttvtoc_ticks;
i8out190_last_d = 1 & ttvtoc_ticks;
i9out191_last_d = 1 & ttvtoc_ticks;
i10out192_last_d = 1 & ttvtoc_ticks;
i11out193_last_d = 1 & ttvtoc_ticks;
i12out194_last_d = 1 & ttvtoc_ticks;
i13out195_last_d = 1 & ttvtoc_ticks;
i14out196_last_d = 1 & ttvtoc_ticks;
i15out197_last_d = 1 & ttvtoc_ticks;
i16out198_last_d = 1 & ttvtoc_ticks;
i17out199_last_d = 1 & ttvtoc_ticks;
i0hold205_last_d = 1 & ttvtoc_ticks;
i1hold206_last_d = 1 & ttvtoc_ticks;
i2hold207_last_d = 1 & ttvtoc_ticks;
i3hold208_last_d = 1 & ttvtoc_ticks;
i4hold209_last_d = 1 & ttvtoc_ticks;
i5hold210_last_d = 1 & ttvtoc_ticks;
i6hold211_last_d = 1 & ttvtoc_ticks;
i7hold212_last_d = 1 & ttvtoc_ticks;
i0phase220_last_d = 1 & ttvtoc_ticks;
i1phase222_last_d = 1 & ttvtoc_ticks;
i0p239_last_d = 1 & ttvtoc_ticks;
i1p250_last_d = 1 & ttvtoc_ticks;
i2p264_last_d = 1 & ttvtoc_ticks;
i3p280_last_d = 1 & ttvtoc_ticks;
i4p296_last_d = 1 & ttvtoc_ticks;
i5p313_last_d = 1 & ttvtoc_ticks;
i6p330_last_d = 1 & ttvtoc_ticks;
i7p347_last_d = 1 & ttvtoc_ticks;
i8p364_last_d = 1 & ttvtoc_ticks;
i9p381_last_d = 1 & ttvtoc_ticks;
i10p398_last_d = 1 & ttvtoc_ticks;
i11p415_last_d = 1 & ttvtoc_ticks;
i12p432_last_d = 1 & ttvtoc_ticks;
i13p449_last_d = 1 & ttvtoc_ticks;
i14p466_last_d = 1 & ttvtoc_ticks;
i15p483_last_d = 1 & ttvtoc_ticks;
i16p500_last_d = 1 & ttvtoc_ticks;
i17p517_last_d = 1 & ttvtoc_ticks;
i0q527_last_d = 1 & ttvtoc_ticks;
i1q530_last_d = 1 & ttvtoc_ticks;
i2q533_last_d = 1 & ttvtoc_ticks;
i3q536_last_d = 1 & ttvtoc_ticks;
i4q539_last_d = 1 & ttvtoc_ticks;
i5q542_last_d = 1 & ttvtoc_ticks;
i6q545_last_d = 1 & ttvtoc_ticks;
i7q548_last_d = 1 & ttvtoc_ticks;
i8q551_last_d = 1 & ttvtoc_ticks;
i9q554_last_d = 1 & ttvtoc_ticks;
i10q557_last_d = 1 & ttvtoc_ticks;
i11q560_last_d = 1 & ttvtoc_ticks;
i12q563_last_d = 1 & ttvtoc_ticks;
i13q566_last_d = 1 & ttvtoc_ticks;
i14q569_last_d = 1 & ttvtoc_ticks;
i15q572_last_d = 1 & ttvtoc_ticks;
i16q575_last_d = 1 & ttvtoc_ticks;
i17q580_last_d = 1 & ttvtoc_ticks;
pc_last_d = 1 & ttvtoc_ticks;
guard_last_d = 1 & ttvtoc_ticks;
memaddr100 = 16383 & memaddr100 | (1 & p>>17)<<14 & 32767;
memaddr100 = 24575 & memaddr100 | (1 & p>>16)<<13 & 32767;
memaddr100 = 28671 & memaddr100 | (1 & p>>15)<<12 & 32767;
memaddr100 = 30719 & memaddr100 | (1 & p>>14)<<11 & 32767;
memaddr100 = 31743 & memaddr100 | (1 & p>>13)<<10 & 32767;
memaddr100 = 32255 & memaddr100 | (1 & p>>12)<<9 & 32767;
memaddr100 = 32511 & memaddr100 | (1 & p>>11)<<8 & 32767;
memaddr100 = 32639 & memaddr100 | (1 & p>>10)<<7 & 32767;
memaddr100 = 32703 & memaddr100 | (1 & p>>9)<<6 & 32767;
memaddr100 = 32735 & memaddr100 | (1 & p>>8)<<5 & 32767;
memaddr100 = 32751 & memaddr100 | (1 & p>>7)<<4 & 32767;
memaddr100 = 32759 & memaddr100 | (1 & p>>6)<<3 & 32767;
memaddr100 = 32763 & memaddr100 | (1 & p>>5)<<2 & 32767;
memaddr100 = 32765 & memaddr100 | (1 & p>>4)<<1 & 32767;
memaddr100 = 32766 & memaddr100 | 1 & p>>3;
cv_mem_read = 255 & *(memaddr100 + array_mem_mem_mem);
I122 = 1 & ~(1 & p>>2);
I117 = 1 & ~(1 & p>>1);
I114 = 1 & ~(1 & p);
g120 = I117 & 1 | I114 & 1;
g126 = I122 & 1 | g120 & 1;
I127 = 1 & ~g126;
g118 = I117 & 1 | (1 & p) & 1;
g125 = g118 & 1 | I122 & 1;
g128 = 1 & (I127 & g125);
g115 = I114 & 1 | (1 & p>>1) & 1;
g124 = g115 & 1 | I122 & 1;
g129 = 1 & (g128 & g124);
g112 = (1 & p>>1) & 1 | (1 & p) & 1;
g123 = I122 & 1 | g112 & 1;
g130 = 1 & (g129 & g123);
g121 = g120 & 1 | (1 & p>>2) & 1;
g131 = 1 & (g121 & g130);
g119 = g118 & 1 | (1 & p>>2) & 1;
g132 = 1 & (g119 & g131);
g116 = g115 & 1 | (1 & p>>2) & 1;
g133 = 1 & (g116 & g132);
g113 = g112 & 1 | (1 & p>>2) & 1;
g134 = 1 & (g133 & g113);
g630 = (1 & hold>>7) & 1 | g134 & 1;
g103 = (1 & phase) & 1 | (1 & phase>>1) & 1;
g631 = 1 & (g103 & g630);
mem_write101 = 127 & mem_write101 | (1 & g631)<<7 & 255;
I136 = 1 & ~g125;
g137 = 1 & (I136 & g124);
g138 = 1 & (g137 & g123);
g139 = 1 & (g138 & g121);
g140 = 1 & (g139 & g119);
g141 = 1 & (g116 & g140);
g142 = 1 & (g113 & g141);
g627 = (1 & hold>>6) & 1 | g142 & 1;
g628 = 1 & (g627 & g103);
mem_write101 = 191 & mem_write101 | (1 & g628)<<6 & 255;
I144 = 1 & ~g124;
g145 = 1 & (I144 & g123);
g146 = 1 & (g145 & g121);
g147 = 1 & (g119 & g146);
g148 = 1 & (g147 & g116);
g149 = 1 & (g148 & g113);
g624 = (1 & hold>>5) & 1 | g149 & 1;
g625 = 1 & (g624 & g103);
mem_write101 = 223 & mem_write101 | (1 & g625)<<5 & 255;
I151 = 1 & ~g123;
g152 = 1 & (I151 & g121);
g153 = 1 & (g119 & g152);
g154 = 1 & (g116 & g153);
g155 = 1 & (g154 & g113);
g621 = g155 & 1 | (1 & hold>>4) & 1;
g622 = 1 & (g103 & g621);
mem_write101 = 239 & mem_write101 | (1 & g622)<<4 & 255;
I157 = 1 & ~g121;
g158 = 1 & (g119 & I157);
g159 = 1 & (g158 & g116);
g160 = 1 & (g159 & g113);
g618 = (1 & hold>>3) & 1 | g160 & 1;
g619 = 1 & (g618 & g103);
mem_write101 = 247 & mem_write101 | (1 & g619)<<3 & 255;
I162 = 1 & ~g119;
g163 = 1 & (g116 & I162);
g164 = 1 & (g163 & g113);
g615 = (1 & hold>>2) & 1 | g164 & 1;
g616 = 1 & (g615 & g103);
mem_write101 = 251 & mem_write101 | (1 & g616)<<2 & 255;
I166 = 1 & ~g116;
g167 = 1 & (I166 & g113);
g612 = (1 & hold>>1) & 1 | g167 & 1;
g613 = 1 & (g103 & g612);
mem_write101 = 253 & mem_write101 | (1 & g613)<<1 & 255;
I169 = 1 & ~g113;
g609 = (1 & hold) & 1 | I169 & 1;
g610 = 1 & (g609 & g103);
mem_write101 = 254 & mem_write101 | 1 & g610;
I105 = 1 & ~(1 & phase);
g106 = (1 & phase>>1) & 1 | I105 & 1;
I107 = 1 & ~g106;
g234 = 1 & (I107 & pc);
g591 = 1 & (g234 & g103);
I104 = 1 & ~g103;
g592 = I104 & 1 | g591 & 1;
I213 = 1 & ~*reset;
g593 = 1 & (g592 & I213);
memcen102 = 1 & g593;
g170 = 1 & ((1 & cv_mem_read) & I169);
g168 = 1 & ((1 & cv_mem_read>>1) & g167);
g171 = g168 & 1 | g170 & 1;
g165 = 1 & ((1 & cv_mem_read>>2) & g164);
g172 = g165 & 1 | g171 & 1;
g161 = 1 & ((1 & cv_mem_read>>3) & g160);
g173 = g172 & 1 | g161 & 1;
g156 = 1 & ((1 & cv_mem_read>>4) & g155);
g174 = g156 & 1 | g173 & 1;
g150 = 1 & (g149 & (1 & cv_mem_read>>5));
g175 = g174 & 1 | g150 & 1;
g143 = 1 & (g142 & (1 & cv_mem_read>>6));
g176 = g175 & 1 | g143 & 1;
g135 = 1 & ((1 & cv_mem_read>>7) & g134);
g177 = g176 & 1 | g135 & 1;
I586 = 1 & ~g177;
g587 = *guard & 1 | I586 & 1;
I585 = 1 & ~*hs;
g588 = 1 & (g587 & I585);
I110 = 1 & ~(1 & phase>>1);
g111 = (1 & phase) & 1 | I110 & 1;
g108 = I107 & 1 | I104 & 1;
g584 = g108 & 1 | g111 & 1;
mq589 = 1 & (((g584) ? *guard:g588));
g590 = 1 & (mq589 & I213);
I202 = 1 & ~pc;
mq581 = 1 & (((g106) ? pc:I202));
mq582 = 1 & (((g103) ? mq581:pc));
g583 = 1 & (mq582 & I213);
I224 = 1 & ~(1 & p>>17);
g578 = 1 & (I224 & (1 & q>>17));
g267 = 1 & (1 & q>>1 & 1 & q);
g283 = 1 & (g267 & (1 & q>>2));
g299 = 1 & (g283 & (1 & q>>3));
g316 = 1 & (g299 & (1 & q>>4));
g333 = 1 & (g316 & (1 & q>>5));
g350 = 1 & (g333 & (1 & q>>6));
g367 = 1 & (g350 & (1 & q>>7));
g384 = 1 & (g367 & (1 & q>>8));
g401 = 1 & (g384 & (1 & q>>9));
g418 = 1 & (g401 & (1 & q>>10));
g435 = 1 & (g418 & (1 & q>>11));
g452 = 1 & (g435 & (1 & q>>12));
g469 = 1 & (g452 & (1 & q>>13));
g486 = 1 & (g469 & (1 & q>>14));
g503 = 1 & (g486 & (1 & q>>15));
g576 = 1 & (g503 & (1 & q>>16));
g577 = 1 & (g576 ^ 1 & q>>17);
mq579 = 1 & (((g103) ? g577:g578));
g573 = 1 & (I224 & (1 & q>>16));
g504 = 1 & (g503 ^ 1 & q>>16);
mq574 = 1 & (((g103) ? g504:g573));
g570 = 1 & (I224 & (1 & q>>15));
g487 = 1 & (g486 ^ 1 & q>>15);
mq571 = 1 & (((g103) ? g487:g570));
g567 = 1 & (I224 & (1 & q>>14));
g470 = 1 & (g469 ^ 1 & q>>14);
mq568 = 1 & (((g103) ? g470:g567));
g564 = 1 & (I224 & (1 & q>>13));
g453 = 1 & (g452 ^ 1 & q>>13);
mq565 = 1 & (((g103) ? g453:g564));
g561 = 1 & (I224 & (1 & q>>12));
g436 = 1 & (g435 ^ 1 & q>>12);
mq562 = 1 & (((g103) ? g436:g561));
g558 = 1 & (I224 & (1 & q>>11));
g419 = 1 & (g418 ^ 1 & q>>11);
mq559 = 1 & (((g103) ? g419:g558));
g555 = 1 & (I224 & (1 & q>>10));
g402 = 1 & (g401 ^ 1 & q>>10);
mq556 = 1 & (((g103) ? g402:g555));
g552 = 1 & (I224 & (1 & q>>9));
g385 = 1 & (g384 ^ 1 & q>>9);
mq553 = 1 & (((g103) ? g385:g552));
g549 = 1 & (I224 & (1 & q>>8));
g368 = 1 & (g367 ^ 1 & q>>8);
mq550 = 1 & (((g103) ? g368:g549));
g546 = 1 & (I224 & (1 & q>>7));
g351 = 1 & (g350 ^ 1 & q>>7);
mq547 = 1 & (((g103) ? g351:g546));
g543 = 1 & (I224 & (1 & q>>6));
g334 = 1 & (g333 ^ 1 & q>>6);
mq544 = 1 & (((g103) ? g334:g543));
g540 = 1 & (I224 & (1 & q>>5));
g317 = 1 & (g316 ^ 1 & q>>5);
mq541 = 1 & (((g103) ? g317:g540));
g537 = 1 & (I224 & (1 & q>>4));
g300 = 1 & (g299 ^ 1 & q>>4);
mq538 = 1 & (((g103) ? g300:g537));
g534 = 1 & (I224 & (1 & q>>3));
g284 = 1 & (g283 ^ 1 & q>>3);
mq535 = 1 & (((g103) ? g284:g534));
g531 = 1 & (I224 & (1 & q>>2));
g268 = 1 & (g267 ^ 1 & q>>2);
mq532 = 1 & (((g103) ? g268:g531));
g528 = (1 & p>>17) & 1 | (1 & q>>1) & 1;
g253 = 1 & (1 & q>>1 ^ 1 & q);
mq529 = 1 & (((g103) ? g253:g528));
g520 = I202 & 1 | (1 & q>>17) & 1;
g521 = g106 & 1 | g520 & 1;
I522 = 1 & ~g521;
g523 = 1 & (I522 & (1 & p>>17));
g524 = 1 & (g523 & g103);
g525 = g524 & 1 | I104 & 1;
g526 = 1 & (g525 & I213);
g518 = 1 & (I224 & (1 & q));
I241 = 1 & ~(1 & q);
mq519 = 1 & (((g103) ? I241:g518));
g309 = 1 & (1 & p>>4 & 1 & p>>3);
g326 = 1 & (g309 & (1 & p>>5));
g343 = 1 & (g326 & (1 & p>>6));
g360 = 1 & (g343 & (1 & p>>7));
g377 = 1 & (g360 & (1 & p>>8));
g394 = 1 & (g377 & (1 & p>>9));
g411 = 1 & (g394 & (1 & p>>10));
g428 = 1 & (g411 & (1 & p>>11));
g445 = 1 & (g428 & (1 & p>>12));
g462 = 1 & (g445 & (1 & p>>13));
g479 = 1 & (g462 & (1 & p>>14));
g496 = 1 & (g479 & (1 & p>>15));
g513 = 1 & (g496 & (1 & p>>16));
g514 = 1 & (g513 ^ 1 & p>>17);
g515 = 1 & (g514 & I224);
g508 = 1 & (1 & q>>17 ^ 1 & p>>17);
g491 = 1 & (1 & q>>16 ^ 1 & p>>16);
g474 = 1 & (1 & q>>15 ^ 1 & p>>15);
g457 = 1 & (1 & q>>14 ^ 1 & p>>14);
g440 = 1 & (1 & q>>13 ^ 1 & p>>13);
g423 = 1 & (1 & q>>12 ^ 1 & p>>12);
g406 = 1 & (1 & q>>11 ^ 1 & p>>11);
g389 = 1 & (1 & q>>10 ^ 1 & p>>10);
g372 = 1 & (1 & q>>9 ^ 1 & p>>9);
g355 = 1 & (1 & q>>8 ^ 1 & p>>8);
g338 = 1 & (1 & q>>7 ^ 1 & p>>7);
g321 = 1 & (1 & q>>6 ^ 1 & p>>6);
g304 = 1 & (1 & q>>5 ^ 1 & p>>5);
g288 = 1 & (1 & q>>4 ^ 1 & p>>4);
g272 = 1 & (1 & q>>3 ^ 1 & p>>3);
g257 = 1 & (1 & q>>2 ^ 1 & p>>2);
g243 = 1 & (1 & q>>1 ^ 1 & p>>1);
g242 = 1 & (1 & q & 1 & p);
g255 = 1 & (g243 & g242);
g254 = 1 & (1 & q>>1 & 1 & p>>1);
g256 = g255 & 1 | g254 & 1;
g270 = 1 & (g257 & g256);
g269 = 1 & (1 & q>>2 & 1 & p>>2);
g271 = g269 & 1 | g270 & 1;
g286 = 1 & (g272 & g271);
g285 = 1 & (1 & q>>3 & 1 & p>>3);
g287 = g286 & 1 | g285 & 1;
g302 = 1 & (g288 & g287);
g301 = 1 & (1 & q>>4 & 1 & p>>4);
g303 = g302 & 1 | g301 & 1;
g319 = 1 & (g304 & g303);
g318 = 1 & (1 & q>>5 & 1 & p>>5);
g320 = g319 & 1 | g318 & 1;
g336 = 1 & (g321 & g320);
g335 = 1 & (1 & q>>6 & 1 & p>>6);
g337 = g336 & 1 | g335 & 1;
g353 = 1 & (g338 & g337);
g352 = 1 & (1 & q>>7 & 1 & p>>7);
g354 = g353 & 1 | g352 & 1;
g370 = 1 & (g355 & g354);
g369 = 1 & (1 & q>>8 & 1 & p>>8);
g371 = g369 & 1 | g370 & 1;
g387 = 1 & (g372 & g371);
g386 = 1 & (1 & q>>9 & 1 & p>>9);
g388 = g387 & 1 | g386 & 1;
g404 = 1 & (g389 & g388);
g403 = 1 & (1 & q>>10 & 1 & p>>10);
g405 = g404 & 1 | g403 & 1;
g421 = 1 & (g406 & g405);
g420 = 1 & (1 & q>>11 & 1 & p>>11);
g422 = g421 & 1 | g420 & 1;
g438 = 1 & (g423 & g422);
g437 = 1 & (1 & q>>12 & 1 & p>>12);
g439 = g438 & 1 | g437 & 1;
g455 = 1 & (g439 & g440);
g454 = 1 & (1 & q>>13 & 1 & p>>13);
g456 = g455 & 1 | g454 & 1;
g472 = 1 & (g457 & g456);
g471 = 1 & (1 & q>>14 & 1 & p>>14);
g473 = g472 & 1 | g471 & 1;
g489 = 1 & (g474 & g473);
g488 = 1 & (1 & q>>15 & 1 & p>>15);
g490 = g489 & 1 | g488 & 1;
g506 = 1 & (g491 & g490);
g505 = 1 & (1 & q>>16 & 1 & p>>16);
g507 = g506 & 1 | g505 & 1;
g509 = 1 & (g508 ^ g507);
mq510 = 1 & (((1 & p>>17) ? g504:g509));
I223 = 1 & ~(1 & q>>17);
g511 = 1 & (mq510 & I223);
g251 = 1 & (1 & p>>1 & 1 & p);
g265 = 1 & (g251 & (1 & p>>2));
g281 = 1 & (g265 & (1 & p>>3));
g297 = 1 & (g281 & (1 & p>>4));
g314 = 1 & (g297 & (1 & p>>5));
g331 = 1 & (g314 & (1 & p>>6));
g348 = 1 & (g331 & (1 & p>>7));
g365 = 1 & (g348 & (1 & p>>8));
g382 = 1 & (g365 & (1 & p>>9));
g399 = 1 & (g382 & (1 & p>>10));
g416 = 1 & (g399 & (1 & p>>11));
g433 = 1 & (g416 & (1 & p>>12));
g450 = 1 & (g433 & (1 & p>>13));
g467 = 1 & (g450 & (1 & p>>14));
g484 = 1 & (g467 & (1 & p>>15));
g501 = 1 & (g484 & (1 & p>>16));
g502 = 1 & (g501 ^ 1 & p>>17);
mq512 = 1 & (((g106) ? g502:g511));
mq516 = 1 & (((g103) ? mq512:g515));
g497 = 1 & (g496 ^ 1 & p>>16);
g498 = 1 & (g497 & I224);
g492 = 1 & (g491 ^ g490);
mq493 = 1 & (((1 & p>>17) ? g487:g492));
g494 = 1 & (mq493 & I223);
g485 = 1 & (g484 ^ 1 & p>>16);
mq495 = 1 & (((g106) ? g485:g494));
mq499 = 1 & (((g103) ? mq495:g498));
g480 = 1 & (g479 ^ 1 & p>>15);
g481 = 1 & (I224 & g480);
g475 = 1 & (g474 ^ g473);
mq476 = 1 & (((1 & p>>17) ? g470:g475));
g477 = 1 & (mq476 & I223);
g468 = 1 & (g467 ^ 1 & p>>15);
mq478 = 1 & (((g106) ? g468:g477));
mq482 = 1 & (((g103) ? mq478:g481));
g463 = 1 & (g462 ^ 1 & p>>14);
g464 = 1 & (I224 & g463);
g458 = 1 & (g457 ^ g456);
mq459 = 1 & (((1 & p>>17) ? g453:g458));
g460 = 1 & (mq459 & I223);
g451 = 1 & (g450 ^ 1 & p>>14);
mq461 = 1 & (((g106) ? g451:g460));
mq465 = 1 & (((g103) ? mq461:g464));
g446 = 1 & (g445 ^ 1 & p>>13);
g447 = 1 & (g446 & I224);
g441 = 1 & (g439 ^ g440);
mq442 = 1 & (((1 & p>>17) ? g436:g441));
g443 = 1 & (mq442 & I223);
g434 = 1 & (g433 ^ 1 & p>>13);
mq444 = 1 & (((g106) ? g434:g443));
mq448 = 1 & (((g103) ? mq444:g447));
g429 = 1 & (g428 ^ 1 & p>>12);
g430 = 1 & (g429 & I224);
g424 = 1 & (g423 ^ g422);
mq425 = 1 & (((1 & p>>17) ? g419:g424));
g426 = 1 & (mq425 & I223);
g417 = 1 & (g416 ^ 1 & p>>12);
mq427 = 1 & (((g106) ? g417:g426));
mq431 = 1 & (((g103) ? mq427:g430));
g412 = 1 & (g411 ^ 1 & p>>11);
g413 = 1 & (I224 & g412);
g407 = 1 & (g406 ^ g405);
mq408 = 1 & (((1 & p>>17) ? g402:g407));
g409 = 1 & (mq408 & I223);
g400 = 1 & (g399 ^ 1 & p>>11);
mq410 = 1 & (((g106) ? g400:g409));
mq414 = 1 & (((g103) ? mq410:g413));
g395 = 1 & (g394 ^ 1 & p>>10);
g396 = 1 & (g395 & I224);
g390 = 1 & (g389 ^ g388);
mq391 = 1 & (((1 & p>>17) ? g385:g390));
g392 = 1 & (mq391 & I223);
g383 = 1 & (g382 ^ 1 & p>>10);
mq393 = 1 & (((g106) ? g383:g392));
mq397 = 1 & (((g103) ? mq393:g396));
g378 = 1 & (g377 ^ 1 & p>>9);
g379 = 1 & (g378 & I224);
g373 = 1 & (g372 ^ g371);
mq374 = 1 & (((1 & p>>17) ? g368:g373));
g375 = 1 & (mq374 & I223);
g366 = 1 & (g365 ^ 1 & p>>9);
mq376 = 1 & (((g106) ? g366:g375));
mq380 = 1 & (((g103) ? mq376:g379));
g361 = 1 & (g360 ^ 1 & p>>8);
g362 = 1 & (I224 & g361);
g356 = 1 & (g355 ^ g354);
mq357 = 1 & (((1 & p>>17) ? g351:g356));
g358 = 1 & (mq357 & I223);
g349 = 1 & (g348 ^ 1 & p>>8);
mq359 = 1 & (((g106) ? g349:g358));
mq363 = 1 & (((g103) ? mq359:g362));
g344 = 1 & (g343 ^ 1 & p>>7);
g345 = 1 & (g344 & I224);
g339 = 1 & (g338 ^ g337);
mq340 = 1 & (((1 & p>>17) ? g334:g339));
g341 = 1 & (mq340 & I223);
g332 = 1 & (g331 ^ 1 & p>>7);
mq342 = 1 & (((g106) ? g332:g341));
mq346 = 1 & (((g103) ? mq342:g345));
g327 = 1 & (g326 ^ 1 & p>>6);
g328 = 1 & (g327 & I224);
g322 = 1 & (g321 ^ g320);
mq323 = 1 & (((1 & p>>17) ? g317:g322));
g324 = 1 & (mq323 & I223);
g315 = 1 & (g314 ^ 1 & p>>6);
mq325 = 1 & (((g106) ? g315:g324));
mq329 = 1 & (((g103) ? mq325:g328));
g310 = 1 & (g309 ^ 1 & p>>5);
g311 = 1 & (I224 & g310);
g305 = 1 & (g304 ^ g303);
mq306 = 1 & (((1 & p>>17) ? g300:g305));
g307 = 1 & (mq306 & I223);
g298 = 1 & (g297 ^ 1 & p>>5);
mq308 = 1 & (((g106) ? g298:g307));
mq312 = 1 & (((g103) ? mq308:g311));
g293 = 1 & (1 & p>>4 ^ 1 & p>>3);
g294 = 1 & (g293 & I224);
g289 = 1 & (g288 ^ g287);
mq290 = 1 & (((1 & p>>17) ? g284:g289));
g291 = 1 & (mq290 & I223);
g282 = 1 & (g281 ^ 1 & p>>4);
mq292 = 1 & (((g106) ? g282:g291));
mq295 = 1 & (((g103) ? mq292:g294));
I277 = 1 & ~(1 & p>>3);
g278 = 1 & (I277 & I224);
g273 = 1 & (g272 ^ g271);
mq274 = 1 & (((1 & p>>17) ? g268:g273));
g275 = 1 & (mq274 & I223);
g266 = 1 & (g265 ^ 1 & p>>3);
mq276 = 1 & (((g106) ? g266:g275));
mq279 = 1 & (((g103) ? mq276:g278));
g262 = (1 & p>>17) & 1 | (1 & p>>2) & 1;
g258 = 1 & (g257 ^ g256);
mq259 = 1 & (((1 & p>>17) ? g253:g258));
g260 = 1 & (mq259 & I223);
g252 = 1 & (g251 ^ 1 & p>>2);
mq261 = 1 & (((g106) ? g252:g260));
mq263 = 1 & (((g103) ? mq261:g262));
g248 = 1 & (I224 & (1 & p>>1));
g244 = 1 & (g243 ^ g242);
mq245 = 1 & (((1 & p>>17) ? I241:g244));
g246 = 1 & (mq245 & I223);
g240 = 1 & (1 & p>>1 ^ 1 & p);
mq247 = 1 & (((g106) ? g240:g246));
mq249 = 1 & (((g103) ? mq247:g248));
I231 = 1 & ~g111;
g178 = g177 & 1 | *hs & 1;
g232 = 1 & (g178 & I231);
g233 = 1 & (g106 & g232);
g235 = g234 & 1 | g233 & 1;
g236 = 1 & (g235 & g103);
g237 = g236 & 1 | I104 & 1;
g238 = 1 & (g237 & I213);
g229 = 1 & (I224 & (1 & p));
g225 = 1 & (1 & q ^ 1 & p);
g226 = 1 & (g225 & I224);
g227 = 1 & (g226 & I223);
mq228 = 1 & (((g106) ? I114:g227));
mq230 = 1 & (((g103) ? mq228:g229));
g221 = 1 & (1 & phase ^ 1 & phase>>1);
g217 = 1 & (I104 & (1 & p>>17));
g214 = 1 & ((1 & q>>17) & pc);
g215 = 1 & (I107 & g214);
g216 = 1 & (g215 & g103);
g218 = g217 & 1 | g216 & 1;
g219 = 1 & (g218 & I213);
g203 = 1 & (I107 & I202);
g200 = *reset & 1 | I104 & 1;
I201 = 1 & ~g200;
g204 = 1 & (g203 & I201);
g179 = g178 & 1 | g111 & 1;
g109 = *reset & 1 | g108 & 1;
g180 = g179 & 1 | g109 & 1;
I181 = 1 & ~g180;
#include "ttvinc.c"
/* synch */
if (1) { if (phase==2 && 1 & p>>17) ttvtoc_finish();
}
if (1) { i0out182_last_clk = 1 & (((I181) ? ttvtoc_ticks:i0out182_last_clk));
*out = 262143 & (((I181) ? 262142 & *out | 1 & p:*out));
if ((5>ttvtoc_ticks - i0out182_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i1out183_last_clk = 1 & (((I181) ? ttvtoc_ticks:i1out183_last_clk));
*out = 262143 & (((I181) ? 262141 & *out | (1 & p>>1)<<1:*out));
if ((5>ttvtoc_ticks - i1out183_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i2out184_last_clk = 1 & (((I181) ? ttvtoc_ticks:i2out184_last_clk));
*out = 262143 & (((I181) ? 262139 & *out | (1 & p>>2)<<2:*out));
if ((5>ttvtoc_ticks - i2out184_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i3out185_last_clk = 1 & (((I181) ? ttvtoc_ticks:i3out185_last_clk));
*out = 262143 & (((I181) ? 262135 & *out | (1 & p>>3)<<3:*out));
if ((5>ttvtoc_ticks - i3out185_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i4out186_last_clk = 1 & (((I181) ? ttvtoc_ticks:i4out186_last_clk));
*out = 262143 & (((I181) ? 262127 & *out | (1 & p>>4)<<4:*out));
if ((5>ttvtoc_ticks - i4out186_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i5out187_last_clk = 1 & (((I181) ? ttvtoc_ticks:i5out187_last_clk));
*out = 262143 & (((I181) ? 262111 & *out | (1 & p>>5)<<5:*out));
if ((5>ttvtoc_ticks - i5out187_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i6out188_last_clk = 1 & (((I181) ? ttvtoc_ticks:i6out188_last_clk));
*out = 262143 & (((I181) ? 262079 & *out | (1 & p>>6)<<6:*out));
if ((5>ttvtoc_ticks - i6out188_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i7out189_last_clk = 1 & (((I181) ? ttvtoc_ticks:i7out189_last_clk));
*out = 262143 & (((I181) ? 262015 & *out | (1 & p>>7)<<7:*out));
if ((5>ttvtoc_ticks - i7out189_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i8out190_last_clk = 1 & (((I181) ? ttvtoc_ticks:i8out190_last_clk));
*out = 262143 & (((I181) ? 261887 & *out | (1 & p>>8)<<8:*out));
if ((5>ttvtoc_ticks - i8out190_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i9out191_last_clk = 1 & (((I181) ? ttvtoc_ticks:i9out191_last_clk));
*out = 262143 & (((I181) ? 261631 & *out | (1 & p>>9)<<9:*out));
if ((5>ttvtoc_ticks - i9out191_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i10out192_last_clk = 1 & (((I181) ? ttvtoc_ticks:i10out192_last_clk));
*out = 262143 & (((I181) ? 261119 & *out | (1 & p>>10)<<10:*out));
if ((5>ttvtoc_ticks - i10out192_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i11out193_last_clk = 1 & (((I181) ? ttvtoc_ticks:i11out193_last_clk));
*out = 262143 & (((I181) ? 260095 & *out | (1 & p>>11)<<11:*out));
if ((5>ttvtoc_ticks - i11out193_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i12out194_last_clk = 1 & (((I181) ? ttvtoc_ticks:i12out194_last_clk));
*out = 262143 & (((I181) ? 258047 & *out | (1 & p>>12)<<12:*out));
if ((5>ttvtoc_ticks - i12out194_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i13out195_last_clk = 1 & (((I181) ? ttvtoc_ticks:i13out195_last_clk));
*out = 262143 & (((I181) ? 253951 & *out | (1 & p>>13)<<13:*out));
if ((5>ttvtoc_ticks - i13out195_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i14out196_last_clk = 1 & (((I181) ? ttvtoc_ticks:i14out196_last_clk));
*out = 262143 & (((I181) ? 245759 & *out | (1 & p>>14)<<14:*out));
if ((5>ttvtoc_ticks - i14out196_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i15out197_last_clk = 1 & (((I181) ? ttvtoc_ticks:i15out197_last_clk));
*out = 262143 & (((I181) ? 229375 & *out | (1 & p>>15)<<15:*out));
if ((5>ttvtoc_ticks - i15out197_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i16out198_last_clk = 1 & (((I181) ? ttvtoc_ticks:i16out198_last_clk));
*out = 262143 & (((I181) ? 196607 & *out | (1 & p>>16)<<16:*out));
if ((5>ttvtoc_ticks - i16out198_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i17out199_last_clk = 1 & (((I181) ? ttvtoc_ticks:i17out199_last_clk));
*out = 262143 & (((I181) ? 131071 & *out | (1 & p>>17)<<17:*out));
if ((5>ttvtoc_ticks - i17out199_last_d && I181) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i0hold205_last_clk = 1 & (((g204) ? ttvtoc_ticks:i0hold205_last_clk));
hold = 255 & (((g204) ? 254 & hold | 1 & cv_mem_read:hold));
if ((5>ttvtoc_ticks - i0hold205_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i1hold206_last_clk = 1 & (((g204) ? ttvtoc_ticks:i1hold206_last_clk));
hold = 255 & (((g204) ? 253 & hold | (1 & cv_mem_read>>1)<<1:hold));
if ((5>ttvtoc_ticks - i1hold206_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i2hold207_last_clk = 1 & (((g204) ? ttvtoc_ticks:i2hold207_last_clk));
hold = 255 & (((g204) ? 251 & hold | (1 & cv_mem_read>>2)<<2:hold));
if ((5>ttvtoc_ticks - i2hold207_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i3hold208_last_clk = 1 & (((g204) ? ttvtoc_ticks:i3hold208_last_clk));
hold = 255 & (((g204) ? 247 & hold | (1 & cv_mem_read>>3)<<3:hold));
if ((5>ttvtoc_ticks - i3hold208_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i4hold209_last_clk = 1 & (((g204) ? ttvtoc_ticks:i4hold209_last_clk));
hold = 255 & (((g204) ? 239 & hold | (1 & cv_mem_read>>4)<<4:hold));
if ((5>ttvtoc_ticks - i4hold209_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i5hold210_last_clk = 1 & (((g204) ? ttvtoc_ticks:i5hold210_last_clk));
hold = 255 & (((g204) ? 223 & hold | (1 & cv_mem_read>>5)<<5:hold));
if ((5>ttvtoc_ticks - i5hold210_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i6hold211_last_clk = 1 & (((g204) ? ttvtoc_ticks:i6hold211_last_clk));
hold = 255 & (((g204) ? 191 & hold | (1 & cv_mem_read>>6)<<6:hold));
if ((5>ttvtoc_ticks - i6hold211_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i7hold212_last_clk = 1 & (((g204) ? ttvtoc_ticks:i7hold212_last_clk));
hold = 255 & (((g204) ? 127 & hold | (1 & cv_mem_read>>7)<<7:hold));
if ((5>ttvtoc_ticks - i7hold212_last_d && g204) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i0phase220_last_clk = 1 & (((g219) ? ttvtoc_ticks:i0phase220_last_clk));
phase = 3 & (((g219) ? 2 & phase | 1 & I105:phase));
if ((5>ttvtoc_ticks - i0phase220_last_d && g219) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i1phase222_last_clk = 1 & (((g219) ? ttvtoc_ticks:i1phase222_last_clk));
phase = 3 & (((g219) ? 1 & phase | (1 & g221)<<1:phase));
if ((5>ttvtoc_ticks - i1phase222_last_d && g219) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i0p239_last_clk = 1 & (((g238) ? ttvtoc_ticks:i0p239_last_clk));
p = 262143 & (((g238) ? 262142 & p | 1 & mq230:p));
if ((5>ttvtoc_ticks - i0p239_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i1p250_last_clk = 1 & (((g238) ? ttvtoc_ticks:i1p250_last_clk));
p = 262143 & (((g238) ? 262141 & p | (1 & mq249)<<1:p));
if ((5>ttvtoc_ticks - i1p250_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i2p264_last_clk = 1 & (((g238) ? ttvtoc_ticks:i2p264_last_clk));
p = 262143 & (((g238) ? 262139 & p | (1 & mq263)<<2:p));
if ((5>ttvtoc_ticks - i2p264_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i3p280_last_clk = 1 & (((g238) ? ttvtoc_ticks:i3p280_last_clk));
p = 262143 & (((g238) ? 262135 & p | (1 & mq279)<<3:p));
if ((5>ttvtoc_ticks - i3p280_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i4p296_last_clk = 1 & (((g238) ? ttvtoc_ticks:i4p296_last_clk));
p = 262143 & (((g238) ? 262127 & p | (1 & mq295)<<4:p));
if ((5>ttvtoc_ticks - i4p296_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i5p313_last_clk = 1 & (((g238) ? ttvtoc_ticks:i5p313_last_clk));
p = 262143 & (((g238) ? 262111 & p | (1 & mq312)<<5:p));
if ((5>ttvtoc_ticks - i5p313_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i6p330_last_clk = 1 & (((g238) ? ttvtoc_ticks:i6p330_last_clk));
p = 262143 & (((g238) ? 262079 & p | (1 & mq329)<<6:p));
if ((5>ttvtoc_ticks - i6p330_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i7p347_last_clk = 1 & (((g238) ? ttvtoc_ticks:i7p347_last_clk));
p = 262143 & (((g238) ? 262015 & p | (1 & mq346)<<7:p));
if ((5>ttvtoc_ticks - i7p347_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i8p364_last_clk = 1 & (((g238) ? ttvtoc_ticks:i8p364_last_clk));
p = 262143 & (((g238) ? 261887 & p | (1 & mq363)<<8:p));
if ((5>ttvtoc_ticks - i8p364_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i9p381_last_clk = 1 & (((g238) ? ttvtoc_ticks:i9p381_last_clk));
p = 262143 & (((g238) ? 261631 & p | (1 & mq380)<<9:p));
if ((5>ttvtoc_ticks - i9p381_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i10p398_last_clk = 1 & (((g238) ? ttvtoc_ticks:i10p398_last_clk));
p = 262143 & (((g238) ? 261119 & p | (1 & mq397)<<10:p));
if ((5>ttvtoc_ticks - i10p398_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i11p415_last_clk = 1 & (((g238) ? ttvtoc_ticks:i11p415_last_clk));
p = 262143 & (((g238) ? 260095 & p | (1 & mq414)<<11:p));
if ((5>ttvtoc_ticks - i11p415_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i12p432_last_clk = 1 & (((g238) ? ttvtoc_ticks:i12p432_last_clk));
p = 262143 & (((g238) ? 258047 & p | (1 & mq431)<<12:p));
if ((5>ttvtoc_ticks - i12p432_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i13p449_last_clk = 1 & (((g238) ? ttvtoc_ticks:i13p449_last_clk));
p = 262143 & (((g238) ? 253951 & p | (1 & mq448)<<13:p));
if ((5>ttvtoc_ticks - i13p449_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i14p466_last_clk = 1 & (((g238) ? ttvtoc_ticks:i14p466_last_clk));
p = 262143 & (((g238) ? 245759 & p | (1 & mq465)<<14:p));
if ((5>ttvtoc_ticks - i14p466_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i15p483_last_clk = 1 & (((g238) ? ttvtoc_ticks:i15p483_last_clk));
p = 262143 & (((g238) ? 229375 & p | (1 & mq482)<<15:p));
if ((5>ttvtoc_ticks - i15p483_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i16p500_last_clk = 1 & (((g238) ? ttvtoc_ticks:i16p500_last_clk));
p = 262143 & (((g238) ? 196607 & p | (1 & mq499)<<16:p));
if ((5>ttvtoc_ticks - i16p500_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i17p517_last_clk = 1 & (((g238) ? ttvtoc_ticks:i17p517_last_clk));
p = 262143 & (((g238) ? 131071 & p | (1 & mq516)<<17:p));
if ((5>ttvtoc_ticks - i17p517_last_d && g238) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i0q527_last_clk = 1 & (((g526) ? ttvtoc_ticks:i0q527_last_clk));
q = 262143 & (((g526) ? 262142 & q | 1 & mq519:q));
if ((5>ttvtoc_ticks - i0q527_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i1q530_last_clk = 1 & (((g526) ? ttvtoc_ticks:i1q530_last_clk));
q = 262143 & (((g526) ? 262141 & q | (1 & mq529)<<1:q));
if ((5>ttvtoc_ticks - i1q530_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i2q533_last_clk = 1 & (((g526) ? ttvtoc_ticks:i2q533_last_clk));
q = 262143 & (((g526) ? 262139 & q | (1 & mq532)<<2:q));
if ((5>ttvtoc_ticks - i2q533_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i3q536_last_clk = 1 & (((g526) ? ttvtoc_ticks:i3q536_last_clk));
q = 262143 & (((g526) ? 262135 & q | (1 & mq535)<<3:q));
if ((5>ttvtoc_ticks - i3q536_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i4q539_last_clk = 1 & (((g526) ? ttvtoc_ticks:i4q539_last_clk));
q = 262143 & (((g526) ? 262127 & q | (1 & mq538)<<4:q));
if ((5>ttvtoc_ticks - i4q539_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i5q542_last_clk = 1 & (((g526) ? ttvtoc_ticks:i5q542_last_clk));
q = 262143 & (((g526) ? 262111 & q | (1 & mq541)<<5:q));
if ((5>ttvtoc_ticks - i5q542_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i6q545_last_clk = 1 & (((g526) ? ttvtoc_ticks:i6q545_last_clk));
q = 262143 & (((g526) ? 262079 & q | (1 & mq544)<<6:q));
if ((5>ttvtoc_ticks - i6q545_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i7q548_last_clk = 1 & (((g526) ? ttvtoc_ticks:i7q548_last_clk));
q = 262143 & (((g526) ? 262015 & q | (1 & mq547)<<7:q));
if ((5>ttvtoc_ticks - i7q548_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i8q551_last_clk = 1 & (((g526) ? ttvtoc_ticks:i8q551_last_clk));
q = 262143 & (((g526) ? 261887 & q | (1 & mq550)<<8:q));
if ((5>ttvtoc_ticks - i8q551_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i9q554_last_clk = 1 & (((g526) ? ttvtoc_ticks:i9q554_last_clk));
q = 262143 & (((g526) ? 261631 & q | (1 & mq553)<<9:q));
if ((5>ttvtoc_ticks - i9q554_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i10q557_last_clk = 1 & (((g526) ? ttvtoc_ticks:i10q557_last_clk));
q = 262143 & (((g526) ? 261119 & q | (1 & mq556)<<10:q));
if ((5>ttvtoc_ticks - i10q557_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i11q560_last_clk = 1 & (((g526) ? ttvtoc_ticks:i11q560_last_clk));
q = 262143 & (((g526) ? 260095 & q | (1 & mq559)<<11:q));
if ((5>ttvtoc_ticks - i11q560_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i12q563_last_clk = 1 & (((g526) ? ttvtoc_ticks:i12q563_last_clk));
q = 262143 & (((g526) ? 258047 & q | (1 & mq562)<<12:q));
if ((5>ttvtoc_ticks - i12q563_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i13q566_last_clk = 1 & (((g526) ? ttvtoc_ticks:i13q566_last_clk));
q = 262143 & (((g526) ? 253951 & q | (1 & mq565)<<13:q));
if ((5>ttvtoc_ticks - i13q566_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i14q569_last_clk = 1 & (((g526) ? ttvtoc_ticks:i14q569_last_clk));
q = 262143 & (((g526) ? 245759 & q | (1 & mq568)<<14:q));
if ((5>ttvtoc_ticks - i14q569_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i15q572_last_clk = 1 & (((g526) ? ttvtoc_ticks:i15q572_last_clk));
q = 262143 & (((g526) ? 229375 & q | (1 & mq571)<<15:q));
if ((5>ttvtoc_ticks - i15q572_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i16q575_last_clk = 1 & (((g526) ? ttvtoc_ticks:i16q575_last_clk));
q = 262143 & (((g526) ? 196607 & q | (1 & mq574)<<16:q));
if ((5>ttvtoc_ticks - i16q575_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { i17q580_last_clk = 1 & (((g526) ? ttvtoc_ticks:i17q580_last_clk));
q = 262143 & (((g526) ? 131071 & q | (1 & mq579)<<17:q));
if ((5>ttvtoc_ticks - i17q580_last_d && g526) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { pc_last_clk = 1 & ttvtoc_ticks;
pc = 1 & (g583 & 1);
if ((5>ttvtoc_ticks - pc_last_d && 1) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { guard_last_clk = 1 & ttvtoc_ticks;
*guard = 1 & (g590 & 1);
if ((5>ttvtoc_ticks - guard_last_d && 1) && 1 & ~0) ttvtoc_display("Time %t, DFF %m violated set-up time", ttvtoc_ticks);
}
if (1) { *(memaddr100 + array_mem_mem_mem) = 255 & (((memcen102) ? mem_write101:*(memaddr100 + array_mem_mem_mem)));
}
(ttvtoc_ticks++);
/* post cont */
i0out182_last_d = 1 & ttvtoc_ticks;
i1out183_last_d = 1 & ttvtoc_ticks;
i2out184_last_d = 1 & ttvtoc_ticks;
i3out185_last_d = 1 & ttvtoc_ticks;
i4out186_last_d = 1 & ttvtoc_ticks;
i5out187_last_d = 1 & ttvtoc_ticks;
i6out188_last_d = 1 & ttvtoc_ticks;
i7out189_last_d = 1 & ttvtoc_ticks;
i8out190_last_d = 1 & ttvtoc_ticks;
i9out191_last_d = 1 & ttvtoc_ticks;
i10out192_last_d = 1 & ttvtoc_ticks;
i11out193_last_d = 1 & ttvtoc_ticks;
i12out194_last_d = 1 & ttvtoc_ticks;
i13out195_last_d = 1 & ttvtoc_ticks;
i14out196_last_d = 1 & ttvtoc_ticks;
i15out197_last_d = 1 & ttvtoc_ticks;
i16out198_last_d = 1 & ttvtoc_ticks;
i17out199_last_d = 1 & ttvtoc_ticks;
i0hold205_last_d = 1 & ttvtoc_ticks;
i1hold206_last_d = 1 & ttvtoc_ticks;
i2hold207_last_d = 1 & ttvtoc_ticks;
i3hold208_last_d = 1 & ttvtoc_ticks;
i4hold209_last_d = 1 & ttvtoc_ticks;
i5hold210_last_d = 1 & ttvtoc_ticks;
i6hold211_last_d = 1 & ttvtoc_ticks;
i7hold212_last_d = 1 & ttvtoc_ticks;
i0phase220_last_d = 1 & ttvtoc_ticks;
i1phase222_last_d = 1 & ttvtoc_ticks;
i0p239_last_d = 1 & ttvtoc_ticks;
i1p250_last_d = 1 & ttvtoc_ticks;
i2p264_last_d = 1 & ttvtoc_ticks;
i3p280_last_d = 1 & ttvtoc_ticks;
i4p296_last_d = 1 & ttvtoc_ticks;
i5p313_last_d = 1 & ttvtoc_ticks;
i6p330_last_d = 1 & ttvtoc_ticks;
i7p347_last_d = 1 & ttvtoc_ticks;
i8p364_last_d = 1 & ttvtoc_ticks;
i9p381_last_d = 1 & ttvtoc_ticks;
i10p398_last_d = 1 & ttvtoc_ticks;
i11p415_last_d = 1 & ttvtoc_ticks;
i12p432_last_d = 1 & ttvtoc_ticks;
i13p449_last_d = 1 & ttvtoc_ticks;
i14p466_last_d = 1 & ttvtoc_ticks;
i15p483_last_d = 1 & ttvtoc_ticks;
i16p500_last_d = 1 & ttvtoc_ticks;
i17p517_last_d = 1 & ttvtoc_ticks;
i0q527_last_d = 1 & ttvtoc_ticks;
i1q530_last_d = 1 & ttvtoc_ticks;
i2q533_last_d = 1 & ttvtoc_ticks;
i3q536_last_d = 1 & ttvtoc_ticks;
i4q539_last_d = 1 & ttvtoc_ticks;
i5q542_last_d = 1 & ttvtoc_ticks;
i6q545_last_d = 1 & ttvtoc_ticks;
i7q548_last_d = 1 & ttvtoc_ticks;
i8q551_last_d = 1 & ttvtoc_ticks;
i9q554_last_d = 1 & ttvtoc_ticks;
i10q557_last_d = 1 & ttvtoc_ticks;
i11q560_last_d = 1 & ttvtoc_ticks;
i12q563_last_d = 1 & ttvtoc_ticks;
i13q566_last_d = 1 & ttvtoc_ticks;
i14q569_last_d = 1 & ttvtoc_ticks;
i15q572_last_d = 1 & ttvtoc_ticks;
i16q575_last_d = 1 & ttvtoc_ticks;
i17q580_last_d = 1 & ttvtoc_ticks;
pc_last_d = 1 & ttvtoc_ticks;
guard_last_d = 1 & ttvtoc_ticks;
memaddr100 = 16383 & memaddr100 | (1 & p>>17)<<14 & 32767;
memaddr100 = 24575 & memaddr100 | (1 & p>>16)<<13 & 32767;
memaddr100 = 28671 & memaddr100 | (1 & p>>15)<<12 & 32767;
memaddr100 = 30719 & memaddr100 | (1 & p>>14)<<11 & 32767;
memaddr100 = 31743 & memaddr100 | (1 & p>>13)<<10 & 32767;
memaddr100 = 32255 & memaddr100 | (1 & p>>12)<<9 & 32767;
memaddr100 = 32511 & memaddr100 | (1 & p>>11)<<8 & 32767;
memaddr100 = 32639 & memaddr100 | (1 & p>>10)<<7 & 32767;
memaddr100 = 32703 & memaddr100 | (1 & p>>9)<<6 & 32767;
memaddr100 = 32735 & memaddr100 | (1 & p>>8)<<5 & 32767;
memaddr100 = 32751 & memaddr100 | (1 & p>>7)<<4 & 32767;
memaddr100 = 32759 & memaddr100 | (1 & p>>6)<<3 & 32767;
memaddr100 = 32763 & memaddr100 | (1 & p>>5)<<2 & 32767;
memaddr100 = 32765 & memaddr100 | (1 & p>>4)<<1 & 32767;
memaddr100 = 32766 & memaddr100 | 1 & p>>3;
cv_mem_read = 255 & *(memaddr100 + array_mem_mem_mem);
I122 = 1 & ~(1 & p>>2);
I117 = 1 & ~(1 & p>>1);
I114 = 1 & ~(1 & p);
g120 = I117 & 1 | I114 & 1;
g126 = I122 & 1 | g120 & 1;
I127 = 1 & ~g126;
g118 = I117 & 1 | (1 & p) & 1;
g125 = g118 & 1 | I122 & 1;
g128 = 1 & (I127 & g125);
g115 = I114 & 1 | (1 & p>>1) & 1;
g124 = g115 & 1 | I122 & 1;
g129 = 1 & (g128 & g124);
g112 = (1 & p>>1) & 1 | (1 & p) & 1;
g123 = I122 & 1 | g112 & 1;
g130 = 1 & (g129 & g123);
g121 = g120 & 1 | (1 & p>>2) & 1;
g131 = 1 & (g121 & g130);
g119 = g118 & 1 | (1 & p>>2) & 1;
g132 = 1 & (g119 & g131);
g116 = g115 & 1 | (1 & p>>2) & 1;
g133 = 1 & (g116 & g132);
g113 = g112 & 1 | (1 & p>>2) & 1;
g134 = 1 & (g133 & g113);
g630 = (1 & hold>>7) & 1 | g134 & 1;
g103 = (1 & phase) & 1 | (1 & phase>>1) & 1;
g631 = 1 & (g103 & g630);
mem_write101 = 127 & mem_write101 | (1 & g631)<<7 & 255;
I136 = 1 & ~g125;
g137 = 1 & (I136 & g124);
g138 = 1 & (g137 & g123);
g139 = 1 & (g138 & g121);
g140 = 1 & (g139 & g119);
g141 = 1 & (g116 & g140);
g142 = 1 & (g113 & g141);
g627 = (1 & hold>>6) & 1 | g142 & 1;
g628 = 1 & (g627 & g103);
mem_write101 = 191 & mem_write101 | (1 & g628)<<6 & 255;
I144 = 1 & ~g124;
g145 = 1 & (I144 & g123);
g146 = 1 & (g145 & g121);
g147 = 1 & (g119 & g146);
g148 = 1 & (g147 & g116);
g149 = 1 & (g148 & g113);
g624 = (1 & hold>>5) & 1 | g149 & 1;
g625 = 1 & (g624 & g103);
mem_write101 = 223 & mem_write101 | (1 & g625)<<5 & 255;
I151 = 1 & ~g123;
g152 = 1 & (I151 & g121);
g153 = 1 & (g119 & g152);
g154 = 1 & (g116 & g153);
g155 = 1 & (g154 & g113);
g621 = g155 & 1 | (1 & hold>>4) & 1;
g622 = 1 & (g103 & g621);
mem_write101 = 239 & mem_write101 | (1 & g622)<<4 & 255;
I157 = 1 & ~g121;
g158 = 1 & (g119 & I157);
g159 = 1 & (g158 & g116);
g160 = 1 & (g159 & g113);
g618 = (1 & hold>>3) & 1 | g160 & 1;
g619 = 1 & (g618 & g103);
mem_write101 = 247 & mem_write101 | (1 & g619)<<3 & 255;
I162 = 1 & ~g119;
g163 = 1 & (g116 & I162);
g164 = 1 & (g163 & g113);
g615 = (1 & hold>>2) & 1 | g164 & 1;
g616 = 1 & (g615 & g103);
mem_write101 = 251 & mem_write101 | (1 & g616)<<2 & 255;
I166 = 1 & ~g116;
g167 = 1 & (I166 & g113);
g612 = (1 & hold>>1) & 1 | g167 & 1;
g613 = 1 & (g103 & g612);
mem_write101 = 253 & mem_write101 | (1 & g613)<<1 & 255;
I169 = 1 & ~g113;
g609 = (1 & hold) & 1 | I169 & 1;
g610 = 1 & (g609 & g103);
mem_write101 = 254 & mem_write101 | 1 & g610;
I105 = 1 & ~(1 & phase);
g106 = (1 & phase>>1) & 1 | I105 & 1;
I107 = 1 & ~g106;
g234 = 1 & (I107 & pc);
g591 = 1 & (g234 & g103);
I104 = 1 & ~g103;
g592 = I104 & 1 | g591 & 1;
I213 = 1 & ~*reset;
g593 = 1 & (g592 & I213);
memcen102 = 1 & g593;
g170 = 1 & ((1 & cv_mem_read) & I169);
g168 = 1 & ((1 & cv_mem_read>>1) & g167);
g171 = g168 & 1 | g170 & 1;
g165 = 1 & ((1 & cv_mem_read>>2) & g164);
g172 = g165 & 1 | g171 & 1;
g161 = 1 & ((1 & cv_mem_read>>3) & g160);
g173 = g172 & 1 | g161 & 1;
g156 = 1 & ((1 & cv_mem_read>>4) & g155);
g174 = g156 & 1 | g173 & 1;
g150 = 1 & (g149 & (1 & cv_mem_read>>5));
g175 = g174 & 1 | g150 & 1;
g143 = 1 & (g142 & (1 & cv_mem_read>>6));
g176 = g175 & 1 | g143 & 1;
g135 = 1 & ((1 & cv_mem_read>>7) & g134);
g177 = g176 & 1 | g135 & 1;
I586 = 1 & ~g177;
g587 = *guard & 1 | I586 & 1;
I585 = 1 & ~*hs;
g588 = 1 & (g587 & I585);
I110 = 1 & ~(1 & phase>>1);
g111 = (1 & phase) & 1 | I110 & 1;
g108 = I107 & 1 | I104 & 1;
g584 = g108 & 1 | g111 & 1;
mq589 = 1 & (((g584) ? *guard:g588));
g590 = 1 & (mq589 & I213);
I202 = 1 & ~pc;
mq581 = 1 & (((g106) ? pc:I202));
mq582 = 1 & (((g103) ? mq581:pc));
g583 = 1 & (mq582 & I213);
I224 = 1 & ~(1 & p>>17);
g578 = 1 & (I224 & (1 & q>>17));
g267 = 1 & (1 & q>>1 & 1 & q);
g283 = 1 & (g267 & (1 & q>>2));
g299 = 1 & (g283 & (1 & q>>3));
g316 = 1 & (g299 & (1 & q>>4));
g333 = 1 & (g316 & (1 & q>>5));
g350 = 1 & (g333 & (1 & q>>6));
g367 = 1 & (g350 & (1 & q>>7));
g384 = 1 & (g367 & (1 & q>>8));
g401 = 1 & (g384 & (1 & q>>9));
g418 = 1 & (g401 & (1 & q>>10));
g435 = 1 & (g418 & (1 & q>>11));
g452 = 1 & (g435 & (1 & q>>12));
g469 = 1 & (g452 & (1 & q>>13));
g486 = 1 & (g469 & (1 & q>>14));
g503 = 1 & (g486 & (1 & q>>15));
g576 = 1 & (g503 & (1 & q>>16));
g577 = 1 & (g576 ^ 1 & q>>17);
mq579 = 1 & (((g103) ? g577:g578));
g573 = 1 & (I224 & (1 & q>>16));
g504 = 1 & (g503 ^ 1 & q>>16);
mq574 = 1 & (((g103) ? g504:g573));
g570 = 1 & (I224 & (1 & q>>15));
g487 = 1 & (g486 ^ 1 & q>>15);
mq571 = 1 & (((g103) ? g487:g570));
g567 = 1 & (I224 & (1 & q>>14));
g470 = 1 & (g469 ^ 1 & q>>14);
mq568 = 1 & (((g103) ? g470:g567));
g564 = 1 & (I224 & (1 & q>>13));
g453 = 1 & (g452 ^ 1 & q>>13);
mq565 = 1 & (((g103) ? g453:g564));
g561 = 1 & (I224 & (1 & q>>12));
g436 = 1 & (g435 ^ 1 & q>>12);
mq562 = 1 & (((g103) ? g436:g561));
g558 = 1 & (I224 & (1 & q>>11));
g419 = 1 & (g418 ^ 1 & q>>11);
mq559 = 1 & (((g103) ? g419:g558));
g555 = 1 & (I224 & (1 & q>>10));
g402 = 1 & (g401 ^ 1 & q>>10);
mq556 = 1 & (((g103) ? g402:g555));
g552 = 1 & (I224 & (1 & q>>9));
g385 = 1 & (g384 ^ 1 & q>>9);
mq553 = 1 & (((g103) ? g385:g552));
g549 = 1 & (I224 & (1 & q>>8));
g368 = 1 & (g367 ^ 1 & q>>8);
mq550 = 1 & (((g103) ? g368:g549));
g546 = 1 & (I224 & (1 & q>>7));
g351 = 1 & (g350 ^ 1 & q>>7);
mq547 = 1 & (((g103) ? g351:g546));
g543 = 1 & (I224 & (1 & q>>6));
g334 = 1 & (g333 ^ 1 & q>>6);
mq544 = 1 & (((g103) ? g334:g543));
g540 = 1 & (I224 & (1 & q>>5));
g317 = 1 & (g316 ^ 1 & q>>5);
mq541 = 1 & (((g103) ? g317:g540));
g537 = 1 & (I224 & (1 & q>>4));
g300 = 1 & (g299 ^ 1 & q>>4);
mq538 = 1 & (((g103) ? g300:g537));
g534 = 1 & (I224 & (1 & q>>3));
g284 = 1 & (g283 ^ 1 & q>>3);
mq535 = 1 & (((g103) ? g284:g534));
g531 = 1 & (I224 & (1 & q>>2));
g268 = 1 & (g267 ^ 1 & q>>2);
mq532 = 1 & (((g103) ? g268:g531));
g528 = (1 & p>>17) & 1 | (1 & q>>1) & 1;
g253 = 1 & (1 & q>>1 ^ 1 & q);
mq529 = 1 & (((g103) ? g253:g528));
g520 = I202 & 1 | (1 & q>>17) & 1;
g521 = g106 & 1 | g520 & 1;
I522 = 1 & ~g521;
g523 = 1 & (I522 & (1 & p>>17));
g524 = 1 & (g523 & g103);
g525 = g524 & 1 | I104 & 1;
g526 = 1 & (g525 & I213);
g518 = 1 & (I224 & (1 & q));
I241 = 1 & ~(1 & q);
mq519 = 1 & (((g103) ? I241:g518));
g309 = 1 & (1 & p>>4 & 1 & p>>3);
g326 = 1 & (g309 & (1 & p>>5));
g343 = 1 & (g326 & (1 & p>>6));
g360 = 1 & (g343 & (1 & p>>7));
g377 = 1 & (g360 & (1 & p>>8));
g394 = 1 & (g377 & (1 & p>>9));
g411 = 1 & (g394 & (1 & p>>10));
g428 = 1 & (g411 & (1 & p>>11));
g445 = 1 & (g428 & (1 & p>>12));
g462 = 1 & (g445 & (1 & p>>13));
g479 = 1 & (g462 & (1 & p>>14));
g496 = 1 & (g479 & (1 & p>>15));
g513 = 1 & (g496 & (1 & p>>16));
g514 = 1 & (g513 ^ 1 & p>>17);
g515 = 1 & (g514 & I224);
g508 = 1 & (1 & q>>17 ^ 1 & p>>17);
g491 = 1 & (1 & q>>16 ^ 1 & p>>16);
g474 = 1 & (1 & q>>15 ^ 1 & p>>15);
g457 = 1 & (1 & q>>14 ^ 1 & p>>14);
g440 = 1 & (1 & q>>13 ^ 1 & p>>13);
g423 = 1 & (1 & q>>12 ^ 1 & p>>12);
g406 = 1 & (1 & q>>11 ^ 1 & p>>11);
g389 = 1 & (1 & q>>10 ^ 1 & p>>10);
g372 = 1 & (1 & q>>9 ^ 1 & p>>9);
g355 = 1 & (1 & q>>8 ^ 1 & p>>8);
g338 = 1 & (1 & q>>7 ^ 1 & p>>7);
g321 = 1 & (1 & q>>6 ^ 1 & p>>6);
g304 = 1 & (1 & q>>5 ^ 1 & p>>5);
g288 = 1 & (1 & q>>4 ^ 1 & p>>4);
g272 = 1 & (1 & q>>3 ^ 1 & p>>3);
g257 = 1 & (1 & q>>2 ^ 1 & p>>2);
g243 = 1 & (1 & q>>1 ^ 1 & p>>1);
g242 = 1 & (1 & q & 1 & p);
g255 = 1 & (g243 & g242);
g254 = 1 & (1 & q>>1 & 1 & p>>1);
g256 = g255 & 1 | g254 & 1;
g270 = 1 & (g257 & g256);
g269 = 1 & (1 & q>>2 & 1 & p>>2);
g271 = g269 & 1 | g270 & 1;
g286 = 1 & (g272 & g271);
g285 = 1 & (1 & q>>3 & 1 & p>>3);
g287 = g286 & 1 | g285 & 1;
g302 = 1 & (g288 & g287);
g301 = 1 & (1 & q>>4 & 1 & p>>4);
g303 = g302 & 1 | g301 & 1;
g319 = 1 & (g304 & g303);
g318 = 1 & (1 & q>>5 & 1 & p>>5);
g320 = g319 & 1 | g318 & 1;
g336 = 1 & (g321 & g320);
g335 = 1 & (1 & q>>6 & 1 & p>>6);
g337 = g336 & 1 | g335 & 1;
g353 = 1 & (g338 & g337);
g352 = 1 & (1 & q>>7 & 1 & p>>7);
g354 = g353 & 1 | g352 & 1;
g370 = 1 & (g355 & g354);
g369 = 1 & (1 & q>>8 & 1 & p>>8);
g371 = g369 & 1 | g370 & 1;
g387 = 1 & (g372 & g371);
g386 = 1 & (1 & q>>9 & 1 & p>>9);
g388 = g387 & 1 | g386 & 1;
g404 = 1 & (g389 & g388);
g403 = 1 & (1 & q>>10 & 1 & p>>10);
g405 = g404 & 1 | g403 & 1;
g421 = 1 & (g406 & g405);
g420 = 1 & (1 & q>>11 & 1 & p>>11);
g422 = g421 & 1 | g420 & 1;
g438 = 1 & (g423 & g422);
g437 = 1 & (1 & q>>12 & 1 & p>>12);
g439 = g438 & 1 | g437 & 1;
g455 = 1 & (g439 & g440);
g454 = 1 & (1 & q>>13 & 1 & p>>13);
g456 = g455 & 1 | g454 & 1;
g472 = 1 & (g457 & g456);
g471 = 1 & (1 & q>>14 & 1 & p>>14);
g473 = g472 & 1 | g471 & 1;
g489 = 1 & (g474 & g473);
g488 = 1 & (1 & q>>15 & 1 & p>>15);
g490 = g489 & 1 | g488 & 1;
g506 = 1 & (g491 & g490);
g505 = 1 & (1 & q>>16 & 1 & p>>16);
g507 = g506 & 1 | g505 & 1;
g509 = 1 & (g508 ^ g507);
mq510 = 1 & (((1 & p>>17) ? g504:g509));
I223 = 1 & ~(1 & q>>17);
g511 = 1 & (mq510 & I223);
g251 = 1 & (1 & p>>1 & 1 & p);
g265 = 1 & (g251 & (1 & p>>2));
g281 = 1 & (g265 & (1 & p>>3));
g297 = 1 & (g281 & (1 & p>>4));
g314 = 1 & (g297 & (1 & p>>5));
g331 = 1 & (g314 & (1 & p>>6));
g348 = 1 & (g331 & (1 & p>>7));
g365 = 1 & (g348 & (1 & p>>8));
g382 = 1 & (g365 & (1 & p>>9));
g399 = 1 & (g382 & (1 & p>>10));
g416 = 1 & (g399 & (1 & p>>11));
g433 = 1 & (g416 & (1 & p>>12));
g450 = 1 & (g433 & (1 & p>>13));
g467 = 1 & (g450 & (1 & p>>14));
g484 = 1 & (g467 & (1 & p>>15));
g501 = 1 & (g484 & (1 & p>>16));
g502 = 1 & (g501 ^ 1 & p>>17);
mq512 = 1 & (((g106) ? g502:g511));
mq516 = 1 & (((g103) ? mq512:g515));
g497 = 1 & (g496 ^ 1 & p>>16);
g498 = 1 & (g497 & I224);
g492 = 1 & (g491 ^ g490);
mq493 = 1 & (((1 & p>>17) ? g487:g492));
g494 = 1 & (mq493 & I223);
g485 = 1 & (g484 ^ 1 & p>>16);
mq495 = 1 & (((g106) ? g485:g494));
mq499 = 1 & (((g103) ? mq495:g498));
g480 = 1 & (g479 ^ 1 & p>>15);
g481 = 1 & (I224 & g480);
g475 = 1 & (g474 ^ g473);
mq476 = 1 & (((1 & p>>17) ? g470:g475));
g477 = 1 & (mq476 & I223);
g468 = 1 & (g467 ^ 1 & p>>15);
mq478 = 1 & (((g106) ? g468:g477));
mq482 = 1 & (((g103) ? mq478:g481));
g463 = 1 & (g462 ^ 1 & p>>14);
g464 = 1 & (I224 & g463);
g458 = 1 & (g457 ^ g456);
mq459 = 1 & (((1 & p>>17) ? g453:g458));
g460 = 1 & (mq459 & I223);
g451 = 1 & (g450 ^ 1 & p>>14);
mq461 = 1 & (((g106) ? g451:g460));
mq465 = 1 & (((g103) ? mq461:g464));
g446 = 1 & (g445 ^ 1 & p>>13);
g447 = 1 & (g446 & I224);
g441 = 1 & (g439 ^ g440);
mq442 = 1 & (((1 & p>>17) ? g436:g441));
g443 = 1 & (mq442 & I223);
g434 = 1 & (g433 ^ 1 & p>>13);
mq444 = 1 & (((g106) ? g434:g443));
mq448 = 1 & (((g103) ? mq444:g447));
g429 = 1 & (g428 ^ 1 & p>>12);
g430 = 1 & (g429 & I224);
g424 = 1 & (g423 ^ g422);
mq425 = 1 & (((1 & p>>17) ? g419:g424));
g426 = 1 & (mq425 & I223);
g417 = 1 & (g416 ^ 1 & p>>12);
mq427 = 1 & (((g106) ? g417:g426));
mq431 = 1 & (((g103) ? mq427:g430));
g412 = 1 & (g411 ^ 1 & p>>11);
g413 = 1 & (I224 & g412);
g407 = 1 & (g406 ^ g405);
mq408 = 1 & (((1 & p>>17) ? g402:g407));
g409 = 1 & (mq408 & I223);
g400 = 1 & (g399 ^ 1 & p>>11);
mq410 = 1 & (((g106) ? g400:g409));
mq414 = 1 & (((g103) ? mq410:g413));
g395 = 1 & (g394 ^ 1 & p>>10);
g396 = 1 & (g395 & I224);
g390 = 1 & (g389 ^ g388);
mq391 = 1 & (((1 & p>>17) ? g385:g390));
g392 = 1 & (mq391 & I223);
g383 = 1 & (g382 ^ 1 & p>>10);
mq393 = 1 & (((g106) ? g383:g392));
mq397 = 1 & (((g103) ? mq393:g396));
g378 = 1 & (g377 ^ 1 & p>>9);
g379 = 1 & (g378 & I224);
g373 = 1 & (g372 ^ g371);
mq374 = 1 & (((1 & p>>17) ? g368:g373));
g375 = 1 & (mq374 & I223);
g366 = 1 & (g365 ^ 1 & p>>9);
mq376 = 1 & (((g106) ? g366:g375));
mq380 = 1 & (((g103) ? mq376:g379));
g361 = 1 & (g360 ^ 1 & p>>8);
g362 = 1 & (I224 & g361);
g356 = 1 & (g355 ^ g354);
mq357 = 1 & (((1 & p>>17) ? g351:g356));
g358 = 1 & (mq357 & I223);
g349 = 1 & (g348 ^ 1 & p>>8);
mq359 = 1 & (((g106) ? g349:g358));
mq363 = 1 & (((g103) ? mq359:g362));
g344 = 1 & (g343 ^ 1 & p>>7);
g345 = 1 & (g344 & I224);
g339 = 1 & (g338 ^ g337);
mq340 = 1 & (((1 & p>>17) ? g334:g339));
g341 = 1 & (mq340 & I223);
g332 = 1 & (g331 ^ 1 & p>>7);
mq342 = 1 & (((g106) ? g332:g341));
mq346 = 1 & (((g103) ? mq342:g345));
g327 = 1 & (g326 ^ 1 & p>>6);
g328 = 1 & (g327 & I224);
g322 = 1 & (g321 ^ g320);
mq323 = 1 & (((1 & p>>17) ? g317:g322));
g324 = 1 & (mq323 & I223);
g315 = 1 & (g314 ^ 1 & p>>6);
mq325 = 1 & (((g106) ? g315:g324));
mq329 = 1 & (((g103) ? mq325:g328));
g310 = 1 & (g309 ^ 1 & p>>5);
g311 = 1 & (I224 & g310);
g305 = 1 & (g304 ^ g303);
mq306 = 1 & (((1 & p>>17) ? g300:g305));
g307 = 1 & (mq306 & I223);
g298 = 1 & (g297 ^ 1 & p>>5);
mq308 = 1 & (((g106) ? g298:g307));
mq312 = 1 & (((g103) ? mq308:g311));
g293 = 1 & (1 & p>>4 ^ 1 & p>>3);
g294 = 1 & (g293 & I224);
g289 = 1 & (g288 ^ g287);
mq290 = 1 & (((1 & p>>17) ? g284:g289));
g291 = 1 & (mq290 & I223);
g282 = 1 & (g281 ^ 1 & p>>4);
mq292 = 1 & (((g106) ? g282:g291));
mq295 = 1 & (((g103) ? mq292:g294));
I277 = 1 & ~(1 & p>>3);
g278 = 1 & (I277 & I224);
g273 = 1 & (g272 ^ g271);
mq274 = 1 & (((1 & p>>17) ? g268:g273));
g275 = 1 & (mq274 & I223);
g266 = 1 & (g265 ^ 1 & p>>3);
mq276 = 1 & (((g106) ? g266:g275));
mq279 = 1 & (((g103) ? mq276:g278));
g262 = (1 & p>>17) & 1 | (1 & p>>2) & 1;
g258 = 1 & (g257 ^ g256);
mq259 = 1 & (((1 & p>>17) ? g253:g258));
g260 = 1 & (mq259 & I223);
g252 = 1 & (g251 ^ 1 & p>>2);
mq261 = 1 & (((g106) ? g252:g260));
mq263 = 1 & (((g103) ? mq261:g262));
g248 = 1 & (I224 & (1 & p>>1));
g244 = 1 & (g243 ^ g242);
mq245 = 1 & (((1 & p>>17) ? I241:g244));
g246 = 1 & (mq245 & I223);
g240 = 1 & (1 & p>>1 ^ 1 & p);
mq247 = 1 & (((g106) ? g240:g246));
mq249 = 1 & (((g103) ? mq247:g248));
I231 = 1 & ~g111;
g178 = g177 & 1 | *hs & 1;
g232 = 1 & (g178 & I231);
g233 = 1 & (g106 & g232);
g235 = g234 & 1 | g233 & 1;
g236 = 1 & (g235 & g103);
g237 = g236 & 1 | I104 & 1;
g238 = 1 & (g237 & I213);
g229 = 1 & (I224 & (1 & p));
g225 = 1 & (1 & q ^ 1 & p);
g226 = 1 & (g225 & I224);
g227 = 1 & (g226 & I223);
mq228 = 1 & (((g106) ? I114:g227));
mq230 = 1 & (((g103) ? mq228:g229));
g221 = 1 & (1 & phase ^ 1 & phase>>1);
g217 = 1 & (I104 & (1 & p>>17));
g214 = 1 & ((1 & q>>17) & pc);
g215 = 1 & (I107 & g214);
g216 = 1 & (g215 & g103);
g218 = g217 & 1 | g216 & 1;
g219 = 1 & (g218 & I213);
g203 = 1 & (I107 & I202);
g200 = *reset & 1 | I104 & 1;
I201 = 1 & ~g200;
g204 = 1 & (g203 & I201);
g179 = g178 & 1 | g111 & 1;
g109 = *reset & 1 | g108 & 1;
g180 = g179 & 1 | g109 & 1;
I181 = 1 & ~g180;
}
/* End of tt generated C routine */
Makefile
TTVTOC=/local/scratch/djg/scv3
TTVLIB=$(TTVTOC)/ttvtoclib.c
all:pgate
rem time nice pgate
pbev:primes.c main.c ttvinc.c
gcc -o pbev -I$(TTVTOC) main.c primes.c $(TTVLIB)
pgate:primesvnl.c main.c ttvinc.c
gcc -o pgate -I$(TTVTOC) main.c primesvnl.c $(TTVLIB)
primes.vnl:primes.cv
cv2.100 primes.cv -root PRIMEGEN -mlt collect_array_cen
primes.c:primes.cv
vtoc -mode1 clk -mlt fl_newnet_copy primes.cv -root PRIMEGEN -o primes.c
SRAM
//
module SSRAM32768x8(y, clk, a, cen, d);
input [7:0] d;
output [7:0] y;
reg [7:0] y;
input clk, cen;
input [14:0] a;
reg [7:0] mem [32767:0];
always @(posedge clk) if (cen) mem[a] = d;
always @(clk or a) y = #10 mem[a];
endmodule
Generated Output