PageSourceSearch

https://simten.dev/assets/WeightSection-CVBIwHSg.js

js simten.dev collected 2026-09-29 07:17:55 UTC 2,366 bytes, 1 lines download raw bytes

1import{j as e}from"./main-5zZu2UcF.js";import{T as t}from"./circuits-DMYFgzB9.js";import{C as a}from"./CircuitEmbed-BaKGR7p9.js";import"./useCircuitSimulator-Ocs-zDtT.js";import"./CircuitCanvas-9Oc83aTy.js";import"./index-C6v6OnJi.js";function n(){return e.jsxs("section",{className:"py-12",children:[e.jsx("h2",{className:"text-3xl font-bold text-gray-900 dark:text-white mb-4",children:"The Weight Register"}),e.jsxs("div",{className:"prose-invert space-y-6",children:[e.jsxs("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:["In a TPU, weights are loaded ",e.jsx("em",{children:"before"})," data starts flowing. Each processing element has a ",e.jsx("strong",{className:"text-gray-900 dark:text-white",children:"weight register"})," that captures a value only when a"," ",e.jsx("strong",{className:"text-gray-900 dark:text-white",children:"valid bit"})," is asserted. Once latched, the weight stays fixed for the entire computation. This is the"," ",e.jsx("strong",{className:"text-gray-900 dark:text-white",children:"weight-stationary"})," approach: the weight is programmed once, then thousands of activation values stream past it, each getting multiplied by the same weight."]}),e.jsxs("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:["The circuit below shows the weight register and a multiplier. Toggle"," ",e.jsx("code",{className:"text-blue-300",children:"weightValid"})," on and click ",e.jsx("strong",{children:"Tick"})," to latch the weight. The stored weight display captures the value. Now turn valid off and tick again, and the stored weight holds steady. Change"," ",e.jsx("code",{className:"text-blue-300",children:"dataIn"})," and watch the product update instantly: the stored weight multiplies whatever data arrives."]}),e.jsx("p",{className:"text-gray-600 dark:text-gray-300 leading-relaxed",children:"In the real TPUv1, a unified buffer loads weights into all processing elements simultaneously. The valid bit is the gating mechanism that tells each PE exactly when to capture its weight."})]}),e.jsx("div",{className:"mt-8",children:e.jsx(a,{circuit:t.weightRegister.circuit,layout:t.weightRegister.layout,showControls:!0,autoRunSpeed:400,title:"Weight Register",description:"Toggle valid to store the weight. It stays fixed while data streams through."})})]})}export{n as WeightSection};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.