NoC

Designing the Noc topology for processor, DMA and accelerator devices

NoC_Model_V14

Browsable image of the model.

  • To download OpenWebStart click on the links -
    Windows- Compatibility:Windows 10 or higher (*)
    macOS - Compatibility:macOS 10.15 (Catalina) or higher (*)
    Linux - Compatibility:Ubuntu 18.04 LTS or higher (*)
  • For an executable version,
  • Mouse over the icons to view parameters. Click on hierarchy and plotters to reveal content (if provided).
  • To simulate, click on Launch button, open downloaded file and click Run on the Java Security Page.
NoC_Model_V14model <h2>Router3</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Frequency</td><td>Router_Frequency</td><td>8.0E8</td></tr><tr><td>Router_Coordinate</td><td>{2,2}</td><td>{2, 2}</td></tr><tr><td>Node_Name</td><td>&quot;Router_2_2&quot;</td><td>&quot;Router_2_2&quot;</td></tr><tr><td>Ingress_Buffer_Size</td><td>Igress_Buf</td><td>40</td></tr><tr><td>VC_Buffer_Size</td><td>VC_Buf</td><td>40</td></tr><tr><td>Router_Address</td><td>&quot;0x000104&quot;</td><td>&quot;0x000104&quot;</td></tr><tr><td>VLAN_Q</td><td>4</td><td>4</td></tr></table> <h2>Router2</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Frequency</td><td>Router_Frequency</td><td>8.0E8</td></tr><tr><td>Router_Coordinate</td><td>{2,1}</td><td>{2, 1}</td></tr><tr><td>Node_Name</td><td>&quot;Router_2_1&quot;</td><td>&quot;Router_2_1&quot;</td></tr><tr><td>Ingress_Buffer_Size</td><td>Igress_Buf</td><td>40</td></tr><tr><td>VC_Buffer_Size</td><td>VC_Buf</td><td>40</td></tr><tr><td>Router_Address</td><td>&quot;0x000103&quot;</td><td>&quot;0x000103&quot;</td></tr><tr><td>VLAN_Q</td><td>4</td><td>4</td></tr></table> <h2>Router</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Frequency</td><td>Router_Frequency</td><td>8.0E8</td></tr><tr><td>Router_Coordinate</td><td>{1,2}</td><td>{1, 2}</td></tr><tr><td>Node_Name</td><td>&quot;Router_1_2&quot;</td><td>&quot;Router_1_2&quot;</td></tr><tr><td>Ingress_Buffer_Size</td><td>Igress_Buf</td><td>40</td></tr><tr><td>VC_Buffer_Size</td><td>VC_Buf</td><td>40</td></tr><tr><td>Router_Address</td><td>&quot;0x000102&quot;</td><td>&quot;0x000102&quot;</td></tr><tr><td>VLAN_Q</td><td>4</td><td>4</td></tr></table> <h2>Router_1_1</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Frequency</td><td>Router_Frequency</td><td>8.0E8</td></tr><tr><td>Router_Coordinate</td><td>{1,1}</td><td>{1, 1}</td></tr><tr><td>Node_Name</td><td>&quot;Router_1_1&quot;</td><td>&quot;Router_1_1&quot;</td></tr><tr><td>Ingress_Buffer_Size</td><td>Igress_Buf</td><td>40</td></tr><tr><td>VC_Buffer_Size</td><td>VC_Buf</td><td>40</td></tr><tr><td>Router_Address</td><td>&quot;0x000101&quot;</td><td>&quot;0x000101&quot;</td></tr><tr><td>VLAN_Q</td><td>4</td><td>4</td></tr></table> <h2>Database2</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Mac_ID     :: Mac_ID Address   Mbps       :: Data rate\\nSize_Bytes :: 1500             Start_Time :: 0.0    \\nStop_Time  :: 1.0E-03          Protocol   :: TCP_IP or UDP</td><td>Mac_ID     :: Mac_ID Address   Mbps       :: Data rate\\nSize_Bytes :: 1500             Start_Time :: 0.0    \\nStop_Time  :: 1.0E-03          Protocol   :: TCP_IP or UDP</td></tr><tr><td>Linking_Name</td><td>&quot;VLAN&quot;</td><td>&quot;VLAN&quot;</td></tr><tr><td>fileOrURL</td><td>&nbsp;</td><td>&quot;&quot;</td></tr><tr><td>Data_Structure_Text</td><td>/* Text Template or File Path.       \\n   First row contains Field Names.    */\\nVLAN_ID  Bandwidth   ;       \\n  1       200.0e6    ; \\n  2       200.0e6  \t; \\n  3       200.0e6   \t; \\n  4       200.0e6   \t; \\n</td><td>/* Text Template or File Path.       \\n   First row contains Field Names.    */\\nVLAN_ID  Bandwidth   ;       \\n  1       200.0e6    ; \\n  2       200.0e6  \t; \\n  3       200.0e6   \t; \\n  4       200.0e6   \t; \\n</td></tr><tr><td>Input_Fields</td><td>&quot;VLAN_ID&quot;</td><td>&quot;VLAN_ID&quot;</td></tr><tr><td>Lookup_Fields</td><td>&quot;VLAN_ID&quot;</td><td>&quot;VLAN_ID&quot;</td></tr><tr><td>Output_Expression</td><td>&quot;output = match_all&quot; /* FORMAT output = match.fieldb */</td><td>&quot;output = match_all&quot;</td></tr><tr><td>Mode</td><td>Read</td><td>Read</td></tr></table> <h2>NoC_TG4</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Frequency</td><td>Frequency</td><td>5.0E6</td></tr><tr><td>Destination_Coordinate</td><td>{1,1}</td><td>{1, 1}</td></tr><tr><td>Data_Bytes_low</td><td>32</td><td>32</td></tr><tr><td>Data_Bytes_high</td><td>64</td><td>64</td></tr><tr><td>Destination_Address</td><td>&quot;0x000101&quot;</td><td>&quot;0x000101&quot;</td></tr><tr><td>Flit_Size</td><td>32</td><td>32</td></tr><tr><td>Source_Address</td><td>&quot;0x000104&quot;</td><td>&quot;0x000104&quot;</td></tr><tr><td>VLAN_Q</td><td>4</td><td>4</td></tr></table> <h2>NoC_TG3</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Frequency</td><td>Frequency</td><td>5.0E6</td></tr><tr><td>Destination_Coordinate</td><td>{1,2}</td><td>{1, 2}</td></tr><tr><td>Data_Bytes_low</td><td>32</td><td>32</td></tr><tr><td>Data_Bytes_high</td><td>64</td><td>64</td></tr><tr><td>Destination_Address</td><td>&quot;0x000102&quot;</td><td>&quot;0x000102&quot;</td></tr><tr><td>Flit_Size</td><td>32</td><td>32</td></tr><tr><td>Source_Address</td><td>&quot;0x000103&quot;</td><td>&quot;0x000103&quot;</td></tr><tr><td>VLAN_Q</td><td>4</td><td>4</td></tr></table> <h2>NoC_TG2</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Frequency</td><td>Frequency</td><td>5.0E6</td></tr><tr><td>Destination_Coordinate</td><td>{2,1}</td><td>{2, 1}</td></tr><tr><td>Data_Bytes_low</td><td>32</td><td>32</td></tr><tr><td>Data_Bytes_high</td><td>64</td><td>64</td></tr><tr><td>Destination_Address</td><td>&quot;0x000103&quot;</td><td>&quot;0x000103&quot;</td></tr><tr><td>Flit_Size</td><td>32</td><td>32</td></tr><tr><td>Source_Address</td><td>&quot;0x000102&quot;</td><td>&quot;0x000102&quot;</td></tr><tr><td>VLAN_Q</td><td>4</td><td>4</td></tr></table> <h2>NoC_TG</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Frequency</td><td>Frequency</td><td>5.0E6</td></tr><tr><td>Destination_Coordinate</td><td>{2,2}</td><td>{2, 2}</td></tr><tr><td>Data_Bytes_low</td><td>32</td><td>32</td></tr><tr><td>Data_Bytes_high</td><td>64</td><td>64</td></tr><tr><td>Destination_Address</td><td>&quot;0x000104&quot;</td><td>&quot;0x000104&quot;</td></tr><tr><td>Flit_Size</td><td>32</td><td>32</td></tr><tr><td>Source_Address</td><td>&quot;0x000101&quot;</td><td>&quot;0x000101&quot;</td></tr><tr><td>VLAN_Q</td><td>VLAN_Q</td><td>4</td></tr></table> <h2>OUT4</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Destination_Name</td><td>stats</td><td>&quot;stats&quot;</td></tr><tr><td>Destination_Type</td><td>Global</td><td>Global</td></tr><tr><td>_hideName</td><td>true</td><td>true</td></tr></table> <h2>OUT3</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Destination_Name</td><td>stats</td><td>&quot;stats&quot;</td></tr><tr><td>Destination_Type</td><td>Global</td><td>Global</td></tr><tr><td>_hideName</td><td>true</td><td>true</td></tr></table> <h2>OUT2</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Destination_Name</td><td>stats</td><td>&quot;stats&quot;</td></tr><tr><td>Destination_Type</td><td>Global</td><td>Global</td></tr><tr><td>_hideName</td><td>true</td><td>true</td></tr></table> <h2>OUT</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Destination_Name</td><td>stats</td><td>&quot;stats&quot;</td></tr><tr><td>Destination_Type</td><td>Global</td><td>Global</td></tr><tr><td>_hideName</td><td>true</td><td>true</td></tr></table> <h2>IN</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr><tr><td>Destination_Name</td><td>stats</td><td>&quot;stats&quot;</td></tr><tr><td>Destination_Type</td><td>Global</td><td>Global</td></tr><tr><td>_hideName</td><td>true</td><td>true</td></tr></table> <h2>Stats</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Enter User Documentation Here</td><td>Enter User Documentation Here</td></tr></table> <h2>Database</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Block_Documentation</td><td>Router_C_Address -&gt; Current Router Address\\nRouter_D_Address -&gt; Destination Router Address\\nRouter_Hop_Address -&gt; Hop Router Port Address</td><td>Router_C_Address -&gt; Current Router Address\\nRouter_D_Address -&gt; Destination Router Address\\nRouter_Hop_Address -&gt; Hop Router Port Address</td></tr><tr><td>Linking_Name</td><td>&quot;AddressDecoder&quot;</td><td>&quot;AddressDecoder&quot;</td></tr><tr><td>fileOrURL</td><td>&nbsp;</td><td>&quot;&quot;</td></tr><tr><td>Data_Structure_Text</td><td>Router_C_Address\tA_Destination\tRouter_Hop_Address;\\n&quot;0x000101&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000102&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000103&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000104&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000101&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00003&quot;\t\t;/*East*/\\n&quot;0x000102&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000103&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00003&quot;\t\t;/*East*/\\n&quot;0x000104&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00005&quot;\t\t;/*West*/\\n&quot;0x000101&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000102&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000103&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00002&quot;\t\t;/*North*/\\n&quot;0x000104&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00002&quot;\t\t;/*North*/\\n&quot;0x000101&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000102&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00005&quot;\t\t;/*West*/\\n&quot;0x000103&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00003&quot;\t\t;/*East*/\\n&quot;0x000104&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00005&quot;\t\t;/*West*/</td><td>Router_C_Address\tA_Destination\tRouter_Hop_Address;\\n&quot;0x000101&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000102&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000103&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000104&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00001&quot;\t\t;/*Device*/\\n&quot;0x000101&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00003&quot;\t\t;/*East*/\\n&quot;0x000102&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000103&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00003&quot;\t\t;/*East*/\\n&quot;0x000104&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00005&quot;\t\t;/*West*/\\n&quot;0x000101&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000102&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000103&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00002&quot;\t\t;/*North*/\\n&quot;0x000104&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00002&quot;\t\t;/*North*/\\n&quot;0x000101&quot;\t\t&quot;0x000104&quot;\t\t&quot;0x00004&quot;\t\t;/*South*/\\n&quot;0x000102&quot;\t\t&quot;0x000101&quot;\t\t&quot;0x00005&quot;\t\t;/*West*/\\n&quot;0x000103&quot;\t\t&quot;0x000102&quot;\t\t&quot;0x00003&quot;\t\t;/*East*/\\n&quot;0x000104&quot;\t\t&quot;0x000103&quot;\t\t&quot;0x00005&quot;\t\t;/*West*/</td></tr><tr><td>Input_Fields</td><td>&quot;Router_C_Address,A_Destination&quot;</td><td>&quot;Router_C_Address,A_Destination&quot;</td></tr><tr><td>Lookup_Fields</td><td>&quot;Router_C_Address,A_Destination&quot;</td><td>&quot;Router_C_Address,A_Destination&quot;</td></tr><tr><td>Output_Expression</td><td>&quot;output = match&quot; /* FORMAT output = match.fieldb */</td><td>&quot;output = match&quot;</td></tr><tr><td>Mode</td><td>Read</td><td>Read</td></tr></table>

A Network on Chip (NoC) is typically a communication subsystem on an IC. They are commonly used in conjunction with the cores within SoCs to bring out notable improvements to the entire system over conventional bus interconnections.