MAX7000: AlteraMAX7000-seriesCPLDfamilyMAX7000S: AlteraMAX7000-seriesCPLDfamily withJTAGandISPsupportEPM7032S: AlteraMAX7000S-seriesCPLDwith 32 macrocellsOpenOCD: Open On-Chip Debugger - FOSS software for programming or debugging integrated circuits, capable of executingSVFfiles
PLD: Programmable Logic Device - generic term for devices such asCPLDs andFPGAs that can be configured after manufacturingPLA: Programmable Logic Array - configurable logic device architecture with programmable AND and programmable OR planesPAL: Programmable Array Logic - configurable logic device architecture with a programmable AND plane and fixed OR planePT: Product Term - basic AND term in a sum-of-products expressionSOP: Sum Of Products - canonical form combining several product terms by ORing themLC: Logic Cell - device-family-specific composition ofPTs, logic gates, multiplexers and oneDFFLAB: Logic Array Block - grouping of logic cells in aMAX7000device sharing local routing and control signalsREG: Register - flip-flop, prominently D-typeFF: Flip-flop - one-bit storage elementDFF: D-type flip-flop - flip-flop with data input DMUX: Multiplexer - in the context ofPLDs, logical entity for routing internal signals according to configuration bits (bitstream)CPLD: Complex Programmable Logic Device - non-volatile programmable logic device family including the AlteraMAX7000seriesJTAG: Joint Test Action Group -IEEE 1149.xboundary scan interface for communicating with and programming a deviceISP: In-System Programming - programming aCPLDor otherPLDwhile it is soldered into the target system, typically viaJTAGTAP: Test Access Port -JTAGinterface on the device including pins andTAPstate machine
PNR: Place and Route - design step mapping logic onto physical device resources and calculating necessary routing between themBST: Boundary Scan Testing - testing integrated circuits via boundary scan chains, typically overJTAGISC: In-System Configuration - standardizedJTAG-based method for configuring programmable logic devices in-circuitOCD: On-chip debugging - observing and controlling a running system via debug logicIEEE 1149.1:JTAGboundary-scan standard definingTAP, instructions and basic test infrastructure for digital ICsIEEE 1532: in-system configuration standard for programmable logic devices building onJTAG(IEEE 1149.1)
BIT: raw bitstream - binary configuration data for a deviceRBF: Raw Bitstream File - file containing a raw bitstreamBSDL: Boundary Scan Description Language -IEEElanguage describing a device's boundary scan (JTAG) structurePALASM: PAL Assembler - textual language for describing logic equations and pin assignments forPAL- andCPLD-style devicesFASM: FPGA Assembly - textual, human-readable, feature-based format for specifying logical configurations as an intermediate between place-and-route output and low-level bitstreamPLDCONF: Programmable Logic Device Configuration - C-style, human-readable configuration file format used as an intermediate beforeFASMand bitstream generationPOF: Programmable Object File - Altera-proprietary flash/bitstream file formatSVF: Serial Vector Format - textual format storing a sequence ofJTAGoperations e.g. for programming or testing aJTAG-capable device
TITLE: directive for naming a design or fileDEVICE: directive for selecting target device type or familyPIN: directive for assigning logical signals to device pinsEQUATIONS: section for specifying Boolean equations for outputs and internal nodesFIELD: directive for defining bit fields in vectors to simplify equationsTABLE: directive for describing combinational behaviour as a truth table
STATE: statement for forcing theTAPcontroller into a specific stable stateRUNTEST: statement for keeping theTAPin a state for a given number ofTCKcycles or a given timeSIR: Shift Instruction Register - statement for shifting a value into the instruction register (IR)SDR: Shift Data Register - statement for shifting a value into the currently selected data register (DR)FREQUENCY: statement for constraining maximumJTAGclock frequency for subsequent operationsTRST: statement for declaring use or absence of theTRSTreset signalENDDR/ENDIR: options for defining theTAPend state afterDRorIRshifting
TEST_LOGIC_RESET:TAPstate for resettingJTAGlogic and returning to a defined idle conditionRUN_TEST/IDLE:TAPstate for idling or running built-in self-test between scan operationsSHIFT_IR:TAPstate for shifting bits through the instruction registerSHIFT_DR:TAPstate for shifting bits through the currently selected data registerUPDATE_IR:TAPstate for updating instruction register contents from the shift pathUPDATE_DR:TAPstate for updating data register contents from the shift pathPAUSE_IR/PAUSE_DR:TAPstates for temporarily pausing shifting ofIRorDRwhile preserving contentsBYPASS: instruction selecting a single-bit bypass register for minimal scan lengthIDCODE: instruction selecting a device identification register containing a fixed ID valueSAMPLE/PRELOAD: instruction for sampling pin values into the boundary register and/or preloading boundary-scan dataEXTEST: instruction for using boundary-scan cells to drive and sample external pins for board-level testing
entity: top-levelBSDLconstruct naming theJTAG-capable devicegeneric/port: constructs for declaring configuration parameters and I/O pins of the deviceTAP_SCAN_IN/TAP_SCAN_OUT/TAP_SCAN_MODE/TAP_SCAN_CLOCK: attributes mappingJTAGpins (TDI,TDO,TMS,TCK) to logical portsINSTRUCTION_LENGTH: attribute giving the number of bits in the instruction registerINSTRUCTION_OPCODE: attribute mapping instruction mnemonics (e.g.EXTEST,SAMPLE,BYPASS,IDCODE) to opcode bit patternsBOUNDARY_LENGTH: attribute giving the number of cells in the boundary-scan registerBOUNDARY_REGISTER: attribute describing the boundary-scan cells, their associated pins and functions
OE: Output Enable - signal controlling whether an output driver actively drives a pinCLK: Clock - periodic signal triggering synchronous logic and flip-flopsGCLK: Global Clock - dedicated clock distribution network feeding logic cells across the deviceCLR: Clear - signal asynchronously resetting/clearing logic cellsGCLR: Global Clear - dedicated global reset/clear signal asynchronously resetting logic cellsTMS: Test Mode Select -JTAGcontrol signal steering theTAPcontroller through its state machineTCK: Test Clock -JTAGclock signal advancing theTAPstate machine and shifting data through scan chainsTDI: Test Data In -JTAGdata input pin for shifting instructions and data into the deviceTDO: Test Data Out -JTAGdata output pin for shifting data and status information out of the deviceTRST: Test Reset - optionalJTAGreset signal for asynchronous reset of theTAPcontroller
- Intel-Altera
BSDLresources: https://www.altera.com/design/devices/resources/models/bsdl JTAGoverview (Wikipedia): https://en.wikipedia.org/wiki/JTAG- Boundary scan overview (Wikipedia): https://en.wikipedia.org/wiki/Boundary_scan
BSDLoverview (Wikipedia): https://en.wikipedia.org/wiki/Boundary_Scan_Description_LanguagePALASMbackground (Wikipedia): https://en.wikipedia.org/wiki/PALASM