Presentation is loading. Please wait.

Presentation is loading. Please wait.

System-on-Chip Design Principles of Hardware/Software Communication

Similar presentations


Presentation on theme: "System-on-Chip Design Principles of Hardware/Software Communication"— Presentation transcript:

1 System-on-Chip Design Principles of Hardware/Software Communication
Hao Zheng Comp Sci & Eng U of South Florida

2 System Structural Model
CPU Mem P1 P2 Arbiter Bridge P3 P5 P4 HW HW

3 Basic Elements of HW/SW Interfaces

4 Synchronization Schemes
Synchronization is necessary for effective communications

5 Synchronization Schemes

6 Semaphores Used to control of accesses to shared resource.
Two ops on semaphore S: P(S): acquire S. V(S): release S. thread 1: P(S); x++; V(s); thread 2: P(S); x = x – 2; V(s);

7 Semaphores entity two { entity one { short_delay(); P(S); while (1) {
rd = shared_data; }} entity one { P(S); while (1) { short_delay(); shared_data = …; V(S); }} int shared_data; semaphore S;

8 Semaphores Semaphores can only guarantee exclusive access to shared resources. difficult to control precise data transfer Multiple semaphores can be used, but not elegant. Handshaking: a signaling protocol between two entities to coordinate data transfers. Can handle entities with different speeds.

9 One-Way Handshake

10 Two-Way Handshake

11 Two-Way Handshake for Data Transfer
req ack Dest Src data clk req ack X X data X X X X X X X d1

12 Communication Constrained vs Computation Constrained
System performance should consider both computation performance and communication overhead.

13 Communication Constrained vs Computation Constrained

14 Tight and Loose Coupling
Coupling: the degree of interactions between two components

15 Dedicated vs Shared Interfaces
Nature of coupling affects the organization of HW/SW interfaces tight coupling loose coupling

16 Reading Guide Chapter 9, the CoDesign book.


Download ppt "System-on-Chip Design Principles of Hardware/Software Communication"

Similar presentations


Ads by Google