Difference between revisions of "Cores/Tin"
m (Protected "Cores/Tin": generated ([Edit=<protect-level-bot>] (indefinite) [Move=<protect-level-bot>] (indefinite))) | |||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:Tin Core}} | {{DISPLAYTITLE:Tin Core}} | ||
− | <b>[[Cores]]:</b> [[Cores/Tin|Tin]] [[Cores/Copper|Copper]] [[Cores/Silver|Silver]] [[Cores/Gold|Gold | + | <b>[[Cores]]:</b> [[Cores/Tin|Tin]] [[Cores/Copper|Copper]] [[Cores/Silver|Silver]] [[Cores/Gold|Gold]] |
Tin is the smallest viable general purpose chip. It only has each one properly populated exu and flow slot, so instruction level parallelism is quite limited. It also doesn't support wider vector operands. It is extremely low power though, so it would lend itself to ultra-mobile devices or it could serve as an overblown micro controller. | Tin is the smallest viable general purpose chip. It only has each one properly populated exu and flow slot, so instruction level parallelism is quite limited. It also doesn't support wider vector operands. It is extremely low power though, so it would lend itself to ultra-mobile devices or it could serve as an overblown micro controller. | ||
Line 7: | Line 7: | ||
<b>[[Belt]]</b>: 8 <b>[[Decode#Morsel|Morsel]]</b>: 3bit <b>[[Operands|Scalar Width]]</b>: 64bit <b>[[Operands|Operand Maximum Size]]</b>: 8B | <b>[[Belt]]</b>: 8 <b>[[Decode#Morsel|Morsel]]</b>: 3bit <b>[[Operands|Scalar Width]]</b>: 64bit <b>[[Operands|Operand Maximum Size]]</b>: 8B | ||
− | <b>[[Pipeline]]s</b>: | + | <b>[[Pipeline]]s</b>: 19 <b>[[Retire Station]]s</b>: 8 <b>[[Scratchpad]]</b>: 4096B |
<b>[[Spiller|Spill Buffers]]</b>: 8 <b>[[Spiller|Spiller Stack Size]]</b>: 16MB | <b>[[Spiller|Spill Buffers]]</b>: 8 <b>[[Spiller|Spiller Stack Size]]</b>: 16MB | ||
− | <b>[[Memory#Instruction_Cache|iCache Line]]</b>: | + | <b>[[Memory#Instruction_Cache|iCache Line]]</b>: NoneB |
− | <b>2 reader slots</b>, | + | <b>2 reader slots</b>, 17bits wide <b>2 writer slots</b>, 20bits wide <b>1 pick slots</b>, 11bits wide |
− | <b>exu slot 0</b>, | + | <b>exu slot 0</b>, 19bits wide, with functional units: [[Functional Unit#alu|alu]] [[Functional Unit#count|count]] [[Functional Unit#mul|mul]] [[Functional Unit#NaR|NaR]] [[Functional Unit#nope|nope]] [[Functional Unit#shift|shift]] [[Functional Unit#shuffle|shuffle]] |
<b>exu slot 1</b>, 7bits wide, with functional units: [[Functional Unit#cc|cc]] [[Functional Unit#exuArgs|exuArgs]] | <b>exu slot 1</b>, 7bits wide, with functional units: [[Functional Unit#cc|cc]] [[Functional Unit#exuArgs|exuArgs]] | ||
− | <b>flow slot 0</b>, | + | <b>flow slot 0</b>, 18bits wide, with functional units: [[Functional Unit#boot|boot]] [[Functional Unit#cache|cache]] [[Functional Unit#con|con]] [[Functional Unit#conform|conform]] [[Functional Unit#control|control]] [[Functional Unit#ls|ls]] [[Functional Unit#misc|misc]] [[Functional Unit#nopf|nopf]] |
− | <b>flow slot 1</b>, | + | <b>flow slot 1</b>, 8bits wide, with functional units: [[Functional Unit#flowArgs|flowArgs]] [[Functional Unit#nopf|nopf]] |
[[Cores/Tin/Encoding|Operation Encoding]] | [[Cores/Tin/Encoding|Operation Encoding]] |
Latest revision as of 14:14, 23 February 2021
Tin is the smallest viable general purpose chip. It only has each one properly populated exu and flow slot, so instruction level parallelism is quite limited. It also doesn't support wider vector operands. It is extremely low power though, so it would lend itself to ultra-mobile devices or it could serve as an overblown micro controller.
Belt: 8 Morsel: 3bit Scalar Width: 64bit Operand Maximum Size: 8B
Pipelines: 19 Retire Stations: 8 Scratchpad: 4096B
Spill Buffers: 8 Spiller Stack Size: 16MB
iCache Line: NoneB
2 reader slots, 17bits wide 2 writer slots, 20bits wide 1 pick slots, 11bits wide
exu slot 0, 19bits wide, with functional units: alu count mul NaR nope shift shuffle
exu slot 1, 7bits wide, with functional units: cc exuArgs
flow slot 0, 18bits wide, with functional units: boot cache con conform control ls misc nopf
flow slot 1, 8bits wide, with functional units: flowArgs nopf