專利名稱:圖像形成裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像形成裝置。更具體地,本發(fā)明涉及這樣一種圖像形成裝置:其具有當(dāng)在用于實(shí)現(xiàn)圖像形成裝置的功能的模塊之間建立的鏈路中產(chǎn)生錯(cuò)誤時(shí)恢復(fù)所述鏈路的功能。
背景技術(shù):
在圖像形成裝置諸如數(shù)碼復(fù)印機(jī)和數(shù)碼多功能打印機(jī)(MFP)中,以PCI (外設(shè)組件互連標(biāo)準(zhǔn),Peripheral Component Interconnect)為代表的并行接口已經(jīng)被用做用來連接諸如CPU、圖像處理模塊和存儲器的設(shè)備的部件。然而,并行接口具有一些問題,諸如競態(tài)條件和時(shí)鐘偏移,并且其傳輸速率不足以用于高速和高品質(zhì)圖像形成裝置。因此,最近提出將作為高速串行接口的PCI快速接口(PCI Express interface,在下文中稱為PCIe)用于圖像形成裝置。PCIe是一種用于通過稱作鏈路的通信信道來互連設(shè)備的國際標(biāo)準(zhǔn),通信指令、寄存器值和寄存器序列由PC1-SIG (PCI特殊興趣組織)特別規(guī)定。
連接至PCIe的設(shè)備之間的數(shù)據(jù)傳輸通過使用總線指令而執(zhí)行,通過使用用于PCIe的信號線中的四條C/BE[3:0]信號線來傳輸總線指令。寫入或讀取圖像數(shù)據(jù)之前,用PCIe建立設(shè)備之間的鏈路。為了建立鏈路,在設(shè)備中設(shè)定配置寄存器(下文中,稱為C0NREG)。例如,在用于控制整個(gè)圖像形成裝置的操作的控制模塊和用于執(zhí)行圖像處理的圖像處理模塊之間,根據(jù)從控制模塊傳輸至圖像處理模塊的指令,來實(shí)施圖像處理模塊中的配置寄存器(CONREG)中所包含的信息條目的初始設(shè)定。在初始設(shè)定中,主要設(shè)定并存儲:用于識別設(shè)備的設(shè)備ID的初始值,用于檢查設(shè)備的當(dāng)前操作狀態(tài)的狀態(tài)寄存器的初始值,以及用于識別所連接設(shè)備的基地址的初始值。對于配置寄存器的設(shè)定,配置事務(wù)(configuration transaction)與用于正常圖像數(shù)據(jù)傳輸處理的配置事務(wù)分開地產(chǎn)生。每個(gè)設(shè)備均具有用于調(diào)試目的的寄存器,當(dāng)在通過PCIe進(jìn)行的數(shù)據(jù)傳輸中產(chǎn)生錯(cuò)誤時(shí),錯(cuò)誤狀態(tài)被存儲在狀態(tài)寄存器中。公開號2008-225694的日本未經(jīng)審查的專利申請?zhí)岢隽艘环N錯(cuò)誤分析方法,其包括:存儲調(diào)試寄存器中有錯(cuò)誤的分組的目的地地址;再現(xiàn)同樣的錯(cuò)誤以檢測所存儲的地址上的事務(wù);以及識別錯(cuò)誤源。在用傳統(tǒng)的PCIe進(jìn)行的數(shù)據(jù)傳輸中,通過檢查狀態(tài)寄存器和調(diào)試寄存器中的信息,能夠檢測到錯(cuò)誤的產(chǎn)生,如果有錯(cuò)誤,配置寄存器再次被初始化以建立用于正常數(shù)據(jù)傳輸?shù)逆溌贰H欢?,在某些情況下,設(shè)備的配置寄存器(CONREG)中設(shè)定的值可能由于外在噪聲諸如數(shù)據(jù)傳輸過程中信號線上的靜電而被破壞。在特定情況下,例如,CONREG中設(shè)定的值之中的基地址和狀態(tài)寄存器的值可能被重寫為與初始值不同的值。由于傳統(tǒng)的PCIe序列不具有用來檢測初始值的破壞的部件,所建立的鏈路本身可能被損壞,并且當(dāng)CONREG中的初始值如上文所述被破壞時(shí),隨后的數(shù)據(jù)通信可能被妨礙。在公開號2008-225694的日本未經(jīng)審查的專利申請中,能夠識別錯(cuò)誤源,但是沒有用于去除錯(cuò)誤源的續(xù)發(fā)事件(sequence)。因此,當(dāng)CONREG中的初始值被破壞時(shí),鏈路被損壞并且數(shù)據(jù)通信同樣地被妨礙。如上所述,在傳統(tǒng)的裝置中,當(dāng)CONREG中的值被破壞并且結(jié)果導(dǎo)致鏈路被損壞而妨礙數(shù)據(jù)通信時(shí),不存在自動(dòng)恢復(fù)部件,并且因此必需重新給裝置上電或重新設(shè)定裝置(手動(dòng)按下重置按鈕)。
發(fā)明內(nèi)容
本發(fā)明提供了一種圖像形成裝置,其通過重建用于數(shù)據(jù)傳輸?shù)逆溌?,即使?dāng)鏈路由于外在噪聲被損壞時(shí)也能夠繼續(xù)在模塊之間的數(shù)據(jù)傳輸。本發(fā)明是圖像形成裝置,其包括:多個(gè)設(shè)備模塊,用于執(zhí)行預(yù)定功能;以及控制模塊,用于控制設(shè)備模塊的操作,設(shè)備模塊和控制模塊通過PCI快速接口連接,所述控制模塊包括:初始化部分,用于建立在控制模塊和每個(gè)設(shè)備模塊之間的鏈路;主數(shù)據(jù)傳輸部分,用于將所請求傳輸?shù)臄?shù)據(jù)傳輸至預(yù)定設(shè)備模塊;以及鏈路檢查部分,用于檢查控制模塊和設(shè)備模塊之間的鏈路的狀態(tài),其中當(dāng)作出將數(shù)據(jù)傳輸至多個(gè)設(shè)備模塊中的第一設(shè)備模塊的請求時(shí),所述鏈路檢查部分檢查控制模塊和第一設(shè)備模塊之間的鏈路的狀態(tài),并且當(dāng)被檢查的鏈路的狀態(tài)被確定為異常時(shí),所述初始化部分建立在控制模塊和第一設(shè)備模塊之間的鏈路,然后所述主數(shù)據(jù)傳輸部分將所請求傳輸?shù)臄?shù)據(jù)傳輸至第一設(shè)備模塊。根據(jù)這種配置, 當(dāng)鏈路的狀態(tài)被確定為異常時(shí),在鏈路建立之后傳輸數(shù)據(jù),因此不需要重新啟動(dòng)裝置,并且能夠避免裝置的無效操作。
圖1是顯示了連接至本發(fā)明的圖像形成裝置的PCIe的示例性模塊的配置的方框圖;圖2是本發(fā)明的示例性鏈路初始化和鏈路檢查處理的流程圖;圖3是顯示了通過本發(fā)明的PCIe接收和傳送的示例性總線指令的說明圖;圖4是顯示了本發(fā)明的配置寄存器中的信息的說明圖;圖5是本發(fā)明的鏈路初始化處理的示例性順序的說明圖;以及圖6是本發(fā)明的鏈路檢查和鏈路重建處理的示例性順序的說明圖。
具體實(shí)施例方式在圖像形成裝置中,多個(gè)設(shè)備模塊中的每個(gè)設(shè)備模塊均包括:從屬數(shù)據(jù)傳輸部分,用于通過PCI快速接口傳送數(shù)據(jù)至控制模塊和從控制模塊接收數(shù)據(jù);以及配置寄存器,配置寄存器在控制模塊和設(shè)備模塊之間的鏈路建立時(shí)被設(shè)定,以存儲數(shù)據(jù)傳送和接收所需的寄存器信息。
在圖像形成裝置中,所述控制模塊包括存儲部分,存儲部分用于存儲建立控制模塊和每個(gè)設(shè)備模塊之間的鏈路所需的寄存器初始值,并且所述鏈路檢查部分依靠主數(shù)據(jù)傳輸部分獲取存儲在第一設(shè)備模塊的配置寄存器中的寄存器信息;比較獲取的寄存器信息與存儲在存儲部分中的寄存器初始值;以及當(dāng)寄存器信息和寄存器初始值一致時(shí)確定鏈路的狀態(tài)正常,或者當(dāng)寄存器信息和寄存器初始值不一致時(shí)確定鏈路的狀態(tài)異常。在圖像形成裝置中,所述控制模塊包括存儲部分,存儲部分用于存儲建立控制模塊和每個(gè)設(shè)備模塊之間的鏈路所需的寄存器初始值,所述初始化部分將用于多個(gè)設(shè)備模塊中的第二設(shè)備模塊的寄存器初始值傳輸至第二設(shè)備模塊,以便建立控制模塊和第二設(shè)備模塊之間的鏈路,并且所述第二設(shè)備模塊在其配置寄存器中存儲傳輸至其中的寄存器初始值。在圖像形成裝置中,存儲在存儲部分中的寄存器初始值和存儲在每個(gè)配置寄存器中的寄存器信息包括:設(shè)備ID,用于識別設(shè)備模塊;狀態(tài)寄存器,用于顯示設(shè)備模塊的當(dāng)前狀態(tài);以及設(shè)備模塊的基地址。本發(fā)明是一種用于恢復(fù)圖像形成裝置中的鏈路的方法,所述圖像形成裝置包括:多個(gè)設(shè)備模塊,用于執(zhí)行預(yù)定功能;以及控制模塊,用于控制設(shè)備模塊的操作,設(shè)備模塊和控制模塊通過PCI快速接口連接,控制模塊包括:初始化部分,用于建立在控制模塊和每個(gè)設(shè)備模塊之間的鏈路;主數(shù)據(jù)傳輸部分,用于將所請求傳輸?shù)臄?shù)據(jù)傳輸至預(yù)定設(shè)備模塊;鏈路檢查部分,用于檢查控制模塊和設(shè)備模塊之間的鏈路的狀態(tài);以及存儲部分,用于存儲建立控制模塊和每個(gè)設(shè)備模塊之間的鏈路所需的寄存器初始值,多個(gè)設(shè)備模塊中的每個(gè)設(shè)備模塊均包括:從屬數(shù)據(jù)傳輸部分,用于通過PCI快速接口將數(shù)據(jù)傳送至控制模塊的主數(shù)據(jù)傳輸部分并從控制模塊的主數(shù)據(jù)傳輸部分接收數(shù)據(jù);以及配置寄存器,配置寄存器在控制模塊和設(shè)備模塊之間的鏈路建立時(shí)被設(shè)定,以存儲數(shù)據(jù)傳送和接收所需的寄存器信息,其中所述初始化部分將存儲在存儲部分中的寄存器初始值傳輸至多個(gè)設(shè)備模塊中的第一設(shè)備模塊,以便建立控制模塊和第一設(shè)備模塊之間的鏈路,所述第一設(shè)備模塊在配置寄存器中存儲傳輸至其中的寄存器 初始值,以建立控制模塊和第一設(shè)備模塊之間的鏈路,然后,當(dāng)控制模塊接收到將數(shù)據(jù)傳輸至第一設(shè)備模塊的請求時(shí),所述鏈路檢查部分依靠主數(shù)據(jù)傳輸部分傳送指令至第一設(shè)備模塊的從屬數(shù)據(jù)傳輸部分,以請求檢索存儲在第一設(shè)備模塊的配置寄存器中的寄存器信息,所述第一設(shè)備模塊的從屬數(shù)據(jù)傳輸部分接收指令,檢索寄存器信息并將所檢索的寄存器信息傳送至主數(shù)據(jù)傳輸部分,所述鏈路檢查部分獲取由主數(shù)據(jù)傳輸部分接收的寄存器信息,比較獲取的寄存器信息與存儲在存儲部分中的寄存器初始值,當(dāng)寄存器信息和寄存器初始值不一致時(shí),所述鏈路檢查部分確定鏈路的狀態(tài)異常,所述初始化部分重建控制模塊和第一設(shè)備模塊之間的鏈路,然后主數(shù)據(jù)傳輸部分將所請求傳輸?shù)臄?shù)據(jù)傳輸至第一設(shè)備模塊。根據(jù)本發(fā)明,當(dāng)作出將數(shù)據(jù)從控制模塊傳輸至第一設(shè)備模塊的請求時(shí),所述鏈路檢查部分檢查控制模塊和第一設(shè)備模塊之間的鏈路的狀態(tài),并且當(dāng)鏈路的狀態(tài)被確定為異常時(shí),所述初始化部分重建鏈路,然后將所請求傳輸?shù)臄?shù)據(jù)傳輸至第一設(shè)備模塊。因此,當(dāng)鏈路由于外在噪聲諸如靜電被損壞時(shí),能夠阻止在沒有建立鏈路情況下的數(shù)據(jù)傳輸,以避免圖像形成裝置變成無效。下文中,將參考附圖描述實(shí)現(xiàn)本發(fā)明的最佳模式,應(yīng)當(dāng)注意的是本發(fā)明不限于此。
<圖像形成裝置的配置>圖1是圖示了形成本發(fā)明的圖像形成裝置的示例性模塊的示意性配置的方框圖。圖1是方框圖,主要示出了圖像形成裝置中的用于控制圖像形成中所使用的硬件的操作的各部分。例如,本發(fā)明的圖像形成裝置對應(yīng)于數(shù)碼復(fù)印機(jī)或數(shù)碼多功能打印機(jī)(MFP),二維信息包括字符、圖形、符號和圖像被輸入其中,并且其存儲、處理并在紙張上輸出所述二維信息。在圖1所示的實(shí)施例中,控制模塊1、接口模塊3和圖像處理模塊4通過PCIe (快速外設(shè)組件互連標(biāo)準(zhǔn))2接口連接。然而,模塊的數(shù)量和種類不限于此。例如,這些模塊可以主要設(shè)置為ASIC (專用集成電路),并被置于MFP的控制板上。PCIe接口是一種數(shù)據(jù)傳送線(總線)的標(biāo)準(zhǔn),用于互連諸如ASIC的設(shè)備以及使在設(shè)備之間傳送和接收的串行信號通過。如上文提及的,PCIe由PC1-SIG (PCI特殊興趣組織)規(guī)定??刂颇KI是主要由一個(gè)MPF控制ASIC組成的部分,并且發(fā)送控制指令至其他模塊以控制其他模塊(設(shè)備模塊)的操作和停止。在圖1中,例如,控制模塊I通過PCIe傳送數(shù)據(jù)傳輸指令至圖像處理模塊4,使得所獲取的圖像數(shù)據(jù)被傳輸至圖像處理模塊,并且圖像處理模塊實(shí)施圖像處理諸如圖像壓縮。下文中,除了控制模塊之外的模塊(3和4)將被稱為設(shè)備模塊。每個(gè)設(shè)備模塊均是用于執(zhí)行將由圖像形成裝置實(shí)現(xiàn)的多個(gè)功能中的預(yù)定功能的部分??刂颇KI主要包括控制部分(CPU) 11、主數(shù)據(jù)傳輸部分12、功能模塊13以及存儲部分14,并且執(zhí)行作為功能模塊13預(yù)先設(shè)定的功能??刂撇糠?CPU) 11例如包括ROM、RAM、I/O控制器、定時(shí)器等等,并且基于預(yù)先存儲在ROM等中的控制程序使硬件工作。功能模塊13是用于執(zhí)行將由圖像形成裝置實(shí)現(xiàn)的功能的部分,其由硬件的邏輯電路塊或控制程序的模塊組成。作為功能模塊13,圖1顯示了初始化部分15、鏈路檢查部分16和作業(yè)執(zhí)行部分17,它們構(gòu)成產(chǎn)生本發(fā)明的特性的功能。此外,控制模塊I可以包括其他功能模塊。初始化部分15實(shí)施這樣的處理:在通過PCIe2所連接的控制模塊I和其他設(shè)備模塊(例如,接口模塊3和圖像處理模塊4 )之間建立鏈路。初始化部分15實(shí)施這樣的處理:設(shè)定下文將描述的每個(gè)設(shè)備模塊中的配置寄存器(CONREG)中的初始值(稱為鏈路初始化處理或配置)。例如,初始化部分15將指令傳送至圖像處理模塊4,該指令用于將預(yù)先存儲在存儲部分14中的寄存器初始值寫入圖像處理模塊4的配置寄存器(CONREG)中的“設(shè)備ID”、“狀態(tài)寄存器”、“指令寄存器”以及“基地址”。這樣,期望設(shè)備模塊的寄存器初始值被傳輸至設(shè)備模塊,以便在控制模塊和設(shè)備模塊之間建立鏈路。鏈路檢查部分16檢查控制模塊I和期望設(shè)備模塊之間的鏈路的狀態(tài),即,鏈路檢查部分16檢查鏈路是否 正在正常建立。當(dāng)鏈路的狀態(tài)正常時(shí),這意味著數(shù)據(jù)諸如傳輸指令、正傳送的數(shù)據(jù)以及正接收的數(shù)據(jù)能夠在控制模塊和設(shè)備模塊之間傳輸。當(dāng)鏈路的狀態(tài)異常時(shí),這意味著數(shù)據(jù)諸如傳輸指令不能夠在控制模塊和設(shè)備模塊之間傳輸。鏈路的建立通過如下方式來檢查(鏈路檢查處理):檢索存儲在設(shè)備模塊的配置寄存器(CONREG)中的設(shè)定值(下文中,也稱為寄存器信息);以及檢查所檢索到的設(shè)定值(寄存器信息)和預(yù)先存儲在存儲部分14中的寄存器初始值是否一致。本發(fā)明的特征在于,當(dāng)作為用戶的輸入操作例如復(fù)印操作的結(jié)果出現(xiàn)作業(yè)請求事件時(shí),在執(zhí)行諸如將數(shù)據(jù)傳輸至設(shè)備模塊的作業(yè)之前,對在該事件中所涉及的設(shè)備模塊實(shí)施鏈路檢查處理。當(dāng)在鏈路檢查處理中所檢索到的寄存器信息中的值和寄存器中的初始值一致時(shí),確定正在正常地建立鏈路,并且實(shí)施與所請求的作業(yè)對應(yīng)的數(shù)據(jù)傳輸(作業(yè)初始化處理)。然而,當(dāng)它們不一致時(shí),鏈路的狀態(tài)被確定為異常,并且初始化部分15再次實(shí)施鏈路初始化處理(配置)以建立在控制模塊和具有異常值的設(shè)備模塊之間的鏈路,然后主數(shù)據(jù)傳輸部分將所請求傳輸?shù)臄?shù)據(jù)傳輸至設(shè)備模塊。作業(yè)執(zhí)行部分17執(zhí)行所請求的作業(yè)。例如,作業(yè)執(zhí)行部分17實(shí)施用于將復(fù)印操作中掃描的圖像數(shù)據(jù)傳輸至接口模塊3的處理。取決于本發(fā)明的圖像形成裝置預(yù)先設(shè)置的功能,所執(zhí)行的作業(yè)不同。主數(shù)據(jù)傳輸部分12將所請求傳輸?shù)臄?shù)據(jù)傳輸至預(yù)定設(shè)備模塊,特別地,主數(shù)據(jù)傳輸部分12在PCIe2上實(shí)施數(shù)字信號的讀取和寫入??刂颇KI中包含的數(shù)據(jù)傳輸部分也被稱作PCIe主模塊。設(shè)備模塊中包含的從屬數(shù)據(jù)傳輸部分通過PCIe接口在控制模塊I上實(shí)施數(shù)據(jù)的傳送和接收。它們被稱為PCIe從屬模`塊。存儲部分14主要預(yù)先存儲寄存器初始值。寄存器初始值是建立在控制模塊和每個(gè)設(shè)備模塊之間的鏈路所需的信息,并且對于每個(gè)設(shè)備模塊被單獨(dú)地存儲。存儲部分14還存儲其他信息,諸如在主模塊和從屬模塊之間傳輸?shù)臄?shù)據(jù)和指令。作為存儲部分14,非易失性存儲器諸如ROM用來存儲那些即使斷電后也應(yīng)該存儲的數(shù)據(jù),諸如寄存器初始值,而可重寫存儲器諸如RAM用來存儲那些在數(shù)據(jù)傳輸期間臨時(shí)存儲而且在斷電后可以擦除的數(shù)據(jù)。如圖1所示,設(shè)備模塊諸如接口模塊3和圖像處理模塊4分別主要包括從屬數(shù)據(jù)傳輸部分(31和41)、配置寄存器(C0NREG,32和42)以及功能模塊(33和43)。設(shè)備模塊是這樣的部分,其用于接收從控制模塊I傳輸來的請求指令,并且執(zhí)行它們預(yù)先設(shè)置為設(shè)備的功能的功能模塊。接口模塊3由包括一個(gè)或多個(gè)功能模塊33的接口 ASIC實(shí)現(xiàn),并且例如執(zhí)行USB功能和以太網(wǎng) 功能。圖像處理模塊4由包括一個(gè)或多個(gè)功能模塊43的圖像處理ASIC實(shí)現(xiàn),并且例如執(zhí)行圖像編輯(放大、縮小、旋轉(zhuǎn))功能和色彩校正功能。從屬數(shù)據(jù)傳輸部分(31和41)在PCIe2上實(shí)施數(shù)字信號的讀取和寫入,與主數(shù)據(jù)傳輸部分12的情況一樣,并且如上所述,它們被稱為PCIe從屬模塊,被包括在設(shè)備模塊中,響應(yīng)于來自控制模塊I的請求指令而工作。配置寄存器(CONREG) 32和42是用于存儲如下信息的部分:建立在控制模塊和設(shè)備模塊之間的鏈路所必需的信息,以及用于傳送和接收通過PCIe操作設(shè)備模塊所必需的數(shù)據(jù)時(shí)所需的信息,如上所述。當(dāng)在控制模塊和設(shè)備模塊之間建立鏈路時(shí),設(shè)定CONREG中的值。作為配置寄存器(CONREG),RAM可以用來臨時(shí)存儲信息。它們可以作為邏輯元件被設(shè)置在每個(gè)從屬數(shù)據(jù)傳輸部分(從屬模塊)中。功能模塊(33和43)代表將由設(shè)備模塊執(zhí)行的功能,它們中的每個(gè)均可以由硬件邏輯電路組成或可以通過ROM上的控制程序?qū)崿F(xiàn)。當(dāng)每個(gè)設(shè)備模塊中的功能模塊通過控制程序?qū)崿F(xiàn)時(shí),如圖1所示,模塊不會接合(bus)其他部件,功能是通過基于控制程序來操作ASIC中的硬件邏輯而實(shí)現(xiàn)的。在配置寄存器(CONREG)中設(shè)定的寄存器信息由PCIe規(guī)范確定。圖4是示出了由PCIe規(guī)范確定的配置寄存器(CONREG)中的信息的說明圖。每個(gè)CONREG均具有地址區(qū)域OOH至3CH,而且每條寄存器信息被分配具有預(yù)定字節(jié)數(shù)的區(qū)域。例如,狀態(tài)寄存器顯示了設(shè)備模塊的當(dāng)前狀態(tài),其作為兩個(gè)字節(jié)的數(shù)據(jù)被存儲在地址區(qū)域04H和05H。設(shè)備模塊的基地址作為24個(gè)字節(jié)的數(shù)據(jù)被存儲在地址區(qū)域IOH至27H中。用于識別設(shè)備模塊的設(shè)備ID作為兩個(gè)字節(jié)的數(shù)據(jù)被存儲在地址區(qū)域02H和03H中。
下文中,將大概描述每條寄存器信息。寄存器信息的說明.運(yùn)營商ID (偏移00h_01h,2字節(jié))該區(qū)域用于指定設(shè)備制造商。ID由PC1-SIG分配。.設(shè)備 ID (偏移 02h_03h,2 字節(jié))該區(qū)域用于指定設(shè)備。ID在設(shè)備制造商的管理下分配。.指令(偏移04h_05h,2字節(jié))與設(shè)備相關(guān)聯(lián)的控制功能被分配到每個(gè)位。.狀態(tài)(偏移06h_07h,2字節(jié))與設(shè)備相關(guān)聯(lián)的狀態(tài)(錯(cuò)誤條件等)被分配到每個(gè)位。.版本ID (偏移08h,I字節(jié))該區(qū)域用于指定設(shè)備特定版本號。ID由設(shè)備制造商分配。.類代碼(偏移09h_0Bh,3字節(jié))示出由PC1-SIG定義的功能類的分類。.高速緩存存儲器大小(偏移OCh,I字節(jié))設(shè)定作為高速緩存存儲器塊控制單元的高速緩存線尺寸。.主延遲定時(shí)器(偏移ODh,I字節(jié))該延遲定時(shí)器的設(shè)定在PCI快速設(shè)備中不受影響。這個(gè)寄存器固定設(shè)定至00h。.報(bào)頭類型(偏移OEh,I字節(jié))指定偏移IOh之后的報(bào)頭格式類型,并且示出設(shè)備是否是多功能的。.BIST (build-1n self-test,內(nèi)建自測試)(偏移 OFh,I 字節(jié))
用于在啟動(dòng)時(shí)控制自身檢測功能的寄存器。0x00被設(shè)定用于正常操作。.能力指針(偏移34h,I字節(jié))示出了新的設(shè)備特定能力列表所存在處的地址指針。該寄存器僅在狀態(tài)位可用時(shí)起作用。.中斷線(偏移3Dh,I字節(jié))用于存儲中斷信號線的例程部分信息的寄存器,僅由BIOS、PCI總線驅(qū)動(dòng)器和OS使用。設(shè)備驅(qū)動(dòng)器和硬件從來不受該值的影響。 中斷引腳(偏移3Dh,I字節(jié))能夠使用四個(gè)中斷信號線(INTA-1NTD )。示出了設(shè)備使用哪個(gè)信號線。.基地址寄存器(偏移10h_27h,24字節(jié))這樣的寄存器,其用于設(shè)定地址以映射在CPU的存儲器空間和I/O空間之間的PCI設(shè)備的存儲緩沖器和寄存器。
.卡總線CIS指針(偏移28h_2Bh,4字節(jié))示出卡總線卡的CIS (卡信息結(jié)構(gòu))的起始地址。.子系統(tǒng)運(yùn)營商ID (偏移2Ch_2Dh,2字節(jié))示出定義了設(shè)計(jì)插入卡的運(yùn)營商的ID號。.子系統(tǒng)ID (偏移2Eh_2Fh,2字節(jié))示出由設(shè)計(jì)插入卡的運(yùn)營商定義的系統(tǒng)定義ID。該ID取決于運(yùn)營商。.擴(kuò)展ROM基地址(偏移30h_33h,4字節(jié))示出了由在附加到PCIe的插入卡中實(shí)施的擴(kuò)展ROM所使用的地址空間。.最小GNT (偏移3Eh,I字節(jié))最小GNT的設(shè)定在快速外設(shè)組件互連標(biāo)準(zhǔn)設(shè)備中不起任何作用,并且寄存器固定在OOh處。 最大延遲(偏移3Fh,I字節(jié))最大延遲的設(shè)定在快速外設(shè)組件互連標(biāo)準(zhǔn)設(shè)備中不起任何作用,并且寄存器固定在OOh處。下文中,將示出配置寄存器(CONREG)中設(shè)定的值的特定實(shí)例。例如,下列值被設(shè)定作為配置值。地址OOh 設(shè)備 ID=0xl014,運(yùn)營商 ID=0xl3bd地址04h狀態(tài)寄存器=0x0000,指令寄存器=0x0007地址08h 類代碼=0x0001,版本 ID=0x0580地址OCh BIST=OxOO,報(bào)頭=0x00,延遲定時(shí)器=0x00,高速緩存=0x20地址IOh 基地址 0=-0x60000000地址14h 基地址 1=0χΕ0000000
地址 18h 基地址 2=0xFFFFFFFF地址ICh 基地址 3=0x00000000地址20h 基地址 4=0x00000000
地址24h 基地址 5=0x00000000地址28h CIS 卡指針=0x00000000地址2Ch 子系統(tǒng) ID=0x00000000,子系統(tǒng)VID=0xl3bd地址30h 擴(kuò)展 ROM 基地址=0x00000000,地址34h 能力指針=0x00000000地址3Ch 最大延遲=0x0004,最小 GNT=0x0000,中斷引腳=0x0001,中斷線=0x0000圖3是顯示了通過PCIe被傳送和接收的示例性總線指令的說明圖。通過使用總線指令,數(shù)據(jù)在控制模塊I和設(shè)備模塊(3或4)之間傳輸。當(dāng)在圖像處理模塊4上實(shí)施鏈路初始化時(shí),例如,1011 (配置寫入)作為總線指令從控制模塊I被傳送至圖像處理模塊4,并且預(yù)先存儲在存儲部分14中的寄存器初始值被寫入圖像處理模塊4的配置寄存器42。當(dāng)鏈路檢查部分16檢索圖像處理模塊4的配置寄存器42中的信息時(shí),1010 (配置讀取)作為總線指令從控制模塊I被傳送至圖像處理模塊4。接收到總線 指令后,圖像處理模塊4檢索配置寄存器(C0NREG)42中的信息并將該檢索到的信息傳輸至控制模塊I。<本發(fā)明的鏈路初始化處理和數(shù)據(jù)傳輸處理〉圖2是本發(fā)明的示例性鏈路初始化和鏈路檢查處理的流程圖。一般地,當(dāng)本發(fā)明的圖像形成裝置的電源被開啟時(shí),實(shí)施用于通過PCIe建立在控制模塊I和設(shè)備模塊(3和4)之間的鏈路的初始化處理。在鏈路建立之后,用所建立的鏈路,在控制模塊I和設(shè)備模塊之間執(zhí)行預(yù)定數(shù)據(jù)傳輸。在本發(fā)明中,在由初始化進(jìn)行鏈路建立之后,當(dāng)請求特定作業(yè)時(shí),并不立即開始所述作業(yè),而是首先實(shí)施鏈路檢查處理以確認(rèn)相關(guān)鏈路處于正常狀態(tài),然后開始所述作業(yè)。也就是說,在本發(fā)明中,當(dāng)用戶實(shí)施復(fù)印、打印或掃描操作以及響應(yīng)于此在圖像形成裝置諸如MFP中要執(zhí)行與前述操作對應(yīng)的預(yù)定作業(yè)時(shí),在實(shí)際執(zhí)行作業(yè)之前檢查設(shè)備模塊的鏈路的狀態(tài)。當(dāng)鏈路沒有建立時(shí),再次實(shí)施(重配置)鏈路初始化,因此能夠防止鏈路沒有建立時(shí)的數(shù)據(jù)傳輸以避免圖像形成裝置變成無效的情況。下文中,將基于圖2中的流程圖解釋包括鏈路初始化的處理。首先,開啟圖像形成裝置的電源,然后在步驟SI中控制模塊I的CPUll執(zhí)行鏈路初始化處理(PCIe配置)。圖5是鏈路初始化處理的示例性順序的說明圖。此處,為了建立在控制模塊I和以接口模塊3和圖像處理模塊4為代表的每個(gè)設(shè)備模塊之間的鏈路,CPUll檢索預(yù)先存儲在存儲部分14中的寄存器初始值,并且主數(shù)據(jù)傳輸部分12將包括檢索到的寄存器初始值的初始化指令傳送至要為之建立鏈路的設(shè)備模塊的從屬數(shù)據(jù)傳輸部分。通過在PCIe上產(chǎn)生與實(shí)際作業(yè)數(shù)據(jù)諸如圖像數(shù)據(jù)的傳輸(讀取和寫入)處理不同的配置事務(wù),該指令從主數(shù)據(jù)傳輸部分12被發(fā)出至PCIe。
此處,配置事務(wù)是指在所連接的設(shè)備中的配置寄存器讀取/寫入,然而實(shí)際數(shù)據(jù)傳輸處理是由IO讀取/寫入和存儲器讀取/寫入實(shí)施的。從而,它們在數(shù)據(jù)傳輸格式上不同。當(dāng)從屬數(shù)據(jù)傳輸部分31接收到這個(gè)指令時(shí),該指令中包含的寄存器初始值被寫入到配置寄存器(CONREG)中。也就是說,所傳輸?shù)募拇嫫鞒跏贾档拿織l信息被存儲在配置寄存器中的每個(gè)相應(yīng)地址中,如圖4所示。結(jié)果,完成了設(shè)備ID、基地址等的初始設(shè)定,從而與PCIe建立鏈路。這之后,數(shù)據(jù)諸如圖像數(shù)據(jù)能夠在控制模塊I和完成了 CONREG中的初始設(shè)定的設(shè)備模塊(3或4)之間傳輸。在步驟S2中,CPUll檢查作業(yè)請求是否由用戶的輸入操作來輸入。例如,當(dāng)用戶按下了用于復(fù)印操作的特定鍵時(shí),CPUll檢測用于復(fù)印操作的中斷輸入,并確認(rèn)已經(jīng)請求用于復(fù)印處理的作業(yè)。當(dāng)在步驟S3中確認(rèn)了作業(yè)請求時(shí),處理隨即進(jìn)行到步驟S4。當(dāng)在步驟S3中沒有確認(rèn)作業(yè)請求時(shí),處理隨即返回至步驟S2。在步驟S4中,CPUll實(shí)施鏈路檢查處理。由于用來處理所請求作業(yè)的模塊是預(yù)先確定的,所以就指定了作業(yè)請求所涉及的設(shè)備模塊,也就是 說,確定了對于哪個(gè)設(shè)備模塊應(yīng)該檢查鏈路。在鏈路檢查處理中,檢索存儲在設(shè)備模塊(3或4)的配置寄存器(CONREG)中的寄存器信息的值,以及將所檢索到的寄存器信息的值和存儲在存儲部分14中的寄存器初始值進(jìn)行比較以檢查它們是否一致。圖6是鏈路檢查處理的示例性順序的說明圖。在鏈路檢查處理中,CPUlI首先指示主數(shù)據(jù)傳輸部分12傳送寄存器檢查指令至鏈路應(yīng)該被檢查的設(shè)備模塊(3或4)的從屬數(shù)據(jù)傳輸部分(31或41)。被這樣指示的主數(shù)據(jù)傳輸部分12通過PCIe傳送寄存器檢查指令至鏈路應(yīng)該被檢查的設(shè)備模塊的從屬數(shù)據(jù)傳輸部分。從屬數(shù)據(jù)傳輸部分接收該指令,檢索存儲在配置寄存器(CONREG)中的寄存器信息,然后通過PCIe將包括所檢索到的CONREG中的寄存器信息的答復(fù)指令傳送至主數(shù)據(jù)傳輸部分12。主數(shù)據(jù)傳輸部分12接收答復(fù)指令,然后獲取包括在答復(fù)指令中的寄存器信息。然后,將獲取的CONREG中的寄存器信息和存儲在存儲部分14中的寄存器初始值進(jìn)行比較。作為比較,可以檢查如圖4所示CONREG中的寄存器信息的所有值和它們對應(yīng)的所有寄存器初始值,以看它們是否完全一致??蛇x地,可以檢查僅一些重要的值以看它們是否一致。例如,在CONREG中的寄存器信息的值中,可以僅檢查設(shè)備ID、狀態(tài)寄存器和基地址,以看它們是否與它們對應(yīng)的寄存器初始值一致。在比較中,當(dāng)被檢查的寄存器信息的至少一個(gè)值與其對應(yīng)的寄存器初始值不一致時(shí),鏈路的狀態(tài)被確定為異常(損壞)。另一方面,當(dāng)被檢查的寄存器信息的所有值都與它們對應(yīng)的寄存器初始值一致時(shí),所述鏈路的狀態(tài)被確定為正常。
在步驟S4的鏈路檢查處理之后,當(dāng)步驟S5中被檢查的CONREG中寄存器信息的所有值都與它們對應(yīng)的寄存器初始值一致時(shí),處理進(jìn)行到步驟S7,而當(dāng)被檢查的CONREG中寄存器信息的至少一個(gè)值與它們對應(yīng)的寄存器初始值不一致時(shí),處理進(jìn)行到步驟S6。在步驟S6中,再次實(shí)施PCIe配置。這個(gè)處理和步驟SI中的鏈路初始化處理相同。該處理使得控制模塊I將正確的寄存器初始值傳輸至具有異常鏈路的設(shè)備模塊,并且將所述正確值寫入到設(shè)備模塊的CONREG中。因此,恢復(fù)了控制模塊I和具有異常鏈路的設(shè)備模塊之間的鏈路。鏈路恢復(fù)之后,因此,數(shù)據(jù)諸如圖像數(shù)據(jù)能夠在兩個(gè)模塊之間傳輸。步驟S6之后,所述處理進(jìn)行到步驟S7。在步驟S7中,開始在步驟中S2被確認(rèn)的作業(yè),并且執(zhí)行模塊之間的數(shù)據(jù)傳輸。例如,當(dāng)請求在圖像處理模塊4上的作業(yè)時(shí),CPUll通過PCIe傳送IO寫入/讀取指令或存儲器寫入/讀取指令至圖像處理ASIC,以開始所述作業(yè),然后執(zhí)行被請求的作業(yè)。當(dāng)根 據(jù)作 業(yè)請求的數(shù)據(jù)傳輸處理結(jié)束時(shí),處理完成。
權(quán)利要求
1.一種圖像形成裝置,包括: 多個(gè)設(shè)備模塊,用于執(zhí)行預(yù)定功能;以及 控制模塊,用于控制所述設(shè)備模塊的操作,所述設(shè)備模塊和所述控制模塊通過PCI快速接口連接, 所述控制模塊包括: 初始化部分,用于建立在所述控制模塊和每個(gè)設(shè)備模塊之間的鏈路; 主數(shù)據(jù)傳輸部分,用于將所請求傳輸?shù)臄?shù)據(jù)傳輸至預(yù)定設(shè)備模塊;以及鏈路檢查部分,用于檢查所述控制模塊和所述設(shè)備模塊之間的鏈路的狀態(tài),其中當(dāng)作出將數(shù)據(jù)傳輸至所述多個(gè)設(shè)備模塊中的第一設(shè)備模塊的請求時(shí),所述鏈路檢查部分檢查所述控制模塊和所述第一設(shè)備模塊之間的鏈路的狀態(tài),并且 當(dāng)被檢查的鏈路的狀態(tài)被確定為異常時(shí),所述初始化部分建立所述控制模塊和所述第一設(shè)備模塊之間的鏈路,然后所述主數(shù)據(jù)傳輸部分將所請求傳輸?shù)臄?shù)據(jù)傳輸至所述第一設(shè)備模塊。
2.根據(jù)權(quán)利要求1所述的圖像形成裝置,其中所述多個(gè)設(shè)備模塊中的每個(gè)設(shè)備模塊均包括: 從屬數(shù)據(jù)傳輸部分,用于通過所述PCI快速接口將數(shù)據(jù)傳送至所述控制模塊并從所述控制模塊接收數(shù)據(jù);以及 配置寄存器,所述配置寄存器在所述控制模塊和所述設(shè)備模塊之間的鏈路建立時(shí)被設(shè)定,以存儲數(shù)據(jù)傳送和 接收所需的寄存器信息。
3.根據(jù)權(quán)利要求2所述的圖像形成裝置,其中 所述控制模塊包括存儲部分,所述存儲部分用于存儲建立所述控制模塊和每個(gè)設(shè)備模塊之間的鏈路所需的寄存器初始值,并且 所述鏈路檢查部分依靠所述主數(shù)據(jù)傳輸部分獲取存儲在所述第一設(shè)備模塊的配置寄存器中的所述寄存器信息;比較獲取的寄存器信息與存儲在所述存儲部分中的寄存器初始值;以及當(dāng)所述寄存器信息和所述寄存器初始值一致時(shí)確定所述鏈路的狀態(tài)正常,或者當(dāng)所述寄存器信息和所述寄存器初始值不一致時(shí)確定所述鏈路的狀態(tài)異常。
4.根據(jù)權(quán)利要求2所述的圖像形成裝置,其中 所述控制模塊包括存儲部分,所述存儲部分用于存儲建立所述控制模塊和每個(gè)設(shè)備模塊之間的鏈路所需的寄存器初始值, 所述初始化部分將用于所述多個(gè)設(shè)備模塊中的第二設(shè)備模塊的寄存器初始值傳輸至所述第二設(shè)備模塊,以便建立所述控制模塊和所述第二設(shè)備模塊之間的鏈路,并且所述第二設(shè)備模塊在其配置寄存器中存儲傳輸至其中的寄存器初始值。
5.根據(jù)權(quán)利要求3或4所述的圖像形成裝置,其中 存儲在所述存儲部分中的所述寄存器初始值和存儲在每個(gè)配置寄存器中的所述寄存器信息包括:設(shè)備ID,用于識別所述設(shè)備模塊;狀態(tài)寄存器,用于顯示所述設(shè)備模塊的當(dāng)前狀態(tài);以及所述設(shè)備模塊的基地址。
全文摘要
一種圖像形成裝置具有多個(gè)設(shè)備模塊,用于執(zhí)行預(yù)定功能;以及控制模塊,用于控制設(shè)備模塊的操作。所述控制模塊包括初始化部分,用于建立鏈路;主數(shù)據(jù)傳輸部分,用于傳輸數(shù)據(jù)至設(shè)備模塊;以及鏈路檢查部分,用于檢查鏈路的狀態(tài)。當(dāng)作出將數(shù)據(jù)傳輸至多個(gè)設(shè)備模塊中的第一設(shè)備模塊的請求時(shí),所述鏈路檢查部分檢查控制模塊和第一設(shè)備模塊之間的鏈路的狀態(tài)。當(dāng)被檢查的鏈路的狀態(tài)被確定為異常時(shí),所述初始化部分建立控制模塊和第一設(shè)備模塊之間的鏈路,然后所述主數(shù)據(jù)傳輸部分將所請求傳輸?shù)臄?shù)據(jù)傳輸至第一設(shè)備模塊。
文檔編號H04N1/00GK103227876SQ201210519629
公開日2013年7月31日 申請日期2012年12月6日 優(yōu)先權(quán)日2011年12月8日
發(fā)明者木下浩樹 申請人:夏普株式會社