BSDL-файл

BSDL-файл

BSDL-файл (англ. Boundary Scan Description Language) — это текстовый файл, написанный на VHDL-подобном языке описания для периферийного сканирования, содержащий информацию об архитектуре регистров периферийного сканирования микросхемы. Является частью стандарта IEEE 1149.1. Эти файлы обычно доступны для скачивания с сайтов производителей. Системы периферийного сканирования используют эти файлы для доступа к JTAG-цепи электронной платы, а также для автоматической генерации тестовых векторов для проверки цепей, связанных с данной ИС.

Содержание BSDL-файлов

BSDL-файл может включать в себя следующие разделы:

  • ENTITY description: Раздел именования; здесь может упоминаться о функциональном предназначении микросхемы.
    • generic parameter: Тип корпуса изделия.
    • port description: Описание портов устройства (input, output, bidirectional, linkage).
    • use statements: Используемые стандарты (такие как IEEE 1149.1).
  • PIN MAPPING: Карта соответствия логических сигналов выводам микросхемы.
  • Scan Port Identification: Определение выводов, используемых для периферийного сканирования — TDI, TDO, TMS, TCK, TRST — выводов порта тестового доступа.
  • INSTRUCTION REGISTER description: Описание команд регистра инструкций (для входа в различные JTAG-режимы).
  • REGISTER ACCESS description: Описание других JTAG-регистров и соответствующих инструкций.
  • BOUNDARY SCAN CELL description: Список ячеек периферийного сканирования и их функциональное описание.

Ссылки

Пример BSDL-файла

В качестве примера для иллюстрации BSDL-файла взята ПЛИС Altera EPM7032AET44:

-- Copyright (C) 1998-2005 Altera Corporation
--
-- File Name     : 7032AET44.BSD
-- Device        : EPM7032AET44
-- Package       : 44-Pin Thin Quad Flat Pack
-- BSDL Version  : 3.01
-- BSDL Status   : Final
-- Date Created  : 12/8/1998
-- Created by    : Altera BSDL Generation Program Ver. 1.20      
-- Verification  : Software syntax checked on:
--                   Agilent Technologies 3070 BSDL Compiler
--                   ASSET ScanWorks ver. 3.1.1
--                   Corelis ScanPlus TPG ver. 4.12
--                   Genrad BSDL syntax checker ver. 4.01, a component
--                      of Scan Pathfinder(tm) and BasicSCAN(tm)
--                   GOEPEL Electronics' CASCON-GALAXY(R) ver. 4.0
--                   JTAG Technologies BSDL Converter ver. 2.4
--
-- Documentation : MAX 7000A Family Datasheet
--                 AN39: JTAG Boundary Scan Testing for Altera Devices
--
-- *********************************************************************
-- *                           IMPORTANT NOTICE                        *
-- *********************************************************************
--
-- Altera, MAX 7000AE and EPM7032AE are trademarks of Altera
-- Corporation.  Altera products, marketed under trademarks, are
-- protected under numerous US and foreign patents and pending
-- applications, maskwork rights, and copyrights.   Altera warrants
-- performance of its semiconductor products to current specifications
-- in accordance with Altera's standard warranty, but reserves the
-- right to make changes to any products and services at any time
-- without notice.  Altera assumes no responsibility or liability
-- arising out of the application or use of any information, product,
-- or service described herein except as expressly agreed to in
-- writing by Altera Corporation.  Altera customers are advised to
-- obtain the latest version of device specifications before relying
-- on any published information and before placing orders for products
-- or services.
--
-- *********************************************************************
-- *                     ENTITY DEFINITION WITH PORTS                  *
-- *********************************************************************
 
entity EPM7032AET44 is
  generic (PHYSICAL_PIN_MAP : string := "TQFP44");
 
port (
--I/O Pins
    IO42   , IO43   , IO44   , IO2    , IO3    , IO5    , IO6    , 
    IO8    , IO10   , IO11   , IO12   , IO13   , IO14   , IO15   , 
    IO18   , IO19   , IO20   , IO21   , IO22   , IO23   , IO25   , 
    IO27   , IO28   , IO30   , IO31   , IO33   , IO34   , IO35   
    : inout bit;
--Dedicated Input Pins
    IN39   , IN40   , IN37   , IN38   : in bit;
--JTAG Ports
    TCK    , TMS    , TDI    : in bit;
    TDO    : out bit;
--Power Pins
    VCC    : linkage bit_vector (1 to 4);
--Ground Pins
    GND    : linkage bit_vector (1 to 4)
);
 
