aboutsummaryrefslogtreecommitdiffstats
path: root/picosoc
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2017-09-21 18:40:38 +0200
committerClifford Wolf <clifford@clifford.at>2017-09-21 18:40:38 +0200
commit0c9dce7bc23a95e2781a993d94e6f8e96c5feb6a (patch)
tree1b5fcf94b1b7545f7215bd2678dc3d212eff3bca /picosoc
parent559cd8db788413908abac7d64e50e314af0c842e (diff)
downloadpicorv32-0c9dce7bc23a95e2781a993d94e6f8e96c5feb6a.tar.gz
picorv32-0c9dce7bc23a95e2781a993d94e6f8e96c5feb6a.zip
Add picosoc performance.{py,png}
Diffstat (limited to 'picosoc')
-rw-r--r--picosoc/performance.pngbin0 -> 37585 bytes
-rw-r--r--picosoc/performance.py86
2 files changed, 86 insertions, 0 deletions
diff --git a/picosoc/performance.png b/picosoc/performance.png
new file mode 100644
index 0000000..3450305
--- /dev/null
+++ b/picosoc/performance.png
Binary files differ
diff --git a/picosoc/performance.py b/picosoc/performance.py
new file mode 100644
index 0000000..a66f5cd
--- /dev/null
+++ b/picosoc/performance.py
@@ -0,0 +1,86 @@
+#!/usr/bin/env python3
+
+import matplotlib.pyplot as plt
+import numpy as np
+
+text = """
+default : 010f52ef
+dspi-8 : 008dc82f
+dspi-7 : 008d6d63
+dspi-6 : 008d1297
+dspi-5 : 008cb7cb
+dspi-4 : 008c5cff
+dspi-3 : 008c0233
+dspi-2 : 008ba767
+dspi-1 : 008b4c9b
+dspi-crm-8 : 008af1cf
+dspi-crm-7 : 008a9703
+dspi-crm-6 : 008a3c37
+dspi-crm-5 : 0089e16b
+dspi-crm-4 : 0089869f
+dspi-crm-3 : 00892bd3
+dspi-crm-2 : 0088d107
+dspi-crm-1 : 0088763b
+qspi-8 : 004a2c6f
+qspi-7 : 0049d1a3
+qspi-6 : 004976d7
+qspi-5 : 00491c0b
+qspi-4 : 0048c13f
+qspi-3 : 00486673
+qspi-2 : 00480ba7
+qspi-1 : 0047b0db
+qspi-crm-8 : 0047560f
+qspi-crm-7 : 0046fb43
+qspi-crm-6 : 0046a077
+qspi-crm-5 : 004645ab
+qspi-crm-4 : 0045eadf
+qspi-crm-3 : 00459013
+qspi-crm-2 : 00453547
+qspi-crm-1 : 0044da7b
+qspi-ddr-8 : 00288bf5
+qspi-ddr-7 : 00283129
+qspi-ddr-6 : 0027d65d
+qspi-ddr-5 : 00277b91
+qspi-ddr-4 : 002720c5
+qspi-ddr-3 : 0026c5f9
+qspi-ddr-2 : 00266b2d
+qspi-ddr-1 : 00261061
+qspi-ddr-crm-8 : 0025b595
+qspi-ddr-crm-7 : 00255ac9
+qspi-ddr-crm-6 : 0024fffd
+qspi-ddr-crm-5 : 0024a531
+qspi-ddr-crm-4 : 00244a65
+qspi-ddr-crm-3 : 0023ef99
+qspi-ddr-crm-2 : 002394cd
+qspi-ddr-crm-1 : 00233a01
+"""
+
+labels = list()
+values = list()
+
+for line in text.split("\n"):
+ if line != "":
+ line = line.split()
+ labels.append(line[0])
+ values.append(int(line[2], 16))
+
+plt.figure(figsize=(10, 3))
+plt.title("Performance comparison for different PicoSoC SPI flash configurations")
+plt.plot(range(len(labels)), values[0] / np.array(values))
+plt.xticks(range(len(labels)), labels, rotation=90)
+
+for color, x1, x2 in [["black", 0, 0], ["red", 1, 8], ["green", 9, 16],
+ ["red", 17, 24], ["green", 25, 32], ["red", 33, 40], ["green", 41, 48]]:
+ for t in plt.axes().xaxis.get_ticklabels()[x1:x2+1]:
+ t.set_color(color)
+ plt.plot([x1, x1], [0, values[0] / values[x1] - 0.2], color=color)
+ plt.plot([x2, x2], [0, values[0] / values[x2] - 0.2], color=color)
+ plt.plot([x1], [values[0] / values[x1]], "k.")
+ plt.plot([x2], [values[0] / values[x2]], "k.")
+
+plt.xlim(-1, len(values))
+plt.ylim(0, 9)
+plt.grid()
+
+plt.savefig("performance.png")
+# plt.show()