Presentation is loading. Please wait.

Presentation is loading. Please wait.

Network based System on Chip Final Presentation Part B Performed by: Medvedev Alexey Supervisor: Walter Isaschar (Zigmond) Winter-Spring 2006.

Similar presentations


Presentation on theme: "Network based System on Chip Final Presentation Part B Performed by: Medvedev Alexey Supervisor: Walter Isaschar (Zigmond) Winter-Spring 2006."— Presentation transcript:

1 Network based System on Chip Final Presentation Part B Performed by: Medvedev Alexey Supervisor: Walter Isaschar (Zigmond) Winter-Spring 2006

2 Problem to solve In modern high-speed systems that contain a lot of components traffic is a major problem. Components are interacting with each other using a bus.

3 Problem

4 This architecture has certain disadvantages:  low speed,  allows to connect only two components at a given time,  no parallel access,  unconfigurable.

5 Solution

6 Network-on-Chip A network-like structure with central units on junctions which manage and direct the traffic  highly customizable  allows any number of parallel connections  maintains high throughput at all times  traffic control and routing mechanisms

7 Advanced features Service levels allow to give priorities to certain components Wormhole mechanism lowers the total propagation delay in the net Virtual channels prevent congestion in the network

8 General NoC Router Central NoC unit for directing data streams and traffic control n input ports (IP) n output ports (OP) m service levels (SL) per each port

9 Packet structure Each packet consists of flits which are the minimal data unit in the net Routers retransmit packets further flit by flit by reading and storing the destinations address of the packet from the first flit and assigning a buffer for that packet.

10 NoC Router Buffers Crossbar Controller Input Port Output Port Input Port Output Port Input Port

11 Input port Receives data from another router or module. Consists of control unit and CRT (Current Routing Table) to store routing addresses and a FIFO buffer for each service level.

12 Input port schematic FIFO CRT#1 Transfer Control CRT#0 DMXDMX data_in ftype, sl buffer_credits write_enable data_out 1 data_out 0 address 0 address 1

13 Output port Transmits data to another router or module. Consists of a single buffer for each service level and a mux to select current service level. Also, another mux is used to switch to idle state.

14 Output port DFF ‘0’ MUXMUX MUXMUX idle sl_select data_out data_in 1 data_in 0

15 Crossbar Performs data routing between input and output ports in a router. Implemented using steering logic.

16 Crossbar MUXMUX MUXMUX MUXMUX MUXMUX OP0 level0 OP1 level0 OP0 level1 OP1 level1 IP0 level0 IP1 level0 IP0 level1 IP1 level1

17 Crossbar controller Directs data streams in the crossbar. Uses round-robin scheduler and address data from IP’s CRT to determine data streams’ direction.

18 Crossbar controller FSM One FSM for each OP and service level Transition to working states happens when there is waiting data on either IPs and the OP is able to receive data. Transition between working states happens when ‘end of packet’ flit received on one IP and there is waiting data on the other IP and the OP is able to receive flits. Transition to idle state happens when OP can’t receive data or when corresponding IP changed address or emptied its buffer.

19 Network congestion What happens if several units want to transfer lots of data to a single other unit? If the packets are long enough, they will block all routers on their way. Solution: Data Flow control.

20 Network congestion XX Hot-Spot XX X

21 Solution: Flow control XX Hot-Spot HS Controller

22 Source flow controller Forms and sends transmission requests to Hot-Spot controllers. Data transmission is controlled by source unit NoC interface (not implemented in this project).

23 Source flow controller Processing Unit Source FC Router TX request

24 Request packet Request packet consists of the following fields:  HS controller address (1 byte);  Source flow controller address (1 byte);  amount of data requested (2 bytes);  data timeout (2 bytes). The packet is short and can be transmitted quickly.

25 Hot-Spot flow controller Handles transmission requests to a single unit. A request remains in queue until it is fulfilled or until it expires – no need to send additional requests for the same data.

26 Hot-Spot flow controller Router RX TX Sched uler > Timer FIFO HS controller

27 Control protocol When a unit wishes to transmit data, it issues a request. Source flow controller transmits the request to HS control unit. HS controller checks if the request is still valid and queues it, otherwise it discards the request and sends NACK.

28 The Scheduler then takes a request from queue and checks if it is still valid. If the amount of data requested exceeds a certain value (max_quota), then the Scheduler allows to send only max_quota bytes of data and puts the updated request back into queue. Control protocol

29 HS controller sends a packet to Source controller allowing it to send certain amount of data. When Source controller finishes sending the data, it sends ACK to HS controller. When HS controller receives ACK, it discards current request and proceeds with the next. Control protocol

30 Control transaction Transmission request Transmission allowance ACK

31 System performance A network was built to evaluate the latency decrease from using the flow control units. FC Periodic Source 2 Sink 2Sink 1Periodic Source 1 Continuous Source 1 Continuous Source 2 Sink HS controller

32 Without control units: With control units: System performance Latency improvement: average number of cycles required to send a short packet

33 System performance Another network evaluates increase in “throughput fairness” from using the flow control units. FC Continuous source 4 Continuous source 2 Hot-Spot HS controller FC Continuous source 1 Continuous source 3

34 Without control units: With control units: System performance Increase in throughput fairness: average number of long packets sent in 1 ms

35 Project status Implemented a 3x3 router which supports two service levels and built a simple NoC that allows data transfers between modules on the chip. Hardware router implemented.

36 Project status Traffic generator and sink implemented Source and Hot-Spot control units implemented. A real-life system based on NoC with Hot-Spot control units built and tested. ------------------------------------------------------- PROJECT COMPLETED

37 The End


Download ppt "Network based System on Chip Final Presentation Part B Performed by: Medvedev Alexey Supervisor: Walter Isaschar (Zigmond) Winter-Spring 2006."

Similar presentations


Ads by Google