Modified cpu RTL to stop clock after HALT instruction
diff --git a/def/user_project_wrapper.def b/def/user_project_wrapper.def index 4858398..7e8575d 100644 --- a/def/user_project_wrapper.def +++ b/def/user_project_wrapper.def
@@ -7226,8 +7226,8 @@ NEW met2 ( 1479130 1992570 ) ( * 2220030 ) NEW met2 ( 1770770 1992570 ) ( * 2000220 0 ) NEW met1 ( 1277190 2220030 ) ( 1479130 * ) - NEW met1 ( 1157130 2230230 ) ( 1277190 * ) NEW met1 ( 1479130 1992570 ) ( 1770770 * ) + NEW met1 ( 1157130 2230230 ) ( 1277190 * ) NEW met1 ( 1157130 2230230 ) M1M2_PR NEW met1 ( 1277190 2230230 ) M1M2_PR NEW met1 ( 1277190 2220030 ) M1M2_PR @@ -7257,8 +7257,8 @@ NEW met2 ( 1158510 2230060 ) ( * 2243660 ) NEW met4 ( 1466020 1989340 ) ( * 2243660 ) NEW met2 ( 1896350 1989340 ) ( * 2000220 0 ) - NEW met3 ( 1158510 2243660 ) ( 1466020 * ) NEW met3 ( 1466020 1989340 ) ( 1896350 * ) + NEW met3 ( 1158510 2243660 ) ( 1466020 * ) NEW met2 ( 1158510 2243660 ) M2M3_PR NEW met3 ( 1466020 2243660 ) M3M4_PR NEW met3 ( 1466020 1989340 ) M3M4_PR @@ -8230,7 +8230,7 @@ - analog_io[8] ( PIN analog_io[8] ) + USE SIGNAL ; - analog_io[9] ( PIN analog_io[9] ) + USE SIGNAL ; - clk ( mprj soc_clk ) ( memLword3 clk0 ) ( memLword2 clk0 ) ( memLword1 clk0 ) ( memLword0 clk0 ) ( memHword3 clk0 ) ( memHword2 clk0 ) - ( memHword1 clk0 ) ( memHword0 clk0 ) ( cpu0 clk ) + USE SIGNAL + ( memHword1 clk0 ) ( memHword0 clk0 ) ( cpu0 clkin ) + USE SIGNAL + ROUTED met2 ( 1277190 2248420 ) ( * 2253010 ) NEW met2 ( 1282250 2219860 0 ) ( * 2248420 ) NEW met4 ( 1282020 2208300 ) ( * 2220540 ) @@ -8274,10 +8274,10 @@ NEW met3 ( 1497300 3041300 ) ( * 3041670 ) NEW met3 ( 1497300 3041670 ) ( 1500060 * 0 ) NEW met2 ( 1873810 1993420 ) ( * 2000220 0 ) + NEW met3 ( 1301340 1993420 ) ( 1873810 * ) NEW met1 ( 937250 2253010 ) ( 1277190 * ) NEW met2 ( 1488330 2442050 ) ( * 3041300 ) NEW met1 ( 1460270 2442050 ) ( 2039410 * ) - NEW met3 ( 1301340 1993420 ) ( 1873810 * ) NEW met1 ( 392150 2448510 ) M1M2_PR NEW met1 ( 392610 2998630 ) M1M2_PR NEW met2 ( 1277190 2248420 ) M2M3_PR @@ -8347,15 +8347,15 @@ NEW met1 ( 1920730 2278850 ) M1M2_PR ; - cpdatin\[12\] ( mprj data_to_cpu[12] ) ( cpu0 datain[12] ) + USE SIGNAL + ROUTED met3 ( 1919580 2037620 0 ) ( 1925330 * ) - NEW met2 ( 1469470 2006850 ) ( * 2225810 ) - NEW met2 ( 1925330 2006850 ) ( * 2037620 ) + NEW met2 ( 1469470 2007870 ) ( * 2225810 ) + NEW met2 ( 1925330 2007870 ) ( * 2037620 ) NEW met2 ( 1259250 2219860 0 ) ( * 2225810 ) NEW met1 ( 1259250 2225810 ) ( 1469470 * ) - NEW met1 ( 1469470 2006850 ) ( 1925330 * ) + NEW met1 ( 1469470 2007870 ) ( 1925330 * ) NEW met1 ( 1469470 2225810 ) M1M2_PR NEW met2 ( 1925330 2037620 ) M2M3_PR - NEW met1 ( 1469470 2006850 ) M1M2_PR - NEW met1 ( 1925330 2006850 ) M1M2_PR + NEW met1 ( 1469470 2007870 ) M1M2_PR + NEW met1 ( 1925330 2007870 ) M1M2_PR NEW met1 ( 1259250 2225810 ) M1M2_PR ; - cpdatin\[13\] ( mprj data_to_cpu[13] ) ( cpu0 datain[13] ) + USE SIGNAL + ROUTED met2 ( 1263850 2236180 ) ( 1265690 * ) @@ -8371,8 +8371,8 @@ + ROUTED met2 ( 1272130 2219860 0 ) ( * 2221900 ) NEW met3 ( 1272130 2221900 ) ( 1307780 * ) NEW met4 ( 1307780 1992740 ) ( * 2221900 ) - NEW met2 ( 1580790 1992740 ) ( * 2000220 0 ) NEW met3 ( 1307780 1992740 ) ( 1580790 * ) + NEW met2 ( 1580790 1992740 ) ( * 2000220 0 ) NEW met2 ( 1272130 2221900 ) M2M3_PR NEW met3 ( 1307780 2221900 ) M3M4_PR NEW met3 ( 1307780 1992740 ) M3M4_PR @@ -8454,9 +8454,9 @@ - cpdatin\[6\] ( mprj data_to_cpu[6] ) ( cpu0 datain[6] ) + USE SIGNAL + ROUTED met2 ( 1468550 1993250 ) ( * 2225470 ) NEW met2 ( 1812630 1993250 ) ( * 2000220 0 ) + NEW met1 ( 1468550 1993250 ) ( 1812630 * ) NEW met2 ( 1220610 2219860 0 ) ( * 2225470 ) NEW met1 ( 1220610 2225470 ) ( 1468550 * ) - NEW met1 ( 1468550 1993250 ) ( 1812630 * ) NEW met1 ( 1468550 2225470 ) M1M2_PR NEW met1 ( 1468550 1993250 ) M1M2_PR NEW met1 ( 1812630 1993250 ) M1M2_PR @@ -8464,13 +8464,13 @@ - cpdatin\[7\] ( mprj data_to_cpu[7] ) ( cpu0 datain[7] ) + USE SIGNAL + ROUTED met2 ( 1469010 1992910 ) ( * 2213060 ) NEW met2 ( 1790090 1992910 ) ( * 2000220 0 ) + NEW met1 ( 1469010 1992910 ) ( 1790090 * ) NEW met4 ( 1227740 2213060 ) ( * 2219860 ) NEW met3 ( 1227510 2219860 ) ( 1227740 * ) NEW met2 ( 1227510 2219350 ) ( * 2219860 ) NEW met2 ( 1227050 2219350 ) ( 1227510 * ) NEW met2 ( 1227050 2219180 0 ) ( * 2219350 ) NEW met3 ( 1227740 2213060 ) ( 1469010 * ) - NEW met1 ( 1469010 1992910 ) ( 1790090 * ) NEW met2 ( 1469010 2213060 ) M2M3_PR NEW met1 ( 1469010 1992910 ) M1M2_PR NEW met1 ( 1790090 1992910 ) M1M2_PR @@ -8505,9 +8505,9 @@ - cpdatout\[0\] ( mprj data_from_cpu[0] ) ( cpu0 dataout[0] ) + USE SIGNAL + ROUTED met2 ( 1467630 1992230 ) ( * 2224110 ) NEW met2 ( 1748230 1992230 ) ( * 2000220 0 ) + NEW met1 ( 1467630 1992230 ) ( 1748230 * ) NEW met2 ( 1177370 2219860 0 ) ( * 2224110 ) NEW met1 ( 1177370 2224110 ) ( 1467630 * ) - NEW met1 ( 1467630 1992230 ) ( 1748230 * ) NEW met1 ( 1467630 2224110 ) M1M2_PR NEW met1 ( 1467630 1992230 ) M1M2_PR NEW met1 ( 1748230 1992230 ) M1M2_PR @@ -8527,11 +8527,11 @@ NEW met2 ( 1831950 1990870 ) ( * 2000220 0 ) NEW met1 ( 1290300 2215950 ) ( * 2216970 ) NEW met1 ( 1290300 2215950 ) ( 1377470 * ) + NEW met1 ( 1377470 1990870 ) ( 1831950 * ) NEW met2 ( 1248670 2216970 ) ( * 2219350 ) NEW met2 ( 1248210 2219350 ) ( 1248670 * ) NEW met2 ( 1248210 2219180 0 ) ( * 2219350 ) NEW met1 ( 1248670 2216970 ) ( 1290300 * ) - NEW met1 ( 1377470 1990870 ) ( 1831950 * ) NEW met1 ( 1377470 2215950 ) M1M2_PR NEW met1 ( 1377470 1990870 ) M1M2_PR NEW met1 ( 1831950 1990870 ) M1M2_PR @@ -8561,13 +8561,15 @@ NEW met2 ( 1704990 2003620 ) ( 1706370 * 0 ) NEW met2 ( 1704990 2003450 ) ( * 2003620 ) NEW met2 ( 1261090 2219860 0 ) ( * 2243150 ) + NEW met1 ( 1593900 2003110 ) ( * 2004130 ) NEW met1 ( 1683600 2003450 ) ( 1704990 * ) NEW met1 ( 1683600 2003110 ) ( * 2003450 ) - NEW met1 ( 1466710 2004470 ) ( 1511100 * ) - NEW met1 ( 1511100 2003790 ) ( * 2004470 ) - NEW met1 ( 1573200 2003110 ) ( 1683600 * ) - NEW met1 ( 1573200 2003110 ) ( * 2003790 ) - NEW met1 ( 1511100 2003790 ) ( 1573200 * ) + NEW met1 ( 1593900 2003110 ) ( 1683600 * ) + NEW met1 ( 1573200 2004130 ) ( 1593900 * ) + NEW met1 ( 1466710 2004470 ) ( 1524900 * ) + NEW met1 ( 1524900 2003790 ) ( * 2004470 ) + NEW met1 ( 1524900 2003790 ) ( 1573200 * ) + NEW met1 ( 1573200 2003790 ) ( * 2004130 ) NEW met1 ( 1261090 2243150 ) M1M2_PR NEW met1 ( 1466710 2243150 ) M1M2_PR NEW met1 ( 1466710 2004470 ) M1M2_PR @@ -8610,24 +8612,31 @@ NEW met3 ( 1190250 2220540 ) ( 1190940 * ) NEW met2 ( 1190250 2219860 0 ) ( * 2220540 ) NEW met3 ( 1190940 2212380 ) ( 1464870 * ) - NEW met1 ( 1464870 2005150 ) ( 1504200 * ) - NEW met1 ( 1504200 2005150 ) ( * 2006170 ) - NEW met1 ( 1504200 2006170 ) ( 1518000 * ) - NEW met1 ( 1518000 2006170 ) ( * 2006510 ) - NEW met1 ( 1584930 2004470 ) ( * 2006510 ) - NEW met1 ( 1518000 2006510 ) ( 1584930 * ) - NEW met1 ( 1584930 2004470 ) ( 1600800 * ) - NEW met2 ( 1621730 2003620 ) ( 1622650 * 0 ) - NEW met2 ( 1621730 2003450 ) ( * 2003620 ) - NEW met1 ( 1621730 2003450 ) ( * 2004130 ) - NEW met1 ( 1600800 2004130 ) ( 1621730 * ) - NEW met1 ( 1600800 2004130 ) ( * 2004470 ) + NEW met2 ( 1621270 2003620 ) ( 1622650 * 0 ) + NEW met2 ( 1621270 2003450 ) ( * 2003620 ) + NEW met1 ( 1608850 2003450 ) ( 1621270 * ) + NEW met1 ( 1608850 2003450 ) ( * 2004810 ) + NEW met1 ( 1593900 2004810 ) ( 1608850 * ) + NEW met1 ( 1593900 2004470 ) ( * 2004810 ) + NEW met1 ( 1587000 2004470 ) ( 1593900 * ) + NEW met1 ( 1587000 2004470 ) ( * 2005490 ) + NEW met1 ( 1571130 2005490 ) ( * 2006170 ) + NEW met1 ( 1571130 2005490 ) ( 1587000 * ) + NEW met1 ( 1541690 2004810 ) ( * 2005150 ) + NEW met1 ( 1541690 2004810 ) ( 1546290 * ) + NEW met1 ( 1546290 2004810 ) ( * 2006170 ) + NEW met1 ( 1546290 2006170 ) ( 1571130 * ) + NEW met1 ( 1518000 2005150 ) ( 1541690 * ) + NEW met1 ( 1493850 2005150 ) ( * 2005490 ) + NEW met1 ( 1493850 2005490 ) ( 1518000 * ) + NEW met1 ( 1518000 2005150 ) ( * 2005490 ) + NEW met1 ( 1464870 2005150 ) ( 1493850 * ) NEW met2 ( 1464870 2212380 ) M2M3_PR NEW met1 ( 1464870 2005150 ) M1M2_PR NEW met3 ( 1190940 2212380 ) M3M4_PR NEW met3 ( 1190940 2220540 ) M3M4_PR NEW met2 ( 1190250 2220540 ) M2M3_PR - NEW met1 ( 1621730 2003450 ) M1M2_PR ; + NEW met1 ( 1621270 2003450 ) M1M2_PR ; - cpdatout\[3\] ( mprj data_from_cpu[3] ) ( cpu0 dataout[3] ) + USE SIGNAL + ROUTED met3 ( 1486950 2041020 ) ( 1500980 * 0 ) NEW met2 ( 1486950 2041020 ) ( * 2218670 ) @@ -8697,34 +8706,34 @@ NEW met1 ( 1228430 2239070 ) M1M2_PR ; - cpdatout\[9\] ( mprj data_from_cpu[9] ) ( cpu0 dataout[9] ) + USE SIGNAL + ROUTED met2 ( 1467170 2005490 ) ( * 2242810 ) + NEW met2 ( 1538010 2003450 ) ( * 2003620 ) + NEW met2 ( 1538010 2003620 ) ( 1538930 * 0 ) NEW met1 ( 1235330 2242810 ) ( 1467170 * ) NEW met2 ( 1490170 2003450 ) ( * 2005490 ) NEW met1 ( 1467170 2005490 ) ( 1490170 * ) + NEW met1 ( 1490170 2003450 ) ( 1538010 * ) NEW met2 ( 1235330 2219860 0 ) ( * 2242810 ) - NEW met2 ( 1537550 2003450 ) ( * 2003620 ) - NEW met2 ( 1537550 2003620 ) ( 1538930 * 0 ) - NEW met1 ( 1490170 2003450 ) ( 1537550 * ) NEW met1 ( 1467170 2242810 ) M1M2_PR NEW met1 ( 1467170 2005490 ) M1M2_PR + NEW met1 ( 1538010 2003450 ) M1M2_PR NEW met1 ( 1235330 2242810 ) M1M2_PR NEW met1 ( 1490170 2005490 ) M1M2_PR - NEW met1 ( 1490170 2003450 ) M1M2_PR - NEW met1 ( 1537550 2003450 ) M1M2_PR ; + NEW met1 ( 1490170 2003450 ) M1M2_PR ; - cpuen ( mprj en_from_cpu ) ( cpu0 en ) + USE SIGNAL + ROUTED met1 ( 1152070 2215610 ) ( * 2216970 ) NEW met2 ( 1152070 2216970 ) ( * 2220370 ) NEW met2 ( 1151610 2220370 ) ( 1152070 * ) NEW met2 ( 1151610 2219860 0 ) ( * 2220370 ) NEW met2 ( 1377010 1991210 ) ( * 2215610 ) + NEW met1 ( 1377010 1991210 ) ( 1561470 * ) NEW met1 ( 1269600 2215610 ) ( 1377010 * ) NEW met1 ( 1269600 2215610 ) ( * 2215950 ) + NEW met2 ( 1561470 1991210 ) ( * 2000220 0 ) NEW met1 ( 1152070 2215610 ) ( 1159200 * ) NEW met1 ( 1159200 2215610 ) ( * 2217310 ) NEW met1 ( 1215090 2215950 ) ( * 2217310 ) NEW met1 ( 1159200 2217310 ) ( 1215090 * ) NEW met1 ( 1215090 2215950 ) ( 1269600 * ) - NEW met2 ( 1561470 1991210 ) ( * 2000220 0 ) - NEW met1 ( 1377010 1991210 ) ( 1561470 * ) NEW met1 ( 1152070 2216970 ) M1M2_PR NEW met1 ( 1377010 2215610 ) M1M2_PR NEW met1 ( 1377010 1991210 ) M1M2_PR @@ -8745,33 +8754,27 @@ NEW met1 ( 1150690 2249610 ) ( 1466250 * ) NEW met2 ( 1662670 2003620 ) ( 1664510 * 0 ) NEW met2 ( 1662670 2003450 ) ( * 2003620 ) - NEW met1 ( 1466250 2004810 ) ( 1518000 * ) - NEW met1 ( 1518000 2004470 ) ( * 2004810 ) - NEW met1 ( 1518000 2004470 ) ( 1559400 * ) - NEW met1 ( 1559400 2004130 ) ( * 2004470 ) - NEW met1 ( 1559400 2004130 ) ( 1573890 * ) - NEW met1 ( 1573890 2003790 ) ( * 2004130 ) - NEW met1 ( 1573890 2003790 ) ( 1600800 * ) - NEW met1 ( 1600800 2003450 ) ( * 2003790 ) - NEW met1 ( 1600800 2003450 ) ( 1620810 * ) - NEW met2 ( 1620810 2002770 ) ( * 2003450 ) - NEW met1 ( 1620810 2002770 ) ( 1624950 * ) - NEW met2 ( 1624950 2002770 ) ( * 2003450 ) - NEW met1 ( 1624950 2003450 ) ( 1662670 * ) + NEW met1 ( 1635300 2003450 ) ( 1662670 * ) + NEW met1 ( 1635300 2003450 ) ( * 2006170 ) + NEW met1 ( 1573200 2006170 ) ( 1635300 * ) + NEW met1 ( 1573200 2006170 ) ( * 2006510 ) + NEW met1 ( 1566300 2006510 ) ( 1573200 * ) + NEW met1 ( 1566300 2006510 ) ( * 2006850 ) + NEW met2 ( 1486030 2004810 ) ( * 2006850 ) + NEW met1 ( 1466250 2004810 ) ( 1486030 * ) + NEW met1 ( 1486030 2006850 ) ( 1566300 * ) NEW met1 ( 1150690 2249610 ) M1M2_PR NEW met1 ( 1466250 2249610 ) M1M2_PR NEW met1 ( 1466250 2004810 ) M1M2_PR NEW met1 ( 1662670 2003450 ) M1M2_PR - NEW met1 ( 1620810 2003450 ) M1M2_PR - NEW met1 ( 1620810 2002770 ) M1M2_PR - NEW met1 ( 1624950 2002770 ) M1M2_PR - NEW met1 ( 1624950 2003450 ) M1M2_PR ; + NEW met1 ( 1486030 2004810 ) M1M2_PR + NEW met1 ( 1486030 2006850 ) M1M2_PR ; - enkbd ( mprj en_keyboard ) ( cpu0 en_inp ) + USE SIGNAL + ROUTED met2 ( 1152530 2219860 0 ) ( * 2222750 ) NEW met2 ( 1493390 1991550 ) ( * 2222750 ) + NEW met1 ( 1493390 1991550 ) ( 1603330 * ) NEW met1 ( 1152530 2222750 ) ( 1493390 * ) NEW met2 ( 1603330 1991550 ) ( * 2000220 0 ) - NEW met1 ( 1493390 1991550 ) ( 1603330 * ) NEW met1 ( 1152530 2222750 ) M1M2_PR NEW met1 ( 1493390 2222750 ) M1M2_PR NEW met1 ( 1493390 1991550 ) M1M2_PR @@ -9087,10 +9090,10 @@ NEW met1 ( 997970 2225810 ) ( 1131370 * ) NEW met3 ( 1131370 2229380 ) ( 1320660 * ) NEW met3 ( 1607700 1994100 ) ( 1608620 * ) + NEW met3 ( 1560780 1994100 ) ( * 1994780 ) + NEW met3 ( 1560780 1994780 ) ( 1607700 * ) NEW met3 ( 1607700 1994100 ) ( * 1994780 ) - NEW met3 ( 1573200 1994780 ) ( 1607700 * ) - NEW met3 ( 1573200 1994100 ) ( * 1994780 ) - NEW met3 ( 1320660 1994100 ) ( 1573200 * ) + NEW met3 ( 1320660 1994100 ) ( 1560780 * ) NEW met1 ( 997970 2225810 ) M1M2_PR NEW met2 ( 16790 1596300 ) M2M3_PR NEW met1 ( 16790 1600550 ) M1M2_PR @@ -9198,8 +9201,8 @@ NEW met1 ( 1498450 2003790 ) ( 1499370 * ) NEW met2 ( 1498450 1991890 ) ( * 2003790 ) NEW met2 ( 1499370 2003790 ) ( * 2222070 ) - NEW met1 ( 1004410 2222070 ) ( 1499370 * ) NEW met1 ( 1498450 1991890 ) ( 1728910 * ) + NEW met1 ( 1004410 2222070 ) ( 1499370 * ) NEW met2 ( 17250 358020 ) M2M3_PR NEW met1 ( 17250 358530 ) M1M2_PR NEW met1 ( 1728910 1991890 ) M1M2_PR @@ -10035,9 +10038,9 @@ NEW met2 ( 1645190 1995460 ) ( * 2000220 0 ) NEW met2 ( 1116650 2219860 0 ) ( * 2239410 ) NEW met3 ( 1116650 2232780 ) ( 1293060 * ) - NEW met3 ( 1293060 1994780 ) ( 1524900 * ) - NEW met3 ( 1524900 1994780 ) ( * 1995460 ) - NEW met3 ( 1524900 1995460 ) ( 1645190 * ) + NEW met3 ( 1293060 1994780 ) ( 1559400 * ) + NEW met3 ( 1559400 1994780 ) ( * 1995460 ) + NEW met3 ( 1559400 1995460 ) ( 1645190 * ) NEW met1 ( 19090 2239410 ) M1M2_PR NEW met2 ( 19090 3095700 ) M2M3_PR NEW met1 ( 1116650 2239410 ) M1M2_PR @@ -10077,9 +10080,9 @@ NEW met2 ( 1121250 2256300 ) ( 1122170 * ) NEW met2 ( 1121250 2256300 ) ( * 2322030 ) NEW met2 ( 1497070 1993590 ) ( * 2242980 ) + NEW met1 ( 1497070 1993590 ) ( 1854490 * ) NEW met2 ( 1122170 2219860 0 ) ( * 2256300 ) NEW met3 ( 1122170 2242980 ) ( 1497070 * ) - NEW met1 ( 1497070 1993590 ) ( 1854490 * ) NEW met1 ( 20470 2322030 ) M1M2_PR NEW met2 ( 20470 2574140 ) M2M3_PR NEW met1 ( 1854490 1993590 ) M1M2_PR @@ -10374,10 +10377,10 @@ + ROUTED met2 ( 2415230 82800 ) ( 2420290 * ) NEW met2 ( 2420290 1700 0 ) ( * 82800 ) NEW met2 ( 2415230 82800 ) ( * 1987300 ) + NEW met3 ( 1269600 1987300 ) ( 2415230 * ) NEW met3 ( 1239930 1990020 ) ( 1269600 * ) NEW met3 ( 1269600 1987300 ) ( * 1990020 ) NEW met2 ( 1239930 1990020 ) ( * 2000220 0 ) - NEW met3 ( 1269600 1987300 ) ( 2415230 * ) NEW met2 ( 2415230 1987300 ) M2M3_PR NEW met2 ( 1239930 1990020 ) M2M3_PR ; - la_data_in[102] ( PIN la_data_in[102] ) ( mprj la_data_in[102] ) + USE SIGNAL @@ -10396,12 +10399,12 @@ NEW met2 ( 2453870 1700 ) ( * 17850 ) NEW met1 ( 2449730 17850 ) ( 2453870 * ) NEW met3 ( 1290300 1991380 ) ( * 1993420 ) + NEW met3 ( 1290300 1991380 ) ( 2449730 * ) NEW met2 ( 2449730 17850 ) ( * 1991380 ) NEW met3 ( 1242690 1995460 ) ( 1266380 * ) NEW met2 ( 1242690 1995460 ) ( * 2000220 0 ) NEW met3 ( 1266380 1993420 ) ( * 1995460 ) NEW met3 ( 1266380 1993420 ) ( 1290300 * ) - NEW met3 ( 1290300 1991380 ) ( 2449730 * ) NEW met1 ( 2453870 17850 ) M1M2_PR NEW met1 ( 2449730 17850 ) M1M2_PR NEW met2 ( 2449730 1991380 ) M2M3_PR @@ -10410,10 +10413,10 @@ + ROUTED met3 ( 1282020 1990700 ) ( * 1992740 ) NEW met2 ( 2470430 82800 ) ( 2473650 * ) NEW met2 ( 2473650 1700 0 ) ( * 82800 ) + NEW met3 ( 1282020 1990700 ) ( 2470430 * ) NEW met2 ( 2470430 82800 ) ( * 1990700 ) NEW met2 ( 1244070 1992740 ) ( * 2000220 0 ) NEW met3 ( 1244070 1992740 ) ( 1282020 * ) - NEW met3 ( 1282020 1990700 ) ( 2470430 * ) NEW met2 ( 2470430 1990700 ) M2M3_PR NEW met2 ( 1244070 1992740 ) M2M3_PR ; - la_data_in[105] ( PIN la_data_in[105] ) ( mprj la_data_in[105] ) + USE SIGNAL @@ -10449,9 +10452,9 @@ NEW met2 ( 2539430 82800 ) ( 2544490 * ) NEW met2 ( 2544490 1700 0 ) ( * 82800 ) NEW met2 ( 2539430 82800 ) ( * 1990020 ) + NEW met3 ( 1281100 1990020 ) ( 2539430 * ) NEW met2 ( 1249590 1990700 ) ( * 2000220 0 ) NEW met3 ( 1249590 1990700 ) ( 1281100 * ) - NEW met3 ( 1281100 1990020 ) ( 2539430 * ) NEW met2 ( 2539430 1990020 ) M2M3_PR NEW met2 ( 1249590 1990700 ) M2M3_PR ; - la_data_in[109] ( PIN la_data_in[109] ) ( mprj la_data_in[109] ) + USE SIGNAL @@ -10527,9 +10530,9 @@ NEW met2 ( 2629130 82800 ) ( * 1987470 ) NEW met1 ( 1281330 1987810 ) ( 1290300 * ) NEW met1 ( 1290300 1987470 ) ( * 1987810 ) + NEW met1 ( 1290300 1987470 ) ( 2629130 * ) NEW met2 ( 1256490 1991380 ) ( * 2000220 0 ) NEW met3 ( 1256490 1991380 ) ( 1281330 * ) - NEW met1 ( 1290300 1987470 ) ( 2629130 * ) NEW met1 ( 1281330 1987810 ) M1M2_PR NEW met2 ( 1281330 1991380 ) M2M3_PR NEW met1 ( 2629130 1987470 ) M1M2_PR @@ -12556,8 +12559,8 @@ + ROUTED met2 ( 1172770 1986620 ) ( * 2000220 0 ) NEW met2 ( 1552730 82800 ) ( 1557330 * ) NEW met2 ( 1557330 1700 0 ) ( * 82800 ) - NEW met3 ( 1172770 1986620 ) ( 1552730 * ) NEW met2 ( 1552730 82800 ) ( * 1986620 ) + NEW met3 ( 1172770 1986620 ) ( 1552730 * ) NEW met2 ( 1172770 1986620 ) M2M3_PR NEW met2 ( 1552730 1986620 ) M2M3_PR ; - la_data_out[53] ( PIN la_data_out[53] ) ( mprj la_data_out[53] ) + USE SIGNAL @@ -12663,12 +12666,12 @@ NEW met2 ( 1711430 82800 ) ( 1714650 * ) NEW met2 ( 1714650 1700 ) ( * 82800 ) NEW met2 ( 1711430 82800 ) ( * 1984750 ) + NEW met1 ( 1269600 1984750 ) ( 1711430 * ) NEW met1 ( 1269600 1984750 ) ( * 1985430 ) NEW met1 ( 1221300 1985430 ) ( 1269600 * ) NEW met1 ( 1185190 1985770 ) ( 1221300 * ) NEW met1 ( 1221300 1985430 ) ( * 1985770 ) NEW met2 ( 1185190 1985770 ) ( * 2000220 0 ) - NEW met1 ( 1269600 1984750 ) ( 1711430 * ) NEW met1 ( 1711430 1984750 ) M1M2_PR NEW met1 ( 1185190 1985770 ) M1M2_PR ; - la_data_out[62] ( PIN la_data_out[62] ) ( mprj la_data_out[62] ) + USE SIGNAL @@ -12866,9 +12869,9 @@ NEW met2 ( 2018250 1700 0 ) ( * 82800 ) NEW met2 ( 2015030 82800 ) ( * 1984410 ) NEW met1 ( 1245450 1984410 ) ( * 1985090 ) + NEW met1 ( 1245450 1984410 ) ( 2015030 * ) NEW met2 ( 1208650 1985090 ) ( * 2000220 0 ) NEW met1 ( 1208650 1985090 ) ( 1245450 * ) - NEW met1 ( 1245450 1984410 ) ( 2015030 * ) NEW met1 ( 2015030 1984410 ) M1M2_PR NEW met1 ( 1208650 1985090 ) M1M2_PR ; - la_data_out[79] ( PIN la_data_out[79] ) ( mprj la_data_out[79] ) + USE SIGNAL @@ -12970,9 +12973,9 @@ NEW met2 ( 1219690 1994780 ) ( * 2000220 0 ) NEW met2 ( 2159930 5780 ) ( * 1983900 ) NEW met2 ( 1221990 1983900 ) ( * 1993420 ) + NEW met3 ( 1221990 1983900 ) ( 2159930 * ) NEW met3 ( 1220380 1993420 ) ( * 1994780 ) NEW met3 ( 1220380 1993420 ) ( 1221990 * ) - NEW met3 ( 1221990 1983900 ) ( 2159930 * ) NEW met2 ( 1219690 1994780 ) M2M3_PR NEW met2 ( 2159930 1983900 ) M2M3_PR NEW met2 ( 1221990 1993420 ) M2M3_PR @@ -13480,8 +13483,8 @@ - la_oenb[125] ( PIN la_oenb[125] ) ( mprj la_oenb[125] ) + USE SIGNAL + ROUTED met2 ( 1273970 1969790 ) ( * 2000220 0 ) NEW met2 ( 2856830 1700 ) ( 2857750 * 0 ) - NEW met2 ( 2856830 1700 ) ( * 1969790 ) NEW met1 ( 1273970 1969790 ) ( 2856830 * ) + NEW met2 ( 2856830 1700 ) ( * 1969790 ) NEW met1 ( 1273970 1969790 ) M1M2_PR NEW met1 ( 2856830 1969790 ) M1M2_PR ; - la_oenb[126] ( PIN la_oenb[126] ) ( mprj la_oenb[126] ) + USE SIGNAL @@ -13985,8 +13988,8 @@ NEW met2 ( 1170470 1988150 ) ( * 2000220 0 ) NEW met2 ( 1525130 82800 ) ( 1527890 * ) NEW met2 ( 1527890 1700 0 ) ( * 82800 ) - NEW met1 ( 1172310 1972510 ) ( 1525130 * ) NEW met2 ( 1525130 82800 ) ( * 1972510 ) + NEW met1 ( 1172310 1972510 ) ( 1525130 * ) NEW met1 ( 1172310 1972510 ) M1M2_PR NEW met1 ( 1172310 1988150 ) M1M2_PR NEW met1 ( 1170470 1988150 ) M1M2_PR @@ -14249,9 +14252,9 @@ NEW met2 ( 1864610 1700 0 ) ( * 82800 ) NEW met2 ( 1863230 82800 ) ( * 1970470 ) NEW met2 ( 1234870 1970470 ) ( * 1988150 ) + NEW met1 ( 1234870 1970470 ) ( 1863230 * ) NEW met2 ( 1196690 1988150 ) ( * 2000220 0 ) NEW met1 ( 1196690 1988150 ) ( 1234870 * ) - NEW met1 ( 1234870 1970470 ) ( 1863230 * ) NEW met1 ( 1863230 1970470 ) M1M2_PR NEW met1 ( 1234870 1988150 ) M1M2_PR NEW met1 ( 1234870 1970470 ) M1M2_PR @@ -14296,6 +14299,7 @@ + ROUTED met2 ( 1917970 1700 0 ) ( * 16830 ) NEW met1 ( 1911530 16830 ) ( 1917970 * ) NEW met2 ( 1911530 16830 ) ( * 1970130 ) + NEW met1 ( 1269600 1970130 ) ( 1911530 * ) NEW met1 ( 1269600 1969450 ) ( * 1970130 ) NEW met1 ( 1200830 1971490 ) ( 1206810 * ) NEW met1 ( 1206810 1970130 ) ( * 1971490 ) @@ -14303,7 +14307,6 @@ NEW met1 ( 1222910 1969450 ) ( * 1970130 ) NEW met1 ( 1206810 1970130 ) ( 1222910 * ) NEW met1 ( 1222910 1969450 ) ( 1269600 * ) - NEW met1 ( 1269600 1970130 ) ( 1911530 * ) NEW met1 ( 1917970 16830 ) M1M2_PR NEW met1 ( 1911530 16830 ) M1M2_PR NEW met1 ( 1911530 1970130 ) M1M2_PR
diff --git a/gds/user_project_wrapper.gds b/gds/user_project_wrapper.gds index 6d7e52d..146a39a 100644 --- a/gds/user_project_wrapper.gds +++ b/gds/user_project_wrapper.gds Binary files differ
diff --git a/mag/user_project_wrapper.mag b/mag/user_project_wrapper.mag index 2775b02..da3944c 100644 --- a/mag/user_project_wrapper.mag +++ b/mag/user_project_wrapper.mag
@@ -1,7 +1,7 @@ magic tech sky130B magscale 1 2 -timestamp 1659003055 +timestamp 1659466138 << metal1 >> rect 71774 702992 71780 703044 rect 71832 703032 71838 703044 @@ -3877,16 +3877,22 @@ rect 265860 404268 265866 404280 rect 298002 404268 298008 404280 rect 298060 404268 298066 404320 -rect 293862 401344 293868 401396 -rect 293920 401384 293926 401396 -rect 385034 401384 385040 401396 -rect 293920 401356 385040 401384 -rect 293920 401344 293926 401356 -rect 385034 401344 385040 401356 -rect 385092 401344 385098 401396 -rect 303586 401288 317000 401316 -rect 303586 401248 303614 401288 -rect 300826 401220 303614 401248 +rect 293862 401548 293868 401600 +rect 293920 401588 293926 401600 +rect 385034 401588 385040 401600 +rect 293920 401560 385040 401588 +rect 293920 401548 293926 401560 +rect 385034 401548 385040 401560 +rect 385092 401548 385098 401600 +rect 297174 401344 297180 401396 +rect 297232 401384 297238 401396 +rect 297232 401356 313274 401384 +rect 297232 401344 297238 401356 +rect 313246 401316 313274 401356 +rect 313246 401288 314654 401316 +rect 314626 401248 314654 401288 +rect 309244 401220 314240 401248 +rect 314626 401220 327074 401248 rect 293402 401072 293408 401124 rect 293460 401112 293466 401124 rect 298002 401112 298008 401124 @@ -3894,22 +3900,33 @@ rect 293460 401072 293466 401084 rect 298002 401072 298008 401084 rect 298060 401072 298066 401124 +rect 298756 401084 303614 401112 rect 292942 401004 292948 401056 rect 293000 401044 293006 401056 -rect 300826 401044 300854 401220 -rect 293000 401016 300854 401044 +rect 298756 401044 298784 401084 +rect 293000 401016 298784 401044 +rect 303586 401044 303614 401084 +rect 303586 401016 308352 401044 rect 293000 401004 293006 401016 rect 293218 400936 293224 400988 rect 293276 400976 293282 400988 -rect 293276 400948 303614 400976 +rect 297174 400976 297180 400988 +rect 293276 400948 297180 400976 rect 293276 400936 293282 400948 +rect 297174 400936 297180 400948 +rect 297232 400936 297238 400988 +rect 308324 400976 308352 401016 +rect 309244 400976 309272 401220 +rect 314212 401112 314240 401220 +rect 314212 401084 317414 401112 +rect 308324 400948 309272 400976 rect 293310 400868 293316 400920 rect 293368 400908 293374 400920 -rect 303586 400908 303614 400948 -rect 316972 400908 317000 401288 -rect 293368 400880 302234 400908 -rect 303586 400880 311894 400908 -rect 316972 400880 320174 400908 +rect 317386 400908 317414 401084 +rect 318766 400948 321784 400976 +rect 318766 400908 318794 400948 +rect 293368 400880 304994 400908 +rect 317386 400880 318794 400908 rect 293368 400868 293374 400880 rect 299658 400732 299664 400784 rect 299716 400772 299722 400784 @@ -3918,35 +3935,26 @@ rect 299716 400732 299722 400744 rect 299842 400732 299848 400744 rect 299900 400732 299906 400784 -rect 302206 400772 302234 400880 -rect 311866 400840 311894 400880 -rect 320146 400840 320174 400880 -rect 311866 400812 314792 400840 -rect 320146 400812 324360 400840 -rect 314764 400772 314792 400812 -rect 302206 400744 314654 400772 -rect 314764 400744 320174 400772 +rect 304966 400772 304994 400880 +rect 314626 400812 318794 400840 +rect 314626 400772 314654 400812 +rect 304966 400744 314654 400772 rect 298002 400664 298008 400716 rect 298060 400704 298066 400716 -rect 307478 400704 307484 400716 -rect 298060 400676 307484 400704 +rect 307570 400704 307576 400716 +rect 298060 400676 307576 400704 rect 298060 400664 298066 400676 -rect 307478 400664 307484 400676 -rect 307536 400664 307542 400716 -rect 314626 400636 314654 400744 -rect 320146 400704 320174 400744 -rect 324332 400716 324360 400812 -rect 324130 400704 324136 400716 -rect 320146 400676 324136 400704 -rect 324130 400664 324136 400676 -rect 324188 400664 324194 400716 -rect 324314 400664 324320 400716 -rect 324372 400664 324378 400716 -rect 324958 400664 324964 400716 -rect 325016 400704 325022 400716 +rect 307570 400664 307576 400676 +rect 307628 400664 307634 400716 +rect 318766 400636 318794 400812 +rect 321756 400704 321784 400948 +rect 324222 400704 324228 400716 +rect 321756 400676 324228 400704 +rect 324222 400664 324228 400676 +rect 324280 400664 324286 400716 +rect 327046 400704 327074 401220 rect 332502 400704 332508 400716 -rect 325016 400676 332508 400704 -rect 325016 400664 325022 400676 +rect 327046 400676 332508 400704 rect 332502 400664 332508 400676 rect 332560 400664 332566 400716 rect 340966 400704 340972 400716 @@ -3954,14 +3962,7 @@ rect 336706 400636 336734 400676 rect 340966 400664 340972 400676 rect 341024 400664 341030 400716 -rect 314626 400608 336734 400636 -rect 324130 400528 324136 400580 -rect 324188 400568 324194 400580 -rect 324958 400568 324964 400580 -rect 324188 400540 324964 400568 -rect 324188 400528 324194 400540 -rect 324958 400528 324964 400540 -rect 325016 400528 325022 400580 +rect 318766 400608 336734 400636 rect 298554 400120 298560 400172 rect 298612 400160 298618 400172 rect 579982 400160 579988 400172 @@ -10139,24 +10140,22 @@ rect 4988 410932 5040 410984 rect 265808 404268 265860 404320 rect 298008 404268 298060 404320 -rect 293868 401344 293920 401396 -rect 385040 401344 385092 401396 +rect 293868 401548 293920 401600 +rect 385040 401548 385092 401600 +rect 297180 401344 297232 401396 rect 293408 401072 293460 401124 rect 298008 401072 298060 401124 rect 292948 401004 293000 401056 rect 293224 400936 293276 400988 +rect 297180 400936 297232 400988 rect 293316 400868 293368 400920 rect 299664 400732 299716 400784 rect 299848 400732 299900 400784 rect 298008 400664 298060 400716 -rect 307484 400664 307536 400716 -rect 324136 400664 324188 400716 -rect 324320 400664 324372 400716 -rect 324964 400664 325016 400716 +rect 307576 400664 307628 400716 +rect 324228 400664 324280 400716 rect 332508 400664 332560 400716 rect 340972 400664 341024 400716 -rect 324136 400528 324188 400580 -rect 324964 400528 325016 400580 rect 298560 400120 298612 400172 rect 579988 400120 580040 400172 rect 252652 399780 252704 399832 @@ -19123,13 +19122,13 @@ rect 293684 398676 293736 398682 rect 293684 398618 293736 398624 rect 293788 398614 293816 442575 -rect 293880 401402 293908 445130 +rect 293880 401606 293908 445130 rect 295892 444508 295944 444514 rect 295892 444450 295944 444456 rect 295800 444032 295852 444038 rect 295800 443974 295852 443980 -rect 293868 401396 293920 401402 -rect 293868 401338 293920 401344 +rect 293868 401600 293920 401606 +rect 293868 401542 293920 401548 rect 293776 398608 293828 398614 rect 293776 398550 293828 398556 rect 295812 398546 295840 443974 @@ -20176,8 +20175,13 @@ rect 298020 404161 298048 404262 rect 298006 404152 298062 404161 rect 298006 404087 298062 404096 +rect 297180 401396 297232 401402 +rect 297180 401338 297232 401344 +rect 297192 400994 297220 401338 rect 298008 401124 298060 401130 rect 298008 401066 298060 401072 +rect 297180 400988 297232 400994 +rect 297180 400930 297232 400936 rect 298020 400722 298048 401066 rect 298008 400716 298060 400722 rect 298008 400658 298060 400664 @@ -20325,29 +20329,25 @@ rect 385038 416327 385094 416336 rect 385038 407552 385094 407561 rect 385038 407487 385094 407496 -rect 385052 401402 385080 407487 +rect 385052 401606 385080 407487 rect 579986 404968 580042 404977 rect 579986 404903 580042 404912 -rect 385040 401396 385092 401402 -rect 385040 401338 385092 401344 +rect 385040 401600 385092 401606 +rect 385040 401542 385092 401548 rect 299848 400784 299900 400790 rect 382738 400752 382794 400761 rect 299848 400726 299900 400732 -rect 307496 400722 307786 400738 -rect 324332 400722 324530 400738 +rect 307588 400722 307786 400738 +rect 324240 400722 324530 400738 rect 332520 400722 332902 400738 rect 340984 400722 341274 400738 -rect 307484 400716 307786 400722 -rect 307536 400710 307786 400716 -rect 324136 400716 324188 400722 -rect 307484 400658 307536 400664 -rect 324136 400658 324188 400664 -rect 324320 400716 324530 400722 -rect 324372 400710 324530 400716 -rect 324964 400716 325016 400722 -rect 324320 400658 324372 400664 -rect 324964 400658 325016 400664 +rect 307576 400716 307786 400722 +rect 307628 400710 307786 400716 +rect 324228 400716 324530 400722 +rect 307576 400658 307628 400664 +rect 324280 400710 324530 400716 rect 332508 400716 332902 400722 +rect 324228 400658 324280 400664 rect 332560 400710 332902 400716 rect 340972 400716 341274 400722 rect 332508 400658 332560 400664 @@ -20355,12 +20355,6 @@ rect 382794 400710 383134 400738 rect 382738 400687 382794 400696 rect 340972 400658 341024 400664 -rect 324148 400586 324176 400658 -rect 324976 400586 325004 400658 -rect 324136 400580 324188 400586 -rect 324136 400522 324188 400528 -rect 324964 400580 325016 400586 -rect 324964 400522 325016 400528 rect 299768 400438 300058 400466 rect 390558 400344 390614 400353 rect 390558 400279 390614 400288 @@ -25904,21 +25898,21 @@ rect 252870 398652 252876 398654 rect 252940 398652 252946 398716 rect 253246 398714 253306 399062 -rect 304950 399120 329071 399122 -rect 304950 399064 329010 399120 +rect 311850 399120 329071 399122 +rect 311850 399064 329010 399120 rect 329066 399064 329071 399120 -rect 304950 399062 329071 399064 +rect 311850 399062 329071 399064 rect 258574 398924 258580 398988 rect 258644 398986 258650 398988 -rect 304950 398986 305010 399062 +rect 311850 398986 311910 399062 rect 329005 399059 329071 399062 -rect 258644 398926 305010 398986 -rect 314610 398926 321570 398986 +rect 258644 398926 311910 398986 +rect 312126 398926 321570 398986 rect 258644 398924 258650 398926 rect 264094 398788 264100 398852 rect 264164 398850 264170 398852 -rect 314610 398850 314670 398926 -rect 264164 398790 314670 398850 +rect 312126 398850 312186 398926 +rect 264164 398790 312186 398850 rect 321510 398850 321570 398926 rect 321694 398926 331230 398986 rect 321694 398850 321754 398926
diff --git a/maglef/user_project_wrapper.mag b/maglef/user_project_wrapper.mag index 67d3f36..2acd4c5 100644 --- a/maglef/user_project_wrapper.mag +++ b/maglef/user_project_wrapper.mag
@@ -1,7 +1,7 @@ magic tech sky130B magscale 1 2 -timestamp 1659003342 +timestamp 1659466453 << obsli1 >> rect 201104 402159 382892 453329 << obsm1 >> @@ -3849,8 +3849,8 @@ string FIXED_BBOX 0 0 584000 704000 string LEFclass BLOCK string LEFview TRUE -string GDS_END 17903460 -string GDS_FILE /home/aloke/projects/uP16_efabless/openlane/user_project_wrapper/runs/22_07_28_15_18/results/signoff/user_project_wrapper.magic.gds -string GDS_START 15689722 +string GDS_END 18044492 +string GDS_FILE /home/aloke/projects/uP16_efabless/openlane/user_project_wrapper/runs/22_08_02_23_52/results/signoff/user_project_wrapper.magic.gds +string GDS_START 15830882 << end >>
diff --git a/openlane/cpu/config.tcl b/openlane/cpu/config.tcl index 4c4f528..c8d7763 100755 --- a/openlane/cpu/config.tcl +++ b/openlane/cpu/config.tcl
@@ -26,7 +26,7 @@ set ::env(DESIGN_IS_CORE) 0 -set ::env(CLOCK_PORT) "clk" +set ::env(CLOCK_PORT) "clkin" #set ::env(CLOCK_NET) "counter.clk" set ::env(CLOCK_PERIOD) "10"
diff --git a/openlane/user_project_wrapper/config.tcl b/openlane/user_project_wrapper/config.tcl index 7756d86..6a3df17 100755 --- a/openlane/user_project_wrapper/config.tcl +++ b/openlane/user_project_wrapper/config.tcl
@@ -39,7 +39,7 @@ ## Clock configurations set ::env(CLOCK_PORT) "user_clock2" -set ::env(CLOCK_NET) "mprj.clk" +set ::env(CLOCK_NET) "mprj.soc_clk" set ::env(CLOCK_PERIOD) "10"
diff --git a/spi/lvs/user_project_wrapper.spice b/spi/lvs/user_project_wrapper.spice index eb50e41..ab99aa6 100644 --- a/spi/lvs/user_project_wrapper.spice +++ b/spi/lvs/user_project_wrapper.spice
@@ -11,7 +11,7 @@ * Black-box entry subcircuit for cpu abstract view .subckt cpu addr[0] addr[10] addr[11] addr[1] addr[2] addr[3] addr[4] addr[5] addr[6] -+ addr[7] addr[8] addr[9] clk datain[0] datain[10] datain[11] datain[12] datain[13] ++ addr[7] addr[8] addr[9] clkin datain[0] datain[10] datain[11] datain[12] datain[13] + datain[14] datain[15] datain[1] datain[2] datain[3] datain[4] datain[5] datain[6] + datain[7] datain[8] datain[9] dataout[0] dataout[10] dataout[11] dataout[12] dataout[13] + dataout[14] dataout[15] dataout[1] dataout[2] dataout[3] dataout[4] dataout[5] dataout[6] @@ -253,7 +253,7 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memLword1/addr1[0] + memLword1/addr1[1] memLword1/addr1[2] memLword1/addr1[3] memLword1/addr1[4] memLword1/addr1[5] + memLword1/addr1[6] memLword1/addr1[7] memLword1/addr1[8] memLword1/addr1[9] memLword1/csb0 -+ memLword1/csb1 mprj/rw_to_mem cpu0/clk memLword1/clk1 memLword1/wmask0[0] memLword1/dout0[0] ++ memLword1/csb1 mprj/rw_to_mem cpu0/clkin memLword1/clk1 memLword1/wmask0[0] memLword1/dout0[0] + memLword1/dout0[1] memLword1/dout0[2] memLword1/dout0[3] memLword1/dout0[4] memLword1/dout0[5] + memLword1/dout0[6] memLword1/dout0[7] memLword1/dout1[0] memLword1/dout1[1] memLword1/dout1[2] + memLword1/dout1[3] memLword1/dout1[4] memLword1/dout1[5] memLword1/dout1[6] memLword1/dout1[7] @@ -264,7 +264,7 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memLword0/addr1[0] + memLword0/addr1[1] memLword0/addr1[2] memLword0/addr1[3] memLword0/addr1[4] memLword0/addr1[5] + memLword0/addr1[6] memLword0/addr1[7] memLword0/addr1[8] memLword0/addr1[9] memLword0/csb0 -+ memLword0/csb1 mprj/rw_to_mem cpu0/clk memLword0/clk1 memLword0/wmask0[0] memLword0/dout0[0] ++ memLword0/csb1 mprj/rw_to_mem cpu0/clkin memLword0/clk1 memLword0/wmask0[0] memLword0/dout0[0] + memLword0/dout0[1] memLword0/dout0[2] memLword0/dout0[3] memLword0/dout0[4] memLword0/dout0[5] + memLword0/dout0[6] memLword0/dout0[7] memLword0/dout1[0] memLword0/dout1[1] memLword0/dout1[2] + memLword0/dout1[3] memLword0/dout1[4] memLword0/dout1[5] memLword0/dout1[6] memLword0/dout1[7] @@ -275,7 +275,7 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memLword2/addr1[0] + memLword2/addr1[1] memLword2/addr1[2] memLword2/addr1[3] memLword2/addr1[4] memLword2/addr1[5] + memLword2/addr1[6] memLword2/addr1[7] memLword2/addr1[8] memLword2/addr1[9] memLword2/csb0 -+ memLword2/csb1 mprj/rw_to_mem cpu0/clk memLword2/clk1 memLword2/wmask0[0] memLword2/dout0[0] ++ memLword2/csb1 mprj/rw_to_mem cpu0/clkin memLword2/clk1 memLword2/wmask0[0] memLword2/dout0[0] + memLword2/dout0[1] memLword2/dout0[2] memLword2/dout0[3] memLword2/dout0[4] memLword2/dout0[5] + memLword2/dout0[6] memLword2/dout0[7] memLword2/dout1[0] memLword2/dout1[1] memLword2/dout1[2] + memLword2/dout1[3] memLword2/dout1[4] memLword2/dout1[5] memLword2/dout1[6] memLword2/dout1[7] @@ -286,7 +286,7 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memLword3/addr1[0] + memLword3/addr1[1] memLword3/addr1[2] memLword3/addr1[3] memLword3/addr1[4] memLword3/addr1[5] + memLword3/addr1[6] memLword3/addr1[7] memLword3/addr1[8] memLword3/addr1[9] memLword3/csb0 -+ memLword3/csb1 mprj/rw_to_mem cpu0/clk memLword3/clk1 memLword3/wmask0[0] memLword3/dout0[0] ++ memLword3/csb1 mprj/rw_to_mem cpu0/clkin memLword3/clk1 memLword3/wmask0[0] memLword3/dout0[0] + memLword3/dout0[1] memLword3/dout0[2] memLword3/dout0[3] memLword3/dout0[4] memLword3/dout0[5] + memLword3/dout0[6] memLword3/dout0[7] memLword3/dout1[0] memLword3/dout1[1] memLword3/dout1[2] + memLword3/dout1[3] memLword3/dout1[4] memLword3/dout1[5] memLword3/dout1[6] memLword3/dout1[7] @@ -297,7 +297,7 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memHword0/addr1[0] + memHword0/addr1[1] memHword0/addr1[2] memHword0/addr1[3] memHword0/addr1[4] memHword0/addr1[5] + memHword0/addr1[6] memHword0/addr1[7] memHword0/addr1[8] memHword0/addr1[9] memLword0/csb0 -+ memHword0/csb1 mprj/rw_to_mem cpu0/clk memHword0/clk1 memHword0/wmask0[0] memHword0/dout0[0] ++ memHword0/csb1 mprj/rw_to_mem cpu0/clkin memHword0/clk1 memHword0/wmask0[0] memHword0/dout0[0] + memHword0/dout0[1] memHword0/dout0[2] memHword0/dout0[3] memHword0/dout0[4] memHword0/dout0[5] + memHword0/dout0[6] memHword0/dout0[7] memHword0/dout1[0] memHword0/dout1[1] memHword0/dout1[2] + memHword0/dout1[3] memHword0/dout1[4] memHword0/dout1[5] memHword0/dout1[6] memHword0/dout1[7] @@ -308,13 +308,13 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memHword1/addr1[0] + memHword1/addr1[1] memHword1/addr1[2] memHword1/addr1[3] memHword1/addr1[4] memHword1/addr1[5] + memHword1/addr1[6] memHword1/addr1[7] memHword1/addr1[8] memHword1/addr1[9] memLword1/csb0 -+ memHword1/csb1 mprj/rw_to_mem cpu0/clk memHword1/clk1 memHword1/wmask0[0] memHword1/dout0[0] ++ memHword1/csb1 mprj/rw_to_mem cpu0/clkin memHword1/clk1 memHword1/wmask0[0] memHword1/dout0[0] + memHword1/dout0[1] memHword1/dout0[2] memHword1/dout0[3] memHword1/dout0[4] memHword1/dout0[5] + memHword1/dout0[6] memHword1/dout0[7] memHword1/dout1[0] memHword1/dout1[1] memHword1/dout1[2] + memHword1/dout1[3] memHword1/dout1[4] memHword1/dout1[5] memHword1/dout1[6] memHword1/dout1[7] + vccd1 vssd1 sky130_sram_1kbyte_1rw1r_8x1024_8 Xcpu0 cpu0/addr[0] cpu0/addr[10] cpu0/addr[11] cpu0/addr[1] cpu0/addr[2] cpu0/addr[3] -+ cpu0/addr[4] cpu0/addr[5] cpu0/addr[6] cpu0/addr[7] cpu0/addr[8] cpu0/addr[9] cpu0/clk ++ cpu0/addr[4] cpu0/addr[5] cpu0/addr[6] cpu0/addr[7] cpu0/addr[8] cpu0/addr[9] cpu0/clkin + cpu0/datain[0] cpu0/datain[10] cpu0/datain[11] cpu0/datain[12] cpu0/datain[13] cpu0/datain[14] + cpu0/datain[15] cpu0/datain[1] cpu0/datain[2] cpu0/datain[3] cpu0/datain[4] cpu0/datain[5] + cpu0/datain[6] cpu0/datain[7] cpu0/datain[8] cpu0/datain[9] cpu0/dataout[0] cpu0/dataout[10] @@ -330,7 +330,7 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memHword2/addr1[0] + memHword2/addr1[1] memHword2/addr1[2] memHword2/addr1[3] memHword2/addr1[4] memHword2/addr1[5] + memHword2/addr1[6] memHword2/addr1[7] memHword2/addr1[8] memHword2/addr1[9] memLword2/csb0 -+ memHword2/csb1 mprj/rw_to_mem cpu0/clk memHword2/clk1 memHword2/wmask0[0] memHword2/dout0[0] ++ memHword2/csb1 mprj/rw_to_mem cpu0/clkin memHword2/clk1 memHword2/wmask0[0] memHword2/dout0[0] + memHword2/dout0[1] memHword2/dout0[2] memHword2/dout0[3] memHword2/dout0[4] memHword2/dout0[5] + memHword2/dout0[6] memHword2/dout0[7] memHword2/dout1[0] memHword2/dout1[1] memHword2/dout1[2] + memHword2/dout1[3] memHword2/dout1[4] memHword2/dout1[5] memHword2/dout1[6] memHword2/dout1[7] @@ -341,7 +341,7 @@ + memLword3/addr0[6] memLword3/addr0[7] memLword3/addr0[8] memLword3/addr0[9] memHword3/addr1[0] + memHword3/addr1[1] memHword3/addr1[2] memHword3/addr1[3] memHword3/addr1[4] memHword3/addr1[5] + memHword3/addr1[6] memHword3/addr1[7] memHword3/addr1[8] memHword3/addr1[9] memLword3/csb0 -+ memHword3/csb1 mprj/rw_to_mem cpu0/clk memHword3/clk1 memHword3/wmask0[0] memHword3/dout0[0] ++ memHword3/csb1 mprj/rw_to_mem cpu0/clkin memHword3/clk1 memHword3/wmask0[0] memHword3/dout0[0] + memHword3/dout0[1] memHword3/dout0[2] memHword3/dout0[3] memHword3/dout0[4] memHword3/dout0[5] + memHword3/dout0[6] memHword3/dout0[7] memHword3/dout1[0] memHword3/dout1[1] memHword3/dout1[2] + memHword3/dout1[3] memHword3/dout1[4] memHword3/dout1[5] memHword3/dout1[6] memHword3/dout1[7] @@ -451,7 +451,7 @@ + la_oenb[81] la_oenb[82] la_oenb[83] la_oenb[84] la_oenb[85] la_oenb[86] la_oenb[87] + la_oenb[88] la_oenb[89] la_oenb[8] la_oenb[90] la_oenb[91] la_oenb[92] la_oenb[93] + la_oenb[94] la_oenb[95] la_oenb[96] la_oenb[97] la_oenb[98] la_oenb[99] la_oenb[9] -+ cpu0/rdwr mprj/rw_to_mem cpu0/clk cpu0/rst user_clock2 vccd1 vssd1 wb_clk_i wb_rst_i ++ cpu0/rdwr mprj/rw_to_mem cpu0/clkin cpu0/rst user_clock2 vccd1 vssd1 wb_clk_i wb_rst_i + wbs_ack_o wbs_adr_i[0] wbs_adr_i[10] wbs_adr_i[11] wbs_adr_i[12] wbs_adr_i[13] wbs_adr_i[14] + wbs_adr_i[15] wbs_adr_i[16] wbs_adr_i[17] wbs_adr_i[18] wbs_adr_i[19] wbs_adr_i[1] + wbs_adr_i[20] wbs_adr_i[21] wbs_adr_i[22] wbs_adr_i[23] wbs_adr_i[24] wbs_adr_i[25]
diff --git a/verilog/gl/user_project_wrapper.v b/verilog/gl/user_project_wrapper.v index 9a25bdc..c8a9d88 100644 --- a/verilog/gl/user_project_wrapper.v +++ b/verilog/gl/user_project_wrapper.v
@@ -199,7 +199,7 @@ wire memrwb; wire rst; - cpu cpu0 (.clk(clk), + cpu cpu0 (.clkin(clk), .en(cpuen), .en_inp(enkbd), .en_out(endisp),
diff --git a/verilog/rtl/cpu.v b/verilog/rtl/cpu.v index 86c2981..6c20cb0 100644 --- a/verilog/rtl/cpu.v +++ b/verilog/rtl/cpu.v
@@ -3,7 +3,7 @@ vccd1, vssd1, `endif - clk, + clkin, addr, datain, dataout, @@ -24,7 +24,7 @@ input [15:0] datain; output [15:0] dataout; output [11:0] addr; - input clk, en_inp, en_out, rst; + input clkin, en_inp, en_out, rst; output en, rdwr; input [7:0] keyboard; output [7:0] display; @@ -35,12 +35,10 @@ reg [10:0] t; wire [7:0] d; wire rstEn, rstT; - wire rdwr, en; + wire rdwr, en, clk; -`ifdef DEBUG - debug debug1(.of(e), .lcd(display), .dcod(d), .fsm(t), .ar(addr), .prgctr(pc), .datr(dr), .accu(ac), .instr(ir)); -`endif + assign clk = clkin || (!ir[15] && d[7] && t[3] && ir[0]); assign dataout = (t[4] && d[3]) ? ac : 16'hzzzz; assign dataout = (t[4] && d[5]) ? {4'h0, pc} : 16'hzzzz; assign dataout = (t[6] && d[6]) ? dr : 16'hzzzz;
diff --git a/verilog/rtl/user_project_wrapper.v b/verilog/rtl/user_project_wrapper.v index 7c38e6f..8097cbe 100644 --- a/verilog/rtl/user_project_wrapper.v +++ b/verilog/rtl/user_project_wrapper.v
@@ -150,7 +150,7 @@ .vssd1(vssd1), // User area 1 digital ground `endif - .clk(clk), + .clkin(clk), .addr(adr_cpu), .datain(cpdatin), .dataout(cpdatout),