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

查看: 3980|回復: 1
打印 上一主題 下一主題

“搶占式多主多從”單總線沖突裁決方案

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

由于篇幅所限,方案論述到此,牛已吹破,具體實現還需個人的造化了。
我在某個單總線系統中應用了該技術方案,效果非常好。

我對1-Wire“按位裁決”技術的感覺和評語為:
    “美國佬,你連這樣笨的辦法都能想出來???”

菜農HotPower@126.com  2003.8.25 于雁塔菜地
沙發
發表于 2015-2-7 10:06:50 | 只看該作者
支持一下
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线精品视频在线观看高清 | 亚洲精品在线免费看 | 国产免费一级视频 | 色5月婷婷 | 免费国产一区二区在免费观看 | 欧美成人性生活 | 日韩一区二区三区四区五区 | 亚洲精品国产男人的天堂 | 精品国产网站 | 四虎最新紧急入口4hu | 最近韩国高清免费观看视频大全 | 国产高清一区二区三区 | 中文字幕国产精品 | 在线日本中文字幕 | 日韩精品一| 国产精品极品美女自在线观看 | 成人免费网站在线观看 | 奇淫三国| 高清在线精品一区二区 | 日本黄色一区 | 久久99久久精品久久久久久 | 日本色频| 国产欧美日韩免费一区二区 | h在线看免费视频网站男男 h在线看 | 欧美性生交xxxxx久久久 | 99福利| 日韩a毛片 | 四虎网站在线观看 | 免费a级午夜绝情美女图片 免费a级毛片 | 日本一区二区三区四区不卡 | 蜜臀首页| 99视频在线精品 | 国产特级毛片aaaaaaa高清 | 欧美激情一区二区三区视频高清 | 亚洲免费观看在线视频 | 手机在线色 | 日本中文字幕一区二区有码在线 | 国产美女在线观看 | 国产一区二区三区国产精品 | 天天操天天干视频 | 久9久9精品视频在线观看 |