Wat is Carry-lookahead-opteller?
Opteller die de overdracht (carry) parallel bepaalt uit het generatiesignaal g = a·b en het propagatiesignaal p = a ⊕ b van elke positie, zonder te wachten op doorgifte van lagere posities. De vertraging blijft klein, ook bij veel bits.
Japanse benaming: 桁上げ先見加算器
“Carry-lookahead-opteller” komt voor in 3 oefenvragen uit 2 onderwerpen, bijv. Computerarithmetiek, Logische schakelingen.
Vakgebied: Computerarithmetiek
Waar carry-lookahead-optellers worden gebruikt
Snelle optellers zitten in ALU's, adresgeneratoren en floating-point-eenheden, en in de laatste trap van vermenigvuldigers. Een vermenigvuldiger reduceert eerst zijn vele partiële producten met carry-save-optellers: onafhankelijke full adders die drie getallen omzetten in twee met slechts één full-adder-vertraging en zonder carrypropagatie. Alleen de laatste twee getallen hebben een optelling met carrypropagatie nodig, die één keer wordt uitgevoerd door een carry-lookahead- of prefixopteller. Andere compromissen, zoals carry-select- en carry-skip-optellers, zitten qua snelheid en oppervlak tussen ripple-carry en volledige lookahead in.
Veelgestelde vragen
Waarom is een carry-lookahead-opteller sneller dan een ripple-carry-opteller?
Een ripple-carry-opteller wacht tot de carry bit voor bit door alle posities is gelopen, zodat de vertraging lineair met de breedte groeit. Een carry-lookahead-opteller berekent alle carries parallel uit de generate- en propagate-signalen, zodat de vertraging ongeveer met de logaritme van de breedte groeit.
Kan het propagate-signaal OR gebruiken in plaats van XOR?
Ja, voor de carryketen: p = a + b geeft dezelfde carries, omdat de generate-term de carry al produceert als beide ingangen 1 zijn. Het sombit heeft nog steeds a ⊕ b nodig, dus veel ontwerpen berekenen XOR voor p en gebruiken die voor beide.
Wat zijn groeps-generate en groeps-propagate?
Ze vatten een blok bits samen: groeps-generate is 1 als het blok zelf een uitgaande carry produceert, en groeps-propagate is 1 als een carry die het blok binnenkomt er helemaal doorheen wordt doorgegeven. Hogere lookahead-niveaus gebruiken ze om blokcarries snel te berekenen.