25:
337:
the instruction. Once an instruction is completed by an execution unit, its output data is sent (with its tag) to the CAM. Any instructions that are dependent upon this particular datum (identified by its tag value) are then marked as ready for execution. In this way, subsequent instructions are
304:
for data dependencies between instructions in order to better organize the instruction sequences in the binary output files. The instructions are organized sequentially but the dependency information itself is not recorded in the binaries. Binaries compiled for a dataflow machine contain this
257:
follows the sequential order of the von
Neumann architecture, however within the window, instructions are allowed to be completed in data dependency order. This is accomplished in CPUs that dynamically tag the data dependencies of the code in the execution window. The logical complexity of
241:
Instructions and their data dependencies proved to be too fine-grained to be effectively distributed in a large network. That is, the time for the instructions and tagged results to travel through a large connection network was longer than the time to do many computations.
280:
Designs that use conventional memory addresses as data dependency tags are called static dataflow machines. These machines did not allow multiple instances of the same routines to be executed simultaneously because the simple tags could not differentiate between them.
182:
Synchronous dataflow architectures tune to match the workload presented by real-time data path applications such as wire speed packet forwarding. Dataflow architectures that are deterministic in nature enable programmers to manage complex tasks such as processor
321:
Programs are loaded into the CAM of a dynamic dataflow computer. When all of the tagged operands of an instruction become available (that is, output from previous instructions and/or user input), the instruction is marked as ready for execution by an
308:
A dataflow compiler records these dependencies by creating unique tags for each dependency instead of using variable names. By giving each dependency a unique tag, it allows the non-dependent code segments in the binary to be executed
144:, in concept: the executability and execution of instructions is solely determined based on the availability of input arguments to the instructions, so that the order of instruction execution may be hard to predict.
267:
to a small number of execution units (2-6) and limits the execution window sizes to the range of 32 to 200 instructions, much smaller than envisioned for full dataflow machines.
147:
Although no commercially successful general-purpose computer hardware has used a dataflow architecture, it has been successfully implemented in specialized hardware such as in
220:
pioneered the field of static dataflow architectures while the
Manchester Dataflow Machine and MIT Tagged Token architecture were major projects in dynamic dataflow.
2613:
1642:
563:
545:
614:
365:, data tokens are not permanently stored in memory, rather they are transient messages that only exist when in transit to the instruction storage.
2557:
1753:
936:
361:
Dataflow networks deliver the instruction tokens to the execution units and return the data tokens to the CAM. In contrast to the conventional
249:(OOE) has become the dominant computing paradigm since the 1990s. It is a form of restricted dataflow. This paradigm introduced the idea of an
1455:
733:
1612:
1178:
995:
1966:
958:
89:
1607:
584:
61:
2712:
1679:
1961:
1432:
42:
217:
68:
2376:
1500:
763:
607:
2550:
2386:
1527:
654:
358:. The packetization of instructions and results allows for parallel execution of ready instructions on a large scale.
350:
An instruction, along with its required data operands, is transmitted to an execution unit as a packet, also called an
75:
2717:
1694:
1522:
1495:
874:
108:
313:
and in parallel. Compiler detects the loops, break statements and various programming control syntax for data flow.
2752:
2635:
2509:
2072:
965:
931:
926:
845:
810:
395:
57:
2484:
2381:
1782:
1689:
1490:
711:
600:
384:
2873:
2863:
2543:
1510:
1229:
664:
46:
571:
2868:
2707:
1684:
1532:
1505:
1366:
980:
941:
798:
342:. This order may differ from the sequential order envisioned by the human programmer, the programmed order.
2121:
1883:
1359:
1320:
975:
970:
904:
716:
1748:
1445:
1143:
840:
2618:
2398:
2045:
1462:
953:
921:
691:
679:
659:
285:
234:
184:
2813:
2645:
2489:
2452:
2442:
830:
148:
2782:
2630:
2608:
2582:
2504:
1911:
1847:
1824:
1674:
1636:
1472:
1422:
1417:
894:
788:
696:
362:
133:
82:
480:
Maxfield, Max (24 December 2020). "Say Hello to Deep Vision's
Polymorphic Dataflow Architecture".
2767:
2457:
2240:
2134:
2098:
2015:
1999:
1841:
1630:
1589:
1577:
1440:
1354:
1275:
1040:
701:
644:
164:
35:
2662:
2657:
2263:
2235:
2145:
2110:
1859:
1853:
1835:
1569:
1563:
1467:
1371:
1262:
1201:
1063:
706:
288:(CAM) are called dynamic dataflow machines. They use tags in memory to facilitate parallelism.
259:
246:
168:
2803:
2739:
2592:
2574:
2566:
2437:
2346:
2092:
1804:
1622:
1381:
1349:
1307:
1219:
1020:
835:
825:
815:
775:
758:
623:
209:
129:
2772:
2695:
2679:
2467:
2403:
1989:
1711:
1601:
1548:
1080:
793:
649:
631:
197:
8:
2820:
2514:
2499:
2319:
2170:
2152:
2116:
2104:
1758:
1705:
1482:
1398:
1280:
1135:
1030:
889:
414:
156:
546:
Cerebras
Architecture Deep Dive: First Look Inside the HW/SW Co-Design for Deep Learning
2830:
2798:
2587:
2371:
2363:
2215:
2190:
1994:
1869:
1393:
1334:
1214:
946:
674:
455:
374:
176:
2727:
2674:
2324:
2291:
2207:
2139:
2040:
2030:
2020:
1951:
1946:
1941:
1864:
1793:
1699:
1659:
1292:
1242:
1192:
1168:
1050:
990:
985:
867:
783:
435:
400:
564:"HX300 Family of NPUs and Programmable Ethernet Switches to the Fiber Access Market"
2808:
2722:
2650:
2494:
2427:
2413:
2268:
2175:
2129:
1936:
1931:
1926:
1921:
1916:
1906:
1776:
1743:
1654:
1649:
1558:
1410:
1405:
1388:
1376:
1315:
879:
857:
743:
721:
639:
459:
447:
406:
2842:
2837:
2408:
2393:
2341:
2245:
2220:
2057:
2050:
1901:
1896:
1891:
1830:
1738:
1728:
1450:
1285:
1237:
1000:
884:
852:
753:
748:
669:
585:
Manchester
Dataflow Research Project, Research Reports: Abstracts, September 1997
152:
141:
2825:
2777:
2640:
2519:
2353:
2336:
2329:
2225:
2082:
1819:
1733:
1664:
1247:
1209:
1158:
1153:
1148:
862:
686:
390:
339:
323:
2857:
2314:
2230:
1270:
1252:
1045:
738:
1173:
2524:
2462:
2278:
2255:
2067:
1788:
726:
171:). It is also very relevant in many software architectures today including
137:
230:
Efficiently dispatching instruction tokens in a massively parallel system.
2309:
2273:
1984:
1956:
1814:
1669:
592:
301:
213:
167:(as: polymorphic dataflow Convolution Engine, structure-driven, dataflow
2535:
451:
2625:
2195:
2185:
2180:
2162:
2062:
2035:
1297:
1130:
1100:
820:
2757:
2286:
2283:
2025:
1095:
1073:
237:(CAM) large enough to hold all of the dependencies of a real program.
160:
227:
Efficiently broadcasting data tokens in a massively parallel system.
24:
2762:
2700:
2301:
1120:
297:
192:
172:
125:
1110:
1068:
2667:
1125:
1090:
1055:
223:
The research, however, never overcame the problems related to:
258:
dynamically keeping track of the data dependencies, restricts
1583:
1115:
1085:
379:
354:. Similarly, output data is transmitted back to the CAM as a
2447:
1595:
1515:
1105:
190:
Meanwhile, there is a clash of terminology, since the term
1035:
1025:
264:
208:
Hardware architectures for dataflow was a major topic in
275:
495:
187:, synchronization and accesses to common resources.
520:
196:is used for a subarea of parallel programming: for
49:. Unsourced material may be challenged and removed.
578:
2855:
270:
570:(Press release). June 18, 2008. Archived from
2551:
608:
163:, and more recently in data warehousing, and
140:architecture. Dataflow architectures have no
296:Normally, in the control flow architecture,
1613:Computer performance by orders of magnitude
427:
2558:
2544:
622:
615:
601:
2565:
109:Learn how and when to remove this message
556:
479:
132:that directly contrasts the traditional
212:research in the 1970s and early 1980s.
16:Type of low-level computer architecture
2856:
2539:
596:
1584:Floating-point operations per second
433:
276:Static and dynamic dataflow machines
47:adding citations to reliable sources
18:
543:
338:executed in proper order, avoiding
13:
14:
2885:
2636:Hardware random number generation
434:Veen, Arthur H. (December 1986).
2510:Semiconductor device fabrication
396:Transport triggered architecture
23:
2485:History of general-purpose CPUs
712:Nondeterministic Turing machine
496:"Kinara (formerly Deep Vision)"
436:"Dataflow Machine Architecture"
385:Binary Modular Dataflow Machine
345:
34:needs additional citations for
665:Deterministic finite automaton
537:
513:
488:
482:Electronic Engineering Journal
473:
1:
1456:Simultaneous and heterogenous
420:
2140:Integrated memory controller
2122:Translation lookaside buffer
1321:Memory dependence prediction
764:Random-access stored program
717:Probabilistic Turing machine
544:Lie, Sean (29 August 2022).
271:Dataflow architecture topics
7:
1596:Synaptic updates per second
368:
316:
291:
10:
2890:
2000:Heterogeneous architecture
922:Orthogonal instruction set
692:Alternating Turing machine
680:Quantum cellular automaton
286:content-addressable memory
235:content-addressable memory
203:
2791:
2738:
2688:
2631:Digital signal processing
2601:
2573:
2490:Microprocessor chronology
2477:
2453:Dynamic frequency scaling
2426:
2362:
2300:
2254:
2206:
2161:
2081:
2008:
1977:
1882:
1803:
1767:
1721:
1621:
1608:Cache performance metrics
1547:
1481:
1431:
1342:
1333:
1306:
1261:
1228:
1200:
1191:
1011:
914:
903:
774:
630:
305:dependency information.
149:digital signal processing
2583:Universal Turing machine
2505:Hardware security module
1848:Digital signal processor
1825:Graphics processing unit
1637:Graphics processing unit
363:von Neumann architecture
134:von Neumann architecture
2641:Artificial intelligence
2458:Dynamic voltage scaling
2241:Memory address register
2135:Branch target predictor
2099:Address generation unit
1842:Physics processing unit
1631:Central processing unit
1590:Transactions per second
1578:Instructions per second
1501:Array processing (SIMT)
645:Stored-program computer
165:artificial intelligence
58:"Dataflow architecture"
2663:Custom hardware attack
2264:Hardwired control unit
2146:Memory management unit
2111:Memory management unit
1860:Secure cryptoprocessor
1854:Tensor Processing Unit
1836:Vision processing unit
1570:Cycles per instruction
1564:Instructions per cycle
1511:Associative processing
1202:Instruction pipelining
624:Processor technologies
247:out-of-order execution
2874:Computer architecture
2864:Hardware acceleration
2593:Distributed computing
2567:Hardware acceleration
2347:Sum-addressed decoder
2093:Arithmetic logic unit
1220:Classic RISC pipeline
1174:Epiphany architecture
1021:Motorola 68000 series
440:ACM Computing Surveys
210:computer architecture
130:computer architecture
122:Dataflow architecture
2869:Classes of computers
2696:High-level synthesis
2468:Performance per watt
2046:replacement policies
1712:Package on a package
1602:Performance per watt
1506:Pipelined processing
1276:Tomasulo's algorithm
1081:Clipper architecture
937:Application-specific
650:Finite-state machine
198:dataflow programming
43:improve this article
2821:Digital electronics
2773:In-memory computing
2753:Transport triggered
2500:Digital electronics
2153:Instruction decoder
2105:Floating-point unit
1759:Soft microprocessor
1706:System in a package
1281:Reservation station
811:Transport-triggered
452:10.1145/27633.28055
415:In-memory computing
175:engine designs and
157:graphics processing
2831:Hardware emulation
2799:Programmable logic
2588:Parallel computing
2372:Integrated circuit
2216:Processor register
1870:Baseband processor
1215:Operand forwarding
675:Cellular automaton
484:. Techfocus media.
375:Parallel computing
177:parallel computing
2851:
2850:
2728:Network on a chip
2533:
2532:
2422:
2421:
2041:Instruction cache
2031:Scratchpad memory
1878:
1877:
1865:Network processor
1794:Network on a chip
1749:Ultra-low-voltage
1700:Multi-chip module
1543:
1542:
1329:
1328:
1316:Branch prediction
1293:Register renaming
1187:
1186:
1169:VISC architecture
991:Quantum computing
986:VISC architecture
868:Secondary storage
784:Microarchitecture
744:Register machines
401:Network on a chip
352:instruction token
329:This is known as
284:Designs that use
119:
118:
111:
93:
2881:
2843:Embedded systems
2723:System on a chip
2560:
2553:
2546:
2537:
2536:
2495:Processor design
2387:Power management
2269:Instruction unit
2130:Branch predictor
2079:
2078:
1777:System on a chip
1719:
1718:
1559:Transistor count
1483:Flynn's taxonomy
1340:
1339:
1198:
1197:
1001:Addressing modes
912:
911:
858:Memory hierarchy
722:Hypercomputation
640:Abstract machine
617:
610:
603:
594:
593:
587:
582:
576:
575:
560:
554:
553:
541:
535:
534:
532:
531:
517:
511:
510:
508:
507:
492:
486:
485:
477:
471:
470:
468:
466:
431:
407:System on a chip
300:analyze program
255:execution window
251:execution window
114:
107:
103:
100:
94:
92:
51:
27:
19:
2889:
2888:
2884:
2883:
2882:
2880:
2879:
2878:
2854:
2853:
2852:
2847:
2838:Logic synthesis
2787:
2734:
2689:Implementations
2684:
2597:
2569:
2564:
2534:
2529:
2515:Tick–tock model
2473:
2429:
2418:
2358:
2342:Address decoder
2296:
2250:
2246:Program counter
2221:Status register
2202:
2157:
2117:Load–store unit
2084:
2077:
2004:
1973:
1874:
1831:Image processor
1806:
1799:
1769:
1763:
1739:Microcontroller
1729:Embedded system
1717:
1617:
1550:
1539:
1477:
1427:
1325:
1302:
1286:Re-order buffer
1257:
1238:Data dependency
1224:
1183:
1013:
1007:
906:
905:Instruction set
899:
885:Multiprocessing
853:Cache hierarchy
846:Register/memory
770:
670:Queue automaton
626:
621:
591:
590:
583:
579:
562:
561:
557:
542:
538:
529:
527:
519:
518:
514:
505:
503:
494:
493:
489:
478:
474:
464:
462:
432:
428:
423:
371:
348:
340:race conditions
319:
294:
278:
273:
206:
153:network routing
142:program counter
115:
104:
98:
95:
52:
50:
40:
28:
17:
12:
11:
5:
2887:
2877:
2876:
2871:
2866:
2849:
2848:
2846:
2845:
2840:
2835:
2834:
2833:
2826:Virtualization
2823:
2818:
2817:
2816:
2811:
2801:
2795:
2793:
2789:
2788:
2786:
2785:
2780:
2778:Systolic array
2775:
2770:
2765:
2760:
2755:
2750:
2744:
2742:
2736:
2735:
2733:
2732:
2731:
2730:
2720:
2715:
2710:
2705:
2704:
2703:
2692:
2690:
2686:
2685:
2683:
2682:
2677:
2672:
2671:
2670:
2660:
2658:Machine vision
2655:
2654:
2653:
2643:
2638:
2633:
2628:
2623:
2622:
2621:
2616:
2605:
2603:
2599:
2598:
2596:
2595:
2590:
2585:
2579:
2577:
2571:
2570:
2563:
2562:
2555:
2548:
2540:
2531:
2530:
2528:
2527:
2522:
2520:Pin grid array
2517:
2512:
2507:
2502:
2497:
2492:
2487:
2481:
2479:
2475:
2474:
2472:
2471:
2465:
2460:
2455:
2450:
2445:
2440:
2434:
2432:
2424:
2423:
2420:
2419:
2417:
2416:
2411:
2406:
2401:
2396:
2391:
2390:
2389:
2384:
2379:
2368:
2366:
2360:
2359:
2357:
2356:
2354:Barrel shifter
2351:
2350:
2349:
2344:
2337:Binary decoder
2334:
2333:
2332:
2322:
2317:
2312:
2306:
2304:
2298:
2297:
2295:
2294:
2289:
2281:
2276:
2271:
2266:
2260:
2258:
2252:
2251:
2249:
2248:
2243:
2238:
2233:
2228:
2226:Stack register
2223:
2218:
2212:
2210:
2204:
2203:
2201:
2200:
2199:
2198:
2193:
2183:
2178:
2173:
2167:
2165:
2159:
2158:
2156:
2155:
2150:
2149:
2148:
2137:
2132:
2127:
2126:
2125:
2119:
2108:
2102:
2096:
2089:
2087:
2076:
2075:
2070:
2065:
2060:
2055:
2054:
2053:
2048:
2043:
2038:
2033:
2028:
2018:
2012:
2010:
2006:
2005:
2003:
2002:
1997:
1992:
1987:
1981:
1979:
1975:
1974:
1972:
1971:
1970:
1969:
1959:
1954:
1949:
1944:
1939:
1934:
1929:
1924:
1919:
1914:
1909:
1904:
1899:
1894:
1888:
1886:
1880:
1879:
1876:
1875:
1873:
1872:
1867:
1862:
1857:
1851:
1845:
1839:
1833:
1828:
1822:
1820:AI accelerator
1817:
1811:
1809:
1801:
1800:
1798:
1797:
1791:
1786:
1783:Multiprocessor
1780:
1773:
1771:
1765:
1764:
1762:
1761:
1756:
1751:
1746:
1741:
1736:
1734:Microprocessor
1731:
1725:
1723:
1722:By application
1716:
1715:
1709:
1703:
1697:
1692:
1687:
1682:
1677:
1672:
1667:
1665:Tile processor
1662:
1657:
1652:
1647:
1646:
1645:
1634:
1627:
1625:
1619:
1618:
1616:
1615:
1610:
1605:
1599:
1593:
1587:
1581:
1575:
1574:
1573:
1561:
1555:
1553:
1545:
1544:
1541:
1540:
1538:
1537:
1536:
1535:
1525:
1520:
1519:
1518:
1513:
1508:
1503:
1493:
1487:
1485:
1479:
1478:
1476:
1475:
1470:
1465:
1460:
1459:
1458:
1453:
1451:Hyperthreading
1443:
1437:
1435:
1433:Multithreading
1429:
1428:
1426:
1425:
1420:
1415:
1414:
1413:
1403:
1402:
1401:
1396:
1386:
1385:
1384:
1379:
1369:
1364:
1363:
1362:
1357:
1346:
1344:
1337:
1331:
1330:
1327:
1326:
1324:
1323:
1318:
1312:
1310:
1304:
1303:
1301:
1300:
1295:
1290:
1289:
1288:
1283:
1273:
1267:
1265:
1259:
1258:
1256:
1255:
1250:
1245:
1240:
1234:
1232:
1226:
1225:
1223:
1222:
1217:
1212:
1210:Pipeline stall
1206:
1204:
1195:
1189:
1188:
1185:
1184:
1182:
1181:
1176:
1171:
1166:
1163:
1162:
1161:
1159:z/Architecture
1156:
1151:
1146:
1138:
1133:
1128:
1123:
1118:
1113:
1108:
1103:
1098:
1093:
1088:
1083:
1078:
1077:
1076:
1071:
1066:
1058:
1053:
1048:
1043:
1038:
1033:
1028:
1023:
1017:
1015:
1009:
1008:
1006:
1005:
1004:
1003:
993:
988:
983:
978:
973:
968:
963:
962:
961:
951:
950:
949:
939:
934:
929:
924:
918:
916:
909:
901:
900:
898:
897:
892:
887:
882:
877:
872:
871:
870:
865:
863:Virtual memory
855:
850:
849:
848:
843:
838:
833:
823:
818:
813:
808:
803:
802:
801:
791:
786:
780:
778:
772:
771:
769:
768:
767:
766:
761:
756:
751:
741:
736:
731:
730:
729:
724:
719:
714:
709:
704:
699:
694:
687:Turing machine
684:
683:
682:
677:
672:
667:
662:
657:
647:
642:
636:
634:
628:
627:
620:
619:
612:
605:
597:
589:
588:
577:
574:on 2011-07-22.
555:
536:
512:
487:
472:
446:(4): 365–396.
425:
424:
422:
419:
418:
417:
412:
411:
410:
398:
393:
391:Systolic array
388:
382:
377:
370:
367:
347:
344:
324:execution unit
318:
315:
293:
290:
277:
274:
272:
269:
239:
238:
231:
228:
205:
202:
185:load balancing
117:
116:
31:
29:
22:
15:
9:
6:
4:
3:
2:
2886:
2875:
2872:
2870:
2867:
2865:
2862:
2861:
2859:
2844:
2841:
2839:
2836:
2832:
2829:
2828:
2827:
2824:
2822:
2819:
2815:
2812:
2810:
2807:
2806:
2805:
2802:
2800:
2797:
2796:
2794:
2790:
2784:
2781:
2779:
2776:
2774:
2771:
2769:
2768:Heterogeneous
2766:
2764:
2761:
2759:
2756:
2754:
2751:
2749:
2746:
2745:
2743:
2741:
2740:Architectures
2737:
2729:
2726:
2725:
2724:
2721:
2719:
2716:
2714:
2711:
2709:
2706:
2702:
2699:
2698:
2697:
2694:
2693:
2691:
2687:
2681:
2678:
2676:
2673:
2669:
2666:
2665:
2664:
2661:
2659:
2656:
2652:
2649:
2648:
2647:
2644:
2642:
2639:
2637:
2634:
2632:
2629:
2627:
2624:
2620:
2617:
2615:
2612:
2611:
2610:
2607:
2606:
2604:
2600:
2594:
2591:
2589:
2586:
2584:
2581:
2580:
2578:
2576:
2572:
2568:
2561:
2556:
2554:
2549:
2547:
2542:
2541:
2538:
2526:
2523:
2521:
2518:
2516:
2513:
2511:
2508:
2506:
2503:
2501:
2498:
2496:
2493:
2491:
2488:
2486:
2483:
2482:
2480:
2476:
2469:
2466:
2464:
2461:
2459:
2456:
2454:
2451:
2449:
2446:
2444:
2441:
2439:
2436:
2435:
2433:
2431:
2425:
2415:
2412:
2410:
2407:
2405:
2402:
2400:
2397:
2395:
2392:
2388:
2385:
2383:
2380:
2378:
2375:
2374:
2373:
2370:
2369:
2367:
2365:
2361:
2355:
2352:
2348:
2345:
2343:
2340:
2339:
2338:
2335:
2331:
2328:
2327:
2326:
2323:
2321:
2318:
2316:
2315:Demultiplexer
2313:
2311:
2308:
2307:
2305:
2303:
2299:
2293:
2290:
2288:
2285:
2282:
2280:
2277:
2275:
2272:
2270:
2267:
2265:
2262:
2261:
2259:
2257:
2253:
2247:
2244:
2242:
2239:
2237:
2236:Memory buffer
2234:
2232:
2231:Register file
2229:
2227:
2224:
2222:
2219:
2217:
2214:
2213:
2211:
2209:
2205:
2197:
2194:
2192:
2189:
2188:
2187:
2184:
2182:
2179:
2177:
2174:
2172:
2171:Combinational
2169:
2168:
2166:
2164:
2160:
2154:
2151:
2147:
2144:
2143:
2141:
2138:
2136:
2133:
2131:
2128:
2123:
2120:
2118:
2115:
2114:
2112:
2109:
2106:
2103:
2100:
2097:
2094:
2091:
2090:
2088:
2086:
2080:
2074:
2071:
2069:
2066:
2064:
2061:
2059:
2056:
2052:
2049:
2047:
2044:
2042:
2039:
2037:
2034:
2032:
2029:
2027:
2024:
2023:
2022:
2019:
2017:
2014:
2013:
2011:
2007:
2001:
1998:
1996:
1993:
1991:
1988:
1986:
1983:
1982:
1980:
1976:
1968:
1965:
1964:
1963:
1960:
1958:
1955:
1953:
1950:
1948:
1945:
1943:
1940:
1938:
1935:
1933:
1930:
1928:
1925:
1923:
1920:
1918:
1915:
1913:
1910:
1908:
1905:
1903:
1900:
1898:
1895:
1893:
1890:
1889:
1887:
1885:
1881:
1871:
1868:
1866:
1863:
1861:
1858:
1855:
1852:
1849:
1846:
1843:
1840:
1837:
1834:
1832:
1829:
1826:
1823:
1821:
1818:
1816:
1813:
1812:
1810:
1808:
1802:
1795:
1792:
1790:
1787:
1784:
1781:
1778:
1775:
1774:
1772:
1766:
1760:
1757:
1755:
1752:
1750:
1747:
1745:
1742:
1740:
1737:
1735:
1732:
1730:
1727:
1726:
1724:
1720:
1713:
1710:
1707:
1704:
1701:
1698:
1696:
1693:
1691:
1688:
1686:
1683:
1681:
1678:
1676:
1673:
1671:
1668:
1666:
1663:
1661:
1658:
1656:
1653:
1651:
1648:
1644:
1641:
1640:
1638:
1635:
1632:
1629:
1628:
1626:
1624:
1620:
1614:
1611:
1609:
1606:
1603:
1600:
1597:
1594:
1591:
1588:
1585:
1582:
1579:
1576:
1571:
1568:
1567:
1565:
1562:
1560:
1557:
1556:
1554:
1552:
1546:
1534:
1531:
1530:
1529:
1526:
1524:
1521:
1517:
1514:
1512:
1509:
1507:
1504:
1502:
1499:
1498:
1497:
1494:
1492:
1489:
1488:
1486:
1484:
1480:
1474:
1471:
1469:
1466:
1464:
1461:
1457:
1454:
1452:
1449:
1448:
1447:
1444:
1442:
1439:
1438:
1436:
1434:
1430:
1424:
1421:
1419:
1416:
1412:
1409:
1408:
1407:
1404:
1400:
1397:
1395:
1392:
1391:
1390:
1387:
1383:
1380:
1378:
1375:
1374:
1373:
1370:
1368:
1365:
1361:
1358:
1356:
1353:
1352:
1351:
1348:
1347:
1345:
1341:
1338:
1336:
1332:
1322:
1319:
1317:
1314:
1313:
1311:
1309:
1305:
1299:
1296:
1294:
1291:
1287:
1284:
1282:
1279:
1278:
1277:
1274:
1272:
1271:Scoreboarding
1269:
1268:
1266:
1264:
1260:
1254:
1253:False sharing
1251:
1249:
1246:
1244:
1241:
1239:
1236:
1235:
1233:
1231:
1227:
1221:
1218:
1216:
1213:
1211:
1208:
1207:
1205:
1203:
1199:
1196:
1194:
1190:
1180:
1177:
1175:
1172:
1170:
1167:
1164:
1160:
1157:
1155:
1152:
1150:
1147:
1145:
1142:
1141:
1139:
1137:
1134:
1132:
1129:
1127:
1124:
1122:
1119:
1117:
1114:
1112:
1109:
1107:
1104:
1102:
1099:
1097:
1094:
1092:
1089:
1087:
1084:
1082:
1079:
1075:
1072:
1070:
1067:
1065:
1062:
1061:
1059:
1057:
1054:
1052:
1049:
1047:
1046:Stanford MIPS
1044:
1042:
1039:
1037:
1034:
1032:
1029:
1027:
1024:
1022:
1019:
1018:
1016:
1010:
1002:
999:
998:
997:
994:
992:
989:
987:
984:
982:
979:
977:
974:
972:
969:
967:
964:
960:
957:
956:
955:
952:
948:
945:
944:
943:
940:
938:
935:
933:
930:
928:
925:
923:
920:
919:
917:
913:
910:
908:
907:architectures
902:
896:
893:
891:
888:
886:
883:
881:
878:
876:
875:Heterogeneous
873:
869:
866:
864:
861:
860:
859:
856:
854:
851:
847:
844:
842:
839:
837:
834:
832:
829:
828:
827:
826:Memory access
824:
822:
819:
817:
814:
812:
809:
807:
804:
800:
797:
796:
795:
792:
790:
787:
785:
782:
781:
779:
777:
773:
765:
762:
760:
759:Random-access
757:
755:
752:
750:
747:
746:
745:
742:
740:
739:Stack machine
737:
735:
732:
728:
725:
723:
720:
718:
715:
713:
710:
708:
705:
703:
700:
698:
695:
693:
690:
689:
688:
685:
681:
678:
676:
673:
671:
668:
666:
663:
661:
658:
656:
655:with datapath
653:
652:
651:
648:
646:
643:
641:
638:
637:
635:
633:
629:
625:
618:
613:
611:
606:
604:
599:
598:
595:
586:
581:
573:
569:
565:
559:
551:
547:
540:
526:
522:
516:
501:
497:
491:
483:
476:
461:
457:
453:
449:
445:
441:
437:
430:
426:
416:
413:
408:
405:
404:
402:
399:
397:
394:
392:
389:
386:
383:
381:
378:
376:
373:
372:
366:
364:
359:
357:
353:
343:
341:
336:
332:
327:
325:
314:
312:
306:
303:
299:
289:
287:
282:
268:
266:
263:
262:
256:
252:
248:
245:Nonetheless,
243:
236:
232:
229:
226:
225:
224:
221:
219:
215:
211:
201:
199:
195:
194:
188:
186:
180:
178:
174:
170:
166:
162:
158:
154:
150:
145:
143:
139:
135:
131:
127:
123:
113:
110:
102:
91:
88:
84:
81:
77:
74:
70:
67:
63:
60: –
59:
55:
54:Find sources:
48:
44:
38:
37:
32:This article
30:
26:
21:
20:
2783:Neuromorphic
2747:
2646:Cryptography
2602:Applications
2525:Chip carrier
2463:Clock gating
2382:Mixed-signal
2279:Write buffer
2256:Control unit
2068:Clock signal
1807:accelerators
1789:Cypress PSoC
1446:Simultaneous
1263:Out-of-order
895:Neuromorphic
805:
776:Architecture
734:Belt machine
727:Zeno machine
660:Hierarchical
580:
572:the original
567:
558:
549:
539:
528:. Retrieved
524:
515:
504:. Retrieved
499:
490:
481:
475:
463:. Retrieved
443:
439:
429:
360:
355:
351:
349:
346:Instructions
334:
330:
328:
320:
311:out of order
310:
307:
295:
283:
279:
260:
254:
250:
244:
240:
222:
207:
191:
189:
181:
179:frameworks.
146:
138:control flow
121:
120:
105:
96:
86:
79:
72:
65:
53:
41:Please help
36:verification
33:
2310:Multiplexer
2274:Data buffer
1985:Single-core
1957:bit slicing
1815:Coprocessor
1670:Coprocessor
1551:performance
1473:Cooperative
1463:Speculative
1423:Distributed
1382:Superscalar
1367:Instruction
1335:Parallelism
1308:Speculative
1140:System/3x0
1012:Instruction
789:Von Neumann
702:Post–Turing
302:source code
214:Jack Dennis
99:August 2012
2858:Categories
2814:chronology
2675:Networking
2430:management
2325:Multiplier
2186:Logic gate
2176:Sequential
2083:Functional
2063:Clock rate
2036:Data cache
2009:Components
1990:Multi-core
1978:Core count
1468:Preemptive
1372:Pipelining
1355:Bit-serial
1298:Wide-issue
1243:Structural
1165:Tilera ISA
1131:MicroBlaze
1101:ETRAX CRIS
996:Comparison
841:Load–store
821:Endianness
530:2022-12-11
506:2022-12-11
421:References
356:data token
331:activating
169:scheduling
69:newspapers
2804:Processor
2758:Multicore
2364:Circuitry
2284:Microcode
2208:Registers
2051:coherence
2026:CPU cache
1884:Word size
1549:Processor
1193:Execution
1096:DEC Alpha
1074:Power ISA
890:Cognitive
697:Universal
568:EN-Genius
552:(Report).
298:compilers
233:Building
161:telemetry
2763:Manycore
2748:Dataflow
2701:C to HDL
2302:Datapath
1995:Manycore
1967:variable
1805:Hardware
1441:Temporal
1121:OpenRISC
816:Cellular
806:Dataflow
799:modified
550:Cerebras
369:See also
317:Programs
292:Compiler
193:dataflow
173:database
126:dataflow
2792:Related
2619:DirectX
2478:Related
2409:Quantum
2399:Digital
2394:Boolean
2292:Counter
2191:Quantum
1952:512-bit
1947:256-bit
1942:128-bit
1785:(MPSoC)
1770:on chip
1768:Systems
1586:(FLOPS)
1399:Process
1248:Control
1230:Hazards
1116:Itanium
1111:Unicore
1069:PowerPC
794:Harvard
754:Pointer
749:Counter
707:Quantum
521:"Hailo"
465:5 March
460:5467025
387:(BMDFM)
204:History
128:-based
83:scholar
2809:design
2668:scrypt
2575:Theory
2414:Switch
2404:Analog
2142:(IMC)
2113:(MMU)
1962:others
1937:64-bit
1932:48-bit
1927:32-bit
1922:24-bit
1917:16-bit
1912:15-bit
1907:12-bit
1744:Mobile
1660:Stream
1655:Barrel
1650:Vector
1639:(GPU)
1598:(SUPS)
1566:(IPC)
1418:Memory
1411:Vector
1394:Thread
1377:Scalar
1179:Others
1126:RISC-V
1091:SuperH
1060:Power
1056:MIPS-X
1031:PDP-11
880:Fabric
632:Models
502:. 2022
500:Kinara
458:
403:(NoC)
335:firing
253:. The
85:
78:
71:
64:
56:
2626:Audio
2614:GPGPU
2470:(PPW)
2428:Power
2320:Adder
2196:Array
2163:Logic
2124:(TLB)
2107:(FPU)
2101:(AGU)
2095:(ALU)
2085:units
2021:Cache
1902:8-bit
1897:4-bit
1892:1-bit
1856:(TPU)
1850:(DSP)
1844:(PPU)
1838:(VPU)
1827:(GPU)
1796:(NoC)
1779:(SoC)
1714:(PoP)
1708:(SiP)
1702:(MCM)
1643:GPGPU
1633:(CPU)
1623:Types
1604:(PPW)
1592:(TPS)
1580:(IPS)
1572:(CPI)
1343:Level
1154:S/390
1149:S/370
1144:S/360
1086:SPARC
1064:POWER
947:TRIPS
915:Types
525:Hailo
456:S2CID
409:(SoC)
380:SISAL
124:is a
90:JSTOR
76:books
2718:CPLD
2713:ASIC
2708:FPGA
2680:Data
2448:ACPI
2181:Glue
2073:FIFO
2016:Core
1754:ASIP
1695:CPLD
1690:FPOA
1685:FPGA
1680:ASIC
1533:SPMD
1528:MIMD
1523:MISD
1516:SWAR
1496:SIMD
1491:SISD
1406:Data
1389:Task
1360:Word
1106:M32R
1051:MIPS
1014:sets
981:ZISC
976:NISC
971:OISC
966:MISC
959:EPIC
954:VLIW
942:EDGE
932:RISC
927:CISC
836:HUMA
831:NUMA
467:2019
265:CPUs
62:news
2651:TLS
2609:GPU
2443:APM
2438:PMU
2330:CPU
2287:ROM
2058:Bus
1675:PAL
1350:Bit
1136:LMC
1041:ARM
1036:x86
1026:VAX
448:doi
333:or
326:.
261:OOE
218:MIT
216:of
200:.
136:or
45:by
2860::
2377:3D
566:.
548:.
523:.
498:.
454:.
444:18
442:.
438:.
159:,
155:,
151:,
2559:e
2552:t
2545:v
616:e
609:t
602:v
533:.
509:.
469:.
450::
112:)
106:(
101:)
97:(
87:·
80:·
73:·
66:·
39:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.