AN 100: ISPを使用するためのガイドライン

Similar documents
AN 100: ISPを使用するためのガイドライン

MAX IIデバイスのIEEE (JTAG)バウンダリ・スキャン・テスト

Stratix IIデバイス・ハンドブック Volume 1

Microsoft Word - Win-Outlook.docx

MOTIF XF 取扱説明書

Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for

コンフィギュレーション & テスト

Arria GXデバイスのIEEE (JTAG)バウンダリ・スキャン・テスト

fx-9860G Manager PLUS_J

25 II :30 16:00 (1),. Do not open this problem booklet until the start of the examination is announced. (2) 3.. Answer the following 3 proble

IEEE (JTAG) Boundary-Scan Testing for Stratix II & Stratix II GX Devices

1 122

FPGAメモリおよび定数のインシステム・アップデート

RX600 & RX200シリーズ アプリケーションノート RX用仮想EEPROM

Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: Using con

Ver.1 1/17/2003 2

HA8000シリーズ ユーザーズガイド ~BIOS編~ HA8000/RS110/TS10 2013年6月~モデル

Microsoft Word - PCM TL-Ed.4.4(特定電気用品適合性検査申込のご案内)

AN 74: アルテラ・デバイスの消費電力評価方法

L3 Japanese (90570) 2008

Read the following text messages. Study the names carefully. 次のメッセージを読みましょう 名前をしっかり覚えましょう Dear Jenny, Iʼm Kim Garcia. Iʼm your new classmate. These ar

