嵌入式開(kāi)發(fā)系統(tǒng)編程文件格式解析
擴(kuò)展的Tektronix HEX相對(duì)Tektronix HEX格式具有較為靈活的記錄類(lèi)型和地址空間。它包括3種類(lèi)型的記錄:數(shù)據(jù)、符號(hào)和結(jié)束記錄。數(shù)據(jù)記錄中的是目標(biāo)代碼;符號(hào)記錄中的是編程部分的信息,編程器下載時(shí)符號(hào)記錄是被忽略的;結(jié)束記錄包括頭部、下載地址和目標(biāo)代碼。
擴(kuò)展的Tektronix HEX格式模型如下:
%BBMEEAAAAADDDDDD-DCC
%:占1個(gè)ASXCII字符,標(biāo)示擴(kuò)展Tek HEX記錄開(kāi)始。
BB:長(zhǎng)度域。占1個(gè)字節(jié),表示該記錄中除開(kāi)始標(biāo)志之外的字節(jié)數(shù)。
M:類(lèi)型域,一個(gè)ASCII字符。類(lèi)型域中:6代表數(shù)據(jù)記錄,3代表符號(hào)記錄,8代表結(jié)束記錄。
EE:地址和長(zhǎng)度數(shù)據(jù)的校驗(yàn)和,大小為1個(gè)字節(jié)。
AAAAA:地址域。地址域包括2~1 7個(gè)字符,第1個(gè)字符決定了地址的長(zhǎng)度,一般為8,0代表16個(gè)字符的地址長(zhǎng)度。地址域第1個(gè)字符之外的字符指出了數(shù)據(jù)在存儲(chǔ)器存放的地址。
DD:數(shù)據(jù)域。包括可執(zhí)行代碼,下載到存儲(chǔ)器的數(shù)據(jù)以及傳輸中的描述信息。
CC:校驗(yàn)和,占一個(gè)字節(jié)。校驗(yàn)和域?qū)Ρ緱l記錄中除了“%”和校驗(yàn)數(shù)據(jù)本身之外的所有數(shù)據(jù)計(jì)算校驗(yàn)和。
根據(jù)是否有數(shù)據(jù)和結(jié)束記錄,記錄中域的數(shù)量是不一樣的,2種記錄都有6個(gè)字符的頭以及2~17個(gè)字符的地址。
1.3 描述類(lèi)文件格式
描述類(lèi)文件格式的文件信息有相對(duì)豐富的文件格式,文件不僅有關(guān)于數(shù)據(jù)的記錄信息,還包含了關(guān)于目標(biāo)機(jī)的一些說(shuō)明信息,改變硬件結(jié)構(gòu)的信息或者測(cè)試信息等。該類(lèi)型的文件最常見(jiàn)的是用于PLD和FPGA的下載文件。
1.3.1 JEDEC文件
JEDEC(Joint ELectron Device Engineermg Council)標(biāo)準(zhǔn)是用于現(xiàn)場(chǎng)可編程邏輯器件的。該標(biāo)準(zhǔn)定義了在開(kāi)發(fā)系統(tǒng)和編程器之間傳輸熔絲狀態(tài)的數(shù)據(jù)格式。它并不涉及諸如邏輯陣列類(lèi)型和輸出宏單元等設(shè)備結(jié)構(gòu)信息?,F(xiàn)場(chǎng)可編程邏輯器件比可編程的存儲(chǔ)器件需要更多的測(cè)試信息,所以該標(biāo)準(zhǔn)還定義了一些簡(jiǎn)單的測(cè)試格式。JEDEC格式的合法字符包括所有可打印的ASCII字符和4個(gè)控制字符,包括STX(Start of Text)、ETX(End of Text)、CR(Carriage Return)和LF(Line Feed)。一般使用BNF(Backus-Naur Form,巴科斯一諾爾范式)來(lái)定義JEDEC格式的語(yǔ)法。
JEDEC格式的第1個(gè)域是強(qiáng)制的關(guān)于設(shè)備信息設(shè)計(jì)規(guī)格書(shū),這個(gè)域沒(méi)有開(kāi)始標(biāo)記符。在JEDEC文件中每一個(gè)域都有域識(shí)別符以指明該域的類(lèi)型,每一個(gè)域都是以星號(hào)結(jié)束。JEDEc文件各種域識(shí)別符如表3所列。本文引用地址:http://m.butianyuan.cn/article/149949.htm
描述及定義域主要用來(lái)說(shuō)明用戶和廠商信息、日期和版本號(hào)等各種信息。
N——說(shuō)明域。用來(lái)在JEDEC文件傳輸中插入說(shuō)明信息,編程器是忽略這一域的。
D——器件域。編程器支持的器件并不是遵從這一域,而是由QF和QP域以及手動(dòng)選擇器件而決定。
QF,QP和QV——數(shù)值域。QF子域定義了器件中熔絲的數(shù)量,在器件編程或者測(cè)試域之前,這些數(shù)值域都是必須的;只有測(cè)試域的文件不需要QF域,編程數(shù)據(jù)的文件不需要QP和QV域;QF子域向編程器指出了熔絲數(shù)據(jù)需要多少存儲(chǔ)器,多少熔絲要被設(shè)置到初始條件以及計(jì)算校驗(yàn)和所包含的熔絲數(shù);QP子域定義了測(cè)試向量中的引腳數(shù)目或者測(cè)試條件;QV子域指出了測(cè)試向量的最大數(shù)。
器件編程域。每一個(gè)熔絲有2種可能的狀態(tài):0為低阻連接,1為高阻連接。熔絲編號(hào)從0開(kāi)始一直到最大熔絲數(shù)目。L域中L之后是該域第一個(gè)熔絲的十進(jìn)制序號(hào)數(shù)字,接下來(lái)就是指示熔絲狀態(tài)的二進(jìn)制數(shù)字列表,熔絲號(hào)和熔絲列表之間由空格或者回車(chē)分開(kāi)。F域定義了L域中未明確定義的熔絲狀態(tài)信息。C域是把從第一個(gè)熔絲開(kāi)始的整個(gè)器件的熔絲狀態(tài)每8位作為一個(gè)字節(jié)來(lái)計(jì)算的,最后一個(gè)字中若有未使用的位則填0。U域允許指定JEDEC文件中的不影響邏輯和電特性的用戶數(shù)據(jù)熔絲。E域允許定義不影響器件邏輯功能也不影響已有的JEDEC文件的特性,數(shù)據(jù)可以用二進(jìn)制或者十六進(jìn)制來(lái)表示。J——器件標(biāo)識(shí)域。提供邏輯識(shí)別碼指出文件對(duì)應(yīng)器件的邏輯結(jié)構(gòu),由以空格分開(kāi)的分別大于等于0昀2個(gè)十進(jìn)制數(shù)組成:第1個(gè)是結(jié)構(gòu)碼,第2個(gè)是引腳碼。J域中的編碼是由JEDEC組織分配的。
設(shè)備測(cè)試域。功能性的測(cè)試由測(cè)試向量包含的測(cè)試條件來(lái)定義,每一個(gè)測(cè)試向量包括n個(gè)測(cè)試條件。n是器件引腳數(shù),測(cè)試條件如表4所列。
X——默認(rèn)測(cè)試條件域。定義了未精確定義的測(cè)試向量的輸入邏輯電平,即把QV域中的測(cè)試向量1設(shè)置為默認(rèn)輸入測(cè)試條件。若使用X域,應(yīng)當(dāng)在QV和QP域之后第一個(gè)測(cè)試向量之前。V——測(cè)試向量域。由十進(jìn)制的向量編號(hào)開(kāi)始,之后是空格以及每個(gè)引腳的一串測(cè)試條件。P——Pin引腳序列域。P域映射出了器件輸出引腳,一般和V域一起使用。代碼如下所示:
P 1 2 3 4 5 6 14 15 16 17 7 8 9 10 11 12 13 18 19 20*
V0001 111000HLHHNNNNNNNNNN*
V0002 100000HHHLNNNNNNNNNN*
編程及測(cè)試選項(xiàng)類(lèi)域:G為熔絲安全域。用來(lái)使能某些邏輯器件的加密熔絲,在G域發(fā)送1,即G1*;R、S、T為屬性分析測(cè)試;A為訪問(wèn)時(shí)間域,定義了測(cè)試向量在十億分之一秒內(nèi)的傳播延時(shí)。
1.3.2 POF文件
POF文件中的包類(lèi)型如表5所列。POF(Programmer Object File,編程目標(biāo)文件)格式提供高度壓縮的數(shù)據(jù)文件,可方便有效地傳輸大量的邏輯器件編程信息。這種文件目前主要應(yīng)用于MAX系列器件。POF文件由文件頭和各種包組成,每個(gè)包對(duì)應(yīng)一個(gè)標(biāo)記,指出包中的數(shù)據(jù)類(lèi)型以及數(shù)據(jù)本身結(jié)構(gòu),各個(gè)包的長(zhǎng)度和結(jié)構(gòu)各異。每個(gè)數(shù)據(jù)包的最前6個(gè)字節(jié)是包類(lèi)型和其余字節(jié)的數(shù)量。編程設(shè)備在讀取POF文件時(shí),若包類(lèi)型未被識(shí)別,則該包棄之不用。在一個(gè)POF文件中,除了結(jié)束標(biāo)記包外,各種類(lèi)型都可多次出現(xiàn)。有些包編程器是需要包中信息的,有些包編程器是不使用的(跳過(guò)),有些包則是編程器只讀包中信息但不直接應(yīng)用該信息的(只讀)。
2 總結(jié)
為方便用戶使用,目前大多數(shù)主流公司生產(chǎn)的編程器都能夠在下載文件時(shí)自動(dòng)進(jìn)行某幾種文件格式的檢測(cè)識(shí)別以及文件格式的轉(zhuǎn)換。然而這畢竟解決不了文件格式之間互不兼容的實(shí)際問(wèn)題。因此,我們期望在未來(lái)幾年內(nèi)文件格式可以逐步走向統(tǒng)一,擁有一種或少數(shù)幾種格式標(biāo)準(zhǔn)。
評(píng)論