攝像系統(tǒng)以及圖像識別系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及計算機及計算機應(yīng)用技術(shù)領(lǐng)域,特別設(shè)及一種攝像系統(tǒng)W及圖像識別 系統(tǒng)。
【背景技術(shù)】
[0002] 通常來說,一臺計算機主要包括S個核屯、部分:中央處理器(CPU, Central Processing Unit)、內(nèi)存和存儲。
[0003] 經(jīng)過一些世界頂級公司的不懈努力,CPU已經(jīng)演變成極度復(fù)雜的半導(dǎo)體忍片。頂 級的CPU內(nèi)核內(nèi)部的MOS管數(shù)目可W超過一億個。目前的產(chǎn)業(yè)趨勢是受制于功耗,CPU的 運行頻率已經(jīng)很難再提高。已經(jīng)極度復(fù)雜的現(xiàn)代CPU,運行效率同樣很難再提高。新的CPU 產(chǎn)品,越來越多地朝多核方向演進。
[0004] 在內(nèi)存方面,目前居于統(tǒng)治地位的是動態(tài)隨機存取存儲器值RAM,Dynamic Random Access Memory)技術(shù)。DRAM可W快速隨機讀寫,但卻不能在斷電的情況下保持內(nèi)容。實際 上,即使在通電的情況下,它也會由于內(nèi)部用于儲存信息的電容器的漏電而丟失信息,必須 周期性地自刷新。 陽0化]在存儲方面,NAND閃存技術(shù)正在逐步取代傳統(tǒng)硬盤。閃存所依賴的浮置柵極 (floating gate)技術(shù),雖然能夠在斷電的情況下保持內(nèi)容,但寫入(將'1'改寫為'0') 的速度很慢,擦除(將'0'改寫為'r)的速度更慢,無法像DRAM那樣用于對計算的直接支 持。它被制作成塊設(shè)備化lock device),必須整塊一起擦除,一個塊化lock)包含很多頁 (page),擦除后每頁可W進行寫入操作。NAND的另外一個問題是具有有限的壽命。
[0006] DRAM和NAND閃存,W及CPU的邏輯電路,雖然都是基于CMOS半導(dǎo)體工藝生產(chǎn)的, 但運=者的工藝彼此并不兼容。于是,計算機的=個核屯、部分無法在一個忍片上共存,運深 刻地影響了現(xiàn)代計算機的架構(gòu)。
[0007] 現(xiàn)有技術(shù)中的計算機架構(gòu)如圖1所示,圖1中示出多個CPU內(nèi)核,分別為CPU1、 CPU2、CPU3、……、CP化,每個CPU內(nèi)核一般具有相應(yīng)的一級緩存化1 Cache),根據(jù)需要還 可W進一步為每個CPU內(nèi)核配備相應(yīng)的二級緩存化2 Cache)、S級緩存化3 Cache)。DRAM 與各個CPU內(nèi)核之間通過雙倍速率值DR,Double Data Rate)接口進行通信,硬盤(皿,Hard Disk)或固態(tài)硬盤(SSD,Solid State Drives)與各個CPU內(nèi)核之間則通過外圍設(shè)備接口 進行通信。
[0008] -方面,CPU在向多核的方向發(fā)展,另一方面內(nèi)存和存儲都在另外的忍片里。多 核CPU吞吐信息量成比例增加,與內(nèi)存、存儲的通信就越來越成為系統(tǒng)性能的瓶頸。為了 緩解通信瓶頸,CPU不得不采用越來越大的多級緩存。緩存是把內(nèi)存中的內(nèi)容復(fù)制,通常是 用成本比DRAM高得多但速度更快的靜態(tài)隨機存取存儲器(SRAM, static Random Access Memory)設(shè)計的。運樣的架構(gòu),費效比非常的差。半導(dǎo)體忍片的成本由其娃片的面積決定, 而傳統(tǒng)計算機架構(gòu)帶來的性能提升與其娃片面積的增加遠(yuǎn)遠(yuǎn)不成比例。
[0009] 高端的圖像傳感器是可W在極短的時間內(nèi)(微秒級)取得圖像數(shù)據(jù)的,但一帖 高清圖像的數(shù)據(jù)量很大,在目前的攝像系統(tǒng)中,考慮到現(xiàn)有計算機架構(gòu)因 CPU與內(nèi)存、存 儲之間存在的通信瓶頸對于計算機整體性能的影響,把圖像數(shù)據(jù)讀出來通常就需要1/30 秒-1/60秒的時間,因此在絕大部分的攝像系統(tǒng)中,對視頻的處理能力遠(yuǎn)遠(yuǎn)跟不上取得圖 像數(shù)據(jù)的速度。而傳統(tǒng)硬盤、固態(tài)硬盤、閃存寫入的速度很慢,高速攝像的數(shù)據(jù)量很大,傳統(tǒng) 存儲設(shè)備跟上很困難。
【發(fā)明內(nèi)容】
[0010] 本發(fā)明要解決的問題是目前的攝像系統(tǒng)由于現(xiàn)有計算機架構(gòu)中CPU與內(nèi)存、存儲 之間存在的通信瓶頸對于計算機整體性能的影響,使攝像系統(tǒng)的圖像處理能力較為有限, 難W滿足高速攝像的更高要求。
[0011] 為解決上述問題,本發(fā)明技術(shù)方案提供一種攝像系統(tǒng),包括:細(xì)胞陣列計算系統(tǒng) 和圖像傳感器;所述細(xì)胞陣列計算系統(tǒng)包括主控CPU、細(xì)胞陣列和細(xì)胞陣列總線;所述細(xì)胞 陣列是由一個W上兼具計算和存儲功能的細(xì)胞組成的二維陣列,其中每一個細(xì)胞包括微處 理器(MPU,Micro Processing Unit)和非易失(NV,Not Volatile)隨機存儲器;所述非 易失隨機存儲器用于所述微處理器計算時所設(shè)及數(shù)據(jù)的隨機存取,還用于存儲軟件的指令 代碼和需要永久保存的數(shù)據(jù);所述圖像傳感器是由一個W上圖像采集單元組成的二維陣 列,所述細(xì)胞陣列與所述圖像傳感器疊合形成=維結(jié)構(gòu),所述圖像傳感器中的圖像采集單 元與所述細(xì)胞陣列中的細(xì)胞一一對應(yīng)地相連;所述圖像采集單元用于采集圖像數(shù)據(jù)W供 所述細(xì)胞陣列中的細(xì)胞進行處理;所述細(xì)胞陣列計算系統(tǒng)還包括存儲單元陣列和內(nèi)存單 元陣列中的至少一種;所述存儲單元陣列是由一個W上存儲單元組成的二維陣列,所述細(xì) 胞陣列與一個或一個W上存儲單元陣列疊合形成=維結(jié)構(gòu),每個存儲單元陣列中的存儲單 元與所述細(xì)胞陣列中的細(xì)胞一一對應(yīng)地相連;所述存儲單元用于存儲軟件的指令代碼和 需要永久保存的數(shù)據(jù);所述內(nèi)存單元陣列是由一個W上內(nèi)存單元組成的二維陣列,所述細(xì) 胞陣列與一個或一個W上內(nèi)存單元陣列疊合形成=維結(jié)構(gòu),每個內(nèi)存單元陣列中的內(nèi)存單 元與所述細(xì)胞陣列中的細(xì)胞一一對應(yīng)地相連,所述內(nèi)存單元用于所述微處理器計算時所設(shè) 及數(shù)據(jù)的隨機存??;每一個細(xì)胞儲存各自在所述細(xì)胞陣列中的位置作為身份識別號(ID, identification) W供細(xì)胞中的軟件或硬件讀取;所述主控CPU通過所述細(xì)胞陣列總線與 所述細(xì)胞陣列中的每一個細(xì)胞進行通信;所述細(xì)胞陣列中的相鄰細(xì)胞之間有通信接口,能 相互發(fā)送數(shù)據(jù)。
[0012] 可選的,所述細(xì)胞陣列中的細(xì)胞還包括圖像處理器,用于對與本細(xì)胞相連的圖像 采集單元所采集的圖像數(shù)據(jù)進行處理。
[0013] 可選的,所述細(xì)胞陣列計算系統(tǒng)含有一個或一個W上內(nèi)存單元陣列,所述細(xì)胞陣 列中的細(xì)胞還包括總線控制器和細(xì)胞內(nèi)部總線,所述總線控制器與所述細(xì)胞陣列總線、微 處理器W及細(xì)胞內(nèi)部總線相連,所述細(xì)胞內(nèi)部總線連接所述微處理器、非易失隨機存儲器 W及與本細(xì)胞相對應(yīng)的內(nèi)存單元,所述總線控制器用于識別所述主控CPU與本細(xì)胞之間進 行的通信,連接所述微處理器W傳遞所述主控CPU發(fā)送的指令或數(shù)據(jù)、狀態(tài)讀取,或者通過 所述細(xì)胞內(nèi)部總線連接所述非易失隨機存儲器或與本細(xì)胞相對應(yīng)的內(nèi)存單元進行數(shù)據(jù)的 讀寫操作。
[0014] 可選的,所述細(xì)胞陣列中的任意兩個細(xì)胞之間能進行通信,參與細(xì)胞間通信的細(xì) 胞包含起點細(xì)胞、終點細(xì)胞和中轉(zhuǎn)細(xì)胞,所述起點細(xì)胞為向所述終點細(xì)胞發(fā)出數(shù)據(jù)的細(xì)胞, 所述終點細(xì)胞為最終接收所述起點細(xì)胞所發(fā)數(shù)據(jù)的細(xì)胞,所述中轉(zhuǎn)細(xì)胞為沿細(xì)胞間通信路 徑依次相鄰且通過所述通信接口中轉(zhuǎn)所述起點細(xì)胞所發(fā)數(shù)據(jù)的細(xì)胞,所述細(xì)胞間通信路徑 是由所述起點細(xì)胞、中轉(zhuǎn)細(xì)胞和終點細(xì)胞所構(gòu)成的數(shù)據(jù)收發(fā)路徑。
[0015] 可選的,所述細(xì)胞陣列中的任一細(xì)胞還能作為所述起點細(xì)胞向目標(biāo)區(qū)域內(nèi)的所有 細(xì)胞進行群發(fā)通信,參與所述群發(fā)通信且位于目標(biāo)區(qū)域內(nèi)的細(xì)胞作為所述起點細(xì)胞、或作 為所述終點細(xì)胞、或同時作為所述中轉(zhuǎn)細(xì)胞和終點細(xì)胞,參與所述群發(fā)通信且位于目標(biāo)區(qū) 域外的細(xì)胞作為所述起點細(xì)胞或中轉(zhuǎn)細(xì)胞。
[0016] 可選的,所述細(xì)胞陣列中的細(xì)胞還包括與所述微處理器相連的網(wǎng)絡(luò)控制器,所述 網(wǎng)絡(luò)控制器用于在進行細(xì)胞間通信時,對發(fā)出的數(shù)據(jù)、中轉(zhuǎn)的數(shù)據(jù)或者最終接收的數(shù)據(jù)進 行收發(fā)控制,還用于向所述微處理器發(fā)送中斷信號。
[0017] 可選的,所述細(xì)胞陣列中的細(xì)胞還包括與所述網(wǎng)絡(luò)控制器相連的一組或一組W上 先入先出隊列(FIFO, First Input First Ou化Ut),各組先入先出隊列分別對應(yīng)一個與本 細(xì)胞相鄰的細(xì)胞,每一組先入先出隊列包括輸入先入先出隊列和輸出先入先出隊列,所述 輸入先入先出隊列用于存儲輸入本細(xì)胞進行中轉(zhuǎn)的數(shù)據(jù)或最終接收的數(shù)據(jù),所述輸出先入 先出隊列用于存儲從本細(xì)胞輸出的需進行中轉(zhuǎn)的數(shù)據(jù)或本細(xì)胞向其他細(xì)胞發(fā)出的數(shù)據(jù)。 陽01引可選的,所述細(xì)胞陣列中還設(shè)有至少一個專職輸出細(xì)胞,所述專職輸出細(xì)胞作為 所述終點細(xì)胞接收并存儲其他細(xì)胞給所述主控CPU的輸出數(shù)據(jù),并W中斷信號通知所述主 控CPU讀取所述輸出數(shù)據(jù)。
[0019] 可選的,所述圖像采集單元與所述細(xì)胞陣列中相對應(yīng)的細(xì)胞之間通過過娃通孔 (TSV,T虹OU曲Silicon Vias)建立通信聯(lián)系。
[0020] 可選的,所述主控CPU與所述細(xì)胞陣列和所述細(xì)胞陣列總線集成于一個忍片中。
[0021] 可選的,所述主控CPU作為獨立的忍片,通過標(biāo)準(zhǔn)的內(nèi)存接口與由所述細(xì)胞陣列 和所述細(xì)胞陣列總線組成的忍片進行通信。 陽02引可選的,所述非易失隨機存儲器為磁性隨機存儲器(MRAM,Magnetic Random Access Memoir),所述圖像傳感器為互補金屬氧化物半導(dǎo)體(CMOS, Complementary Metal Oxide Semicon化ctor)圖像傳感器,所述存儲單元陣列為閃存娃片,所述內(nèi)存單元陣列為 MRAM、DRAM或SRAM娃片,所述細(xì)胞陣列在一個娃片上。
[0023] 為解決上述問題,本發(fā)明技術(shù)方案還提供一種圖像識別系統(tǒng),包括識別單元W及 上述攝像系統(tǒng);所述識別單元用于對所述攝像系統(tǒng)處理后得到的圖像進行識別。
[0024] 與現(xiàn)有技術(shù)相比,本發(fā)明的技術(shù)方案至少具有W下優(yōu)點:
[00巧]通過將一個W上兼具獨立計算和存儲功能的單元(稱為"細(xì)胞")組成二維陣列 (稱為"細(xì)胞陣列"),其中每一個細(xì)胞包括微處理器和非易失隨機存儲器,所述非易失隨機 存儲器既能支持所述微處理器進行計算時所設(shè)及數(shù)據(jù)的隨機存取,也能支持存儲軟件的指 令代碼和需要永久保存的數(shù)據(jù),使內(nèi)存、存儲、計算=個功能集成到每個細(xì)胞中,并使各細(xì) 胞之間形成密集的通訊網(wǎng)絡(luò),一方面,主控CPU能通過細(xì)胞陣列總線與細(xì)胞陣列中的每一 個細(xì)胞進行通信,另一方面,細(xì)胞陣列中的相鄰細(xì)胞之間也能相互發(fā)送數(shù)據(jù),由此能通過數(shù) 據(jù)群發(fā)和內(nèi)部網(wǎng)絡(luò),克服現(xiàn)有計算機架構(gòu)因 CPU與內(nèi)存、存儲之間存在的通信瓶頸,從而提 升計算系統(tǒng)的整體性能,并能使費效比較佳;在將上述具有細(xì)胞陣列的計算系統(tǒng)應(yīng)用于攝 像系統(tǒng)的情況下,每一帖圖像可W通過大量的通道讀出并同時被處理,能夠使攝像系統(tǒng)的 圖像處理能力得W大幅提升,從而滿足對于高速攝像的更高要求;此外,再通過將至少一個 由一個W上存儲單元組成的存儲單元陣列,W及至少一個由一個W上內(nèi)存單元組成的內(nèi)存 單元陣列,分別與所述細(xì)胞陣列疊合形成=維結(jié)構(gòu),并使每個存儲單元陣列中的存儲單元、 每個內(nèi)存單元陣列中的內(nèi)存單元與細(xì)胞陣列中的細(xì)胞一一對應(yīng)地相連,如此便能W較低的 成本擴展細(xì)胞陣列中每個細(xì)胞的存儲空間和內(nèi)存空間,既提高系統(tǒng)的總存儲帶寬,能提高 各個細(xì)胞的數(shù)據(jù)存儲能力,又能提高細(xì)胞中微處理器的處理效率,從而進一步提高所述攝 像系統(tǒng)的圖像處理能力。
[00%] 進一步地,通過將包含細(xì)胞陣列計算系統(tǒng)的攝像系統(tǒng)應(yīng)用于圖像識別系統(tǒng)中,由 于每一帖圖像的處理速度得到大幅提升,因此能夠在更短的時間內(nèi)實現(xiàn)對于每一帖圖像的 識別,使該圖像識別系統(tǒng)具有更快的圖像識別能力,從而滿足對于高速圖像識別的要求。
[0027] 通過細(xì)胞陣列中相鄰細(xì)胞之間的通信接口,實現(xiàn)相鄰細(xì)胞之間對于數(shù)據(jù)的多次中 轉(zhuǎn),使細(xì)胞陣列中的任意兩個細(xì)胞之間不依靠主控CPU便能進行通信,提高了細(xì)胞間通信 的效率,也降低了主控CPU的處理負(fù)擔(dān),從而能進一步提升計算系統(tǒng)的整體性能。
[0028] 通過將細(xì)胞間的點對點通信功能擴展到區(qū)域群發(fā),可W支持更高的平行度,獲得 高得多的總帶寬,從而進一步提升計算系統(tǒng)的整體性能。
[0029] 通過在細(xì)胞陣列中設(shè)置專職輸出細(xì)胞,W所述專職輸出細(xì)胞作為所述終點細(xì)胞接 收并存儲其他細(xì)胞給主控CPU的輸出數(shù)據(jù),并W中斷信號的方式通知所述主控CPU讀取所 述輸出數(shù)據(jù),如此能夠在只有少數(shù)幾個細(xì)胞需要向主控CPU輸出數(shù)據(jù)時提高主控CPU讀取 輸出數(shù)據(jù)的效率。
[0030] 本發(fā)明技術(shù)方案提供的細(xì)胞陣列計算系統(tǒng)解決了 CPU和內(nèi)存之間的通信瓶頸問 題。運樣,在相同的娃片面積下,大量微型MPU的處理能力,在很多問題上遠(yuǎn)超少數(shù)幾個頂 級CPU的處理能力,而耗電則低得多。
[0031] 本發(fā)明技術(shù)方案提供的細(xì)胞陣列計算系統(tǒng)使得計算機的架構(gòu)更接近人腦,為未來 的人工智能算法提供了強有力的引擎。
【附圖說明】
[0032] 圖1是現(xiàn)有技術(shù)中計算機架構(gòu)的示意圖;
[0033] 圖2是本發(fā)明實施例提供的細(xì)胞陣列計算系統(tǒng)的一種結(jié)構(gòu)示意圖;
[0034] 圖3是本發(fā)明實施例的一種相鄰細(xì)胞之間通信方式的示意圖;
[0035] 圖4是本發(fā)明實施例的另一種相鄰細(xì)胞之間通信方式的示意圖;
[0036] 圖5是本發(fā)明實施例的細(xì)胞的結(jié)構(gòu)示意圖;
[0037] 圖6是應(yīng)用細(xì)胞陣列計算系統(tǒng)W流水線的方式計算Monte Carlo積分的示意圖; 陽03引圖7是本發(fā)明實施例的細(xì)胞陣列中進行細(xì)胞間通信的細(xì)胞的結(jié)構(gòu)示意圖;
[0039] 圖8是本發(fā)明實施例的細(xì)胞陣列中細(xì)胞間通信的路徑選擇的示意圖;
[0040] 圖9是本發(fā)明實施例的專職輸出細(xì)胞的實施過程示意圖;
[0041] 圖10是本發(fā)明實施例的細(xì)胞陣列中起點細(xì)胞在目標(biāo)區(qū)域角上的細(xì)胞群發(fā)示意 圖;
[0042] 圖11是本發(fā)明實施例的細(xì)胞陣列中起點細(xì)胞在目標(biāo)區(qū)域邊上的細(xì)胞群發(fā)示意 圖;
[0043] 圖12是本發(fā)明實施例的細(xì)胞陣列中起點細(xì)胞在目標(biāo)區(qū)域內(nèi)部的細(xì)胞群發(fā)示意 圖; W44] 圖13是本發(fā)明實施例的細(xì)胞陣列中起點細(xì)胞在目標(biāo)區(qū)域外的細(xì)胞群發(fā)示意圖;
[0045] 圖14是本發(fā)明實施例提供的細(xì)胞陣列計算系統(tǒng)的