版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、-作者xxxx-日期xxxx同步和異步的區(qū)別【精品文檔】同步和異步的區(qū)別集錦 通俗版:舉個(gè)例子:普通B/S模式(同步)AJAX技術(shù)(異步)同步:提交請(qǐng)求-等待服務(wù)器處理-處理完畢返回 這個(gè)期間客戶端瀏覽器不能干任何事異步: 請(qǐng)求通過(guò)事件觸發(fā)-服務(wù)器處理(這是瀏覽器仍然可以作其他事情)-處理完畢-同步就是你叫我去吃飯,我聽到了就和你去吃飯;如果沒(méi)有聽到,你就不停的叫,直到我告訴你聽到了,才一起去吃飯。異步就是你叫我,然后自己去吃飯,我得到消息后可能立即走,也可能等到下班才去吃飯。 所以,要我請(qǐng)你吃飯就用同步的方法,要請(qǐng)我吃飯就用異步的方法,這樣你可以省錢。-舉個(gè)例子 打電話時(shí)同步 發(fā)消息是異步綜
2、述版:異步通信”是一種很常用的通信方式。異步通信在發(fā)送字符時(shí),所發(fā)送的字符之間的時(shí)間間隔可以是任意的。當(dāng)然,接收端必須時(shí)刻做好接收的準(zhǔn)備(如果接收端主機(jī)的電源都沒(méi)有加上,那么發(fā)送端發(fā)送字符就沒(méi)有意義,因?yàn)榻邮斩烁緹o(wú)法接收)。發(fā)送端可以在任意時(shí)刻開始發(fā)送字符,因此必須在每一個(gè)字符的開始和結(jié)束的地方加上標(biāo)志,即加上開始位和停止位,以便使接收端能夠正確地將每一個(gè)字符接收下來(lái)。異步通信的好處是通信設(shè)備簡(jiǎn)單、便宜,但傳輸效率較低(因?yàn)殚_始位和停止位的開銷所占比例較大)。 異步通信也可以是以幀作為發(fā)送的單位。接收端必須隨時(shí)做好接收幀的準(zhǔn)備。這是,幀的首部必須設(shè)有一些特殊的比特組合,使得接收端能夠找出一幀
3、的開始。這也稱為幀定界。幀定界還包含確定幀的結(jié)束位置。這有兩種方法。一種是在幀的尾部設(shè)有某種特殊的比特組合來(lái)標(biāo)志幀的結(jié)束?;蛘咴趲撞恐性O(shè)有幀長(zhǎng)度的字段。需要注意的是,在異步發(fā)送幀時(shí),并不是說(shuō)發(fā)送端對(duì)幀中的每一個(gè)字符都必須加上開始位和停止位后再發(fā)送出去,而是說(shuō),發(fā)送端可以在任意時(shí)間發(fā)送一個(gè)幀,而幀與幀之間的時(shí)間間隔也可以是任意的。在一幀中的所有比特是連續(xù)發(fā)送的。發(fā)送端不需要在發(fā)送一幀之前和接收端進(jìn)行協(xié)調(diào)(不需要先進(jìn)行比特同步)。 每個(gè)字符開始發(fā)送的時(shí)間可以是任意的t0 0 1 1 0 1 1 0起始位結(jié)束位t每個(gè)幀開始發(fā)送的時(shí)間可以是任意的以字符為單位發(fā)送以幀為單位發(fā)送幀開始幀結(jié)束 “同步通信
4、”的通信雙方必須先建立同步,即雙方的時(shí)鐘要調(diào)整到同一個(gè)頻率。收發(fā)雙方不停地發(fā)送和接收連續(xù)的同步比特流。但這時(shí)還有兩種不同的同步方式。一種是使用全網(wǎng)同步,用一個(gè)非常精確的主時(shí)鐘對(duì)全網(wǎng)所有結(jié)點(diǎn)上的時(shí)鐘進(jìn)行同步。另一種是使用準(zhǔn)同步,各結(jié)點(diǎn)的時(shí)鐘之間允許有微小的誤差,然后采用其他措施實(shí)現(xiàn)同步傳輸。串口進(jìn)行通信的方式有兩種:同步通信方式和異步通信方式。同步通信方式要求通信雙方以相同的時(shí)鐘頻率進(jìn)行,而且準(zhǔn)確協(xié)調(diào),通過(guò)共享一個(gè)單個(gè)時(shí)鐘或定時(shí)脈沖源保證發(fā)送方和接收方的準(zhǔn)確同步,效率較高;異步通信方式不要求雙方同步,收發(fā)方可采用各自的時(shí)鐘源,雙方遵循異步的通信協(xié)議,以字符為數(shù)據(jù)傳輸單位,發(fā)送方傳送字符的時(shí)間間隔
5、不確定,發(fā)送效率比同步傳送效率低。 具體 專業(yè)版:串行通信可以分為兩種類型:同步通信、異步通信。1.異步通信的特點(diǎn)及信息幀格式: 以起止式異步協(xié)議為例,下圖顯示的是起止式一幀數(shù)據(jù)的格式: 圖1 起止式異步通信的特點(diǎn)是:一個(gè)字符一個(gè)字符地傳輸,每個(gè)字符一位一位地傳輸,并且傳輸一個(gè)字符時(shí),總是以“起始位”開始,以“停止位”結(jié)束,字符之間沒(méi)有固定的時(shí)間間隔要求。每一個(gè)字符的前面都有一位起始位(低電平,邏輯值),字符本身由5-7位數(shù)據(jù)位組成,接著字符后面是一位校驗(yàn)位(也可以沒(méi)有校驗(yàn)位),最后是一位或一位半或二位停止位,停止位后面是不定長(zhǎng)的空閑位。停止位和空閑位都規(guī)定為高電平(邏輯值),這樣就保證起始位
6、開始處一定有一個(gè)下跳沿。從圖中可看出,這種格式是靠起始位和停止位來(lái)實(shí)現(xiàn)字符的界定或同步的,故稱為起止式協(xié)議。 異步通信可以采用正邏輯或負(fù)邏輯,正負(fù)邏輯的表示如下表所示: 邏輯0邏輯1正邏輯低電平高電平負(fù)邏輯高電平低電平異步通信的信息格式如下邊的表所示起始位邏輯01位數(shù)據(jù)位邏輯0或15位、6位、7位、8位校驗(yàn)位邏輯0或11位或無(wú)停止位邏輯1空閑位邏輯1任意數(shù)量注:表中位數(shù)的本質(zhì)含義是信號(hào)出現(xiàn)的時(shí)間,故可有分?jǐn)?shù)位,如1.5。例:傳送8位數(shù)據(jù)45H(0100,0101B),奇校驗(yàn),1個(gè)停止位,則信號(hào)線上的波形象圖2所示那樣:異步通信的速率:若9600bps,每字符8位,1起始,1停止,無(wú)奇偶,則實(shí)際
7、每字符傳送10位,則960字符/秒。 圖2接收端以“接收時(shí)鐘”和“波特率因子”決定一位的時(shí)間長(zhǎng)度。下面以波特率因子等于16(接收時(shí)鐘每16個(gè)時(shí)鐘周期,使接收移位寄存器移位一次)、正邏輯為例說(shuō)明,如圖3所示。圖3(1)開始通信時(shí),信號(hào)線為空閑(邏輯1),當(dāng)檢測(cè)到由1到0的跳變時(shí),開始對(duì)“接收時(shí)鐘”計(jì)數(shù)。(2)當(dāng)計(jì)到8個(gè)時(shí)鐘時(shí),對(duì)輸入信號(hào)進(jìn)行檢測(cè),若仍為低電平,則確認(rèn)這是“起始位”B,而不是干擾信號(hào)。(3)接收端檢測(cè)到起始位后,隔16個(gè)接收時(shí)鐘,對(duì)輸入信號(hào)檢測(cè)一次,把對(duì)應(yīng)的值作為D0位數(shù)據(jù)。若為邏輯1, 作為數(shù)據(jù)位1;若為邏輯0,作為數(shù)據(jù)位0。(4)再隔16個(gè)接收時(shí)鐘,對(duì)輸入信號(hào)檢測(cè)一次,把對(duì)應(yīng)的
8、值作為D1位數(shù)據(jù)。.,直到全部數(shù)據(jù)位都輸入。(5)檢測(cè)校驗(yàn)位P(如果有的話)。(6)接收到規(guī)定的數(shù)據(jù)位個(gè)數(shù)和校驗(yàn)位后,通信接口電路希望收到停止位S(邏輯1),若此時(shí)未收到邏輯1,說(shuō)明出現(xiàn)了錯(cuò)誤,在狀態(tài)寄存器中置“幀錯(cuò)誤”標(biāo)志。若沒(méi)有錯(cuò)誤,對(duì)全部數(shù)據(jù)位進(jìn)行奇偶校驗(yàn),無(wú)校驗(yàn)錯(cuò)時(shí),把數(shù)據(jù)位從移位寄存器中送數(shù)據(jù)輸入寄存器。若校驗(yàn)錯(cuò),在狀態(tài)寄存器中置奇偶錯(cuò)標(biāo)志。(7)本幀信息全部接收完,把線路上出現(xiàn)的高電平作為空閑位。(8)當(dāng)信號(hào)再次變?yōu)榈蜁r(shí),開始進(jìn)入下一幀的檢測(cè)。3、異步通信的發(fā)送過(guò)程發(fā)送端以“發(fā)送時(shí)鐘”和“波特率因子”決定一位的時(shí)間長(zhǎng)度。(1)當(dāng)初始化后,或者沒(méi)有信息需要發(fā)送時(shí),發(fā)送端輸出邏輯1,即
9、空閑位,空閑位可以有任意數(shù)量。(2)當(dāng)需要發(fā)送時(shí),發(fā)送端首先輸出邏輯0,作為起始位。(3)接著,發(fā)送端首先發(fā)送D0位,直到各數(shù)據(jù)位發(fā)送完。(4)如果需要的話,發(fā)送端輸出校驗(yàn)位。(5)最后,發(fā)送端輸出停止位(邏輯1)。(6)如果沒(méi)有信息需要發(fā)送時(shí),發(fā)送端輸出邏輯1,即空閑位,空閑位可以有任意數(shù)量。如果還有信息需要發(fā)送,轉(zhuǎn)入第(2)步。對(duì)于以上發(fā)送、接收過(guò)程應(yīng)注意以下幾點(diǎn):(1)接收端總是在每個(gè)字符的頭部(即起始位)進(jìn)行一次重新定位,因此發(fā)送端可以在字符之間插入不等長(zhǎng)的空閑位,不影響接收端的接收。(2)發(fā)送端的發(fā)送時(shí)鐘和接收端的接收時(shí)鐘,其頻率允許有一定差異,當(dāng)頻率差異在一定范圍內(nèi),不會(huì)引起接收端
10、檢測(cè)錯(cuò)位,能夠正確接收。并且這種頻率差異不會(huì)因多個(gè)字符的連續(xù)接收而造成誤差累計(jì)(因?yàn)槊總€(gè)字符的開始(起始位處)接收方均重新定位)。只有當(dāng)發(fā)送時(shí)鐘和接收時(shí)鐘頻率差異太大,引起接收端采樣錯(cuò)位,才造成接收錯(cuò)誤。(3)起始位、校驗(yàn)位、停止位、空閑位的信號(hào),由“發(fā)送移位寄存器”自動(dòng)插入。在接收方,“接收移位寄存器”接收到一幀完整信息(起始、數(shù)據(jù)、校驗(yàn)、停止)后,僅把數(shù)據(jù)的各位送至“數(shù)據(jù)輸入寄存器”,即CPU從“數(shù)據(jù)輸入寄存器”中讀得的信息,只是有效數(shù)字,不包含起始位、校驗(yàn)位、停止位信息。1、同步通信方式的特點(diǎn):采用同步通信時(shí),將許多字符組成一個(gè)信息組,這樣,字符可以一個(gè)接一個(gè)地傳輸,但是,在每組信息(通
11、常稱為幀)的開始要加上同步字符,在沒(méi)有信息要傳輸時(shí),要填上空字符,因?yàn)橥絺鬏敳辉试S有間隙。在同步傳輸過(guò)程中,一個(gè)字符可以對(duì)應(yīng)58位。當(dāng)然,對(duì)同一個(gè)傳輸過(guò)程,所有字符對(duì)應(yīng)同樣的數(shù)位,比如說(shuō)n位。這樣,傳輸時(shí),按每n位劃分為一個(gè)時(shí)間片,發(fā)送端在一個(gè)時(shí)間片中發(fā)送一個(gè)字符,接收端則在一個(gè)時(shí)間片中接收一個(gè)字符。同步傳輸時(shí),一個(gè)信息幀中包含許多字符,每個(gè)信息幀用同步字符作為開始,一般將同步字符和空字符用同一個(gè)代碼。在整個(gè)系統(tǒng)中,由一個(gè)統(tǒng)一的時(shí)鐘控制發(fā)送端的發(fā)送和空字符用同一個(gè)代碼。接收端當(dāng)然是應(yīng)該能識(shí)別同步字符的,當(dāng)檢測(cè)到有一串?dāng)?shù)位和同步字符相匹配時(shí),就認(rèn)為開始一個(gè)信息幀,于是,把此后的數(shù)位作為實(shí)際傳輸
12、信息來(lái)處理。 2、面向字符的同步協(xié)議(IBM的BSC協(xié)議)該協(xié)議規(guī)定了10個(gè)特殊字符(稱為控制字符)作為信息傳輸?shù)臉?biāo)志。其格式為SYN SOH 標(biāo)題 STX 數(shù)據(jù)塊 ETB/ETX 塊校驗(yàn)SYN:同步字符(Synchronous character),每幀可加1個(gè)(單同步)或2個(gè)(雙同步)同步字符。 SOH:標(biāo)題開始(Start of Header)。標(biāo)題:Header,包含源地址(發(fā)送方地址)、目的地址(接收方地址)、路由指示。STX:正文開始(Start of Text)。數(shù)據(jù)塊:正文(Text),由多個(gè)字符組成。ETB:塊傳輸結(jié)束(end of transmission block),
13、標(biāo)識(shí)本數(shù)據(jù)塊結(jié)束。ETX:全文結(jié)束(end of text),(全文分為若干塊傳輸)。塊校驗(yàn):對(duì)從SOH開始,直到ETB/ETX字段的檢驗(yàn)碼。3、面向bit的同步協(xié)議(ISO的HDLC)一幀信息可以是任意位,用位組合標(biāo)識(shí)幀的開始和結(jié)束。 幀格式為:F場(chǎng) A場(chǎng) C場(chǎng) I場(chǎng) FC場(chǎng) F場(chǎng)F場(chǎng):標(biāo)志場(chǎng);作為一幀的開始和結(jié)束,標(biāo)志字符為8位,01111110。 A場(chǎng):地址場(chǎng),規(guī)定接收方地址,可為8的整倍位。接收方檢查每個(gè)地址字節(jié)的第1位,如果為0,則后邊跟著另一個(gè)地址字節(jié)。若為1,則該字節(jié)為最后一個(gè)地址字節(jié)。C場(chǎng):控制場(chǎng)。指示信息場(chǎng)的類型,8位或16位。若第1字節(jié)的第1位為0,則還有第2個(gè)字節(jié)也是控制
14、場(chǎng)。I場(chǎng):信息場(chǎng)。要傳送的數(shù)據(jù)。FC場(chǎng):幀校驗(yàn)場(chǎng)。16位循環(huán)冗余校驗(yàn)碼CRC。除F場(chǎng)和自動(dòng)插入的0位外,均參加CRC計(jì)算。4、同步通信的0位插入和刪除技術(shù)在同步通信中,一幀信息以一個(gè)(或幾個(gè))特殊字符開始,例如,F(xiàn)場(chǎng)=01111110B。但在信息幀的其他位置,完全可能出現(xiàn)這些特殊字符,為了避免接收方把這些特殊字符誤認(rèn)為幀的開始,發(fā)送方采用“0位插入技術(shù),相應(yīng)地,接收方采用0位刪除技術(shù)。發(fā)送方的0位插入:除了起始字符外,當(dāng)連續(xù)出現(xiàn)5個(gè)1時(shí),發(fā)送方自動(dòng)插入一個(gè)0。使得在整個(gè)信息幀中,只有起始字符含有連續(xù)的6個(gè)1。接收方的0位刪除技術(shù):接收方收到連續(xù)6個(gè)1,作為幀的起始,把連續(xù)出現(xiàn)5個(gè)1后的0自動(dòng)刪
15、除。5、同步通信的字節(jié)填充技術(shù)設(shè)需要傳送的原始信息幀為:SOT DATA EOT節(jié)填充技術(shù)采用字符替換方式,使信息幀的DATA中不出現(xiàn)起始字符SOT和結(jié)束字符EOT。 設(shè)按下表方式進(jìn)行替換:DATA中的原字符 替換為SOTESC XEOT ESC YESC ESC Z 其中,ESC=1AH,X、Y、Z可指定為任意字符(除SOT、EOT、ESC外)。 發(fā)送方按約定方式對(duì)需要發(fā)送的原始幀進(jìn)行替換,并把替換后的新的幀發(fā)送給接收方。例如圖所示:接收方按約定方式進(jìn)行相反替換,可以獲得原始幀信息。6、異步通信和同步通信的比較(1)異步通信簡(jiǎn)單,雙方時(shí)鐘可允許一定誤差。同步通信較復(fù)雜,雙方時(shí)鐘的允許誤差較小
16、。(2)異步通信只適用于點(diǎn) 點(diǎn),同步通信可用于點(diǎn) 多。(3)通信效率:異步通信低,同步通信高。 同步與異步2007年11月22日 星期四 19:57在計(jì)算機(jī)領(lǐng)域里,同步與異步的概念實(shí)際上是相對(duì)的。任何傳輸總存在時(shí)間間隔,當(dāng)然不可能做到完全同步。這里我們需要用相對(duì)的觀念去理解。舉個(gè)例子:普通B/S模式(同步)AJAX技術(shù)(異步) 同步:提交請(qǐng)求-等待服務(wù)器處理-處理完畢返回 這個(gè)期間客戶端瀏覽器不能干任何事。 異步: 請(qǐng)求通過(guò)事件觸發(fā)-服務(wù)器處理(這時(shí)瀏覽器仍然可以作其他事情)-處理完畢。 再舉一例:打電話時(shí)是同步,發(fā)消息是異步。如果數(shù)據(jù)將在線程間共享。例如正在寫的數(shù)據(jù)以后可能被另一個(gè)線程讀到,
17、或者正在讀的數(shù)據(jù)可能已經(jīng)被另一個(gè)線程寫過(guò)了,那么這些數(shù)據(jù)就是共享數(shù)據(jù),必須進(jìn)行同步存取。當(dāng)應(yīng)用程序在對(duì)象上調(diào)用了一個(gè)需要花費(fèi)很長(zhǎng)時(shí)間來(lái)執(zhí)行的方法,并且不希望讓程序等待方法的返回時(shí),就應(yīng)該使用異步編程,在很多情況下采用異步途徑往往更有效率。概括來(lái)講,就是有兩個(gè)數(shù)據(jù)源,最初它們的數(shù)據(jù)都是一樣的。若一個(gè)數(shù)據(jù)源的數(shù)據(jù)經(jīng)過(guò)添加、修改、刪除等操作發(fā)生了改變(或者兩個(gè)數(shù)據(jù)源的數(shù)據(jù)都發(fā)生了改變),那么為了使兩個(gè)數(shù)據(jù)源的數(shù)據(jù)保持一致,即讓一個(gè)數(shù)據(jù)源數(shù)據(jù)的改變反映到另一個(gè)上,就必須進(jìn)行一個(gè)讓兩個(gè)數(shù)據(jù)源的數(shù)據(jù)保持一致的操作,這個(gè)操作就叫“同步”。同步操作結(jié)束之后,兩個(gè)設(shè)備上的數(shù)據(jù)就完全一致了,處于“同步”狀態(tài)。 一
18、般來(lái)講,兩個(gè)數(shù)據(jù)源中,一個(gè)是服務(wù)器端,一個(gè)是客戶端。服務(wù)器端由于其計(jì)算功能和處理功能強(qiáng)大,在同步過(guò)程中要比客戶端做更多的計(jì)算和處理工作。 舉例說(shuō)明,在電腦的Outlook里面存儲(chǔ)了很多聯(lián)系人,另外在手機(jī)里面也存儲(chǔ)了很多聯(lián)系人,那么如何使Outlook里面的聯(lián)系人和手機(jī)里面的聯(lián)系人保持一致呢?這時(shí)候就可以通過(guò)“同步”來(lái)實(shí)現(xiàn)這個(gè)目的。此處由于電腦相對(duì)手機(jī)來(lái)說(shuō),計(jì)算功能和處理功能強(qiáng)大,因此我們將PC當(dāng)作服務(wù)器端,手機(jī)當(dāng)作客戶端。服務(wù)器端(電腦的Outlook)和客戶端(手機(jī))第一次同步時(shí),將進(jìn)行“慢同步”,其過(guò)程如下:客戶端發(fā)出自己的全部聯(lián)系人給服務(wù)器端,服務(wù)器將收到的所有聯(lián)系人同自己的聯(lián)系人進(jìn)行比
19、較和分析。分析結(jié)束以后,服務(wù)器向客戶端發(fā)出客戶端沒(méi)有的聯(lián)系人,這樣客戶端就有了服務(wù)器端有而同步之前自己沒(méi)有的聯(lián)系人,而服務(wù)器端也將客戶端有的而同步之前自己沒(méi)有的聯(lián)系人增加進(jìn)來(lái),這樣同步結(jié)束之后,兩個(gè)設(shè)備上的聯(lián)系人信息就完全一致了,處于“同步”狀態(tài)。 現(xiàn)在Outlook和手機(jī)上的聯(lián)系人信息完全一致,比如各自都有10個(gè)客戶的聯(lián)系方式。用戶外出時(shí)攜帶手機(jī),在辦公室則使用PC的Outlook。某一天,用戶在外出中對(duì)手機(jī)上的客戶1和客戶4的信息進(jìn)行了修改,返回公司后,又對(duì)PC上Outlook的客戶2和客戶8的信息作了修改,一天工作下來(lái),用戶想保持手機(jī)和PC上Outlook的客戶的聯(lián)系方式的一致,這個(gè)時(shí)候
20、只需要執(zhí)行“自動(dòng)同步”操作就可達(dá)到該目的。手機(jī)只需要把修改過(guò)的客戶信息(客戶1和客戶4)發(fā)給Outlook,Outlook只需要將修改過(guò)的客戶信息(客戶2和客戶8)發(fā)給手機(jī),然后各自進(jìn)行相應(yīng)的修改就可以了。這種方式之所以叫做“自動(dòng)同步”是因?yàn)樗幌瘛奥健蹦菢有枰阉械男畔l(fā)送給對(duì)方,而只需要將自上次同步以來(lái)修改的信息發(fā)送給對(duì)方就可以了。 如果自上次同步以來(lái),用戶對(duì)手機(jī)和Outlook里面的同一個(gè)聯(lián)系人做了不同更改,那么同步的時(shí)候,就會(huì)出現(xiàn)沖突,那么如何處理呢。在同步以前,用戶可以預(yù)先選擇沖突處理策略來(lái)解決沖突。詳情請(qǐng)查看: 沖突處理策略。 如果自上次同步以來(lái),由于長(zhǎng)時(shí)間沒(méi)有同步或者短時(shí)間
21、內(nèi)某個(gè)數(shù)據(jù)源的數(shù)據(jù)修改較多導(dǎo)致“修改日志”溢出,那么下一次同步軟件就會(huì)自動(dòng)采用“慢同步”。 如果用戶不小心刪除了A數(shù)據(jù)源上的全部數(shù)據(jù),并希望通過(guò)和B數(shù)據(jù)源的同步來(lái)恢復(fù)數(shù)據(jù)的話,用戶需要選擇“慢同步”,否則可能導(dǎo)致B數(shù)據(jù)源的部分?jǐn)?shù)據(jù)也被刪除的后果。因?yàn)樵跐M足“自動(dòng)同步”的條件下,軟件就會(huì)錯(cuò)認(rèn)為用戶是希望刪除B數(shù)據(jù)源的對(duì)應(yīng)數(shù)據(jù)。 因此保險(xiǎn)的做法是用戶先對(duì)B數(shù)據(jù)源的數(shù)據(jù)進(jìn)行備份,然后再同步,如果真的出現(xiàn)了B數(shù)據(jù)源的對(duì)應(yīng)數(shù)據(jù)被刪除的情況,還可以將備份的數(shù)據(jù)導(dǎo)入B數(shù)據(jù)源,然后選擇“慢同步”來(lái)和A數(shù)據(jù)源同步。 所以平時(shí)用戶需要注意對(duì)各個(gè)數(shù)據(jù)源的數(shù)據(jù)進(jìn)行備份,一旦發(fā)生了上述情況,還可以恢復(fù)數(shù)據(jù)。 手機(jī)和Ou
22、tlook可以同步聯(lián)系人,也可以同步日程。 另外手機(jī)除了能和Outlook同步外,還可以和Outlook Express,Notes同步。關(guān)于時(shí)鐘問(wèn)題的探討 作者:未知 無(wú)淪是用離散邏輯、可編程邏輯,還是用全定制硅器件實(shí)現(xiàn)的任何數(shù)字設(shè)計(jì),為了成功地操作,可靠的時(shí)鐘是非常關(guān)鍵的。設(shè)計(jì)不良的時(shí)鐘在極限的溫度、電壓或制造工藝的偏差情況下將導(dǎo)致錯(cuò)誤的行為,并且調(diào)試?yán)щy、花銷很大。 在設(shè)計(jì)pld/fpga時(shí)通常采用幾種時(shí)鐘類型。時(shí)鐘可分為如下四種類型:全局時(shí)鐘、門控時(shí)鐘、多級(jí)邏輯時(shí)鐘和波動(dòng)式時(shí)鐘。多時(shí)鐘系統(tǒng)能夠包括上述四種時(shí)鐘類型的任意組合。 1全局時(shí)鐘 對(duì)于一個(gè)設(shè)計(jì)項(xiàng)目來(lái)說(shuō),全局時(shí)鐘(或同步時(shí)鐘)是最
23、簡(jiǎn)單和最可預(yù)測(cè)的時(shí)鐘。在pld/fpga設(shè)計(jì)中最好的時(shí)鐘方案是:由專用的全局時(shí)鐘輸入引腳驅(qū)動(dòng)的單個(gè)主時(shí)鐘去鐘控設(shè)計(jì)項(xiàng)目中的每一個(gè)觸發(fā)器。只要可能就應(yīng)盡量在設(shè)計(jì)項(xiàng)目中采用全局時(shí)鐘。pld/fpga都具有專門的全局時(shí)鐘引腳,它直接連到器件中的每一個(gè)寄存器。這種全局時(shí)鐘提供器件中最短的時(shí)鐘到輸出的延時(shí)。 圖1 示出全局時(shí)鐘的實(shí)例。圖1 定時(shí)波形示出觸發(fā)器的數(shù)據(jù)輸入d1.3應(yīng)遵守建立時(shí)間和保持時(shí)間的約束條件。建立和保持時(shí)間的數(shù)值在pld數(shù)據(jù)手冊(cè)中給出,也可用軟件的定時(shí)分析器計(jì)算出來(lái)。如果在應(yīng)用中不能滿足建立和保持時(shí)間的要求,則必須用時(shí)鐘同步輸入信號(hào)(參看下一章“異步輸入”)。 圖1 全局時(shí)鐘 (最好的
24、方法是用全局時(shí)鐘引腳去鐘控pld內(nèi)的每一個(gè)寄存器,于是數(shù)據(jù)只要遵守相對(duì)時(shí)鐘的建立時(shí)間tsu和保持時(shí)間th) 2門控時(shí)鐘 在許多應(yīng)用中,整個(gè)設(shè)計(jì)項(xiàng)目都采用外部的全局時(shí)鐘是不可能或不實(shí)際的。pld具有乘積項(xiàng)邏輯陣列時(shí)鐘(即時(shí)鐘是由邏輯產(chǎn)生的),允許任意函數(shù)單獨(dú)地鐘控各個(gè)觸發(fā)器。然而,當(dāng)你用陣列時(shí)鐘時(shí),應(yīng)仔細(xì)地分析時(shí)鐘函數(shù),以避免毛刺。 通常用陣列時(shí)鐘構(gòu)成門控時(shí)鐘。門控時(shí)鐘常常同微處理器接口有關(guān),用地址線去控制寫脈沖。然而,每當(dāng)用組合函數(shù)鐘控觸發(fā)器時(shí),通常都存在著門控時(shí)鐘。如果符合下述條件,門控時(shí)鐘可以象全局時(shí)鐘一樣可靠地工作: 1.驅(qū)動(dòng)時(shí)鐘的邏輯必須只包含一個(gè)“與”門或一個(gè)“或”門。如果采用任何附
25、加邏在某些工作狀態(tài)下,會(huì)出現(xiàn)競(jìng)爭(zhēng)產(chǎn)生的毛刺。 2.邏輯門的一個(gè)輸入作為實(shí)際的時(shí)鐘,而該邏輯門的所有其它輸入必須當(dāng)成地址或控制線,它們遵守相對(duì)于時(shí)鐘的建立和保持時(shí)間的約束。 圖2和圖3 是可靠的門控時(shí)鐘的實(shí)例。在 圖2 中,用一個(gè)“與”門產(chǎn)生門控時(shí)鐘,在 圖3 中,用一個(gè)“或”門產(chǎn)生門控時(shí)鐘。在這兩個(gè)實(shí)例中,引腳nwr和nwe考慮為時(shí)鐘引腳,引腳addo3是地址引腳,兩個(gè)觸發(fā)器的數(shù)據(jù)是信號(hào)d1.n經(jīng)隨機(jī)邏輯產(chǎn)生的。 圖2 “與”門門控時(shí)鐘 圖3 “或”門門控時(shí)鐘 圖2和圖3 的波形圖顯示出有關(guān)的建立時(shí)間和保持時(shí)間的要求。這兩個(gè)設(shè)計(jì)項(xiàng)目的地址線必須在時(shí)鐘保持有效的整個(gè)期間內(nèi)保持穩(wěn)定(nwr和nwe
26、是低電平有效)。如果地址線在規(guī)定的時(shí)間內(nèi)未保持穩(wěn)定,則在時(shí)鐘上會(huì)出現(xiàn)毛刺,造成觸發(fā)器發(fā)生錯(cuò)誤的狀態(tài)變化。另一方面,數(shù)據(jù)引腳d1n只要求在nwr和nwe的有效邊沿處滿足標(biāo)準(zhǔn)的建立和保持時(shí)間的規(guī)定。 我們往往可以將門控時(shí)鐘轉(zhuǎn)換成全局時(shí)鐘以改善設(shè)計(jì)項(xiàng)目的可靠性。圖4 示出如何用全局時(shí)鐘重新設(shè)計(jì) 圖2 的電路。地址線在控制d觸發(fā)器的使能輸入,許多pld設(shè)計(jì)軟件,如max+plusii軟件都提供這種帶使能端的d觸發(fā)器。當(dāng)ena為高電平時(shí),d輸入端的值被鐘控到觸發(fā)器中:當(dāng)ena為低電平時(shí),維持現(xiàn)在的狀態(tài)。 圖4 “與”門門控時(shí)鐘轉(zhuǎn)化成全局時(shí)鐘 圖4 中重新設(shè)計(jì)的電路的定時(shí)波形表明地址線不需要在nwr有效的
27、整個(gè)期間內(nèi)保持穩(wěn)定;而只要求它們和數(shù)據(jù)引腳一樣符合同樣的建立和保持時(shí)間,這樣對(duì)地址線的要求就少很多。 圖 給出一個(gè)不可靠的門控時(shí)鐘的例子。3位同步加法計(jì)數(shù)器的rco輸出用來(lái)鐘控觸發(fā)器。然而,計(jì)數(shù)器給出的多個(gè)輸入起到時(shí)鐘的作用,這違反了可靠門控時(shí)鐘所需的條件之一。在產(chǎn)生rco信號(hào)的觸發(fā)器中,沒(méi)有一個(gè)能考慮為實(shí)際的時(shí)鐘線,這是因?yàn)樗杏|發(fā)器在幾乎相同的時(shí)刻發(fā)生翻轉(zhuǎn)。而我們并不能保證在pld/fpga內(nèi)部qa,qb,qc到d觸發(fā)器的布線長(zhǎng)短一致,因此,如 圖5 的時(shí)間波形所示,在器從3計(jì)到4時(shí),rco線上會(huì)出現(xiàn)毛刺(假設(shè)qc到d觸發(fā)器的路徑較短,即qc的輸出先翻轉(zhuǎn))。 圖5 不可靠的門控時(shí)鐘 (定時(shí)
28、波形示出在計(jì)數(shù)器從3到4改變時(shí),rco信號(hào)如何出現(xiàn)毛刺的) 圖6 給出一種可靠的全局鐘控的電路,它是圖5不可靠計(jì)數(shù)器電路的改進(jìn),rco控制d觸發(fā)器的使能輸入。這個(gè)改進(jìn)不需要增加pld的邏輯單元。 圖6 不可靠的門控時(shí)鐘轉(zhuǎn)換為全局時(shí)鐘 (這個(gè)電路等效于圖5電路,但卻可靠的多) 3多級(jí)邏輯時(shí)鐘 當(dāng)產(chǎn)生門控時(shí)鐘的組合邏輯超過(guò)一級(jí)(即超過(guò)單個(gè)的“與”門或“或”門)時(shí),證設(shè)計(jì)項(xiàng)目的可靠性變得很困難。即使樣機(jī)或仿真結(jié)果沒(méi)有顯示出靜態(tài)險(xiǎn)象,但實(shí)際上仍然可能存在著危險(xiǎn)。通常,我們不應(yīng)該用多級(jí)組合邏輯去鐘控pld設(shè)計(jì)中的觸發(fā)器。 圖7 給出一個(gè)含有險(xiǎn)象的多級(jí)時(shí)鐘的例子。時(shí)鐘是由sel引腳控制的多路選擇器輸出的。
29、多路選擇器的輸入是時(shí)鐘(clk)和該時(shí)鐘的2分頻(div2)。由圖7 的定時(shí)波形圖看出,在兩個(gè)時(shí)鐘均為邏輯1的情況下,當(dāng)sel線的狀態(tài)改變時(shí),存在靜態(tài)險(xiǎn)象。險(xiǎn)象的程度取決于工作的條件。 多級(jí)邏輯的險(xiǎn)象是可以去除的。例如,你可以插入“冗余邏輯”到設(shè)計(jì)項(xiàng)目中。然而,pld/fpga編譯器在邏輯綜合時(shí)會(huì)去掉這些冗余邏輯,使得驗(yàn)證險(xiǎn)象是否真正被去除變得困難了。為此,必須應(yīng)尋求其它方法來(lái)實(shí)現(xiàn)電路的功能。 圖7 有靜態(tài)險(xiǎn)象的多級(jí)時(shí)鐘 圖8 給出 圖7 電路的一種單級(jí)時(shí)鐘的替代方案。圖中sel引腳和div2信號(hào)用于使能d觸發(fā)器的使能輸入端,而不是用于該觸發(fā)器的時(shí)鐘引腳。采用這個(gè)電路并不需要附加pld的邏輯單
30、元,工作卻可靠多了。 不同的系統(tǒng)需要采用不同的方法去除多級(jí)時(shí)鐘,并沒(méi)有固定的模式。 圖7 無(wú)靜態(tài)險(xiǎn)象的多級(jí)時(shí)鐘 (這個(gè)電路邏輯上等效于圖7,但卻可靠的多) 4行波時(shí)鐘 另一種流行的時(shí)鐘電路是采用行波時(shí)鐘,即一個(gè)觸發(fā)器的輸出用作另一個(gè)觸發(fā)器的時(shí)鐘輸入。如果仔細(xì)地設(shè)計(jì),行波時(shí)鐘可以象全局時(shí)鐘一樣地可靠工作。然而,行波時(shí)鐘使得與電路有關(guān)的定時(shí)計(jì)算變得很復(fù)雜。行波時(shí)鐘在行波鏈上各觸發(fā)器的時(shí)鐘之間產(chǎn)生較大的時(shí)間偏移,并且會(huì)超出最壞情況下的建立時(shí)間、保持時(shí)間和電路中時(shí)鐘到輸出的延時(shí),使系統(tǒng)的實(shí)際速度下降。 用計(jì)數(shù)翻轉(zhuǎn)型觸發(fā)器構(gòu)成異步計(jì)數(shù)器時(shí)常采用行波時(shí)鐘,一個(gè)觸發(fā)器的輸出鐘控下一個(gè)觸發(fā)器的輸入,參看圖9
31、同步計(jì)數(shù)器通常是代替異步計(jì)數(shù)器的更好方案,這是因?yàn)閮烧咝枰瑯佣嗟暮陠卧接?jì)數(shù)器有較快的時(shí)鐘到輸出的時(shí)間。圖10 給出具有全局時(shí)鐘的同步計(jì)數(shù)器,它和 圖9 功能相同,用了同樣多的邏輯單元實(shí)現(xiàn),卻有較快的時(shí)鐘到輸出的時(shí)間。幾乎所有pld開發(fā)軟件都提供多種多樣的同步計(jì)數(shù)器。 圖9 行波時(shí)鐘 圖10 行波時(shí)鐘轉(zhuǎn)換成全局時(shí)鐘 (這個(gè)3位計(jì)數(shù)器是圖9異步計(jì)數(shù)器的替代電路,它用了同樣的3個(gè)宏單元,但有更短的時(shí)鐘到輸出的延時(shí)) 5. 多時(shí)鐘系統(tǒng) 許多系統(tǒng)要求在同一個(gè)pld內(nèi)采用多時(shí)鐘。最常見的例子是兩個(gè)異步微處理器器之間的接口,或微處理器和異步通信通道的接口。由于兩個(gè)時(shí)鐘信號(hào)之間要求一定的建立和保持時(shí)間
32、,所以,上述應(yīng)用引進(jìn)了附加的定時(shí)約束條件。它們也會(huì)要求將某些異步信號(hào)同步化。 圖11 給出一個(gè)多時(shí)鐘系統(tǒng)的實(shí)例。clk_a用以鐘控reg_a,clk_b用于鐘控reg_b,由于reg_a驅(qū)動(dòng)著進(jìn)入reg_b的組合邏輯,故clk_a的上升沿相對(duì)于clk_b的上升沿有建立時(shí)間和保持時(shí)間的要求。由于reg_b不驅(qū)動(dòng)饋到reg_a的邏輯,clk_b的上升沿相對(duì)于clk_a沒(méi)有建立時(shí)間的要求。此外,由于時(shí)鐘的下降沿不影響觸發(fā)器的狀態(tài),所以clk_a和clk_b的下降沿之間沒(méi)有時(shí)間上的要求。, 如圖4,2ii所示,電路中有兩個(gè)獨(dú)立的時(shí)鐘,可是,在它們之間的建立時(shí)間和保持時(shí)間的要求是不能保證的。在這種情況下
33、,必須將電路同步化。圖12 給出reg_a的值(如何在使用前)同clk_b同步化。新的觸發(fā)器reg_c由glk_b觸控,保證reg_g的輸出符合reg_b的建立時(shí)間。然而,這個(gè)方法使輸出延時(shí)了一個(gè)時(shí)鐘周期。 圖ll 多時(shí)鐘系統(tǒng) (定時(shí)波形示出clk_a的上升沿相對(duì)于clk_b的上升沿有建立時(shí)間和保持時(shí)間的約束條件) 圖12 具有同步寄存器輸出的多時(shí)鐘系統(tǒng) (如果clk_a和clk_b是相互獨(dú)立的,則rega的輸出必須在它饋送到1reg_b之前,用reg_c同步化) 在許多應(yīng)用中只將異步信號(hào)同步化還是不夠的,當(dāng)系統(tǒng)中有兩個(gè)或兩個(gè)以上非同源時(shí)鐘的時(shí)候,數(shù)據(jù)的建立和保持時(shí)間很難得到保證,我們將面臨復(fù)
34、雜的時(shí)間問(wèn)題。最好的方法是將所有非同源時(shí)鐘同步化。使用pld內(nèi)部的鎖項(xiàng)環(huán)(pll或dll)是一個(gè)效果很好的方法,但不是所有pld都帶有pll、dll,而且?guī)в衟ll功能的芯片大多價(jià)格昂貴,所以除非有特殊要求,一般場(chǎng)合可以不使用帶pll的pld。 這時(shí)我們需要使用帶使能端的d觸發(fā)器,并引入一個(gè)高頻時(shí)鐘。 圖13 不同源時(shí)鐘 如圖13所示,系統(tǒng)有兩個(gè)不同源時(shí)鐘,一個(gè)為3mhz,一個(gè)為5mhz,不同的觸發(fā)器使用不同的時(shí)鐘。為了系統(tǒng)穩(wěn)定,我們引入一個(gè)20mhz時(shí)鐘,將3m和5m時(shí)鐘同步化,如圖15所示。 20m的高頻時(shí)鐘將作為系統(tǒng)時(shí)鐘,輸入到所有觸發(fā)器的的時(shí)鐘端。3m_en 和5m_en將控制所有觸發(fā)
35、器的使能端。即原來(lái)接3m時(shí)鐘的觸發(fā)器,接20m時(shí)鐘,同時(shí)3m_en 將控制該觸發(fā)器使能 ,原接5m時(shí)鐘的觸發(fā)器,也接20m時(shí)鐘,同時(shí)5m_en 將控制該觸發(fā)器使能。 這樣我們就可以將任何非同源時(shí)鐘同步化。 圖13 同步化任意非同源時(shí)鐘 (一個(gè)dff和后面非門,與門構(gòu)成時(shí)鐘上升沿檢測(cè)電路) (轉(zhuǎn))異步與同步通信 同步就像打電話,異步就像發(fā)信息。異步與同步通信 異步通信”是一種很常用的通信方式。異步通信在發(fā)送字符時(shí),所發(fā)送的字符之間的時(shí)間間隔可以是任意的。當(dāng)然,接收端必須時(shí)刻做好接收的準(zhǔn)備(如果接收端主機(jī)的電源都沒(méi)有加上,那么發(fā)送端發(fā)送字符就沒(méi)有意義,因?yàn)榻邮斩烁緹o(wú)法接收)。發(fā)送端可以在任意時(shí)刻
36、開始發(fā)送字符,因此必須在每一個(gè)字符的開始和結(jié)束的地方加上標(biāo)志,即加上開始位和停止位,以便使接收端能夠正確地將每一個(gè)字符接收下來(lái)。異步通信的好處是通信設(shè)備簡(jiǎn)單、便宜,但傳輸效率較低(因?yàn)殚_始位和停止位的開銷所占比例較大)。 異步通信也可以是以幀作為發(fā)送的單位。接收端必須隨時(shí)做好接收幀的準(zhǔn)備。這是,幀的首部必須設(shè)有一些特殊的比特組合,使得接收端能夠找出一幀的開始。這也稱為幀定界。幀定界還包含確定幀的結(jié)束位置。這有兩種方法。一種是在幀的尾部設(shè)有某種特殊的比特組合來(lái)標(biāo)志幀的結(jié)束。或者在幀首部中設(shè)有幀長(zhǎng)度的字段。需要注意的是,在異步發(fā)送幀時(shí),并不是說(shuō)發(fā)送端對(duì)幀中的每一個(gè)字符都必須加上開始位和停止位后再發(fā)
37、送出去,而是說(shuō),發(fā)送端可以在任意時(shí)間發(fā)送一個(gè)幀,而幀與幀之間的時(shí)間間隔也可以是任意的。在一幀中的所有比特是連續(xù)發(fā)送的。發(fā)送端不需要在發(fā)送一幀之前和接收端進(jìn)行協(xié)調(diào)(不需要先進(jìn)行比特同步)。每個(gè)字符開始發(fā)送的時(shí)間可以是任意的t0 0 1 1 0 1 1 0起始位結(jié)束位t每個(gè)幀開始發(fā)送的時(shí)間可以是任意的以字符為單位發(fā)送以幀為單位發(fā)送幀開始幀結(jié)束 “同步通信”的通信雙方必須先建立同步,即雙方的時(shí)鐘要調(diào)整到同一個(gè)頻率。收發(fā)雙方不停地發(fā)送和接收連續(xù)的同步比特流。但這時(shí)還有兩種不同的同步方式。一種是使用全網(wǎng)同步,用一個(gè)非常精確的主時(shí)鐘對(duì)全網(wǎng)所有結(jié)點(diǎn)上的時(shí)鐘進(jìn)行同步。另一種是使用準(zhǔn)同步,各結(jié)點(diǎn)的時(shí)鐘之間允許有微小的誤差,然后采用其他措施實(shí)現(xiàn)同步傳輸.同步通信以多字節(jié)組成的數(shù)據(jù)塊(幾十至
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度消防安全評(píng)估與咨詢服務(wù)合同3篇
- 2025年度高端裝備制造與出口總合同3篇
- 二零二五年度礦山地質(zhì)災(zāi)害防治合同匯編3篇
- 2024版大學(xué)學(xué)生宿舍樓物業(yè)承包合同
- 二零二五年飯店客房經(jīng)營(yíng)權(quán)及客房用品定制合同3篇
- 2024環(huán)保技術(shù)研發(fā)合同成果轉(zhuǎn)化
- 2024物流公司與倉(cāng)儲(chǔ)企業(yè)之間的貨物運(yùn)輸合同
- 2024行政訴訟刑事上訴狀案件調(diào)解與和解合同2篇
- 2024年精簡(jiǎn)版勞動(dòng)協(xié)議樣本模板版B版
- 二零二五版山林林木種植與管護(hù)合同范本3篇
- 第2課《濟(jì)南的冬天》課件-2024-2025學(xué)年統(tǒng)編版語(yǔ)文七年級(jí)上冊(cè)
- 2024年水利工程高級(jí)工程師理論考試題庫(kù)(濃縮400題)
- 增強(qiáng)現(xiàn)實(shí)技術(shù)在藝術(shù)教育中的應(yīng)用
- TD/T 1060-2021 自然資源分等定級(jí)通則(正式版)
- 《創(chuàng)傷失血性休克中國(guó)急診專家共識(shí)(2023)》解讀
- 倉(cāng)庫(kù)智能化建設(shè)方案
- 海外市場(chǎng)開拓計(jì)劃
- 供應(yīng)鏈組織架構(gòu)與職能設(shè)置
- 幼兒數(shù)學(xué)益智圖形連線題100題(含完整答案)
- 七上-動(dòng)點(diǎn)、動(dòng)角問(wèn)題12道好題-解析
- 2024年九省聯(lián)考新高考 數(shù)學(xué)試卷(含答案解析)
評(píng)論
0/150
提交評(píng)論