專利名稱:可運(yùn)行多任務(wù)的編程器及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種軟硬件多芯片同時(shí)操作的控制算法,尤特指使用FPGA來并行處 理的方式,在同一時(shí)間內(nèi)可對(duì)多數(shù)芯片進(jìn)行數(shù)據(jù)處理,而達(dá)到提高編程器信號(hào)處理的效率。
背景技術(shù):
編程器是一種電子類行業(yè)中用于加工的儀器設(shè)備,是伴隨著電子類行業(yè)發(fā)展的儀 器,其主要的功能就是把產(chǎn)品的數(shù)據(jù)信息,寫到芯片內(nèi)部保存起來。隨著電子類行業(yè)不斷的 更新發(fā)展,芯片的功能,容量和工藝也不斷的提高,以前的編程器設(shè)計(jì)都或多或少存在著不 足的地方,主要有以下幾個(gè)方面1)現(xiàn)有市面上的編程器都是單機(jī)只支持加工單顆芯片,其缺點(diǎn)是面對(duì)于工廠大 批量加工生產(chǎn)時(shí),單位時(shí)間的產(chǎn)能遠(yuǎn)遠(yuǎn)不能滿足生產(chǎn)需求,用戶必須通過增加儀器設(shè)備來 滿足產(chǎn)能的需求;2)市面上編程器都是以48腳信號(hào)驅(qū)動(dòng)為主,對(duì)于管腳數(shù)超過48腳的芯片,芯片適 配器的兼容性就很差,雖然通過共享多個(gè)管腳可以彌補(bǔ)編程器的不足,但信號(hào)之間的干擾 卻使編程器的穩(wěn)定性下降了 ;3)市面多數(shù)類型的編程器都是需要連接計(jì)算機(jī)才能使用,這樣會(huì)使客戶增加了計(jì) 算機(jī)方面的使用成本,同時(shí)工廠在生產(chǎn)控制和管理方面也增加了計(jì)算機(jī)方面的負(fù)擔(dān);4)傳統(tǒng)的編程器是RS232串口和打印機(jī)并口,使用必須先斷電連接后再開機(jī),或 者使用USB1. 1接口,編程大容量芯片時(shí),數(shù)據(jù)傳輸速度不快。究其原因,是因?yàn)閭鹘y(tǒng)的產(chǎn)品是以通用MCU+CPLD為設(shè)計(jì)核心,CPLD為復(fù)雜的可編 程邏輯器件(Complex Programmable Logic Device,簡(jiǎn)稱 CPLD)。CPLD是用來實(shí)現(xiàn)各種運(yùn)算和組合邏輯(combinational logic),一顆CPLD內(nèi)等于 包含了數(shù)顆的邏輯區(qū)塊(Programmable Array Logic,簡(jiǎn)稱PAL),各PAL間的互接連線也可 以進(jìn)行程序性的規(guī)劃、燒錄,CPLD運(yùn)用這種多合一(All-In-One)的整合作法,使其一顆就 能實(shí)現(xiàn)數(shù)千個(gè)邏輯門,甚至數(shù)十萬個(gè)邏輯門才能構(gòu)成的電路,是一種可編程邏輯芯片,其缺 點(diǎn)是編程器管腳的功能屬性是不能改變的,無法針對(duì)于不同型號(hào)的芯片而隨意改變編程器 管腳的功能屬性,致其兼容性大大降低,且傳統(tǒng)的編程器,驅(qū)動(dòng)管腳都只有48腳,有些甚至 只有40腳驅(qū)動(dòng)的,而且還不是每個(gè)腳都是萬能驅(qū)動(dòng)的,其兼容性和擴(kuò)展性都不足以滿足現(xiàn) 在的市場(chǎng)需要。另外也有業(yè)者采用微處理器MCU以現(xiàn)場(chǎng)可程序化的門陣列(Filed Programmable Gate Array)簡(jiǎn)稱FPGA配合工作,如第一圖及第二圖所示,其僅也能接收MCU芯片的數(shù)據(jù) 指令12,發(fā)給待加工芯片13,同樣的FPGA芯片11也只能單一回傳待加工芯片13的數(shù)據(jù)給 MCU芯片12,并無有效的改進(jìn)作為。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種在同一時(shí)間內(nèi)可對(duì)多數(shù)芯片進(jìn)行數(shù)據(jù)處理,而可提高編程器信號(hào)處理的效率的控制算法。本發(fā)明的技術(shù)內(nèi)容為本發(fā)明編程器1是內(nèi)嵌有USB 2.0數(shù)據(jù)通訊口,可以借計(jì)算 機(jī)人機(jī)接口 3直接與計(jì)算機(jī)鍵盤、顯示器連結(jié)使用,方便操作;另設(shè)有CF資料存儲(chǔ)卡,就可 以借LCD顯示屏和控制按鍵,脫離計(jì)算機(jī)獨(dú)立使用。其中,編程器是以高速微處理器(MCU) 與高性能現(xiàn)場(chǎng)可程序化的門陣列(Filed Programmable Gate Array, FPGA)為系統(tǒng)設(shè)計(jì)架 構(gòu),所以其操作性和方便性遠(yuǎn)遠(yuǎn)高于傳統(tǒng)的編程器的效果。本發(fā)明的再進(jìn)一步技術(shù)內(nèi)容為本發(fā)明編程器是64腳萬能驅(qū)動(dòng)管腳,每個(gè)管腳都 能支持 Vcc, Vpp、Vio、Vss、Digital、Clock 及 Z-Float 等 7 種電氣信號(hào)。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是本發(fā)明FPGA芯片還具有一個(gè)特殊的并行 數(shù)據(jù)處理能力,可以在同一時(shí)間內(nèi),同時(shí)對(duì)多個(gè)芯片的信號(hào)做出處理。本發(fā)明采用FPGA的 作為驅(qū)動(dòng)信號(hào)處理核心,并且利用FPGA的并行數(shù)據(jù)處理特性,實(shí)現(xiàn)單機(jī)同時(shí)對(duì)多顆芯片進(jìn) 行數(shù)據(jù)處理,能同時(shí)加工處理多顆芯片,因此單位時(shí)間的產(chǎn)能得到很好的提高。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是本發(fā)明編程器都支持聯(lián)計(jì)算機(jī)工作模式 和脫離計(jì)算機(jī)的工作模式,機(jī)子只要插上CF數(shù)據(jù)存儲(chǔ)卡,通過機(jī)子上的按鍵和LCD屏的操 作控制,就可以脫離計(jì)算機(jī)獨(dú)立工作,尤其當(dāng)工廠需要很多臺(tái)編程器同時(shí)進(jìn)行大批量生產(chǎn) 時(shí),可以大量省卻計(jì)算機(jī)方面的成本及管理的問題。本發(fā)明編程器是USB 2.0接口,數(shù)據(jù)傳輸速率非常高,而且支持熱拔插。下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述。
圖1為傳統(tǒng)業(yè)者M(jìn)CU及FPGA的單向溝通流程圖之一。圖2為傳統(tǒng)業(yè)者M(jìn)CU及FPGA的單向溝通流程圖之二。圖3為本發(fā)明的結(jié)構(gòu)方塊示意圖。圖4為本發(fā)明以FPGA對(duì)應(yīng)數(shù)個(gè)待加工芯片的工作流程示意圖之一。圖5為本發(fā)明以FPGA對(duì)應(yīng)數(shù)個(gè)待加工芯片的工作流程示意圖之二。圖6為本發(fā)明具有64管腳及芯片夾片示意圖。主要組件符號(hào)說明1……編程器2……IXD顯示屏 3……計(jì)算機(jī)人機(jī)界面4……顯示器5……計(jì)算機(jī)鍵盤 6……控制按鍵7……CF數(shù)據(jù)存儲(chǔ)卡 8……USB 2. 0數(shù)據(jù)通訊口11......FPGA芯片12......MCU芯片 13......待加工芯片21......高性能FPGA芯片 22、23、24、25......待加工芯片30......管腳
具體實(shí)施例方式為了更充分理解本發(fā)明的技術(shù)內(nèi)容,下面結(jié)合具體實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn) 一步介紹和說明。本發(fā)明編程器1,如圖3所示,內(nèi)嵌有USB 2. 0數(shù)據(jù)通訊口 8,可以借計(jì)算機(jī)人機(jī)接 口 3直接與計(jì)算機(jī)鍵盤5、顯示器4連結(jié)使用,方便操作;因編程器1本身帶有IXD顯示屏2和控制按鍵6,配上CF數(shù)據(jù)存儲(chǔ)卡7,就可以脫離計(jì)算機(jī)獨(dú)立使用,其操作性和方便性遠(yuǎn)遠(yuǎn) 高于傳統(tǒng)的編程器,而編程器1系是以高速M(fèi)CU芯片12與高性能FPGA芯片21系統(tǒng)設(shè)計(jì)架 構(gòu)。其中編程器為64管腳的設(shè)計(jì),借此可以提高芯片夾座等配件的兼容性,即使管腳 數(shù)在48腳以上的芯片,依然有很好的兼容性。而編程器的64腳萬能驅(qū)動(dòng)管腳30的(如圖 6所示),S-A, S-B, S-C和S-D是同時(shí)加工4顆芯片的夾座,此就是配合FPGA芯片的設(shè)計(jì)實(shí) 施,而且每個(gè)管腳都能支持Vcc、Vpp、Vio、Vss、Digital、Clock及Z-Float等7種電氣信號(hào)。a) Vcc信號(hào)電壓從1. 8V到15V電壓,支持256級(jí)連續(xù)驅(qū)動(dòng),總驅(qū)動(dòng)電流可達(dá) 500mA ;b)Vpp信號(hào)電壓從1. 8V到15V電壓,支持256級(jí)連續(xù)驅(qū)動(dòng),總驅(qū)動(dòng)電流可達(dá) 500mA ;c) Vio信號(hào)電壓從1. 8V到15V電壓,支持256級(jí)連續(xù)驅(qū)動(dòng),總驅(qū)動(dòng)電流可達(dá) 500mA ;d) Vss信號(hào);Gnd驅(qū)動(dòng)信號(hào);e) Digital信號(hào)電壓從1. 8V到3. 6V電壓,支持256級(jí)連續(xù)驅(qū)動(dòng);f) Clock信號(hào)輸出時(shí)鐘頻率從24MHz到93. 75KHz,支持256級(jí)連續(xù)驅(qū)動(dòng),頻率誤 差在0. 以內(nèi);g) Z-Float信號(hào)輸入/輸出高阻態(tài)信號(hào)。MCU的數(shù)據(jù)處理方式為串行處理的,而FPGA芯片21上具有一個(gè)特殊的并行數(shù)據(jù)處 理能力,這并行數(shù)據(jù)處理能力可以在同一時(shí)間內(nèi),同時(shí)對(duì)多個(gè)芯片的信號(hào)做出處理。具體實(shí) 現(xiàn)方式為1)在發(fā)送的時(shí)候MCU芯片12先將一份數(shù)據(jù)發(fā)送給FPGA芯片21,F(xiàn)PGA芯片21在 同一時(shí)間內(nèi)將數(shù)據(jù)復(fù)制多份,并在同一時(shí)間內(nèi)并行發(fā)送給多顆芯片22、23、24、25(如圖4);2)在接收的時(shí)候FPGA芯片21利用其并行處理特性,在同一時(shí)間內(nèi)并行接收多顆 芯片22、23、24、25所發(fā)送的數(shù)據(jù)信號(hào)并保存在FPGA芯片21內(nèi)部,然后FPGA芯片21在同 一時(shí)間內(nèi)將多顆芯片的數(shù)據(jù)信號(hào)做出處理,并將處理的結(jié)果上傳給MCU芯片12(如圖5所 示)°借此,F(xiàn)PGA芯片21能夠于同一時(shí)間發(fā)送或者接收多顆芯片的數(shù)據(jù)信號(hào),而可以提 高單位時(shí)間的數(shù)據(jù)處理效率。另本發(fā)明FPGA芯片的特征在于控制方式是使用了一個(gè)高頻的系統(tǒng)同步時(shí)鐘作為 控制信號(hào),而FPGA以這個(gè)時(shí)鐘作為控制觸發(fā)信號(hào),不斷采樣檢測(cè)MCU發(fā)出的各種控制信號(hào), 然后根據(jù)信號(hào)做出相應(yīng)的解析與控制。這樣一來,F(xiàn)PGA的工作原理就跟一個(gè)MCU的工作原 理非常相象了,它不但可以作為信號(hào)的轉(zhuǎn)換控制,還能跟MCU —樣做些簡(jiǎn)單的數(shù)學(xué)計(jì)算。根據(jù)采樣定理的要求,采樣的頻率必須是被采樣信號(hào)頻率的2倍以上。而這個(gè)觸 發(fā)FPGA的同步時(shí)鐘的采樣頻率設(shè)定為是MCU的指令頻率的4倍,因此FPGA可以非常穩(wěn)定、 高效的檢測(cè)MCU的信號(hào)。也就是說MCU的每處理一個(gè)指令處理周期,F(xiàn)PGA內(nèi)部就完成了 4 個(gè)邏輯處理周期了。根據(jù)被加工芯片的管腳特性,我們將FPGA的管腳對(duì)應(yīng)分成N份,以實(shí)現(xiàn)同時(shí)對(duì)N個(gè)芯片進(jìn)行加工處理。下面我們將按分成四份(Pinl,Pin2, Pin3, Pin4)的方式舉個(gè)例子 加以說明。Pinl,Pin2,Pin3和Pin4是FPGA內(nèi)部相互獨(dú)立的四組控制管腳,它對(duì)應(yīng)控制四顆 獨(dú)立的芯片。我們利用FPGA的并行處理特性,定義這四組管腳全部都以系統(tǒng)的同步時(shí)鐘 CLK作為觸發(fā)控制信號(hào),這樣就可以保證這四組管腳的信號(hào)完全同步了。因?yàn)镸CU的指令 周期是FPGA邏輯處理周期的4倍,所以我們把MCU的每個(gè)指令周期再分割為tl,t2,t3,t4 四個(gè)小時(shí)刻。假設(shè)在tl時(shí)刻,MCU執(zhí)行寫操作(發(fā)送數(shù)據(jù)給待加工芯片),F(xiàn)PGA的四組管腳在 tl時(shí)刻檢測(cè)到MCU的寫控制信號(hào)后開始接收數(shù)據(jù),在t2時(shí)刻即可完成相應(yīng)的邏輯處理,并 同時(shí)將MCU的數(shù)據(jù)復(fù)制四份后發(fā)送給四顆芯片。t3和t4時(shí)刻是讓FPGA保持信號(hào)的輸出狀 態(tài)不變,以增加信號(hào)輸出的穩(wěn)定性。在t4時(shí)刻之后,MCU結(jié)束寫操作,F(xiàn)PGA檢測(cè)到寫操作結(jié) 束,則同時(shí)關(guān)閉這四組管腳的信號(hào),從而結(jié)束發(fā)送控制。同理,假設(shè)在tl時(shí)刻,MCU執(zhí)行讀操作(接收待加工芯片的數(shù)據(jù)),F(xiàn)PGA的四組管 腳在tl時(shí)刻檢測(cè)到MCU的讀控制信號(hào)后,立即同時(shí)打開這四組管腳的信號(hào),并在t2,t3時(shí) 刻接收數(shù)據(jù)。t2和t3時(shí)刻是信號(hào)穩(wěn)定的時(shí)刻,此時(shí)信號(hào)不是最穩(wěn)定的狀態(tài),因此FPGA在 t4時(shí)刻才同時(shí)完成這四顆芯片數(shù)據(jù)的最后接收和相應(yīng)的邏輯處理,并將處理后的數(shù)據(jù)發(fā)送 給MCU。在t4時(shí)刻之后,MCU讀取FPGA回饋回來的數(shù)據(jù),并結(jié)束了讀操作。FPGA檢測(cè)到讀 操作結(jié)束,則同時(shí)關(guān)閉這四組管腳的信號(hào),從而結(jié)束接收控制。根據(jù)被加工芯片的管腳特性,將FPGA的管腳分組,利用FPGA的并行處理特性,配 以同步時(shí)鐘作為每組的同步觸發(fā)信號(hào),以達(dá)到每組信號(hào)的同步控制效果,從而完成對(duì)多個(gè) 芯片同時(shí)加工的目的,提高系統(tǒng)的單位時(shí)間加工產(chǎn)能。綜上所述,本發(fā)明可在同一時(shí)間內(nèi)對(duì)多數(shù)芯片進(jìn)行數(shù)據(jù)處理,從而可提高編程器 信號(hào)處理的效率,是已符合實(shí)用功能和經(jīng)濟(jì)效益,因此特依法提出發(fā)明專利申請(qǐng)。
權(quán)利要求
一種可運(yùn)行多任務(wù)的編程器及其方法,基本包含有微處理器(MCU)、現(xiàn)場(chǎng)可編程門陣列(FPGA)芯片及CF數(shù)據(jù)存儲(chǔ)卡、LCD顯示屏及USB2.0數(shù)據(jù)通訊口,其特征在于所述的FPGA芯片具有響應(yīng)高頻同步時(shí)鐘及并行處理的功能,可將各組管腳以同步時(shí)鐘作為觸發(fā)控制信號(hào);所述的編程器具有64管腳,可對(duì)應(yīng)分成數(shù)組,提供FPGA芯片進(jìn)行邏輯處理,并且同時(shí)與數(shù)個(gè)待加工芯片、MCU間的接收與發(fā)送的工作。
2.根據(jù)權(quán)利要求1所述的可運(yùn)行多任務(wù)的編程器及其方法,其特征為FPGA芯片可將 MCU的指令設(shè)定為數(shù)個(gè)小時(shí)間段,使其可相續(xù)依MCU發(fā)出的寫控信號(hào),進(jìn)行邏輯處理及與數(shù) 個(gè)待加工芯片、MCU間的接收與發(fā)送的工作。
全文摘要
本發(fā)明涉及一種可運(yùn)行多任務(wù)的編程器及其方法,基本包含有微處理器(MCU)、現(xiàn)場(chǎng)可編程門陣列(FPGA)芯片及CF數(shù)據(jù)存儲(chǔ)卡、LCD顯示屏及USB2.0數(shù)據(jù)通訊口,其中,該編程器具有64管腳,可對(duì)應(yīng)分成數(shù)組,而FPGA芯片具有響應(yīng)高頻同步時(shí)鐘及并行處理的功能,可將各組管腳以同步觸發(fā)控制信號(hào),并將MCU的指令設(shè)定為數(shù)個(gè)小時(shí)間段,使其可相續(xù)依MCU發(fā)出的信號(hào),進(jìn)行邏輯處理及與數(shù)個(gè)待加工芯片、MCU間的接收與發(fā)送的工作,借此除可確保信號(hào)輸出的穩(wěn)定性外,也可達(dá)到同步對(duì)多個(gè)芯片進(jìn)行加工的目的,提高系統(tǒng)的單位時(shí)間產(chǎn)能。
文檔編號(hào)G06F15/00GK101937418SQ200910108440
公開日2011年1月5日 申請(qǐng)日期2009年7月2日 優(yōu)先權(quán)日2009年7月2日
發(fā)明者黃萬喜 申請(qǐng)人:黃萬喜