Network-On-Chip Implementation And Performance Improvement Through Workload Characterization And Congestion Awareness