use STD_1149_1_1994.all;
 
attribute COMPONENT_CONFORMANCE of EPM7032AET44 :
          entity is "STD_1149_1_1993";
 
-- *********************************************************************
-- *                             PIN MAPPING                           *
-- *********************************************************************
 
attribute PIN_MAP of EPM7032AET44 : entity is PHYSICAL_PIN_MAP;
constant TQFP44 : PIN_MAP_STRING :=
--I/O Pins
    "IO42   : 42  , IO43   : 43  , IO44   : 44  , IO2    : 2   , "&
    "IO3    : 3   , IO5    : 5   , IO6    : 6   , IO8    : 8   , "&
    "IO10   : 10  , IO11   : 11  , IO12   : 12  , IO13   : 13  , "&
    "IO14   : 14  , IO15   : 15  , IO18   : 18  , IO19   : 19  , "&
    "IO20   : 20  , IO21   : 21  , IO22   : 22  , IO23   : 23  , "&
    "IO25   : 25  , IO27   : 27  , IO28   : 28  , IO30   : 30  , "&
    "IO31   : 31  , IO33   : 33  , IO34   : 34  , IO35   : 35  , "&
--Dedicated Input Pins
    "IN39   : 39  , IN40   : 40  , IN37   : 37  , IN38   : 38  , "&
--JTAG ports
    "TCK    : 26  , TMS    : 7   , TDI    : 1   , TDO    : 32  , "&
--Power Pins
    "VCC    : (41  , 9   , 17  , 29  ), "&
--Ground Pins
    "GND    : (4   , 16  , 24  , 36  )";
 
-- *********************************************************************
-- *                       IEEE 1149.1 TAP PORTS                       *
-- *********************************************************************
 
attribute TAP_SCAN_IN of TDI     : signal is true;
attribute TAP_SCAN_MODE of TMS   : signal is true;
attribute TAP_SCAN_OUT of TDO    : signal is true;
attribute TAP_SCAN_CLOCK of TCK  : signal is (10.00e6,BOTH);
 
-- *********************************************************************
-- *                   INSTRUCTIONS AND REGISTER ACCESS                *
-- *********************************************************************
 
attribute INSTRUCTION_LENGTH of EPM7032AET44 : entity is 10;
attribute INSTRUCTION_OPCODE of EPM7032AET44 : entity is
  "BYPASS            (1111111111), "&
  "EXTEST            (0000000000), "&
  "SAMPLE            (0001010101), "&
  "IDCODE            (0001011001), "&
  "USERCODE          (0000000111)";
 
attribute INSTRUCTION_CAPTURE of EPM7032AET44 : entity is "0101010101";
 
attribute IDCODE_REGISTER of EPM7032AET44 : entity is
  "0001"&               --4-bit Version
  "0111000000110010"&   --16-bit Part Number (hex 7032)
  "00001101110"&        --11-bit Manufacturer's Identity
  "1";                  --Mandatory LSB
attribute USERCODE_REGISTER of EPM7032AET44 : entity is
  "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
attribute REGISTER_ACCESS of EPM7032AET44 : entity is
  "DEVICE_ID        (IDCODE)";
 
-- *********************************************************************
-- *                    BOUNDARY SCAN CELL INFORMATION                 *
-- *********************************************************************
 
