Tehnologija programirljivih vezij. Načrtovanje digitalnih el. sistemov. Programirljiva vezja (PLD) Programirljiva vezja (CPLD)

Similar documents
Programirljiva logika

Why FPGAs? FPGA Overview. Why FPGAs?

Memec Spartan-II LC User s Guide

CSE140L: Components and Design Techniques for Digital Systems Lab. CPU design and PLDs. Tajana Simunic Rosing. Source: Vahid, Katz

Examples of FPLD Families: Actel ACT, Xilinx LCA, Altera MAX 5000 & 7000

Field Programmable Gate Arrays (FPGAs)

L11/12: Reconfigurable Logic Architectures

L12: Reconfigurable Logic Architectures

Introduction Actel Logic Modules Xilinx LCA Altera FLEX, Altera MAX Power Dissipation

Digital Systems Design

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 9 Field Programmable Gate Arrays (FPGAs)

Universal ByteBlaster

PROGRAMSKO OKOLJE ZA NAČRTOVANJE PROGRAMIRLJIVIH VEZIJ S POMOČJO RAZVOJNE ENOTE

Authentic Time Hardware Co-simulation of Edge Discovery for Video Processing System

CSE140L: Components and Design Techniques for Digital Systems Lab. FSMs. Tajana Simunic Rosing. Source: Vahid, Katz

Remote Diagnostics and Upgrades

RELATED WORK Integrated circuits and programmable devices

Using the XSV Board Xchecker Interface

FPGA Design with VHDL

Psevdonaključni podatkovni izvor z bitno hitrostjo 10 Gbit/s in dolžino zaporedja

ECE 263 Digital Systems, Fall 2015

Subjects. o JTAG Technologies (Rik Doorneweert, Area Manager) o JTAG Technologies B.V. activities o Introduction to (classic) Boundary Scan

Spartan-IIE LC Development Board User s Guide

PicoBlaze. for Spartan-3, Virtex-II, Virtex-IIPRO and Virtex-4 devices. JTAG Loader. Quick User Guide. Kris Chaplin and Ken Chapman

March 13, :36 vra80334_appe Sheet number 1 Page number 893 black. appendix. Commercial Devices

FPGA Based Implementation of Convolutional Encoder- Viterbi Decoder Using Multiple Booting Technique

IE1204 Digital Design. F11: Programmable Logic, VHDL for Sequential Circuits. Masoumeh (Azin) Ebrahimi

DEPARTMENT OF ELECTRICAL &ELECTRONICS ENGINEERING DIGITAL DESIGN

Spartan-II Development System

FPGA-BASED EDUCATIONAL LAB PLATFORM

ECE 545 Lecture 1. FPGA Devices & FPGA Tools

Lecture 10: Programmable Logic

Embedded System Design

BABAR IFR TDC Board (ITB): system design

PROGRAMMABLE ASIC LOGIC CELLS

FPGA Design. Part I - Hardware Components. Thomas Lenzi

HDL & High Level Synthesize (EEET 2035) Laboratory II Sequential Circuits with VHDL: DFF, Counter, TFF and Timer

IE1204 Digital Design F11: Programmable Logic, VHDL for Sequential Circuits

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science

EECS150 - Digital Design Lecture 18 - Circuit Timing (2) In General...

CAD for VLSI Design - I Lecture 38. V. Kamakoti and Shankar Balachandran

Performance Evolution of 16 Bit Processor in FPGA using State Encoding Techniques

Integrated circuits/5 ASIC circuits

FPGA Implementation of Sequential Logic

Outline Synchronous Systems Introduction Field Programmable Gate Arrays (FPGAs) Introduction Review of combinational logic

Reconfigurable Architectures. Greg Stitt ECE Department University of Florida

SignalTap Plus System Analyzer

EECS150 - Digital Design Lecture 2 - CMOS

Tutorial 11 ChipscopePro, ISE 10.1 and Xilinx Simulator on the Digilent Spartan-3E board

