專利名稱:一種支持多碼制并行處理的條碼解碼裝置的制作方法
一種支持多碼制并行處理的條碼解碼裝置
技術(shù)領(lǐng)域:
本發(fā)明涉及一種條碼解碼裝置,特別涉及一種支持多碼制并行處理的條碼解碼裝 置。
背景技術(shù):
條碼技術(shù)是在計(jì)算機(jī)技術(shù)與信息技術(shù)基礎(chǔ)上發(fā)展起來的一門容編碼、印刷、識(shí)別、 數(shù)據(jù)采集和處理于一身的新興技術(shù)。條碼技術(shù)由于其識(shí)別快速、準(zhǔn)確、可靠以及成本低等優(yōu) 點(diǎn),被廣泛應(yīng)用于商業(yè)、圖書管理、倉儲(chǔ)、郵電、交通和工業(yè)控制等領(lǐng)域,并且勢必在逐漸興 起的“物聯(lián)網(wǎng)”應(yīng)用中發(fā)揮重大的作用。目前被廣泛使用的條碼包括一維條碼及二維條碼。一維條碼又稱線形條碼是由平 行排列的多個(gè)"條"和"空"單元組成,條形碼信息靠條和空的不同寬度和位置來表達(dá)。 一維條碼只是在一個(gè)方向(一般是水平方向)表達(dá)信息,而在垂直方向則不表達(dá)任何信息, 因此信息容量及空間利用率較低,并且在條碼損壞后即無法識(shí)別。二維條碼是由按一定規(guī)律在二維方向上分布的黑白相間的特定幾何圖形組成,其 可以在二維方向上表達(dá)信息,因此信息容量及空間利用率較低,并具有一定的校驗(yàn)功能。二 維條碼可以分為堆疊式二維條碼和矩陣式二維條碼。堆疊式二維條碼是由多行短截的一 維條碼堆疊而成,代表性的堆疊式二維條碼包括PDF417、Code 49、Code 16K等。矩陣式 二維條碼是由按預(yù)定規(guī)則分布于矩陣中的黑、白模塊組成,代表性的矩陣式二維條碼包括 Codeone、Aztec、Date MatriX、QR 碼等。目前,對條碼圖像的解碼過程基本都是采用串行方式進(jìn)行。例如,在現(xiàn)有條碼解碼 裝置中,在對一幅碼制不確定的條碼圖像進(jìn)行解碼時(shí)通常是利用不同碼制的解碼程序循環(huán) 對同一條碼圖像進(jìn)行嘗試解碼,直到解碼出正確的條碼圖像。這種循環(huán)解碼過程往往需要 耗費(fèi)大量的時(shí)間,因此大大降低了解碼速度。
發(fā)明內(nèi)容為了解決以上問題,本發(fā)明提供了一種支持多碼制并行處理的條碼解碼裝置,由 此提高條碼圖像的識(shí)別速度。本發(fā)明公開了一種支持多碼制并行處理的條碼解碼裝置,該條碼解碼裝置包括至 少兩個(gè)處理單元,至少兩個(gè)處理單元分別利用針對不同碼制的識(shí)別規(guī)則對輸入的同一條碼 圖像進(jìn)行并行識(shí)別。根據(jù)本發(fā)明一優(yōu)選實(shí)施例,在至少兩個(gè)處理單元中,若其中一個(gè)處理單元輸出正 確的識(shí)別結(jié)果,則其它處理單元的識(shí)別動(dòng)作停止。根據(jù)本發(fā)明一優(yōu)選實(shí)施例,處理單元為由硬件邏輯實(shí)現(xiàn)的可對條碼圖像進(jìn)行識(shí)別 的條碼運(yùn)算邏輯。根據(jù)本發(fā)明一優(yōu)選實(shí)施例,條碼解碼裝置進(jìn)一步包括存儲(chǔ)條碼圖像的數(shù)據(jù)存儲(chǔ) 器,條碼運(yùn)算邏輯從數(shù)據(jù)存儲(chǔ)器獲取條碼圖像。
根據(jù)本發(fā)明一優(yōu)選實(shí)施例,條碼解碼裝置進(jìn)一步包括主控邏輯模塊,主控邏輯模 塊控制條碼運(yùn)算邏輯的工作狀態(tài)。根據(jù)本發(fā)明一優(yōu)選實(shí)施例,主控邏輯模塊提供數(shù)據(jù)傳輸通道,數(shù)據(jù)存儲(chǔ)器中存儲(chǔ) 的條碼圖像通過主控邏輯模塊傳輸?shù)綏l碼運(yùn)算邏輯。根據(jù)本發(fā)明一優(yōu)選實(shí)施例,條碼解碼裝置進(jìn)一步包括設(shè)置于數(shù)據(jù)存儲(chǔ)器與條碼運(yùn) 算邏輯之間的選通邏輯門,選通邏輯門在主控邏輯模塊的控制下選擇性連通數(shù)據(jù)存儲(chǔ)器與 對應(yīng)的條碼運(yùn)算邏輯。 根據(jù)本發(fā)明一優(yōu)選實(shí)施例,選通邏輯門包括一輸入端口、多個(gè)輸出端口以及至少 一控制端口,選通邏輯門的輸入端口連接數(shù)據(jù)存儲(chǔ)器的輸出端口,選通邏輯門的多個(gè)輸出 端口分別連接對應(yīng)的條碼運(yùn)算邏輯的輸入端口,選通邏輯門的控制端口連接主控邏輯模 塊,以在主控邏輯模塊的控制下選擇性連通選通邏輯門的輸入端口與選通邏輯門的對應(yīng)輸 出端口。根據(jù)本發(fā)明一優(yōu)選實(shí)施例,每個(gè)處理單元包括至少兩個(gè)子處理單元,至少兩個(gè)子 處理單元分別對應(yīng)同一條碼識(shí)別規(guī)則的不同識(shí)別步驟。根據(jù)本發(fā)明一優(yōu)選實(shí)施例,至少兩個(gè)子處理單元串接設(shè)置,以實(shí)現(xiàn)同一條碼識(shí)別 規(guī)則的完整識(shí)別過程。通過上述方法,利用多個(gè)處理單元分別以不同的識(shí)別規(guī)則對同一條碼圖像進(jìn)行并 行識(shí)別,提高了條碼圖像的識(shí)別速度。
圖1為本發(fā)明第一實(shí)施例的示意框圖。圖2為本發(fā)明第二實(shí)施例的示意框圖。圖3為本發(fā)明第三實(shí)施例的示意框圖。圖4為本發(fā)明第四實(shí)施例的示意框圖。圖5為本發(fā)明第五實(shí)施例的示意框圖。圖6為實(shí)現(xiàn)本發(fā)明第一至第五實(shí)施例的硬件邏輯架構(gòu)的示意框圖。圖7為圖6所示的硬件邏輯架構(gòu)中的數(shù)據(jù)管理系統(tǒng)的示意框圖。圖8為實(shí)現(xiàn)本發(fā)明第一至第五實(shí)施例的軟件架構(gòu)的示意框圖。圖9為圖8所示的軟件架構(gòu)的第一工作狀態(tài)。圖10為圖8所示的軟件架構(gòu)的第二工作狀態(tài)。
具體實(shí)施方式下面結(jié)合附圖和實(shí)施例對本發(fā)明進(jìn)行詳細(xì)說明。如圖1所示,圖1是本發(fā)明第一實(shí)施例的條碼圖像并行處理架構(gòu)的示意圖。在本發(fā) 明的第一實(shí)施例中,條碼解碼裝置100中設(shè)置至少兩個(gè)處理單元101、102。處理單元101、 102是對應(yīng)于不同碼制的識(shí)別單元,即處理單元101、102可分別利用不同碼制的識(shí)別規(guī)則 進(jìn)行條碼識(shí)別。例如,處理單元101為一維條碼識(shí)別單元,而處理單元102為PDF417條碼 識(shí)別單元。此外,條碼解碼裝置100還可以進(jìn)一步設(shè)置多個(gè)處理單元,以分別對應(yīng)于其他碼 制的條碼識(shí)別過程,例如Code 49條碼、Code 16K條碼、Supercode條碼等。
在本發(fā)明的第一實(shí)施例中,當(dāng)條碼圖像輸入到條碼解碼裝置100后,處理單元 101、102分別利用針對不同碼制的識(shí)別規(guī)則對該條碼圖像進(jìn)行并行解碼。例如,由處理單元 101,102分別利用一維條碼識(shí)別規(guī)則和PDF417條碼識(shí)別規(guī)則同時(shí)對該條碼圖像進(jìn)行識(shí)別。 如果輸入的條碼圖像為PDF417條碼圖像,則由處理單元102輸出正確的識(shí)別結(jié)果。在優(yōu)選 實(shí)施例中,如果處理單元102已輸出正確的識(shí)別結(jié)果,而處理單元101仍在執(zhí)行識(shí)別動(dòng)作, 則停止處理單元101的識(shí)別動(dòng)作。
通過上述方法,利用多個(gè)處理單元分別以不同的識(shí)別規(guī)則對同一條碼圖像進(jìn)行并 行識(shí)別,由此提高了條碼圖像的識(shí)別速度。如圖2所示,圖2是本發(fā)明第二實(shí)施例的條碼圖像并行處理架構(gòu)的示意圖。在本 實(shí)施例中,在攝像頭(未圖示)拍攝到條碼圖像且進(jìn)行適當(dāng)預(yù)處理后,需要將條碼圖像傳輸 到條碼解碼裝置200的數(shù)據(jù)存儲(chǔ)器201。在現(xiàn)有技術(shù)中,需等待條碼圖像全部傳輸?shù)綌?shù)據(jù)存 儲(chǔ)器201后才進(jìn)行條碼識(shí)別。然而,考慮到數(shù)據(jù)存儲(chǔ)器201中存儲(chǔ)的條碼圖像的圖像片段 達(dá)到一定程度后即可進(jìn)行全部或部分條碼識(shí)別過程,因此在本實(shí)施例中條碼圖像的傳輸過 程與識(shí)別過程并行進(jìn)行。具體來說,對于一維條碼而言,由于一維條碼只在水平方向表達(dá)信息,而在垂直方 向則不表達(dá)任何信息,因此實(shí)際上只需獲得一定高度的水平條碼圖像片段即可對一維條碼 進(jìn)行識(shí)別。對于二維條碼而言,同樣在獲得足夠大小的條碼片段后即可進(jìn)行部分條碼識(shí)別 過程,例如邊界搜索等。因此,在本實(shí)施例中,在條碼圖像向條碼解碼裝置200的數(shù)據(jù)存儲(chǔ)器201的傳輸過 程中,判斷已傳輸?shù)臈l碼圖像片段是否滿足識(shí)別條件。所謂的識(shí)別條件可以是數(shù)據(jù)存儲(chǔ)器 201已接收的條碼圖像片段是否達(dá)到預(yù)定的像素行或/和列數(shù)量,并且可根據(jù)不同碼制設(shè) 定不同標(biāo)準(zhǔn)。當(dāng)處理單元202判斷出數(shù)據(jù)存儲(chǔ)器201已接收的條碼圖像片段滿足識(shí)別條件 時(shí),便開始對已接收的條碼圖像片段進(jìn)行識(shí)別。在處理單元202對已接收的條碼圖像片段 進(jìn)行識(shí)別的過程中,條碼圖像繼續(xù)向數(shù)據(jù)存儲(chǔ)器傳輸并形成新的條碼片段。當(dāng)處理單元202 完成條碼圖像片段的識(shí)別后,處理單元202會(huì)進(jìn)行等待,直到數(shù)據(jù)存儲(chǔ)器201所接收的新的 條碼圖像片段滿足下一次識(shí)別的條件。處理單元202在判斷數(shù)據(jù)存儲(chǔ)器201接收的條碼圖 像片段已滿足下一次識(shí)別的條件后,會(huì)繼續(xù)對條碼圖像片段進(jìn)行識(shí)別。通過上述方法,實(shí)現(xiàn)了條碼圖像傳輸與條碼識(shí)別過程的并行,由此提高了條碼圖 像的識(shí)別速度。此外,如第一實(shí)施例所描述的,本實(shí)施例的條碼解碼裝置200中也可以設(shè)置多個(gè) 處理單元,該多個(gè)處理單元分別利用針對不同碼制的識(shí)別規(guī)則對圖像片段進(jìn)行并行識(shí)別。如圖3所示,圖3是本發(fā)明第三實(shí)施例的條碼圖像并行處理架構(gòu)的示意圖。在條 碼識(shí)別過程中,為了保證對條碼圖像識(shí)別的正確性,需要對多幀條碼圖像進(jìn)行識(shí)別。然而, 在現(xiàn)有技術(shù)中,在攝像單元將一幀條碼圖像傳輸?shù)綏l碼解碼裝置300后需等待條碼解碼裝 置300對該幀條碼圖像的識(shí)別過程完成后才會(huì)傳輸下一幀條碼圖像。在本實(shí)施例中,攝像單元(未圖示)將連續(xù)拍攝的多幀條碼圖像順序地傳輸?shù)綏l 碼解碼裝置300的數(shù)據(jù)存儲(chǔ)器301。并且,在傳輸完一幀條碼圖像后,由處理單元302對該 幀條碼圖像進(jìn)行識(shí)別。在處理單元302對該幀條碼圖像進(jìn)行識(shí)別的同時(shí),攝像單元向數(shù)據(jù) 存儲(chǔ)器301繼續(xù)傳輸下一幀條碼圖像。當(dāng)處理單元302對當(dāng)前幀條碼圖像的識(shí)別完成后,若下一幀條碼圖像已完成向數(shù)據(jù)存儲(chǔ)器301的傳輸,則處理單元302開始對下一幀條碼圖 像進(jìn)行識(shí)別。當(dāng)處理單元302對當(dāng)前幀條碼圖像的識(shí)別完成后,若下一幀條碼圖像未完成 向數(shù)據(jù)存儲(chǔ)器301的傳輸,則處理單元302等待下一幀條碼圖像的傳輸,直至下一幀條碼圖 像傳輸完畢,處理單元302開始對下一幀條碼圖像進(jìn)行識(shí)別。通過上述方法,實(shí)現(xiàn)了條碼圖像傳輸與條碼識(shí)別過程的并行,由此提高了條碼圖 像的識(shí)別速度。 此外,如第一實(shí)施例所描述的,本實(shí)施例的條碼解碼裝置300中也可以設(shè)置多個(gè) 處理單元,該多個(gè)處理單元分別利用針對不同碼制的識(shí)別規(guī)則對條碼圖像進(jìn)行并行識(shí)別。如圖4所示,圖4是本發(fā)明第四實(shí)施例的條碼圖像并行處理架構(gòu)的示意圖。在本 發(fā)明的第四實(shí)施例中,條碼解碼裝置400中設(shè)置一組至少兩個(gè)處理單元401、402、403。其 中,每個(gè)處理單元401、402、403對應(yīng)同一條碼識(shí)別規(guī)則的不同識(shí)別步驟。這至少兩個(gè)處理 單元串接在一起后,可實(shí)現(xiàn)一個(gè)完整的識(shí)別過程。以一維條碼為例,處理單元401、402、403 可分別對應(yīng)于一維條碼的條碼搜索步驟、碼值提取步驟以及糾錯(cuò)譯碼步驟。由此,對于連續(xù) 輸入到條碼解碼裝置400的兩幀條碼圖像,處理單元401由首先對第一幀條碼圖像進(jìn)行條 碼搜索,以確定條碼位置及相關(guān)參數(shù)。在處理單元401對第一幀條碼圖像進(jìn)行處理后,將搜 索結(jié)果輸入到處理單元402進(jìn)行碼值提取。而處理單元401則進(jìn)一步對第二幀條碼圖像進(jìn) 行條碼搜索。在處理單元402對第一幀條碼圖像進(jìn)行完碼值提取,并將提取結(jié)果輸入到處 理單元403進(jìn)行糾錯(cuò)譯碼后,由處理單元401將第二幀條碼圖像的搜索結(jié)果進(jìn)一步輸入到 處理單元402進(jìn)行碼值提取。通過上述方式,可以通過流水線架構(gòu)設(shè)計(jì)實(shí)現(xiàn)了條碼圖像的各識(shí)別步驟的并行, 由此提高了條碼圖像的識(shí)別速度。此外,在條碼解碼裝置400中同樣可以設(shè)置多組處理單元,每組處理單元中包括 多個(gè)針對同一條碼識(shí)別規(guī)則的不同識(shí)別步驟的處理單元,且每組處理單元分別對應(yīng)于不同 碼制的識(shí)別規(guī)則,由此可由該多組處理單元分別利用針對不同碼制的識(shí)別規(guī)則對條碼圖像 進(jìn)行并行識(shí)別。進(jìn)一步,本發(fā)明第四實(shí)施例可以與第一至第三實(shí)施例結(jié)合,即利用第四實(shí)施例的 處理單元401、402、403的流水線設(shè)計(jì)實(shí)現(xiàn)第一至第三實(shí)施例中的處理單元101、102、202、 302。此時(shí),第四實(shí)施例的處理單元401、402、403可作為第一至第三實(shí)施例中的處理單元 101、102、202、302中的子處理單元。如圖5所示,圖5是本發(fā)明第五實(shí)施例的條碼圖像并行處理架構(gòu)的示意圖。在本 發(fā)明的第五實(shí)施例中,條碼解碼裝置500的處理單元中設(shè)置有對條碼圖像進(jìn)行掃描的掃描 模塊501以及至少兩個(gè)邊界判斷模塊502、503、504、505。邊界判斷模塊502、503、504、505 可分別利用不同的邊界判斷規(guī)則來對掃描到的條碼邊界進(jìn)行并行邊界判斷。每一邊界判斷 模塊502、503、504、505優(yōu)選為對應(yīng)一個(gè)邊界判斷規(guī)則。在一優(yōu)選實(shí)施例中,條碼圖像為PDF417碼的條碼圖像,邊界判斷模塊502對應(yīng) 81111113邊界判斷規(guī)則、邊界判斷模塊503對應(yīng)31111118邊界判斷規(guī)則、邊界判斷模塊 504對應(yīng)71111113邊界判斷規(guī)則、邊界判斷模塊505對應(yīng)31111117邊界判斷規(guī)則。當(dāng)掃 描模塊501對條碼圖像進(jìn)行掃描時(shí),若掃描模塊501掃描到一條空邊界,則以此條空邊界為 基準(zhǔn)向前繼續(xù)掃描8個(gè)條空邊界,并將其間的各條或空的模塊數(shù)發(fā)送給這四個(gè)邊界判斷模塊502、503、504、505,由這四個(gè)邊界判斷模塊502、503、504、505并行判斷上述條空是否滿 足對應(yīng)的邊界判斷規(guī)則。例如,若邊界判斷模塊503正確判斷出條碼邊界,則此條碼圖像的 邊界為31111118邊界。若此時(shí)其它邊界判斷模塊502、504、505仍在進(jìn)行邊界判斷,則停止 邊界判斷模塊502、504、505的判斷動(dòng)作。若這四個(gè)邊界判斷模塊502、503、504、505均判斷 出上述條空不滿足對應(yīng)的邊界判斷規(guī)則,則掃描模塊501向前搜索下一條空邊界,并以該 下一條空邊界為基準(zhǔn)重復(fù)上述判斷過程,直到確定出正確的條碼邊界或掃描完整個(gè)條碼圖 像。 此外,本發(fā)明第五實(shí)施例可以與第一至第四實(shí)施例結(jié)合,即將掃描模塊501以及 邊界判斷模塊502、503、504、505作為上述實(shí)施例的處理單元的一部分。圖6為實(shí)現(xiàn)本發(fā)明第一至第五實(shí)施例的硬件邏輯架構(gòu)的示意框圖。在本實(shí)施例 中,上述條碼解碼裝置可全部由硬件邏輯實(shí)現(xiàn),并集成于一個(gè)集成芯片內(nèi)。該集成條碼解碼 芯片包括數(shù)據(jù)存儲(chǔ)器603、主控邏輯模塊602、寄存器組605、外部接口 606以及至少一條碼 運(yùn)算邏輯601。寄存器組605將數(shù)據(jù)存儲(chǔ)器603、主控邏輯模塊602以及條碼運(yùn)算邏輯601與 外部隔離。其中,條碼運(yùn)算邏輯601可對應(yīng)于本發(fā)明第一至第四實(shí)施例中的處理單元101、 102、202、302、401、402、403,或是第五實(shí)施例中的掃描模塊501及邊界判斷模塊502、503、 504、505。該集成條碼解碼芯片中進(jìn)一步圖像傳感陣列604及曝光控制模塊607,曝光控制 模塊607通過I2C總線控制圖像傳感陣列604,以控制圖像傳感陣列604的工作狀態(tài)。另外, 圖像傳感陣列604的亮度信息可以傳給曝光控制模塊607,曝光控制模塊607根據(jù)所獲取的 亮度信息可將相應(yīng)控制邏輯放置到寄存器組605,主控邏輯模塊602從寄存器組605獲取該 控制邏輯,并根據(jù)該控制邏輯控制條碼運(yùn)算邏輯601的工作,如開啟或關(guān)閉其工作狀態(tài)。主控邏輯模塊602對應(yīng)于所需的控制狀態(tài)具有相應(yīng)的控制邏輯,可以通過觸發(fā)與 主控邏輯模塊602電連接的開關(guān)來選取所需的控制狀態(tài),如開啟條碼運(yùn)算邏輯601,從數(shù)據(jù) 存儲(chǔ)器603獲取條碼圖像,并將其傳輸至條碼運(yùn)算邏輯601等等。另外,主控邏輯模塊602 也可提供數(shù)據(jù)傳輸通道,如可將數(shù)據(jù)存儲(chǔ)器603中存儲(chǔ)的條碼圖像可通過主控邏輯模塊 602傳輸?shù)綏l碼運(yùn)算邏輯601,并控制條碼運(yùn)算邏輯601的工作狀態(tài)。該主控邏輯模塊602 不具備運(yùn)算功能,但可根據(jù)一定條件觸發(fā)相應(yīng)事件,具體可利用已知的狀態(tài)機(jī)實(shí)現(xiàn)。針對條 碼圖像的各種運(yùn)算過程完全由條碼運(yùn)算邏輯實(shí)現(xiàn),而主控邏輯模塊或狀態(tài)機(jī)602協(xié)調(diào)控制 作用。如圖7所示,圖7為圖6所示的硬件邏輯架構(gòu)中數(shù)據(jù)管理系統(tǒng)的具體實(shí)施例。在本 實(shí)施例中,數(shù)據(jù)存儲(chǔ)器701用于存儲(chǔ)條碼圖像或圖像片段,而條碼運(yùn)算邏輯705、706及707 則可分別對應(yīng)于本發(fā)明第一實(shí)施例至第五實(shí)施例中的各種處理單元或模塊,條碼運(yùn)算邏輯 705、706及707用于對數(shù)據(jù)存儲(chǔ)器701內(nèi)存儲(chǔ)的條碼圖像或圖像片段進(jìn)行并行處理。例如, 在本實(shí)施例中,數(shù)據(jù)存儲(chǔ)器701存儲(chǔ)的是一維條碼圖像,而條碼運(yùn)算邏輯705、706及707則 是對應(yīng)于不同一維條碼識(shí)別規(guī)則的識(shí)別單元。在本實(shí)施例中,選通邏輯門703設(shè)置于數(shù)據(jù) 存儲(chǔ)器701與條碼運(yùn)算邏輯705、706及707之間,并在狀態(tài)機(jī)(主控邏輯模塊)702的控制 下,使得條碼運(yùn)算邏輯705、706及707依次調(diào)用數(shù)據(jù)存儲(chǔ)器701中的條碼圖像或圖像片段, 即選通邏輯門703可在狀態(tài)機(jī)702的控制下選擇性連通數(shù)據(jù)存儲(chǔ)器701與對應(yīng)的條碼運(yùn)算 邏輯 705、706 及 707。 具體來說,選通邏輯門703包括一輸入端口、多個(gè)輸出端口及至少一控制端口。選通邏輯門703的輸入端口與數(shù)據(jù)存儲(chǔ)器701的輸出端口相連接,而選通邏輯門703的輸出 端口分別與條碼運(yùn)算邏輯705、706及707的輸入端口相連接。選通邏輯門703的控制端口 與狀態(tài)機(jī)702相連接,并在狀態(tài)機(jī)702輸出的不同控制指令的控制下選擇性連通選通邏輯 門703的輸入端口與對應(yīng)的輸出端口,使得經(jīng)由選通邏輯門703的輸入端口輸入的條碼圖 像或圖像片段傳遞到對應(yīng)的選通邏輯門703的輸出端口,進(jìn)而輸出到對應(yīng)的條碼運(yùn)算邏輯 705,706及707。選通邏輯門703可根據(jù)實(shí)際需要,由現(xiàn)有的各種邏輯門實(shí)現(xiàn)。 當(dāng)條碼圖像或滿足識(shí)別條件的圖像片段傳輸?shù)綌?shù)據(jù)存儲(chǔ)器701之后,數(shù)據(jù)存儲(chǔ)器 701會(huì)發(fā)送此狀態(tài)到狀態(tài)機(jī)702。狀態(tài)機(jī)702接到此狀態(tài)后,會(huì)控制條碼運(yùn)算邏輯705去調(diào) 用數(shù)據(jù)存儲(chǔ)器701中的條碼圖像或圖像片段。此時(shí),狀態(tài)機(jī)702會(huì)控制選通邏輯門703接 通數(shù)據(jù)存儲(chǔ)器701與條碼運(yùn)算邏輯705,使條碼運(yùn)算邏輯705調(diào)用數(shù)據(jù)存儲(chǔ)器701中的條 碼圖像或圖像片段。條碼運(yùn)算邏輯705調(diào)用完畢該條碼圖像或圖像片段后,開始對該條碼 圖像或圖像片段進(jìn)行識(shí)別或處理。此時(shí),狀態(tài)機(jī)702控制選通邏輯門703連通數(shù)據(jù)存儲(chǔ)器 701與條碼運(yùn)算邏輯706,并控制條碼運(yùn)算邏輯706調(diào)用數(shù)據(jù)存儲(chǔ)器701中的條碼圖像或圖 像片段。由于進(jìn)行識(shí)別的時(shí)間相比調(diào)用條碼圖像或圖像片段的時(shí)間要長很多,因此條碼運(yùn) 算邏輯705與條碼運(yùn)算邏輯706同時(shí)對該條碼圖像或圖像片段進(jìn)行并行識(shí)別或處理。條碼 運(yùn)算邏輯706調(diào)用完條碼圖像或圖像片段后,狀態(tài)機(jī)702則可控制條碼運(yùn)算邏輯707繼續(xù) 調(diào)用該條碼圖像或圖像片段。若條碼運(yùn)算邏輯705、706及707中的一個(gè)正確識(shí)別出條碼信息,則由狀態(tài)機(jī)702 控制其他條碼運(yùn)算邏輯停止識(shí)別動(dòng)作。在識(shí)別的過程中,若繼續(xù)向數(shù)據(jù)存儲(chǔ)器701傳輸后 續(xù)條碼圖像或圖像片段,則在條碼運(yùn)算邏輯705、706及707對前一條碼圖像或圖像片段識(shí) 別或處理完畢后,由狀態(tài)機(jī)702控制條碼運(yùn)算邏輯705、706及707通過選通邏輯門703進(jìn) 一步調(diào)用數(shù)據(jù)存儲(chǔ)器701中接收的后續(xù)條碼圖像或圖像片段,進(jìn)行識(shí)別或處理。在優(yōu)選實(shí)施例,若條碼運(yùn)算邏輯705、706及707中的一條碼運(yùn)算邏輯在上次條碼 圖像的識(shí)別中正確識(shí)別出條碼信息,則對后續(xù)條碼圖像進(jìn)行識(shí)別時(shí),狀態(tài)機(jī)702會(huì)控制該 條碼運(yùn)算邏輯優(yōu)先調(diào)用條碼圖像。如圖8所示,圖8是實(shí)現(xiàn)本發(fā)明第一至第五實(shí)施例的軟件架構(gòu)的示意圖。在本實(shí) 施例中,條碼解碼裝置800包括至少兩個(gè)可調(diào)用不同運(yùn)算程序的處理器核心801-804以及 一程序存儲(chǔ)器810。程序存儲(chǔ)器810存儲(chǔ)多個(gè)運(yùn)算程序811-817。每個(gè)運(yùn)算程序811-817 可對應(yīng)于本發(fā)明第一至第四實(shí)施例中的處理單元101、102、202、302、401、402、403或是第 五實(shí)施例中的掃描模塊501及邊界判斷模塊502、503、504、505的具體運(yùn)算過程。各處理器 核心801-804通過調(diào)用上述運(yùn)算程序811-817可實(shí)現(xiàn)實(shí)現(xiàn)本發(fā)明第一至第五實(shí)施例中描述 的各種識(shí)別單元及模塊的對應(yīng)功能。以第一實(shí)施例為例,運(yùn)算程序811-817分別對應(yīng)于不同碼制的識(shí)別程序。當(dāng)條 碼圖像輸入到該條碼解碼裝置800時(shí),處理器核心801-804分別調(diào)用不同的運(yùn)算程序 811-817,以利用不同碼制的識(shí)別規(guī)則對該條碼圖像進(jìn)行條碼識(shí)別。在優(yōu)選實(shí)施例中,程序 存儲(chǔ)器810所存儲(chǔ)的運(yùn)算程序811-817的數(shù)量大于處理器核心801-804的數(shù)量。由此,當(dāng) 其中一個(gè)處理器核心執(zhí)行完相應(yīng)的處理過程后,可繼續(xù)調(diào)用程序存儲(chǔ)器810中未被調(diào)用的 運(yùn)算程序,直至調(diào)用完所有運(yùn)算程序或已獲得相應(yīng)的處理結(jié)果。具體來說,以第一實(shí)施例為例,本實(shí)施例的條碼解碼裝置中包括四個(gè)處理器核心801-804,而程序存儲(chǔ)器810存儲(chǔ)有七個(gè)運(yùn)算程序811-817。在對條碼圖像進(jìn)行識(shí)別時(shí),處理 器核心801-804分別調(diào)用程序存儲(chǔ)器810中的四個(gè)不同運(yùn)算程序811-814對條碼圖像同時(shí) 進(jìn)行識(shí)別。如圖9所示,處理器核心801調(diào)用運(yùn)算程序811,處理器核心802調(diào)用運(yùn)算程序 812,處理器核心803調(diào)用運(yùn)算程序813,處理器核心804調(diào)用運(yùn)算程序814。如圖10所示, 當(dāng)處理器核心801利用運(yùn)算程序811完成對條碼圖像的識(shí)別,卻沒得出正確條碼圖像,但其 他處理器核心802-804仍在對條碼圖像進(jìn)行識(shí)別時(shí),處理器核心801則繼續(xù)調(diào)用運(yùn)算程序 815對條碼圖像繼續(xù)識(shí)別,直至有一個(gè)處理器核心801-804識(shí)別出正確的條碼信息,或所有 運(yùn)算程序811-817均被調(diào)用過,卻未識(shí)別出正確的條碼信息時(shí),條碼解碼裝置800對條碼圖 像的識(shí)別結(jié)束。若此次對條碼圖像的識(shí)別時(shí),處理器核心803調(diào)用運(yùn)算程序816識(shí)別出來正 確的條碼信息,則下次對后續(xù)條碼圖像進(jìn)行識(shí)別時(shí),處理器核心803優(yōu)先調(diào)用運(yùn)算程序816 來對后續(xù)條碼圖像進(jìn)行識(shí)別。
通過上述架構(gòu),可以根據(jù)處理核心的處理進(jìn)度充分實(shí)現(xiàn)資源的調(diào)配,進(jìn)一步加快 條碼圖像并行處理架構(gòu)的運(yùn)行速度。在上述實(shí)施例中,僅對本發(fā)明進(jìn)行了示范性描述,但是本領(lǐng)域技術(shù)人員在閱讀本 專利申請后可以在不脫離本發(fā)明的精神和范圍的情況下對本發(fā)明進(jìn)行各種修改。
權(quán)利要求
一種支持多碼制并行處理的條碼解碼裝置,其特征在于所述條碼解碼裝置包括至少兩個(gè)處理單元,所述至少兩個(gè)處理單元分別利用針對不同碼制的識(shí)別規(guī)則對輸入的同一條碼圖像進(jìn)行并行識(shí)別。
2.根據(jù)權(quán)利要求1所述的條碼解碼裝置,其特征在于在所述至少兩個(gè)處理單元中,若 其中一個(gè)處理單元輸出正確的識(shí)別結(jié)果,則其它處理單元的識(shí)別動(dòng)作停止。
3.根據(jù)權(quán)利要求2所述的條碼解碼裝置,其特征在于所述處理單元為由硬件邏輯實(shí) 現(xiàn)的可對所述條碼圖像進(jìn)行識(shí)別的條碼運(yùn)算邏輯。
4.根據(jù)權(quán)利要求3所述的條碼解碼裝置,其特征在于所述條碼解碼裝置進(jìn)一步包括 存儲(chǔ)所述條碼圖像的數(shù)據(jù)存儲(chǔ)器,所述條碼運(yùn)算邏輯從所述數(shù)據(jù)存儲(chǔ)器獲取所述條碼圖 像。
5.根據(jù)權(quán)利要求4所述的條碼解碼裝置,其特征在于所述條碼解碼裝置進(jìn)一步包括 主控邏輯模塊,所述主控邏輯模塊控制所述條碼運(yùn)算邏輯的工作狀態(tài)。
6.根據(jù)權(quán)利要求5所述的條碼解碼裝置,其特征在于所述主控邏輯模塊提供數(shù)據(jù)傳 輸通道,所述數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)的所述條碼圖像通過所述主控邏輯模塊傳輸?shù)剿鰲l碼運(yùn) 算邏輯。
7.根據(jù)權(quán)利要求5所述的條碼解碼裝置,其特征在于所述條碼解碼裝置進(jìn)一步包括 設(shè)置于所述數(shù)據(jù)存儲(chǔ)器與所述條碼運(yùn)算邏輯之間的選通邏輯門,所述選通邏輯門在所述主 控邏輯模塊的控制下選擇性連通所述數(shù)據(jù)存儲(chǔ)器與對應(yīng)的所述條碼運(yùn)算邏輯。
8.根據(jù)權(quán)利要求7所述的條碼解碼裝置,其特征在于所述選通邏輯門包括一輸入端 口、多個(gè)輸出端口以及至少一控制端口,所述選通邏輯門的輸入端口連接所述數(shù)據(jù)存儲(chǔ)器 的輸出端口,所述選通邏輯門的多個(gè)輸出端口分別連接對應(yīng)的所述條碼運(yùn)算邏輯的輸入端 口,所述選通邏輯門的控制端口連接所述主控邏輯模塊,以在所述主控邏輯模塊的控制下 選擇性連通所述選通邏輯門的輸入端口與所述選通邏輯門的對應(yīng)輸出端口。
9.根據(jù)權(quán)利要求1所述的條碼解碼裝置,其特征在于每個(gè)所述處理單元包括至少兩 個(gè)子處理單元,所述至少兩個(gè)子處理單元分別對應(yīng)同一條碼識(shí)別規(guī)則的不同識(shí)別步驟。
10.根據(jù)權(quán)利要求9所述的條碼解碼裝置,其特征在于所述至少兩個(gè)子處理單元串接 設(shè)置,以實(shí)現(xiàn)所述同一條碼識(shí)別規(guī)則的完整識(shí)別過程。
全文摘要
本發(fā)明公開了一種支持多碼制并行處理的條碼解碼裝置,該條碼解碼裝置包括至少兩個(gè)處理單元,該至少兩個(gè)處理單元分別利用針對不同碼制的識(shí)別規(guī)則對輸入的同一條碼圖像進(jìn)行并行識(shí)別。通過上述方法,利用多個(gè)處理單元分別以不同的識(shí)別規(guī)則對同一條碼圖像進(jìn)行并行識(shí)別,提高了條碼圖像的識(shí)別速度。
文檔編號(hào)G06K7/10GK101840492SQ20101018188
公開日2010年9月22日 申請日期2010年5月25日 優(yōu)先權(quán)日2010年5月25日
發(fā)明者邱有森, 陳文傳, 陳瑞琳 申請人:福建新大陸電腦股份有限公司