国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 3981|回復(fù): 1
打印 上一主題 下一主題

“搶占式多主多從”單總線(xiàn)沖突裁決方案

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2009-4-2 22:23:58 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
關(guān)鍵詞: 單總線(xiàn) , 方案 , 搶占
1-Wire是一種非常好的“一主多從”單總線(xiàn)標(biāo)準(zhǔn),但它還存在一定的局限性。
用戶(hù)在設(shè)計(jì)自己的單總線(xiàn)系統(tǒng)時(shí),掛接在單總線(xiàn)上的接口設(shè)備往往是獨(dú)立工作的。這就要求單總線(xiàn)無(wú)主從設(shè)備之分,在任意時(shí)刻,每個(gè)設(shè)備都可申請(qǐng)為主設(shè)備,當(dāng)然該時(shí)刻只能有一個(gè)設(shè)備申請(qǐng)為主設(shè)備,而其他只能被迫淪為從設(shè)備,且必須等待“單總線(xiàn)沖突裁決時(shí)序”過(guò)后才能再次搶線(xiàn),這就是所謂的“搶占式多主多從”單總線(xiàn)系統(tǒng)。
    由于在任意時(shí)刻可能有多個(gè)設(shè)備同時(shí)申請(qǐng)“升級(jí)”為主設(shè)備,故總線(xiàn)沖突不可避免。
為了解決單總線(xiàn)沖突問(wèn)題,必須給掛接在單總線(xiàn)上的所有接口設(shè)備賦予不同的唯一編碼即用戶(hù)序列碼。
1-Wire采用1字節(jié)設(shè)備碼+6字節(jié)用戶(hù)序列碼+1字節(jié)CRC循環(huán)冗余碼校驗(yàn)方案。
其中用戶(hù)序列碼為全球唯一碼共6個(gè)字節(jié)48位,再加上設(shè)備碼共7個(gè)字節(jié)56位。
但這正是1-Wire在單總線(xiàn)沖突裁決技術(shù)中的最大缺點(diǎn),正因?yàn)槿绱怂荒茏鳛椤耙恢鞫鄰摹眴慰偩(xiàn)標(biāo)準(zhǔn),它注重了“全球唯一”,忽略了“沖突裁決”,從而被迫采用“按位裁決”。
由于在多個(gè)設(shè)備同時(shí)搶占時(shí),在單總線(xiàn)上將發(fā)生“線(xiàn)與”現(xiàn)象,CRC將出現(xiàn)錯(cuò)誤,本次搶占失敗。由于無(wú)法裁決,故可能永遠(yuǎn)搶下去,互不相讓?zhuān)斐煽偩(xiàn)癱瘓。
解決總線(xiàn)沖突的較好方法是在發(fā)送原碼后再發(fā)送其反碼。
由于一般系統(tǒng)不可能掛接很多設(shè)備,故可將1-Wire編碼方案改造如下:
半字節(jié)設(shè)備碼+半字節(jié)設(shè)備碼+3字節(jié)序列碼+3字節(jié)序列反碼+1字節(jié)前7個(gè)字節(jié)的CRC。
以上是“搶占式多主多從”單總線(xiàn)編碼,它的優(yōu)點(diǎn)是沖突裁決已隱含在編碼之中,且校驗(yàn)功能大大增強(qiáng),缺點(diǎn)是最多只能掛接2^24=16777216個(gè)設(shè)備碼相同的不同設(shè)備,再加上16個(gè)設(shè)備號(hào),本方案最大可掛接2^28=268435456個(gè)不同設(shè)備,但一般系統(tǒng)不可能有如此之多個(gè)設(shè)備。
由于編碼中已隱含沖突裁決,故改造后的單總線(xiàn)就升級(jí)為“多主多從單總線(xiàn)標(biāo)準(zhǔn)”。它在應(yīng)用中比1-Wire只多出了“單總線(xiàn)沖突裁決時(shí)序”,其它時(shí)序不變或根據(jù)實(shí)際需要而定。
本人喜歡稱(chēng)其為“群魔亂舞單總線(xiàn)標(biāo)準(zhǔn)”,主從不分,隨心所欲。
可能有人會(huì)問(wèn)“沖突裁決已隱含在編碼之中”,HotPower又在吹牛!
牛會(huì)被一個(gè)簡(jiǎn)單的單總線(xiàn)沖突裁決例子吹破的…
假設(shè)有一單總線(xiàn)系統(tǒng)上最多可掛接8個(gè)接口設(shè)備,編號(hào)為000~111。
故用戶(hù)序列碼為000,001,010,011,100,101,110,111。
用戶(hù)序列反碼為111,110,101,100,011,010,001,000。
所以設(shè)備0編碼:000 111
    設(shè)備1編碼:001 110
    ………………………..
    設(shè)備7編碼:111 000