Product Update. JTAG Issues and the Use of RT54SX Devices

Modeling Latches and Flip-flops

LAB #4 SEQUENTIAL LOGIC CIRCUIT

CDA 4253 FPGA System Design FPGA Architectures. Hao Zheng Dept of Comp Sci & Eng U of South Florida

EEC 118 Lecture #9: Sequential Logic. Rajeevan Amirtharajah University of California, Davis Jeff Parkhurst Intel Corporation

A Briefing on IEEE Standard Test Access Port And Boundary-Scan Architecture ( AKA JTAG )

University of Arizona January 18, 2000 Joel Steinberg Rev. 1.6

Implementing Audio IP in SDI II on Arria V Development Board

VHDL Design and Implementation of FPGA Based Logic Analyzer: Work in Progress

3. Configuration and Testing

EECS 151/251A Spring 2018 Digital Design and Integrated Circuits Instructors: N. Weaver & J. Wawrzynek. Lecture 2 EE141

Testing Sequential Logic. CPE/EE 428/528 VLSI Design II Intro to Testing (Part 2) Testing Sequential Logic (cont d) Testing Sequential Logic (cont d)

Lecture 12: Clock and Synchronization. TIE Logic Synthesis Arto Perttula Tampere University of Technology Spring 2018

Lecture 6: Simple and Complex Programmable Logic Devices. EE 3610 Digital Systems

Register Transfer Level (RTL) Design Cont.

Virtex-II Pro and VxWorks for Embedded Solutions. Systems Engineering Group

Lecture 2: Basic FPGA Fabric. James C. Hoe Department of ECE Carnegie Mellon University

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Sequential Circuits

CMOS Testing-2. Design for testability (DFT) Design and Test Flow: Old View Test was merely an afterthought. Specification. Design errors.

Configuring FLASHlogic Devices

Module 4:FLIP-FLOP. Quote of the day. Never think you are nothing, never think you are everything, but think you are something and achieve anything.

Modeling Latches and Flip-flops

Digital Integrated Circuits EECS 312

CS/EE 6710 Digital VLSI Design CAD Assignment #3 Due Thursday September 21 st, 5:00pm

K.T. Tim Cheng 07_dft, v Testability

EEM Digital Systems II

CoLinkEx JTAG/SWD adapter USER MANUAL

Ilmenau, 9 Dec 2016 Testing and programming PCBA s. 1 JTAG Technologies

Document Part Number: Copyright 2010, Corelis Inc.

Polar Decoder PD-MS 1.1

Chapter 10 Exercise Solutions

12. IEEE (JTAG) Boundary-Scan Testing for the Cyclone III Device Family

Chapter 2. Digital Circuits

Sundance Multiprocessor Technology Limited. Capture Demo For Intech Unit / Module Number: C Hong. EVP6472 Intech Demo. Abstract

FPGA Laboratory Assignment 4. Due Date: 06/11/2012

Načrtovanje vgrajenih sistemov na čipu Xilinx Zynq

Collections of flip-flops with similar controls and logic

EMT 125 Digital Electronic Principles I CHAPTER 6 : FLIP-FLOP

Copyright 2011 by Enoch Hwang, Ph.D. and Global Specialties. All rights reserved. Printed in Taiwan.

Lab 13: FPGA Circuit Realization Ian Callahan

3/5/2017. A Register Stores a Set of Bits. ECE 120: Introduction to Computing. Add an Input to Control Changing a Register s Bits

7 Nov 2017 Testing and programming PCBA s

L14: Quiz Information and Final Project Kickoff. L14: Spring 2004 Introductory Digital Systems Laboratory

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Sequential Circuits

Overview of BDM nc. The IEEE JTAG specification is also recommended reading for those unfamiliar with JTAG. 1.2 Overview of BDM Before the intr

VHDL Upgrading of a TNT2 card

in Xilinx Devices each) Input/Output Blocks XtremeDSP slices (DSP48) System Monitor Block

