Electronic Components Datasheet Search
  English  ▼
ALLDATASHEET.COM

X  

IDT7035S Datasheet(PDF) 17 Page - Integrated Device Technology

Part # IDT7035S
Description  HIGH-SPEED 8K x 18 DUAL-PORT STATIC RAM
Download  19 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  IDT [Integrated Device Technology]
Direct Link  http://www.idt.com
Logo IDT - Integrated Device Technology

IDT7035S Datasheet(HTML) 17 Page - Integrated Device Technology

Back Button IDT7035S_15 Datasheet HTML 11Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 12Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 13Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 14Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 15Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 16Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 17Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 18Page - Integrated Device Technology IDT7035S_15 Datasheet HTML 19Page - Integrated Device Technology  
Zoom Inzoom in Zoom Outzoom out
 17 / 19 page
background image
6.42
IDT7035S/L
High-Speed 8K x 18 Dual-Port Static RAM
Industrial and Commercial Temperature Ranges
17
sharedresource.Theleftprocessorcantheneitherrepeatedlyrequest
that semaphore’s status or remove its request for that semaphore to
performanothertaskandoccasionallyattemptagaintogaincontrolofthe
tokenviathesetandtestsequence.Oncetherightsidehasrelinquished
thetoken,theleftsideshouldsucceedingainingcontrol.
ThesemaphoreflagsareactiveLOW.Atokenisrequestedbywriting
azerointoasemaphorelatchandisreleasedwhenthesamesidewrites
a one to that latch.
The eight semaphore flags reside within the IDT7035 in a separate
memoryspacefromtheDual-PortRAM.This addressspaceisaccessed
byplacingaLOWinputontheSEMpin(whichactsasachipselectforthe
semaphore flags) and using the other control pins (Address, OE, and
R/W) as they would be used in accessing a standard Static RAM. Each
of the flags has a unique address which can be accessed by either side
through address pins A0 – A2. When accessing 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
iswrittenintoanunusedsemaphorelocation,thatflagwillbesettoazero
on that side and a one on the other side (see Truth Table V). That
semaphorecannowonlybemodifiedbythesideshowingthezero.When
aoneiswrittenintothesamelocationfromthesameside,theflagwillbe
settoaoneforbothsides(unlessasemaphorerequestfromtheotherside
ispending)andthencanbewrittentobybothsides. Thefactthattheside
whichisabletowriteazerointoasemaphoresubsequentlylocksoutwrites
fromtheothersideiswhatmakessemaphoreflagsusefulininterprocessor
communications.(Athoroughdiscussionontheuseofthisfeaturefollows
shortly.) A zero written into the same location from the other side will be
storedinthesemaphorerequestlatchforthatsideuntilthesemaphoreis
freed by the first side.
Whenasemaphoreflagisread,itsvalueisspreadintoalldatabitsso
thataflagthatisaonereadsasaoneinalldatabitsandaflagcontaining
azeroreadsasallzeros.Thereadvalueislatchedintooneside’soutput
registerwhenthatside'ssemaphoreselect(SEM)andoutputenable(OE)
signalsgoactive.Thisservestodisallowthesemaphorefromchanging
stateinthemiddleofareadcycleduetoawritecyclefromtheotherside.
Becauseofthislatch,arepeatedreadofasemaphoreinatestloopmust
cause either signal (SEM or OE) to go inactive or the output will never
change.
AsequenceWRITE/READmustbeusedbythesemaphoreinorder
to guarantee that no system level contention will occur. A processor
requestsaccesstosharedresourcesbyattemptingtowriteazerointoa
semaphorelocation.Ifthesemaphoreisalreadyinuse,thesemaphore
requestlatchwillcontainazero,yetthesemaphoreflagwillappearasone,
a fact which the processor will verify by the subsequent read (see Truth
TableV).Asanexample,assumeaprocessorwritesazerototheleftport
at a free semaphore location. On a subsequent read, the processor will
verifythatithaswrittensuccessfullytothatlocationandwillassumecontrol
overtheresourceinquestion.Meanwhile,ifaprocessorontherightside
attempts to write a zero to the same semaphore flag it will fail, as will be
verifiedbythefactthataonewillbereadfromthatsemaphoreontheright
side during subsequent read. Had a sequence of READ/WRITE been
usedinstead,systemcontentionproblemscouldhaveoccurredduringthe
gap between the read and write 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.Shouldtheotherside’ssemaphorerequestlatch
havebeenwrittentoazerointhemeantime,thesemaphoreflagwillflip
overtotheothersideassoonasaoneiswrittenintothefirstside’srequest
latch.Thesecondside’sflagwillnowstayLOWuntilitssemaphorerequest
latchiswrittentoaone.Fromthisitiseasytounderstandthat,ifasemaphore
is 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
sidetomaketherequestwillreceivethetoken.Ifbothrequestsarriveat
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.
Aswithanypowerfulprogrammingtechnique,ifsemaphoresaremisused
or misinterpreted, a software error can easily happen.
Initializationofthesemaphoresisnotautomaticandmustbehandled
viatheinitializationprogramatpower-up.Sinceanysemaphorerequest
flagwhichcontainsazeromustberesettoaone,allsemaphoresonboth
sidesshouldhaveaonewrittenintothematinitializationfrombothsides
to assure that they will be free when needed.
UsingSemaphores—SomeExamples
Perhapsthesimplestapplicationofsemaphoresistheirapplicationas
resourcemarkersfortheIDT7035’sDual-PortRAM.Saythe8Kx18RAM
was to be divided into two 4K x 18 blocks which were to be dedicated at
any one time to servicing either the left or right port. Semaphore 0 could
be used to indicate the side which would control the lower section of
memory,andSemaphore1couldbedefinedasthe indicatorfortheupper
sectionofmemory.
To take a resource, in this example the lower 4K of Dual-Port RAM,
the processor on the left port could write and then read a zero in to
Semaphore 0. If this task was successfully completed (a zero was read
back rather than a one), the left processor would assume control
of the lower 4K. Meanwhile the right processor was attempting to gain
control of the resource after the left processor, it would read back a one
inresponsetothezeroithadattemptedtowriteintoSemaphore0.Atthis
point,thesoftwarecouldchoosetotryandgaincontrolofthesecond4K
sectionbywriting,thenreadingazerointoSemaphore1.Ifitsucceeded
in gaining control, it would lock out the left side.
Once the left side was finished with its task, it would write a one to
Semaphore 0 and may then try to gain access to Semaphore 1. If
Semaphore1wasstilloccupiedbytherightside,theleftsidecouldundo
itssemaphorerequestandperformothertasksuntilitwasabletowrite,then
readazerointoSemaphore1.Iftherightprocessorperformsasimilartask
withSemaphore0,thisprotocolwouldallowthetwoprocessorstoswap
4K blocks of Dual-Port RAM with each other.