1)當(dāng)8個(gè)設(shè)備同時(shí)搶線(xiàn)時(shí),在單總線(xiàn)上將發(fā)生“線(xiàn)與”現(xiàn)象。
                     原碼  反碼
                     000  111
                     001  110
                     ……….
              AND 111  000
------------------------
線(xiàn)與結(jié)果: RES=000 000
2)將線(xiàn)與結(jié)果RES中的原碼和反碼相“異或”,從中判出沖突位。
RES中的原碼:       000
RES中的反碼:XOR 000
異或結(jié)果:  XRES= 000   (0為沖突位)
故在XRES中有3個(gè)0即有3個(gè)沖突位,從而判定總線(xiàn)上可能有2^3=8個(gè)設(shè)備搶線(xiàn)!
3)遵守XRES中的最高沖突位為1的設(shè)備必須下線(xiàn)的規(guī)則,繼續(xù)下一輪的搶線(xiàn)
由于多主多從單總線(xiàn)為雙向總線(xiàn),即在發(fā)送的同時(shí)也可接收,故100~111設(shè)備被迫下線(xiàn)。
4)類(lèi)同1)此時(shí)有4個(gè)設(shè)備同時(shí)搶線(xiàn)時(shí),在單總線(xiàn)上將再次發(fā)生“線(xiàn)與”現(xiàn)象。
                     原碼 反碼
                     000  111
                     001  110
                     010  101
              AND 011   100
------------------------
線(xiàn)與結(jié)果: RES=000 100
5) 類(lèi)同2)將線(xiàn)與結(jié)果RES中的原碼和反碼相“異或”,從中判出沖突位。
RES中的原碼:       000
RES中的反碼:XOR 100
異或結(jié)果:  XRES= 100   (0為沖突位)
故在XRES中有2個(gè)0即有2個(gè)沖突位,從而判定總線(xiàn)上可能有2^2=4個(gè)設(shè)備搶線(xiàn)!
6)類(lèi)同3)遵守XRES中的最高沖突位為1的設(shè)備必須下線(xiàn)的規(guī)則,繼續(xù)下一輪的搶線(xiàn)
故010~011設(shè)備被迫下線(xiàn)。此時(shí)只有000和001設(shè)備可在下一輪的搶線(xiàn)。
7)類(lèi)同1)此時(shí)有2個(gè)設(shè)備同時(shí)搶線(xiàn)時(shí),在單總線(xiàn)上將再次發(fā)生“線(xiàn)與”現(xiàn)象。
                     原碼 反碼
                     000  111
              AND 001  110
