專利名稱:同步串行通信方法和同步串行通信系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種同步串行通信方法,據(jù)此可以與定時(shí)信號(hào)同步地發(fā)送串行數(shù)據(jù),還涉及基于該方法的一種同步串行通信系統(tǒng)。
但是,如果要發(fā)送大容量的數(shù)據(jù),則串行數(shù)據(jù)通信要求較長(zhǎng)的時(shí)間。此外,如果一系列數(shù)據(jù)已經(jīng)被調(diào)用,而后來(lái)必須對(duì)該數(shù)據(jù)加以改變時(shí),通常包括改變的數(shù)據(jù)的所有數(shù)據(jù),必須重新發(fā)送。因此,哪怕這一改變僅涉及前述數(shù)據(jù)的單個(gè)數(shù)據(jù),所有前述數(shù)據(jù)及與這些數(shù)據(jù)對(duì)應(yīng)的時(shí)鐘信號(hào),都必須重新發(fā)送。由于有這些麻煩,常規(guī)的串行通信要求較長(zhǎng)的發(fā)送時(shí)間,特別是后來(lái)必須對(duì)數(shù)據(jù)加以改變時(shí)。
下面,以基于熱噴墨打印的圖像形成系統(tǒng)為例,說(shuō)明常規(guī)串行數(shù)據(jù)通信遇到的各種問(wèn)題。按照基于熱噴墨的圖像形成系統(tǒng),在附于油墨噴嘴的電熱換能器單元上施加一驅(qū)動(dòng)脈沖,從而使通至噴嘴的油墨通路內(nèi)的油墨中,產(chǎn)生一逐漸變大的氣泡;該氣泡對(duì)接近噴嘴的油墨液滴施加足夠高的壓力,強(qiáng)迫該油墨液滴噴射出去;從而使該噴射的油墨打在一張記錄紙上,在紙上打印出一個(gè)點(diǎn)。
該圖像形成系統(tǒng)采用串行信號(hào)傳輸,以便把打印數(shù)據(jù)從引擎部分發(fā)送至記錄頭部分。引擎部分或發(fā)射器,把打印例如一線條所需數(shù)據(jù)發(fā)送至接收器端的存儲(chǔ)裝置。要使該數(shù)據(jù)能通過(guò)串行數(shù)據(jù)通信恰當(dāng)?shù)貍鬏?,用時(shí)鐘信號(hào)通知哪一數(shù)據(jù)應(yīng)分配在存儲(chǔ)裝置的哪一位置。例如,如果存儲(chǔ)裝置有八個(gè)地址,每一地址有一字節(jié)寬,那么,接收數(shù)據(jù)的單元總數(shù)應(yīng)為8×8或64。因此,如果要求該系統(tǒng)發(fā)送打印一線條所需數(shù)據(jù),那么該系統(tǒng)應(yīng)通過(guò)時(shí)鐘線發(fā)送64個(gè)時(shí)鐘信號(hào),并通過(guò)數(shù)據(jù)線發(fā)送與那些時(shí)鐘信號(hào)對(duì)應(yīng)的數(shù)據(jù),這樣,打印一線條所需數(shù)據(jù)才能恰當(dāng)?shù)卮鎯?chǔ)在記錄頭部分的存儲(chǔ)裝置內(nèi)。這里以圖像形成系統(tǒng)為例,說(shuō)明打印一線條所需數(shù)據(jù)至少要求64個(gè)時(shí)鐘信號(hào)。如果該圖像形成系統(tǒng)必須打印全色的圖像,它將用四個(gè)打印頭,因而,打印全色圖像一線條所需數(shù)據(jù)的容量將變大,而時(shí)鐘信號(hào)數(shù)也相應(yīng)增加,這將過(guò)分加長(zhǎng)打印所需時(shí)間。
基于噴墨打印的記錄方法還存在另一個(gè)問(wèn)題油墨液滴的量將隨噴射液滴的噴墨單元的溫度而變化。為滿足這一條件,把一溫度傳感器附在每個(gè)噴嘴上,檢測(cè)噴嘴的溫度,并引入反饋控制,以便按照該單元的溫度改變加于噴墨單元的驅(qū)動(dòng)脈沖寬度。因此,該系統(tǒng)可能遇到這樣的情況,打印必須的數(shù)據(jù)已經(jīng)由引擎部分發(fā)送至打印部分之后,該系統(tǒng)還要響應(yīng)某個(gè)噴墨單元溫度傳感器的檢測(cè)信號(hào),確定加于該噴墨單元的驅(qū)動(dòng)脈沖寬度的改變,還必須把該改變添加到先前已送出的數(shù)據(jù)的某些部分上。更具體說(shuō),該系統(tǒng)可能遇到這樣的情況,當(dāng)圖像開(kāi)始形成,并在形成的過(guò)程中,某個(gè)噴墨單元的溫度上升,系統(tǒng)必須降低加于上述噴墨單元的驅(qū)動(dòng)脈沖的寬度,并把該改變添加到先前發(fā)送的數(shù)據(jù)中。如果常規(guī)的圖像形成系統(tǒng)如前所述,在接收器端包括一64個(gè)單元的存儲(chǔ)裝置,那么,當(dāng)該系統(tǒng)遇到這種情況時(shí),將重新發(fā)送64個(gè)時(shí)鐘信號(hào),和與某個(gè)時(shí)鐘信號(hào)同步的要改變的數(shù)據(jù),該時(shí)鐘信號(hào)與存儲(chǔ)著要改變的數(shù)據(jù)的存儲(chǔ)單元對(duì)應(yīng)。如上所述,按照常規(guī)的串行數(shù)據(jù)通信,哪怕必須加以改變只是64個(gè)數(shù)據(jù)中的單個(gè)數(shù)據(jù),64個(gè)時(shí)鐘信號(hào)也必須與該改變一起重新發(fā)送,仿佛所有數(shù)據(jù)都必須改變一樣。就是說(shuō),按照常規(guī)的串行數(shù)據(jù)通信,改變先前發(fā)送的數(shù)據(jù),要求的時(shí)間過(guò)分長(zhǎng)。
本發(fā)明是以上述情況為背景提出的,目的是提供一種同步串行通信方法,能增加串行數(shù)據(jù)的傳送速度,同時(shí)提供基于該方法的同步串行通信系統(tǒng)。
最好修改本方法,使當(dāng)前發(fā)送的數(shù)據(jù)塊信息能與先前發(fā)送的數(shù)據(jù)塊信息比較,并且,如果該兩者相同,則省略當(dāng)前的數(shù)據(jù)塊信息,而發(fā)送與先前數(shù)據(jù)塊信息通知的數(shù)據(jù)塊對(duì)應(yīng)的各數(shù)據(jù)塊中包含的數(shù)據(jù)(第三模式)。
還有,最好修改本方法,使可供使用的通信模式有三種,包括作為第一模式的常規(guī)同步串行通信,在該模式下,發(fā)送的數(shù)據(jù)是不分為數(shù)據(jù)塊的;第二模式如上所述;第三模式也如上述,并且,在需要發(fā)送數(shù)據(jù)時(shí),把模式信息附于傳輸?shù)臄?shù)據(jù)中,該模式信息通知用何種模式實(shí)現(xiàn)數(shù)據(jù)的傳輸。
圖2畫(huà)出三種模式如何實(shí)現(xiàn)數(shù)據(jù)的傳送。
圖3是數(shù)據(jù)寄存器的示意圖,該寄存器存儲(chǔ)由數(shù)據(jù)接收控制器接收的數(shù)據(jù)。
圖4是數(shù)據(jù)傳輸控制器的方框圖。
圖5是流程圖,表明數(shù)據(jù)塊的比較/計(jì)算部分的處理過(guò)程。
圖6是流程圖,表明判定部分的處理過(guò)程。
圖7是控制部分運(yùn)行的時(shí)序圖。
圖8是流程圖,表明輸出電路部分的輸出流程。
圖9是數(shù)據(jù)傳輸控制器的時(shí)序圖。
圖10是數(shù)據(jù)接收控制器的方框圖。
圖11是流程圖,表明數(shù)據(jù)接收控制器的工作原理。
圖12是數(shù)據(jù)接收控制器的時(shí)序圖。
圖13表示第二實(shí)施例的數(shù)據(jù)傳輸控制器的方框圖。
圖14是在發(fā)送反相命令時(shí)信號(hào)的時(shí)序圖。
圖15是在發(fā)送比特位移命令時(shí)信號(hào)的時(shí)序圖。
圖16畫(huà)出表示第二實(shí)施例數(shù)據(jù)接收控制器的處理流程。
實(shí)現(xiàn)本發(fā)明的最佳模式(第一實(shí)施例)構(gòu)成下面參照附圖,說(shuō)明本發(fā)明的第一實(shí)施例。圖1代表本發(fā)明的第一實(shí)施例的示意圖,畫(huà)出基于熱噴墨打印的圖像形成系統(tǒng)概況。圖1所示基于熱噴墨打印的圖像形成系統(tǒng)100,包括引擎部分11,內(nèi)有CPU 111和數(shù)據(jù)傳輸控制器112,還包括記錄頭部分12,內(nèi)有數(shù)據(jù)接收控制器113和打印頭114。數(shù)據(jù)接收控制器112通過(guò)總線與CPU 111連接,并響應(yīng)CPU 111的指令寫(xiě)入數(shù)據(jù),或接收CPU 111的指令開(kāi)始通信。數(shù)據(jù)傳輸控制器112在收到CPU 111開(kāi)始通信的指令時(shí),確定下述通信模式中,何種模式最適合以最可能短的時(shí)間發(fā)送數(shù)據(jù),把通知所選擇的通信模式的通信模式信息,添加到發(fā)送的數(shù)據(jù)中,然后通過(guò)串行數(shù)據(jù)通信,把獲得的數(shù)據(jù)發(fā)送至數(shù)據(jù)接收控制器113。該系統(tǒng)通過(guò)同步串行通信,在數(shù)據(jù)傳輸控制器112與數(shù)據(jù)接收控制器113之間進(jìn)行數(shù)據(jù)通信。要發(fā)送的數(shù)據(jù)s111通過(guò)數(shù)據(jù)線,與通過(guò)時(shí)鐘線的時(shí)鐘信號(hào)s113同步地傳送。通信模式在本實(shí)施例中,負(fù)責(zé)數(shù)據(jù)傳輸控制器與數(shù)據(jù)接收控制器之間數(shù)據(jù)通信的串行數(shù)據(jù)通信,包括三種模式,稱為完全模式、數(shù)據(jù)塊模式、和脈沖串模式。完全模式定義為普通的同步串行通信,其中的數(shù)據(jù)是與串行信號(hào)同步發(fā)送的。在數(shù)據(jù)塊模式定義的通信中,如果要求傳輸指定長(zhǎng)度的串行數(shù)據(jù)時(shí),則把待發(fā)送的數(shù)據(jù)分為多個(gè)數(shù)據(jù)塊,首先發(fā)送數(shù)據(jù)塊信息,指明要發(fā)送的數(shù)據(jù)塊,然后發(fā)送由數(shù)據(jù)塊信息指明的數(shù)據(jù)塊中包含的數(shù)據(jù),據(jù)此完成數(shù)據(jù)通信。在脈沖串模式定義的通信中,系統(tǒng)比較當(dāng)前發(fā)送的數(shù)據(jù)塊信息和先前發(fā)送的數(shù)據(jù)塊信息,并且,當(dāng)系統(tǒng)發(fā)現(xiàn)該兩者相同時(shí),則省略數(shù)據(jù)塊信息,而發(fā)送包含在待發(fā)送數(shù)據(jù)塊中的數(shù)據(jù)。數(shù)據(jù)傳輸控制器把指示用何種模式傳送數(shù)據(jù)的模式信息,附于CPU發(fā)送的數(shù)據(jù)上,并把數(shù)據(jù)發(fā)送至數(shù)據(jù)接收控制器。
圖2畫(huà)出三種模式如何實(shí)現(xiàn)數(shù)據(jù)的傳送。圖2(a)表示當(dāng)數(shù)據(jù)通過(guò)完全模式傳輸時(shí)的信號(hào)圖形;圖2(b)表示當(dāng)數(shù)據(jù)通過(guò)數(shù)據(jù)塊模式傳輸時(shí)的信號(hào)圖形;和圖2(c)表示當(dāng)數(shù)據(jù)通過(guò)脈沖串模式傳輸時(shí)的信號(hào)圖形。在各圖中,SD代表待發(fā)送的數(shù)據(jù),而SC代表時(shí)鐘信號(hào)。在時(shí)鐘信號(hào)左端引入的一比特,代表開(kāi)始比特。引入開(kāi)始比特的理由,是當(dāng)存在噪聲時(shí),保護(hù)系統(tǒng)避免失效操作。如果發(fā)送開(kāi)始比特,當(dāng)該開(kāi)始比特是高電平的,數(shù)據(jù)便開(kāi)始傳輸。第二和第三比特通知設(shè)定的通信模式的模式信息。如果與第二和第三比特對(duì)應(yīng)的數(shù)據(jù)皆為零(0),數(shù)據(jù)發(fā)送所用模式將是圖2(a)所示完全模式。如果與第二和第三比特對(duì)應(yīng)的數(shù)據(jù),前者是零(0)后者是一(1),那么,數(shù)據(jù)發(fā)送所用模式將是圖2(b)所示數(shù)據(jù)塊模式。如果與第二和第三比特對(duì)應(yīng)的數(shù)據(jù),前者是一(1)后者是零(0),那么,數(shù)據(jù)發(fā)送所用模式將是圖2(c)所示脈沖串模式。后面參照?qǐng)D3,說(shuō)明按照三種通信模式的數(shù)據(jù)傳輸。圖3是數(shù)據(jù)寄存器的示意圖,該寄存器存儲(chǔ)由數(shù)據(jù)接收控制器接收的數(shù)據(jù)。在該圖中,帶圓圈的數(shù)字代表地址。因此,該數(shù)據(jù)寄存器的地址數(shù)是八(8)。每一地址可以包括一(1)字節(jié)數(shù)據(jù)。相應(yīng)地,圖示數(shù)據(jù)寄存器能存儲(chǔ)8×8比特或64比特?cái)?shù)據(jù)。
現(xiàn)在讓我們假定,數(shù)據(jù)傳輸控制器將按完全模式把數(shù)據(jù)發(fā)送至數(shù)據(jù)接收控制器。于是,數(shù)據(jù)傳輸控制器令對(duì)應(yīng)于開(kāi)始比特的數(shù)據(jù)為1,而對(duì)應(yīng)于第二和第三比特的數(shù)據(jù)均為0,然后對(duì)應(yīng)于64個(gè)時(shí)鐘信號(hào),按從最高有效比特到最低有效比特的順序,發(fā)送64個(gè)數(shù)據(jù)。當(dāng)數(shù)據(jù)接收控制器接收一系列如圖2(a)所示數(shù)據(jù)時(shí),借助識(shí)別跟隨開(kāi)始比特發(fā)送的、對(duì)應(yīng)于第二和第三比特的數(shù)據(jù)皆為0,發(fā)現(xiàn)數(shù)據(jù)將通過(guò)完全模式發(fā)送。于是,前述控制器以8比特為單位,把從第五(第5)比特起逐個(gè)出現(xiàn)的數(shù)據(jù),存儲(chǔ)進(jìn)數(shù)據(jù)寄存器的各地址中,如圖3所示。因此,如果數(shù)據(jù)傳輸發(fā)生在完全模式,則對(duì)該數(shù)據(jù)傳輸要求68比特或34個(gè)時(shí)鐘信號(hào)。
現(xiàn)在讓我們假定,數(shù)據(jù)傳輸控制器將按數(shù)據(jù)塊模式發(fā)送數(shù)據(jù)。于是,該控制器令對(duì)應(yīng)于開(kāi)始比特的數(shù)據(jù)為1,而對(duì)應(yīng)于第二和第三比特的數(shù)據(jù)為0和1,然后設(shè)定數(shù)據(jù)塊信息,指示各數(shù)據(jù)塊按從最高數(shù)據(jù)塊到最低數(shù)據(jù)塊的順序發(fā)送。該控制器將按從高順序比特開(kāi)始的順序,以8比特逐個(gè)發(fā)送由數(shù)據(jù)塊信息設(shè)定的各數(shù)據(jù)塊中包含的數(shù)據(jù)。對(duì)于圖2(b)所示例子,是依據(jù)時(shí)鐘信號(hào)把第9和第12比特?cái)?shù)據(jù)設(shè)定為1。這表示,改變是在第3數(shù)據(jù)塊(對(duì)應(yīng)于第31到第24比特)和在第0數(shù)據(jù)塊(對(duì)應(yīng)于第7到第0比特)中引入的。在圖2(b),改變是作為0Fhex(16進(jìn)制數(shù)據(jù))引入的。當(dāng)數(shù)據(jù)接收控制器接收一系列如圖2(c)所示數(shù)據(jù)時(shí),借助識(shí)別跟隨開(kāi)始比特發(fā)送的、對(duì)應(yīng)于第二和第三比特的數(shù)據(jù)為0和1,預(yù)示數(shù)據(jù)將通過(guò)數(shù)據(jù)塊模式發(fā)送。于是,前述控制器依據(jù)時(shí)鐘信號(hào),識(shí)別載有數(shù)據(jù)塊發(fā)送信息的從第5至第12比特的持續(xù)數(shù)據(jù)。如果按數(shù)據(jù)塊模式的數(shù)據(jù)傳輸如圖2(b)所示,這表明改變是在數(shù)據(jù)塊3和0中引入的,而其他數(shù)據(jù)塊沒(méi)有改變。當(dāng)數(shù)據(jù)傳輸按數(shù)據(jù)塊模式發(fā)生時(shí),改變的數(shù)據(jù)將依據(jù)時(shí)鐘信號(hào),從第13比特起,以8比特逐個(gè)發(fā)送。在圖2(b)所示特殊例子中,傳送總數(shù)達(dá)16比特的兩個(gè)數(shù)據(jù)塊。因此,當(dāng)該兩個(gè)數(shù)據(jù)塊通過(guò)如圖2(b)所示數(shù)據(jù)塊模式傳送時(shí),這些數(shù)據(jù)在傳送時(shí)要求28比特或14個(gè)時(shí)鐘信號(hào)。如果相同量的數(shù)據(jù)通過(guò)完全模式傳送,如參照?qǐng)D2(a)所指出,要求34個(gè)時(shí)鐘信號(hào)。因此,按照數(shù)據(jù)塊模式的數(shù)據(jù)傳輸,與按照完全模式的數(shù)據(jù)傳輸比較,將節(jié)省對(duì)應(yīng)于20個(gè)時(shí)鐘信號(hào)的時(shí)間。換句話說(shuō),只要討論是限于如圖2(a)和圖2(b)所示的特殊例子,通過(guò)數(shù)據(jù)塊模式的數(shù)據(jù)傳輸,與按照完全模式的數(shù)據(jù)傳輸比較,將使傳輸時(shí)間縮短對(duì)應(yīng)于20個(gè)時(shí)鐘信號(hào)的時(shí)間。
現(xiàn)在讓我們假定,數(shù)據(jù)傳輸控制器將按脈沖串模式發(fā)送數(shù)據(jù)。于是,該控制器令對(duì)應(yīng)于開(kāi)始比特的數(shù)據(jù)為1,而對(duì)應(yīng)于第二和第三比特的數(shù)據(jù)為1和0。然后,該控制器將按下降順序,從第5比特起以8比特逐個(gè)發(fā)送改變了的數(shù)據(jù)塊中包含的數(shù)據(jù)。對(duì)于圖2(c)所示特定例子,在先前已經(jīng)發(fā)送的數(shù)據(jù)中,只有第6數(shù)據(jù)塊(對(duì)應(yīng)于第55至第48比特的數(shù)據(jù))當(dāng)前被改變?yōu)?Fhex數(shù)據(jù)。當(dāng)數(shù)據(jù)接收控制器接收一系列如圖2(c)所示的數(shù)據(jù)時(shí),借助識(shí)別跟隨開(kāi)始比特發(fā)送的、對(duì)應(yīng)于第二和第三比特的數(shù)據(jù)為1和0,預(yù)示數(shù)據(jù)將通過(guò)脈沖串模式發(fā)送。于是,前述控制器把從第5比特起以8比特逐個(gè)發(fā)送的數(shù)據(jù),寫(xiě)入先前傳送的相應(yīng)數(shù)據(jù)塊上。對(duì)于圖2(c)所示特定例子,數(shù)據(jù)接收控制器接收8比特?cái)?shù)據(jù),置換先前傳送的第6數(shù)據(jù)塊。在本情形中,數(shù)據(jù)傳輸以對(duì)應(yīng)于總數(shù)為6個(gè)時(shí)鐘信號(hào)的時(shí)間完成。因此,用脈沖串模式來(lái)置換先前的數(shù)據(jù)塊,與用常規(guī)的完全模式實(shí)現(xiàn)前述目的比較,將節(jié)省對(duì)應(yīng)于28個(gè)時(shí)鐘信號(hào)的時(shí)間,換句話說(shuō),通過(guò)脈沖串模式的數(shù)據(jù)傳輸,與按完全模式的常規(guī)數(shù)據(jù)傳輸比較,傳輸時(shí)間縮短對(duì)應(yīng)于28個(gè)時(shí)鐘信號(hào)的時(shí)間。數(shù)據(jù)傳輸控制器的構(gòu)成下面參照?qǐng)D4,說(shuō)明數(shù)據(jù)傳輸控制器。圖4是數(shù)據(jù)傳輸控制器的方框圖。該數(shù)據(jù)傳輸控制器包括地址解碼部分121,對(duì)CPU發(fā)送的地址數(shù)據(jù)解碼,并確定接收的數(shù)據(jù)將要寫(xiě)入的位置;數(shù)據(jù)寄存器122,把CPU發(fā)送的數(shù)據(jù)臨時(shí)存儲(chǔ)進(jìn)地址解碼部分121推薦的位置;當(dāng)前數(shù)據(jù)塊存儲(chǔ)器124,用于存儲(chǔ)當(dāng)前改變了的數(shù)據(jù)塊;先前數(shù)據(jù)塊存儲(chǔ)器125,用于存儲(chǔ)先前改變了的數(shù)據(jù)塊;數(shù)據(jù)塊比較/計(jì)算部分126,它通過(guò)比較當(dāng)前數(shù)據(jù)塊信息是否與先前的相同來(lái)檢查當(dāng)前數(shù)據(jù)塊,并且,在需要傳輸數(shù)據(jù)時(shí),對(duì)三種模式的每一模式,計(jì)算要傳輸該數(shù)據(jù)所需的時(shí)鐘信號(hào)數(shù);判定部分127,根據(jù)數(shù)據(jù)塊比較/計(jì)算部分126的比較/計(jì)算結(jié)果,決定傳輸該數(shù)據(jù)的最合適的模式;輸出電路部分128,通過(guò)判定部分127推薦的模式,發(fā)送存儲(chǔ)于數(shù)據(jù)寄存器122的數(shù)據(jù);以及控制部分123,它控制當(dāng)前數(shù)據(jù)塊存儲(chǔ)器、先前數(shù)據(jù)塊存儲(chǔ)器、數(shù)據(jù)塊比較/計(jì)算部分、輸出電路部分等等的運(yùn)行。數(shù)據(jù)傳輸控制器的工作原理CPU 111根據(jù)外部個(gè)人計(jì)算機(jī)或類似裝置發(fā)來(lái)的數(shù)據(jù),產(chǎn)生片選信號(hào)s121、寫(xiě)入信號(hào)s123、地址b122、和數(shù)據(jù)125,并把它們發(fā)送至數(shù)據(jù)傳輸控制器112。在數(shù)據(jù)傳輸控制器中,地址解碼部分121分析CPU送來(lái)的地址,并調(diào)用啟動(dòng)信號(hào)s124,根據(jù)該啟動(dòng)信號(hào),確定數(shù)據(jù)寫(xiě)入數(shù)據(jù)寄存器部分122的位置。啟動(dòng)信號(hào)是8比特總線,使之能以新數(shù)據(jù)置換數(shù)據(jù)寄存器中給定某地址的數(shù)據(jù),方法是把對(duì)應(yīng)于該地址的比特改變?yōu)?,從而指出要置換的地址。地址解碼部分121根據(jù)CPU送來(lái)的地址b123,獲得通知哪一數(shù)據(jù)塊當(dāng)前已經(jīng)更新的信息s127,并把信息s127發(fā)送至當(dāng)前數(shù)據(jù)塊存儲(chǔ)器。此外,地址解碼部分122在收到CPU送來(lái)的開(kāi)始數(shù)據(jù)傳輸?shù)男盘?hào)時(shí),發(fā)送一開(kāi)始觸發(fā)信號(hào)s126至控制部分123??刂撇糠?23在收到開(kāi)始觸發(fā)信號(hào)s126時(shí),產(chǎn)生指令信號(hào)130并把該信號(hào)發(fā)送至數(shù)據(jù)塊比較/計(jì)算部分,以推動(dòng)數(shù)據(jù)塊比較/計(jì)算部分比較數(shù)據(jù)塊信息s128與數(shù)據(jù)塊信息s129,數(shù)據(jù)塊信息s128是關(guān)于當(dāng)前寫(xiě)入、存儲(chǔ)在當(dāng)前數(shù)據(jù)塊存儲(chǔ)器中的數(shù)據(jù)塊的數(shù)據(jù)塊信息,而數(shù)據(jù)塊信息s129是關(guān)于先前寫(xiě)入、存儲(chǔ)在先前數(shù)據(jù)塊存儲(chǔ)器中的數(shù)據(jù)塊的數(shù)據(jù)塊信息,還推動(dòng)數(shù)據(jù)塊比較/計(jì)算部分對(duì)三種模式的每一模式,計(jì)算當(dāng)前要傳輸該數(shù)據(jù)所需的時(shí)鐘信號(hào)數(shù)。數(shù)據(jù)塊比較/計(jì)算部分在收到來(lái)自控制部分的指令信號(hào)s130時(shí),把當(dāng)前數(shù)據(jù)塊信息s128與先前數(shù)據(jù)塊信息s129比較,并且,當(dāng)發(fā)現(xiàn)該兩者彼此一致時(shí),發(fā)送狀態(tài)信號(hào)s131至判定部分。同時(shí),數(shù)據(jù)塊比較/計(jì)算部分計(jì)算以脈沖串模式和數(shù)據(jù)塊模式發(fā)送這些數(shù)據(jù)所需的時(shí)鐘信號(hào)數(shù),并把代表該兩種模式計(jì)算結(jié)果的信號(hào)s132和s133發(fā)送至判定部分。
在收到通知當(dāng)前要發(fā)送的數(shù)據(jù)塊與先前發(fā)送的數(shù)據(jù)塊一致的狀態(tài)信號(hào)s131時(shí),為了置換存儲(chǔ)在數(shù)據(jù)寄存器122中的所有數(shù)據(jù),判定部分127確定是否按信號(hào)s132和s133的值給出較少計(jì)算結(jié)果的模式,執(zhí)行當(dāng)前的數(shù)據(jù)傳輸(即當(dāng)前的數(shù)據(jù)傳輸是按數(shù)據(jù)塊模式還是按脈沖串模式),或者是否所有數(shù)據(jù)都按完全模式發(fā)送。相反,當(dāng)判定部分沒(méi)有收到狀態(tài)信號(hào)s131時(shí),即,當(dāng)判定部分發(fā)現(xiàn)當(dāng)前要發(fā)送的數(shù)據(jù)塊與先前發(fā)送的那些數(shù)據(jù)塊不一致時(shí),判定部分確定,置換先前數(shù)據(jù)的當(dāng)前數(shù)據(jù),是按數(shù)據(jù)塊模式發(fā)送還是按脈沖串模式發(fā)送。判定部分作出的決定,以模式信息s134發(fā)送至輸出電路部分128。
輸出電路部分128根據(jù)模式信息s134、有關(guān)當(dāng)前饋送數(shù)據(jù)塊的數(shù)據(jù)塊信息s128、以及數(shù)據(jù)寄存器122的寄存器值s135,產(chǎn)生按模式信息格式化的串行數(shù)據(jù)s137,并響應(yīng)控制部分123送來(lái)的輸出電路觸發(fā)信號(hào)s136,把該串行數(shù)據(jù)s137和時(shí)鐘信號(hào)s138發(fā)送至數(shù)據(jù)接收控制器。輸出電路部分128在發(fā)送這些數(shù)據(jù)之后,迅速發(fā)送輸出完成信號(hào)s139至控制部分123,把輸出傳輸已經(jīng)完成通知后者??刂撇糠?23在收到輸出完成信號(hào)s139時(shí),為了把當(dāng)前數(shù)據(jù)塊存儲(chǔ)器124的數(shù)據(jù)塊信息s128傳送至先前數(shù)據(jù)塊存儲(chǔ)器125,產(chǎn)生寫(xiě)入啟動(dòng)信號(hào)s140,并把它發(fā)送至先前數(shù)據(jù)塊存儲(chǔ)器。然后,前述部分產(chǎn)生清除附于當(dāng)前數(shù)據(jù)塊存儲(chǔ)器124的數(shù)值的信號(hào)s142,并把信號(hào)s142發(fā)送至存儲(chǔ)器124。關(guān)于數(shù)據(jù)傳輸控制器執(zhí)行的一系列操作,就說(shuō)到這里。數(shù)據(jù)塊比較/計(jì)算部分的工作原理圖5是流程圖,表明數(shù)據(jù)塊比較/計(jì)算部分的處理過(guò)程。在步驟10,數(shù)據(jù)塊比較/計(jì)算部分126檢查它是否已經(jīng)從控制部分126收到指令信號(hào)s130,該信號(hào)推動(dòng)該部分126執(zhí)行比較/計(jì)算,而當(dāng)前述部分發(fā)現(xiàn)它已經(jīng)收到上述指令信號(hào)130時(shí),前進(jìn)至步驟11。在這里,數(shù)據(jù)塊比較/計(jì)算部分126比較當(dāng)前數(shù)據(jù)塊的數(shù)據(jù)塊信息s128與先前數(shù)據(jù)塊的數(shù)據(jù)塊信息s129。當(dāng)該部分126發(fā)現(xiàn)該兩者相同時(shí),前進(jìn)至步驟12,并進(jìn)行計(jì)算,把數(shù)據(jù)塊數(shù)目乘4并對(duì)答案加2(時(shí)鐘信號(hào)要求的開(kāi)始比特和設(shè)定模式的數(shù)目),然后得到按脈沖串模式發(fā)送該數(shù)據(jù)所需的時(shí)鐘信號(hào)數(shù)。在步驟13,該部分126升起標(biāo)志s131,表明當(dāng)前數(shù)據(jù)可以按脈沖串模式發(fā)送。反之,如果該數(shù)據(jù)塊比較/計(jì)算部分126發(fā)現(xiàn)當(dāng)前數(shù)據(jù)的數(shù)據(jù)塊信息s128與先前數(shù)據(jù)的數(shù)據(jù)塊信息s129不一致,則前進(jìn)至步驟14,并進(jìn)行計(jì)算,把數(shù)據(jù)塊數(shù)目乘4并對(duì)答案加2(時(shí)鐘信號(hào)要求的開(kāi)始比特和設(shè)定模式的數(shù)目),還要對(duì)先前得到的答案加上為設(shè)定數(shù)據(jù)塊信息所需的時(shí)鐘信號(hào)數(shù),從而得到按數(shù)據(jù)塊模式發(fā)送當(dāng)前數(shù)據(jù)所需時(shí)鐘信號(hào)數(shù)。由此可見(jiàn),該部分126對(duì)每種通信模式計(jì)算發(fā)送當(dāng)前數(shù)據(jù)所需時(shí)鐘信號(hào)數(shù)。但是,如果當(dāng)前數(shù)據(jù)必須通過(guò)完全模式發(fā)送,傳輸需要的時(shí)鐘信號(hào)數(shù)是34,并且,只要通過(guò)該模式發(fā)送的數(shù)據(jù)數(shù)目相同,無(wú)需另行計(jì)算。判定部分的工作原理圖6是流程圖,表明判定部分127的處理過(guò)程。在步驟20,上述部分檢查數(shù)據(jù)塊比較/計(jì)算部分126是否升起標(biāo)志s131,該標(biāo)志表明該兩數(shù)據(jù)塊彼此一致,并當(dāng)發(fā)現(xiàn)標(biāo)志升起時(shí),它前進(jìn)至步驟21。在步驟21,為了置換存儲(chǔ)在數(shù)據(jù)寄存器122中的所有先前數(shù)據(jù),判定部分127確定,是否按信號(hào)s132和s133的值給出較少計(jì)算結(jié)果的模式,執(zhí)行當(dāng)前的數(shù)據(jù)傳輸(即當(dāng)前的數(shù)據(jù)傳輸是按數(shù)據(jù)塊模式還是按脈沖串模式),或者是否所有數(shù)據(jù)都按完全模式發(fā)送。相反,當(dāng)判定部分發(fā)現(xiàn)上述標(biāo)志沒(méi)有升起,它前進(jìn)至步驟22。在步驟22,判定部分127把數(shù)據(jù)塊比較/計(jì)算部分126獲得并通過(guò)信號(hào)s133通知的、按數(shù)據(jù)塊模式發(fā)送該數(shù)據(jù)所需時(shí)鐘信號(hào)數(shù),與按完全模式發(fā)送相同數(shù)據(jù)所需的時(shí)鐘信號(hào)數(shù)進(jìn)行比較。如果判定部分127從比較結(jié)果發(fā)現(xiàn),按完全模式發(fā)送該數(shù)據(jù)要求較少的時(shí)鐘信號(hào),那么在步驟24,該部分127送出信號(hào)s134(“00”)至輸出電路部分,表示該數(shù)據(jù)將按完全模式發(fā)送。相反,如果判定部分127從比較結(jié)果發(fā)現(xiàn),按數(shù)據(jù)塊模式發(fā)送該數(shù)據(jù)要求較少的時(shí)鐘信號(hào),那么該部分前進(jìn)至步驟23,并送出信號(hào)s134(“01”)至輸出電路部分,表示該數(shù)據(jù)將按數(shù)據(jù)塊模式發(fā)送。控制部分的工作原理圖7是控制部分123運(yùn)行的時(shí)序圖??刂撇糠?23在收到地址解碼部分121發(fā)送的開(kāi)始觸發(fā)信號(hào)s126時(shí),首先把指令信號(hào)s130發(fā)送至數(shù)據(jù)塊比較/計(jì)算部分,指令后者執(zhí)行比較/計(jì)算。然后,該部分123把輸出觸發(fā)信號(hào)s136發(fā)送至輸出電路部分,推動(dòng)后者發(fā)送輸出。之后,控制部分123在收到輸出完成信號(hào)s139,表示輸出電路部分完成輸出的發(fā)送時(shí),為了把存儲(chǔ)在當(dāng)前數(shù)據(jù)塊存儲(chǔ)器的數(shù)據(jù)塊信息轉(zhuǎn)移至先前數(shù)據(jù)塊存儲(chǔ)器,控制部分123產(chǎn)生啟動(dòng)信號(hào)s140,并把該信號(hào)發(fā)送至先前數(shù)據(jù)塊存儲(chǔ)器。然后,前述部分123,產(chǎn)生清除存儲(chǔ)在當(dāng)前數(shù)據(jù)塊存儲(chǔ)器中數(shù)據(jù)的信號(hào)s142,并把該信號(hào)發(fā)送至該存儲(chǔ)器。輸出電路部分的工作原理圖8是流程圖,表明輸出電路部分128的輸出流程。在步驟30,當(dāng)輸出電路部分128發(fā)現(xiàn)已從控制部分收到輸出觸發(fā)信號(hào)s136時(shí),對(duì)判定部分發(fā)送的模式信息s134解碼,以識(shí)別數(shù)據(jù)傳輸模式,并按由此識(shí)別的模式發(fā)送數(shù)據(jù)。具體說(shuō),在步驟31,輸出電路部分128檢查模式信息s134是否為“00”。當(dāng)發(fā)現(xiàn)上述信息是“00”時(shí),前進(jìn)至步驟32,然后取出存儲(chǔ)在數(shù)據(jù)寄存器部分122中的數(shù)據(jù),并按如圖2(a)所示完全模式,把這些數(shù)據(jù)發(fā)送至數(shù)據(jù)接收控制器。另外,當(dāng)在步驟31發(fā)現(xiàn)模式信息s134不是“00”時(shí),輸出電路部分128前進(jìn)至步驟33,并檢查模式信息s134是否為“01”。當(dāng)發(fā)現(xiàn)答案是肯定的時(shí)候,它前進(jìn)至步驟34,并把相關(guān)數(shù)據(jù)按如圖2(b)所示數(shù)據(jù)塊模式,發(fā)送至數(shù)據(jù)接收控制器。或者,當(dāng)輸出電路部分128在步驟33發(fā)現(xiàn)模式信息s134不是“01”時(shí),它前進(jìn)至步驟35,并把相關(guān)數(shù)據(jù)按如圖2(c)所示脈沖串模式,發(fā)送至數(shù)據(jù)接收控制器。各數(shù)據(jù)發(fā)送單元的時(shí)序圖圖9是數(shù)據(jù)傳輸控制器的時(shí)序圖。圖9所示是把F0hex通過(guò)脈沖串模式寫(xiě)入數(shù)據(jù)塊2。CPU把片選信號(hào)s121和寫(xiě)入信號(hào)s123,發(fā)送至地址解碼部分,同時(shí)還發(fā)送表明尋址至位置2的地址信號(hào)s122。基于F0hex的數(shù)據(jù)s125被寫(xiě)入數(shù)據(jù)寄存器部分。圖9的信號(hào)s135表明,基于F0hex的數(shù)據(jù)被存儲(chǔ)在數(shù)據(jù)寄存器部分的數(shù)據(jù)塊2中。地址解碼部分把關(guān)于當(dāng)前已經(jīng)置換數(shù)據(jù)的數(shù)據(jù)塊信息,寫(xiě)入當(dāng)前數(shù)據(jù)塊存儲(chǔ)器。作為對(duì)該操作的響應(yīng),修改當(dāng)前數(shù)據(jù)塊存儲(chǔ)器送來(lái)的信號(hào)s128,使用于地址2的信號(hào)s128升至高電平,以便指出數(shù)據(jù)寄存器部分地址2(數(shù)據(jù)塊2)的數(shù)據(jù)已被置換。圖9代表的情況是,數(shù)據(jù)傳輸按脈沖串模式,從而,先前數(shù)據(jù)塊存儲(chǔ)器要發(fā)送的信號(hào)s129也在地址2升至高電平,情形與信號(hào)s128相似。此外,因?yàn)樵诒厩闆r中,數(shù)據(jù)按脈沖串模式發(fā)送,表示當(dāng)前數(shù)據(jù)塊信息的信號(hào)s131與表示先前數(shù)據(jù)塊信息的信號(hào)相同,所以同樣保持在高電平。接著,CPU把通知地址8的地址信號(hào)s122發(fā)送至地址解碼部分,并按照00hex把數(shù)據(jù)s125寫(xiě)入地址解碼部分。通知地址8的信號(hào)與命令數(shù)據(jù)有關(guān),與待傳送的數(shù)據(jù)無(wú)關(guān)。地址解碼部分如果發(fā)現(xiàn),在地址8有數(shù)據(jù),則認(rèn)為這是CPU發(fā)送的數(shù)據(jù)傳輸開(kāi)始命令。數(shù)據(jù)s125包含00hex,但該數(shù)據(jù)不具有任何特定意義。地址解碼部分在收到數(shù)據(jù)傳輸開(kāi)始命令時(shí),產(chǎn)生開(kāi)始觸發(fā)信號(hào)s126,并把該信號(hào)送至控制部分??刂撇糠衷谑盏介_(kāi)始觸發(fā)信號(hào)s126時(shí),首先發(fā)送比較/計(jì)算觸發(fā)信號(hào)s130至數(shù)據(jù)塊比較/計(jì)算部分。然后,控制部分發(fā)送輸出觸發(fā)信號(hào)s136至輸出電路部分。數(shù)據(jù)塊比較/計(jì)算部分在收到比較/計(jì)算觸發(fā)信號(hào)s130時(shí),把信號(hào)s129與s128比較,如果發(fā)現(xiàn)該兩信號(hào)彼此一致,升起表示一致的標(biāo)志,然后計(jì)算按脈沖串模式或數(shù)據(jù)塊模式發(fā)送該數(shù)據(jù)所需數(shù)據(jù)數(shù),并分別根據(jù)前者和后者的計(jì)算結(jié)果,產(chǎn)生信號(hào)s132和s133。在本特定實(shí)施例中,數(shù)據(jù)按脈沖串模式發(fā)送,因而,圖9的信號(hào)s132代表基于十進(jìn)制的6(6D)。判定部分127根據(jù)信號(hào)s131、s132、和s133(未畫(huà)出)傳遞的信息,發(fā)送模式信息s134。在本特定情況下,因?yàn)閿?shù)據(jù)按脈沖串模式發(fā)送,圖9的模式信息s134代表二進(jìn)制的“10”。輸出電路部分127在收到控制部分123的輸出觸發(fā)信號(hào)s136時(shí),讀取存儲(chǔ)在數(shù)據(jù)寄存器部分的數(shù)據(jù)s135,并根據(jù)模式信息s134,發(fā)送待發(fā)送的數(shù)據(jù)s137和時(shí)鐘信號(hào)s138。與數(shù)據(jù)相關(guān)的一系列時(shí)鐘信號(hào)中,開(kāi)始的2個(gè)時(shí)鐘信號(hào)與起始設(shè)定的信息有關(guān);接著的4個(gè)時(shí)鐘信號(hào),在本特定實(shí)施例中,與對(duì)應(yīng)于數(shù)據(jù)塊2(對(duì)應(yīng)于第23至第16比特的數(shù)據(jù))的數(shù)據(jù)傳輸有關(guān)。當(dāng)完成數(shù)據(jù)傳輸時(shí),輸出電路部分發(fā)送輸出完成信s139,把數(shù)據(jù)輸出已經(jīng)完成通知控制部分123??刂撇糠衷谑盏叫盘?hào)s139時(shí),為了把存儲(chǔ)在當(dāng)前數(shù)據(jù)塊存儲(chǔ)器124的數(shù)據(jù)塊信息傳送至先前數(shù)據(jù)塊存儲(chǔ)器125,產(chǎn)生寫(xiě)入啟動(dòng)信號(hào)s140,并把它發(fā)送至先前數(shù)據(jù)塊存儲(chǔ)器125。然后,前述部分產(chǎn)生信號(hào)s142,以清除存儲(chǔ)于當(dāng)前數(shù)據(jù)塊存儲(chǔ)器124的數(shù)值,并把信號(hào)s142發(fā)送至存儲(chǔ)器124。關(guān)于數(shù)據(jù)傳輸控制器執(zhí)行的一系列操作,就說(shuō)到這里。數(shù)據(jù)接收控制器的構(gòu)成圖10是數(shù)據(jù)接收控制器的方框圖。該數(shù)據(jù)接收控制器包括解碼部分150,對(duì)接收的數(shù)據(jù)s137和時(shí)鐘信號(hào)s138攜帶的信息解碼;數(shù)據(jù)塊存儲(chǔ)器151,用于存儲(chǔ)接收的數(shù)據(jù)塊信息;數(shù)據(jù)寄存器部分153,用于存儲(chǔ)接收的數(shù)據(jù);和數(shù)據(jù)寄存器控制部分152,該控制部分根據(jù)模式信息s152、數(shù)據(jù)塊信息s151、和時(shí)鐘信號(hào)s138,發(fā)送啟動(dòng)信號(hào),指出接收的數(shù)據(jù)應(yīng)分配至數(shù)據(jù)寄存器部分153中什么位置。數(shù)據(jù)接收控制器的工作原理圖11是流程圖,表明數(shù)據(jù)接收控制器的工作原理。在步驟40,當(dāng)解碼部分150檢測(cè)到數(shù)據(jù)的開(kāi)始比特是“1”時(shí),準(zhǔn)備接收數(shù)據(jù)。在步驟41,數(shù)據(jù)接收控制器檢查數(shù)據(jù)的第二比特是否為“1”,并且,當(dāng)發(fā)現(xiàn)上述數(shù)據(jù)是“1”時(shí),前進(jìn)至步驟42。在步驟42,數(shù)據(jù)接收控制器處理接收的數(shù)據(jù),并執(zhí)行脈沖串模式的操作,就是說(shuō),參照先前數(shù)據(jù)塊信息,把數(shù)據(jù)逐個(gè)存儲(chǔ)進(jìn)數(shù)據(jù)寄存器部分有關(guān)的數(shù)據(jù)塊。如果在步驟41,數(shù)據(jù)接收控制器發(fā)現(xiàn)數(shù)據(jù)的第二比特不是“1”,則前進(jìn)至步驟43,并檢查數(shù)據(jù)的第三比特是否為“1”。如果該控制器發(fā)現(xiàn)上述數(shù)據(jù)是“1”,則前進(jìn)至步驟44,并處理接收的數(shù)據(jù)和執(zhí)行數(shù)據(jù)塊模式操作,就是說(shuō),根據(jù)隨后發(fā)送的信號(hào),在數(shù)據(jù)塊存儲(chǔ)器中存儲(chǔ)數(shù)據(jù)塊信息,該數(shù)據(jù)塊信息通知每數(shù)據(jù)塊的數(shù)據(jù)是否寫(xiě)入該存儲(chǔ)器。然后,數(shù)據(jù)接收控制器參照存儲(chǔ)在數(shù)據(jù)塊存儲(chǔ)器中的數(shù)據(jù)塊信息,把相應(yīng)的有關(guān)數(shù)據(jù)塊數(shù)據(jù),按數(shù)據(jù)塊的下降順序,存儲(chǔ)進(jìn)數(shù)據(jù)寄存器部分。但是,如果在步驟43,數(shù)據(jù)接收控制器發(fā)現(xiàn)數(shù)據(jù)的第三比特不是“1”,則前進(jìn)至步驟46,并處理接收的數(shù)據(jù)和執(zhí)行完全模式操作,就是說(shuō),把所有發(fā)送的數(shù)據(jù)按下降順序存儲(chǔ)進(jìn)數(shù)據(jù)寄存器。然后,在步驟47,把數(shù)據(jù)塊信息存儲(chǔ)進(jìn)數(shù)據(jù)塊存儲(chǔ)器,該數(shù)據(jù)塊信息通知,各數(shù)據(jù)塊相應(yīng)的所有數(shù)據(jù)已經(jīng)全部寫(xiě)入。
圖12是數(shù)據(jù)接收控制器的時(shí)序圖。該圖討論的情況是,數(shù)據(jù)按脈沖串模式傳輸,且數(shù)據(jù)是按脈沖串模式以F0hex寫(xiě)入數(shù)據(jù)塊2中。因?yàn)楫?dāng)前的數(shù)據(jù)傳輸按脈沖串模式,所以先前數(shù)據(jù)塊信息存儲(chǔ)在數(shù)據(jù)塊存儲(chǔ)器151中,該信息用對(duì)數(shù)據(jù)塊2保持高電平的信號(hào)s151表示。數(shù)據(jù)接收控制器根據(jù)信號(hào)s151,能識(shí)別給定的接收數(shù)據(jù)應(yīng)該存儲(chǔ)進(jìn)存儲(chǔ)器的哪一數(shù)據(jù)塊。通過(guò)參照開(kāi)始比特后面第二和第三比特的數(shù)據(jù),數(shù)據(jù)接收控制器發(fā)現(xiàn)當(dāng)前的傳輸模式是脈沖串模式,于是設(shè)置信號(hào)s152為“10”,這是脈沖串模式的數(shù)據(jù)表示,并把該信號(hào)發(fā)送至數(shù)據(jù)寄存器控制部分152。數(shù)據(jù)寄存器控制部分152根據(jù)模式信息s152和數(shù)據(jù)塊信息s151,產(chǎn)生啟動(dòng)信號(hào)s153,并把該信號(hào)發(fā)送至數(shù)據(jù)寄存器部分153,該啟動(dòng)信號(hào)是一選擇信號(hào),把隨時(shí)鐘信號(hào)發(fā)送的數(shù)據(jù)從第5比特以下,分配至它們適當(dāng)?shù)牡刂罚詮牡?比特以下的數(shù)據(jù)能適當(dāng)?shù)卮鎯?chǔ)在那里。然后,存儲(chǔ)在數(shù)據(jù)寄存器部分153的數(shù)據(jù),作為打印數(shù)據(jù)發(fā)送至打印頭。(第二實(shí)施例)構(gòu)成下面參照附圖,說(shuō)明本發(fā)明的第二實(shí)施例。圖13表示第二實(shí)施例的數(shù)據(jù)傳輸控制器的方框圖,該數(shù)據(jù)傳輸控制器可供基于熱噴墨打印的圖形形成系統(tǒng)使用。圖13所示第二實(shí)施例的數(shù)據(jù)傳輸控制器,與圖4所示第一實(shí)施例相應(yīng)的控制器的不同點(diǎn),在于前者用地址解碼部分產(chǎn)生反相觸發(fā)信號(hào)s201、位移觸發(fā)信號(hào)s202、和末端數(shù)據(jù)s203,并把它們作為輸出發(fā)送。除此之外,前者與后者相同。因此,與第一實(shí)施例各單元有類似功能的第二實(shí)施例各單元,將用相同符號(hào)表示,并且省略對(duì)它們的詳細(xì)說(shuō)明。與第一實(shí)施例各單元類似的第二實(shí)施例各單元的進(jìn)一步說(shuō)明亦將省略。反相觸發(fā)信號(hào)s201載有使數(shù)據(jù)反相的指令,把已經(jīng)發(fā)送至各數(shù)據(jù)接收單元的數(shù)據(jù)反相。位移觸發(fā)信號(hào)s202載有使數(shù)據(jù)位移的指令,使已經(jīng)發(fā)送至各數(shù)據(jù)接收單元的數(shù)據(jù),位移指定的比特?cái)?shù)。末端數(shù)據(jù)s203是在位移觸發(fā)信號(hào)作用下,數(shù)據(jù)已經(jīng)位移指定比特?cái)?shù)之后,代表位于比特末端的數(shù)據(jù)。數(shù)據(jù)傳輸控制器通過(guò)對(duì)CPU發(fā)送的地址解碼,識(shí)別信號(hào)s201、s202、和s203的內(nèi)容。例如,約定地址9分配給信號(hào)s201、地址10分配給信號(hào)s202、和地址11分配給信號(hào)s203。工作原理讓我們假定,數(shù)據(jù)傳輸控制器接收CPU的指令,分別把對(duì)應(yīng)于數(shù)據(jù)塊1和0的數(shù)據(jù)反相。地址解碼部分121對(duì)指令解碼,并令當(dāng)前數(shù)據(jù)塊存儲(chǔ)器存儲(chǔ)數(shù)據(jù)塊信息,該信息載有分別令數(shù)據(jù)塊1和0的數(shù)據(jù)反相的指令。此外,地址解碼部分121產(chǎn)生反相觸發(fā)信號(hào)s201,并把該信號(hào)發(fā)送至輸出電路部分128。輸出電路部分128在收到該反相觸發(fā)信號(hào)s201時(shí),根據(jù)信號(hào)s128,識(shí)別要反相的數(shù)據(jù)必然是對(duì)應(yīng)于數(shù)據(jù)塊1和0的數(shù)據(jù),然后把對(duì)應(yīng)于要反相的數(shù)據(jù)的數(shù)據(jù)塊信息,連同反相觸發(fā)信號(hào),發(fā)送至各數(shù)據(jù)接收單元。圖14是在發(fā)送反相觸發(fā)信號(hào)s201時(shí),信號(hào)的時(shí)序圖。在地址解碼部分121發(fā)送反相觸發(fā)信號(hào)s201至控制部分123和輸出電路部分123時(shí),控制部分123產(chǎn)生輸出觸發(fā)信號(hào)s136,并把該信號(hào)發(fā)送至輸出電路部分128。輸出電路部分128在收到輸出觸發(fā)信號(hào)s136時(shí),把載有使數(shù)據(jù)塊1和0對(duì)應(yīng)的數(shù)據(jù)反相的指令的信息,與時(shí)鐘信號(hào)同步地發(fā)送至各數(shù)據(jù)接收單元。具體說(shuō),輸出電路部分128把對(duì)應(yīng)于開(kāi)始比特的數(shù)據(jù)設(shè)定為1,并把對(duì)應(yīng)于第2和第3比特的兩個(gè)數(shù)據(jù)也設(shè)定為1。最后的比特?cái)?shù)組就是涉及某個(gè)指令操作之后要發(fā)送的數(shù)據(jù)。前述部分128還把第4比特?cái)?shù)據(jù)設(shè)定為0,表示該指令涉及數(shù)據(jù)的反相。該比特?cái)?shù)組從第5至第12比特,是用于設(shè)定數(shù)據(jù)塊信息的部分,在本特定實(shí)施例中,第11與第12比特?cái)?shù)據(jù)設(shè)定為1。
參考圖15,圖中表示的情況是,數(shù)據(jù)傳輸控制器從CPU接收指令,把對(duì)應(yīng)于數(shù)據(jù)塊1的數(shù)據(jù)向右位移一(1)比特(向著較低位置),并把與已被位移的數(shù)據(jù)塊1對(duì)應(yīng)的數(shù)據(jù)的最高有效比特,設(shè)定為0。圖15是在發(fā)送位移觸發(fā)信號(hào)s202時(shí),信號(hào)的時(shí)序圖。當(dāng)數(shù)據(jù)傳輸控制器接收這些指令時(shí),地址解碼部分121把位移觸發(fā)信號(hào)s202發(fā)送至控制部分123和輸出電路部分128??刂撇糠?23在收到位移觸發(fā)信號(hào)s202時(shí),把輸出觸發(fā)信號(hào)s136發(fā)送至輸出電路部分128。輸出電路部分128在收到輸出觸發(fā)信號(hào)s136時(shí),把載有與數(shù)據(jù)塊1對(duì)應(yīng)的數(shù)據(jù)位移指定比特?cái)?shù)的指令的信息,與時(shí)鐘信號(hào)同步地發(fā)送至各數(shù)據(jù)接收單元。具體說(shuō),輸出電路部分128把對(duì)應(yīng)于開(kāi)始比特的數(shù)據(jù)設(shè)定為1,并把對(duì)應(yīng)于第2和第3比特的兩個(gè)數(shù)據(jù)也設(shè)定為1。前述部分128還把第4比特的數(shù)據(jù)設(shè)定為1,表示該指令涉及數(shù)據(jù)位移;把第5比特的數(shù)據(jù)設(shè)定為0,表示位移是向右的;還把第6比特的數(shù)據(jù)設(shè)定為0,表示該末端比特設(shè)定為0。從第7至第14比特的數(shù)據(jù)數(shù)組,是用于設(shè)定數(shù)據(jù)塊信息的部分,而在本特定例子中,對(duì)應(yīng)于第13比特的數(shù)據(jù),被設(shè)定為1。
圖16畫(huà)出用作數(shù)據(jù)接收單元之一的串行控制器的處理流程。該處理流程與圖11所示第一實(shí)施例對(duì)應(yīng)的處理流程,在步驟40至47是相同的,只有在步驟51以后才不同。因此,這里省略步驟40至47的說(shuō)明,只對(duì)步驟51以后說(shuō)明。當(dāng)串行控制器在步驟41發(fā)現(xiàn)第2比特?cái)?shù)據(jù)是1,它前進(jìn)至步驟51。之后,它檢查第3比特?cái)?shù)據(jù)是否為1。當(dāng)該串行控制器發(fā)現(xiàn)上述數(shù)據(jù)不是1時(shí),它前進(jìn)至步驟42,并執(zhí)行與第一實(shí)施例在步驟42類似的操作。相反,如果串行控制器在步驟51發(fā)現(xiàn),第3比特?cái)?shù)據(jù)是1,它前進(jìn)至步驟52,并檢查第4比特?cái)?shù)據(jù)是否為1。當(dāng)該控制器發(fā)現(xiàn)上述數(shù)據(jù)不是1時(shí),它前進(jìn)至步驟53,并把與指定數(shù)據(jù)塊對(duì)應(yīng)的數(shù)據(jù)反相。相反,如果串行控制器發(fā)現(xiàn)第4比特?cái)?shù)據(jù)是1,它前進(jìn)至步驟54,并檢查第5比特?cái)?shù)據(jù)是否為1。當(dāng)它發(fā)現(xiàn)上述數(shù)據(jù)是1時(shí),它前進(jìn)至步驟55,并檢查第6比特?cái)?shù)據(jù)是否為1。當(dāng)該控制器發(fā)現(xiàn)第6比特?cái)?shù)據(jù)不是1時(shí),它前進(jìn)至步驟56,把與指定數(shù)據(jù)塊的數(shù)據(jù)向左位移,并把最低有效比特設(shè)定為0。相反,如果該串行控制器在步驟55發(fā)現(xiàn)第6比特?cái)?shù)據(jù)是1時(shí),它前進(jìn)至步驟57,把與指定數(shù)據(jù)塊對(duì)應(yīng)的數(shù)據(jù)向左位移,并把最低有效比特設(shè)定為1。當(dāng)該控制器在步驟54發(fā)現(xiàn),與第5比特對(duì)應(yīng)的數(shù)據(jù)不是1時(shí),它前進(jìn)至步驟60,并檢查第6比特?cái)?shù)據(jù)是否為1。如果它發(fā)現(xiàn)上述數(shù)據(jù)是1,它前進(jìn)至步驟61,把與指定數(shù)據(jù)塊對(duì)應(yīng)的數(shù)據(jù)向右位移,并把最高有效比特設(shè)定為1。如果它發(fā)現(xiàn)第6比特?cái)?shù)據(jù)不是1,它前進(jìn)至步驟62,把與指定數(shù)據(jù)塊對(duì)應(yīng)的數(shù)據(jù)向右位移,并把最高有效比特設(shè)定為0。
按照本實(shí)施例,因?yàn)橥ㄟ^(guò)用上述反相命令和位移命令,并簡(jiǎn)單地把反相命令或位移命令與數(shù)據(jù)塊信息一起發(fā)送,可以把發(fā)送至各數(shù)據(jù)接收單元的、對(duì)應(yīng)于任何指定數(shù)據(jù)塊的數(shù)據(jù)反相或位移,所以,數(shù)據(jù)的發(fā)送比按三種不同通信模式傳輸數(shù)據(jù)的第一實(shí)施例更快。從各實(shí)施例獲得的好處按照上述各實(shí)施例,通過(guò)硬件單元的安排,根據(jù)外部計(jì)算機(jī)或類似裝置寫(xiě)入的數(shù)據(jù),可以從三種可用通信模式中自動(dòng)選擇一種最適合快速傳送給定數(shù)據(jù)的模式,并用該模式發(fā)送該數(shù)據(jù)。數(shù)據(jù)接收單元把這樣接收的數(shù)據(jù),按附于該數(shù)據(jù)的模式信息內(nèi)容,存儲(chǔ)進(jìn)寄存器內(nèi)。通過(guò)該種安排,可以使數(shù)據(jù)接收單元減小串行通信所需的時(shí)間,不必知道串行通信的速度。再有,只要系統(tǒng)需要,已經(jīng)發(fā)送至數(shù)據(jù)接收單元的數(shù)據(jù),可以位移若干比特,或把若干比特反相,該系統(tǒng)能通過(guò)產(chǎn)生位移命令或反相命令,并把命令簡(jiǎn)單地附于數(shù)據(jù)塊上而實(shí)現(xiàn)該目的,這些命令可以使系統(tǒng)從必須為牽涉到比特位移或比特反相的各個(gè)數(shù)據(jù)作準(zhǔn)備中解脫出來(lái),而對(duì)常規(guī)系統(tǒng),這是必須的。這樣做還進(jìn)一步縮減串行通信所需時(shí)間。其他可能的實(shí)施例但是,本發(fā)明不限于上述各實(shí)施例,在本發(fā)明的范圍內(nèi),可以對(duì)各實(shí)施例加以修改。例如,按照上述各實(shí)施例,已經(jīng)給出的說(shuō)明假定一數(shù)據(jù)塊有八(8)比特長(zhǎng)。但是,一數(shù)據(jù)塊的長(zhǎng)度可以等于16比特,32比特,等等。此外,按照上述各實(shí)施例,已經(jīng)給出的說(shuō)明假定,本發(fā)明體現(xiàn)在圖像形成系統(tǒng)中。但是,本發(fā)明不限于這類設(shè)備。例如,基于通信線路的一般通信可以利用本發(fā)明而獲益。再有,按照上述各實(shí)施例,數(shù)據(jù)通信可以用數(shù)據(jù)塊模式、脈沖串模式、或完全模式。但是,由本發(fā)明支持的數(shù)據(jù)通信不限于該種情況基于本發(fā)明的數(shù)據(jù)通信,可以只用數(shù)據(jù)塊模式、或不是用數(shù)據(jù)塊模式就是用脈沖串模式、或不是用數(shù)據(jù)塊模式便是用完全模式。
工業(yè)上的可應(yīng)用性如上所述,本發(fā)明提供一種同步串行通信方法,通過(guò)把待發(fā)送的串行數(shù)據(jù)分為多個(gè)數(shù)據(jù)塊,首先發(fā)送數(shù)據(jù)塊信息,然后發(fā)送與數(shù)據(jù)塊信息通知對(duì)應(yīng)的數(shù)據(jù),據(jù)此,本方法與常規(guī)通信方法比較,能降低數(shù)據(jù)通信的時(shí)間。
由于本方法能使系統(tǒng)在包括第一、第二、第三模式的三種通信模式中進(jìn)行選擇,因此,系統(tǒng)可以按照待發(fā)送的數(shù)據(jù),選擇能使該數(shù)據(jù)最快傳輸?shù)哪J健?br>
還可以對(duì)已經(jīng)發(fā)送至數(shù)據(jù)接收單元的數(shù)據(jù),產(chǎn)生處理該數(shù)據(jù)的命令和數(shù)據(jù)塊信息,然后把它們發(fā)送至數(shù)據(jù)接收單元,并對(duì)已經(jīng)發(fā)送至數(shù)據(jù)接收單元的數(shù)據(jù)塊進(jìn)行處理,從而進(jìn)一步降低數(shù)據(jù)傳輸?shù)臅r(shí)間。
如上所述,本發(fā)明的同步串行通信方法和串行通信系統(tǒng),可以用于基于熱噴墨打印的圖像形成系統(tǒng),或基于通信線路的一般通信。
權(quán)利要求
1.一種同步串行通信方法,包括的步驟是,通過(guò)數(shù)據(jù)線與通過(guò)時(shí)鐘線的定時(shí)信號(hào)同步地發(fā)送串行數(shù)據(jù),其中,如果要求傳輸指定長(zhǎng)度的串行數(shù)據(jù),則數(shù)據(jù)的傳輸是把要傳輸?shù)臄?shù)據(jù)分為多個(gè)數(shù)據(jù)塊,首先發(fā)送通知待傳輸?shù)臄?shù)據(jù)塊的數(shù)據(jù)塊信息,然后發(fā)送由數(shù)據(jù)塊信息通知的數(shù)據(jù)塊中包含的數(shù)據(jù)。
2.按照權(quán)利要求1的同步串行通信方法,其中,把當(dāng)前發(fā)送的數(shù)據(jù)塊信息與先前發(fā)送的數(shù)據(jù)塊信息比較,如果該兩者相同,則省略當(dāng)前數(shù)據(jù)塊信息,而發(fā)送與先前數(shù)據(jù)塊信息通知的數(shù)據(jù)塊對(duì)應(yīng)的數(shù)據(jù)塊包含的數(shù)據(jù)。
3.一種同步串行通信方法,其中有兩種可用的通信模式,作為第一種模式,是常規(guī)的串行通信,在該模式下,發(fā)送的數(shù)據(jù)不分為數(shù)據(jù)塊,以及,作為第二種模式,是權(quán)利要求1所述的同步串行通信,并且,如果需要發(fā)送數(shù)據(jù),則把模式信息附于傳輸?shù)臄?shù)據(jù)中,該模式信息通知用何種模式實(shí)現(xiàn)數(shù)據(jù)的傳輸。
4.一種同步串行通信方法,其中有三種可用的通信模式,作為第一種模式,是常規(guī)的串行通信,在該模式下,發(fā)送的數(shù)據(jù)不分為數(shù)據(jù)塊;作為第二種模式,是權(quán)利要求1所述的同步串行通信;以及,作為第三種模式,是權(quán)利要求2所述的同步串行通信,并且,如果需要發(fā)送數(shù)據(jù),則把模式信息附于待發(fā)送的數(shù)據(jù)中,該模式信息通知用何種模式實(shí)現(xiàn)數(shù)據(jù)的傳輸。
5.按照權(quán)利要求1、2、3、或4的同步串行通信方法,其中的串行數(shù)據(jù)按字節(jié)分為若干數(shù)據(jù)塊。
6.一種根據(jù)權(quán)利要求3、4、或5的同步串行通信方法的同步串行通信系統(tǒng),其中數(shù)據(jù)發(fā)送部件包括,存儲(chǔ)裝置,存儲(chǔ)外部裝置饋送的數(shù)據(jù);判定裝置,按上述每一種通信模式,計(jì)算發(fā)送所述數(shù)據(jù)需要的時(shí)鐘信號(hào)數(shù),并確定用何種模式能以最少時(shí)鐘信號(hào)數(shù)傳輸所述數(shù)據(jù);和輸出裝置,選擇已經(jīng)由判定裝置判定能以最少時(shí)鐘信號(hào)數(shù)傳輸所述數(shù)據(jù)的模式,讀取存儲(chǔ)在存儲(chǔ)裝置中的數(shù)據(jù),并通過(guò)所選擇的通信模式發(fā)送所述數(shù)據(jù)。
7.一種根據(jù)權(quán)利要求3、4、或5的同步串行通信方法的同步串行通信系統(tǒng),其中數(shù)據(jù)接收部件包括,存儲(chǔ)數(shù)據(jù)的存儲(chǔ)裝置;分析裝置,根據(jù)接收的模式信息,識(shí)別接收的數(shù)據(jù)的通信模式;和控制裝置,使接收的數(shù)據(jù),按照分析裝置識(shí)別的模式,存儲(chǔ)進(jìn)存儲(chǔ)裝置中。
8.按照權(quán)利要求1、2、3、4、或5的同步串行通信方法,其中,如果要求發(fā)送處理有關(guān)已經(jīng)發(fā)送的數(shù)據(jù)的命令,則首先發(fā)送命令數(shù)據(jù),指出當(dāng)前數(shù)據(jù)載有關(guān)于已經(jīng)發(fā)送數(shù)據(jù)的處理命令,然后發(fā)送所述數(shù)據(jù)塊信息,根據(jù)該信息,能夠從先前發(fā)送的數(shù)據(jù)中識(shí)別要處理的數(shù)據(jù)塊。
9.按照權(quán)利要求8的同步串行通信方法,其中所述命令至少包括反相命令或比特位移命令二者之一。
全文摘要
本發(fā)明提供一種同步串行通信方法和一種同步串行通信系統(tǒng),能提高串行數(shù)據(jù)的傳輸速度。完全模式是實(shí)現(xiàn)常規(guī)同步串行通信的模式。數(shù)據(jù)塊模式是為傳輸指定長(zhǎng)度串行數(shù)據(jù)的需要而引進(jìn)的模式,在該模式下,把待發(fā)送的數(shù)據(jù)分為多個(gè)數(shù)據(jù)塊,首先發(fā)送數(shù)據(jù)塊信息,通知全部數(shù)據(jù)塊中哪幾個(gè)數(shù)據(jù)塊將被發(fā)送,然后發(fā)送由數(shù)據(jù)塊信息通知的數(shù)據(jù)塊中包含的數(shù)據(jù)。脈沖串模式是這樣一種模式,在該模式下,把當(dāng)前發(fā)送的數(shù)據(jù)塊信息與先前發(fā)送的數(shù)據(jù)塊信息比較,并且,如果該兩者相同,則導(dǎo)入數(shù)據(jù)傳輸,同時(shí)省略數(shù)據(jù)塊信息。系統(tǒng)把通知用何種模式發(fā)送數(shù)據(jù)的模式信息,附于發(fā)送的數(shù)據(jù)中。
文檔編號(hào)H04L7/00GK1349628SQ00806877
公開(kāi)日2002年5月15日 申請(qǐng)日期2000年3月31日 優(yōu)先權(quán)日1999年3月31日
發(fā)明者福田道隆 申請(qǐng)人:可比雅株式會(huì)社