專利名稱::Pc端通過并口電纜進(jìn)行jtag配置的方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及集成電路技術(shù),特別涉及用PC端配置可編程器件的技術(shù)。
背景技術(shù):
:目前,在可編程器件應(yīng)用開發(fā)中的一種通行做法就是使用PC端軟件生成配置數(shù)據(jù),再由專用軟件通過與PC端并行接口相連的并口JTAG電纜將數(shù)據(jù)下載到可編程器件中去。因此,PC端通過并口電纜進(jìn)行JTAG配置的效率和可靠性將極大地影響產(chǎn)品開發(fā)的效率。PC端通過并口電纜進(jìn)行JTAG配置的軟件都是基于狀態(tài)機(jī)的,其傳統(tǒng)實(shí)現(xiàn)一般有兩種一是基于JTAG狀態(tài)機(jī)(圖1),一是基于LSCISP狀態(tài)機(jī)(圖3)。前者在軟件內(nèi)部使用狀態(tài)變量和信號(hào)變量直接表征JTAG狀態(tài)和4個(gè)JTAG信號(hào),以實(shí)現(xiàn)包含16個(gè)狀態(tài)的完整JTAG狀態(tài)機(jī)。對(duì)于專用配置工具而言,維護(hù)如此多的狀態(tài)毫無(wú)必要,反而增加了實(shí)現(xiàn)復(fù)雜性,從而增加了軟件出錯(cuò)的可能,增大了維護(hù)開銷,降低了軟件的可維護(hù)性和執(zhí)行效率。后者只有3個(gè)狀態(tài),使用方便,實(shí)現(xiàn)簡(jiǎn)單,但它將指令的執(zhí)行分割成兩部分(載入和運(yùn)行),且沒有明確區(qū)分編程(Programming)、正常工作(Operational)和未編程(U叩rogrammed)狀態(tài),因而穩(wěn)定性較差,且狀態(tài)過少,應(yīng)用靈活性不夠。
發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題是,提供一種更為可靠的、能滿足在系統(tǒng)編程需求的狀態(tài)機(jī),或者說,PC端通過并口電纜進(jìn)行JTAG配置的方法。本發(fā)明解決所述技術(shù)問題采用的技術(shù)方案是,PC端通過并口電纜進(jìn)行JTAG配置的方法,在Unprogrammed和Programming兩種狀態(tài)之間進(jìn)行轉(zhuǎn)換,其特征在于,還包括Operational禾PExceptional兩種狀態(tài),Exceptional用于操作出錯(cuò)時(shí)的補(bǔ)救,Operational用于區(qū)分編程后的器件和未編程的器件;前述4種狀態(tài)依據(jù)不同的信號(hào)相互轉(zhuǎn)換。具體的說,前述的PC端通過并口電纜進(jìn)行JTAG配置的方法包括如下步驟,步驟中信號(hào)的第一位表示ISP—ENBALE,高有效,表征進(jìn)入編程配置狀態(tài);第二位表示ISP一DONE,高有效,表征操作成功完成;l表示高,0表示低,X表示高或者低;1)在U叩rogrammed狀態(tài)下,信號(hào)為IX時(shí)進(jìn)入Programming狀態(tài),信號(hào)為0X時(shí)保持Unprogrammed狀態(tài);2)在Programming狀態(tài)下,信號(hào)為10時(shí)保持Programming狀態(tài),信號(hào)為10時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為11時(shí)進(jìn)入Operational狀態(tài),信號(hào)為00時(shí)進(jìn)入Exception狀態(tài);3)在Exceptional狀態(tài)下,信號(hào)為00時(shí)維持Exceptional狀態(tài),信號(hào)為11時(shí)進(jìn)入Operational狀態(tài),信號(hào)為01時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為10時(shí)進(jìn)入Programming狀態(tài);4)在Operational狀態(tài)下,信號(hào)為11時(shí)維持Operational狀態(tài),信號(hào)為01時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為10時(shí)進(jìn)入Programming狀態(tài),信號(hào)為00時(shí)進(jìn)入Exceptional狀態(tài)。本發(fā)明的有益效果是,本發(fā)明的狀態(tài)機(jī)與以前的方案相比,特別增加了兩個(gè)狀態(tài)Exceptional和Operational以提供額外的穩(wěn)定性、健壯性和靈活性。Exceptional給予軟件和用戶在操作出錯(cuò)時(shí)有足夠的補(bǔ)救機(jī)會(huì)。Operational則將編程后的器件與未編程的空器件區(qū)分開來。如配置完的FPGA和未編程的FPGA,其可執(zhí)行的或被期待的操作是截然不同的,Operational可以將這種不同清楚地呈現(xiàn)出來,增強(qiáng)了可靠性。以下結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的說明。圖l是JTAG狀態(tài)機(jī)示意圖(IEEEStd1149.1-2001)。圖2是LSCISP狀態(tài)機(jī)示意圖。4圖3是本發(fā)明的狀態(tài)機(jī)示意圖。具體實(shí)施例方式參見圖3。本發(fā)明的酉己置方去包J舌Unprogrammed、Programming、Operational和Exceptional4種狀態(tài),Exceptional用于操作出錯(cuò)時(shí)的補(bǔ)救,Operational用于區(qū)分編程后的器件和未編程的器件;前述4種狀態(tài)依據(jù)不同的信號(hào)相互轉(zhuǎn)換。具體的說,前述的PC端通過并口電纜進(jìn)行JTAG配置的方法包括如下步驟,步驟中信號(hào)的第一位表示ISP—ENBALE,高有效,表征進(jìn)入編程配置狀態(tài);第二位表示ISP—DONE,高有效,表征操作成功完成;l表示高,0表示低,X表示高或者低;1)在Unprogrammed狀態(tài)下,信號(hào)為IX時(shí)進(jìn)入Programming狀態(tài),信號(hào)為0X時(shí)保持Unprogrammed狀態(tài);2)在Programming狀態(tài)下,信號(hào)為10時(shí)保持Programming狀態(tài),信號(hào)為10時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為11時(shí)進(jìn)入Operational狀態(tài),信號(hào)為00時(shí)進(jìn)入Exception狀態(tài);3)在Exceptional狀態(tài)下,信號(hào)為00時(shí)維持Exceptional狀態(tài),信號(hào)為11時(shí)進(jìn)入Operational狀態(tài),信號(hào)為01時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為10時(shí)進(jìn)入Programming狀態(tài);4)在Operational狀態(tài)下,信號(hào)為11時(shí)維持Operational狀態(tài),信號(hào)為01時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為10時(shí)進(jìn)入Programming狀態(tài),信號(hào)為00時(shí)進(jìn)入Exceptional狀態(tài)。狀態(tài)說明Unprogrammed:此狀態(tài)表征器件尚未編程、或編程失敗、或重新復(fù)位,它也是軟件啟動(dòng)后的默認(rèn)狀態(tài)。此狀態(tài)中ISP指令無(wú)效(ISPEN例外)。當(dāng)ISP—ENABLE=0時(shí),狀態(tài)操持不變;ISP—ENABLE=1時(shí),進(jìn)入Programming狀態(tài)。ISP一DONE信號(hào)對(duì)此狀態(tài)無(wú)影響。Programming:此狀態(tài)表征器件正在進(jìn)行編程相關(guān)操作。此狀態(tài)中可以執(zhí)行ISP指令(回讀,編程,擦除,校驗(yàn),保護(hù)等)。此狀態(tài)5對(duì)信號(hào)響應(yīng)如下:ISP一ENABLEISPDONENextStateComment00Exceptional出現(xiàn)異常,轉(zhuǎn)異常處理狀態(tài)01Unprogrammed操作成功,完全退出ISP狀態(tài)10Programming操作未完,繼續(xù)駐留本狀態(tài)11Operational編程成功,進(jìn)入工作狀態(tài)Operational:此狀態(tài)表征器件處于工作待命狀態(tài)。此狀態(tài)中ISP指令無(wú)效,可以執(zhí)行工作指令(例如,對(duì)于PROM可以執(zhí)行配置J!令對(duì)FPGA進(jìn)行配置)。此狀態(tài)對(duì)信號(hào)響應(yīng)如下<table>tableseeoriginaldocumentpage6</column></row><table>Exceptional:此狀態(tài)表征器件遇到異常,需要進(jìn)行特殊處理。此狀態(tài)中ISP指令無(wú)效。一般來說這是一個(gè)過渡態(tài),不能對(duì)器件進(jìn)行除重置之外的任何操作。此狀態(tài)對(duì)信號(hào)響應(yīng)如下<table>tableseeoriginaldocumentpage6</column></row><table>本發(fā)明的狀態(tài)機(jī)所使用的兩個(gè)信號(hào)ISP一ENABLE和ISP_DONE遵循IEEE1532-2002標(biāo)準(zhǔn),前者相當(dāng)于正EE1532-2002標(biāo)準(zhǔn)所定義的ISC—Enabled信號(hào),后者相當(dāng)于IEEE1532-2002標(biāo)準(zhǔn)所定義的ISC—Done信號(hào)。通過本發(fā)明對(duì)新的狀態(tài)機(jī)及相關(guān)信號(hào)和狀態(tài)的描述,普通技術(shù)人員能夠無(wú)障礙的再現(xiàn)本發(fā)明,在現(xiàn)有技術(shù)上,本發(fā)明增加了兩個(gè)狀態(tài)Exceptional和Operational以提供額外的穩(wěn)定性、健壯性和靈活性,一切基于本發(fā)明的構(gòu)思所作出的任何變型的方案皆屬于本發(fā)明的權(quán)利范圍。權(quán)利要求1、PC端通過并口電纜進(jìn)行JTAG配置的方法,在Unprogrammed和Programming兩種狀態(tài)之間進(jìn)行轉(zhuǎn)換,其特征在于,還包括Operational和Exceptional兩種狀態(tài),Exceptional用于操作出錯(cuò)時(shí)的補(bǔ)救,Operational用于區(qū)分編程后的器件和未編程的器件;前述4種狀態(tài)依據(jù)不同的信號(hào)相互轉(zhuǎn)換。2、如權(quán)利要求2所述的PC端通過并口電纜進(jìn)行JTAG配置的方法,其特征在于,包括如下步驟,步驟中信號(hào)的第一位表示ISP—ENBALE,高有效,表征進(jìn)入編程配置狀態(tài);第二位表示ISPJDONE,高有效,表征操作成功完成;1表示高,0表示低,X表示高或者低;1)在Unprogrammed狀態(tài)下,信號(hào)為IX日寸進(jìn)入Programming狀態(tài),信號(hào)為OX時(shí)保持Unprogrammed狀態(tài);2)在Programming狀態(tài)下,信號(hào)為10日寸保持Programming狀態(tài),信號(hào)為01時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為11時(shí)進(jìn)入Operational狀態(tài),信號(hào)為00時(shí)進(jìn)入Exception狀態(tài);3)在Exceptional狀態(tài)下,信號(hào)為00時(shí)維持Exceptional狀態(tài),信號(hào)為11時(shí)進(jìn)入Operational狀態(tài),信號(hào)為01時(shí)進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為10時(shí)進(jìn)入Programming狀態(tài);4)在Operational狀態(tài)下,信號(hào)為11時(shí)維持Operational狀態(tài),信號(hào)為01日寸進(jìn)入U(xiǎn)nprogrammed狀態(tài),信號(hào)為10時(shí)進(jìn)入Programming狀態(tài),信號(hào)為00時(shí)進(jìn)入Exceptional狀態(tài)。全文摘要PC端通過并口電纜進(jìn)行JTAG配置的方法,涉及集成電路技術(shù)。本發(fā)明在Unprogrammed和Programming兩種狀態(tài)之間進(jìn)行轉(zhuǎn)換,其特征在于,還包括Operational和Exceptional兩種狀態(tài),Exceptional用于操作出錯(cuò)時(shí)的補(bǔ)救,Operational用于區(qū)分編程后的器件和未編程的器件;前述4種狀態(tài)依據(jù)不同的信號(hào)相互轉(zhuǎn)換。本發(fā)明的狀態(tài)機(jī)與以前的方案相比,特別增加了兩個(gè)狀態(tài)Exceptional和Operational以提供額外的穩(wěn)定性、健壯性和靈活性。文檔編號(hào)G06F17/50GK101464918SQ20081014813公開日2009年6月24日申請(qǐng)日期2008年12月31日優(yōu)先權(quán)日2008年12月31日發(fā)明者俊張,李文昌,熊宣淋,鞠瑜華,黃國(guó)輝申請(qǐng)人:成都華微電子系統(tǒng)有限公司