Sundance Multiprocessor Technology Limited. Capture Demo For Intech Unit / Module Number: C Hong. EVP6472 Intech Demo. Abstract

Efficient Implementations of Multi-pumped Multi-port Register Files in FPGAs

Optična spojka / Fiber Optic Closure 015Y1

Module for Lab #16: Basic Memory Devices

Transcription:

Laboratorij za načrtovanje integriranih vezij Fakulteta za elektrotehniko Univerza v Ljubljani Tehnologija programirljivih vezij Andrej Trost Načrtovanje digitalnih el. sistemov 2. Tehnologija in gradniki vezij Vezja so vnaprej izdelana ne načrtujemo na fizičnem nivoju nimamo stroškov priprave proizvodnje (NRE) Krajši čas načrtovanja V primerjavi z ASIC so počasnejša, imajo večjo površino in porabo aktivni elementi v povezovalni mreži vnašajo zakasnitve del vezja je namenjen programiranju gradniki vezja niso nikoli % izkoriščeni http://lniv.fe.uni-lj.si/ndes.html Programirljiva vezja () Programirljiva vezja (C) vhodi izhodi PAL: programirljiva IN matrika GAL, PALCE: prog. matrika in flip-flopi Kompleksna programirljiva vezja: makrocelice (IN-ALI matrika + FF) programirljivo povezovalno polje Programirljivost s programiranjem določimo povezave v vezju določimo poljubno digitalno funkcijo Omejena zmogljivost površina vezja se veča s kvadratom št. vhodov nekaj logičnih vrat, EPROM pomnilnik Izdelava kompleksnih logičnih funkcij naredimo jih s povezavo večih makrocelic potrebujemo programsko opremo za delitev oz. preslikavo vezja v C strukturo od do 2.+ log. vrat, FLASH pomnilnik

Uporaba vezij C Integracija enostavnih funkcij v sistemu vmesniki, digitalni vh/izh pretvorniki vezna logika pretvorba nivojev I2C vmesnik skeniranje tipkovnice LCD časovna kontrola Compact Flash stikalo prekinitveni krmilnik C Programirljiva matrika (FPGA) Field Programmable Gate Array vezja FPGA imajo zelo regularno zgradbo zelo gosto vezje z veliko log. elementi Intel Pentium Xilin Virte Pentium ima precej bolj naključno zgradbo izstopajo veliki predpomnilniki (cache) Osnove delovanja FPGA logične funkcije so narejene s tabelami 3 Zgradba vezja FPGA matrika logičnih celic, okrog so vh / izh celice 2 2 f 2 f 2 3 f = ( and 2 ) or ( 2 or 3 ) latch-based Xilin, Altera povezovalno polje vsebuje veliko število povezav konfiguracijski pomnilni elementi (SRAM latch, antifuse ali Flash) f f 2 f

Poenostavljena zgradba logične celice Logične celice vezij Xilin Spartan3 (CLB) Programirljive logične tabele (Look-Up Table) Pomnilni elementi Programirljive povezave (MUX) vhodni signali iz polja povezav logična tabela MUX pomnilna celica DFF izhodni signali clk... KONFIGURACIJSKI POMNILNIK Vh. / izh. celice vezij Xilin Spartan3 (IOB) vhodni in izhodni ojačevalniki 3-stanjski, pullup ali pulldown izhod kontrola nivojev in impedance dvojni DFF na vhodu in izhodu nastavitev hitrosti in zakasnitev Povezovalno polje vezij Xilin FPGA potrebuje ogromno povezav enojne, dvojne, quad dolge linije globalni signali (clk, reset) na križiščih povezav so stikalni elementi, ki jih krmilijo zapahi povezave vnašajo zakasnitve!

Povezovalno polje vezij Altera Razvoj vezij FPGA hierarhična zgradba lokalne povezave v bloku logičnih celic (LAB) kanali v vrsticah in stolpcih globalne povezave Razvoj vezij FPGA proizvajalca Xilin 2 23 24 26 29 Virte-II Virte-II pro Virte-4 Virte-5 Virte-6 Spartan-3 Spartan-6 Spartan-3 XC3S5 XC3S2 XC3S5 matrika CLB 6 2 24 2 4 8 flip-flopov 536 384 6656 BRAM 4 (9kB) 2 (27kB) 4 (234kB) vh-izh 24 73 633 cena $2 $5 $6 Vezje Hitrost Zasedenost MAC 6-bit 5 MHz 4% FIR 64-tap 8 MSPS 2% Picoblaze 8-bit 88 MHz 5% Razvojna orodja in programiranje Proizvajalci Xilin, Altera, Latticeponujajo zastonj osnovni paket razvojnih orodij Xilin ISE Webpack. (www.ilin.com, 2.67GB) zadošča Webpack 6.3 (lniv.fe.uni-lj.si/progoprema.html,.5gb) Nalaganje vezij poteka preko vmesnika JTAG Parallel Cable III, USB Programmer ali namensko vezje TDO TMS TCK TDI FPGA PROM

Priprava konfiguracije vezja FPGA Sistem na FPGA integriranem vezju FPGA konfiguracijska datoteka sinteza vezja (synthesize) tehnološka presl. (map) razmeščanje in povezovanje (place & route) konfiguracija razčlenitev vezja na osnovne gradnike preslikava gradnikov v logične bloke načrt povezav znotraj FPGA vezja Vgrajeni HW procesorji Xilin Virte vsebuje do 4 PowerPC jedra Vgrajeni SW procesorji Actel Corte(ARM), Altera Nios, Lattice Micro32, Xilin Microblaze Namenske periferne enote več-gb serijski vmesniki (SERDES,RocketIO) Xilin Virte-5: Ethernet MAC bloki Actel Fusion: analogni vmesniki Gradniki digitalnih vezij Kombinacijski gradniki (npr. seštevalnik) izhodi so odvisni samo od vhodov Sekvenčni gradniki (npr. števec) izhodi odvisni od vhodov in notranjega stanja Sinhrona sekvenčna vezja gradniki delajo sinhrono s sistemsko uro enostavna za obravnavo ma. frekvenca ure je odvisna od zakasnitev na kombinacijskih gradnikih med posameznimi registri Delovanje sekvenčnih elementov (flip-flopov) Vhod mora biti stabilen nekaj časa pred fronto ure (setup time) in nekaj časa za fronto (hold) zadrževalni čas (hold) je lahko tudi sicer lahko dobimo metastabilno stanje Clk D Q t s t h metastabilnost XX t cq

Sinhrona sekvenčna vezja Vsi registri delujejo sinhrono s sistemsko uro Najmanša perioda ure (T) je vsota zakasnitev na kombinacijski poti in čas. parametrov registrov T > t cq + ma(t komb ) + t s t h < t cq + min(t komb ) Ni zapahov in asinhronih povratnih vezav Asinhroni vhodi registrov le za inicializacijo Vse asinhrone vhode sinhroniziramo peljemo jih čez ali 2 flip-flopa Sinhronizacija zunanjih signalov težav s sinhronizacijo ne vidimo na simulaciji! sinhronizacija s FF r D Q D Q rs clk možna metastabilna stanja clk r rs Posebnosti FPGA gradnikov Kombinacijsko logiko z do 4 vhodi naredimo z logično tabelo logiko z več vhodi razdelimo med več tabel Povezovalni elementi vnašajo zakasnitve zakasnitve so posledica programirljivih povezav zakasnitve povezav so lahko večje kot v logiki! za uro uporabljamo posebne povezave z majhnimi zakasnitvami z enako distribucijo do vseh celic Distribucija ure v FPGA vezju Ura je speljana do vseh celic z minimalno razliko v zakasnitvi (clock skew) Imamo omejeno število (4-8) globalnih povezav z minimalno zakasnitvijo mreža povezav v obliki H drevesa fazno sklenjene zanke za sinhronizacijo z zunanjo logiko gclk