Electronic Components Datasheet Search
  English  ▼

X  

70T653MS12BCGI Datasheet(PDF) 19 Page - Integrated Device Technology

Part # 70T653MS12BCGI
Description  HIGH-SPEED 2.5V 512K x 36 ASYNCHRONOUS DUAL-PORT STATIC RAM
PDF  24 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  IDT [Integrated Device Technology]
Direct Link  http://www.idt.com
Logo IDT - Integrated Device Technology

70T653MS12BCGI Datasheet(HTML) 19 Page - Integrated Device Technology

Back Button 70T653MS12BCGI Datasheet HTML 15Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 16Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 17Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 18Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 19Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 20Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 21Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 22Page - Integrated Device Technology 70T653MS12BCGI Datasheet HTML 23Page - Integrated Device Technology Next Button
Zoom Inzoom in Zoom Outzoom out
 19 / 24 page
background image
19
IDT70T653M
High-Speed 2.5V 512K x 36 Asynchronous Dual-Port Static RAM
Industrial and Commercial Temperature Ranges
verifiesitssuccessinsettingthelatchbyreadingit. Ifitwassuccessful,it
proceeds to assume control over the shared resource. If it was not
successfulinsettingthelatch,itdeterminesthattherightsideprocessor
has set the latch first, has the token and is using the shared resource.
The left processor can then either repeatedly request that
semaphore’s status or remove its request for that semaphore to
perform another task and occasionally attempt again to gain control of
the token via the set and test sequence. Once the right side has
relinquishedthetoken,theleftsideshouldsucceedingainingcontrol.
The semaphore flags are active LOW. A token is requested by
writing a zero into a semaphore latch and is released when the same
side writes a one to that latch.
The eight semaphore flags reside within the IDT70T653M in a
separate memory space from the Dual-Port RAM. This address space
is accessed by placing a low input on the SEM pin (which acts as a chip
selectforthesemaphoreflags)andusingtheothercontrolpins(Address,
CE0
, CE1,R/W and BEn) as they would be used in accessing a
standardStaticRAM.Eachoftheflagshasauniqueaddresswhichcan
beaccessedbyeithersidethroughaddresspinsA0–A2.Whenaccessing
the semaphores, none of the other address pins has any effect.
When writing to a semaphore, only data pin D0 is used. If a low level
is written into an unused semaphore location, that flag will be set to
a zero on that side and a one on the other side (see Truth Table IV).
Thatsemaphorecannowonlybemodifiedbythesideshowingthezero.
Whenaoneiswrittenintothesamelocationfromthesameside,the flag
will be set to a one for both sides (unless a semaphore request
from the other side is pending) and then can be written to by both sides.
The fact that the side which is able to write a zero into a semaphore
subsequently locks out writes from the other side is what makes
semaphoreflagsusefulininterprocessorcommunications.(Athorough
discussionontheuseofthisfeaturefollowsshortly.)Azerowrittenintothe
samelocationfromtheothersidewillbestoredinthesemaphorerequest
latch for that side until the semaphore is freed by the first side.
Whenasemaphoreflagisread,itsvalueisspreadintoalldatabitsso
thataflagthatisaonereadsasaoneinalldatabitsandaflagcontaining
a zero reads as all zeros for a semaphore read, the SEM, BEn, and OE
signals need to be active. (Please refer to Truth Table II). Furthermore,
the read value is latched into one side’s output register when that side's
semaphoreselect(SEM,BEn)andoutputenable(OE)signalsgoactive.
Thisservestodisallowthesemaphorefromchangingstateinthemiddle
of a read cycle due to a write cycle from the other side.
A sequence WRITE/READ must be used by the semaphore in
order to guarantee that no system level contention will occur. A
processor requests access to shared resources by attempting to write
a zero into a semaphore location. If the semaphore is already in use,
the semaphore request latch will contain a zero, yet the semaphore
flag will appear as one, a fact which the processor will verify by the
subsequent read (see Table IV). As an example, assume a processor
writes a zero to the left port at a free semaphore location. On a
subsequent read, the processor will verify that it has written success-
fullytothatlocationandwillassumecontrolovertheresourceinquestion.
Meanwhile,ifaprocessorontherightsideattemptstowriteazerotothe
samesemaphoreflagitwillfail,aswillbeverifiedbythe factthataonewill
be read from that semaphore on the right side during subsequent read.
HadasequenceofREAD/WRITEbeenusedinstead,systemcontention
problemscouldhaveoccurredduringthegapbetweenthereadandwrite
cycles.
Itisimportanttonotethatafailedsemaphorerequestmustbefollowed
by either repeated reads or by writing a one into the same location. The
reasonforthisiseasilyunderstoodbylookingatthesimplelogicdiagram
ofthesemaphoreflaginFigure4.Twosemaphorerequestlatchesfeed
into a semaphore flag. Whichever latch is first to present a zero to the
semaphoreflagwillforceitssideofthesemaphoreflagLOWandtheother
side HIGH. This condition will continue until a one is written to the same
semaphorerequestlatch.Iftheoppositesidesemaphorerequestlatchhas
beenwrittentozerointhemeantime,thesemaphoreflagwillflipoverto
the other side as soon as a one is written into the first request latch. The
oppositesideflagwillnowstayLOWuntilitssemaphorerequestlatchis
writtentoaone.Fromthisitiseasytounderstandthat,ifasemaphoreis
requested and the processor which requested it no longer needs the
resource, the entire system can hang up until a one is written into that
semaphorerequestlatch.
The critical case of semaphore timing is when both sides request a
single token by attempting to write a zero into it at the same time. The
semaphorelogicisspeciallydesignedtoresolvethisproblem.Ifsimulta-
neousrequestsaremade,thelogicguaranteesthatonlyonesidereceives
thetoken.Ifonesideisearlierthantheotherinmakingtherequest,thefirst
side to make the request will receive the token. If
both requests arrive at the same time, the assignment will be arbitrarily
made to one port or the other.
One caution that should be noted when using semaphores is that
semaphoresalonedonotguaranteethataccesstoaresourceissecure.
As with any powerful programming technique, if semaphores
are misused or misinterpreted, a software error can easily happen.
Initializationofthesemaphoresisnotautomaticandmustbehandled
viatheinitializationprogramatpower-up.Sinceanysemaphorerequest
flagwhichcontainsazeromustberesettoaone,allsemaphoresonboth
sidesshouldhaveaonewrittenintothematinitializationfrombothsides
to assure that they will be free when needed.
Figure 4. IDT70T653M Semaphore Logic
D
5679 drw 21
0
D
Q
WRITE
D0
D
Q
WRITE
SEMAPHORE
REQUEST FLIP FLOP
SEMAPHORE
REQUEST FLIP FLOP
LPORT
RPORT
SEMAPHORE
READ
SEMAPHORE
READ
How the Semaphore Flags Work
The semaphore logic is a set of eight latches which are indepen-
dent of the Dual-Port RAM. These latches can be used to pass a flag,
or token, from one port to the other to indicate that a shared resource
is in use. The semaphores provide a hardware assist for a use
assignment method called “Token Passing Allocation.” In this method,
the state of a semaphore latch is used as a token indicating that a
shared resource is in use. If the left processor wants to use this
resource, it requests the token by setting the latch. This processor then



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com