attribute BOUNDARY_LENGTH of EPM7032AET44 : entity is 96;
attribute BOUNDARY_REGISTER of EPM7032AET44 : entity is
  --BSC group 0 for dedicated input pin 38
  "0   (BC_4, IN38, input, X)," &
  "1   (BC_4, *, internal, X)," &
  "2   (BC_4, *, internal, X)," &
 
  --BSC group 1 for dedicated input pin 37
  "3   (BC_4, IN37, input, X)," &
  "4   (BC_4, *, internal, X)," &
  "5   (BC_4, *, internal, X)," &
 
  --BSC group 2 for I/O pin 35
  "6   (BC_4, IO35, input, X)," &
  "7   (BC_1, *, control, 0)," &
  "8   (BC_1, IO35, output3, X, 7, 0, Z)," &
 
  --BSC group 3 for I/O pin 34
  "9   (BC_4, IO34, input, X)," &
  "10  (BC_1, *, control, 0)," &
  "11  (BC_1, IO34, output3, X, 10, 0, Z)," &
 
  --BSC group 4 for I/O pin 33
  "12  (BC_4, IO33, input, X)," &
  "13  (BC_1, *, control, 0)," &
  "14  (BC_1, IO33, output3, X, 13, 0, Z)," &
 
  --BSC group 5 for I/O pin 31
  "15  (BC_4, IO31, input, X)," &
  "16  (BC_1, *, control, 0)," &
  "17  (BC_1, IO31, output3, X, 16, 0, Z)," &
 
  --BSC group 6 for I/O pin 30
  "18  (BC_4, IO30, input, X)," &
  "19  (BC_1, *, control, 0)," &
  "20  (BC_1, IO30, output3, X, 19, 0, Z)," &
 
  --BSC group 7 for I/O pin 28
  "21  (BC_4, IO28, input, X)," &
  "22  (BC_1, *, control, 0)," &
  "23  (BC_1, IO28, output3, X, 22, 0, Z)," &
 
  --BSC group 8 for I/O pin 27
  "24  (BC_4, IO27, input, X)," &
  "25  (BC_1, *, control, 0)," &
  "26  (BC_1, IO27, output3, X, 25, 0, Z)," &
 
  --BSC group 9 for I/O pin 25
  "27  (BC_4, IO25, input, X)," &
  "28  (BC_1, *, control, 0)," &
  "29  (BC_1, IO25, output3, X, 28, 0, Z)," &
 
  --BSC group 10 for I/O pin 23
  "30  (BC_4, IO23, input, X)," &
  "31  (BC_1, *, control, 0)," &
  "32  (BC_1, IO23, output3, X, 31, 0, Z)," &
 
  --BSC group 11 for I/O pin 22
  "33  (BC_4, IO22, input, X)," &
  "34  (BC_1, *, control, 0)," &
  "35  (BC_1, IO22, output3, X, 34, 0, Z)," &
 
  --BSC group 12 for I/O pin 21
  "36  (BC_4, IO21, input, X)," &
  "37  (BC_1, *, control, 0)," &
  "38  (BC_1, IO21, output3, X, 37, 0, Z)," &
 
  --BSC group 13 for I/O pin 20
  "39  (BC_4, IO20, input, X)," &
  "40  (BC_1, *, control, 0)," &
  "41  (BC_1, IO20, output3, X, 40, 0, Z)," &
 
  --BSC group 14 for I/O pin 19
  "42  (BC_4, IO19, input, X)," &
  "43  (BC_1, *, control, 0)," &
  "44  (BC_1, IO19, output3, X, 43, 0, Z)," &
 
  --BSC group 15 for I/O pin 18
  "45  (BC_4, IO18, input, X)," &
  "46  (BC_1, *, control, 0)," &
  "47  (BC_1, IO18, output3, X, 46, 0, Z)," &
 
  --BSC group 16 for I/O pin 15
  "48  (BC_4, IO15, input, X)," &
  "49  (BC_1, *, control, 0)," &
  "50  (BC_1, IO15, output3, X, 49, 0, Z)," &
 
  --BSC group 17 for I/O pin 14
  "51  (BC_4, IO14, input, X)," &
  "52  (BC_1, *, control, 0)," &
  "53  (BC_1, IO14, output3, X, 52, 0, Z)," &
 
  --BSC group 18 for I/O pin 13
  "54  (BC_4, IO13, input, X)," &
  "55  (BC_1, *, control, 0)," &
  "56  (BC_1, IO13, output3, X, 55, 0, Z)," &
 
  --BSC group 19 for I/O pin 12
  "57  (BC_4, IO12, input, X)," &
  "58  (BC_1, *, control, 0)," &
  "59  (BC_1, IO12, output3, X, 58, 0, Z)," &
 
  --BSC group 20 for I/O pin 11
  "60  (BC_4, IO11, input, X)," &
  "61  (BC_1, *, control, 0)," &
  "62  (BC_1, IO11, output3, X, 61, 0, Z)," &
 
  --BSC group 21 for I/O pin 10
  "63  (BC_4, IO10, input, X)," &
  "64  (BC_1, *, control, 0)," &
  "65  (BC_1, IO10, output3, X, 64, 0, Z)," &
 
  --BSC group 22 for I/O pin 8
  "66  (BC_4, IO8, input, X)," &
  "67  (BC_1, *, control, 0)," &
  "68  (BC_1, IO8, output3, X, 67, 0, Z)," &
 
  --BSC group 23 for I/O pin 6
  "69  (BC_4, IO6, input, X)," &
  "70  (BC_1, *, control, 0)," &
  "71  (BC_1, IO6, output3, X, 70, 0, Z)," &
 
  --BSC group 24 for I/O pin 5
  "72  (BC_4, IO5, input, X)," &
  "73  (BC_1, *, control, 0)," &
  "74  (BC_1, IO5, output3, X, 73, 0, Z)," &
 
  --BSC group 25 for I/O pin 3
  "75  (BC_4, IO3, input, X)," &
  "76  (BC_1, *, control, 0)," &
  "77  (BC_1, IO3, output3, X, 76, 0, Z)," &
 
  --BSC group 26 for I/O pin 2
  "78  (BC_4, IO2, input, X)," &
  "79  (BC_1, *, control, 0)," &
  "80  (BC_1, IO2, output3, X, 79, 0, Z)," &
 
  --BSC group 27 for I/O pin 44
  "81  (BC_4, IO44, input, X)," &
  "82  (BC_1, *, control, 0)," &
  "83  (BC_1, IO44, output3, X, 82, 0, Z)," &
 
  --BSC group 28 for I/O pin 43
  "84  (BC_4, IO43, input, X)," &
  "85  (BC_1, *, control, 0)," &
  "86  (BC_1, IO43, output3, X, 85, 0, Z)," &
 
  --BSC group 29 for I/O pin 42
  "87  (BC_4, IO42, input, X)," &
  "88  (BC_1, *, control, 0)," &
  "89  (BC_1, IO42, output3, X, 88, 0, Z)," &
 
  --BSC group 30 for dedicated input pin 40
  "90  (BC_4, IN40, input, X)," &
  "91  (BC_4, *, internal, X)," &
  "92  (BC_4, *, internal, X)," &
 
  --BSC group 31 for dedicated input pin 39
  "93  (BC_4, IN39, input, X)," &
  "94  (BC_4, *, internal, X)," &
  "95  (BC_4, *, internal, X)" ;
 
