1. 程式人生 > >使用JTAG Flash Programmer燒寫Flash

使用JTAG Flash Programmer燒寫Flash

除了JTAG Probe以外,TopJTAG公司還有一款JTAG Flash Programmer 軟體,該軟體同樣利用JTAG介面和現有的各種模擬器來控制晶片,通過改變一組I/O狀態,模擬匯流排時序來燒寫Nor Flash。這種方法在產品設計和除錯過程中十分常見,由於採用通用的JTAG介面,軟體不用理會與Nor Flash連線的是何種裝置(ARM、MIPS、CPLD、FPGA都無所謂),並且不會改變裝置中的程式碼。

比如兔子使用的裝置就是這樣的結構,CPU通過CPLD進行匯流排複用,下掛多個儲存器。此時可以通過USB-Blaster連線CPLD對Nor Flash進行程式設計。

TopJTAG官網下載地址:

Flash Programme與Probe售價相同,某位外國友人也為該軟體製作了和諧工具,和Probe的整合在一起,需要童鞋的請見前一篇文章。

安裝並執行軟體,對於新的目標裝置需要點Setup進行配置。

首先將模擬器和目標裝置連好上電,選擇檢測JTAG鏈:

選擇模擬器型別。

軟體會檢測JTAG鏈上的裝置。

和Probe一樣,這裡也需要載入裝置的BSDL檔案,可以從生產商的官網上下載。只需要載入和Flash相連裝置的BSDL檔案就可以了。

選定檔案位置。

配置Flash資訊,該軟體支援大多數的Nor Flash組合形式,如兩片8-Bit組成16-Bit,一片16-Bit工作在Byte(8-Bit)模式等。這裡兔子使用的是單片16-Bit Flash,支援CFI(Common Flash Interface),程式設計方式自動即可。如果Flash不支援CFI,則需要手動指定Flash中的Sector數量和每個Sector的位元組數。

關於Flash是否支援CFI,可以從資料手冊中獲知。

之後需要手動的把Flash的地址、資料匯流排和控制訊號線所連線的晶片引腳一一進行分配,這部分比較麻煩,用不到的訊號不用管。這裡很特別的一點就是,可以用JTAG鏈上的多個不同裝置共同對Flash進行程式設計,比如地址線掛在CPLD上,而資料線掛在CPU上(貌似一般沒人這麼幹)。

分配完介面訊號,還有一步重要操作,就是對Flash的其他控制訊號進行配置,比如總線上掛載的其他裝置片選要保持Disabled狀態,同時Nor Flash的復位引腳需要給出確定的狀態。由於不進行配置的晶片引腳預設為高阻,考慮不周會造成一些意想不到的奇怪錯誤。

設定完成後,選擇Info即可檢視Flash資訊(記得要儲存設定,不然下一次還要重新選引腳)。

軟體也會告訴你Flash是否支援CFI。

下面就就可以開啟要燒寫的檔案了。

燒寫步驟一般是:擦除→程式設計→校驗。可在Erase Option選擇擦除範圍。

另外針對Intel的Flash有鎖定Sector功能的,程式設計前還要手動進行解鎖。

開始程式設計……搞定!裝置成功啟動。

當然了在此之間經歷了漫長的等待過程,這是由JTAG的結構決定的。倒不是說其傳輸資料的速率低,而是因為每當要通過JTAG的Boundry-scan改變I/O狀態——哪怕只有一個引腳——也需要對所有引腳都設定一次狀態。這樣一來除了TCK時鐘,目標晶片的引腳數也會影響程式設計速度。

因此這種方法多用在研發除錯、測試過程中,先燒一個百K位元組的Bootloader,然後通過Bootloader燒寫更大的檔案。不過因為其介面通用性、裝置任意性以及軟體的智慧化,還是非常方便的,哈哈~~

相關推薦

使用JTAG Flash ProgrammerFlash

除了JTAG Probe以外,TopJTAG公司還有一款JTAG Flash Programmer 軟體,該軟體同樣利用JTAG介面和現有的各種模擬器來控制晶片,通過改變一組I/O狀態,模擬匯流排時序來燒寫Nor Flash。這種方法在產品設計和除錯過程中十分常見,由於採用

LinkIt Smart 7688 硬件Flash

lap conn con tro verify 方案 宋體 軟件 family 這個方案用於升級U-BOOT 失敗,或者更換 Flash 後啟動引導的燒寫 一.硬件準備: 1.J-LINK V9 2.杜邦線 3.勾式測試夾或者測試勾 二.軟件準備: SEGGER V

linux 對MTD分區nand flash和讀取

大小寫 error: null 分開 itl tin app struct util 使用mtd-utils工具實現對flash的升級分區的燒寫yaffs2 yaffs2的格式是根據所使用的nandflash來制作的,不同的nandflash,得到的yaffs2是不一樣的,

UARTFLASH

