Scan chains (was: control co-processor)

Liste des GroupesRevenir à c arch 
Sujet : Scan chains (was: control co-processor)
De : monnier (at) *nospam* iro.umontreal.ca (Stefan Monnier)
Groupes : comp.arch
Date : 07. May 2025, 04:12:08
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <jwvwmatqg1u.fsf-monnier+comp.arch@gnu.org>
References : 1 2 3 4 5 6 7 8 9 10 11 12 13 14
User-Agent : Gnus/5.13 (Gnus v5.13)
Even state-of-the-art CPUs today commonly use scan-chains (via JTAG)
for debuggin.
Is there some blog somewhere that explains how scan-chains work (not
how they're used, but how they're implemented inside the CPU)?
Intuitively they sound very costly to me, because of things like the
need to run extra wires all over the place.  I'm obviously
missing something.
Actually, you're not far off.  It's a serial shift chain which is shifted
one-bit at a time to capture flop states.  Each chain is a single wire;
a chip may have a few dozen individual shift chains.
https://www.design-reuse.com/articles/48331/scan-chains-pnr-outlook.html

Thanks.  Wow.  So it is really that bad, huh?
I also liked the note about speed limits and power consumption, how
shifting a state (in or out) causes (almost) all the flip-flops to
change state at each cycle, thus leading to very high power consumption.

What's the approximate cost of those scan chains.  I.e. if we were to
take an existing working design and replace all the "flip-flop with
scan-chain" with "plain flip-flops", how much smaller would the
resulting chip be, how much faster could it run, and how much less power
could it consume?

I assume the cost in terms of power consumption is small because in
normal use, the scan-chain part stays completely stable so that barring
leakage it should not consume any power, save for the indirect costs
like the need to move the other bits over greater distances when
the extra wires of the scan chains get in the way.


        Stefan

Date Sujet#  Auteur
17 Apr 25 * Re: register sets56Robert Finch
17 Apr 25 +* Re: register sets53Stephen Fuld
17 Apr 25 i+- Re: register sets1Robert Finch
17 Apr 25 i+* Re: register sets46MitchAlsup1
18 Apr 25 ii`* Re: register sets45Robert Finch
18 Apr 25 ii `* Re: register sets44MitchAlsup1
20 Apr 25 ii  `* Re: register sets43Robert Finch
21 Apr 25 ii   `* Re: auto predicating branches42Robert Finch
21 Apr 25 ii    `* Re: auto predicating branches41Anton Ertl
21 Apr 25 ii     +- Is an instruction on the critical path? (was: auto predicating branches)1Anton Ertl
21 Apr 25 ii     `* Re: auto predicating branches39MitchAlsup1
22 Apr 25 ii      `* Re: auto predicating branches38Anton Ertl
22 Apr 25 ii       +- Re: auto predicating branches1MitchAlsup1
22 Apr 25 ii       `* Re: auto predicating branches36Anton Ertl
22 Apr 25 ii        `* Re: auto predicating branches35MitchAlsup1
23 Apr 25 ii         +* Re: auto predicating branches3Stefan Monnier
23 Apr 25 ii         i`* Re: auto predicating branches2Anton Ertl
25 Apr 25 ii         i `- Re: auto predicating branches1MitchAlsup1
23 Apr 25 ii         `* Re: auto predicating branches31Anton Ertl
23 Apr 25 ii          `* Re: auto predicating branches30MitchAlsup1
24 Apr 25 ii           `* Re: asynch register rename29Robert Finch
27 Apr 25 ii            `* Re: fractional PCs28Robert Finch
27 Apr 25 ii             `* Re: fractional PCs27MitchAlsup1
28 Apr 25 ii              `* Re: fractional PCs26Robert Finch
28 Apr 25 ii               +* Re: fractional PCs15MitchAlsup1
29 Apr 25 ii               i`* Re: fractional PCs14Robert Finch
5 May 25 ii               i `* Re: control co-processor13Robert Finch
5 May 25 ii               i  `* Re: control co-processor12Al Kossow
5 May 25 ii               i   `* Re: control co-processor11Stefan Monnier
6 May 25 ii               i    +* Re: control co-processor3MitchAlsup1
7 May 25 ii               i    i+- Re: control co-processor1MitchAlsup1
15 Jul 25 ii               i    i`- Re: control co-processor1MitchAlsup1
7 May 25 ii               i    `* Scan chains (was: control co-processor)7Stefan Monnier
7 May 25 ii               i     +* Re: Scan chains (was: control co-processor)2Al Kossow
7 May 25 ii               i     i`- Re: Scan chains1Stefan Monnier
7 May 25 ii               i     +* Re: Scan chains3MitchAlsup1
7 May 25 ii               i     i`* Re: Scan chains2Stefan Monnier
8 May 25 ii               i     i `- Re: Scan chains1MitchAlsup1
15 Jul 25 ii               i     `- Re: Scan chains1MitchAlsup1
29 Apr 25 ii               `* Re: fractional PCs10Robert Finch
29 Apr 25 ii                `* Re: fractional PCs9MitchAlsup1
30 Apr 25 ii                 `* Re: fractional PCs8Robert Finch
30 Apr 25 ii                  +* Re: fractional PCs6Thomas Koenig
1 May 25 ii                  i+- Re: fractional PCs1Robert Finch
2 May 25 ii                  i`* Re: fractional PCs4moi
2 May 25 ii                  i +* Re: millicode, extracode, fractional PCs2John Levine
2 May 25 ii                  i i`- Re: millicode, extracode, fractional PCs1moi
2 May 25 ii                  i `- Re: fractional PCs1moi
30 Apr 25 ii                  `- Re: fractional PCs1MitchAlsup1
15 Jul 25 i`* Re: register sets5John Savard
15 Jul 25 i `* Re: register sets4MitchAlsup1
19 Jul 25 i  `* Re: register sets3Robert Finch
19 Jul 25 i   `* Re: register sets2Anton Ertl
19 Jul 25 i    `- Re: register sets1MitchAlsup1
15 Jul 25 `* Re: register sets2John Savard
15 Jul 25  `- Re: register sets1MitchAlsup1

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal