FPGA Configuration Chris Stinson, 1998.

Slides:



Advertisements
Similar presentations
FPGA Configuration. Introduction What is configuration? – Process for loading data into the FPGA Configuration Data Source Configuration Data Source FPGA.
Advertisements

LOGO Lab Supervisor – Dr. WH Lau EE3271 Design Laboratory.
Basic FPGA Configuration
The 8085 Microprocessor Architecture
Serial Peripheral Interface (SPI)
Input-Output Problems L1 Prof. Sin-Min Lee Department of Mathematics and Computer Science.
Configuration. Mirjana Stojanovic Process of loading bitstream of a design into the configuration memory. Bitstream is the transmission.
9/20/6Lecture 3 - Instruction Set - Al Hardware interface (part 2)
Sundance High-tech DSP solutions. Giving you the freedom to design Multiprocessor Technology Ltd SYSTEM CONFIGURATION.
INPUT-OUTPUT ORGANIZATION
FPGA and ASIC Technology Comparison - 1 © 2009 Xilinx, Inc. All Rights Reserved Basic FPGA Configuration Part 1.
FPGA Configuration Interfaces 1. After completing this presentation, you will able to: 2 Describe the purpose of each of the FPGA configuration pins Explain.
® ChipScope ILA TM Xilinx and Agilent Technologies.
LSU 10/22/2004Serial I/O1 Programming Unit, Lecture 5.
MICROPROCESSOR INPUT/OUTPUT
Lecture 20: Communications Lecturers: Professor John Devlin Mr Robert Ross.
AT94 Training 2001Slide 1 AT94K Configuration Modes Atmel Corporation 2325 Orchard Parkway San Jose, CA Hotline (408) OR.
Normal text - click to edit Configuring of Xilinx Virtex-II Kjetil Ullaland, Ketil Røed, Bjørn Pommeresche, Johan Alme TPC Electronics meeting. CERN
® Additional Spartan-XL Features. ® Family Highlights  Spartan (5.0 Volt) family introduced in Jan. 98 —Fabricated on advanced 0.5µ process.
 8251A is a USART (Universal Synchronous Asynchronous Receiver Transmitter) for serial data communication.  Programmable peripheral designed for synchronous.
8279 KEYBOARD AND DISPLAY INTERFACING
CHAPTER 5 Configuration, Reconfiguration and Security.
BR 1/991 DataPath Elements Altera LPM library has many elements useful for building common datapath functions –lpm_ram_dq - recommended for either asynchronous.
Introduction to Microprocessors - chapter3 1 Chapter 3 The 8085 Microprocessor Architecture.
EE365 - Microprocessors period 26 10/23/00 D. R. Schertz # Parallel Ports.
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Course Introduction Purpose  This course provides an introduction to the peripheral functions.
بسم الله الرحمن الرحيم MEMORY AND I/O.
Networked Embedded Systems Pengyu Zhang EE107 Spring 2016 Lecture 8 Serial Buses.
8255 Programmable Peripheral Interface
Lab 4 HW/SW Compression and Decompression of Captured Image
Serial Communications
Types of format of data transfer
Department of Computer Science and Engineering
Serial mode of data transfer
Basic Computer Organization and Design
The 8085 Microprocessor Architecture
Lecture 15 Sequential Circuit Design
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
EE 107 Fall 2017 Lecture 5 Serial Buses – UART & SPI
Input/Output and Communication
Chapter 11: Inter-Integrated Circuit (I2C) Interface
Diagram of microprocessor interface with IO devices
Introduction to the processor and its pin configuration
I/O Memory Interface Topics:
The 8085 Microprocessor Architecture
Serial I/O and Data Communication.
Programmable Interval Timer
1 Input-Output Organization Computer Organization Computer Architectures Lab Peripheral Devices Input-Output Interface Asynchronous Data Transfer Modes.
DMA CONTROLLER 8257 Features: It is a 4-channel DMA.
COMP2121: Microprocessors and Interfacing
E3165 DIGITAL ELECTRONIC SYSTEM
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Computer Organization and Design
8255.
Xilinx FPGA Architecture
Serial Communication Interface: Using 8251
Serial EEPROM (Atmel 24C-512)
Parallel communication interface 8255
Architecture & Support Components
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN
Programmable Peripheral Interface
82C55 Programmable Peripheral Interface
X1 & X2 These are also called Crystal Input Pins.
The 8085 Microprocessor Architecture
Building an SBC-51 The Single Board Computer SBC-51 is a simple 8051 platform for learning and experimenting with the hardware and software development.
Reconfigurable FPGAs (The Xilinx Virtex II Pro / ProX FPGA family)
Xilinx FPGA Architecture Overview
"Computer Design" by Sunggu Lee
Chapter 13: I/O Systems.
The Programmable Peripheral Interface (8255A)
Presentation transcript:

FPGA Configuration Chris Stinson, 1998

Configuration Pins and Dual Purpose I/O Configuration Modes Data Stream Format Configuration Pins and Dual Purpose I/O FPGA Configuration Sequence and Flow Start-up Sequence Daisy Chain Spartan FPGA Config - 4-98

FPGA Configuration Objective: To be able to successfully take a BITstream and configure an FPGA. Debugging techniques General flow of configuration How to debug a board Different methods of configuration

Configuration Modes (4K E/EX/XL/XV) Master Serial Slave Serial Master Parallel Up/Down Peripheral Synchronous Peripheral Asynchronous Express

Configuration Modes Master Serial - FPGA drives configuration clock (CCLK) - Configuration data loaded 1 bit per CCLK Slave Serial - CCLK drive externally from FPGA Master Parallel - FPGA drives address bus - Configuration data loaded 1byte per address - FPGA serializes data, 8 CCLK’s per byte

Configuration Modes Asynchronous Peripheral - Configuration data loaded 1 byte per ‘strobe’ - Ready/Busy Handshaking Synchronous Peripheral - ‘Slave Parallel’ - Configuration data loaded 1 byte per 8 CCLK’s Express - Configuration data loaded 1 byte per CCLK

Additional Address Lines Allows additional addressing for additional space required for daisy-chained devices Used with Master Parallel Mode BITGEN option for EX devices - Option to activate: bitgen -g AddressLines:22 - A18-A21 pulled high by internal pullups Always active in XL/XV devices

Data Stream Format

Configuration Pins CCLK - Bi-Directional Configuration Clock DIN INIT - Master Modes: can be set to fast or slow DIN - Serial input for Configuration Data - Programmable I/O INIT - Error and Power Stabilization Flag

Configuration Pins Program Done - Active low input initiates Configuration Done - Bi-Directional Open-Drain Output indicates completion of Configuration DOUT - Data output for daisy chain - Programmable I/O

Configuration Pins Address Lines (A21 - A0) - Address Bus used in Master Parallel Mode - Programmable I/O Data Lines (D7 - D0) - Data bus used in Master Parallel, Asynchronous/Synchronous Peripheral mode

Configuration Pins Mode Pins (M0, M1, M2) RDY/BSY, CS0, CS1, WS, RS - Mode pins select Configuration Mode - Programmable I/O - must be paced on schematic or instantiated in code - M0: Input, M1: Output, M2: Input - Have weak pullups RDY/BSY, CS0, CS1, WS, RS - Handshaking, chip selects, write and read strobes for Peripheral Modes

Configuration Sequence Power Stabilization Test for Timeout Clear Configuration Memory Test INIT Sample Mode Lines Load Configuration Data CCLK count == Length Count Start-up Sequence

Delaying Configuration Program - Hold PROGAM low - FPGA keeps clearing configuration memory INIT - Use open-collector or open-drain to hold low - Causes FPGA to wait after clearing configuration memory before sampling mode pins

Start-up Sequencing Begins when CCLK equal Length count DONE goes high I/O’s become active GSR asserted

Daisy Chaining FPGA’s Header passed through to all FPGA’s Connect DOUT to DIN of next Tie PROGRAM, DONE, INIT and CCLK together DOUT of first device will remain high until configuration memory full, then passes on extra data to next device

Spartan Only two configuration modes - Master Serial Only one Mode Pin - Slave Serial Only one Mode Pin - Not used as programmable I/O

Software Flow Bitgen Promgen Input is NCD from PAR Output: BIT: binary RBT: ASCII Binary Promgen BIT --> PROM .hex: ASCII hex .mcs, .exo, .tek

Downloading Xchecker Cable Slave Serial FPGA Configuration Readback Verify Readback Capture (up to 4013E) Parallel Cable III (DLC5) FPGA Slave Serial in M1.4 JTAG Configuration in M1.5 CPLD JTAG Programming

Trips and Traps Monotonic Power Stabilization Vcc must rise contiguously Meet rise-time specs (~24ms) Board Noise Clock Glitching Ground Bounce Configuration Software Options Startup Sequence

Trips and Traps What Configuration Mode? Does INIT drive permanently LOW? Does DONE go high? Does LDC go high or HDC go low? Does data enter the device? Does the data on DOUT match expected?

Configuration Lab Purpose: To obtain hands on experience debugging configuration Demo Board: XC4003EPC84 and XC1765 Master Serial Mode

Configuration Lab Determine what is wrong Check mode pins Check CCLK DONE? INIT? LDC/HDC