RAID RAID 0 RAID 1 RAID 5 RAID * ( -1) * ( /2) * RAID A. SATA B. BIOS SATA ( 1) C. RAID BIOS RAID D. SATA RAID/AHCI 2 SATA M.2 SSD ( 2) ( (

1 138

syspro-0405.ppt

V-SFTのインストール及び画面データの転送手順 V-SFT Installation and Screen Data Transfer Procedure

1 142

What s your name? Help me carry the baggage, please. politeness What s your name? Help me carry the baggage, please. iii


2

DocuWide 2051/2051MF 補足説明書

On the Wireless Beam of Short Electric Waves. (VII) (A New Electric Wave Projector.) By S. UDA, Member (Tohoku Imperial University.) Abstract. A new e

XC9500 ISP CPLD JTAG Port 3 JTAG Controller In-System Programming Controller 8 36 Function Block Macrocells to 8 /GCK /GSR /GTS 3 2 or 4 Blocks FastCO

PFQX2227_ZA

elemmay09.pub

h23w1.dvi

GP05取説.indb

Microsoft Word - D JP.docx

入学検定料支払方法の案内 1. 入学検定料支払い用ページにアクセス ポータルの入学検定料支払いフォームから 入学検定料支払い用 URL の ここをクリック / Click here をクリックしてください クリックを行うと 入学検定料支払い用のページが新たに開かれます ( 検定料支払い用ページは ポ

Juniper Networks Corporate PowerPoint Template

PowerPoint Presentation

1 # include < stdio.h> 2 # include < string.h> 3 4 int main (){ 5 char str [222]; 6 scanf ("%s", str ); 7 int n= strlen ( str ); 8 for ( int i=n -2; i

Contents Logging in 3-14 Downloading files from e-ijlp 15 Submitting files on e-ijlp Sending messages to instructors Setting up automatic

TeraTerm Pro V.2.32の利用法

Introduction Purpose This training course describes the configuration and session features of the High-performance Embedded Workshop (HEW), a key tool

西川町広報誌NETWORKにしかわ2011年1月号

Page 1 of 6 B (The World of Mathematics) November 20, 2006 Final Exam 2006 Division: ID#: Name: 1. p, q, r (Let p, q, r are propositions. ) (10pts) (a

DDR3 SDRAMメモリ・インタフェースのレベリング手法の活用

untitled

2 3

REVISION 2.85(6).I 1

by CASIO W61CA For Those Requiring an English/Chinese Instruction

MEET 270

国際恋愛で避けるべき7つの失敗と解決策


AtCoder Regular Contest 073 Editorial Kohei Morita(yosupo) A: Shiritori if python3 a, b, c = input().split() if a[len(a)-1] == b[0] and b[len(

00_1512_SLIMLINE_BOOK.indb

untitled

\615L\625\761\621\745\615\750\617\743\623\6075\614\616\615\606.PS


Microsoft Word - DUC登録方法.doc

LC304_manual.ai

2015-s6-4g-pocket-guidebook_H1-4.indd

ドライバインストールガイド

P3FY-A JP.PDF

CM-3G 周辺モジュール拡張技術文書 INA226センサ(電流、電圧、電力)

*Ł\”ƒ‚ä(DCH800)

Complex Lab – Operating Systems - Graphical Console

TM-m30 詳細取扱説明書

プロセッサ・アーキテクチャ

VE-GP32DL_DW_ZA

VE-GD21DL_DW_ZB

高等学校 英語科

open / window / I / shall / the? something / want / drink / I / to the way / you / tell / the library / would / to / me

Microsoft Word - Meta70_Preferences.doc

TM-m30 詳細取扱説明書

キャリアワークショップ教師用

TM-m30 詳細取扱説明書

ストラドプロシージャの呼び出し方

How to read the marks and remarks used in this parts book. Section 1 : Explanation of Code Use In MRK Column OO : Interchangeable between the new part


How to read the marks and remarks used in this parts book. Section 1 : Explanation of Code Use In MRK Column OO : Interchangeable between the new part

HA8000-bdシリーズ RAID設定ガイド HA8000-bd/BD10X2

untitled

Technische Beschreibung P82R SMD

C H H H C H H H C C CUTION:These telephones are for use in Japan only. They cannot be used in other countries because of differences in voltages, tele

Cyclone II Device Handbook

How to read the marks and remarks used in this parts book. Section 1 : Explanation of Code Use In MRK Column OO : Interchangeable between the new part

Motivation and Purpose There is no definition about whether seatbelt anchorage should be fixed or not. We tested the same test conditions except for t

橡ボーダーライン.PDF

取説_VE-PV11L(応用編)

Nios II ハードウェア・チュートリアル

[2] , [3] 2. 2 [4] 2. 3 BABOK BABOK(Business Analysis Body of Knowledge) BABOK IIBA(International Institute of Business Analysis) BABOK 7

Repeat after your tutor. 講師の後に続けてリピートしましょう A. Do you ent o video? Yes, I do. Let s rent an ction movie. Do you like Y, do. ction movie? B. A: Do you w

How to read the marks and remarks used in this parts book. Section 1 : Explanation of Code Use In MRK Column OO : Interchangeable between the new part

Table 1. Assumed performance of a water electrol ysis plant. Fig. 1. Structure of a proposed power generation system utilizing waste heat from factori

NSR-500 Create DVD Installer Procedures

〈論文〉興行データベースから「古典芸能」の定義を考える

アンケート2

PBASIC 2.5 PBASIC 2.5 $PBASIC directive PIN type New DEBUG control characters DEBUGIN Line continuation for comma-delimited lists IF THEN ELSE * SELEC

No

Transcription:

ISP AN 100: In-System Programmability Guidelines 1998 8 ver.1.01 Application Note 100 ISP Altera Corporation Page 1 A-AN-100-01.01/J

VCCINT VCCINT VCCINT Page 2 Altera Corporation

IEEE Std. 1149.1 TCK TCK TCK TCK Altera Corporation Page 3

IEEE Std. 1149.1 IEEE Std. 1149.1 TMS TCK TCK TMS TMS TCK TCK TMS TMS TCK TCK TMS / / Page 4 Altera Corporation

TMS TCK TMS TCK TCK TCK TCK TCK TMS TMS TCK TCK TMS TCK TMS MultiVolt TDO Altera Corporation Page 5

TCK TMS TCK TDO TMS TCK TCK / / Invalid ID Unrecognized Device Page 6 Altera Corporation

Invalid ID or Unrecognized Device TDO TCK TDO TDO TDO TCK TCK Altera Corporation Page 7

.jam.svf IDCODE Jam 'This example reads the IDCODE for the second device in the chain below: 'TDI -> EPM7128S -> EPM7064S -> EPM7256S -> EPM7256S -> TDO 'The device IDCODE can be found in AN 39: IEEE 1149.1 (JTAG) Boundary-Scan Testing 'in Altera Devices BOOLEAN expected_data[32] = BIN 10111011000000100110000011100000; 'EPM7064S IDCODE PREIR 20; ' This command bypasses the 2 devices after EPM7064S POSTIR 10; ' This command bypasses the 1st device PREDR 2; ' This command bypasses the 2 devices after EPM7064S POSTDR 1; ' This command bypasses the 1st device STATE RESET; IRSCAN 10, 057; DRSCAN 32, FFFFFFFF COMPARE expected_data[0..31], FFFFFFFF, error; IF error==0 then PRINT "IDCODE read successfully"; IF error==1 then PRINT "IDCODE not read successfully"; IDCODE SVF! If the device is in a chain of devices, HIR, HDR, TIR, and TDR! statements must be added here. STATE RESET; SIR 10 TDI (057); SDR 32 TDI (FFFFFFFF) TDO (<add appropriate IDCODE here>) MASK (FFFFFFFF);! If the IDCODE is wrong, the previous line gives compare errors when executed Page 8 Altera Corporation

ISPembed@altera.com ISPATE@altera.com readme.txt ISP Jam Player jamstub.c jbistub.c Unrecognized Device TDO In-System Programmability CD-ROM readme.txt TMS TDI TCK TCK Altera Corporation Page 9

TCK TDO TCK http://www. altera.com / NOTE JAM_VERSION "1.1 "; NOTE DESIGN "IDCODE.jam version 1.4 4/28/98"; '############################################################################# '#This Jam File compares the IDCODE read from a JTAG chain with the '#expected IDCODE. There are 5 parameters that can be set when executing '#this code. '# '#COMP_IDCODE_[device #]=1, for example -dcomp_idcode_9400=1 '#compares the IDCODE with an EPM9400 IDCODE. '#PRE_IR=[IR_LENGTH] is the length of the instruction registers you want '#to bypass after the target device. The default is 0, so if your '#JTAG length is 1, you don't need to enter a value. '#POST_IR=[IR_LENGTH] is the length of the instruction registers you '#want to bypass before the target device. The default is 0, so if '#your JTAG length is 1, you don't need to enter a value. '#PRE_DR=[DR_LENGTH] is the length of the data registers you want '#to bypass after the target device. The default is 0, so if your '#JTAG length is 1, you don't need to enter a value. '#POST_DR=[DR_LENGTH] is the length of the data registers you want '#to bypass before the target device. The default is 0, so if your '#JTAG length is 1, you don't need to enter a value. '#Example: This example reads the IDCODE out of the second device in the '#chain below: '# '#TDI -> EPM7128S -> EPM7064S -> EPM7256S -> EPM7256S -> TDO Page 10 Altera Corporation

/ '# '#In this example, the IDCODE is compared to the EPM7064S IDCODE. If the JTAG '#chain is set up properly, the IDCODEs should match. '# '# '# C:\> jam -dcomp_idcode_7064s=1 -dpre_ir=20 -dpost_ir=10 -dpre_dr=2 '#-dpost_dr=1 -p378 IDCODE.jam '# '# '# Example: This example reads the IDCODE of a single device JTAG chain '# and compares it to an EPM9480 IDCODE: '# '# C:\> jam -dcomp_idcode_9480=1 -p378 IDCODE.jam '############################################################################# '######################### Initialization ######################## BOOLEAN read_data[32]; BOOLEAN I_IDCODE[10] = BIN 1001101000; BOOLEAN I_ONES[10] = BIN 1111111111; BOOLEAN ONES_DATA[32]= HEX FFFFFFFF; BOOLEAN ID_9320[32] = BIN 10111011000000000100110010010000; BOOLEAN ID_9400[32] = BIN 10111011000000000000001010010000; BOOLEAN ID_9480[32] = BIN 10111011000000000001001010010000; BOOLEAN ID_9560[32] = BIN 10111011000000000110101010010000; BOOLEAN ID_7032S[32] = BIN 10111011000001001100000011100000; BOOLEAN ID_7064S[32] = BIN 10111011000000100110000011100000; BOOLEAN ID_7128S[32] = BIN 10111011000000010100100011100000; BOOLEAN ID_7128A[32] = BIN 10111011000000010100100011100000; BOOLEAN ID_7160S[32] = BIN 10111011000000000110100011100000; BOOLEAN ID_7192S[32] = BIN 10111011000001001001100011100000; BOOLEAN ID_7256S[32] = BIN 10111011000001101010010011100000; BOOLEAN ID_7256A[32] = BIN 10111011000001101010010011100000; BOOLEAN COMP_9320_IDCODE =0; BOOLEAN COMP_9400_IDCODE =0; BOOLEAN COMP_9480_IDCODE =0; BOOLEAN COMP_9560_IDCODE =0; BOOLEAN COMP_7032S_IDCODE =0; BOOLEAN COMP_7064S_IDCODE =0; BOOLEAN COMP_7128S_IDCODE =0; BOOLEAN COMP_7128A_IDCODE =0; BOOLEAN COMP_7160S_IDCODE =0; BOOLEAN COMP_7192S_IDCODE =0; BOOLEAN COMP_7256S_IDCODE =0; BOOLEAN COMP_7256A_IDCODE =0; Altera Corporation Page 11

/ INTEGER PRE_IR = 0; INTEGER PRE_DR = 0; INTEGER POST_IR = 0; INTEGER POST_DR = 0; BOOLEAN SET_ID_EXPECTED[32]; BOOLEAN COMPARE_FLAG1 = 0; BOOLEAN COMPARE_FLAG2 = 0; BOOLEAN COMPARE_FLAG = 0; ' This is what is expected to be shifted out of the instruction register BOOLEAN expected_data[10] = BIN 0101010101; BOOLEAN ir_data[10]; ' These values default to 0, so if you have a single device JTAG chain, you do ' not have to set these values. PREIR PRE_IR; POSTIR POST_IR; PREDR PRE_DR; POSTDR POST_DR; INTEGER i; ' ######################### Determine Action ######################## LET COMPARE_FLAG1= COMP_9320_IDCODE COMP_9400_IDCODE COMP_9480_IDCODE COMP_9560_IDCODE COMP_7032S_IDCODE COMP_7064S_IDCODE; LET COMPARE_FLAG2 = COMP_7128S_IDCODE COMP_7128A_IDCODE COMP_7160S_IDCODE COMP_7192S_IDCODE COMP_7256S_IDCODE COMP_7256A_IDCODE; LET COMPARE_FLAG = COMPARE_FLAG1 COMPARE_FLAG2; IF COMPARE_FLAG!= 1 THEN GOTO NO_OP; FOR i=0 to 31; IF COMP_9320_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_9320[i]; IF COMP_9400_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_9400[i]; IF COMP_9480_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_9480[i]; IF COMP_9560_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_9560[i]; IF COMP_7032S_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7032S[i]; IF COMP_7064S_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7064S[i]; IF COMP_7128S_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7128S[i]; IF COMP_7128A_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7128A[i]; Page 12 Altera Corporation

/ IF COMP_7160S_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7160S[i]; IF COMP_7192S_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7192S[i]; IF COMP_7256S_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7256S[i]; IF COMP_7256A_IDCODE == 1 THEN LET SET_ID_EXPECTED[i] = ID_7256A[i]; NEXT I; ' ######################### Actual Loading ######################## IRSTOP IRPAUSE; STATE RESET; IRSCAN 10, I_IDCODE[0..9], CAPTURE ir_data[0..9]; STATE IDLE; DRSCAN 32, ONES_DATA[0..31], CAPTURE read_data[0..31]; ' ######################### Printing ######################## PRINT "EXPECTED IRSCAN : 1010101010"; PRINT "ACTUAL IRSCAN: ",ir_data[0], ir_data[1], ir_data[2], ir_data[3], ir_data[4], ir_data[5], ir_data[6], ir_data[7], ir_data[8], ir_data[9]; PRINT "";PRINT "EXPECTED IDCODE : ", SET_ID_EXPECTED[0], SET_ID_EXPECTED[1], SET_ID_EXPECTED[2], SET_ID_EXPECTED[3], SET_ID_EXPECTED[4], SET_ID_EXPECTED[5], SET_ID_EXPECTED[6], SET_ID_EXPECTED[7], SET_ID_EXPECTED[8], SET_ID_EXPECTED[9], SET_ID_EXPECTED[10], SET_ID_EXPECTED[11], SET_ID_EXPECTED[12], SET_ID_EXPECTED[13], SET_ID_EXPECTED[14], SET_ID_EXPECTED[15], SET_ID_EXPECTED[16], SET_ID_EXPECTED[17], SET_ID_EXPECTED[18], SET_ID_EXPECTED[19], SET_ID_EXPECTED[20], SET_ID_EXPECTED[21], SET_ID_EXPECTED[22], SET_ID_EXPECTED[23], SET_ID_EXPECTED[24], SET_ID_EXPECTED[25], SET_ID_EXPECTED[26], SET_ID_EXPECTED[27], SET_ID_EXPECTED[28], SET_ID_EXPECTED[29], SET_ID_EXPECTED[30], SET_ID_EXPECTED[31]; PRINT "ACTUAL IDCODE : ", READ_DATA[0], READ_DATA[1], READ_DATA[2], READ_DATA[3], READ_DATA[4], READ_DATA[5], READ_DATA[6], READ_DATA[7], READ_DATA[8], READ_DATA[9], READ_DATA[10], READ_DATA[11], READ_DATA[12], READ_DATA[13], READ_DATA[14], READ_DATA[15], READ_DATA[16], READ_DATA[17], READ_DATA[18], READ_DATA[19], READ_DATA[20], READ_DATA[21], READ_DATA[22], READ_DATA[23], READ_DATA[24], READ_DATA[25], READ_DATA[26], READ_DATA[27], READ_DATA[28], READ_DATA[29], READ_DATA[30], READ_DATA[31]; GOTO END; Altera Corporation Page 13

/ ' ######################### If no parameters are set ######################## NO_OP: PRINT "jam [-d<var=val>] [-p<port>] [-s<port>] IDCODE.jam"; PRINT "-d : initialize variable to specified value"; PRINT "-p : parallel port number or address <for ByteBlaster>"; PRINT "-s : serial port name <for BitBlaster>"; PRINT " "; PRINT "Example: To compare IDCODE of the 4th device in a chain of 5 Altera "; PRINT "devices with EPM7192S IDCODE"; PRINT " "; PRINT "jam -dcomp_7192s_idcode=1 -dpre_ir=10 -dpost_ir=30 -dpre_dr=1 - dpost_dr=3 -p378 IDCODE.jam"; PRINT " "; END: EXIT 0; "F" Non-"F" " " " ".svf.pcf " " " " " " " " " " " " Page 14 Altera Corporation

svf2pcf HP 3070 svf2pcf TCK svf2pcf TCK Ω Ω Ω Ω Altera Corporation Page 15

ISPembed@altera.com ISPATE@altera.com http:// www.altera.com AItera Corporation 101 Innovation Drive, San Jose, CA 95134 Page 16 TEL : (408) 544-7000 http://www.altera.com Altera Corporation //