Similar Part No. - IDT7035S_15

ManufacturerPart #DatasheetDescription
logo
Integrated Device Techn...
IDT7035S IDT-IDT7035S_18 Datasheet
188Kb / 19P
   HIGH-SPEED 8K x 18 DUAL-PORT STATIC RAM
More results

Similar Description - IDT7035S_15

ManufacturerPart #DatasheetDescription
logo
Integrated Device Techn...
IDT7035S IDT-IDT7035S_18 Datasheet
188Kb / 19P
   HIGH-SPEED 8K x 18 DUAL-PORT STATIC RAM
IDT7035S IDT-IDT7035S Datasheet
192Kb / 19P
   HIGH-SPEED 8K x 18 DUAL-PORT STATIC RAM
IDT7025L15PFG IDT-IDT7025L15PFG Datasheet
192Kb / 22P
   HIGH-SPEED 8K x 16 DUAL-PORT STATIC RAM
IDT7015S IDT-IDT7015S Datasheet
263Kb / 20P
   HIGH-SPEED 8K x 9 DUAL-PORT STATIC RAM
IDT7025S IDT-IDT7025S Datasheet
294Kb / 20P
   HIGH-SPEED 8K x 16 DUAL-PORT STATIC RAM
IDT7015S IDT-IDT7015S_16 Datasheet
190Kb / 21P
   HIGH-SPEED 8K x 9 DUAL-PORT STATIC RAM
IDT7005S IDT-IDT7005S_16 Datasheet
733Kb / 21P
   HIGH-SPEED 8K x 8 DUAL-PORT STATIC RAM
IDT7005S IDT-IDT7005S Datasheet
265Kb / 20P
   HIGH-SPEED 8K x 8 DUAL-PORT STATIC RAM
IDT7015S IDT-IDT7015S_17 Datasheet
190Kb / 21P
   HIGH-SPEED 8K x 9 DUAL-PORT STATIC RAM
IDT7025S IDT-IDT7025S_18 Datasheet
201Kb / 22P
   HIGH-SPEED 8K x 16 DUAL-PORT STATIC RAM
More results


Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19


Datasheet Download

Go To PDF Page


Link URL




Privacy Policy
ALLDATASHEET.COM
Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Datasheet Upload   |   Contact us   |   Privacy Policy   |   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