From WikiChip
Difference between revisions of "Template:cache size"

(initial layout, based on the older template we have)
 
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<div style="background:#f9f9f9; margin: 10px; padding: 5px; border: 1px solid #a7d7f9; display: inline-block; width: 900px;">
+
<div style="background:#f9f9f9; margin: 10px 2px 10px 2px; padding: 5px; border: 1px solid #a7d7f9; display: inline-block; width: 700px;">
<span style="margin: -12px -2px; float: right;">[[Special:FormEdit/cache size/{{FULLPAGENAME}}|<nowiki>[Edit/Modify Supported Features]</nowiki>]]</span>
+
<span style="margin: -12px -2px; float: right;">[[Special:FormEdit/cache size/{{FULLPAGENAME}}|<nowiki>[Edit/Modify Cache Info]</nowiki>]]</span>
 
<table>
 
<table>
 
<tr>
 
<tr>
Line 9: Line 9:
 
</tr>
 
</tr>
 
<tr style="vertical-align:top;"><td>
 
<tr style="vertical-align:top;"><td>
<table class="tl1" style="margin-left: 10px;">
+
<table class="tl1" style="margin-left: 10px;"><!--
<tr><th style="min-width: 35px;">L1$</th><td>128 KiB</td><td><table><tr><th style="text-align: center; min-width: 50px;">L1I$</th><td style="min-width: 50px;">64 KiB</td><td style="min-width: 75px;">1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr><tr><th style="text-align: center; min-width: 50px;">L1D$</th><td>64 KiB</td><td>1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr></table></td></tr>
+
-->{{#if: {{{l1 cache|}}} | <tr><th style="min-width: 35px;">L1$</th><td>[[l1$ size::{{{l1 cache}}}]]</td><td><table><!--
<tr><th style="min-width: 35px;">L2$</th><td>128 KiB</td><td><table><tr><th style="text-align: center; min-width: 50px;">L2I$</th><td style="min-width: 50px;">64 KiB</td><td style="min-width: 75px;">1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr><tr><th style="text-align: center; min-width: 50px;">L2D$</th><td>64 KiB</td><td>1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr></table></td></tr>
+
  -->{{#if: {{{l1i cache|}}} | <tr><th style="text-align: center; min-width: 50px;">L1I$</th><td style="min-width: 50px;">[[l1i$ size::{{{l1i cache}}}]]</td><td style="min-width: 75px;">{{{l1i break|&nbsp;}}}</td><td style="min-width: 175px;">{{#if: {{{l1i desc|}}}|[[l1i$ description::{{{l1i desc}}}]]|&nbsp;}}</td><td>{{#if:{{{l1i policy|}}}|{{{l1i policy}}}|&nbsp;}}</td></tr> }}<!--
<tr><th style="min-width: 35px;">L3$</th><td>128 KiB</td><td><table><tr><th style="text-align: center; min-width: 50px;">L3I$</th><td style="min-width: 50px;">64 KiB</td><td style="min-width: 75px;">1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr><tr><th style="text-align: center; min-width: 50px;">L3D$</th><td>64 KiB</td><td>1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr></table></td></tr>
+
  -->{{#if: {{{l1d cache|}}} | <tr><th style="text-align: center; min-width: 50px;">L1D$</th><td>[[l1d$ size::{{{l1d cache}}}]]</td><td style="min-width: 75px;">{{{l1d break|&nbsp;}}}</td><td style="min-width: 175px;">{{#if:{{{l1d desc|}}}|[[l1d$ description::{{{l1d desc}}}]]|&nbsp;}}</td><td>{{#if:{{{l1d policy|}}}|{{{l1d policy}}}|&nbsp;}}</td></tr> }}<!--
<tr><th style="min-width: 35px;">L4$</th><td>128 KiB</td><td><table><tr><th style="text-align: center; min-width: 50px;">L4I$</th><td style="min-width: 50px;">64 KiB</td><td style="min-width: 75px;">1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr><tr><th style="text-align: center; min-width: 50px;">L4D$</th><td>64 KiB</td><td>1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr></table></td></tr>
+
  -->{{#if: {{#if:{{{l1i cache|}}}{{{l1d cache|}}}||1}} | <tr><th style="text-align: center; min-width: 50px;">&nbsp;</th><td style="min-width: 50px;">&nbsp;</td><td style="min-width: 75px;">{{{l1 break}}}</td><td style="min-width: 175px;">{{#if: {{{l1 desc|}}} | [[l1$ description::{{{l1 desc}}}]] | &nbsp;}}</td><td>{{#if:{{{l1 policy|}}}|{{{l1 policy}}}|&nbsp;}}</td></tr> }}<!--
<tr><th style="min-width: 35px;">Mobo</th><td>128 KiB</td><td><table><tr><th style="text-align: center; min-width: 50px;">&nbsp;</th><td style="min-width: 50px;">64 KiB</td><td style="min-width: 75px;">1x64 KiB</td><td style="min-width: 175px;">2-way set associative</td><td>write-back</td></tr></table></td></tr>
+
  --></table></td></tr>{{#if: {{{l2 cache|}}}|<tr><td colspan="4"><hr></td></tr>}} }}<!--
</table>
+
-->{{#if: {{{l2 cache|}}} | <tr><th style="min-width: 35px;">L2$</th><td>[[l2$ size::{{{l2 cache}}}]]</td><td><table><!--
 +
  -->{{#if: {{{l2i cache|}}} | <tr><th style="text-align: center; min-width: 50px;">L2I$</th><td style="min-width: 50px;">[[l2i$ size::{{{l2i cache}}}]]</td><td style="min-width: 75px;">{{{l2i break}}}</td><td style="min-width: 175px;">[[l2i$ description::{{{l2i desc}}}]]</td><td>{{#if:{{{l2i policy|}}}|{{{l2i policy}}}|&nbsp;}}</td></tr> }}<!--
 +
  -->{{#if: {{{l2d cache|}}} | <tr><th style="text-align: center; min-width: 50px;">L2D$</th><td>[[l2d$ size::{{{l2d cache}}}]]</td><td style="min-width: 75px;">{{{l2d break}}}</td><td style="min-width: 175px;">{{#if: {{{l2d desc|}}} | [[l2d$ description::{{{l2d desc}}}]] | &nbsp;}}</td><td>{{#if:{{{l2d policy|}}}|{{{l2d policy}}}|&nbsp;}}</td></tr> }}<!--
 +
  -->{{#if: {{#if: {{{l2i cache|}}}{{{l2d cache|}}}||1}} | <tr><th style="text-align: center; min-width: 50px;">&nbsp;</th><td style="min-width: 50px;">&nbsp;</td><td style="min-width: 75px;">{{{l2 break|&nbsp;}}}</td><td style="min-width: 175px;">{{#if: {{{l2 desc|}}} | [[l2$ description::{{{l2 desc}}}]] | &nbsp;}}</td><td>{{#if:{{{l2 policy|}}}|{{{l2 policy}}}|&nbsp;}}</td></tr> }}<!--
 +
  --></table></td></tr>{{#if: {{{l3 cache|}}}|<tr><td colspan="4"><hr></td></tr>}} }}<!--
 +
-->{{#if: {{{l3 cache|}}} | <tr><th style="min-width: 35px;">L3$</th><td>[[l3$ size::{{{l3 cache}}}]]</td><td><table><tr><th style="text-align: center; min-width: 50px;">&nbsp;</th><td style="min-width: 50px;">&nbsp;</td><td style="min-width: 75px;">{{#if:{{{l3 break|}}}|{{{l3 break}}}|&nbsp;}}</td><td style="min-width: 175px;">{{#if: {{{l3 desc|}}} | [[l3$ description::{{{l3 desc}}}]] | &nbsp;}}</td><td>{{#if:{{{l3 policy|}}}|{{{l3 policy}}}|&nbsp;}}</td></tr></table></td></tr>{{#if: {{{l4 cache|}}}|<tr><td colspan="4"><hr></td></tr>}} }}<!--
 +
-->{{#if: {{{l4 cache|}}} | <tr><th style="min-width: 35px;">L4$</th><td>[[l4$ size::{{{l4 cache}}}]]</td><td><table><tr><th style="text-align: center; min-width: 50px;">&nbsp;</th><td style="min-width: 50px;">&nbsp;</td><td style="min-width: 75px;">{{#if:{{{l4 break|}}}|{{{l4 break}}}|&nbsp;}}</td><td style="min-width: 175px;">{{#if: {{{l4 desc|}}} | [[l4$ description::{{{l4 desc}}}]] | &nbsp;}}</td><td>{{#if:{{{l4 policy|}}}|{{{l4 policy}}}|&nbsp;}}</td></tr></table></td></tr>{{#if: {{{mobo cache|}}}|<tr><td colspan="4"><hr></td></tr>}} }}<!--
 +
-->{{#if: {{{mobo cache|}}} | <tr><th style="min-width: 35px;">Mobo</th><td>[[mobo$ size::{{{mobo cache}}}]]</td><td><table><tr><th style="text-align: center; min-width: 50px;">&nbsp;</th><td style="min-width: 50px;">&nbsp;</td><td style="min-width: 75px;">{{{mobo break}}}</td><td style="min-width: 175px;">{{#if: {{{mobo desc|}}} | [[mobo$ description::{{{mobo desc}}}]] | &nbsp;}}</td><td>{{#if:{{{mobo policy|}}}|{{{mobo policy}}}|&nbsp;}}</td></tr></table></td></tr> }}<!--
 +
--></table>
 
</td>
 
</td>
 
</tr>
 
</tr>
 
</table>
 
</table>
 
</div>
 
</div>

Latest revision as of 22:56, 2 November 2017

[Edit/Modify Cache Info]

hierarchy icon.svg
Cache Organization
Cache is a hardware component containing a relatively small and extremely fast memory designed to speed up the performance of a CPU by preparing ahead of time the data it needs to read from a relatively slower medium such as main memory.

The organization and amount of cache can have a large impact on the performance, power consumption, die size, and consequently cost of the IC.

Cache is specified by its size, number of sets, associativity, block size, sub-block size, and fetch and write-back policies.

Note: All units are in kibibytes and mebibytes.