<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 片上總線(xiàn)Wishbone 學(xué)習(十二)總線(xiàn)周期之RMW操作

片上總線(xiàn)Wishbone 學(xué)習(十二)總線(xiàn)周期之RMW操作

作者: 時(shí)間:2016-12-15 來(lái)源:網(wǎng)絡(luò ) 收藏
在操作系統中,有一種重要的進(jìn)程間的同步機制稱(chēng)作信號量機制。信號量即當前可用資源的計數。信號量是一個(gè)用來(lái)實(shí)現同步的整型或記錄型(Record)變量,除了初始化外,對它只能執行等待和釋放這兩種原子操作。一次對信號量的等待操作是獲得信號量的過(guò)程,讀取當前信號量的值,如果發(fā)現有可利用資源,則將信號量減1,否則進(jìn)入等待狀態(tài)。一次對信號量的釋放過(guò)程即將信號量加1。一個(gè)進(jìn)程對信號的讀取、計算新的信號量值、更新信號量的值這三個(gè)步驟是不允許被其他進(jìn)程打破的,如果被打破,則信號量的值將會(huì )發(fā)生錯誤,RMW操作的最大用途在于信號量操作。

一次RMW操作對于總線(xiàn)來(lái)說(shuō),本質(zhì)上是兩次子操作,一次讀,一次寫(xiě),只不過(guò)這兩次子操作必須由同一個(gè)主設備的完成,且讀數據和寫(xiě)數據的地址相同。"改"是不發(fā)生在總線(xiàn)上的,它發(fā)生在主設備內部。一個(gè)RMW操作的例子如圖13所示,其過(guò)程如下:

本文引用地址:http://dyxdggzs.com/article/201612/330210.htm

在時(shí)鐘上升沿0,主設備將地址信號ADR_O()、TGA_O()放到總線(xiàn)上,將WE_O置為低表示讀操作,將適當的SEL_O()信號置高通知從設備將數據放在數據總線(xiàn)的適當位置,將CYC_O和TGC_O()置高表示操作正在進(jìn)行,將STB_O置高表示第一次子操作開(kāi)始。CYC_O和TGC_O()可以發(fā)生在上升沿0以前的任何時(shí)刻。

在時(shí)鐘上升沿1到達之前,從設備檢測到主設備發(fā)起的操作,將適當的數據放到主設備的DAT_I()和TGD_I(),將主設備的ACK_I置高作為對主設備STB_O的響應。

在時(shí)鐘上升沿1,主設備發(fā)現ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第一次子操作。主設備將STB_O置低表示插入等待。

在時(shí)鐘上升沿1之后新的上升沿到達之前,從設備檢測到主設備將STB_O置低,于是將ACK_I置低。

經(jīng)過(guò)若干等待周期,在上升沿2,主設備將地址信號ADR_O()、TGA_O()放到總線(xiàn)上,將數據信號DAT_O()、TGD_O()放到總線(xiàn)上,將WE_O置為高表示寫(xiě)操作,將適當的SEL_O()信號置高通知從設備將數據總線(xiàn)上哪些信號是有效的,將STB_O置高表示第二次子操作開(kāi)始。

在時(shí)鐘上升沿3到達之前,從設備檢測到主設備發(fā)起的操作,將主設備的ACK_I置高作為對主設備STB_O的響應。

在時(shí)鐘上升沿3,從設備將DAT_I()和TGD_I()采樣;主設備發(fā)現ACK_I信號為高,得知第二次子操作完成,于是將STB_O和CYC_O置低表示整個(gè)RMW操作完成。

在時(shí)鐘上升沿之后,從設備發(fā)現STB_O為低,于是將ACK_I置低。

Wishbone總線(xiàn)的RMW操作



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>