/************************************************************ Copyright (C), 20XX-20XX, SZREC Tech. Co., Ltd. FileName: LedArra

VDM642開發板flash程式步驟

參考了文件 應用程式燒寫步驟手冊。http://pan.baidu.com/s/1miPkDh2 下載裡面的程式,具體步驟裡面都有解釋。 需要注意的一點就是,原工程需要修改cmd檔案的SDRAM空間的起始位置為0x400,如圖。rebuild 整個工程。 工具生成dat檔案

TMS320C6713Flash的通用方法

1 你必須知道的TMS320C6000啟動過程 這部分內容在我的另一篇部落格 有提到過,這裡重新摘錄一遍。 如上圖 在Device Reset階段:裝置初始化為預設狀態,大部分三態輸出都配置為高阻態。在CPU Reset階段:從RS上升沿處開始(這個時候,H

openwrt韌體,串列埠flash

原文地址:http://blog.chinaunix.net/uid-25631578-id-4011568.html AR系列分割槽地址 4M flash的分割槽地址:分割槽名      

關於S3C2440開發板Nand flash程式和執行的一些理解

這兩天剛開始學習ARM9的裸機程式設計和Linux系統移植,在燒寫Nand flash記憶體的時候對一些指定的地址產生了疑惑。 我看過很多教學視訊,他們在燒寫程式到Nand flash的時候一般會指定一個地址0X3000_0000,而S3C2440的官方手冊上指明瞭0X30

TMS320F28335程式FLASH

DSP TMS320F28335 FLASH燒寫 1.檢查map檔案 在燒寫之前,首先檢查Debug目錄下的.map檔案,如果Debug檔案下沒有,檢查其他的資料夾,每個專案中都會有.map檔案。 開啟.map檔案,顯示內容如下所示(部分內容,並非ma

ubootflash原理

UBOOT燒寫flash命令路徑原理:http://blog.csdn.net/lishaman/article/details/6740866 UBOOT燒寫flash具體晶片操作流程原理:http://blog.csdn.net/qingkongyeyue/articl

2440flash問題

講解Makefile和交叉編譯工具篇幅較長,先說flash問題。 燒寫norflash&nandflash? 對於我個人來說,下載到norflash可以,但是因為我是從norfl

嵌入式 學習之硬體Flash

這個方案用於升級U-BOOT 失敗,或者更換 Flash 後啟動引導的燒寫一.硬體準備:1.J-LINK V92.杜邦線3.勾式測試夾或者測試勾二.軟體準備:SEGGER V6.30 以上 J-FLASH SPI三.接線圖:J-LINK引腳SPI_Flash引腳1-3.3V3

CC2530 IAR配置生成hex檔案(可使用Flash programmer直接

直接上方法。 1.開啟工程的“Options”選項框。 2.點選“Linker”->“Config”,選擇"Override default",並選擇f8w2530.xcl,如圖: 3.點選"Linker"->"Output",進行如圖配置: 4.點選"Li

[轉]用H-JTAGARM9開發板flash指南

關鍵字: H-JTAG 燒寫 bootloder nandflash norflash mini2440    近幾天我不斷地在搜尋有關如何通過JTAG燒寫bootloder到flash(norflash&nandflash)的問題.看到網上既能燒寫norflash又

vivadobin文件到flash

燒錄 路徑 url ima pga .net ldh 選中 .com 點擊 bitstream setting ,將 bin_file 勾上,點擊 OK。 2)點擊 generate bitstream ,生成 bit 文件和 bin 文件 3)點擊 op

SPI Nor Flash多核程序

運行 mil 參數 分享圖片 文件名 正常 row 進行 編譯 經過一段時間的研究終於把TMS320C6657單核和雙核的SPI Nor Flash的程序燒寫調通了。工具都是前輩的工作,有需要的可以留下郵箱,我有空可以發。 原理參考錢豐的《TI c66x 系列DSP 多核

使用J-link+J-Flash給STM32晶片序列號

最近專案中,需要為STM32晶片燒寫一個序列號,也就是產品量產時都會遇到的問題     硬體準備:J-Link 一個,STM32F103C8T6 的開發板子一塊     軟體準備: Setup_JLink_V600d 版本的J-Flash  &nbs

Ubuntu12.04下使用Jlink Commandu-boot到mini2440 nand flash

1.Ubuntu下安裝Jlink工具 到http://www.segger.com/cms/jlink-software.html下載Beta software version for Linux,選擇安裝包安裝即可。不同安裝包安裝方法各不相同,請自行谷歌,注意選擇32位

DM36x使用串列埠和NAND啟動完成NAND Flash(一)

背景:專案進行到最後階段,所有的啟動都需要放到NAND Flash晶片上。但是由於硬體設計,沒有新增網路和JTAG模組,所以常見的NFS和JTAG燒寫方式失效。於是,我們需要尋找可行的燒錄方式。 平臺: 作業系統:Ubuntu 10.04 開發板:DM36

使用JLink間接S3C2410、S3C2440開發板Nor、Nand Flash的方法

1. 簡要說明 JLink的除錯功能、燒寫Flash的功能都很強大,但是對於S3C2410、S3C2440的Flash操作有些麻煩:燒寫Nor Flash時需要設定SDRAM,否則速率很慢;燒寫Nand Flash只是從理論上能夠達到,但是還沒有人直接實現這點。 本文使用一個間接的方法來實現對S3C2410、