The only reason this design can even remotely be considered is down to the use of standard python Software Engineering Object-Orientated techniques, on top of nmigen, which industry-standard HDLs such as VHDL and Verilog completely lack.
-See [[3d_gpu/architecture/dynamic_simd]] for details.
+See [[architecture/dynamic_simd]] for details.
# Dynamic Pipeline length adjustment
# Memory and Cache arrangement
-Section TODO, with own page [[3d_gpu/architecture/memory_and_cache]] LD/ST accesses are controlled by the 6600-style Dependency Matrices
+Section TODO, with own page [[architecture/memory_and_cache]] LD/ST accesses are controlled by the 6600-style Dependency Matrices
# Bus arrangement
+++ /dev/null
-# Boolean truth table
-
-[[!table data="""
-p2p1p0 | o0 | o1 | o2 | o3
-++++++ | ++++++++ | ++++++++ | ++++++++ | ++
-0 0 0 | &(eq0-3) | 0 | 0 | 0
-0 0 1 | eq0 | &(eq1-3) | 0 | 0
-0 1 0 | &(eq0-1) | 0 | &(eq2-3) | 0
-0 1 1 | eq0 | eq1 | &(eq2-3) | 0
-1 0 0 | &(eq0-2) | 0 | 0 | eq3
-1 0 1 | eq0 | &(eq01-2) | 0 | eq3
-1 1 0 | &(eq0-1) | 0 | eq2 | eq3
-1 1 1 | eq0 | eq1 | eq2 | eq3
-"""]]
Pages below describe the basic features of each and track the relevant bugreports.
-* [[3d_gpu/architecture/dynamic_simd/eq]]
-* [[3d_gpu/architecture/dynamic_simd/add]]
-* [[3d_gpu/architecture/dynamic_simd/mul]]
+* [[dynamic_simd/eq]]
+* [[dynamic_simd/add]]
+* [[dynamic_simd/mul]]
--- /dev/null
+# Boolean truth table
+
+[[!table data="""
+p2p1p0 | o0 | o1 | o2 | o3
+++++++ | ++++++++ | ++++++++ | ++++++++ | ++
+0 0 0 | &(eq0-3) | 0 | 0 | 0
+0 0 1 | eq0 | &(eq1-3) | 0 | 0
+0 1 0 | &(eq0-1) | 0 | &(eq2-3) | 0
+0 1 1 | eq0 | eq1 | &(eq2-3) | 0
+1 0 0 | &(eq0-2) | 0 | 0 | eq3
+1 0 1 | eq0 | &(eq01-2) | 0 | eq3
+1 1 0 | &(eq0-1) | 0 | eq2 | eq3
+1 1 1 | eq0 | eq1 | eq2 | eq3
+"""]]