SE437581B - Databuffertminne - Google Patents
DatabuffertminneInfo
- Publication number
- SE437581B SE437581B SE7812716A SE7812716A SE437581B SE 437581 B SE437581 B SE 437581B SE 7812716 A SE7812716 A SE 7812716A SE 7812716 A SE7812716 A SE 7812716A SE 437581 B SE437581 B SE 437581B
- Authority
- SE
- Sweden
- Prior art keywords
- memory
- register
- signal
- data
- input
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
Description
._-__._.___.._.___._..__._.____...__._.__ ___.._:..______._,___._
7812716-4d v 2
föring från en ingång till en utgångsfl lšuffeirtanordningar av
denna art är kända genom brittiska patentskriften 1 479 774.:
lien ett huvudproblem, som uppkommer vid buffertanordningar av
denna art, ligger däri, att styrningen blir alltmer komplicerad,
ísynnerhet med hänsyn till buffertminnen, som omfattar ett stort
antal sektioner. Härvid erfordras räknare med hög räkneförmåga
och väl utvecklade avkodnings- och väljarnät för ingångar-na och
utgångarna, som skall anvisas. Dessutom är hopfogning av ett
stort antal små minnen för bildande av ett större minne ej möj-
lig utan ytterligare komplikationer.
Medan behovet ökar av kretsar och anordningar, som är
lämpliga för framställning enligt integrerad halvledarteknik, 7
växer intresset kraftigt för utformning av dessa buffertminnen
på sådant sätt, att i huvudsak upprepad karaktär erhålles. .Vi-
dare förbättras möjligheterna generellt att hopfoga ett flertal
minnen, utan att särskilda komplikationer uppstår. Ett buffert-
minne av denna art, som dessutom ej heller beröres av problemet
med långa fördröjningstider av ovan angiven art, är känt genom
amerikanska patentskriften 5 646 526. I denna patentskrift be-
skrives ett buffertminne av denna typ, omfattande en variabel in-
gång och en fast utgång, varvid en markeringsbit indikerar det
ställe, till vilket data måste matas från en ingångsfil till buf-
fertminnet, som sålunda har en variabel ingång. Detta ställe är»
en tom cell, som är belägen närmast utgången på. minnet, som 'grän-
sar till en serie fyllda celler mellan detta ingångsställe och
utgången på minnet. Men detta buffertminne har speciell uppbygg-
nad, varvid endast en markeringsbit, som är en styr-bit för data-
sektionen av minnet, möjliggör en databana för en bit. Häriid
uppstår situationen, då bestämda sektioner av denna buffert-anord-
ning tjänar till transport av markeringsbiten liksom databitarna.
Verklig risk föreligger därför för uppträdande av fel i detta
minne, om en 'l-bit felaktigt 'betraktas vara en markeringsbit, så
att styrningen av dataflödet störes. Risken för ostabilitet hos
minnet är därför ej imaginär, eftersom permanent osäkerhet kan
uppstå med hänsyn till det riktiga ingångsstället från ingångs-
filen till minnet.
Uppfinningen är baserad uppgiften att utveckla ett buffert-
' minne av beskriven art, omfattande en variabel ingång och en fast
vftgírng, som har enkel och upprepad uppbyggnad och som dessutom-I
7812716-4
3
förorsakar minimal fördröjning av informationerna och även har
självstabiliserande karaktär. För att uppfylla denna uppgift kän-
netecknas minnet av att logikstegen i huvudsak är anordnade per
sektion av minnet och att logikstegen med undantag av förbindningar,
som åtminstone funktionellt är åtskilda från sektionerna av själva
minnet, är inrättade att möjliggöra alstring av följande signaler,
om minnet omfattar n register (O..., n-1), nämligen
s) en fyllningssigiisl (i) = (ereq) . EGT . s(i+1) som är bildad ge-
nom æuzenligt OG+ámnktkn1logisktlxmbinedïgm banåmsningssknel creq, sun
tillfdtes nnnnet utifrån, oon en konbineted tillståndssigfnl šííisun) ,
som är bildad genom ett enligt oca-fiinktion logiskt konbinereïmett antal i in-
vertereds tillständssigneler šTíT från en serie tonne register (o. .., i), ooh en
tillståndssignal s(i+1) från ett efterföljande fyllt register (i+1), sun gränsar
till det tcnna.registret (i), varvid fyllningssignalen indikerar det register (i)
i minnet, till vilket data inmatas från ingångsfilen,
b) en skiftsignsl shti) = s(i-1) .šïiï son är bildad genom ett enligt
OCH-funktion logiskt ktnbinera en tillståndssignal s(i-1) från ett register (i-1)
och en inverterad tillståndssignal šlïfi från ett register (i) och son, cnxdetta
villkor är uppfyllt, är skiftsignalen för förskjutning av data incnlnünnet i rikt-
ning not utgången, varvid s(i-1)=1 anger tillståndet fullt hos ett föregåend
register ooh .lTñ anger tillståndet tomt nos tillänpligt register (i) , ooh
c) en signal s(i)=1, som representerar tillståndssignalen för registret
(i) till följd av en tillförd signal a9p(i)=1 eller sh(i)=1, varvid tillstånds-
signalen s(i) blir lika med noll s(i)=O för Ogišn-1, cnlinnehållet i registret (i)
är förskjutet vid signalens sh(i+1) uppträdande, medan tillståndssignalen s(n-1)
för registret (nrl) blir lika med noll s(n-1)=O, m en bekräftelsesignal (ers)
för detta ändamål är tillförd minnet utifrån efter utläsning av detta register
(n-U.
Det är väsentligt, att någon sammanblandning ej föreligger
mellan den av logikstegen bildade styrsektionen och datatransport-
sektionen. Bredden av databanan i datasektionen kan väljas godtyck-
ligt. Inga begränsningar föreligger med hänsyn till databanans bredd.
Till följd av omständigheten att registret, till viuæm data inmatas
från ingångsfilen, entydigt bestämmes av det första tomma registret,
sett från ingången, som efterföljes av ett fullt register, dvs regist-
ret, som föregår det första fulla registret, kan aldrig osäkerhet
uppstå med hänsyn till ingångsstället för informationerna från ingångs-
filen till ett register i buffertminnet. Härigenom uteslutes instabi-
litet och dessutom säkerställes minimal fördröjningstid genom buffert-
PGÜÉÉ Lsflïíflllïllïií'
7812716-4 4
minnet. min följd av användningen av aéšä' "išíiiëšåšá pèršék-L
tion, som uppdateras företrädesvis i bistabila element, som in-
går i logikstegen, erhålles ett enkelt arrangemang, som lämpar
sig för integrering. Till följd av den modulenliga uppbyggnaden
kan tillämpligt register och tillhörande logiksteg framställas
såsom en integrerad halvledarkrets åtminstone per sektion av
buffertminnet. Det är även möjligt, att minnet kan bestå av åt-
minstone en grupp register och åtminstone en grupp logiksteg per
sektion av minnet, varvid dessa grupper bildar integrerade halv-
ledarkretsar. Till följd av den modulenliga uppbyggnaden uppnås
även, att ett flertal buffertminnen lätt kan sammanfogas i och
för erhållande av önskade längder.
Uppfinningen beskrivas närmare nedan i exempelform med
ledning av åtföljande ritning, där fig. 4 visar ett förenklat
schema för ett buffertminne av direkt typ med en variabel ingång
och en fast utgång, fig. 2 ett blockschema för en utföringsform
av ett buffertminne enligt uppfinningen, fig. 3 och 4 exempel på
möjligheter att uppdela buffertminnet med hänsyn till framställ-
ningen såsom integrerade halvledarkretsar, fig. 5 ett exempel på
logikstegen i en sektion (i) av minnet, fig. 6 ett exempel på lo-
gikstegen i en sektion (O) av minnet och fig. 7 ett exempel på
_ logikstegen i en sektion (n-1) av minnet.
Fig. 1 visar ett förenklat schema för ett buffertminne av
direkttyp med en variabel ingång och en fast utgång. Minnet är
betecknat med FIFO. Via en ingångsfil INB kan data tillföras
minnet, isynnerhet till en ingång på ett anvisat register i än
sektion. mo), mur-a), mal-fn) avjmimet. Dette bila-ar den
variabla ingången, som även är angiven genom en punktstreckad
pil i fig. 4. Den fasta utgången OUT befinner sig vid utgångenn
på registret i den sista sektionen T(n-1) av buffertminnet.
Fig, 2 visar blockschemat för en utföringsform av minnet
enligt uppfinningen. Detta minne består av en registersektion,
omfattande register REG(O)...REG(i~1), REG(i)...REG(n-1). Dessa
register tjänar till lagring av inmatade datak Varje register
REG(i) kan bestå av ett eller flera steg 1, 2 ...k. Detta bely-
ser möjligheten till godtyckligt val av databana i den mån bred-
den beröres: en 1~bit-databana kräver ett steg (1) per register
REG(i) osv. Enligt fig. 2 sträcker sig ingångsfilen INB tvärs
över registren. Varje register REG(i) är med sina ingångar för
4
5 '7812716*4
varje steg 1, 2 ...k förbundet med filen INB. För detta ändamål
användes OCH-grindar IO1, IO2 ... IOk för tillämpliga register-
steg 1, 2 ...k i registret REG(O), OCH-grindar Ii1, Ii2 ... Iik
för tillämpliga registersteg 1, 2 ...k i registret REG(i) osv.
Valet beträffande det register av registren REG(i}, som är för-
bundet med filen INB, bestämmas medelst logikstegen LM(0) ...
Lñfii-1), LH(i)...LH(n-1), som ingår per sektion av minnet. 'En
signal app(O)...app(i)... eller app(n-1) alstras i dessa logik-
, steg och tillföres grindarna I01..¿IOK... eller Ii1...Iik...
eller I(n-1,1)...I(n-1,k). Det register REG(i) i buffertminnet,
som tillföres data från filen INB, väljes sålunda. Registret
2EG(n-1) i den sista sektionen av buffertminnet bildar minnets
utgång OUT. Innehàllen i registret REG(n-1) är ständigt till-
gängliga vid utgången OUT. Den i minnet alstrade signalen SFI
anger, om giltig information uppträder vid utgången OUT eller ej.
Här dessa data tillförts omgivningen (användaren), tjänar en be-
kräftelsesignal ers, som tillföres minnet från utsidan, att fri-
göra eller nollställa registret REG(n-1) för lagring av efter-
följande data. För förskjutning av data mellan sektionerna i
buffertminnet finnes förbindningar mellan stegen i de olika re-
gistren, vilka förbindningar sträcker sig tvärs över OCH-grindar
UU1, UO2...UOk och Uii, Ui2...Uik osv. mellan en utgång på ett
föregående registersteg och en ingång på ett efterföljande regis-
tersteg. Grindarna UO1...UOk är angivna genom streekade linjer,
eftersom dessa med i den första sektionen förbundna grindar aj
användes. Vid den i fig. 2 visade utföringsformen är ingângarna
kombinerade per steg i varje register för ingången från filen
IND liksom för ingången för data, som förskjutes vidare från nå-
got föregående registersteg. Förskjutning utföres under styrning
av skiftsignaler, som alstras i logiksteget LM(i):sh(i). Slutli-
gen styres den visade enheten medelst en ej visad villkorsbestämd
klocksignal, dvs. under villkoret, att signalen app(i) eller
sh(i) föreligger.
Buffertminnet består dessutom av en styrsektion, omfattan-
de detta logiksteg LM(i) per sektion av minnet. De i dessa logik-
steg alstrade signalerna utgöres förutom av signalerna app(i) och
sh(i): av tillstándssignaler s(i), som utgör en indikering med
hänsyn till fullt (1) eller tomt (O) tillstånd hos ett register
REG(i) eller en kombinerad form härav, nämligendä s(j), vilketJ
, vi» .m fr,
v \ . , . i
Wu* »man K nu. J» .z
7s1271s+4 6
innebär, att tillstàndssignalen s(j) på grundval av den
booleska OCH-funktionen hos samtliga register ILEG-(O) till REGÜ.)
har värdet noll, dvs. s(j)='ï. Detta är definitionen på. till-
ståndet, för samtliga register BEG(O)...REG(i), som föregår
PEG(i+'l) , är tomma. Indikeringen tomt innebär, att någon gil-
tig information ej förekommer i registret. Ytterligare uppgif-
ter om logikstegen och de härmed samordnade signalerna lämnas
'med ledning av fig. 5-42.. Detta är även tillämpbart pâ signaler
cack, som är bekräítelsesignaler, som utmatas från minnet för
att indikera, att inmatade data blivit lagrade i ett register
BEGfi), medan signalen creq är en begäransignal, som tillföres
utifrâniför lagring av data i minnet och signalen SFI anger,
att data förekommer i åtminstone ett av registren i minnet, i
synnerhet i det sista registret BEG(n-'l) :för denna 'typ av buf-
fertminne.
Fig. 5 och 4 belyser olika möjligheter till uppdelning av
buffertminnet med hänsyn till framställning i form av integrera-
de halvledarkretsar. Till följd av det i fig. 2 visade buffert-
minnets modulkaraktär är ett antal olika lösningar möjliga. Hän-
visningsbeteckningarna VIO...VIi i dig. 5 anger, att integrering
är möjlig åtminstone per sektion av minnet. Ett register EHEGN)
är kombinerat i en integrerad krets tillsammans med ett logik-
steg LM(O). Förbindningen mellan samtliga dessa sektioner Vïš.
är bildad i registerdelen av ingångsíilen INB och de förbindning-
ar, som är tänkbara i filen INB på ritningen mellan stegen i ef-
ter varandra följande buffertsektioner med hänsyn till förskjut-
ningen av data från en föregående till nästa sektion. Förbind-
ningarna mellan logikstegen och de ytterligare in- och utsigna-
lerna visas i form av ett signalledningslcnippe CIB i fig. 5. _
Pâ samma sätt visar fig. 4, att integrering är möjlig
till integrerade kretsar per grupp IIIB. eller grupper HEMJHIRp
av register REG-(O). . .PEG(n-1) eller grupp HIIM eller grupper
HIIM1.. .HIIírIm av logiksteg LI“I(O).. .llI-Kn-”IL g Helt tydligt är det
även möjligt att framställa kompletta buffertminnen såsom en.
integrerad halvledarkrets. I-Iopfogningen av varje vald konstruk-
tion innebär ej några problem, såsom förklaras i fortsättningen
i samband med detaljerade utföringsïorxner av logikstegen per
sektion av minnet.
Fíg. 5 visar detaljerat en utföringsform av logiksteget-J
78127164-4
LM(i) i en buffertsektíon (1) för styrning av registret EEG(i)
i denna sektion. I föreliggande fall omfattar logiksteget ett
bistabilt vippsteg FFi med en inställningsingång SI och en åter-
ställningsingång RI och utgångar Q och Ä. Denna utföringsform
omfattar vidare tre OCH-grindar E1, E2 och E5. Logiksteget är
enkelt uppbyggt och enligt andra utföringsformer kan andra lo-
giska element såsom HAND-grindar osv. användas med fördel. Det
väsentliga är, att de logiska funktioner, som skall genomföras
medelst dessa logiksteg, i själva verkat kan utföras medelst
dessa medel. De funktioner, som genomföres i logiksteget LM(í)
är sådana, att signaler avsedda för styrning av buffertminnet,
alstras, nämligen
I a) en signal app(i), som åstadkommer transport av data
från ingängsfilen via dessa grindar Ii1...Iik till ett register
EEG(i) i minnet. Denna signal app(i) = 1 (det logiska 1-värdet),
förutsatt att villkoret creq. ååh sf§).s(i+1) är sant, vilket
innebär att det har det logiska värdet 4. Medelst grinden E3 av-
göres, om detta villkor är uppfyllt. men för ändamålet fast-
ställes till en början medelst grinden E2, om uttrycket
ik s(ï)=1, vilket innebär, om villkoret uppfylles, att registret
REG(i) och samtliga föregående register måste vara tomma, vilket
förklarar symbolen f\ såsom symbolen för den booleska OCH-funk-
tionen. Giltigheten av detta uttryck creq. ååh s(j).s(i+1) under-
sözes medelst grinden Eš ,å grundval av denna information odh in-
formationen, om nästa register REG(i+1} är fullt, vilket anges
genom tillstândssignalen s(i+fl) såsom sann (=4) och genom den
utifrån till buffertminnet matade signalen creq.
b) en signal sh(i)=e(í-1).sfi), som är en skift- eller
förskjutningssignal för förskjutning inom minnet, isynnerhet när
data uttagits från utgången på minnet. Syftet är att konstant
säkerställa, att data oavbrutet föreligger i minnet, sett från ut-
gången. Detta uppnås genom övervakning av tillståndet
s(i-1).s(i) medelst grinden Ei. Detta tillstànd är sant, så att
förskjutningssignalen sh(i) uppträder, om registret REG(i) är
tomt (tillstånd szi)=1) och om föregående register REG(i-1) är
fullt (tillstånd screw-n).
o) på grundval av denna information om dessa signaler be-
stämmes även tillstándssignalerna för sektionerna i buffertminnet.
Under förutsättning, att signalen app(i) eller sh(i) är sann
.Iks- 'l-L... ._ i .
781271644
dvs. lika med/l, är registret
då s(i)=4, vilket logiskt skrives såsom s(i):=4:. Signalenl
app(i) eller sh(i) inställer vippsteget FFi till tillståndet
Qei, som motsvarar s(i)=1. När registret REG(i) är tömt, efter-
som dess innehåll övertagits, på grundval av signalen sh(i+1)
via grindarna Ui4...Uik, av efterföljande register REG(i+1), som
är tomt eller blivit tomt, säkerställer sh(i+1), att vippstéget
FFi âterställes via dess återställningsingång RI till tillstàn-
aet o=o, dvs o=1. Därför är sfï)¿ö=1, vilket innebär, att tiil-
ståndet är s(i)=0. i
I samverkan med begäransignalen creq styres hela buffert-
minnet medelst dessa tre signaler app(i), sh(i) och s(í), som
alstras i logikstegen HKi).
5 Av fig. 5 framgår, att logikstegen LH(i) har ett antal
ingångar, dvs. ingångar för signalerna s(i~1), æäfisfï), varvid
àäå är šíg , och begäransignalen oreq eller signalerna s(i+1)
och sh(i+1). Utgångarna på stegen LH(i) betjänar signalerna
sh(i), s(i) ellerlåsfj) och s(i) och om så önskas även signalen
creq, som överföras via steget LH(i). Dessa in- och utgångar är
lika för samtliga logiksteg inklusive LM(O) och LH(n-1), dvs.
dessa logiksteg har ständigt samma innehåll, så att buffertmin-
nets upprepningskaraktâr säkerställas.
För att belysa denna omständighet visar fig. 6 ett detal-
jerat schema för logikstegen LM(0), som bildar den första sek-
tionen i buffertminnet tillsammans med registret REG(0). Sdhe-
mat är i huvudsak likartat det i fig. 5 visade, eftersom grinden
E10 fyller samma uppgift som grinden E1 i fig. 5, grinden E20
samma uppgift som grinden E2 ooh grinden E50samma uppgift Sóm
i E5 i fig. 5. Den enda skillnaden består i situationen för sig-
nalerna på vänstra sidan av steget LM(O) i fig. 6. Eftersom
några ytterligare föregående sektioner ej föreligger, är ej nâ-
gon signal täfl sfj) på ledningen a möjlig och ej heller nàgdn
signal s(i-1) på ledningen b. I syfte att över huvud taget möj-
liggöra styrning inmatas en signal med det logiska värdet 1_till
ledningen a ooh en signal med det logiska värdet O till ingången
b. Signalerna s(i)=s(O) och sh(i)=sh(0), som avges från denna
sida till föregående sektioner, användes ej vidare, såvida ej
sektioner är anordnade framför denna första sektion vid utvidgñng
av buffertminnet. I detta fall användes ingångarna a och b norr
7e1271s-4
malt åter. Utvidgning av buffertminnet på denna sida år därför ”int
ej problematisk. Pig. 7 visar, att anslutning av ett buffert-
minne på den andra sidan, dvs. baksidan av ett buffertminne, som
skall anordnas framför detsamma, är ej heller problematisk.
Enligt den i fig. 6 visade lösningen är det i likhet med många
fall, då databehandlingssystem förekommer, om så önskas möjligt
att åstadkomma, att minnet alstrar en bekräftelsesignal oack för
att indikera, att tillförda data blivit lagrade i ett av minnets
register. När minnet är fullständigt fyllt, kommer signalen
creq ej att alstras, så att signalen crack ej heller alstras.
Detta signaleras, om registret REG(O) är fullt, dvs. när s(O):=1.
Signalen cack kan helt enkelt alstras i logiksteget LH(O) me-
delst en OCH-grind E40, varigenom fastställes, om villkoret s(O).
oreq blivit uppfylt. Detta är fallet, eftersom nya data vid en
begäransignal creq=1 fortfarande kan lagras, så länge registret
REG(O} är tomt, dvs. sï5)=1. På grundval av likheten caok=creq.
s(O), som lagras i ett ej visat bistabilt vippsteg, lämnas därför
ständigt bekräftelse utanfzör buffertminnet för att ange, att
data blivit övertagna. Här minnet är helt fyllt, kan ytterligare
data ej övertagas och uppträder ej signalen cack (tillämpligt
bistabilt vippsteg återställt), så att det är externt känt t.ex.
av databehandlingssystemet, att buffertminnet ej övertagit några
nyligen tillförda data.
Fig. 7 visar ett detaljerat schema för logikstegen LH(n-1),
som tillsammans med registret REG(n-1) bildar den sista sektionen
av minnet. Schemat är åter i huvudsak likartat det i fig. 5 vi-
sade, eftersom grinden E4(n-1) motsvarar grinden E1, grinden
E2(n-4) motsvarar grinden E2 och grinden E5(n-1) motsvarar grin-
den EE i fig. 5. Signalerna på den vänstra sidan i fig. 7 mot-
svarar helt signalerna på den vänstra sidan på fig. 5. Den enda
skillnaden består i situationen för signalerna på den högra sidan
i fig. 7. Eftersom några efterföljande sektioner ej finnes, är
någon signal s(i+1)=s(n) ej möjlig. För att möjliggöra styrning
inmatas åter en signal V4=1 (logiskt 1-värde) till denna ingång.
Vidare uppträder helt tydligt ej någon förskjutningssignal sh(n).
Men eftersom registret REG(n-4) bildar utgång på själva buffert-
minnet, uppträder signalen ers, motsvarande en bekräftelsesignal,
som tillföres buffertminnet utifrån, för att ange, att data bli-
vit utlästa från minnet, dvs från registret REG(n-1). Med hänsyn
7812716-4
'IO
till steget LM(n-1) har därför signalen ers samma verkan, sömd
om en förskjutning ägt rum, så att det kan fastläggas att ers=
sh(n). Utsignaler gås sfï) och s(n-1) och creq användes ej vi-
dare. Men om buffertminnet skall utvidgas eller om detta minne
är anordnat framför något annat buffertminne kan dessa signaler
normalt användas och är utvidgning av buffertminnet möjlig utan
nâgra komplikationer. Ytterligare en fördel består däri, att
signalen s(n-4) kan användas såsom en signal SFI utanför buf-
fertminnet för att signalera, att åtminstone en sektion blivit
fylld. Hed hänsyn till denna förskjutningsmekanism kommer denna
sektion ständigt att vara den sista sektionen, så att detta till-
stånd är avgörande för informationen SFI, om s(n-1)=1. Detta
förutsätter, att data förekommer på utgångsledningarna OUT.
I Med hänsyn till möjligheterna till enkel utvidgning av
buffertminnet kan framhållas, att denna utvidgning ej med nöd-
vändighet innebär, isynnerhet vid användning av integrerade halv-
ledarminnen, att samtliga signalledningar måste fortsätta till
något nästföljande eller föregående minne. Det är tillräckligt
att ansluta en ingång för signalen creq till en utgång för sig-
nalen SFI och ansluta en ingång för signalen ers till en utgång
för signalen cack på tvâ lika buffertminnen, som skall samman-
kopplas. Men i detta fall ökar fördröjningstiden för varje till-
fogat ytterligare buffertminne, varvid fördröjningstiden ökar med
en enhet, som då representerar den minimala fördröjningstiden
genom ett buffertminne. Genom användning av denna åtgärd för-
hindras emellertid, att ett buffertminne i integrerad form måste
vara försett med ett onödigt antal ingångs-utgångsklämmor.
Genom användning av de beskrivna logikstegen erhålles ett
buffcrtminne av direkttyp, som omfattar en variabel ingång den
en fast utgång och som alltid har minimal fördröjningstid för
nyligen tillförda data. Detta beror på, att nya data ständigt
upptages i minnet så nära dess utgång som möjligt. Den beskriv-
na uppgiften för signalen app(i) säkerställer att ett första
tomt register fylles, framför vilket därför endast tomma regis-
ter förekommer, före ett första fullt register (i+1). Osäker-
het med hänsyn till lagringsplatsen för data från ingångsfilan
i ett register (i) är ej möjlig, eftersom ständigt endast ett
ställe finnes, för vilket tillståndet app(i)=4 är giltigt. Vida-
re säkerställer signalen sh(i) ständigt, att sok. hål endast un?-
7812716-4
14
kommer temporärt i minnet, vilket innebär, att tomma sektioner I
mellan fyllda sektioner ständigt fyllas. Detta förutsätter,
att ett dylikt hål fyllee omedelbart, om ett tillstånd s(i)=1
någonstans ändras till s(i)=O till följd av ett fel. De i
tillämpligt register (i) befintliga informationerna går då
färlorado (raderade av de förskjutna lnformationerna), men nå-
got osäkert tillstånd uppstår ej. Om ett tillstånd s(i)=O på
något ställe blir s(i)=1 till följd av ett fel, ïörskjutes denna
situation mot den första fulla sektionen i minnet åter till
följd av fërskjutningsmekanismen och förskjutes efteråt till
utgången under inverkan av signaler ers på normalt sätt. En
sektion, innehållande ogiltig information, har sålunda uppkom-
mit, men denna information försvinner i riktning mot utgången
och förorsakar ej permanent osäkerhet i minnet. Härigenom upp-
nås otvetydigt, att minnet är självstabiliserande. Detta är en
väsentlig egenskap, som erfordras i många fall inom omrâdet för
databehandling och förbindelseteknik. Slutligen kan framhållas,
att med hänsyn till buffertminnets praktiska uppbyggnad t.eI.
s.k. kantstyrda bistabila vippsteg kan användas till följd av
omständigheten, att de bístabila vippstegen FFí måste ha förmå-
- ga att själva kunna läsa. Det är alternativt möjligt att an-
vända bistabila vippsteg av s.k. huvud-slavtyp. I detta fall
måste minst tvâ klockpulssignaler användas i stället för en
klookpulssignal i föreliggande fall.
Claims (7)
1. Databuffertminne av s.k. direkttyp med logiksteg för att säker- ställa, att en ingång för data, som skall skrivas, i beroende av minnets fyllning befinner sig i huvudsak så nära en utgång som möjligt, avsedd för utläsning av data, så att minnet har i huvudsak oavbrutna innehåll, och med en ingångsfil, via vilken data är tillförbara minnet, i synnerhet till en ingång på ett i detsamma ingående register, som är anvisat för detta ändamål, och en ut- gång, som är förbunden med ett sista register i minnet och vid vilken för utläsning avsedda data uppträder, k ä n n e t e c k - n a~t av att logikstegen i huvudsak är anordnade per sektion av minnet och att logikstegen med undantag av förbindningar, som -åtminstone funktionellt är åtskilda från sektionerna av själva minnet, är inrättade att möjliggöra alstring av följande signaler, om minnet omfattar n register (0 ..., n-1), nämligen a) en fyllningssignal (i) = (creq). åäö šTjT.s(i+1) som är bildad genom att enligt OCH-funktion logiskt kombinera en begäransignal creq, som tillföres minnet utifrån, och en kom- binerad tillstândssignal ¿i\ šTïT.s(i+1), som är bildad genom att enligt OCH-funktion logiskt+iombinera ett antal i inverterade till- ståndssignaler ETÉT från en serie tomma register (O..,, i), och en tillståndssignal s(i+1) från ett efterföljande fyllt register (i+1), som gränsar till det tomma registret (i), varvid fyll- ningssignalen indikerar det register (i) i minnet, till vilket data inmatas från ingångsfilen, b) en skiftsignal sh(i) = s(i-1). s(i), som är bildad genom att enligt OCH-funktion logiskt kombinera en tillståndssignal s(i-1) från ett register (i-1) och en inverterad tillståndssignal ÉTTT från ett register (i) och som, om detta villkor är uppfyllt, är skiftsignalen för förskjutning av data inom minnet i riktning mot utgången, varvid s(i-1)=1 anger tillståndet fullt hos ett före- gående register och ÉTÉ anger tillståndet tomt hos tillämpligt register (i), och I c) en signal s(i)=1, som representerar tillståndssignalen för registret (i) till följd av en tillförd signal app(i)=1 eller sh(i)=1, varvid tillståndssignalen s(i) blir lika med noll (s(i):=O) för Oâiên-1, om innehållet i registret (i) är för- skjutet vid signalens sh(i+1) uppträdande, medan tillstånds- signalen sín-1) för registret (n-1) blir lika med noll (s(n-1):=0), 15 7812116-Å om en bekräftelsesignal (ers) för detta lndnnàl är tilltlrd ninnoi__¶ utifrån efter utläsning av detta register (n-1).
2. Minne enligt krav 1, k ä n n e t e c k n a t av ytterligare logiksteg, medelst vilka en signal cack är alstringsbar, som är en bekräftelsesignal och utmatas från minnet för att indikera, att inmatade data blivit lagrade i ett register (i), men denna signal alstras ej, när minnet är helt fyllt (s(0)=1).
3. Minne enligt krav 2, k ä n n e t e c k n a t av att de ytterligare logikstegen alstrar signalen cack, om villkoret s(Ö).creq är upp- fyllt.
4. Minne enligt krav 1, k ä n n e t e c k n a t av att en till- ståndssignal SFI=s(n-1) uppträder vid en utgång på minnet och in- dikerar, att data föreligger i âtminstone ett av minnets register, isynnerhet i det sista registret.
5. Minne enligt något av kraven 1-4, k ä n n e t e c k n a t av att det är framställt enligt integrerad halvledarteknik.
6. Minne enligt krav 5, k ä n n e t e c k n a t av att tillämpligt register och samordnade logiksteg åtminstone per sektion av minnet bildar en integrerad halvledarkrets.
7. Minne enligt krav 5, k ä n n e t e c k n a t av att det består av åtminstone en grupp register och åtminstone en grupp logiksteg per sektion av minnet och att dessa grupper är integrerade halv- ledarkretsar. POÜR QUALITY
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7713707A NL7713707A (nl) | 1977-12-12 | 1977-12-12 | Informatiebuffergeheugen van het "eerst-in, eerst-uit" type met variabele ingang en vaste uitgang. |
Publications (1)
Publication Number | Publication Date |
---|---|
SE437581B true SE437581B (sv) | 1985-03-04 |
Family
ID=19829732
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE7812716A SE437581B (sv) | 1977-12-12 | 1978-12-11 | Databuffertminne |
SE7812716D SE7812716L (sv) | 1977-12-12 | 1978-12-11 | Databuffertminne |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE7812716D SE7812716L (sv) | 1977-12-12 | 1978-12-11 | Databuffertminne |
Country Status (9)
Country | Link |
---|---|
US (1) | US4236225A (sv) |
JP (1) | JPS5920139B2 (sv) |
CA (1) | CA1122329A (sv) |
DE (1) | DE2853239A1 (sv) |
FR (1) | FR2411467A1 (sv) |
GB (1) | GB2009984B (sv) |
IT (1) | IT1101479B (sv) |
NL (1) | NL7713707A (sv) |
SE (2) | SE437581B (sv) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57164331A (en) * | 1981-04-02 | 1982-10-08 | Nec Corp | Buffer controller |
JPS57185492A (en) * | 1981-05-11 | 1982-11-15 | Matsushita Electric Ind Co Ltd | Data latch circuit |
JPS58220293A (ja) * | 1982-06-15 | 1983-12-21 | Nec Corp | 記憶装置 |
US4510581A (en) * | 1983-02-14 | 1985-04-09 | Prime Computer, Inc. | High speed buffer allocation apparatus |
US4930102A (en) * | 1983-04-29 | 1990-05-29 | The Regents Of The University Of California | Dynamic activity-creating data-driven computer architecture |
JPS59226923A (ja) * | 1983-05-27 | 1984-12-20 | インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン | バスインタ−フエ−ス装置 |
US4598363A (en) * | 1983-07-07 | 1986-07-01 | At&T Bell Laboratories | Adaptive delayed polling of sensors |
US4592019A (en) * | 1983-08-31 | 1986-05-27 | At&T Bell Laboratories | Bus oriented LIFO/FIFO memory |
FR2552916B1 (fr) * | 1983-09-29 | 1988-06-10 | Thomas Alain | File d'attente asynchrone a empilement de registres |
US5038277A (en) * | 1983-11-07 | 1991-08-06 | Digital Equipment Corporation | Adjustable buffer for data communications in a data processing system |
AU575351B2 (en) * | 1983-11-07 | 1988-07-28 | Digital Equipment Corporation | Data processing system |
US4764894A (en) * | 1985-01-16 | 1988-08-16 | Varian Associates, Inc. | Multiple FIFO NMR acquisition system |
US4833655A (en) * | 1985-06-28 | 1989-05-23 | Wang Laboratories, Inc. | FIFO memory with decreased fall-through delay |
NL8502023A (nl) * | 1985-07-15 | 1987-02-02 | Philips Nv | Werkwijze voor het schakelen van tijdsloten in een tdm-signaal en inrichting voor het uitvoeren van de werkwijze. |
US4672646A (en) * | 1986-09-16 | 1987-06-09 | Hewlett-Packard Company | Direct-injection FIFO shift register |
US4847812A (en) * | 1986-09-18 | 1989-07-11 | Advanced Micro Devices | FIFO memory device including circuit for generating flag signals |
US4995005A (en) * | 1986-09-18 | 1991-02-19 | Advanced Micro Devices, Inc. | Memory device which can function as two separate memories or a single memory |
JPS648732A (en) * | 1987-06-30 | 1989-01-12 | Sharp Kk | Digital serial/parallel converter |
US5115496A (en) * | 1988-01-26 | 1992-05-19 | Nec Corporation | Queue device capable of quickly transferring a digital signal unit of a word length different from a single word length |
JP2764908B2 (ja) * | 1988-02-04 | 1998-06-11 | 日本電気株式会社 | カスケード・バッファ回路 |
JP2576616B2 (ja) * | 1988-12-29 | 1997-01-29 | カシオ計算機株式会社 | 処理装置 |
JPH0391188A (ja) * | 1989-09-04 | 1991-04-16 | Matsushita Electric Ind Co Ltd | Fifoメモリ |
US5095462A (en) * | 1990-05-25 | 1992-03-10 | Advanced Micro Devices, Inc. | Fifo information storage apparatus including status and logic modules for each cell |
US5412611A (en) * | 1992-03-17 | 1995-05-02 | Fujitsu, Limited | FIFO memory device capable of writing contiguous data into rows |
US5513224A (en) * | 1993-09-16 | 1996-04-30 | Codex, Corp. | Fill level indicator for self-timed fifo |
JP3736855B2 (ja) * | 1995-07-10 | 2006-01-18 | ジーリンクス インコーポレイテッド | フィールドプログラマブル・ゲートアレイ及びインテリジェント・メモリを含んでいるシステム |
KR100594953B1 (ko) | 1997-08-20 | 2006-07-03 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 다중레벨의 하우스키핑을 위해 적합한 소프트웨어 관리 기능을 갖는 임시 데이터스트림 신호처리 버퍼 메모리 구조 |
JP4841314B2 (ja) * | 2006-05-29 | 2011-12-21 | 川崎マイクロエレクトロニクス株式会社 | データ転送回路 |
JP6568560B2 (ja) | 2017-09-15 | 2019-08-28 | 株式会社Subaru | 車両の走行制御装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL6600550A (sv) * | 1966-01-15 | 1967-07-17 | ||
US3646526A (en) * | 1970-03-17 | 1972-02-29 | Us Army | Fifo shift register memory with marker and data bit storage |
NL7014737A (sv) * | 1970-10-08 | 1972-04-11 | ||
GB1289249A (sv) * | 1971-05-05 | 1972-09-13 | ||
US3781821A (en) * | 1972-06-02 | 1973-12-25 | Ibm | Selective shift register |
US3942163A (en) * | 1974-06-21 | 1976-03-02 | Burroughs Corporation | CCD stack memory organization |
US3953838A (en) * | 1974-12-30 | 1976-04-27 | Burroughs Corporation | FIFO Buffer register memory utilizing a one-shot data transfer system |
JPS5247638A (en) * | 1975-10-15 | 1977-04-15 | Toshiba Corp | Information processing device |
US4095283A (en) * | 1976-07-02 | 1978-06-13 | International Business Machines Corporation | First in-first out memory array containing special bits for replacement addressing |
-
1977
- 1977-12-12 NL NL7713707A patent/NL7713707A/xx not_active Application Discontinuation
-
1978
- 1978-11-30 US US05/965,208 patent/US4236225A/en not_active Expired - Lifetime
- 1978-12-07 IT IT30681/78A patent/IT1101479B/it active
- 1978-12-07 CA CA317,576A patent/CA1122329A/en not_active Expired
- 1978-12-08 GB GB7847707A patent/GB2009984B/en not_active Expired
- 1978-12-09 JP JP53152598A patent/JPS5920139B2/ja not_active Expired
- 1978-12-09 DE DE19782853239 patent/DE2853239A1/de active Granted
- 1978-12-11 FR FR7834812A patent/FR2411467A1/fr active Granted
- 1978-12-11 SE SE7812716A patent/SE437581B/sv not_active IP Right Cessation
- 1978-12-11 SE SE7812716D patent/SE7812716L/sv not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
IT1101479B (it) | 1985-09-28 |
US4236225A (en) | 1980-11-25 |
DE2853239C2 (sv) | 1989-02-02 |
GB2009984A (en) | 1979-06-20 |
CA1122329A (en) | 1982-04-20 |
GB2009984B (en) | 1982-01-27 |
DE2853239A1 (de) | 1979-06-13 |
JPS5489439A (en) | 1979-07-16 |
NL7713707A (nl) | 1979-06-14 |
JPS5920139B2 (ja) | 1984-05-11 |
FR2411467A1 (fr) | 1979-07-06 |
FR2411467B1 (sv) | 1985-01-18 |
IT7830681A0 (it) | 1978-12-07 |
SE7812716L (sv) | 1979-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
SE437581B (sv) | Databuffertminne | |
US5345419A (en) | Fifo with word line match circuits for flag generation | |
US5898893A (en) | Fifo memory system and method for controlling | |
US11455956B2 (en) | Shift register, gate driving circuit, display apparatus and driving method | |
US4785204A (en) | Coincidence element and a data transmission path | |
SE503914C2 (sv) | Dataöverföringssystem | |
US6285229B1 (en) | Digital delay line with low insertion delay | |
US5509013A (en) | Multiplexer control system | |
US5649119A (en) | Data queuing apparatus | |
SE449672B (sv) | Minnesanordning, innefattande tva par atkomstledningar | |
US5206834A (en) | Semiconductor memory device performing last in-first out operation and the method for controlling the same | |
US3300724A (en) | Data register with particular intrastage feedback and transfer means between stages to automatically advance data | |
US6400642B1 (en) | Memory architecture | |
KR100209975B1 (ko) | 표시 장치 | |
JP3765273B2 (ja) | シフトレジスタ | |
KR100249498B1 (ko) | 분산 표본 혼화 장치의 병렬 처리기 | |
JPH06311127A (ja) | ディジタルデータ調停装置 | |
SE515563C2 (sv) | Dataöverföringssystem | |
KR890004998B1 (ko) | 마이크로 콤퓨터 시스템용 게이트회로 | |
KR960008323B1 (ko) | 병렬 데이타 포트 선택 장치 | |
US6055276A (en) | Signal transmitting circuit and method with selection among differential pairs | |
US5394364A (en) | High-speed memory readout circuit using a single set of data buffers | |
US20040027909A1 (en) | Self-synchronous FIFO memory device | |
JP3348069B2 (ja) | ビタビ復号装置および方法 | |
US5452255A (en) | Semiconductor memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NUG | Patent has lapsed |
Ref document number: 7812716-4 Effective date: 19920704 |