專利名稱:刻錄系統(tǒng)及其方法
技術領域:
本發(fā)明涉及一種刻錄系統(tǒng)及其方法,尤其涉及一種對多個芯片并行刻錄的一對多式刻錄系統(tǒng)及其方法。
背景技術:
業(yè)界通用的電子式可抹寫程序化只讀存儲器(EEPROM)刻錄設備通常是一對一的進行刻錄,刻錄設備只能連接一個目標芯片,每次刻錄完一個芯片后,由操作人員更換目標芯片,重新開始一次新的刻錄過程。IIC(Inter IC,簡稱IIC)接口協(xié)議規(guī)定了芯片之間數據通訊的方法,在具體實踐中,對于EEPROM芯片(93和24系列),在每次寫入數據后要等待一定時間,如此芯片才能真正將數據寫入。如圖1所示,時間T1是向芯片傳輸數據所耗費的時間,傳輸數據包括起始位、地址、數據和停止位,這些數據傳送到芯片后,并沒有真正寫入,而是暫時放在緩沖區(qū)中,當芯片收到停止位后開始將這些數據寫入,時間T2是等待這段數據寫入的時間。因此,假設一片芯片刻錄時間為Tic,更換新的芯片所需的時間為Tc,對于只能連結一片目標芯片的刻錄設備,刻錄一片芯片所需的時間為T=Tic+Tc=(T1+T2)+Tc目前發(fā)展較快的是一對多式的刻錄設備,如圖2所示,刻錄裝置3利用內部芯片接口6實現對多個目標芯片5的刻錄,這種刻錄設備在一條總線上連接了多個目標芯片,每一個芯片獨占一個(或者多個)地址,這樣可以實現每次刻錄多片芯片,但是對這些芯片的刻錄作業(yè)是按順序進行的,這是因為當一條IIC總線上有多個設備地址時,IIC主設備在同一時刻只能對某一個地址進行作業(yè),所以當刻錄設備對一個地址作業(yè)時,在這個地址作業(yè)未結束之前,其它地址空間只能處于等待狀態(tài)。就是說這種刻錄本質上也是分時進行的。對于這種可實現一臺設備對多塊芯片進行刻錄的刻錄設備,每塊芯片的刻錄時間為T=(Tic×m+Tc)/m=Tic+Tc/m=(T1+T2)+Tc/m
其中m為刻錄設備連接的目標芯片的數量。
通過上述兩個等式可以看到,一對多式的刻錄設備相對于一對一式的刻錄設備而言,只節(jié)省了更換芯片的時間,對于從實際意義上提高刻錄效率并未作出大的貢獻。
因此,為了節(jié)省刻錄時間,需要一種更有效率的刻錄系統(tǒng)。
發(fā)明內容
為了解決上述現有技術中的問題與缺陷,本發(fā)明的目的在于,提供一種刻錄系統(tǒng)及其方法,用于節(jié)省刻錄時間。
本發(fā)明所提供的一種刻錄系統(tǒng),包含主機,儲存有待刻錄數據;數個待刻錄的芯片;刻錄裝置,用于進行刻錄和計算向每一待刻錄芯片每次傳輸待刻錄數據所用的時間;多路開關,由刻錄裝置控制其開合,并與數個待刻錄的芯片分別電性連接;其中每次刻錄裝置控制多路開關選通一待刻錄芯片傳輸待刻錄數據并當待刻錄芯片處于等待數據寫入的狀態(tài)時,由控制多路開關選通另一待刻錄芯片進行待刻錄數據的傳輸。
本發(fā)明所提供的一種刻錄方法,包含以下步驟獲得每次傳輸待刻錄數據所用的時間;通過一多路開關選通一未進行本次循環(huán)待刻錄數據傳輸的芯片;向其傳輸待刻錄數據;在向此芯片傳輸待刻錄數據所用的時間結束時判斷是否還有仍未進行本次循環(huán)待刻錄數據傳輸的芯片,如果是則對其傳輸待刻錄數據,如果否則判斷是否有芯片刻錄完成,當所有芯片對所有循環(huán)的數據全部刻錄完成后,對刻錄完成的芯片進行校驗。
綜上所述,本發(fā)明的優(yōu)點在于利用多路開關對不同芯片的選通,真正實現了多芯片并行刻錄,節(jié)省了刻錄時間,提高了刻錄效率。
以下結合附圖和具體實施例對本發(fā)明進行詳細描述,但不作為對本發(fā)明的限定。
圖1為現有技術刻錄一片芯片所需刻錄時間的示意圖;圖2為現有技術的刻錄系統(tǒng)的結構圖;圖3為本發(fā)明刻錄系統(tǒng)的結構圖;
圖4為本發(fā)明的刻錄系統(tǒng)并行刻錄多片芯片所需刻錄時間的示意圖;圖5為本發(fā)明的刻錄方法的方法流程圖。
其中,附圖標記1、10主機3、30刻錄裝置5、50目標芯片6、31內部芯片接口11 控制模塊33 微處理器45 總線70 多路開關T1 數據傳輸時間T2 等待數據寫入時間步驟100安裝m片芯片步驟101初始化刻錄系統(tǒng)步驟103檢測待刻錄的芯片的類型步驟105計算數據傳輸需要的時間T1和等待數據寫入需要的時間T2步驟107選通一片未進行本次循環(huán)待刻錄數據傳輸的芯片刻錄步驟109判斷是否還有仍未進行本次循環(huán)待刻錄數據傳輸的芯片步驟111判斷是否mT1<T2步驟113等待一芯片刻錄完成步驟115判斷是否還有數據需要刻錄步驟117校驗具體實施方式
以下,將結合附圖對本發(fā)明的較佳實施方式作詳細說明。
請參考圖3,圖中表示了本發(fā)明的刻錄系統(tǒng),其包含依次連接的主機10、刻錄裝置30、多路開關70和數個目標芯片50。
其中,主機10通過通訊接口(可以是串行端口、并列端口、網絡等)發(fā)送命令和刻錄數據給刻錄裝置30,用于命令刻錄裝置30進行以下動作獲取目標芯片50的信息(有幾片目標芯片以及是否成功刻錄)并返回相應的信息給主機10、提供待刻錄的數據、對目標芯片50進行刻錄、每次傳輸刻錄數據后查詢是否還有仍未進行本次循環(huán)待刻錄數據傳輸的目標芯片50以及進行刻錄后的校驗等,這些命令都由主機10內部的控制模塊11發(fā)出,控制模塊11還可將上述信息都顯示給使用者供其確認。
刻錄裝置30的微處理器(ARM)33用于解析主機10發(fā)送的命令和數據,其儲存有目標芯片50的型號等信息以便依照獲得的目標芯片50的信息以比對芯片是否匹配,微處理器33還用于通過總線45控制多路開關70以選通某一個目標芯片50,以及通過內部芯片接口31傳輸相應的數據和命令到目標芯片50中,此外還在每次數據傳輸后查詢是否存在仍未進行本次循環(huán)待刻錄數據傳輸的目標芯片50,而且在刻錄完成后對各個芯片進行校驗,并將校驗結果回饋給主機10。下文將對刻錄裝置30進行更詳細的描述。
為了實現多芯片的并行刻錄,在本發(fā)明的刻錄系統(tǒng)中多路開關70是相當重要的。多路開關70是分時工作的組件,在某一時刻只能有一個通路連通,而其它通路則是截止的,這樣,對于刻錄裝置30而言,某一時刻只有一個目標芯片50與之連接。因此,所有的目標芯片50都可以采用相同的地址,刻錄裝置30則通過多路開關70選通不同的目標芯片50。數個目標芯片50安裝在專用的卡具上。
控制多路開關的刻錄裝置30也在本發(fā)明中起到了至關重要的作用,刻錄裝置30由總線45控制多路開關70以及時導通下一片芯片,因此需要明確每次數據傳輸的時間。以刻錄EEPROM芯片為例,其通常支持400kbps速率,以按照每次傳輸8bytes計算,忽略地址信息和控制信息,則數據傳輸的時間T1=8×8/400k=0.16ms;而通常情況下,等待數據寫入的時間T2=10ms。由此可見,等待數據寫入的時間遠遠大于數據傳輸的時間。因此,如圖4所示,刻錄裝置30在向一個目標芯片50傳輸完數據(傳輸時間為T1)后的等待時間T2內可選通另一個目標芯片50,進行數據傳輸,并以此類推。因此,需要依照提前計算出每次傳輸數據的時間T1,并在第一片芯片的數據傳輸時間T1結束后立即查詢是否有仍未進行本次循環(huán)待刻錄數據傳輸的芯片,并通知多路開關70導通下一片未處于刻錄狀態(tài)的芯片以進行數據傳輸,微處理器33即起到了這個作用。
微處理器33依照主機10的命令獲得每片目標芯片50的相關信息,計算出每次傳輸數據的時間T1和等待數據寫入的時間T2,這樣可以在每片目標芯片50進行完數據傳輸的時間點到達后,立即通過內部芯片接口31查詢哪些芯片仍未進行本次循環(huán)待刻錄數據傳輸,并順序選取一片未處于刻錄狀態(tài)的芯片進行相同數據的傳輸,如圖4所示,對目標芯片傳輸數據是在對所有目標芯片50進行完相同數據的一個循環(huán)的傳輸后再重新從第一片目標芯片開始進行下一個循環(huán)的數據傳輸,因此需要計算向所有芯片傳輸數據的時間mT1是否與第一片目標芯片等待數據寫入的時間T2相當,如果小于,說明第一片目標芯片尚未完全寫入,則需等待這一循環(huán)的刻錄結束,如果大于或等于,說明至少第一片目標芯片已經完成數據寫入,那么可以直接進入下一個的循環(huán)的數據傳輸。微處理器33還在確定所有待刻錄的數據都已經被刻錄到所有芯片后,對刻錄完成的芯片進行校驗。
因此,如果并行刻錄m片目標芯片,每片目標芯片刻錄需要N(理論上N≥1)個循環(huán)(每個循環(huán)耗時為T1+T2),忽略地址信息和控制信息,可以得到刻錄每片目標芯片所用的平均時間T為(當T2大于m倍T1時)T=N(T1+T2)+(T2-(T2-(m-1)T1))mN=T1+T2m+mT1-T1mN,]]>通常情況下N的值會比較大,所以可以忽略 而得到T=T1+T2m.]]>因此,如圖4所示,也可獲知多路開關70上最多可掛載的目標芯片數M=T2/T1+1,即多路開關70上掛載T2/T1+1片目標芯片同時刻錄時將最有效的利用內部芯片接口31的頻寬,效率可以近似提升T2/T1+1倍。以刻錄四片目標芯片為例,即當m=4時T=(T1+T2)/4=(0.16+10)/4=2.54ms,與現有技術刻錄4片同樣的芯片每片需要10.16ms秒相比,效率有4倍的提升。
本發(fā)明的刻錄系統(tǒng)解決了現有技術IIC地址空間受限且等待某一個地址空間的芯片刻錄的過程中不能操作其它芯片的問題。最重要的是,通過多路開關對不同芯片的選擇,真正實現了多芯片并行刻錄的目的。多路開關可以采用市場通用的總線開關,也可以采用復雜可編程邏輯器件(ComplexProgrammable Logic Device,CPLD)或現場可編程門矩陣(Field ProgrammableGate Array,FPGA)來實現。本發(fā)明的刻錄系統(tǒng)采用IIC通訊協(xié)議的刻錄系統(tǒng),適用于刻錄EEPROM芯片,每片目標芯片具有相同的地址。
現在請參考圖5,此圖為本發(fā)明一種刻錄方法的方法流程圖,如圖所示,本發(fā)明的刻錄方法包含以下步驟依照實際需要選取m片芯片安裝到芯片卡具上(步驟100);初始化刻錄系統(tǒng)(步驟101),此時刻錄系統(tǒng)中的刻錄裝置處于就緒狀態(tài),可隨時等待主機發(fā)送相應的刻錄命令,并可通過外顯形式通知使用者刻錄裝置狀態(tài)為正常;檢測待刻錄的目標芯片的類型(步驟103),主機選取對應的芯片型號,并與刻錄裝置通訊以檢測目標芯片是否匹配,以及有幾片目標芯片,刻錄裝置獲取目標芯片的信息后返回相應的信息給主機,主機通過外顯的形式顯示給使用者,在檢測芯片類型和數量的過程中,需要刻錄裝置通過總線控制多路開關對所有的通路依次選通,這是個遍歷的過程;計算刻錄過程中數據傳輸需要的時間和等待數據寫入需要的時間(步驟105),收到芯片類型匹配的通知后,刻錄設備根據實際芯片的類型和數量,計算數據傳輸需要的時間,以及等待數據寫入需要的時間;選通一片未進行本次循環(huán)待刻錄數據傳輸的目標芯片進行刻錄(步驟107),主機發(fā)送刻錄命令和刻錄數據給刻錄裝置,刻錄裝置解析這些命令和數據,并執(zhí)行相應的操作,待數據傳輸完畢后,這片芯片進入等待數據寫入的狀態(tài),其中主機可由使用者人為控制也可設為自動;刻錄裝置判斷是否還有仍未進行本次循環(huán)待刻錄數據傳輸的目標芯片(步驟109),主機發(fā)送查詢命令給刻錄裝置,刻錄裝置接收到主機的命令后檢測所有目標芯片以查詢出是否有還未進行本次循環(huán)數據傳輸的目標芯片,如果有執(zhí)行步驟107,如果沒有執(zhí)行步驟111;判斷向所有目標芯片傳輸數據的時間之和是否小于刻錄目標芯片的過程中等待數據寫入的時間(步驟111),具體計算請參照上文公式(即判斷是否mT1<T2),如果是執(zhí)行步驟113,如果否則執(zhí)行步驟115;等待一目標芯片刻錄完成(步驟113);判斷是否還有數據需要刻錄(步驟115),即檢測是否還有剩余數據要進行刻錄,如果有則對一片已經完成上一輪刻錄但還未進行剩余數據傳輸的目標芯片進行下一個循環(huán)的數據傳輸,即執(zhí)行步驟107,如果沒有則代表所有待刻錄的數據都已經刻錄完成,即已進行完N個循環(huán)的數據傳輸,則執(zhí)行步驟117;待所有數據都已經刻錄到所有芯片后,對各個已經刻錄完成的目標芯片分別進行校驗(步驟117);校驗全部完成后,本發(fā)明的刻錄方法的步驟流程結束。
以下,以使用者并行刻錄四片EEPROM-24C32芯片為例說明本發(fā)明的刻錄方法。這四片芯片都支持400kbps速率,并且每次可以傳輸數據8bytes,總容量為32Kbit,其操作步驟如下取3片芯片安裝到芯片卡具上,此時有一個卡具未放置芯片;激活主機和刻錄裝置;激活主機端的控制模塊,控制模塊和刻錄裝置通訊,并初始化刻錄裝置,最后給出刻錄裝置的狀態(tài)為正常;選取對應的芯片型號,主機自動與刻錄裝置通訊,檢測芯片是否匹配,以及有幾片芯片;刻錄裝置返回相應的信息給主機,主機顯示給使用者;使用者確認信息正確后,點擊開始刻錄,主機從控制模塊中讀取數據,并控制刻錄裝置開始芯片刻錄工作;刻錄裝置得到刻錄命令和刻錄數據后,按照之前提到的流程對3片芯片同時刻錄;刻錄完成后自動對各個芯片進行校驗,這之中刻錄裝置會回饋進度信息給主機的控制模塊;控制模塊顯示刻錄進度信息和成功與否信息;刻錄成功完成后,使用者可以將芯片取出,放入其它待刻錄芯片,重復進行刻錄。
當然,本發(fā)明還可有其它多種實施例,在不背離本發(fā)明精神及其實質的情況下,熟悉本領域的技術人員當可根據本發(fā)明作出各種相應的改變和變形,但這些相應的改變和變形都應屬于本發(fā)明所附的權利要求的保護范圍。
權利要求
1.一種刻錄系統(tǒng),用于并行刻錄數個待刻錄的芯片,其特征在于,包含一主機,儲存有待刻錄數據;一刻錄裝置,由該主機控制,用于進行刻錄和計算向每一待刻錄芯片每次傳輸該待刻錄數據所用的傳輸時間;以及一多路開關,由該刻錄裝置控制其開合,并與該數個待刻錄的芯片分別電性連接;其中該刻錄裝置控制該多路開關選通一待刻錄芯片傳輸該待刻錄數據,并當該待刻錄芯片處于等待數據寫入的狀態(tài)時,控制該多路開關選通另一待刻錄芯片進行待刻錄數據的傳輸。
2.根據權利要求1所述的刻錄系統(tǒng),其特征在于,該刻錄裝置還包含一微處理器,用于在每次該傳輸時間結束后查詢是否還有仍未進行本次循環(huán)待刻錄數據傳輸的芯片。
3.根據權利要求2所述的刻錄系統(tǒng),其特征在于,該微處理器還用于對刻錄完成的芯片進行校驗。
4.根據權利要求2所述的刻錄系統(tǒng),其特征在于,該微處理還用于計算每次傳輸該待刻錄數據后等待該待刻錄數據寫入芯片的等待時間。
5.根據權利要求2所述的刻錄系統(tǒng),其特征在于,該微處理器還用于查詢是否還有未刻錄的數據,若有,則對剛剛結束上一循環(huán)數據刻錄的該芯片進行該待刻錄數據的傳輸和刻錄。
6.根據權利要求4所述的刻錄系統(tǒng),其特征在于,所述數個待刻錄的芯片的個數小于或等于該等待時間與該傳輸時間的比值再加一。
7.根據權利要求2所述的刻錄系統(tǒng),其特征在于,該主機還包含一控制模塊,儲存有該待刻錄芯片的數據,以提供給該微處理器,并向該刻錄裝置發(fā)送控制命令。
8.根據權利要求1所述的刻錄系統(tǒng),其特征在于,所述數個待刻錄的芯片均具有相同的地址。
9.一種刻錄方法,用于并行刻錄數個待刻錄的芯片,其特征在于,該方法包含以下步驟步驟(a)、獲得向每一芯片每次傳輸待刻錄數據所用的傳輸時間;步驟(b)、通過一多路開關選通一仍未進行本次循環(huán)該待刻錄數據傳輸的芯片;步驟(c)、向該待刻錄芯片傳輸該待刻錄數據;步驟(d)、在該傳輸時間結束后判斷是否還有仍未進行本次循環(huán)該待刻錄數據傳輸的芯片,如果是執(zhí)行步驟(b),如果否執(zhí)行步驟(e);步驟(e)、判斷是否所有芯片都完成所有數據的刻錄,如果是執(zhí)行步驟(f),如果否則等待未完成刻錄的芯片全部刻錄完成;以及步驟(f)、校驗該完成數據寫入的芯片。
10.根據權利要求9所述的刻錄方法,其特征在于,在步驟(a)之前還包含檢測該待刻錄芯片的類型的步驟。
11.根據權利要求10所述的刻錄方法,其特征在于,在步驟(a)中還包含依照該待刻錄芯片的類型獲取該傳輸時間,并獲得每次傳輸該待刻錄數據后等待該待刻錄數據寫入該芯片的等待時間的步驟。
12.根據權利要求11所述的刻錄方法,其特征在于,所述數個待刻錄的芯片的個數小于或等于該等待時間與該傳輸時間的比值再加一。
13.根據權利要求9所述的刻錄方法,其特征在于,在步驟(f)中還包含在校驗之前判斷是否還有數據需要刻錄的步驟,如果是則對該完成本次循環(huán)該待刻錄數據寫入且仍等待刻錄的芯片執(zhí)行步驟(b),如果否則進行校驗的步驟。
14.根據權利要求9所述的刻錄方法,其特征在于,所述數個待刻錄的芯片均具有相同的地址。
全文摘要
一種刻錄系統(tǒng)及其方法,包含主機,儲存有待刻錄數據;數個待刻錄的芯片;刻錄裝置,用于進行刻錄和計算向每一待刻錄芯片每次傳輸待刻錄數據所用的時間;多路開關,由刻錄裝置控制其開合,并與數個待刻錄的芯片分別電性連接;其中每次刻錄裝置控制多路開關選通一待刻錄芯片傳輸待刻錄數據并當待刻錄芯片處于等待數據寫入的狀態(tài)時,由控制多路開關選通另一待刻錄芯片進行待刻錄數據的傳輸。本發(fā)明的刻錄系統(tǒng)利用多路開關對不同芯片的選通,真正實現了多芯片并行刻錄,節(jié)省了刻錄時間,提高了刻錄效率。
文檔編號G06F13/00GK101063961SQ200610074948
公開日2007年10月31日 申請日期2006年4月25日 優(yōu)先權日2006年4月25日
發(fā)明者張?zhí)斐? 鄭全階, 陳玄同, 劉文涵 申請人:英業(yè)達股份有限公司