OpenRAM/ICCAD16_openram_paper/figs/density_delay_plot.gp

101 lines
5.1 KiB
Plaintext
Raw Normal View History

2016-11-08 18:57:35 +01:00
#!/usr/bin/gnuplot
#
# Demonstration of a common use scenario of the multiplot environment.
#
# AUTHOR: Hagen Wierstorf
#
reset
set terminal pdf dashed size 8cm,12cm
set output "Results.pdf"
set palette color
unset key
# Enable the use of macros
set macros
# MACROS
# Margins for each row resp. column
# top of top fig, bottom of top fig
TMARGIN = "set tmargin at screen 0.9; set bmargin at screen 0.575"
# top of lower fig, bottom of lower fig
BMARGIN = "set tmargin at screen 0.525; set bmargin at screen 0.15"
# left of left fig, right of left fig
LMARGIN = "set lmargin at screen 0.1; set rmargin at screen 0.48"
# left point of right fig ,right most
RMARGIN = "set lmargin at screen 0.52; set rmargin at screen 0.9"
# Placement of the a,b,c,d labels in the graphs
POSA = "at graph 0.6,0.2 font ',5'"
POSB = "at graph 0.5,0.2 font ',5'"
### Start multiplot (2x2 layout)
set multiplot layout 4,1
# --- GRAPH a
set key outside center vertical top box 3
set lmargin at screen 0.2; set rmargin at screen 0.9
set tmargin at screen 0.88; set bmargin at screen 0.68
#@TMARGIN; @LMARGIN
#@NOXTICS; @YTICS
set label 1 '45nm Area' @POSA
set ylabel "mm^2"
plot 'density_data/freepdk45_size.dat' using ($1/1024):($2/1e6) with line axis x1y1 title '16-bit word size' lt 0 lw 5 lc 0 ,\
'density_data/freepdk45_size.dat' using ($1/1024):($2/1e6) with points axis x1y1 title '' lt 0 lw 5 lc 0 ,\
'density_data/freepdk45_size.dat' using ($1/1024):($3/1e6) with line axis x1y1 title '32-bit word size' lt 1 lw 5 lc 1 ,\
'density_data/freepdk45_size.dat' using ($1/1024):($3/1e6) with points axis x1y1 title '' lt 1 lw 5 lc 1 ,\
'density_data/freepdk45_size.dat' using ($1/1024):($4/1e6) with line axis x1y1 title '64-bit word size' lt 2 lw 5 lc 2 ,\
'density_data/freepdk45_size.dat' using ($1/1024):($4/1e6) with points axis x1y1 title '' lt 2 lw 5 lc 2 ,\
'density_data/freepdk45_size.dat' using ($1/1024):($5/1e6) with line axis x1y1 title '128-bit word size' lt 3 lw 5 lc 3 ,\
'density_data/freepdk45_size.dat' using ($1/1024):($5/1e6) with points axis x1y1 title '' lt 3 lw 5 lc 3
# --- GRAPH b
unset key
set tmargin at screen 0.68; set bmargin at screen 0.48
#@TMARGIN; @RMARGIN
#@NOXTICS; @NOYTICS
set label 1 '180nm Area' @POSA
set ylabel "mm^2"
plot 'density_data/scn3me_size.dat' using ($1/1024):($2/1e6) with line axis x1y1 title '16-bit word size' lt 0 lw 5 lc 0 ,\
'density_data/scn3me_size.dat' using ($1/1024):($2/1e6) with points axis x1y1 title '' lt 0 lw 5 lc 0 ,\
'density_data/scn3me_size.dat' using ($1/1024):($3/1e6) with line axis x1y1 title '32-bit word size' lt 1 lw 5 lc 1 ,\
'density_data/scn3me_size.dat' using ($1/1024):($3/1e6) with points axis x1y1 title '' lt 1 lw 5 lc 1 ,\
'density_data/scn3me_size.dat' using ($1/1024):($4/1e6) with line axis x1y1 title '64-bit word size' lt 2 lw 5 lc 2 ,\
'density_data/scn3me_size.dat' using ($1/1024):($4/1e6) with points axis x1y1 title '' lt 2 lw 5 lc 2 ,\
'density_data/scn3me_size.dat' using ($1/1024):($5/1e6) with line axis x1y1 title '128-bit word size' lt 3 lw 5 lc 3 ,\
'density_data/scn3me_size.dat' using ($1/1024):($5/1e6) with points axis x1y1 title '' lt 3 lw 5 lc 3
# --- GRAPH c
set tmargin at screen 0.48; set bmargin at screen 0.28
#@BMARGIN; @LMARGIN
#@XTICS; @YTICS
set label 1 '45nm Access time' @POSB
set ylabel "ns"
plot 'timing_data/freepdk45_timing.dat' using ($1/1024):2 with line axis x1y2 title '16-bit word' lt 0 lw 5 lc 0 ,\
'timing_data/freepdk45_timing.dat' using ($1/1024):2 with points axis x1y2 title '' lt 0 lw 5 lc 0 ,\
'timing_data/freepdk45_timing.dat' using ($1/1024):3 with line axis x1y2 title '32-bit word' lt 1 lw 5 lc 1 ,\
'timing_data/freepdk45_timing.dat' using ($1/1024):3 with points axis x1y2 title '' lt 1 lw 5 lc 1 ,\
'timing_data/freepdk45_timing.dat' using ($1/1024):4 with line axis x1y2 title '64-bit word' lt 2 lw 5 lc 2 ,\
'timing_data/freepdk45_timing.dat' using ($1/1024):4 with points axis x1y2 title '' lt 2 lw 5 lc 2 ,\
'timing_data/freepdk45_timing.dat' using ($1/1024):5 with line axis x1y2 title '128-bit word' lt 3 lw 5 lc 3 ,\
'timing_data/freepdk45_timing.dat' using ($1/1024):5 with points axis x1y2 title '' lt 3 lw 5 lc 3
# --- GRAPH d
set tmargin at screen 0.28; set bmargin at screen 0.08
#@BMARGIN; @RMARGIN
#@XTICS; @NOYTICS
set ylabel "ns"
set xlabel "Total Size (Kbits)"
set label 1 '180nm Access time' @POSB
plot 'timing_data/scn3me_timing.dat' using ($1/1024):2 with line axis x1y2 title '16-bit word' lt 0 lw 5 lc 0 ,\
'timing_data/scn3me_timing.dat' using ($1/1024):2 with points axis x1y2 title '' lt 0 lw 5 lc 0 ,\
'timing_data/scn3me_timing.dat' using ($1/1024):3 with line axis x1y2 title '32-bit word' lt 1 lw 5 lc 1 ,\
'timing_data/scn3me_timing.dat' using ($1/1024):3 with points axis x1y2 title '' lt 1 lw 5 lc 1 ,\
'timing_data/scn3me_timing.dat' using ($1/1024):4 with line axis x1y2 title '64-bit word' lt 2 lw 5 lc 2 ,\
'timing_data/scn3me_timing.dat' using ($1/1024):4 with points axis x1y2 title '' lt 2 lw 5 lc 2 ,\
'timing_data/scn3me_timing.dat' using ($1/1024):5 with line axis x1y2 title '128-bit word' lt 3 lw 5 lc 3 ,\
'timing_data/scn3me_timing.dat' using ($1/1024):5 with points axis x1y2 title '' lt 3 lw 5 lc 3
unset multiplot
### End multiplot