end EPM7032AET44;

Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "BSDL-файл" в других словарях:

  • Периферийное сканирование — (англ. Boundary Scan)  вид структурного тестирования печатной платы с установленными на неё компонентами, основанный на применении в некоторых микросхемах стандарта IEEE 1149.1(.4, .6). Широко используется также термин «Граничное… …   Википедия

  • Граничное сканирование — Периферийное сканирование (англ. Boundary Scan)  вид структурного тестирования полупроводниковой печатной платы с установленными на неё компонентами, основанный на применении в некоторых микросхемах стандарта IEEE 1149.1(.4, .6). Широко… …   Википедия

  • Цифровые системы — Категория:Цифровые системы Подкатегории Показано 3 подкатегории из 3. Л [+] Логические элементы …   Википедия

  • PHP — У этого термина существуют и другие значения, см. PHP (значения). PHP Семантика: мультипарадигменный …   Википедия

  • Ultimate++ — Ultimate++ …   Википедия

  • FAR Manager — типичный вид FAR Manager …   Википедия

  • Сравнение мультимедиаконтейнеров — В этой таблице сравниваются функциональные возможности различных форматов мультимедиаконтейнеров. Следует заметить, что фильтры DirectShow позволяют проигрывание файла мультимедиа на любом DirectShow совместимом проигрывателе, включая Windows… …   Википедия

  • Сравнение медиаконтейнеров — В этой таблице сравниваются функциональные возможности различных форматов мультимедиаконтейнеров. Следует заметить, что фильтры DirectShow позволяют проигрывание файла мультимедиа на любом DirectShow совместимом проигрывателе, включая Windows… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»