NO141104B - Databehandlingssystem med et klokkeapparat og et flertall laasekretser - Google Patents

Databehandlingssystem med et klokkeapparat og et flertall laasekretser Download PDF

Info

Publication number
NO141104B
NO141104B NO416873A NO416873A NO141104B NO 141104 B NO141104 B NO 141104B NO 416873 A NO416873 A NO 416873A NO 416873 A NO416873 A NO 416873A NO 141104 B NO141104 B NO 141104B
Authority
NO
Norway
Prior art keywords
clock
data
delay
maximum
signals
Prior art date
Application number
NO416873A
Other languages
English (en)
Other versions
NO141104C (no
Inventor
Glenn David Grant
Original Assignee
Amdahl Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amdahl Corp filed Critical Amdahl Corp
Publication of NO141104B publication Critical patent/NO141104B/no
Publication of NO141104C publication Critical patent/NO141104C/no

Links

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)
  • Pulse Circuits (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)

Description

Den foreliggende oppfinnelse vedrører et databehandlingssystem
som har et klokkeapparat og har et flertall låsekretser for forplantning av data gjennom databaner og for låsing av data fra databanene under styring av klokkesignaler fra klokkeapparatet hvor nevnte klokkesignaler har en klokkeusymmetri som er lik eller mindre enn en maksimal klokkeusymmetri og nevnte låsekretser låser data innenfor en periode som er mindre enn en maksimal låseforsinkelse.
I databehandlingssystemer er klokken den primære timing-kontroll for mange operasjoner i hele systemet. Tidligere kjente klokkesystemer har generelt vært av kanttriggertypen eller av terskel-triggertypen.
Kanttriggete klokkesystemervirker til å omveksle informasjonen
på den fremre eller bakre kant av klokkepulsene og kalles ofte AC-klokker. Kanttriggete anordninger har imidlertid ikke vist
seg å være fullt tilstrekkelig på grunn av deres støyfølsomhet, dårlig frekvensreaksjon og på grunn av vanskeligheten med å kontrollere den nøyaktige timing av de fremre og bakre kanter. Terskeitriggete klokkesystemer virker til å omveksle informasjon
på DC-nivået av klokkepulsene, og kalles ofte DC-klokker. Terskeitriggete anordninger har det krav at signalet skal være tilstede i en minimumsperiode for at tilstrekkelig energi eksisterer ved inngangen, og således å omveksle nivået av utgangen. Denne minimums periode defineres typisk for omvekslingsfunksjonen med kortest varighet i systemet. Ettersom en låsekrets typisk er den lagrings-funksjon med kortest varighet som utføres i databehandlingssystemet, er tidsperioden, kalt maksimal låseforsinkelse (MLD, maximum latch delay) som er avsatt for omveksling av låser, en parameter som anvendes for å karakterisere klokkeapparatet i databehandlingssystemet. Andre parametre som anvendes er klokkeusymmetri (CS,
clock skew) maksimal databaneforsinkelse (Dmax) og minimal databaneforsinkelse (Dmin).
Den maksimale låseforsinkelsen (MUD), for hvilken en klokkepuls må inntreffe, er definert som pulsbredden av, dvs. tidsforldpet mellom den fremre og bakre kant av, et klokkesignal som er tilstrekkelig til å bevirke en låsekrets, eller dens ekvivalent, til å motta et innmatningsdatasignal for å lagre det datasignalet og å gi et pålitelig, reagerende utgangsdatasignal.
Klokkeusymmetri defineres som den maksimale forskjell mellom de fremre kanter av hvilke som helst to klokkepulser som definerer den samme syklus i systemet, slik de måles ved inngangen til låser, eller deres ekvivalenter, hvor som helst i systemet. Klokkeusymmetri stammer fra variasjoner i elektriske parametre
i de forskjellige baner som er tilknyttet leveringen av klokkepulsene i hele systemet.
Den maksimale databaneforsinkelse (Dmax) defineres som den maksimale periode som en databane kan anvende for å gi et reagerende utgangsdatasignal etter at et inngangsdatasignal styres inn i databanen. Den minimale databaneforsinkelse (Dmin) defineres som den minimale periode som en databane må anvende for å gi et reagerende utgangssignal etter at et inngangsdatasignal styres inn i databanen. De maksimale og minimale databaneforsinkelsene kontrolleres, i en betydelig grad, av antallet logiske nivåer, ved variasjonene i kretsparametre innenfor hvert logisk nivå,
og av den fysiske rekke av databaner.
For å minske antallet kretser som kreves i databehandlingssystemer, kan klokkesystemer konstrueres med klokkesignaler som har en pulsbredde lik den maksimale låseforsinkelse. Systemet krever at den minimale databaneforsinkelse (Dmin) innbefatter en forsinkelse som er minst lik klokkeusymmetrien. Hvis en databane mangler inkludering av en slik forsinkelse, vil dette typisk resultere i "race"-tilstander innenfor en klokkepulsperiode, hvorved data blir til tider feilaktig styrt gjennom to for en klokkepuls. Selv om visse tidligere kjente hoyhastighetsklokke-systemer har vært effektive til å redusere kretsomkostninger ved hjelp av klokkesystemkonstruksjon, har de ofte gjort dette på bekostning av ikke å oppnå maksimal klokkefrekvens og derfor maksimal yteevne. Den foreliggende oppfinnelse optimaliserer både omkostningene og yteevnen ved riktig valg av klokkepulsbredden.
Det innledningsvis nevnte databehandlingssystem kjennetegnes ifølge oppfinnelsen ved at klokkeapparatet genererer klokkesignaler med frekvens f for å definere, en syklustid lik l/f og at databanene har forsinkelser som er mindre enn en maksimal databane-forsinkelse og større enn en minimum databane-forsinkelse idet nevnte klokkeapparat genererer nevnte klokkesignal med en pulsbredde som overstiger maksimal låseforsinkelse, hvor summen av klokkepulsbredden og klokkeusymmetrien er mindre enn minimum databane-forsinkelse og med syklustid større enn maksimal databane-f orsinkelse . Ifølge ytterligere trekk ved databehandlingssystemet genererer klokkeapparatet nevnte klokkesignaler med pulsbredden større enn eller lik maksimal låseforsinkelse pluss klokkeusymmetri. Klokkeapparatet innbefatter en firkantbølge-generator for generering av et firkantbølgesignal, en første bane for mottagelse av nevnte firkantbølgesignal, en andre bane for mottagelse av nevnte firkantbølgesignal, hvor nevnte andre bane har større forsinkelse enn nevnte første bane pg apparat
for logisk å kombinere utmatningene fra nevnte første og andre baner for generering av nevnte klokkesignaler som rektangulære bølgesignaler med nevnte pulsbredde større enn nevnte maksimale låseforsinkelse og innbefattende i det minste en del av klokkeusymmetrien. Nevnte andre bane kan innbefatte et flertall logiske porter idet nevnte apparat for logisk kombinering ut-gjøres av en logisk port. De innledningsvis nevnte låsekretser er terskeltriggede anordninger, og kan videre ha bistabile utmatninger som en funksjon av terskelnivåene av datainngangs-signaler og klokkesignaler.
Ytterligere formål og trekk ved oppfinnelsen vil fremgå av be-skrivelsen, og de foretrukkede utfdreiser av oppfinnelsen er blitt angitt i detalj i forbindelse med tegningene. Fig. 1 viser et blokkdiagram av et databehandlingssystem som anvender klokkeapparatet i den foreliggende oppfinnelse. Fig. 2 viser databanene som er tilknyttet en adderer med utforelsesenheten i systemet i fig. 1 og måten på hvilken klokkeapparatet gir timing for data som sendes gjennom addereren. Fig. 3 viser ytterligere detaljer tilknyttet data- og klokke-banene i addereren i fig. 2. Fig. 4 viser en grafisk representasjon av forholdet mellom frekvensen for databehandlingssystemet og klokkepulsbredden. Fig. 5 viser representative bolgeformer som beskriver operasjonene i klokkesystemet i fig. 3. Fig. 6 viser et klokkeapparat for å generere klokkesignaler i overensstemmelse med den foreliggende oppfinnelse. Fig. 7 viser bolgeformer som er representative for operasjonen i klokkeapparatet i fig. 6.
Databehandlingssystemet som er vist i fig. 1, er hensiktsmessig for anvendelse av addereren og metoden i den foreliggende oppfinnelse. I korte trekk innbefatter dette system et hovedlager 2, en lagerkontrollenhet 4, en instruksjonsenhet 8, en utfdrelses-enhet 10, en kanalenhet 6 med tilhbrende inngang/utgang I/O, og en konsoll 12. I overensstemmelse med velkjente prinsipper opererer databehandlingssystemet i fig. 1 under kontroll av et lagret program med instruksjoner. Instruksjonene og dataene,på grunnlag av hvilke- instruksjonene opererer, innfores fra I/O-utstyret via kanalenheten 6 gjennom lagerkontrollenheten 4 inn i hovedlagret 2. Fra hovedlagret 2, hentes instruksjonene av instruksjons-enheten 8 gjennom lagerkontrollen 4, og dekodes for således å kontrollere utforelsen innenfor utforelsesenheten IO. Utforelsesenheten 10 utforer instruksjonene som er dekodet i instruk-sjonsenheten 8 og opererer på grunnlag av data som er tilfort utforelsesenheten fra tilborlige steder i systemet.
Utforelsesenheten 10 innbefatter en adderer for utfdreise av visse instruksjoner i systemet i fig. 1, spesielt instruksjoner som krever tillegg av operander i overensstemmelse med regler for eksponentaritmetikk. Ved hjelp av generell bakgrunn og for spesielle detaljer vedrorende operasjonen av systemet i fig. 1, skal det henvises til norsk patentansokning 4167/73.
I fig. 2 er de grunnleggende databanene, innenfor utforelsesenheten 10, vist, hvilke er tilknyttet addereren 32 i den foreliggende oppfinnelse. I korte trekk tilfores data som skal adderes til addereren 32 gjennom LUCK 20 til lH-registret 24 og 2H-regi st ret 25.
Mens 1H-regi st ret 24 og 2H-regi st ret 25 hver er 32 bits brede-, merket 0 t.o.m. 31 i fig. 2, adderes kun en halv byte som omfat-ter 4 bits i forbindelse med et representativt eksempel av den foreliggende oppfinnelse. Nærmere bestemt lagrer 1H- og 2H-re-gistrene hver ett ord, lik fire 8-bit bytes med data. Kun en av de fire bytes i hvert register er beskrevet i forbindelse med den foreliggende oppfinnelsen. Operanden A lagres i 1H-registret 24 i bitposisjonene 4 t.o.m. 7, som gir innmatninger a4 t.o.m.
a7. På tilsvarende måte lagres operanden B i 2H-registret 25
1 bitposisjonene 4 t.o.m. 7, hvilket gir innmatningene b4 t.o.m. b7. På et riktig tidspunkt i syklusen i databehandlingssystemet ifolge fig. 1, styres operandene A og B til addereren 32 i fig.
2 og forskjellen A-B fremkommer på 4-bitutmatningslinjen 99
mens forskjellen B-A fremkommer på 4-bitutmatningslinjen 98'.
På et riktig tidspunkt innenfor databehandlingssystemsyklusen inntreffer det en bestemmelse av hvorvidt operanden A er storre enn operanden B eller vice versa. Når den bestemmelsen er gjort, velger et signal på linjen 92 den riktige linjen av utgangslinjene 98 eller 99 for innstyring av den valgte forskjell inn i SAR-registret 38 for ytterligere bruk av systemet i fig. 1. Signalet på linjen 92 fås, i en utforelse, fra LUCK-enheten 20 som utforer logiske sammenlikninger. Alternativt kan linjen 92 utledes fra bits med hbyere orden i addereren 32 når de anvendes.
Utforelsesenheten 10 innbefatter også en skifter for å skifte mantissedelene av operandene A og B som reaksjon på den valgte forskjellen A-B eller B-A ved utforelsen av eksponentaritmetisk innretting.
I fig. 2 består addereren 32 av fem logiske nivåer I t.o.m. V
og er av menteoverforingstypen (carry propagate type). Nivå I-
logikkenheten danner pluss-og minusfåsene for inngangssignalene. Bitforplantnings- og bitgenereringssignalene og gruppeforplant-nings- og gruppegenereringssignalene lages i nivå II-logikkenheten. I nivå III-logikkenheten blir signalene fra det andre nivået logisk kombinert til å danne halvsumsignaler og gruppementesig-naler. I nivå IV-logikkenheten frembringes de fulle summer fra signalene fra nivå III-logikkenheten. Nivå V-logikkenheten er et effektnivå for A - B-forskjellen og et effektnivå og inver-terer for B - A-forskjellen.
I fig. 2 fremkommer datasignal DA-innmatningen på lH-registret
24 en kort tid etter klokkesignalet Cl, og blir på reagerende måte låst i 1H-registret 24 av klokkesignalet Cl, for å gi utgangsdatasignal et DB. DB-datasignalet fra 1H-registret 24 gis som en innmatning på en linje 55 til addereren 32, hvor det forplantes gjennom de fem nivåene av logikkenhetene I t.o.m.V. Etter å ha gjennomgått databaneforsinkelsen, X, som stammer fra for-plantningen gjennom de.fem nivåene i addereren 32, gir datasignalet DB et utgangsdatasignal DC på utgangslinjen 98, og datasignalet DC låses i SAR-registret 38 ved hjelp av klokkesignalet C2. Datasignalet DC som er låst i registret 38 av klokkesignalet C2, etablerer et datasignal DD som utmatning fra registret 38. Klokkesignalene Cl og C2, som bevirker datasignalene til å bli låst, fås fra systemklokken 102.
I fig. 3 er et trinn av lH-registret 24 vist som lås 124. På tilsvarende måte er et trinn av registret 38 vist som lås 138. Låsen 124 har en inngang med datasignalet DA og gir en utmatning med datasignalet DB.
Låsen 124 innbefatter ELLER/IKKE-ELLER-portene 151 t.o.m. 154
som opererer for å gi låsefunksjonen. DB-utgangssignalet for-bindes som en inngang til de fem trinnene i logikkenheten 132,
som er en del av addereren 32 i fig. 2. Trinnene 132 representerer hvilke som helst fem logiske nivåer gjennom hvilke signalet DB forplanter seg ved dannelsen av utgangsdatasignalet DC.
Utgangsdatasignalet DC er koblet som inngang til låsen 138 som
er identisk med låsen 124, hvor korresponderende ELLER/IKKE-ELLER-porter er indikert med korresponderende, merkede referansetall. Utgangen fra låsporten 138 er datasignalet DD.
I fig. 6 er klokkeapparatet ifolge foreliggende oppfinnelse vist
i forbindelse med en representativ del av databehandlingssystemet. I klokkeapparatet er firkantbolgegeneratoren 104 en konvensjonell anordning for generering av firkantbolger og innbefatter typisk en oscillator og formingskretser for å gjore utmatningen fra oscillatoren firkantet. Generatoren 104 gir et firkantbolgeut-gangssignal som har en frekvens F som er typisk lik 50 MHz og som derfor definerer en system syklustid CT lik 20 nanosekunder. Utgangen fra generatoren 104 er inngang til et flertall IKKE-ELLER-porter 115, 115" og 115'' som sammen danner en multiskivebærer-(MCC, multichip carrier) fordelingskrets 107. Hver av portene 115 mater en separat krets av multiskivebærerkretsen 111, 111<*> og 111'<1> respektivt, og spesielt IKKE-ELLER-portene 116, 116' og 116' 1 respektivt . Med skive forstås her det engelske uttrykket "chip" i forbindelse med integrerte kretser.
IKKE-ELLER-portene 116 mottar hver som sin andre innmatning blok-keringslinjene 118, 118' og 118'<1>, som funksjonerer til å blok-kere klokkesignalet til alle deler av den respektive MCC-krets. Utgangene fra IKKE-ELLER-portene 116 tilfores direkte til ELLER-portene 120 og også til en forsinkelseslinje på fire ELLER/IKKE-ELLER-porter 122 som i sin tur er forbundet som en andre inngang til IKKE-ELLER-portene 120. Portene 122 og portene 120 funksjonerer til å modifisere funksjonssyklusen for bolgeformut-gangen fra portene 116. Firkantbdlgeutgangen fra ELLER-portene 116 modifiseres til en rektangulær bdlgeutgang fra portene 120. Pulsbredden for signalene fra portene 120 velges, i overensstemmelse med en utfdrelse av den foreliggende oppfinnelse, til å være lik klokkeusymmetrien pluss den maksimale låseforsinkelse. Ved forandring av antallet porter i linjen av porter 122, for-andres pulsbredden for klokkesignalene likeledes.
Utgangssighalene fra portene 120, 120' og 120' ' er klokkesignalene CC1, CC2 og CC3, respektivt, hvilke mater fordelerne 123, 123'
og 123'', respektivt. Hver av fordelerne 123 innbefatter typisk et flertall ELLER/IKKE-ELLER-porter som er lik de i fordelings-kretsen 107. De elektriske karakteristikker for hver av krets-banene som genererer klokkesignalene CCl, CC2 og CC3, kan avvike på grunnlag av den normale toleranse som er tilknyttet hdyhastig-hetshalvlederteknologi. Videre kan forsinkelsesforskjeller med
hensikt innfores ved valg av den fysiske lengde som signalene må gå i fordelerne 123. Ved riktig justering og utproving av dis-tribusjons- eller fordelingskretsene 123, kan hvert av klokkesignalene bli finavstemt for å etablere det onskede timingforhold og derved sikre at maksimal usymmetri CS mellom hvilke som helst to klokkesignaler ikke overstiges.
I fig. 7 er bolgeformen 104 representativ for utgangen fra firkantbolgegeneratoren 104 og har en klokkeperiode som definerer syklustiden CT for databehandlingssystemet. Syklustiden CT er lik l/F, hvor F er frekvensen for oscillatoren i firkantbolgegeneratoren 104. I fig. 7 har firkantbolgen 104 en positivtgående overgang ved -ti fulgt av en negativtgående overgang ved t9, fulgt igjen av en positivtgående overgang ved tl9. Bolgeformen 104 inverteres og forsinkes i portene 115 og blir ytterligere forsinket i portene 116. Hver av portene 115 og 116 har typisk en forsinkelse lik en enhet av t slik at den kombinerte forsinkelse for portene 115 og 116 er to enheter av t. Bolgeformen 116 i fig. 7 er den inverse av bolgeformen 104 forsinket med to enheter av t. Folgelig har bolgeformen 116 en negativtgående overgang ved ti, fulgt av en positivtgående overgang ved til og igjen fulgt av en negativtgående overgang ved t21. Bolgeformen 116 er også en firkantbolgepuls. Bolgeformen 116 er innmatningen til rekken eller linjen av porter 122 som funksjonerer til å inver-tere og forsinke bolgeformen 116 med fire enheter av t for å gi bolgeformen 122. Bolgeformen 122 har en positivtgående overgang ved t5, en negativtgående overgang ved tl5 og en positivtgående overgang ved t25.
ELLER-portene 120 funksjonerer til logisk å kombinere bolgeformene 116 og den forsinkede og inverterte bolgeform 122 for å gi klokkesignalene 120 som har den onskede pulsbredde. Bolgeformen 120 er den logiske ELLER-funksjon av bolgeformene 116 og 122 forsinket med en enhet av t, som er den nominelle forsinkelse for portene 120. Folgelig har bolgeformen 120 en negativtgående overgang ved t2 som er en enhet av t etter den negativtgående overgang av bolgeformen 116 ved ti. På tilsvarende måte har bolgeformen 120 en positivtgående overgang ved t6 som er en enhet av t etter den positivtgående overgang av bolgeformen 122 ved t5. Den negativtgående puls av bolgeformen 120 mellom t2 og t6 definerer en forste klokkepuls og en forste syklus i databehandlingssystemet,og den negativtgående puls mellom t22 og t26 definerer den neste syklus av databehandlingssystemet.
Selv om det er hensikten at bolgeformen 120 i fig. 7, som representerer utgangen fra porten 120 i fig. 6, også representerer utgangen fra porten 120' i fig. 6, vil forskjeller i elektriske parametre for de forskjellige kretsene i fig. 6 normalt gi bolgeformer som er usymmetriske relativt til hverandre. Som tidligere indikert, innbefatter fordelingskretsene 123, 123' og 123'' midler for å justere usymmetrien for å sikre at klokkesignalene Cl, C2
og C3 alle er representert ved bolgeformen 120 i fig. 7 innenfor grensene av den maksimale usymmetri som vil bli beskrevet i ytterligere detalj i forbindelse med bolgeformene i fig. 5.
I fig. 5 funksjonerer klokkesignalene Cl og C2, som fås fra klokkeapparatet i fig. 6, til å kontrollere overforingen av data-innmatningen til låsen 124 gjennom byteaddererdatabanen 132 inn i låsen 138. Klokkesignalet Cl låser inngangsdatasignalet DA
for å danne utgangsdatasignalet DB som i sin tur forplantes gjennom databanen 132 for å danne datasignalet DC som låses av klokkesignalet C2 for å danne utgangsdatasignalet DD.
I fig. 7 har klokkesignalet Cl en fremre kant ved t2 og en bakre kant ved t6. Klokkeperioden CT er lik l/F, hvor den fremre kanten av den andre klokkepulsen ved t22 fremkommer 20 enheter av t borte fra den forste fremre kant ved t2. På tilsvarende måte fremkommer den bakre kanten av den andre klokkepulsen ved t26, som er 20 enheter av t fra den forste klokkepulsens bakre kant ved t6.
Datasignalet DA går fra 0 til 1 ved t2+ en viss tid etter den fremre kanten av klokkesignalet Cl ved t2 og forut for t3. Med datasignalet DA på 1-nivået, og med klokkesignalet Cl på 0, forplantes 1-nivået av DA-signalet gjennom for å gi datasignalet DB ved tidspunktet t4+. Låseforsinkelsen LD er tiden mellom overgangen av datasignalet DA ved t2+ og overgangen av datasignalet DB ved t4+. Låseforsinkelsen LD er en funksjon av omvekslingstiden for IKKE-ELLER-portene 151 t.o.m. 154.
Låsen 124 opererer på en konvensjonell måte. O-inngangen til porten 151 gir en 1-innmatning til porten 152 og en O-innmatning til porten 154. O-innmatningen til porten 154 kombinert med 1'eren av datasignalet DA gir en O-utmatning fra porten 154. O-utmatningen fra porten 154 kombineres med O-utmatningen fra porten 152 til å gi en 1-utmatning fra porten 153. De to 1-innmatningene til porten 152, som fås fra porten 153 og porten 151, etablerer O-utmatningen fra porten 152. Når klokkesignalet Cl går til 0 ved t6, reverseres utmatningene fra porten 151, hvilket gir en 1-innmatning til porten 154.
Når klokkesignalet Cl går fra O til 1 ved t6, gir porten 151
en 0 til porten 152 og en 1 til porten 154. Porten 154 opprettholder sin O-utmatning på grunn av 1-nivået av datasignalet DA. Porten 152 opprettholder sin O-utmatning på grunn av låsetilbake-koblingen fra porten 153 til porten 152. Porten 152 opprettholder sin O-utmatning selv når datasignalet DA forandrer nivå fra 1
til 0 som vist ved et tilfeldig tidspunkt t22+. Etter t22+ forandrer porten 154 ikke sin utmatning fra en 0 til en 1 på grunn av 1-innmatningen fra porten 151. Etter tidspunktet t22 går klokkesignalet Cl fra en 1 til en 0, og omveksler derved utmatningen av porten 151 og innmatningen til porten 154 til en 0,
og gir således en 1-utmatning fra porten 154. 1-utmatningen fra porten 154 kombinert med O-utmatningen fra porten 152 gir en O-utmatning fra porten 153 som registrerer forandringen i datasignalet DB ved t24+.
Datasignalet DB som har en O-til 1-overgang ved t4+, forplanter seg gjennom databanen 132. Databanen 132 har en databaneforsinkelse X på ca. 19 enheter av t. Datasignalet DC har en 0- til 1-overgang ved t23 som er datasignalinngangen til låsen 138.
På grunn av at klokkesignalet C2 har en 1- til O-overgang ved t22 og var derfor en 0 når datasignalet DC gikk positivt ved t23, funksjonerer låsen 138 til øyeblikkelig å låse datasignalet DC og bevirke en O- til 1-overgang i utgangsdatasignalet DD ved tidspunktet t24+. Låsingen av datasignalet DC for å etablere datasignalet DD er analogt med låsingen av datasignalet DA for å etablere datasignalet DB. Perioden mellom t23 og låsingen av datasignalet DD ved t24+ er låseforsinkelsen for låsen 138. Låseforsinkelsene for låsene 124 og 138 er variabler som stammer fra variasjoner i de elektriske parametre av systemet som tidligere omtalt. Generelt er låseforsinkelsen LD for enhver lås innenfor databehandlingssystemet, av hvilket låsene 124 og 138 er typiske, konstruert til ikke å overstige en verdi som er definert som maksimumslåseforsinkelse (MLD).
Databaneforsinkelsen X for databanen 132 er også en variabel av de samme grunner som låseforsinkelsene er variabler. Databaneforsinkelsen X er konstruert til å være mindre enn en maksimums-databaneforsinkelse Dmax og storre enn en minimumsdatabanefor-sinkelse Dmin.
For å unngå en dobbelforplantning av data gjennom en lås og en databane under en enkelt klokkepuls, må den minimale databane-forsinkelse Dmin overstige klokkepulsbredden, CPW, pluss klokkeusymmetrien, CS. For også å sikre at data kan overfores gjennom en forste lås ved hjelp av en forste klokkepuls nedover en databane og låses i en andre lås ved hjelp av den neste puls, må den maksimale databaneforsinkelse Dmax være mindre enn klokkeperioden CT hvis CPW ^ > MLD + CS, ellers er Dmax CT - CS, hvor CT er syklustiden.
Ved konstruering og fremstilling av databehandlingssystemet anvendes teknikker for å sikre at hver lås i systemet er opererbar med en forsinkelse som ikke overstiger den maksimale låse forsinkelse MLD. På tilsvarende måte er hver av databanene konstruert til å ha en forsinkelse som overstiger den minimale data-banef orsinkelse Dmin og som ikke overstiger den maksimale data-banef orsinkelse Dmax. En betydelig faktor som kontrollerer databaneforsinkelsen,er antallet av logiske nivåer i databanen. For å tilfredsstille kravet til at den minimale databaneforsinkelse Dmin overstiger den maksimale låseforsinkelse MLD, blir ofte ytterligere kretser tilfbyet ene og alene i den hensikt å tilfoye ytterligere forsinkelse til databanen. Mens denne til-foyelse av kretser tilfredsstiller kravet til minimal forsinkelse, oker dette tillegg ved okning av antallet kretser også kostnadene for databehandlingssystemet. Relativt lange perioder av forsinkelse kan etableres mellom to klokkepulser ved låsekretser som låses ved tidlige eller sene klokkepulser som er ute av fase med hovedklokkepulsen Cl og C2, som opererer for å kontrollere overforing av data.
I omtalen av fig. 5 ovenfor ble det antatt at klokkesignalene Cl og C2 var i fase og at derfor kretsparametrene fra hoved-klokkesignalene som ble beskrevet i forbindelse med fig. 6 og 7, var i fase og hadde ingen usymmetri.
Med henvisning til fig. 7, er klokkesignalet Cl', som er påtrykket Cl-terminalen i fig. 3, gjort usymmetrisk relativt til klokkesignalet C2, som er påtrykket C2-terminalen i fig. 3. Klokkesignalet Cl<1> har en negativtgående overgang ved t4 som er 2 enheter av t senere enn klokkesignalet Cl. I forklarende henseende har usymmetrien mellom klokkesignalet Cl og klokkesignalet Cl1 blitt valgt som den maksimale verdi CS. Klokkeusymmetrien kontrolleres innenfor databehandlingssystemet for å sikre at ingen av to klokkesignaler som måles ved inngangen til låsene, eller ekvivalente punkter i systemet, separeres med en verdi storre enn den maksimale klokkeusymmetri CS.
For det samme inngangsdatasignalet DA har klokkesignalet Cl1 en overgang ved t4 som bevirker datasignalet DB' til å bli låst til en 1 ved t6. I dette eksempel antas databaneforsinkelsen X å være den samme som i det tidligere eksempel slik at datasignal- DC' overgangen inntreffer ved t24+. Klokkesignalet C2 bevirker deretter datasignalet DB' til å bli låst ved t26.
Pulsbredden for hvert av klokkesignalene Cl, Cl' og C2 er lik ca. 4 enheter av t. Den maksimale klokkeusymmetri CS og den maksimale låseforsinkelse MLD er også hver lik ca. 2 enheter av t. Under disse typiske tilstander ble datasignalet DA på riktig måte låst og forplantet til å danne utgangsdatasignalene DD og DD<1> uten eller med usymmetri, respektivt. Det skal bemerkes at i begge av disse eksempler var klokkepulsbredden CPW i alt vesentlig lik den maksimale låseforsinkelse MLD pluss den maksimale klokkeusymmetri CS.
I et tredje eksempel, fremdeles under henvisning til fig. 5, antas klokkesignalene Cl<1>' og C2'■ å ha den samme periode CT som i de tidligere to eksempler, men antas å ha en pulsbredde som er lik den maksimale låseforsinkelse MLD, som i de gitte eksempler er ca. 2 enheter av t. Nærmere bestemt har klokkesignalet Cl<1>' en negativtgående overgang ved t3 og en positivtgående overgang ved t5. For det samme inngangsdatasignal DA som tidligere, låses datasignalet DB'' ved t5.
Datasignalet DB'<1>, som er låst ved t5, forplanter seg gjennom
den samme databaneforsinkelse for å danne overgangen i datasignalet DC<11> ved t23+. Klokkesignalet C2' 1 har den samme begynnel-sesovergang ved t2 som det forste klokkesignalet C2, men er kun 2 enheter av t langt, slik at det termineres ved t24. Ettersom datasignalet DC'<1> har en overgang ved t23+, er varigheten fra t23+ til t24 ikke lik den maksimale låseforsinkelse MLD, slik at det ikke kan garanteres at hver lås i databehandlingssystemet er i stand til å låse datasignalet DC''. Folgelig er datasignalet DD'<1> vist med en begynnende ekskursjon mot låsing ved t23+, men det er en mangel på låsing som indikert ved signalet etter t24+.
Klokkesignalene Cl'' og C2<1>' er gjort usymmetriske i den maksimale grad CS som er tillatelig innenfor databehandlingssystemet.
Under disse tilstander blir datainngangssignalet DA ikke tilstrekkelig låst og forplantet til å danne det onskede låste nivå i utgangsdatasignalet DD''. For å sikre at utgangsdatasignalet DD1 1 blir tilstrekkelig låst etter t25+, mens det fremdeles beholder en klokkepulsbredde på ca. 2 enheter av t (som er lik den maksimale låseforsinkelse MLD , må klokkeperioden CT okes slik at den fremre kant av klokkesignalet C2' 1 inntreffer på et senere tidspunkt, f.eks. en viss tid etter t24. En okning i klokkeperioden CT bevirker imidlertid en minskning i frekvensen F for klokkepulsen som minsker derved operasjonsfrekvensen for databehandlingssystemet. Å operere databehandlingssystemet på en lavere frekvens degraderer på uonsket måte yteevnen for databehandlingssystemet.
Selv om valget av klokkepulsbredde i det dobbeltmerkede eksempel er ugunstig på grunn av at det krever minskning av klokkefrekven-sen, er det tjenlig på grunn av at det tillater den minimale data-banef orsinkelse Dmin å være av kortere varighet.
Som tidligere omtalt, må den minimale databaneforsinkelse overstige klokkepulsbredden slik at dess smalere pulsbredde, dess lavere verdi av minimal databaneforsinkelse som er mulig. Ettersom en kortere minimumsbaneforsinkelse kan unngå eller redusere behovet for kretser som tilfoyes stort sett bare i den hensikt å introdusere forsinkelse, har innsnevringen av klokkepulsbredden en tendens til å redusere antall kretser i databehandlingssystemet.
I fig. 4 er det vist et diagram som representerer forholdet mellom operasjonsfrekvensen F for databehandlingssystemet versus klokkepulsbredden CPW. Jo hbyere frekvens, dess storre er system-yteevnen. Jo storre klokkepulsbredde, dess hbyere minimal databaneforsinkelse som generelt oker antallet kretser og derfor systemkostnaden. Diagrammet starter med en klokkepulsbredde som er lik den maksimale låseforsinkelse MLD ettersom systemet for pulsbredder som er smalere enn dette, ikke vil operere riktig på grunn av "race"-tilstander og dobbelstyring av data. Den maksimale tillatte frekvens for databehandlingssystemet oker opptil et punkt hvor pulsbredden er lik den maksimale låseforsinkelse pluss den maksimale klokkeusymmetri, MLD + CS. En bkning i pulsbredden forbi MLD + CS-verdien gir ikke en ledsagende bkning i frekvens, mens det er en bkning i den minimale databaneforsinkelse Dmin. Hvis klokkepulsbredden, i overensstemmelse med den foreliggende oppfinnelse, velges i alt vesentlig lik MSD + CS, kan databehandlingssystemet opereres på den maksimale frekvensen med det færreste antall kretser. Operering av databehandlingssystemet med en pulsbredde som er storre enn den maksimale låseforsinkelse MLD, men mindre enn MLD + CS, har også en fordel i bkning av den maksimale tillatte frekvens for operering av databehandlingssystemet, hvilket selvfølgelig er formålstjenlig. Videre vil operering av databehandlingssystemet med en pulsbredde i overkant av verdien MLD + CS sikre at maskinen alltid kan opereres på den maksimale frekvensen. Operering av databehandlingssystemet f.eks. med en klokkepulsbredde CPW som er 10% storre enn MLD + CS, gir et 10% sikkerhetsområde som sikrer at databehandlingssystemet ikke vil operere lavere enn den maksimalt tillatte frekvens.
Selv om oppfinnelsen er blitt spesielt vist og beskrevet med henvisning til foretrukkede utforelser av oppfinnelsen vil det forstås av eksperter at det foregående og andre forandringer i form og detaljer kan foretas uten at man avviker fra oppfinnelsens idé og omfang.

Claims (6)

1. Databehandlingssystem som har et klokkeapparat (102) og har et flertall låsekretser (124, 138) for forplantning av data gjennom databaner (132) og for låsing av data fra databanene under styring av klokkesignaler fra klokkeapparatet (102), hvor nevnte klokkesignaler har en klokkeusymmetri som er lik eller mindre enn en maksimal klokkeusymmetri (CS) og nevnte låsekretser (124, 13 8) låser data innenfor en periode som er mindre enn en maksimal låseforsinkelse (MLD), karakterisert ved at klokkeapparatet (102) genererer klokkesignaler med frekvens f for å definere en syklustid (CT) lik l/f og at databanene (132) har forsinkelser som er mindre enn en maksimal databane-forsinkelse (Dmax) og større enn en minimum databane-forsinkelse (Dmin), idet nevnte klokkeapparat (102) genererer nevnte klokkesignal med en pulsbredde (CPW) som overstiger maksimal låseforsinkelse (MLD), hvor summen av klokkepulsbredden (CPW) og klokkeusymmetrien (CS) er mindre enn minimum databane-forsinkelse (Dmin), og med syklustid (CT) større enn maksimal databane-forsinkelse (Dmax).
2. System som angitt i krav 1, karakterisert ved at klokkeapparatet (102)" genererer nevnte klokkesignaler med pulsbredden (CPW) større enn eller lik maksimal låseforsinkelse pluss klokkeusymmetri (CS).
3. System som angitt i krav 2, karakterisert ved at klokkeapparatet (102) innbefatter en firkantbølge-generator (104) for generering av et firkantbølgesignal, en første bane (116-120) for mottagelse av nevnte firkantbølge-signal, en andre bane (122) for mottagelse av nevnte firkant-bølgesignal, hvor nevnte andre bane har større forsinkelse enn nevnte første bane, og apparat (120) for logisk å kombinere utmatningene fra nevnte første og andre baner for generering av nevnte klokkesignaler som rektangulære bølgesignaler med nevnte pulsbredde større enn nevnte maksimale låseforsinkelse og innbefattende i det minste en del av klokkeusymmetrien.
4. System som angitt i krav 3, karakterisert ved at nevnte andre bane (122) innbefatter et flertall logiske porter (122) og at nevnte apparat for logisk kombinering er en logisk port (120).
5. System som angitt i krav 1, karakterisert ved at nevnte låsekretser (124, 138) er terskeltriggede anordninger.
6. System som angitt i krav 5, karakterisert ved at nevnte låsekretser (124, 138) har bistabile utmatninger som en funksjon av terskelnivåene av datainngangs-signaler og klokkesignaler.
NO416873A 1972-10-30 1973-10-29 Databehandlingssystem med et klokkeapparat og et flertall laasekretser NO141104C (no)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US30222272A 1972-10-30 1972-10-30

Publications (2)

Publication Number Publication Date
NO141104B true NO141104B (no) 1979-10-01
NO141104C NO141104C (no) 1980-01-09

Family

ID=23166826

Family Applications (1)

Application Number Title Priority Date Filing Date
NO416873A NO141104C (no) 1972-10-30 1973-10-29 Databehandlingssystem med et klokkeapparat og et flertall laasekretser

Country Status (4)

Country Link
BR (1) BR7308403D0 (no)
DK (1) DK144546C (no)
ES (1) ES420348A1 (no)
NO (1) NO141104C (no)

Also Published As

Publication number Publication date
ES420348A1 (es) 1976-06-16
BR7308403D0 (pt) 1974-08-29
NO141104C (no) 1980-01-09
DK144546C (da) 1982-08-23
DK144546B (da) 1982-03-22

Similar Documents

Publication Publication Date Title
US3792362A (en) Clock apparatus and data processing system
US4682303A (en) Parallel binary adder
US4639886A (en) Arithmetic system having pipeline structure arithmetic means
US4525797A (en) N-bit carry select adder circuit having only one full adder per bit
KR101110819B1 (ko) 반도체 메모리의 동작 타이밍 제어 장치 및 그 방법
JPH0431451B2 (no)
KR101125018B1 (ko) 디지털 지연셀 및 이를 구비하는 지연 라인 회로
US20080054952A1 (en) Circuit for switching between two clock signals independently of the frequency of the clock signals
US3465133A (en) Carry or borrow system for arithmetic computations
US4719589A (en) Floating-point adder circuit
US2765115A (en) Arithmetic adders
US4760550A (en) Saving cycles in floating point division
US6550013B1 (en) Memory clock generator and method therefor
US4065666A (en) Multiply-divide unit
US4503512A (en) Cellular division circuit
CN112953530B (zh) 除频器电路
JPH04270415A (ja) 高性能加算器
US6711696B1 (en) Method for transfering data between two different clock domains by calculating which pulses of the faster clock domain should be skipped substantially simultaneously with the transfer
US6633995B1 (en) System for generating N pipeline control signals by delaying at least one control signal corresponding to a subsequent data path circuit
US20090150709A1 (en) Reducing Inefficiencies of Multi-Clock-Domain Interfaces Using a Modified Latch Bank
JPH0346024A (ja) 浮動小数点演算器
US4481575A (en) Arrangement in a data processing system to reduce the cycle time
US4741005A (en) Counter circuit having flip-flops for synchronizing carry signals between stages
US3371195A (en) Parallel binary adder using trans-mission lines for carry handling
US6175257B1 (en) Integrated circuit comprising a master circuit working at a first frequency to control slave circuits working at a second frequency