------------------------
線(xiàn)與結(jié)果: RES=000 110
8) 類(lèi)同2)將線(xiàn)與結(jié)果RES中的原碼和反碼相“異或”,從中判出沖突位。
RES中的原碼:       000
RES中的反碼:XOR 110
異或結(jié)果:  XRES= 110   (0為沖突位)
故在XRES中有1個(gè)0即有1個(gè)沖突位,從而判定總線(xiàn)上可能有2^1=2個(gè)設(shè)備搶線(xiàn)!
9)類(lèi)同3)遵守XRES中的最高沖突位為1的設(shè)備必須下線(xiàn)的規(guī)則,繼續(xù)下一輪的搶線(xiàn)
故001設(shè)備被迫下線(xiàn)。此時(shí)只有000設(shè)備可在下一輪的搶線(xiàn)即可升級(jí)為主設(shè)備(但還需將江山打下來(lái)才算數(shù),故必須再搶線(xiàn),以免有的設(shè)備剛開(kāi)機(jī),不守規(guī)矩)。
10)類(lèi)同1)此時(shí)有1個(gè)設(shè)備搶線(xiàn),在單總線(xiàn)上不可能發(fā)生“線(xiàn)與”現(xiàn)象。
“線(xiàn)與”結(jié)果: RES=000 111
9) 類(lèi)同2)將線(xiàn)與結(jié)果RES中的原碼和反碼相“異或”,從中判出沖突位。
RES中的原碼:        000
RES中的反碼:XOR 111
異或結(jié)果:  XRES= 111   (0為沖突位)
故在XRES中有0個(gè)0即有0個(gè)沖突位,從而判定總線(xiàn)上可能有2^0=1個(gè)設(shè)備搶線(xiàn)!
經(jīng)過(guò)幾輪的“拼搏”,000設(shè)備終于“榮升”為主設(shè)備,當(dāng)上了“皇上”!這樣它就可“發(fā)號(hào)施令”了!其它設(shè)備只好“俯首稱(chēng)臣”,只有等到該主設(shè)備“退位”才能再有機(jī)會(huì)參加“競(jìng)選”,爭(zhēng)當(dāng)下屆“總統(tǒng)”。該總線(xiàn)雖很“民主”,但小號(hào)設(shè)備還是“太子”。

由于篇幅所限,方案論述到此,牛已吹破,具體實(shí)現(xiàn)還需個(gè)人的造化了。
我在某個(gè)單總線(xiàn)系統(tǒng)中應(yīng)用了該技術(shù)方案,效果非常好。

我對(duì)1-Wire“按位裁決”技術(shù)的感覺(jué)和評(píng)語(yǔ)為:
    “美國(guó)佬,你連這樣笨的辦法都能想出來(lái)???”

菜農(nóng)HotPower@126.com  2003.8.25 于雁塔菜地
沙發(fā)
發(fā)表于 2015-2-7 10:06:50 | 只看該作者
支持一下

本版積分規(guī)則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 在线亚州| 性感美女被爆操 | 亚洲国产一区二区三区在线观看 | 日本一区二区三区四区不卡 | 99re视频精品全部免费 | 国产高清一区二区三区四区 | 极品福利视频 | 男人天堂亚洲 | 欧美精品一区二区三区四区 | 亚洲狠狠ady亚洲精品大秀 | 国产在线91区精品 | 国产福利91精品一区二区 | 久久九九热re6这里有精品 | 国产欧美自拍视频 | 久操伊人 | 精品国精品自拍自在线 | 成人99国产精品一级毛片 | 香蕉视频99 | 99自拍网 | 花季传媒可以看什么 | 久久久久久极精品久久久 | 尻逼逼 | 亚洲精品v欧美精品动漫精品 | 伊人网色 | 日韩精品视频免费 | 日本大片免aaa费观看视频 | 欧美视频第二页 | 一区二区不卡视频在线观看 | 久久精品国产亚洲麻豆小说 | 欧美综合自拍亚洲综合图片区 | 国产一区二区三区久久精品 | 99热这里都是精品 | 欧洲三级在线观看 | 欧美精品在线一区二区三区 | 四虎4hu永久免费视频大全 | 亚洲嫩草影院在线观看 | 久久影院午夜伦手机不四虎卡 | 国产一区二区三区夜色 | 欧洲97色综合成人网 | 狠狠综合视频精品播放 | 亚洲天堂男 |